Postado Fevereiro 20, 2019 6 anos @xxgrylloxx Se é só isso que você quer alterar, basta usar essa formula: function onGetFormulaValues(cid, level, skill, attack, factor) min = -(level * 0.6 + skill * 1) * 1.4 max = -(level * 0.7 + skill * 1.2) * 1.6 return min, max end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE,"onGetFormulaValues") Essa é pra Kina ou pra magia de Pally que seja ataque físico, já que essa formula leva em consideração o level e a skill do personagem. Você também pode acrescentar o ataque da arma na fórmula, ficando assim: min = -(level * 0.6 + skill * 1 + attack * 1) * 1.4, por exemplo. Ou pra Mages, magias que usam o ML,: function onGetFormulaValues(cid, level, maglevel) min = -(level * 1.2 + maglevel * 1.5) * 1.2 max = -(level * 1.5 + maglevel * 2) * 1.6 return min, max end setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") E claro que você pode alterar os valores ao seu gosto. E desse jeito da pra você saber o dano sem nem precisar ir testar em game, só usar uma calculadora pra fazer a multiplicação, que nem eu fazia quando mexia no meu Global. Só de exemplo, essa formula que usa level e ml, é a que uso na magia Exevo mas san. Considerando um Pally de level 250 ml 25, vai tirar no mínimo 405 e no máximo 680.
Postado Fevereiro 20, 2019 6 anos Autor 19 minutos atrás, gabriel28 disse: @xxgrylloxx Se é só isso que você quer alterar, basta usar essa formula: function onGetFormulaValues(cid, level, skill, attack, factor) min = -(level * 0.6 + skill * 1) * 1.4 max = -(level * 0.7 + skill * 1.2) * 1.6 return min, max end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE,"onGetFormulaValues") Essa é pra Kina ou pra magia de Pally que seja ataque físico, já que essa formula leva em consideração o level e a skill do personagem. Você também pode acrescentar o ataque da arma na fórmula, ficando assim: min = -(level * 0.6 + skill * 1 + attack * 1) * 1.4, por exemplo. Ou pra Mages, magias que usam o ML,: function onGetFormulaValues(cid, level, maglevel) min = -(level * 1.2 + maglevel * 1.5) * 1.2 max = -(level * 1.5 + maglevel * 2) * 1.6 return min, max end setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") E claro que você pode alterar os valores ao seu gosto. E desse jeito da pra você saber o dano sem nem precisar ir testar em game, só usar uma calculadora pra fazer a multiplicação, que nem eu fazia quando mexia no meu Global. Só de exemplo, essa formula que usa level e ml, é a que uso na magia Exevo mas san. Considerando um Pally de level 250 ml 25, vai tirar no mínimo 405 e no máximo 680. Exatamente, muito bom... Mais isso você esta falando é dentro de qual arquivo? Ou é algum arquivo da source? Qual? Obrigado por responder!
Postado Fevereiro 20, 2019 6 anos @xxgrylloxx É noos arquivos das spells. De cada spell que você quer que use essa formula, você terá que acrescentá-la dentro do .lua da spell. Exemplo de como fica na spell (Exevo mas san): Spoiler local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HOLYAREA) function onGetFormulaValues(cid, level, maglevel) min = -(level * 1.2 + maglevel * 1.5) * 1.2 max = -(level * 1.5 + maglevel * 2) * 1.6 return min, max end setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") local area = createCombatArea(AREA_CIRCLE3X3) setCombatArea(combat, area) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Essa fórmula (setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1.25, -30, -1.7, 0) ) que vem nas spells, você pode simplesmente apagar ou deixar em forma de comentário.
Postado Fevereiro 20, 2019 6 anos Autor 18 minutos atrás, gabriel28 disse: @xxgrylloxx É noos arquivos das spells. De cada spell que você quer que use essa formula, você terá que acrescentá-la dentro do .lua da spell. Exemplo de como fica na spell (Exevo mas san): Ocultar conteúdo local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HOLYAREA) function onGetFormulaValues(cid, level, maglevel) min = -(level * 1.2 + maglevel * 1.5) * 1.2 max = -(level * 1.5 + maglevel * 2) * 1.6 return min, max end setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") local area = createCombatArea(AREA_CIRCLE3X3) setCombatArea(combat, area) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Essa fórmula (setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1.25, -30, -1.7, 0) ) que vem nas spells, você pode simplesmente apagar ou deixar em forma de comentário. Sim entendi... Se eu quiser colocar uma arma por exemplo pra usar esse tipo de formula... Kina e Pally... Kina usando uma arma de 45 de atak. por exemplo... Skill de 100 Lv 95 Vou ter que criar um arquivo .lua la dentro de weapons... tipo como é feito com a burst_arrow.lua, poison_arrow.lua, viper_star.lua.... To tendo essa ideia, sera que vai da certo? Se possível, tem alguma indicação de um TFS estável com função de enchantar itens, tipo colocar +1 +2 +3 +4 +5 nas armas...
Postado Fevereiro 20, 2019 6 anos @xxgrylloxx A burst arrow só tem um arquivo em weapons porque ela usa efeito em área, dai tem que fazer um arquivo lá. Mas pra uma magia que você queira pegar o valor do ataque da arma também, é só fazer como eu disse ali em cima quando mostrei as fórmulas. Criar um arquivo em weapons, só se você quiser que essa arma de Kina tenha um efeito quando atacar um player. Eu gosto muito do TFS 0.4, o Global que mexo de vez em quando é nessa versão e tem script de enchant. Mas hoje em dia, a maioria dos Globais, se não todos, são na versão 1.0 pra cima, devido a maior possibilidade de scripts entre outras coisas. Por isso deixei o meu de lado, por já ter mexido muito, nas source inclusive, mas estar numa versão bem antiga e não atualizo ele por não manjar de scripts nessas novas versões do TFS e ter que adaptar os códigos da source, que modifiquei, pra nova versão. Por isso acabei indo pros derivados onde a 0.4 está de bom tamanho. Se você tiver começando um projeto agora, recomendo ir pra um TFS 1.0 pra cima.
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.