Tudo que elielder postou
-
Alterar version client da source de 8.54 para 8.60.
.Qual servidor ou website você utiliza como base? 0.36 8.54 Qual o motivo deste tópico? gostaria alterar minha source (que aceita client 8.54) para aceitar client 8.60.
-
Bug ao entrar em tiles
- Bug ao entrar em tiles
ai é que ta o problema, isso esta acontecendo em todos os eventos, e todas as Revs (3777, 3884, 3996). na hora de compilar não apresenta nenhum erro, mas algo deve estar bugando a distro, e eu não consigo descobrir.- [8.60] TFS 0.4 Rev3996 War & Cast
bom, com o visual studio eu compilei com libvc10 64bits. e com o dev-cpp eu usei o do modificado do stian que todos recomendam. voce tem algum outro para me passar?- [8.60] TFS 0.4 Rev3996 War & Cast
todas as revs, 3777, 3884, 3996 estão ocorrendo isso. ja compilei tanto com DEV e tanto com visual studio, na compilação não apresenta nenhum erro.- Fire_event Mods
isso, ele cria o teleporte no local correto. mas o player ao entrar ele é teleportado pra Position: [X: 0] [Y: 0] [Z: 0]. acabei de testar o evendo Duca, DUCA: o melhor evento para otserv (8.60) - Sistemas, Mods & Funções .lua - Tibia King - Tudo sobre Tibia, OTServ e Bots! e ocorre o mesmo- Fire_event Mods
eu ja tentei usar a Rev 3777 do fir3 e a 3996 do Yan Lima e em todas ocorre isso. ele cria o teleporte com a actionid, mas quando eu entro no teleporte ele envia para a pos x=0 y=0 =0. acontece com todos players. já compilei tambem com Dev-cpp e com Visual Studio. Testei mais eventos, e acontece isso tambem nos demais eventos. não consigo entender oq esta acontecendo.- Fire_event Mods
.Qual servidor ou website você utiliza como base? rev 3777 0.4 8.60 Qual o motivo deste tópico? galera estou com problema nesse evento, ele esta enviando para a posição x=0 y=0 z=0. em vez de ir para a correta, não sei mais oq fazer. Está surgindo algum erro? Se sim coloque-o aqui. Você tem o código disponível? Se tiver publique-o aqui: <?xml version="1.0" encoding="ISO-8859-1"?> <mod name="Fire Storm Event" version="8.6" author="Vodkart" contact="" enabled="yes"> <config name="fire_config"><![CDATA[ Fire = { storages = {172354, 172355}, -- storage Count players = {min = 2, max = 50}, -- min, max players no evento minLevel = 20, -- level minimo para entrar no event rewards = {{2160,10},{12504,1}}, -- premios que vai receber timeToStartEvent = 30, -- segundos para começar o evento CheckTime = 5, -- time to check event teleport = {{x = 1027, y = 891, z = 7}, {x = 1030, y = 568, z = 7}}, -- posição do teleport, posição para onde o jogador vai arena = {{x = 1004, y = 540, z = 7},{x = 1066, y = 594, z = 7}} -- posição começo e final da area } Fire_Days = { ["Monday"] = {"13:00","18:00","20:00","22:00"}, ["Tuesday"] = {"09:26","14:29","20:00","22:00"}, ["Wednesday"] = {"14:29","18:00","20:00","22:00"}, ["Thursday"] = {"13:00","18:00","20:00","22:00"}, ["Friday"] = {"13:00","18:00","20:00","22:00"}, ["Saturday"] = {"13:00","18:00","20:00","22:00"}, ["Sunday"] = {"13:00","18:00","20:00","22:00"} } function removeFireTp() local t = getTileItemById(Fire.teleport[1], 1387).uid return t > 0 and doRemoveItem(t) and doSendMagicEffect(Fire.teleport[1], CONST_ME_POFF) end function ZerarStorFire() setGlobalStorageValue(Fire.storages[1], 0) setGlobalStorageValue(Fire.storages[2], 0) end function getPlayersInFireEvent() local t = {} for _, pid in pairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), Fire.arena[1], Fire.arena[2]) then t[#t+1] = pid end end return t end function getFireRewards(cid, items) local backpack = doPlayerAddItem(cid, 1995, 1) -- backpackID for _, i_i in ipairs(items) do local item, amount = i_i[1],i_i[2] if isItemStackable(item) or amount == 1 then doAddContainerItem(backpack, item, amount) else for i = 1, amount do doAddContainerItem(backpack, item, 1) end end end end function doFireInArea(n) if #getPlayersInFireEvent() > 1 then for i = 1, n do local pos = {x=math.random(Fire.arena[1].x, Fire.arena[2].x), y=math.random(Fire.arena[1].y,Fire.arena[2].y), z=Fire.arena[1].z} local m = getTopCreature(pos).uid doSendDistanceShoot({x = pos.x - math.random(4, 6), y = pos.y - 5, z = pos.z}, pos, CONST_ANI_FIRE) addEvent(doSendMagicEffect, 150, pos, CONST_ME_HITBYFIRE) addEvent(doSendMagicEffect, 150, pos, CONST_ME_FIREAREA) if m ~= 0 and isPlayer(m) then doSendMagicEffect(getCreaturePosition(m), CONST_ME_FIREAREA) doCreatureSay(m, "Ooh Burn Burn", TALKTYPE_ORANGE_1) local corpse = doCreateItem(3058, 1, getPlayerPosition(m)) doItemSetAttribute(corpse, "description", "You recognize " .. getCreatureName(m) .. ". He was killed by Fire Field.") doSendMagicEffect(getPlayerPosition(m), CONST_ME_POFF) doTeleportThing(m, getTownTemplePosition(getPlayerTown(m))) doPlayerSendTextMessage(m, MESSAGE_EVENT_ADVANCE, "[Fire Storm Event] You died burned out.") end end local x = 2700-(200*n) addEvent(doFireInArea, x <= 0 and 500 or x, n+1) elseif #getPlayersInFireEvent() == 1 then local cid = getPlayersInFireEvent()[1] doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) getFireRewards(cid, Fire.rewards) doBroadcastMessage("Fire Storm Event terminou. O vencedor é ".. getCreatureName(cid).. ". Parabéns.", MESSAGE_EVENT_ADVANCE) ZerarStorFire() else doBroadcastMessage("Ninguém ganhou o evento Fire Storm.", MESSAGE_EVENT_ADVANCE) ZerarStorFire() end end function CheckFireEvent(delay) if getGlobalStorageValue(Fire.storages[1]) ~= (Fire.players.max+1) then if delay > 0 and getGlobalStorageValue(Fire.storages[1]) < Fire.players.max then doBroadcastMessage("[Fire Stortm Event] Começando em " .. delay .. " minuto! O teleporte será fechado quando o evento começar!", MESSAGE_STATUS_WARNING) elseif delay == 0 and getGlobalStorageValue(Fire.storages[1]) < Fire.players.min then for _, cid in pairs(getPlayersInFireEvent()) do doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end removeFireTp() doBroadcastMessage("O evento Fire Storm não pôde começar devido a poucos jogadores participantes.\n Pelo menos " .. Fire.players.min .. " jogadores é necessário!", MESSAGE_STATUS_WARNING) ZerarStorFire() elseif delay == 0 and getGlobalStorageValue(Fire.storages[1]) >= Fire.players.min then removeFireTp() doBroadcastMessage("Boa sorte! O evento começará em "..Fire.timeToStartEvent.." segundos. prepare-se!") addEvent(doFireInArea, Fire.timeToStartEvent*1000, 1) end addEvent(CheckFireEvent, 60000, delay-1) end end ]]></config> <globalevent name="Storm_Fire_Start" interval="60000" event="script"><![CDATA[ domodlib('fire_config') function onThink(interval, lastExecution) if Fire_Days[os.date("%A")] then local hrs = tostring(os.date("%X")):sub(1, 5) if isInArray(Fire_Days[os.date("%A")], hrs) and getGlobalStorageValue(Fire.storages[2]) <= 0 then local tp = doCreateItem(1387, 1, Fire.teleport[1]) doItemSetAttribute(tp, "aid", 45111) CheckFireEvent(Fire.CheckTime) setGlobalStorageValue(Fire.storages[1], 0) end end return true end]]></globalevent> <event type="login" name="Storm_Fire_Login" event="script"><![CDATA[ domodlib('fire_config') function onLogin(cid) registerCreatureEvent(cid, "FireStormBatle") if isInRange(getPlayerPosition(cid), Fire.arena[1], Fire.arena[2]) then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end return true end]]></event> <event type="combat" name="FireStormBatle" event="script"><![CDATA[ domodlib('fire_config') if isPlayer(cid) and isPlayer(target) and isInRange(getPlayerPosition(cid), Fire.arena[1], Fire.arena[2]) then doPlayerSendCancel(cid, "Você não pode atacar este jogador.") return false end return true ]]></event> <movevent type="StepIn" actionid ="45111" event="script"><![CDATA[ domodlib('fire_config') function onStepIn(cid, item, position, fromPosition) if not isPlayer(cid) then return true end if getPlayerAccess(cid) > 3 then return doTeleportThing(cid, Fire.teleport[2]) end if getPlayerLevel(cid) < Fire.minLevel then doTeleportThing(cid, fromPosition, true) doPlayerSendCancel(cid, "Você precisa estar pelo menos nivel " .. Fire.minLevel .. ".") doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) return true end if getGlobalStorageValue(Fire.storages[1]) <= Fire.players.max then doTeleportThing(cid, Fire.teleport[2]) setGlobalStorageValue(Fire.storages[1], getGlobalStorageValue(Fire.storages[1])+1) doBroadcastMessage(getPlayerName(cid) .. " entrou no evento Fire Storm! Atualmente" .. getGlobalStorageValue(Fire.storages[1]) .. " jogadores se juntaram!", MESSAGE_STATUS_CONSOLE_RED) if getGlobalStorageValue(Fire.storages[1]) == Fire.players.max then setGlobalStorageValue(Fire.storages[1], getGlobalStorageValue(Fire.storages[1])+1) removeFireTp() doBroadcastMessage("O evento começará em "..Fire.timeToStartEvent.." segundos. prepare-se!") addEvent(doFireInArea, Fire.timeToStartEvent*1000, 1) end end return true end]]></movevent> <talkaction words="/firestart;!firestart" access="5" event="buffer"><![CDATA[ domodlib('fire_config') if getGlobalStorageValue(Fire.storages[2]) > 0 then doPlayerSendCancel(cid, "O evento já está começando.") return true elseif not param or not tonumber(param) then doPlayerSendCancel(cid, "Use only numbers.") return true end local param = tonumber(param) <= 0 and 1 or tonumber(param) local tp = doCreateItem(1387, 1, Fire.teleport[1]) doItemSetAttribute(tp, "aid", 45111) CheckFireEvent(tonumber(param)) setGlobalStorageValue(Fire.storages[1], 0) setGlobalStorageValue(Fire.storages[2], 1) ]]></talkaction> <globalevent name="FireDebug-Start" type="start" event="buffer"><![CDATA[ domodlib('fire_config') ZerarStorFire() return true]]></globalevent> </mod> Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.- Bug ao entrar em tiles
alguem ajuda por favor, não sei mais o que fazer, qualquer evento que eu testo, o player em vez de ir pro lugar certo vai pra posição zero ( x=0 y=0 z=0)- [8.60] TFS 0.4 Rev3996 War & Cast
@Yan Liima estou com um bug, players podem se atravessarem tanto no pz quanto fora, e tambem qualquer evento que cria teleporte, o teleporte envia para a posição x=0 y=0 z=0 em vez da posição correta. me ajuda por favor.- Bug ao entrar em tiles
.Qual servidor ou website você utiliza como base? rev 3996 8.60 0.4 Qual o motivo deste tópico? Estou com um bug no meu servidor, ao entrar em tiles criados por eventos (1387) com actionid, os players em vez de ir pra posição correta eles estao indo pra posição x=0 y=0 z=0. e isso ocorre em todos eventos. me ajuda por favor. uso rev 3996 8.60 0.4 Pelo oque eu entendi, ao ser criado o teleporte ele não ganha as posições setadas pelo evento e acaba sendo criado com as posições 0. https://prnt.sc/11n2whu- Rush Event - não teleporta após termino
.Qual servidor ou website você utiliza como base? Rev 3996 8.60 0.4 Qual o motivo deste tópico? Eu estou tentando usar o Event Rush event . mod , mas ele não teleporta após termino do evento. Não aparece nenhum erro na distro. Você tem o código disponível? Se tiver publique-o aqui:- Spells para reviver aliado
.Qual servidor ou website você utiliza como base? 3996 8.60 0.4 Qual o motivo deste tópico? Bom dia, preciso de uma spell que ao conjurar (Max Revive "Juquinha) o player juquinha ganhara um revive por 30 segundos, se ele morrer nesses 30 segundos ele revive Full hp e mana no mesmo lugar que morreu, se passar os 30 segundos perde o efeito da magia e ele morre normalmente. E tambem preciso de uma spell que enche a vida do player em 100% no mesmo esquema de conjuração (Max Heal "Juquinha). Se alguém puder me ajudar agradeço!! já procurei e não consegui encontrar. Está surgindo algum erro? Se sim coloque-o aqui.- Spell - Que tira Stun
Nossa, tão simples e eu quebrando a cabeça kkkkk. Funcionou certinho. Muito obrigado!!!- Spell - Que tira Stun
Bom dia, é uma spell pro jogador que está stunado utilizar.- Spell - Que tira Stun
.Qual servidor ou website você utiliza como base? 3996 0.4 8.60 Qual o motivo deste tópico? Eu tenho uma Spell que deixa o player "stunado" (não se move por 5 segundos.) Agora preciso de uma Spell que faça o player voltar a se mover. Obs.: eu tentei fazer, mas não obtive resultado. (não sabia oque estava fazendo kkkkk) Você tem o código disponível? Se tiver publique-o aqui: Esse é o código da Spell que deixa o player Stunado: function onCastSpell(cid, var) local waittime = 45 -- Tempo de exhaustion em segundos local storage = 5890 -- Storage de Spell, nunca usar a mesma em outra spell, a menos que não queira usar duas spell juntas! if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar a spell novamente.") return false end local target = getCreatureTarget(cid) local targetpos = getCreaturePosition(target) local efepos = {x=targetpos.x, y=targetpos.y, z=targetpos.z} if not isPlayer(target) then doPlayerSendCancel(cid, "Você só pode usar essa técnica em Players.") return false end local tempo = 5 -- 5 Segundos, que é o tempo que o player vai ficar paralizado doCreatureSetNoMove(target, true) addEvent(doCreatureSetNoMove, tempo*1000, target, false) doSendMagicEffect(efepos, 221) -- Efeito do mokuton prision exhaustion.set(cid, storage, waittime) return true end Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.- Spell - Big Regeneration
pelo que eu entendi, a porcentagem ali esta fazendo diminuir a cura. lastid: 32 voc: Lee total: 200| base: 200 | bonus: 1 lastid: 32 voc: Lee total: 250| base: 250 | bonus: 1 lastid: 22 voc: Sasuke total: 300| base: 200 | bonus: 1.5 lastid: 22 voc: Sasuke total: 375| base: 250 | bonus: 1.5 lastid: 12 voc: Naruto total: 200| base: 200 | bonus: 1 lastid: 12 voc: Naruto total: 250| base: 250 | bonus: 1 sasuke coloquei como suporte Lee como tank naruto como dano. e deixei 100 de bonus pra tank 50 pra suporte e 0 pra dano.- Spell - Big Regeneration
lastid: 10 voc: Naruto total: 200| base: 200 | bonus: 1 lastid: 10 voc: Naruto total: 250| base: 250 | bonus: 1 lastid: 30 voc: Chouji total: 300| base: 200 | bonus: 1.5 lastid: 30 voc: Chouji total: 375| base: 250 | bonus: 1.5 Esse ai que vc mandou printar deu diferença na cura.- Spell - Big Regeneration
nenhuma mensagem de erro, estou tentando com 1 personagem de cada classe, todos curando o mesmo.- Spell - Big Regeneration
não está tendo o aumento, todos curando o mesmo.- Spell - Big Regeneration
- Spell - Big Regeneration
.Qual servidor ou website você utiliza como base? 3996 - 0.4 - 8.60 Qual o motivo deste tópico? Preciso de uma Big Regeneration por formula (level+ML) aonde cada classe tem uma cura diferente; Exemplo: Tank vai curar 10% a mais que a classe dano - Suporte vai ficar com a cura entre tank e dano - Dano vai curar menos. Naruto - Classe Dano - Voc [1 a 10] Sasuke - Classe Dano - Voc [11 a 20] Chouji - Classe Tank - Voc [21 a 30] Hidan - Classe Tank - Voc [31 a 40] Hashirama - Classe Suporte - - Voc [41 a 50] Obito - Classe Suporte - - Voc [51 a 60] Você tem o código disponível? Se tiver publique-o aqui: Essa é a base do código, só não sei determina pra cada vocação ter uma cura diferente. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) function onGetFormulaValues(cid, level, maglevel) local min = ((level*0)+(maglevel*0)+200) local max = ((level*0)+(maglevel*0)+250) return min, max end setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") function onCastSpell(cid, var) local waittime = 1 -- Tempo de exhaustion local storage = 8205 if exhaustion.check(cid, storage) then return false end exhaustion.set(cid, storage, waittime) return doCombat(cid, combat, var) end- Verificação por Storage - Spells
Funcionou, obrigadoooo Tópico resolvido!! <<>> Pra quem ver o Tópico, esse buff e essa spell é de uma Jinchirukii (sistema de NTO). ao você virar jinchurikii de uma bijuu, voce ganha esse buff, e ao usar o buff vc pode usar as magias dessa Biju. <<>>- Verificação por Storage - Spells
Funciona, mas esta ao contrario, com buff nao pode usar e sem buff pode usar.- Verificação por Storage - Spells
não funcionou, agora nao consigo usar spell, com ou sem buff. E ainda fica espamando o nome da spell. https://prnt.sc/10vhs2q - Bug ao entrar em tiles
Informação Importante
Confirmação de Termo