Ir para conteúdo

xWhiteWolf

Héroi
  • Registro em

  • Última visita

Tudo que xWhiteWolf postou

  1. especifique mais gafanhoto, attack melee mesmo, distance, wand ou spells? Ou Todos??
  2. xWhiteWolf postou uma resposta no tópico em Suporte Tibia OTServer
    /attr set level "valor" não sei se vai dar certo mas é esse o comando q eu conheço
  3. eu nunca mexi com Otb Editor, se não eu te ajudava :/ eu só sei que ele existe e oque ele é capaz de fazer
  4. eu te fiz 4 perguntas e você respondeu "sim"... WTF??? sim oque????
  5. http://www.tibiaking.com/forum/topic/11142-criar-um-item-com-id-propria-usando-o-item-editor/ http://www.tibiaking.com/forum/topic/11142-criar-um-item-com-id-propria-usando-o-item-editor/ http://www.tibiaking.com/forum/topic/20068-item-editor/
  6. http://www.tibiaking.com/forum/topic/33736-addevent-send-magic-effect-algu%C3%A9m-sabe/
  7. se for só pelo item editor não é necessário modificar spr e nem dat, então o cliente permanece o mesmo e você vai ter dois itens iguais só que com ID's diferentes, um poderá ser o item VIP e o outro um item normal.
  8. é incrível a imensidão de coisas que dá pra fazer com creaturescripts, cada dia me surpreendo mais. Reputado
  9. 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.
  10. seu server usa account manager, site, oraculo ou oque? Os player iniciais tem como ser vocation 0?
  11. 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
  12. eu ia falar isso agora, o erro é na linha um uhauhauh só podia ser nos créditos mesmo
  13. xWhiteWolf postou uma resposta no tópico em Scripts tfs 0.4 (OLD)
    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
  14. só uma pequena correção: doPlayerSendCancel(cid, "You don't have level enought.") troca por doPlayerSendCancel(cid, "You don't have enough level.")
  15. só utilizar: doPlayerAddAddons(cid, 2) doPlayerAddAddons(cid, 1)
  16. 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.
  17. 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
  18. 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)
  19. 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
  20. 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.
  21. vou testar no meu server, não sei se essa é a forma certa de fazer oque vc quer..
  22. vc registrou o evento no login.lua? colocou no creaturescripts.xml? O script funciona assim, se vc tomar 100 de dano ele tem 20% de chance de ativar um exori..
  23. 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
  24. 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ó

Informação Importante

Confirmação de Termo