-
Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
Meu Config Rates: -- Rates -- NOTE: experienceStages configuration is located in data/XML/stages.xml. -- rateExperienceFromPlayers 0 to disable. experienceStages = true rateExperience = 2.0 rateExperienceFromPlayers = 0 rateSkill = 2.0 rateMagic = 1.9 rateLoot = 1.3 rateSpawn = 1 Vocations.xml: <vocation id="3" name="Sasuke Uchiha [DANO]" description="a Sasuke Uchiha[DANO]" needpremium="0" gaincap="20" gainhp="1100" gainmana="400" gainhpticks="1" gainhpamount="150" gainmanaticks="1" gainmanaamount="250" manamultiplier="1.1" attackspeed="800" soulmax="300" gainsoulticks="60" fromvoc="3"> <formula meleeDamage="2.0" distDamage="2.0" wandDamage="2.0" magDamage="2.3" magHealingDamage="2.0" defense="2.0" magDefense="2.0" armor="2.0"/> <skill fist="2.0" club="1.8" sword="2.7" axe="3.0" distance="2.4" shielding="3.0" fishing="3.0" experience="2.0"/> </vocation>
-
AidanNarutoHellDust reagiu a uma resposta no tópico: Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
-
Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
Testei aqui e o script todo funciona, porém na hora de Upar a Skill mais rápido não funciona
-
AidanNarutoHellDust reagiu a uma resposta no tópico: Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
-
Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
Vou testar agora mesmo, agradeço a Atenção Vodkart 22:36 fist fighting Suas Rates mudaram de 20.10000038147x para 20x. Suas Rates: [ Magic Level: 4x | Fist: 20x | Club: 45x | Sword: 45x | Axe: 45x | Distance: 20x | Shielding: 40x | Fishing: 1x ] Sem erros na distro, coloquei 0.9 nas rates pra testar e não facilitou o up, testei todas as skills, mudei o ID dos itens encima e embaixo, porém sem sucesso. o script ficou assim: <?xml version="1.0" encoding="ISO-8859-1"?> <mod name="Exp Potion" version="1.0" author="Vodkart" contact="DISCORD: vodkart#6090" enabled="yes"> <config name="exppotion"><![CDATA[ Potions_Rates = { [14562] = {name = "Exp Potion", skill = SKILL__LEVEL, storages = {987681, 987682}, minutes = 2, new_rate = 0.9}, [14565] = {name = "Fist Potion", skill = SKILL_FIST, storages = {987683, 987684}, minutes = 2, new_rate = 0.9}, -- 10% [14566] = {name = "Distance Potion", skill = SKILL_DISTANCE, storages = {987685, 987686}, minutes = 2, new_rate = 0.9} -- 10% } function convertTime(a) if(type(tonumber(a)) == "number" and a > 0) then if (a <= 3599) then local minute = math.floor(a/60) local second = a - (60 * minute) if(second == 0) then return ((minute)..((minute > 1) and " minutos" or " minuto")) else return ((minute ~= 0) and ((minute>1) and minute.." minutos e " or minute.." minuto e ").. ((second>1) and second.." segundos" or second.." segundo") or ((second>1) and second.." segundos" or second.. " segundo")) end else local hour = math.floor(a/3600) local minute = math.floor((a - (hour * 3600))/60) local second = (a - (3600 * hour) - (minute * 60)) if (minute == 0 and second > 0) then return (hour..((hour > 1) and " horas e " or " hora e "))..(second..((second > 1) and " segundos" or " segundo")) elseif (second == 0 and minute > 0) then return (hour..((hour > 1) and " horas e " or " hora e "))..(minute..((minute > 1) and " minutos" or " minuto")) elseif (second == 0 and minute == 0) then return (hour..((hour > 1) and " horas" or " hora")) end return (hour..((hour > 1) and " horas, " or " hora, "))..(minute..((minute > 1) and " minutos e " or " minuto e "))..(second..((second > 1) and " segundos" or " segundo")) end end end ]]></config> <event type="login" name="ExpPotionLogin" event="script"><![CDATA[ domodlib('exppotion') function onLogin(cid) for _, ret in pairs(Potions_Rates) do if getPlayerStorageValue(cid, ret.storages[1]) - os.time() > 0 then registerCreatureEvent(cid, "ExpPotionThink") local rates = getPlayerRates(cid) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você ainda tem "..convertTime(getPlayerStorageValue(cid, ret.storages[1]) - os.time()).." de "..ret.name..".") if ret.skill == SKILL__LEVEL then doPlayerSetExperienceRate(cid, rates[SKILL__LEVEL] + ret.new_rate) else doPlayerSetRate(cid, ret.skill, rates[ret.skill] + ret.new_rate) end setPlayerStorageValue(cid, ret.storages[2], 1) -- registro end end return true end]]></event> <event type="think" name="ExpPotionThink" event="script"><![CDATA[ domodlib('exppotion') function onThink(cid, interval) for _, ret in pairs(Potions_Rates) do if getPlayerStorageValue(cid, ret.storages[2]) > 0 and getPlayerStorageValue(cid, ret.storages[1]) - os.time() <= 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Sua ".. ret.name .." acabou!") local rates = getPlayerRates(cid) if ret.skill == SKILL__LEVEL then doPlayerSetExperienceRate(cid, rates[SKILL__LEVEL]- ret.new_rate) else doPlayerSetRate(cid, ret.skill, rates[ret.skill] - ret.new_rate) end setPlayerStorageValue(cid, ret.storages[2], 0) -- registro end end return true end]]></event> <talkaction words="!scrolltime;/scrolltime;!tscroll;/tscroll" event="buffer"><![CDATA[ domodlib('exppotion') local str ="# POTIONS INFO #\n\n" for _, ret in pairs(Potions_Rates) do str = str.."["..ret.name.."] -> "..(getPlayerStorageValue(cid, ret.storages[1]) - os.time() <= 0 and "Não ativo" or "voce tem "..convertTime(getPlayerStorageValue(cid, ret.storages[1]) - os.time()).." de ".. ret.name).."\n" end return doPlayerPopupFYI(cid, str) ]]></talkaction> <action itemid="14562;14565;14566" event="script"><![CDATA[ domodlib('exppotion') function onUse(cid, item, fromPosition, itemEx, toPosition) if not Potions_Rates[item.itemid] then return true end local ret = Potions_Rates[item.itemid] if getPlayerStorageValue(cid, ret.storages[1]) - os.time() > 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você não pode usar outra "..ret.name..". Você já possui uma Ativa. E Ainda restam: "..convertTime(getPlayerStorageValue(cid, ret.storages[1]) - os.time())..".") return true end local rates = getPlayerRates(cid) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você ativou ".. ret.name .." por "..ret.minutes.." minutos! Durante este tempo, você receberá + ".. string.format("%.1f", ret.new_rate) * 100 .."% de skill Extra de Qualquer Mob. Para saber o tempo, digite: /scrolltime") setPlayerStorageValue(cid, ret.storages[1], os.time()+ret.minutes*60) setPlayerStorageValue(cid, ret.storages[2], 1) if ret.skill == SKILL__LEVEL then doPlayerSetExperienceRate(cid, rates[SKILL__LEVEL]+ret.new_rate) else doPlayerSetRate(cid, ret.skill, rates[ret.skill] + ret.new_rate) end registerCreatureEvent(cid, "ExpPotionThink") doRemoveItem(item.uid) return true end]]></action> </mod> OBS: o resto do script funciona perfeitamente:
-
AidanNarutoHellDust reagiu a uma resposta no tópico: Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
-
-
-
Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
Creio que seja 1 eu acho, é base Naruto Hero 8.6 Distro 0.4.4
-
Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
Sem sucesso.
-
Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
Erro, troquei os storages e o Nome dos Eventos, mesmo assim deu bug. só aparece a mensagem, mas não remove o Scroll também: Segue o Script: <?xml version="1.0" encoding="ISO-8859-1"?> <mod name="Taijutsu Potion" version="1.0" author="Vodkart" contact="DISCORD: vodkart#6090" enabled="yes"> <config name="fistpotion"><![CDATA[ exp_info = {rate = 0.2, storage = {354875,354876,354877}, minutes = 30} -- rate 0.2 = 20% function convertTime(a) if(type(tonumber(a)) == "number" and a > 0) then if (a <= 3599) then local minute = math.floor(a/60) local second = a - (60 * minute) if(second == 0) then return ((minute)..((minute > 1) and " minutos" or " minuto")) else return ((minute ~= 0) and ((minute>1) and minute.." minutos e " or minute.." minuto e ").. ((second>1) and second.." segundos" or second.." segundo") or ((second>1) and second.." segundos" or second.. " segundo")) end else local hour = math.floor(a/3600) local minute = math.floor((a - (hour * 3600))/60) local second = (a - (3600 * hour) - (minute * 60)) if (minute == 0 and second > 0) then return (hour..((hour > 1) and " horas e " or " hora e "))..(second..((second > 1) and " segundos" or " segundo")) elseif (second == 0 and minute > 0) then return (hour..((hour > 1) and " horas e " or " hora e "))..(minute..((minute > 1) and " minutos" or " minuto")) elseif (second == 0 and minute == 0) then return (hour..((hour > 1) and " horas" or " hora")) end return (hour..((hour > 1) and " horas, " or " hora, "))..(minute..((minute > 1) and " minutos e " or " minuto e "))..(second..((second > 1) and " segundos" or " segundo")) end end end ]]></config> <event type="login" name="Taijutsupotionlogin" event="script"><![CDATA[ domodlib('fistpotion') function onLogin(cid) if getPlayerStorageValue(cid, exp_info.storage[1]) - os.time() > 0 then registerCreatureEvent(cid, "FistPotionThink") local rates = getPlayerRates(cid) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você ainda tem "..convertTime(getPlayerStorageValue(cid, exp_info.storage[1]) - os.time()).." de Ex Scroll.") doPlayerSetExperienceRate(cid, rates[SKILL__FIST]+exp_info.rate) setPlayerStorageValue(cid, exp_info.storage[3], 1) -- registro end return true end]]></event> <event type="think" name="FistPotionThink" event="script"><![CDATA[ domodlib('fistpotion') function onThink(cid, interval) if getPlayerStorageValue(cid, exp_info.storage[3]) > 0 and getPlayerStorageValue(cid, exp_info.storage[1]) - os.time() <= 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Sua Taijutsu Scroll acabou!") -- doPlayerSetExperienceRate(cid, getPlayerStorageValue(cid, exp_info.storage[2])) local rates = getPlayerRates(cid) doPlayerSetExperienceRate(cid, rates[SKILL__FIST]-exp_info.rate) setPlayerStorageValue(cid, exp_info.storage[3], 0) -- registro end return true end]]></event> <talkaction words="!TaijutsuScroll;/TaijutsuScroll;!Tj;/TaijutsuScroll" event="buffer"><![CDATA[ domodlib('fistpotion') return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, getPlayerStorageValue(cid, exp_info.storage[1]) - os.time() <= 0 and "Você não possui Taijutsu Scroll ativa no momento." or "Você tem "..convertTime(getPlayerStorageValue(cid, exp_info.storage[1]) - os.time()).." de Xp Scroll.")]]></talkaction> <action itemid="14565" event="script"><![CDATA[ domodlib('fistpotion') function onUse(cid, item, fromPosition, itemEx, toPosition) if getPlayerStorageValue(cid, exp_info.storage[1]) - os.time() > 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você não pode usar outro Taijutsu Scroll. Você já possui uma Ativa. E Ainda restam: "..convertTime(getPlayerStorageValue(cid, exp_info.storage[1]) - os.time())..".") return true end local rates = getPlayerRates(cid) -- setPlayerStorageValue(cid, exp_info.storage[2], rates[SKILL__FIST]) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você ativou o Taijutsu Scroll por "..exp_info.minutes.." minutos! Durante este tempo, você irá Upar Taijutsu +20% Mais Rápido Para saber o tempo, digite: /TaijutsuScroll") setPlayerStorageValue(cid, exp_info.storage[1], os.time()+exp_info.minutes*60) setPlayerStorageValue(cid, exp_info.storage[3], 1) -- registro doPlayerSetExperienceRate(cid, rates[SKILL__FIST]+exp_info.rate) registerCreatureEvent(cid, "FistPotionThink") doRemoveItem(item.uid,1) return true end]]></action> </mod>
-
Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
Agradeço a atenção. Vou Alterar o Script e Testar, caso haja algum erro ou algo inalterado eu te retorno. Só uma dúvida, como eu já possuo o Exp Scroll, é só alterar a storage e o nome dos Eventos no Script, certo?
-
AidanNarutoHellDust reagiu a uma resposta no tópico: Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
-
-
AidanNarutoHellDust reagiu a uma resposta no tópico: [8.60] Sistema de Recompensa Loot De Boss Compartilhado (reward chest)
-
Poção/Item Que Aumenta Velocidade De Upar X Skill [ MODS]
Olá galera do TK Bom, como o título acima aponta, eu gostaria de uma Poção ou qualquer outro Item que eu configurar no Script faça com que eu upe um certo Skill Mais rápido, como um Boost, por exemplo: -Parabéns, você usou a Skill Potion e Agora sua magia está 5 por Cento mais fácil de upar-- -Parabéns, você usou a Skill Potion e Agora seu Fist está 5 por Cento mais fácil de upar-- -Parabéns, você usou a Skill Potion e Agora seu Distance está 5 por Cento mais fácil de upar-- ETC.. Meu Servidor é de Narutitiba [DERIVADO] - TFS 0.4.4 - 8.60 Eu tentei alterar um Script do @Vodkart e Alterar, mas sem Sucesso. OBS: O Script da Potion Exp Está funcionando perfeitamente, Eu gostaria apenas de adaptar pra Um X Skill Pode ser Todos Skills de uma vez, ou vários Scripts, cada um aumentando x Velocidade de Upar Skill ? Segue o Script da Base da Exp Potion ---> Pasta Mods Agradeço Desde Já. Você tem o código disponível? Se tiver publique-o aqui: <?xml version="1.0" encoding="ISO-8859-1"?> <mod name="Exp Potion" version="1.0" author="Vodkart" contact="DISCORD: vodkart#6090" enabled="yes"> <config name="exppotion"><![CDATA[ exp_info = {rate = 0.2, storage = {354870,354871,354872}, minutes = 30} -- rate 0.2 = 20% function convertTime(a) if(type(tonumber(a)) == "number" and a > 0) then if (a <= 3599) then local minute = math.floor(a/60) local second = a - (60 * minute) if(second == 0) then return ((minute)..((minute > 1) and " minutos" or " minuto")) else return ((minute ~= 0) and ((minute>1) and minute.." minutos e " or minute.." minuto e ").. ((second>1) and second.." segundos" or second.." segundo") or ((second>1) and second.." segundos" or second.. " segundo")) end else local hour = math.floor(a/3600) local minute = math.floor((a - (hour * 3600))/60) local second = (a - (3600 * hour) - (minute * 60)) if (minute == 0 and second > 0) then return (hour..((hour > 1) and " horas e " or " hora e "))..(second..((second > 1) and " segundos" or " segundo")) elseif (second == 0 and minute > 0) then return (hour..((hour > 1) and " horas e " or " hora e "))..(minute..((minute > 1) and " minutos" or " minuto")) elseif (second == 0 and minute == 0) then return (hour..((hour > 1) and " horas" or " hora")) end return (hour..((hour > 1) and " horas, " or " hora, "))..(minute..((minute > 1) and " minutos e " or " minuto e "))..(second..((second > 1) and " segundos" or " segundo")) end end end ]]></config> <event type="login" name="ExpPotionLogin" event="script"><![CDATA[ domodlib('exppotion') function onLogin(cid) if getPlayerStorageValue(cid, exp_info.storage[1]) - os.time() > 0 then registerCreatureEvent(cid, "ExpPotionThink") local rates = getPlayerRates(cid) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você ainda tem "..convertTime(getPlayerStorageValue(cid, exp_info.storage[1]) - os.time()).." de Ex Scroll.") doPlayerSetExperienceRate(cid, rates[SKILL__LEVEL]+exp_info.rate) setPlayerStorageValue(cid, exp_info.storage[3], 1) -- registro end return true end]]></event> <event type="think" name="ExpPotionThink" event="script"><![CDATA[ domodlib('exppotion') function onThink(cid, interval) if getPlayerStorageValue(cid, exp_info.storage[3]) > 0 and getPlayerStorageValue(cid, exp_info.storage[1]) - os.time() <= 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Sua Exp Scroll acabou!") -- doPlayerSetExperienceRate(cid, getPlayerStorageValue(cid, exp_info.storage[2])) local rates = getPlayerRates(cid) doPlayerSetExperienceRate(cid, rates[SKILL__LEVEL]-exp_info.rate) setPlayerStorageValue(cid, exp_info.storage[3], 0) -- registro end return true end]]></event> <talkaction words="!XpScroll;/ExpScroll;!xp;/XpScroll" event="buffer"><![CDATA[ domodlib('exppotion') return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, getPlayerStorageValue(cid, exp_info.storage[1]) - os.time() <= 0 and "Você não possui Exp Scroll ativa no momento." or "Você tem "..convertTime(getPlayerStorageValue(cid, exp_info.storage[1]) - os.time()).." de Xp Scroll.")]]></talkaction> <action itemid="14562" event="script"><![CDATA[ domodlib('exppotion') function onUse(cid, item, fromPosition, itemEx, toPosition) if getPlayerStorageValue(cid, exp_info.storage[1]) - os.time() > 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você não pode usar outra Exp Scroll. Você já possui uma Ativa. E Ainda restam: "..convertTime(getPlayerStorageValue(cid, exp_info.storage[1]) - os.time())..".") return true end local rates = getPlayerRates(cid) -- setPlayerStorageValue(cid, exp_info.storage[2], rates[SKILL__LEVEL]) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você ativou Exp Scroll por "..exp_info.minutes.." minutos! Durante este tempo, você receberá +20% Xp Extra de Qualquer Mob. Para saber o tempo, digite: /xpScroll") setPlayerStorageValue(cid, exp_info.storage[1], os.time()+exp_info.minutes*60) setPlayerStorageValue(cid, exp_info.storage[3], 1) -- registro doPlayerSetExperienceRate(cid, rates[SKILL__LEVEL]+exp_info.rate) registerCreatureEvent(cid, "ExpPotionThink") doRemoveItem(item.uid,1) return true end]]></action> </mod>
-
Preciso De Programador
.Qual servidor ou website você utiliza como base? TFS 8.60 Qual o motivo deste tópico? Tenho um Projeto em Andamento, pretendo Deixa-lo Online até o Fim do Ano. Naruto Hell Dust Já possuo VPS, mas preciso de um Programador pra Hookar Dll, Editar a Tfs 8.60 e Ajudar com Script. Estou Disposto a Negociar, Cargo no Game, Donate ou $$$. WathsApp: 15981064506 Discord: Aidan_ConorHill#6060