
Tudo que xWhiteWolf postou
- (Resolvido)Attack msm q no bixo
-
Anti "Up"
/attr set level "valor" não sei se vai dar certo mas é esse o comando q eu conheço
- [dúvida sobre script] itens vip
- Sistema de Reset para outra vocation
- [dúvida sobre script] itens vip
-
teria como dar use em um item e ficar saindo efeito por 30 minutos?
http://www.tibiaking.com/forum/topic/33736-addevent-send-magic-effect-algu%C3%A9m-sabe/
- [dúvida sobre script] itens vip
-
[Creaturescript] Icones no minimap com descrição
é incrível a imensidão de coisas que dá pra fazer com creaturescripts, cada dia me surpreendo mais. Reputado
-
Sistema de Reset 100%
coloca o npc no sever e dps vai no remeres > File > Import > Import Monsters/NPC.. daí vc vai até o seu server e procura o arquivo xml do npc que vc criou. As vezes demora pra ele aparecer na aba Creature Palette> NPCs mas eventualmente ele vai aparecer... se for o caso dá um atualizar ou refaz o processo.
- Sistema de Reset para outra vocation
-
(Resolvido)Remover o Critical
config.lua.. procura algo parecido com isso: criticalHitChance = 10 criticalHitMultiplier = 1.1 displayCriticalHitNotify = true o primeiro é a chance de dar ataque critico, o segundo é o quanto o ataque critico vai ser melhor que o ataque normal e o terceiro é pra sair a animaçãozinha do "CRITICAL!!" em cima do player qnd ele der critical
- Dodge System 8.54+
-
Tanker Method
perder toda a mana e aumentar só a quantidade máxima de HP não torna ninguém imorrível. Morrer ou não morrer não tem a ver com o hp máximo e sim com duas coisas: Matar antes de morrer ou ser capaz de curar mais vida doque perde. Leve esse pensamento pra vida toda uahuauha
-
(Resolvido)[AJUDA] Receber todos os addons por Clique
só uma pequena correção: doPlayerSendCancel(cid, "You don't have level enought.") troca por doPlayerSendCancel(cid, "You don't have enough level.")
-
(Resolvido)[AJUDA] Receber todos os addons por Clique
só utilizar: doPlayerAddAddons(cid, 2) doPlayerAddAddons(cid, 1)
-
(Resolvido)Script ADD extra attack a cada skill ganhado;
vdd né auhauhauh esquece então cara, essa função doPlayerSetAttackSpeed é função das sources.. precisa manjar bem e, o mais dificil, ter as sources pra compilar.
-
(Resolvido)Script ADD extra attack a cada skill ganhado;
creaturescripts.. tem que adicionar a linha no creaturescripts.xml e colocar pra registrar o evento no creaturescripts\scripts\login.lua e lembre que o tipo do script é onAdvance
-
Dodge System 8.54+
no script aí não tem restrição nenhuma, se vc quiser restringir mude aqui na action: --- Dodge System by Night Wolf local config = { effectonuse = 14, -- efeito que sai levelsdodge = 100, --- leveis que terão storagedodge = 48902 -- storage que será verificado } local notallowed = {1,2,5,6} function onUse(cid, item, frompos, item2, topos) if not isInArray(notallowed, getPlayerVocation(cid)) then if getPlayerStorageValue(cid, config.storagedodge) < config.levelsdodge then doRemoveItem(item.uid, 1) doSendMagicEffect(topos,config.effectonuse) doPlayerSendTextMessage(cid,22,"You've Leveled your Dodge Skill to ["..(getPlayerStorageValue(cid, config.storagedodge)+1).."/100].") setPlayerStorageValue(cid, config.storagedodge, getPlayerStorageValue(cid, config.storagedodge)+1) elseif getPlayerStorageValue(cid, config.storagedodge) >= config.levelsdodge then doPlayerSendTextMessage(cid,22,"You've already reached the MAX level of Dodge Skill.\nCongratulations!!!!") return 0 end else doPlayerSendTextMessage(cid,22,"You can't learn this skill because you're "..getPlayerVocationName(cid)..".") return 0 end return 1 end aqui são as classes que não poderão utilizar o skill book (mas ainda assim elas poderão comprar: local notallowed = {1,2,5,6} Vocation com os id's 1,2,5,6, lembrando q vc pode alterar a vontade e no math.random do creaturescript troque isso >= math.random (0,1000) por isso >= math.random (1,1000)
-
(Resolvido)Script de Passiva para Players
cara, eu consegui aqui fazer dar um exori a cada % após tomar danos maiores que um valor determinado.. mas isso taria mais pra um counter attack doque pruma passiva.. me fala quais tipos de passiva vc quer que eu faço pra ti, porque cada uma vai ser muito diferente da outra. assim foi como ficou pra dar exori: -------------- area da magia --- local area = createCombatArea{ {1, 1, 1}, {1, 3, 1}, {1, 1, 1} } ------- local config = { percent = 20, -- porcentagem de sair a magia (50 = 50% de chance) valorvida = 100 --quanto deve ser o valor minimo de vida a perder para executar o script } function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS and value >= config.valorvida then if math.random (1,100) <= config.percent then local pos = getCreaturePosition(cid) local level, magic = getPlayerLevel(cid), getPlayerMagLevel(cid) local min, max = -(magic * 1.5 + level), -(magic * 2.5 + level) doAreaCombatHealth(cid, COMBAT_PHYSICALDAMAGE, pos, area, min, max, CONST_ME_HITAREA) end end return true end
-
(Resolvido)Magia de Buff para :Life, Skill, e mana
utevosio: --Spell Method by Night Wolf local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE) setCombatParam(combat, COMBAT_PARAM_EFFECT, 39) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local config = { tempo = 15, --- tempo que vai ficar recuperando mana (tempo total) mana = 15, -- quanto de mana ganha a cada intervalo intervalo = 1 --- intervalo que leva pra recuperar X de mana, } local condition = createConditionObject(CONDITION_FOOD) setConditionParam(condition, CONDITION_PARAM_TICKS, config.tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, true) setConditionParam(condition, CONDITION_PARAM_MANAGAIN, config.mana) setConditionParam(condition, CONDITION_PARAM_MANATICKS, config.intervalo*1000) setCombatCondition(combat, condition) function onCastSpell(cid, var) return doCombat(cid, combat, var) end exorisio --Spell Method by Night Wolf local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE) setCombatParam(combat, COMBAT_PARAM_EFFECT, 39) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local config = { tempo = 60, --- tempo que vai durar a spell percent = 20 -- quanto % vai aumentar } local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, config.tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, true) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUBPERCENT, 100+config.percent) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORDPERCENT, 100+config.percent) setConditionParam(condition, CONDITION_PARAM_SKILL_AXEPERCENT, 100+config.percent) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCEPERCENT, 100+config.percent) setCombatCondition(combat, condition) function onCastSpell(cid, var) return doCombat(cid, combat, var) end utamogransio --Spell Method by Night Wolf local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE) setCombatParam(combat, COMBAT_PARAM_EFFECT, 39) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local config = { tempo = 60, --- tempo que vai durar a spell percent = 25 -- quanto % vai aumentar } local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, config.tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, true) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELDPERCENT, 100+config.percent) setCombatCondition(combat, condition) function onCastSpell(cid, var) return doCombat(cid, combat, var) end vitagransio --Spell Method by Night Wolf local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE) setCombatParam(combat, COMBAT_PARAM_EFFECT, 39) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local config = { tempo = 60, --- tempo que vai durar a spell percent = 25 -- quanto % vai aumentar } local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, config.tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, true) setConditionParam(condition, CONDITION_PARAM_STAT_MAXHITPOINTSPERCENT, 100+config.percent) setCombatCondition(combat, condition) function onCastSpell(cid, var) return doCombat(cid, combat, var) end e no spells.xml <instant name="Buff Mana" words="utevo sio" lvl="40" mana="100" maglv="90" prem="1" aggressive="0" needtarget="1" params="1" exhaustion="1500" needlearn="0" event="script" value="especiais/utevosio.lua"> </instant> <instant name="Buff Skills" words="exori sio" lvl="40" mana="100" maglv="90" prem="1" aggressive="0" needtarget="1" params="1" exhaustion="1500" needlearn="0" event="script" value="especiais/exorisio.lua"> </instant> <instant name="Buff Shield" words="utamo gran sio" lvl="40" mana="100" maglv="120" prem="1" aggressive="0" needtarget="1" params="1" exhaustion="1500" needlearn="0" event="script" value="especiais/utamogransio.lua"> </instant> <instant name="Buff Hit Points" words="vita gran sio" lvl="40" mana="100" maglv="120" prem="1" aggressive="0" needtarget="1" params="1" exhaustion="1500" needlearn="0" event="script" value="especiais/vitagransio.lua"> com base nisso vc cria as outras.. espero ter ajudado.
- (Resolvido)Magia de Buff para :Life, Skill, e mana
- (Resolvido)Script de Passiva para Players
- (Resolvido)Script de Passiva para Players
-
(Resolvido)Script de Passiva para Players
foi mal, tinha esquecido que as areas tão na lib de spells: -------------- Magia a ser utilizada --- sem o function onCastSpell --- local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA) setCombatParam(combat, COMBAT_PARAM_USECHARGES, true) local areaspell = { {1, 1, 1}, {1, 3, 1}, {1, 1, 1} } local area = createCombatArea(areaspell) setCombatArea(combat, area) function onGetFormulaValues(cid, level, skill, attack, factor) local skillTotal, levelTotal = skill + attack, level / 5 return -(skillTotal * 1.5 + levelTotal), -(skillTotal * 2.5 + levelTotal) end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues") ------- local config = { percent = 5, -- porcentagem de sair a magia valorvida = 100 --quanto deve ser o valor minimo de vida a perder para executar o script } function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS and value >= config.valorvida then if math.random (1,config.percent) == 1 then doCombat(cid, combat, var) end end return true end isso deve funcionar, se não funcionar daí eu teria que fazer mais testes
-
(Resolvido)Script de Passiva para Players
seria algo + OU - assim: -------------- Magia a ser utilizada --- sem o function onCastSpell --- local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA) setCombatParam(combat, COMBAT_PARAM_USECHARGES, true) local area = createCombatArea(AREA_SQUARE1X1) setCombatArea(combat, area) function onGetFormulaValues(cid, level, skill, attack, factor) local skillTotal, levelTotal = skill + attack, level / 5 return -(skillTotal * 1.5 + levelTotal), -(skillTotal * 2.5 + levelTotal) end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues") ------- local config = { percent = 5, -- porcentagem de sair a magia valorvida = 100 --quanto deve ser o valor minimo de vida a perder para executar o script } function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS and value >= config.valorvida then if math.random (1,config.percent) == 1 then doCombat(cid, combat, var) end return true end return true end Só tem que ver se isso daqui funciona: Lembra de adicionar a tag no creaturescripts.xml e de registrar o evento no login.lua ps: peço desculpa pelo double post mas ia ficar mt ruim fazer tudo num post só