Action TFS 0.X Mining System
-
Quem Está Navegando 0 membros estão online
Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
Por KotZletY
Salve geral, recentemente fiz um Task System para meu servidor, então gostaria de compartilha ele com vocês, assim como outros scripts que fiz e gostaria de compartilhar. Bom, vamos ao que interessa.
Informações!!
Task Normal - Você 1x por vez, quantas vezes quiser, repetindo a task se também quiser.
Task Diaria - Você faz uma vez por dia, não podendo repeti em quanto as 24 horas não terminar.
Task Rank - É mostrado na descrição do player qual rank task ele possui.
Task Rank Quest - Um extra desse task system é o piso task, será explicado na parte do script, leiam com atenção.
Task Comandos - Comandos task, 1 para ver o progresso das suas task e outro para mostrar informações do seu personagem, como uma consulta, os comandos são: !task que mostra quais task você ta fazendo, tanto diaria quanto normal e !task me que mostrar informações do seu personagem, como rank, quantidade de pontos task e quantidade de pontos task rank.
Well, o resto é surpresa, cabe você descobrir! xD
Para não ficar só nas palavras, mostrarei algumas imagens, várias no caso: Removida, colocarei novas!
Instalação!!
Muito bem, chega de conversa, como instalar logo essa bagaça. Primeiramente vá em data/lib e abra o arquivo lib.lua e adicione:
dofile('data/lib/task system.lua') Ainda na pasta lib crie um arquivo.lua chamado task system.lua e adicione esse code dentro:
No final do tópico, ensinarei a configurar a lib. Agora vai em, data/npc e crie um arquivo.xml chamado task.xml e coloque esse code dentro:
<?xml version="1.0" encoding="UTF-8"?> <npc name="NPC Task" script="task system.lua" walkinterval="0" floorchange="0"> <health now="150" max="150"/> <look type="430"/> <parameters> <parameter key="message_greet" value="Hello |PLAYERNAME|. I'm in charge of delivering missions to the players. Would you like to do a {normal} task, {daily} task, {receive} your reward from a task or {abandon} a task ? You can also see the {normal task list} and the {daily task list}."/> <parameter key="message_farewell" value="See you later." /> <parameter key="message_walkaway" value="See you later." /> </parameters> </npc> Ainda na pasta npc, entre na pasta scripts e crie um arquivo.lua chamado task system.lua e adicione esse code dentro:
Agora vá em data/talkactions e abra o arquivo talkactions.xml e adicione a seguinte tag:
<talkaction words="!task" separator=" " script="task system.lua" /> Ainda na pasta talkactions entre na pasta scripts e crie um arquivo.lua chamado task system.lua e adicione esse code dentro dele:
Agora vá em data/creaturescripts e abra o arquivo creaturescripts.xl e adicione a seguinte tag:
<event type="kill" name="tasksystem" script="task system.lua"/> Ainda na pasta creaturescripts entre na pasta scripts e crie um arquivo.lua chamado task system.lua e adicione esse code dentro dele:
Ainda na pasta script abra o login.lua e adicione dentro:
player:registerEvent("tasksystem") Agora vá em data/events/scripts e abra o arquivo player.lua, depois de aberto, antes de:
self:sendTextMessage(MESSAGE_INFO_DESCR, description) adicione:
if thing:isCreature() then if thing:isPlayer() then description = string.format("%s\nTask Rank: "..getRankTask(thing), description) end end
Extra(Opcional)!!
Extra, vá em data/movements/scripts e crie um arquivo chamado tile task.lua, depois de aberto, antes de:
Vá em data/movements/movements.xml adicione:
<movevent event="StepIn" actionid="XXXX" script="tile task.lua"/>
Explicação: Com esse movements acima, você só poderá passar por o piso caso tenha pontos task necessário para passar, se ativar a opção, removePoints então a mesma quantidade de pontos necessária para passar, será removida, ao passar, caso esteja desativada, então
apenas será necessário ter os pontos task para passar. Em XXXX coloque o actionid, e o actionid coloque no piso desejado!
New Extra: Vá em data/movements/scripts e crie um arquivo chamado tile task2.lua e adicione o seguinte scripts:
Vá em data/movements/movements.xml adicione:
<movevent event="StepIn" actionid="XXXX" script="tile task2.lua"/> Explicação: Ao adicionar esse movements acima, você só poderá passar pelo piso caso seu rank task seja igual ou superior ao rank definido na variável, caso não seja igual e nem superior, não será possível passar.
Configure na lib, a sequência de ranks de acordo com a sequência de rank da tabela de pontos, assim:
A sequência precisa está igual e numeradas.
Configurando!!
task_monsters = { [1] = {name = "monster1", mons_list = {"monster_t2", "monster_t3"}, storage = 30000, amount = 20, exp = 5000, pointsTask = {1, 1}, items = {{id = 2157, count = 1}, {id = 2160, count = 3}}}, [2] = {name = "monster2", mons_list = {"", ""}, storage = 30001, amount = 10, exp = 10000, pointsTask = {1, 1}, items = {{id = 10521, count = 1}, {id = 2160, count = 5}}}, [3] = {name = "monster3", mons_list = {"", ""}, storage = 30002, amount = 10, exp = 18000, pointsTask = {1, 1}, items = {{id = 2195, count = 1}, {id = 2160, count = 8}}}, [4] = {name = "monster4", mons_list = {"", ""}, storage = 30003, amount = 10, exp = 20000, pointsTask = {1, 1}, items = {{id = 2520, count = 1}, {id = 2160, count = 10}}} } task_daily = { [1] = {name = "monsterDay1", mons_list = {"monsterDay1_t2", "monsterDay1_t3"}, storage = 40000, amount = 10, exp = 5000, pointsTask = {1, 1}, items = {{id = 2157, count = 1}, {id = 2160, count = 3}}}, [2] = {name = "monsterDay2", mons_list = {"", ""}, storage = 40001, amount = 10, exp = 10000, pointsTask = {1, 1}, items = {{id = 10521, count = 1}, {id = 2160, count = 5}}}, [3] = {name = "monsterDay3", mons_list = {"", ""}, storage = 40002, amount = 10, exp = 18000, pointsTask = {1, 1}, items = {{id = 2195, count = 1}, {id = 2160, count = 8}}}, [4] = {name = "monsterDay4", mons_list = {"", ""}, storage = 40003, amount = 10, exp = 20000, pointsTask = {1, 1}, items = {{id = 2520, count = 1}, {id = 2160, count = 10}}} }
nome - Nome do monstro.
mons_list - Nome dos monstro que são semelhantes e que matando eles também contará.
Exemplo:
name = "troll", mons_list = {"troll","frost troll","island troll"} e assim matando, troll, frost troll e island troll contará na task também.
storage - É a storage que salva a quantidade de monstros já matados.
amount - É a quantidade necessária de monstros matados para finalizar a task.
exp - É a quantidade de Experiência que vai ganhar ao finalizar a task, caso não queira dar experiência, basta deixar em 0.
pointsTask = {Task Points Que vai ganhar(Pontos usado no piso e etc..), Pontos Rank, que irá ganhar e aumentar seu rank.}
items - Itens que o player vai ganhar, devem está tabelados, dentro da tabela item, adicione das tabelas contendo o id do item e count, quantidade de items que irá ganhar.
Ex: items = {{id = 2157, count = 1}, {id = 2160, count = 3}} -- Aqui contém 2x tipos de itens, o 2157 e o 2160, e suas devidas quantidades que irá ganhar.
items = {{id = 2157, count = 1}} -- Aqui só tem 1 tipo de item e a quantidade que vai ganhar.
Adicione quantos itens quiser. O mesmo vale para as task diarias!
Bom, é isso ae, qualquer duvida, crítica, sugestões, deixem ae, se precisa de suporte na instalação ou está com erro em algo estarei dando suporte, abraços e bom uso do sistema.
É totalmente proibido leva meu sistema para outro site, blog ou fórum!
-
Por Bagon
Bom, hoje venho trazer á vocês um sistema de Pet System DIFERENCIADO de alguns presentes no fórum. Este sistema tem diversos comandos diferenciados, como:
!pet nomedopet este comando irá sumonar o pet.
!remove irá remover o pet.
!fale eu sou lindo o pet falará "eu sou lindo"
!conversar o pet irá conversar com vc.
Então sem mais delongas vamos ao script.
OBS: SCRIPT TESTADO SOMENTE EM TFS 0.4/0.3, e este script foi feito com a intenção de ser vendido no site do ot ou em poderá usar como quest usando o item selecionado como premio. fique ao seu critério.
Primeiro vá até a pasta talkaction/script e crie um arquivo chamado petsystem.lua, depois coloque o seguinte script:
Agora em talkactions/talkactions.xml adicione a seguinte tag:
<talkaction words="!pet;!remove;!fale;!conversar" event="script" value="petsystem.lua" />
EXPLICAÇÂO:
As partes em Negrito, são os pets. Você pode alterar ou criar monstros para fazer eles como pets. (Recomendo criar um monstro para que seja somente pet.)
Exemplo: ["dog"]= {stor=78552},
Lembrando que é necessário mudar esta parte no script do monstro colocado a cima.
<flag attackable="1" /> para :
<flag attackable="0" />
agora vá em action/script e crie um arquivo chamado pet com o seguinte script:
e vá em action.xml e adiciona a seguinte tag:
<action itemid="10063" script="pet.lua"/> Explicação: Na tag da action o itemid é o item que deverá ser usado para ganhar a storage 78552, e assim podera sumonar o monstro com esta storage.
CRIE UMA ACTION COM A TAG A CIMA PARA CADA MONSTRO COLOCADO NA TALKACTION,
BASTA VC ALTERAR A STORAGE DO SCRIPT DA ACTION
EXEMPLO: em action altere as storage que estão em vermelho, como mostra abaixo
if getPlayerStorageValue(cid, 78552) < 1 then
setPlayerStorageValue(cid, 78552, 1)
aonde tem 78552 altere para 78553 que no caso é a storage do cyclops escolhido lá no script da talkaction
e assim susecivelmente.
CREDITOS:
Mulizeu
Smartbox
Bagon
-
Por Imperius
Olá, pessoal! Acabei encontrando um script que tinha feito a um tempo atrás. Estou compartilhando aqui para quem quiser usar ou melhorar.
É bem parecido com os outros sistemas de roleta, igual deste tópico: https://tibiaking.com/forums/topic/101557-action-cassino-roleta-de-items/
Como funciona?
O "Treasure Chest" é um item custom, onde o jogador têm a possibilidade de ganhar itens raros ou bem meia boca. Tudo dependerá da sorte.
O jogador precisa tacar o treasure chest na bancada e acionar a alavanca. O treasure chest irá se transformar em vários itens de forma randômica no qual o jogador poderá ou não ganhar. No final, apenas um item é entregue ao jogador.
Para entender melhor o seu funcionamento, segue o GIF abaixo:
em data > actions > actions.xml
em data > actions > scripts > crie um arquivo chamado leverTreasureChest.lua
no banco de dados do servidor, adicione o seguinte código em "SQL":
Também estou disponibilizando uma página PHP, para quem quiser usar no site do servidor. Na página tem informações sobre o funcionamento, quais são os possíveis prêmios e a lista de jogadores que ganharam os itens raros.
Espero ter ajudado de alguma forma! : )
treasure_chest.php
-
Por Dono do WNA
Andei procurando aqui pelo TK inteiro e não acho um script funcional para um boss room onde o player clica com direito num altar (parecido com uma alavanca) podendo ir sozinho ou com até 10 jogadores ele é teleportado para uma sala com o boss, podendo desafiar ele a cada 20 horas, toda vez que um jogador puxa a alavanca ele checa se tem player na sala e caso tenha, precisa esperar todos os jogadores sairem. Caso o boss esteja vivo sem players dentro da sala ele remove e adiciona um novo assim que puxam a alavanca.
Achei scripts parecidos no forum porém são todos para TFS 1.x+ e eu uso o 0.4 e nenhum compatível que achei esta funcionando
TFS 0.4 REV 3996
-
Por cssiqueira
Bom , minha primeira contribuição aqui no fórum, espero que ajude o pessoal novato assim como me ajudou pois sempre acho scripts para servers antigos mas para esses novos que não usam XML fica difícil, aqui no meu OT funcionou corretamente estou usando o sistema VIP que insere na database em Account o campo vipdays e viplastday
OT -> Canary 1.3.0 / Cliente 12.86
Eu criei o arquivo Lua em .: data\scripts\movements\others , O nome vocês que escolhem pode ser televip.lua...viptele.lua....teleportvip.lua fica a seu gosto ?
local config = { teleportActionId = Coloque Aqui o ACTION ID do item de teleport criado em seu RME } local teleVIP = MoveEvent('teleVIP') function teleVIP.onStepIn(player, item, position, fromPosition) if player:getVipDays() == 0 then player:teleportTo(fromPosition) player:getPosition():sendMagicEffect(CONST_ME_POFF) player:sendTextMessage(MESSAGE_STATUS_SMALL, "Voce nao tem VIP.") return true end return true end teleVIP:aid(config.teleportActionId) teleVIP:register()
-
-
Estatísticas dos Fóruns
96843
Tópicos519612
Posts
Posts Recomendados
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.