narutochuuu 28 Postado Janeiro 19, 2013 Share Postado Janeiro 19, 2013 Eu fui testar o account manager e deu isso aqui: [19/01/2013 20:25:48] [Error - CreatureScript Interface] [19/01/2013 20:25:48] data/creaturescripts/scripts/login.lua:onLogin [19/01/2013 20:25:48] Description: [19/01/2013 20:25:48] data/lib/level system.lua:55: attempt to perform arithmetic on local 'd' (a nil value) [19/01/2013 20:25:48] stack traceback: [19/01/2013 20:25:48] data/lib/level system.lua:55: in function 'getPokemonXMLOutfit' [19/01/2013 20:25:48] data/creaturescripts/scripts/login.lua:39: in function <data/creaturescripts/scripts/login.lua:6> e o erro está nesta linha eu acho: outfit = {lookType = getPokemonXMLOutfit(oldpokedex[math.random(151)][1])} Tem como arrumar isso? Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/ Compartilhar em outros sites More sharing options...
Slicer 1070 Postado Janeiro 19, 2013 Share Postado Janeiro 19, 2013 poste teu lib/level system.lua... mas.. todos teus shinys estao na pasta monster/pokes/Shiny ? acresentasse novos pokes alem da johto? Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443776 Compartilhar em outros sites More sharing options...
narutochuuu 28 Postado Janeiro 19, 2013 Autor Share Postado Janeiro 19, 2013 É obrigado colocar todos os shinys? Eu adicionei apenas 4 por enquanto. Aqui a Level System: function adjustWildPoke(cid, optionalLevel) if isMonster(cid) and pokes[getCreatureName(cid)] then local level = (optionalLevel and optionalLevel >= 1) and optionalLevel or getPokemonLevel(cid) --alterado v1.8 setPlayerStorageValue(cid, 1000, level) --alterado v1.8 setPlayerStorageValue(cid, 1001, pokes[getCreatureName(cid)].offense * level) setPlayerStorageValue(cid, 1002, pokes[getCreatureName(cid)].defense) setPlayerStorageValue(cid, 1003, pokes[getCreatureName(cid)].agility) setPlayerStorageValue(cid, 1004, pokes[getCreatureName(cid)].vitality * level) setPlayerStorageValue(cid, 1005, pokes[getCreatureName(cid)].specialattack * level) doRegainSpeed(cid) --alterado! setCreatureMaxHealth(cid, (getVitality(cid) * HPperVITwild)) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) if pokes[getCreatureName(cid)].exp then local exp = pokes[getCreatureName(cid)].exp * baseExpRate + pokes[getCreatureName(cid)].vitality * pokemonExpPerLevelRate setPlayerStorageValue(cid, 1006, (exp * generalExpRate/2)*10) if getPlayerStorageValue(cid, 22546) == 1 then setPlayerStorageValue(cid, 1006, 750) doSetCreatureDropLoot(cid, false) end end end end function getPokemonXMLOutfit(name) local johto = false for i = 209, 308 do --alterado v1.6 if oldpokedex[i][1] and oldpokedex[i][1] == name then johto = true end end if isShinyName(name) then a = "data/monster/pokes/Shiny/"..name..".xml" elseif johto then a = "data/monster/pokes/geracao 2/"..name..".xml" --edited pra melhorar a pasta monster else a = "data/monster/pokes/geracao 1/"..name..".xml" end local b = io.open(a, "a+") local c = b:read("*all") b:close() local d, e = c:find('look type="(.-)"') c = string.sub(c, d + 11, e - 1) return tonumber(c) end function doEvolutionOutfit(cid, oldout, outfit) if not isCreature(cid) then return true end if getCreatureOutfit(cid).lookType == oldout then doSetCreatureOutfit(cid, {lookType = outfit}, -1) else doSetCreatureOutfit(cid, {lookType = oldout}, -1) end end function doSendEvolutionEffect(cid, pos, evolution, turn, ssj, evolve, f, h) if not isCreature(cid) then doSendAnimatedText(pos, "CANCEL", 215) return true end if evolve then doEvolvePokemon(getCreatureMaster(cid), {uid = cid}, evolution, 0, 0) return true end doSendMagicEffect(pos, 18) if ssj then sendSSJEffect(evo) end doEvolutionOutfit(cid, f, h) addEvent(doSendEvolutionEffect, math.pow(1900, turn/20), cid, getThingPos(cid), evolution, turn - 1, turn == 19, turn == 2, f, h) end function sendSSJEffect(cid) if not isCreature(cid) then return true end local pos1 = getThingPos(cid) local pos2 = getThingPos(cid) pos2.x = pos2.x + math.random(-1, 1) pos2.y = pos2.y - math.random(1, 2) doSendDistanceShoot(pos1, pos2, 37) addEvent(sendSSJEffect, 45, cid) end function sendFinishEvolutionEffect(cid, alternate) if not isCreature(cid) then return true end local pos1 = getThingPos(cid) if alternate then local pos = { [1] = {-2, 0}, [2] = {-1, -1}, [3] = {0, -2}, [4] = {1, -1}, [5] = {2, 0}, [6] = {1, 1}, [7] = {0, 2}, [8] = {-1, 1}} for a = 1, 8 do local pos2 = getThingPos(cid) pos2.x = pos2.x + pos[a][1] pos2.y = pos2.y + pos[a][2] local pos = getThingPos(cid) doSendDistanceShoot(pos2, pos, 37) addEvent(doSendDistanceShoot, 300, pos, pos2, 37) end else for a = 0, 3 do doSendDistanceShoot(pos1, getPosByDir(pos1, a), 37) end for a = 4, 7 do addEvent(doSendDistanceShoot, 600, pos1, getPosByDir(pos1, a), 37) end end end function doEvolvePokemon(cid, item2, theevo, stone1, stone2) if not isCreature(cid) then return true end if not pokes[theevo] or not pokes[theevo].offense then doReturnPokemon(cid, item2.uid, getPlayerSlotItem(cid, 8), pokeballs[getPokeballType(getPlayerSlotItem(cid, 8).itemid)].effect, false, true) return true end local owner = getCreatureMaster(item2.uid) local pokeball = getPlayerSlotItem(cid, 8) local description = "Contains a "..theevo.."." local pct = getCreatureHealth(item2.uid) / getCreatureMaxHealth(item2.uid) doItemSetAttribute(pokeball.uid, "hp", pct) doItemSetAttribute(pokeball.uid, "poke", theevo) doItemSetAttribute(pokeball.uid, "description", "Contains a "..theevo..".") doPlayerSendTextMessage(cid, 27, "Congratulations! Your "..getPokeName(item2.uid).." evolved into a "..theevo.."!") doSendMagicEffect(getThingPos(item2.uid), 18) doTransformItem(getPlayerSlotItem(cid, 7).uid, fotos[theevo]) doSendMagicEffect(getThingPos(cid), 173) local oldpos = getThingPos(item2.uid) local oldlod = getCreatureLookDir(item2.uid) doRemoveCreature(item2.uid) doSummonMonster(cid, theevo) local pk = getCreatureSummons(cid)[1] doTeleportThing(pk, oldpos, false) doCreatureSetLookDir(pk, oldlod) sendFinishEvolutionEffect(pk, true) addEvent(sendFinishEvolutionEffect, 550, pk, true) addEvent(sendFinishEvolutionEffect, 1050, pk) doPlayerRemoveItem(cid, stone1, 1) doPlayerRemoveItem(cid, stone2, 1) doAddPokemonInOwnList(cid, theevo) local happy = getItemAttribute(pokeball.uid, "happy") doItemSetAttribute(pokeball.uid, "happy", happy + happyGainedOnEvolution) if happy + happyGainedOnEvolution > 255 then doItemSetAttribute(pokeball.uid, "happy", 255) end adjustStatus(pk, pokeball.uid, true, false) if useKpdoDlls then doUpdateMoves(cid) end end function doMathDecimal(number, casas) if math.floor(number) == number then return number end local c = casas and casas + 1 or 3 for a = 0, 10 do if math.floor(number) < math.pow(10, a) then local str = string.sub(""..number.."", 1, a + c) return tonumber(str) end end return number end function doAdjustWithDelay(cid, pk, health, vit, status) if isCreature(cid) then --alterado v1.5 if not isCreature(cid) then return true end adjustStatus(pk, getPlayerSlotItem(cid, 8).uid, health, vir, status) end end function adjustStatus(pk, item, health, vite, conditions) if not isCreature(pk) then return true end local gender = getItemAttribute(item, "gender") and getItemAttribute(item, "gender") or 0 addEvent(doCreatureSetSkullType, 10, pk, gender) setPlayerStorageValue(pk, 1001, pokes[getCreatureName(pk)].offense * (getMasterLevel(pk) + getPokemonBoost(pk))) setPlayerStorageValue(pk, 1002, pokes[getCreatureName(pk)].defense) --alterado v1.5 setPlayerStorageValue(pk, 1003, pokes[getCreatureName(pk)].agility) setPlayerStorageValue(pk, 1004, pokes[getCreatureName(pk)].vitality * (getMasterLevel(pk) + getPokemonBoost(pk))) setPlayerStorageValue(pk, 1005, pokes[getCreatureName(pk)].specialattack * (getMasterLevel(pk) + getPokemonBoost(pk))) if vite == true then local pct = getCreatureHealth(pk) / getCreatureMaxHealth(pk) local vit = getVitality(pk) setCreatureMaxHealth(pk, ( vit * HPperVITsummon )) doCreatureAddHealth(pk, pct * vit * HPperVITsummon) end doRegainSpeed(pk) local nick = getItemAttribute(item, "poke") if isGhostPokemon(pk) then setPlayerStorageValue(pk, 8981, 1) updateGhostWalk(pk) end if string.find(tostring(nick), "Shiny") then nick = tostring(nick):match("Shiny (.*)") end if getItemAttribute(item, "nick") then nick = getItemAttribute(item, "nick") end setPlayerStorageValue(pk, 1007, nick) doCreatureSetNick(pk, nick) if not getItemAttribute(item, "happy") then doItemSetAttribute(item, "happy", 120) end if not getItemAttribute(item, "hunger") then doItemSetAttribute(item, "hunger", 5) end local happy = getItemAttribute(item, "happy") if happy < 0 then happy = 1 end setPlayerStorageValue(pk, 1008, happy) local hunger = getItemAttribute(item, "hunger") setPlayerStorageValue(pk, 1009, hunger) if health == true then local mh = HPperVITsummon * getVitality(pk) local rd = 1 - (tonumber(getItemAttribute(item, "hp"))) setCreatureMaxHealth(pk, mh) doCreatureAddHealth(pk, getCreatureMaxHealth(pk)) doCreatureAddHealth(pk, -(getCreatureMaxHealth(pk) * rd)) end if isSummon(pk) and conditions then local burn = getItemAttribute(item, "burn") if burn and burn >= 0 then local ret = {id = pk, cd = burn, check = false, damage = getItemAttribute(item, "burndmg"), cond = "Burn"} addEvent(doCondition2, 3500, ret) end local poison = getItemAttribute(item, "poison") if poison and poison >= 0 then local ret = {id = pk, cd = poison, check = false, damage = getItemAttribute(item, "poisondmg"), cond = "Poison"} addEvent(doCondition2, 1500, ret) end local confuse = getItemAttribute(item, "confuse") if confuse and confuse >= 0 then local ret = {id = pk, cd = confuse, check = false, cond = "Confusion"} addEvent(doCondition2, 1200, ret) --alterado v1.5 end local sleep = getItemAttribute(item, "sleep") if sleep and sleep >= 0 then local ret = {id = pk, cd = sleep, check = false, first = true, cond = "Sleep"} doCondition2(ret) end local miss = getItemAttribute(item, "miss") if miss and miss >= 0 then local ret = {id = pk, cd = miss, eff = getItemAttribute(item, "missEff"), check = false, spell = getItemAttribute(item, "missSpell"), cond = "Miss"} doCondition2(ret) end local fear = getItemAttribute(item, "fear") if fear and fear >= 0 then local ret = {id = pk, cd = fear, check = false, skill = getItemAttribute(item, "fearSkill"), cond = "Fear"} doCondition2(ret) end local silence = getItemAttribute(item, "silence") if silence and silence >= 0 then local ret = {id = pk, cd = silence, eff = getItemAttribute(item, "silenceEff"), check = false, cond = "Silence"} doCondition2(ret) end local stun = getItemAttribute(item, "stun") if stun and stun >= 0 then local ret = {id = pk, cd = stun, eff = getItemAttribute(item, "stunEff"), check = false, spell = getItemAttribute(item, "stunSpell"), cond = "Stun"} doCondition2(ret) end local paralyze = getItemAttribute(item, "paralyze") if paralyze and paralyze >= 0 then local ret = {id = pk, cd = paralyze, eff = getItemAttribute(item, "paralyzeEff"), check = false, first = true, cond = "Paralyze"} doCondition2(ret) end local slow = getItemAttribute(item, "slow") if slow and slow >= 0 then local ret = {id = pk, cd = slow, eff = getItemAttribute(item, "slowEff"), check = false, first = true, cond = "Slow"} doCondition2(ret) end local leech = getItemAttribute(item, "leech") if leech and leech >= 0 then local ret = {id = pk, cd = leech, attacker = 0, check = false, damage = getItemAttribute(item, "leechdmg"), cond = "Leech"} doCondition2(ret) end for i = 1, 3 do local buff = getItemAttribute(item, "Buff"..i) if buff and buff >= 0 then local ret = {id = pk, cd = buff, eff = getItemAttribute(item, "Buff"..i.."eff"), check = false, buff = getItemAttribute(item, "Buff"..i.."skill"), first = true, attr = "Buff"..i} doCondition2(ret) end end end if getItemAttribute(item, "boost") and getItemAttribute(item, "boost") == 50 and getItemAttribute(item, "aura") then sendAuraEffect(pk, auraSyst[getItemAttribute(item, "aura")]) --edited aura system end if getPlayerStorageValue(getCreatureMaster(pk), 6598754) >= 1 then setPlayerStorageValue(pk, 6598754, 1) --edited pvp system elseif getPlayerStorageValue(getCreatureMaster(pk), 6598755) >= 1 then setPlayerStorageValue(pk, 6598755, 1) end return true end function getOffense(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1001)) end function getDefense(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1002)) end function getSpeed(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1003)) end function getVitality(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1004)) end function getSpecialAttack(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1005)) end function getHappiness(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1008)) end function getSpecialDefense(cid) if not isCreature(cid) then return 0 end return getSpecialAttack(cid) * 0.85 + getDefense(cid) * 0.2 end function getPokemonLevel(cid) if not isCreature(cid) then return 0 end if ehMonstro(cid) and getPlayerStorageValue(cid, 1000) > 0 then --alterado v1.8 return getPlayerStorageValue(cid, 1000) elseif ehMonstro(cid) then return pokes[getCreatureName(cid)].wildLvl end return pokes[getCreatureName(cid)].level end function getPokemonLevelByName(name) if tostring(name) then --alterado v1.5 return pokes[name].level end return 0 end function getMasterLevel(poke) if not isSummon(poke) then return 0 end return getPlayerLevel(getCreatureMaster(poke)) end function getPokemonBoost(poke) if not isSummon(poke) then return 0 end return getItemAttribute(getPlayerSlotItem(getCreatureMaster(poke), 8).uid, "boost") or 0 end function getPokeballBoost(ball) if not isPokeball(ball.itemid) then return 0 end --alterado v1.8 return getItemAttribute(ball.uid, "boost") or 0 end function getPokeName(cid) if not isSummon(cid) then return getCreatureName(cid) end if getCreatureName(cid) == "Evolution" then return getPlayerStorageValue(cid, 1007) end local item = getPlayerSlotItem(getCreatureMaster(cid), 8) if getItemAttribute(item.uid, "nick") then return getItemAttribute(item.uid, "nick") end if string.find(tostring(getCreatureName(cid)), "Shiny") then local newName = tostring(getCreatureName(cid)):match("Shiny (.*)") return newName end return getCreatureName(cid) end function getPokeballName(item, truename) if not truename and getItemAttribute(item, "nick") then return getItemAttribute(item, "nick") end return getItemAttribute(item, "poke") end function getPokemonName(cid) return getCreatureName(cid) end function getPokemonGender(cid) return getCreatureSkullType(cid) end function setPokemonGender(cid, gender) if isCreature(cid) and gender then --alterado v1.8 doCreatureSetSkullType(cid, gender) return true end return false end function getWildPokemonExp(cid) return getPlayerStorageValue(cid, 1006) end Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443784 Compartilhar em outros sites More sharing options...
Slicer 1070 Postado Janeiro 19, 2013 Share Postado Janeiro 19, 2013 eh todos os Shinys tem q tar naquela pasta... Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443802 Compartilhar em outros sites More sharing options...
narutochuuu 28 Postado Janeiro 19, 2013 Autor Share Postado Janeiro 19, 2013 Mas eu coloquei, olha o xml deles: <monster name="Shiny Sewaddle" file="pokes/Shiny/Shiny Sewaddle.xml"/> <monster name="Shiny Munna" file="pokes/Shiny/Shiny Munna.xml"/> <monster name="Shiny Musharna" file="pokes/Shiny/Shiny Musharna.xml"/> <monster name="Shiny Krookodile" file="pokes/Shiny/Shiny Krookodile.xml"/> Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443808 Compartilhar em outros sites More sharing options...
Slicer 1070 Postado Janeiro 19, 2013 Share Postado Janeiro 19, 2013 n adicionou mais nenhum pokemon? ta dando erro pq o script n ta conseguindo achar algum pokemon em alguma das 3 pastas ae... ;x Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443813 Compartilhar em outros sites More sharing options...
narutochuuu 28 Postado Janeiro 19, 2013 Autor Share Postado Janeiro 19, 2013 Que estranho... vou dar uma olhada pra ver se tem algum shiny em outra pasta Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443825 Compartilhar em outros sites More sharing options...
Slicer 1070 Postado Janeiro 19, 2013 Share Postado Janeiro 19, 2013 podes tb tentar fazer isso.. acha essa linha ali.. local d, e = c:find('look type="(.-)"') e adiciona isso embaixo.. if not d then print("[xml] Error pokemon: "..name) return 0 end dai quando for dar o erro vai aparecer uma msg no console dizendo o nome do poke q ta errado.. dai tu ve aonde ele ta e me diz e manda o .xml dele... Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443828 Compartilhar em outros sites More sharing options...
narutochuuu 28 Postado Janeiro 19, 2013 Autor Share Postado Janeiro 19, 2013 @Edit <monster name="Shiny Alakazam cm" file="pokes/Control/CMShiny Alakazam.xml"/> <monster name="Shiny Gengar cm" file="pokes/Control/CMShiny Gengar.xml"/> <monster name="Shiny Tentacruel cm" file="pokes/Control/CMShiny Tentacruel.xml"/> <monster name="Shiny ScytherTeam" file="pokes/Shredder Team/Shiny Scyther.xml"/> Os shinys que tem no monster.xml que não está na pasta Shiny Será que não tem algo a ver com a pasta Spawn.lua? Eu não adicionei os novos pokes lá... Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443831 Compartilhar em outros sites More sharing options...
Slicer 1070 Postado Janeiro 19, 2013 Share Postado Janeiro 19, 2013 veio o problema n eh soh com os shinys.. faz oq eu flei ali emcima q deve apontar aonde ta o problema.. e esse shinys devem ficar ae ms... e n, n tem a ver com o spawn.lua Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443833 Compartilhar em outros sites More sharing options...
narutochuuu 28 Postado Janeiro 20, 2013 Autor Share Postado Janeiro 20, 2013 podes tb tentar fazer isso.. acha essa linha ali.. local d, e = c:find('look type="(.-)"') e adiciona isso embaixo.. if not d then print("[xml] Error pokemon: "..name) return 0 end dai quando for dar o erro vai aparecer uma msg no console dizendo o nome do poke q ta errado.. dai tu ve aonde ele ta e me diz e manda o .xml dele... Linha de que arquivo? O_O Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443839 Compartilhar em outros sites More sharing options...
Slicer 1070 Postado Janeiro 20, 2013 Share Postado Janeiro 20, 2013 do q tu passo? --' Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443841 Compartilhar em outros sites More sharing options...
narutochuuu 28 Postado Janeiro 20, 2013 Autor Share Postado Janeiro 20, 2013 Coloquei e deu nisso: http://i.imgur.com/8mxZxCR.png @EDIT Consegui Valeu Slicer pode fechar o tópico Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1443914 Compartilhar em outros sites More sharing options...
Slicer 1070 Postado Janeiro 20, 2013 Share Postado Janeiro 20, 2013 ok.. sanado, movido Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1444094 Compartilhar em outros sites More sharing options...
Stigal 585 Postado Abril 20, 2018 Share Postado Abril 20, 2018 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. Link para o comentário https://xtibia.com/forum/topic/204900-encerrado-problema-loginlua-pda/#findComment-1733441 Compartilhar em outros sites More sharing options...
Posts Recomendados