Ir para conteúdo

Posts Recomendados

[19/10/2013 14:42:43] [Error - Spell Interface]

[19/10/2013 14:42:43] data/spells/scripts/passivas/Demon Puncher.lua:onCastSpell

[19/10/2013 14:42:44] Description:

[19/10/2013 14:42:45] data/lib/pokemon moves.lua:4165: attempt to index global 'tabela' (a nil value)

[19/10/2013 14:42:45] stack traceback:

[19/10/2013 14:42:46] data/lib/pokemon moves.lua:4165: in function 'docastspell'

[19/10/2013 14:42:46] data/spells/scripts/passivas/Demon Puncher.lua:3: in function <data/spells/scripts/passivas/Demon Puncher.lua:1>




[19/10/2013 14:44:32] [Error - TalkAction Interface]

[19/10/2013 14:44:33] data/talkactions/scripts/move1.lua:onSay

[19/10/2013 14:44:33] Description:

[19/10/2013 14:44:34] (luaDoConvinceCreature) Creature not found




[19/10/2013 14:43:57] [Error - CreatureScript Interface]

[19/10/2013 14:43:58] data/creaturescripts/scripts/login.lua:onLogin

[19/10/2013 14:43:59] Description:

[19/10/2013 14:43:59] (luaGetItemAttribute) Item not found



Preciso Ayuda!!

Qual seu pokemon moves.lua? Poderia postá-lo? (em spoiler, claro)

E outra, esse erro ocorre quando? Ao ligar o servidor?

Editado por zipter98

Esse erro deve ser devido ao fato de alguem usar o bug de devolver o pokémon de npc do clã, com o pokemon summonado ou com fly, ai ele fica com o poké, mas sem a ball, logo os erros de item not found e creature not found vão acontecer sempre que alguém usar um move ou logar, que estiver com esse bug.

Isso pode ser resolvido simplesmente por colocar restrições nesse scripts para tipo "if #getCreatureSummons(cid) == 0 or getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 17001) >= 1 then return true end"

Pokemon Dash Advanced (1.0), last compiled at Jan 11 2012.
Credits to all TFS team ( Elf, slawkens, Talaturen, Lithium, KaczooH, Kiper, Kornholijo).
PokemonDistro made by mastercraft/brun123.
  Em 19/10/2013 em 17:33, zipter98 disse:


Qual seu pokemon moves.lua? Poderia postá-lo? (em spoiler, claro)

E outra, esse erro ocorre quando? Ao ligar o servidor?

 

pokemon moves.lua

  Mostrar conteúdo oculto

 

  Citar

 

Esse erro deve ser devido ao fato de alguem usar o bug de devolver o pokémon de npc do clã, com o pokemon summonado ou com fly, ai ele fica com o poké, mas sem a ball, logo os erros de item not found e creature not found vão acontecer sempre que alguém usar um move ou logar, que estiver com esse bug.

Isso pode ser resolvido simplesmente por colocar restrições nesse scripts para tipo "if #getCreatureSummons(cid) == 0 or getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 17001) >= 1 then return true end"

 

 

Onde adicionar esta linha de código?

/\ No script dos NPCs de Clan (com exceção do grandmaster). Por exemplo, do clan Malefic, é no arquivo .Malefic Trainers.

Vou testar seu pkm moves aqui, se não der este bug, faça o que o Akumah disse. E se ainda tiver dúvidas, basta postar um dos arquivos dos Trainers de Clan, que alguém pode te ajudar nele, ai você configura os outros seguindo como base este.

 

No arquivo dos npcs, esta proteção se não me engano deve ficar aqui:

if checkPokemonForTask(cid, npc.poke) then
                     setPlayerClanRank(cid, npc.nextRank)
                     selfSay("So you complete my last task! Congradulations! Now you move up of rank and become {"..lookClans[getPlayerClanNum(cid)][getPlayerClanRank(cid)].."}!", cid)
                     setPlayerStorageValue(cid, 854789, -1)
                     setPlayerStorageValue(cid, 854787, -1)
                     local sto = getMyTaskSto(cid, getNpcCid())
                     setPlayerStorageValue(cid, sto, -1)
                     talkState[talkUser] = 0
                     return true
                  else
                     selfSay("You aren't with the "..(npc.poke).." which you caught before in your pokebag! Go get it!", cid)
                     talkState[talkUser] = 0
                     return true

A proteção pode ser esta [alterada pelo slicer na versão 1.8 do PDA]:

