SmiX 265 Postado Novembro 5, 2013 Share Postado Novembro 5, 2013 (editado) Olá, hoje venho postar um sistema que bolei ontem e terminei hoje – ele se chama: Auto Task System. O que faz? O player pode escolher qualquer monstro, definido no script, para fazer a task. No final da mesma ele ganha Experiência, de acordo com o nível que está. Exemplo: Se o player escolher a task de rat, no nível 1, ele vai precisar matar 60, no nível 2, ele mata 120 e assim prossegue. COMANDOS: !autoTask – aparece a janela com todos os comandos !autoTask info – mostra todos os monstros na autoTask !autoTask i – mostra em qual autoTask você está registrado !autoTask sair/leave – sai da autoTask atual Vamos aos códigos: Primeiro vá em (data/talkactions/scripts) e crie um arquivo chamado “autoTask.lua” e cole isto dentro: function onSay(cid, words, param) if (param == '') then local str = "" str = str .. "Você pode usar os seguintes comandos: \n\ninfo - todos os monstros da autoTask\ni - em qual autoTask você está\nsair/leave - sai da autoTask atual" doShowTextDialog(cid, 7416, str) return true end if autoTaskConfig.monsters[param] then if getPlayerStorageValue(cid, autoTaskConfig.systemStors[1]) ~= -1 then doPlayerSendTextMessage(cid, 27, "Você já está em uma autoTask. Digite '!autoTask i' e descubra qual.") return true end mid = autoTaskConfig.monsters[param] setPlayerStorageValue(cid, autoTaskConfig.systemStors[1], param) setPlayerStorageValue(cid, autoTaskConfig.systemStors[2], 0) if getPlayerStorageValue(cid, autoTaskConfig.monsters[param].storNivel) == -1 then setPlayerStorageValue(cid, autoTaskConfig.monsters[param].storNivel, 1) end getCount = getPlayerStorageValue(cid, autoTaskConfig.monsters[param].storNivel) doPlayerSendTextMessage(cid, 27, "Você precisa, agora, matar " ..(mid.minKills * getCount).. " " .. param .. ((mid.minKills * getCount) < 2 and "" or "s") .. ".") return true elseif param == "info" then local str = "Monstros dispóniveis na autoTask:\n" for id, id2 in pairs(autoTaskConfig.monsters) do str = str .. id .. "\n" end doShowTextDialog(cid, 7416, str) return true elseif param == "i" then name = getPlayerStorageValue(cid, autoTaskConfig.systemStors[1]) if name == -1 then return true end doPlayerSendTextMessage(cid, 27, "Você já está na autoTask de:\n["..name.."] - Mortos: "..getPlayerStorageValue(cid, autoTaskConfig.systemStors[2])..", Restantes: "..(autoTaskConfig.monsters[name].minKills*getPlayerStorageValue(cid, autoTaskConfig.monsters[name].storNivel)) - getPlayerStorageValue(cid, autoTaskConfig.systemStors[2])..".") return true elseif param == "sair" or param == "leave" then setPlayerStorageValue(cid, autoTaskConfig.systemStors[1], -1) setPlayerStorageValue(cid, autoTaskConfig.systemStors[2], -1) doPlayerSendTextMessage(cid, 27, "Você saiu da sua task atual.") return true else return true end return true end Cole está tag em (data/talkactions/talkactions.XML): <talkaction words="!autoTask" event="script" value="autoTask.lua"/> Agora em (data/creaturescripts/scripts) crie um arquivo chamado “autoTask.lua” e cole isto dentro: function onKill(cid, target) if getPlayerStorageValue(cid, autoTaskConfig.systemStors[1]) ~= -1 then --if isMonster(target) then if getCreatureName(target) == getPlayerStorageValue(cid, autoTaskConfig.systemStors[1]) then countTask = getPlayerStorageValue(cid, autoTaskConfig.systemStors[2]) setPlayerStorageValue(cid, autoTaskConfig.systemStors[2], countTask +1) name = getPlayerStorageValue(cid, autoTaskConfig.systemStors[1]) getNivel = getPlayerStorageValue(cid, autoTaskConfig.monsters[name].storNivel) countNow = (autoTaskConfig.monsters[name].minKills * getNivel) - getPlayerStorageValue(cid, autoTaskConfig.systemStors[2]) if countNow < 1 then doPlayerAddExp(cid, autoTaskConfig.monsters[name].exp * getNivel) doSendAnimatedText(getThingPos(cid), autoTaskConfig.monsters[name].exp * getNivel, 215) doPlayerSendTextMessage(cid, 27, "Você completou a sua task.") setPlayerStorageValue(cid, autoTaskConfig.monsters[name].storNivel, getPlayerStorageValue(cid, autoTaskConfig.monsters[name].storNivel) +1) doSendMagicEffect(getThingPos(cid), autoTaskConfig.effectTaskCompleted) for i = 1, 2 do setPlayerStorageValue(cid, autoTaskConfig.systemStors, -1) end return true end doPlayerSendTextMessage(cid, 27, "Faltam apenas " .. countNow .. " " .. name .. (countNow < 2 and "" or "s")..".") end --end end return true end Cole está tag em (data/creaturescript/creaturescripts.XML): <event type="kill" name="autoTask" script=" autoTask.lua "/> Agora em (data/creaturescripts/scripts/login.lua) cole isso, antes do ultimo “return true”: registerCreatureEvent(cid, " autoTask ") Agora em (data/lib) crie um arquivo chamado “autoTask.lua” e cole isto dentro: autoTaskConfig = { monsters = { -- Monster que estão na lista de autoTask ["Abra"] = {minKills = 10, exp = 500, storNivel = 3000}, ["Rattata"] = {minKills = 50, exp = 200, storNivel = 3001}, ["Rat"] = {minKills = 60, exp = 300, storNivel = 3002}, ["Cave Rat"] = {minKills = 10, exp = 500, storNivel = 3003}, --[NomeMonster] = minimo de monstros que o player vai ter que matar, experiência que ele ganhara quando matar todos }, systemStors = {2500, 2501}, effectTaskCompleted = 28, -- Efeito que soltara quando o player completar a task } OBS: Todas as suas configurações são feitas na LIB. Para adicionar mais monstros basta copiar uma linha e mudar os valores. Espero que tenham gostado. Até mais. Editado Novembro 6, 2013 por SmiX Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/ Compartilhar em outros sites More sharing options...
kttallan 319 Postado Novembro 5, 2013 Share Postado Novembro 5, 2013 Nossa que task complicadinha kk mais é interesante serve tabem para servidores derivados ou so pra tibia mesmo ?? Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579571 Compartilhar em outros sites More sharing options...
SmiX 265 Postado Novembro 5, 2013 Autor Share Postado Novembro 5, 2013 Qualquer servidor, 8.54+. Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579575 Compartilhar em outros sites More sharing options...
HeelNox 71 Postado Novembro 5, 2013 Share Postado Novembro 5, 2013 Bem legal irei usar em meu servidor, Jaja eu testo estou jogando .-. Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579578 Compartilhar em outros sites More sharing options...
Alexclusive 687 Postado Novembro 6, 2013 Share Postado Novembro 6, 2013 Bem legal a ideia cara, obrigado por compartilhar! Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579710 Compartilhar em outros sites More sharing options...
gonorreiaswat 151 Postado Novembro 6, 2013 Share Postado Novembro 6, 2013 Nossa, o script me pareceu muito legal mesmo. Não sei se será útil para meu Projeto, mas que ajudará muitas pessoas, isso posso dizer sem medo de errar. Obrigado por compartilhar. Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579721 Compartilhar em outros sites More sharing options...
SmiX 265 Postado Novembro 6, 2013 Autor Share Postado Novembro 6, 2013 Obrigado! Eu fiz este sistema querendo competir no OMS, mas como a edição não está mais igual as outras não quero mais competir. Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579820 Compartilhar em outros sites More sharing options...
FlamesAdmin 262 Postado Novembro 6, 2013 Share Postado Novembro 6, 2013 Cara no meu server ta dando esse erro aqui: [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:14] [Error - Action Interface] [06/11/2013 15:13:14] data/actions/scripts/boost.lua [06/11/2013 15:13:14] Description: [06/11/2013 15:13:14] data/actions/scripts/boost.lua:351: table index is nil [06/11/2013 15:13:14] [Warning - Event::loadScript] Cannot load script (data/actions/scripts/boost.lua) [06/11/2013 15:13:14] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Error - Action Interface] [06/11/2013 15:13:14] data/actions/scripts/evolution.lua [06/11/2013 15:13:14] Description: [06/11/2013 15:13:14] data/actions/scripts/evolution.lua:4: table index is nil [06/11/2013 15:13:14] [Warning - Event::loadScript] Cannot load script (data/actions/scripts/evolution.lua) [06/11/2013 15:13:14] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:14] [Warning - Event::loadScript] Event onSay not found (data/talkactions/scripts/autoTask.lua) [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:15] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:15] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579826 Compartilhar em outros sites More sharing options...
gonorreiaswat 151 Postado Novembro 6, 2013 Share Postado Novembro 6, 2013 Cara no meu server ta dando esse erro aqui: [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:14] [Error - Action Interface] [06/11/2013 15:13:14] data/actions/scripts/boost.lua [06/11/2013 15:13:14] Description: [06/11/2013 15:13:14] data/actions/scripts/boost.lua:351: table index is nil [06/11/2013 15:13:14] [Warning - Event::loadScript] Cannot load script (data/actions/scripts/boost.lua) [06/11/2013 15:13:14] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Error - Action Interface] [06/11/2013 15:13:14] data/actions/scripts/evolution.lua [06/11/2013 15:13:14] Description: [06/11/2013 15:13:14] data/actions/scripts/evolution.lua:4: table index is nil [06/11/2013 15:13:14] [Warning - Event::loadScript] Cannot load script (data/actions/scripts/evolution.lua) [06/11/2013 15:13:14] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:14] [Warning - Event::loadScript] Event onSay not found (data/talkactions/scripts/autoTask.lua) [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:14] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:14] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ [06/11/2013 15:13:15] [Error - LuaScriptInterface::loadFile] data/lib/autoTask.lua:10: '}' expected (to close '{' at line 1) near 'effectTaskCompleted' [06/11/2013 15:13:15] [Warning - LuaScriptInterface::initState] Cannot load data/lib/ Você alterou o script adicionando mais monstros ou itens? Pois este erro é por falta de alguma "}" (colchete) que ficou faltando para finalizar na configuração. Se sim, poste seu script aí para que possamos ver. Abraços e boa sorte. Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579835 Compartilhar em outros sites More sharing options...
SmiX 265 Postado Novembro 6, 2013 Autor Share Postado Novembro 6, 2013 FlamesAdmin Tenta copiar a lib outra vez, pois tinha esquecido uma ",". Adriano Swatt Na verdade é por falta de uma ",". Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579871 Compartilhar em outros sites More sharing options...
gonorreiaswat 151 Postado Novembro 6, 2013 Share Postado Novembro 6, 2013 Ah sim, é que achei que seria erro apenas no script dele ao tentar adicionar mais monstros ou itens.. Enfim. Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579877 Compartilhar em outros sites More sharing options...
FlamesAdmin 262 Postado Novembro 6, 2013 Share Postado Novembro 6, 2013 Saiu os erros anteriores agora apareceu esse: [06/11/2013 18:46:32] [Warning - Event::loadScript] Event onSay not found (data/talkactions/scripts/autoTask.lua) Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579896 Compartilhar em outros sites More sharing options...
SmiX 265 Postado Novembro 6, 2013 Autor Share Postado Novembro 6, 2013 FlamesAdmin Agora vc fez algo errado, pq o script nao achou a função onSay no talkactions, ou seja, vc deve ter trocado os script. Faça de novo do começo. Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579897 Compartilhar em outros sites More sharing options...
FlamesAdmin 262 Postado Novembro 6, 2013 Share Postado Novembro 6, 2013 FlamesAdmin Agora vc fez algo errado, pq o script nao achou a função onSay no talkactions, ou seja, vc deve ter trocado os script. Faça de novo do começo. Vishi, eu tinha eskecido de adicionar a nova talk autoTask.lua q vc pois ai. Vlw man, funfou aki direitin. Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1579899 Compartilhar em outros sites More sharing options...
roriscrave 21 Postado Novembro 9, 2013 Share Postado Novembro 9, 2013 parabéns, script nota 10 Link para o comentário https://xtibia.com/forum/topic/223568-autotask-system-smix/#findComment-1580580 Compartilhar em outros sites More sharing options...
Posts Recomendados