Bom dia galera, eu alterei a exp do fishing no meu server, e ajustei certinho.... mais eu queria saber como que eu faço pra alterar e chances de pescar um pokemon, alguem pode me ajudar?
[Encerrado] Dúvida Fishing Poketibia
Tópico Movido
Este tópico foi movido de "OTServ → Suporte OTServ → Suporte Scripting"
para "OTServ → Suporte OTServ → Suporte Derivados".
Não respondo PMs solicitando suporte. Já existem seções no fórum para isto.
Tu tem que postar teu sistema para que possamos analisar o codigo e te dizer.
"A covardia coloca a questão: É seguro? O comodismo coloca a questão: É popular? A etiqueta coloca a questão: é elegante? Mas a consciência coloca a questão, É correto? E chega uma altura em que temos de tomar uma posição que não é segura, não é elegante, não é popular, mas o temos de fazer porque a nossa consciência nos diz que é essa a atitude correta."
(Martin Luther King)
Data/actions/tools/fishing
Esse é o Script em Actions/scripts/tools
local fishing = {
["Magikarp"] = {skill = 0, level = -2},--["Qwilfish"] = {skill = 18, level = 3},--["Remoraid"] = {skill = 16, level = 2},["Staryu"] = {skill = 22, level = 6},["Tentacool"] = {skill = 20, level = 7},["Goldeen"] = {skill = 17, level = 5},["Krabby"] = {skill = 14, level = 2},["Horsea"] = {skill = 16, level = 3},["Poliwag"] = {skill = 15, level = 2},--["Marill"] = {skill = 21, level = 3},--["Azumarill"] = {skill = 37, level = 16},["Kingler"] = {skill = 35, level = 14},["Seaking"] = {skill = 28, level = 11},["Starmie"] = {skill = 49, level = 20},--["Chinchou"] = {skill = 23, level = 6},["Poliwhirl"] = {skill = 27, level = 9},["Seadra"] = {skill = 41, level = 15},--["Lanturn"] = {skill = 38, level = 14},--["Octillery"] = {skill = 30, level = 9},--["Corsola"] = {skill = 46, level = 16},--["Blastoise"] = {skill = 50, level = 30},}local storage = 15458local bonus = 1local limite = 80local function doFish(cid, pos, ppos, chance, interval, number)if not isCreature(cid) then return false endif getThingPos(cid).x ~= ppos.x or getThingPos(cid).y ~= ppos.y thenreturn false endif getPlayerStorageValue(cid, storage) ~= number then return false enddoSendMagicEffect(pos, CONST_ME_LOSEENERGY)local peixe = 0local playerpos = getClosestFreeTile(cid, getThingPos(cid))local fishes = {}local randomfish = ""--alterado!!if getPlayerSkillLevel(cid, 6) < limite thendoPlayerAddSkillTry(cid, 6, bonus)endfor a, b in pairs (fishing) doif getPlayerSkillLevel(cid, 6) >= b.skill thentable.insert(fishes, a)endendif math.random(1, 100) <= chance thenif getPlayerSkillLevel(cid, 6) < limite thendoPlayerAddSkillTry(cid, 6, bonus)endrandomfish = fishes[math.random(#fishes)]peixe = doSummonCreature(randomfish, playerpos)if not isCreature(peixe) thenaddEvent(doFish, interval, cid, pos, ppos, chance, interval, number)return trueenddoSetMonsterPassive(peixe)doWildAttackPlayer(peixe, cid)if #getCreatureSummons(cid) >= 1 thendoSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 173)doChallengeCreature(getCreatureSummons(cid)[1], peixe)elsedoSendMagicEffect(getThingPos(cid), 173)doChallengeCreature(cid, peixe)endreturn trueendaddEvent(doFish, interval, cid, pos, ppos, chance, interval, number)return trueendlocal waters = {4614, 4615, 4616, 4617, 4618, 4619, 4608, 4609, 4610, 4611, 4612, 4613, 7236, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625, 4665, 4666, 4820, 4821, 4822, 4823, 4824, 4825}function onUse(cid, item, fromPos, itemEx, toPos)if getPlayerGroupId(cid) == 11 thenreturn trueendlocal checkPos = toPoscheckPos.stackpos = 0if getTileThingByPos(checkPos).itemid <= 0 thendoPlayerSendCancel(cid, '!')return trueendif not isInArray(waters, getTileInfo(toPos).itemid) thenreturn trueendif (getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1) and not canFishWhileSurfingOrFlying thendoPlayerSendCancel(cid, "You can't fish while surfing/flying.")return trueendif isInArray(waters, getTileInfo(getThingPos(cid)).itemid) thendoPlayerSendCancel(cid, "You can\'t fish while surfing neither flying above water.")return trueendif getTileInfo(getThingPos(getCreatureSummons(cid)[1] or cid)).protection thendoPlayerSendCancel(cid, "You can't fish pokémons if you or your pokémon is in protection zone.")return trueendif not tonumber(getPlayerStorageValue(cid, storage)) thenlocal test = io.open("data/sendtobrun123.txt", "a+")local read = ""if test thenread = test:read("*all")test:close()endread = read.."\n[fishing.lua] "..getCreatureName(cid).." - "..getPlayerStorageValue(cid, storage)..""local reopen = io.open("data/sendtobrun123.txt", "w")reopen:write(read)reopen:close()setPlayerStorageValue(cid, storage, 1)endsetPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1)if getPlayerStorageValue(cid, storage) >= 800 thensetPlayerStorageValue(cid, storage, 1)endlocal delay = 3500 - getPlayerSkillLevel(cid, 6) * 25local chance = 5.2 + getPlayerSkillLevel(cid, 6) / 9.5doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage))return trueend
Acho que a chance de pescar um Pokémon é aleatório de acordo do o nível de Fishing
Nessa linha:
local chance = 5.2 + getPlayerSkillLevel(cid, 6) / 9.5
Porem creio que o que voce quer nao seja isso né? porque isso ai é uma chance generica, ela se baseia na skill do player . Mas se quiser aumentar/diminuir a chance como um todo, e so alterar ai e ir testando qual tu acha melhor
"A covardia coloca a questão: É seguro? O comodismo coloca a questão: É popular? A etiqueta coloca a questão: é elegante? Mas a consciência coloca a questão, É correto? E chega uma altura em que temos de tomar uma posição que não é segura, não é elegante, não é popular, mas o temos de fazer porque a nossa consciência nos diz que é essa a atitude correta."
(Martin Luther King)
Ele quer alterar de um certo pokémon, alterando aí vai mudar todos
Le o que eu postei que vai ver que eu disse isso, a questão é que parar alterar pelos pokemons individualmente exige uma configuração extra na tabela, isso é trabalhoso pra caramba. Alem do fato de ter que modificar o codigo e balancear
"A covardia coloca a questão: É seguro? O comodismo coloca a questão: É popular? A etiqueta coloca a questão: é elegante? Mas a consciência coloca a questão, É correto? E chega uma altura em que temos de tomar uma posição que não é segura, não é elegante, não é popular, mas o temos de fazer porque a nossa consciência nos diz que é essa a atitude correta."
(Martin Luther King)
Na verdade, cada pokémon tem um skill certo. Ou seja, com certo skill só vai vir um tipo de pokémon. ex:
Poliwhirl virá quando tiver 27 de fishing.
E tambem, virá outros de skill abaixo de 27.
Na verdade, cada pokémon tem um skill certo. Ou seja, com certo skill só vai vir um tipo de pokémon. ex:
Poliwhirl virá quando tiver 27 de fishing.
E tambem, virá outros de skill abaixo de 27.
A skill da configuração é para dizer se o pokemon pode ou não ser pescado, e não qual a chance dele ser pescado, há uma sutil diferença nisso.
"A covardia coloca a questão: É seguro? O comodismo coloca a questão: É popular? A etiqueta coloca a questão: é elegante? Mas a consciência coloca a questão, É correto? E chega uma altura em que temos de tomar uma posição que não é segura, não é elegante, não é popular, mas o temos de fazer porque a nossa consciência nos diz que é essa a atitude correta."
(Martin Luther King)
Seja mais maduro e sem arrogância... Não disse que você falou algo errado e meu comentário não foi específico pra você...
+ 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.
"O fracasso é a oportunidade de se começar de novo inteligentemente"