local storages = {17000, 63215, 17001, 13008, 5700}   --alterado v1.8
                  for s = 1, #storages do
                      if getPlayerStorageValue(cid, storages[s]) >= 1 then
                         selfSay("You can't do that while is Flying, Riding, Surfing, Diving or mount a bike!", cid) 
                         talkState[talkUser] = 0
                         return true
                      end
                  end

#EDIT: Procure por:

elseif spell == "Demon Puncher" then
 
   local name = getCreatureName(cid)
                                                                                                             --alterado v1.7
if (not hitmonchans[name] and isCreature(target)) or (isCreature(target) and math.random(1, 100) <= passivesChances["Demon Puncher"][name]) then 
                                                        
       if getDistanceBetween(getThingPosWithDebug(cid), getThingPosWithDebug(target)) > 1 then
       return true
       end
       
       if not isSummon(cid) then       --alterado v1.7
         doCreatureSay(cid, string.upper(spell).."!", TALKTYPE_MONSTER)
       end                                 
         
         if ehMonstro(cid) or not hitmonchans[name] then
            hands = 0
         else
            hands = getItemAttribute(getPlayerSlotItem(getCreatureMaster(cid), 8).uid, "hands")
         end
         
         if not hitmonchans[name] then
            tabela = hitmonchans[name][hands]
         end
          
         doSendDistanceShoot(getThingPosWithDebug(cid), getThingPosWithDebug(target), 39)
         doTargetCombatHealth(cid, target, tabela.type, -min, -max, 255)
         
         local alvo = getThingPosWithDebug(target)
         alvo.x = alvo.x + 1                           ---alterado v1.7
         
         if hands == 4 then
            doSendMagicEffect(alvo, tabela.eff)   --alterado v1.7
         else
            doSendMagicEffect(getThingPosWithDebug(target), tabela.eff)
         end
         
         if hands == 3 then
            local ret = {}
            ret.id = target
            ret.cd = 9                     --alterado v1.6
            ret.eff = 43
            ret.check = getPlayerStorageValue(target, conds["Slow"])
            ret.first = true
            ret.cond = "Slow"
         
            doMoveDano2(cid, target, FIGHTINGDAMAGE, 0, 0, ret, spell)
         end  
end
 
 
 
end
return true 
end
E troque por:
elseif spell == "Demon Puncher" then
 
   local name = getCreatureName(cid)
                                                                                                             --alterado v1.7
if (not hitmonchans[name] and isCreature(target)) or (isCreature(target) and math.random(1, 100) <= passivesChances["Demon Puncher"][name]) then 
                                                        
       if getDistanceBetween(getThingPosWithDebug(cid), getThingPosWithDebug(target)) > 1 then
       return true
       end
       
       if not isSummon(cid) then       --alterado v1.7
         doCreatureSay(cid, string.upper(spell).."!", TALKTYPE_MONSTER)
       end                                 
         
         if ehMonstro(cid) or not hitmonchans[name] then
            hands = 0
         else
            hands = getItemAttribute(getPlayerSlotItem(getCreatureMaster(cid), 8).uid, "hands")
         end
         
         if not hitmonchans[name] then
            tabela = hitmonchans[getCreatureName(target)][hands]
         else
            tabela = hitmonchans[name][hands]
         end
          
         doSendDistanceShoot(getThingPosWithDebug(cid), getThingPosWithDebug(target), 39)
         doTargetCombatHealth(cid, target, tabela.type, -min, -max, 255)
         
         local alvo = getThingPosWithDebug(target)
         alvo.x = alvo.x + 1                           ---alterado v1.7
         
         if hands == 4 then
            doSendMagicEffect(alvo, tabela.eff)
         else
            doSendMagicEffect(getThingPosWithDebug(target), tabela.eff)
         end
         
         if hands == 3 then
            local ret = {}
            ret.id = target
            ret.cd = 9                     --alterado v1.6
            ret.eff = 43
            ret.check = getPlayerStorageValue(target, conds["Slow"])
            ret.first = true
            ret.cond = "Slow"
         
            doMoveDano2(cid, target, FIGHTINGDAMAGE, 0, 0, ret, spell)
         end  
end
 
 
end
return true 
end

/\ Essa é a resolução do primeiro erro. Testei aqui o seu, deu aquele erro do Demon Puncher. Substituí por este último, o bug foi retirado (:

Editado por zipter98

/\ é ai mesmo

a proteção seria assim:

                 if isMyTaskComplete(cid, getNpcCid()) then
			if #getCreatureSummons(cid) >= 1 then
				selfSay("Put your pokémon back on his ball!", cid)
                     		talkState[talkUser] = 0
                     	return true
                  	end   
			if getCreatureCondition(cid, CONDITION_OUTFIT) and (getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 17001) >= 1) then
				selfSay("You can't give me the pokémon while you fly or ride!", cid)
                     		talkState[talkUser] = 0
                     	return true
                  	end   
                  if checkPokemonForTask(cid, npc.poke) then
                     setPlayerClanRank(cid, npc.nextRank)
                     selfSay("So you complete my last task! Congradulations! Now you move up of rank and become {"..lookClans[getPlayerClanNum(cid)][getPlayerClanRank(cid)].."}!", cid)
                     setPlayerStorageValue(cid, 854789, -1)
                     setPlayerStorageValue(cid, 854787, -1)
                     local sto = getMyTaskSto(cid, getNpcCid())
                     setPlayerStorageValue(cid, sto, -1)
                     talkState[talkUser] = 0
                     return true
                  else
                     selfSay("You aren't with the "..(npc.poke).." which you caught before in your pokebag! Go get it!", cid)
                     talkState[talkUser] = 0
                     return true
                  end   
               else
                  selfSay("You didn't complete my task yet... Go end it!", cid)
                  talkState[talkUser] = 0
                  return true
               end        
  Em 20/10/2013 em 22:36, Akumah disse:

 

/\ é ai mesmo

a proteção seria assim:

                 if isMyTaskComplete(cid, getNpcCid()) then
			if #getCreatureSummons(cid) >= 1 then
				selfSay("Put your pokémon back on his ball!", cid)
                     		talkState[talkUser] = 0
                     	return true
                  	end   
			if getCreatureCondition(cid, CONDITION_OUTFIT) and (getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 17001) >= 1) then
				selfSay("You can't give me the pokémon while you fly or ride!", cid)
                     		talkState[talkUser] = 0
                     	return true
                  	end   
                  if checkPokemonForTask(cid, npc.poke) then
                     setPlayerClanRank(cid, npc.nextRank)
                     selfSay("So you complete my last task! Congradulations! Now you move up of rank and become {"..lookClans[getPlayerClanNum(cid)][getPlayerClanRank(cid)].."}!", cid)
                     setPlayerStorageValue(cid, 854789, -1)
                     setPlayerStorageValue(cid, 854787, -1)
                     local sto = getMyTaskSto(cid, getNpcCid())
                     setPlayerStorageValue(cid, sto, -1)
                     talkState[talkUser] = 0
                     return true
                  else
                     selfSay("You aren't with the "..(npc.poke).." which you caught before in your pokebag! Go get it!", cid)
                     talkState[talkUser] = 0
                     return true
                  end   
               else
                  selfSay("You didn't complete my task yet... Go end it!", cid)
                  talkState[talkUser] = 0
                  return true
               end        

o que tin que poner

Este e o meu traiiner malefic

 

 

  Mostrar conteúdo oculto

 

bump!!! Help

Na verdade, já está com a proteção. Então não tenho muita ideia do que pode ser.

O ideal, seria você descobrir quando está acontecendo esse erro, em que situação ele ocorre, que o porque ficaria bem mais fácil.

muito obrigado

Mas o erro aparece aleatoriamente. Não se relacionam com qualquer coisa a verdade.


Agora tin un novo error.



[26/10/2013 19:59:27] [Error - CreatureScript Interface]

[26/10/2013 19:59:27] data/creaturescripts/scripts/exp2.0.lua:onStatsChange

[26/10/2013 19:59:27] Description:

[26/10/2013 19:59:27] data/lib/pokemon moves.lua:3857: attempt to index local 'outfitt' (a nil value)

[26/10/2013 19:59:27] stack traceback:

[26/10/2013 19:59:27] data/lib/pokemon moves.lua:3857: in function 'docastspell'

[26/10/2013 19:59:27] data/creaturescripts/scripts/exp2.0.lua:554: in function <data/creaturescripts/scripts/exp2.0.lua:62>

[26/10/2013 19:59:29] Error trying to use move Demon Puncher, move not specified in the pokemon table.

[26/10/2013 19:59:30] Error trying to use move Demon Puncher, move not specified in the pokemon table.

[26/10/2013 19:59:32] Error trying to use move Demon Puncher, move not specified in the pokemon table.

  • 2 weeks later...
  • 4 years later...
A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta.

+ Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda.
* Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado.
Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...