Ir para conteúdo

Posts Recomendados

Alguem pode me explicar aqueles 4 numeros da spell de atack ??

Exemplo: Esse eh o minimo damage, esse eh o maximo, esse divide, esse multiplica esse faz isso esse faz akilo...

 

Exemplo isso: setCombatFormula(combat, COMBAT_FORMULA_SKILL, 1.0, 0, 1.4, 0)

 

expliquem:

Pra que serve o 1.0

pra que serve o 0

pra que serve o 1.4

pra que serve o 0

to pedindo demais eu sei, mas soh quero aprender

 

To perguntando isso porque quero arumar umas magias do meu ot..

exori gran e tals

pq as vezes ele tira 1000, e as vezes tira 20~30 -.-

 

Quero dexa ele perfeito

Editado por gnomow157
Link para o comentário
https://xtibia.com/forum/topic/106174-d%C3%BAvida-sobre-spells/
Compartilhar em outros sites

função: setCombatFormula(CombatObject, FormulaType, minA, minB, maxA, maxB)

CombatObject = objeto criado através da função createCombatObject(). Deve ser armazenado em uma variável

 

FormulaType =

0 - indefinido

1 - magic level

2 - skill

3 - dano direto

 

minA = mínimo multiplicativo pelo tipo da fórmula

minB = mínimo de dano estático

maxA = máximo multiplicativo pelo tipo da fórmula

maxB = máximo de dano estático

 

fim de teoria, vamos à prática:

 

caso1 - spell mágica, dependente de ml, player de ML 50

setCombatFormula(combat, 1, 1,0,2,600)

 

fator multiplicativo => mínimo 50, máximo 100

 

dano extra da spell => de 0 a 600

 

um player de lvl 20 ml 50 tiraria - com sorte - 700 de damage da vítima

 

caso2 - spell física, dependente de skill, player de skill 50, arma de ataque 30

setCombatFormula(Combat, 2,1,0,2,0)

 

Suponhamos que com essas skills vc esteja hitando 60~70 do seu alvo

fator multiplicativo => mínimo 60, máximo 140

 

a spell não possui dano extra

 

caso3 - spell de dano independente

setCombatFormula(Combat, 3, 0,100,0,300)

 

esta spell tiraria sempre de 100 a 300 sem levar em conta ml ou skill de quem a utiliza

 

 

resumo: seria como vc fazer

dano = math.random(minA, maxA) + math.random(minB, maxB)

 

 

----------------------------------------------------------

 

edit... pesquisando um pouquinho mais... descobri aqui mesmo no xtibia, um link q o ta4e passou das sources, onde se calculam os dados dos damages

 

case FORMULA_LEVELMAGIC:

{

min = (int32_t)((player->getLevel() * 2 + player->getMagicLevel() * 3) * 1. * mina + minb);

max = (int32_t)((player->getLevel() * 2 + player->getMagicLevel() * 3) * 1. * maxa + maxb);

return true;

 

explicando min = (([LEVEL * 2] + [ML * 3]) * 1 * minA) + minB

max = (([LEVEL * 2] + [ML * 3]) * 1 * maxA) + minB

 

caso 1 - mínimo = (([20 * 2] + [50 * 3]) * 1) + 0 = 190

máximo = (([20*2] + [50 * 3]) * 2) + 600 = 980

 

variação da spell(level20, ml50) = 190 ~ 980

 

min = (int32_t)minb;

max = (int32_t)(weapon->getWeaponDamage(player, target, tool, true) * maxa + maxb);

 

explicando min = minB (note que, para formula_skill, o valor de minA é descartado)

max = dano da arma * maxA + maxB

 

caso 2 - mínimo = 1

máximo = 60 * 2 + 0 = 120

 

variação da spell(arma dando 60 de damage) = 1 ~ 120

 

 

PS.: DEIXEI A ÁREA ERRADA MESMO APÓS O EDIT PARA FICAR COMO APRENDIZADO xD

Editado por brainless
Link para o comentário
https://xtibia.com/forum/topic/106174-d%C3%BAvida-sobre-spells/#findComment-685586
Compartilhar em outros sites

função: setCombatFormula(CombatObject, FormulaType, minA, minB, maxA, maxB)

CombatObject = objeto criado através da função createCombatObject(). Deve ser armazenado em uma variável

 

FormulaType =

0 - indefinido

1 - magic level

2 - skill

3 - dano direto

 

minA = mínimo multiplicativo pelo tipo da fórmula

minB = mínimo de dano estático

maxA = máximo multiplicativo pelo tipo da fórmula

maxB = máximo de dano estático

 

fim de teoria, vamos à prática:

 

caso1 - spell mágica, dependente de ml, player de ML 50

setCombatFormula(combat, 1, 1,0,2,600)

 

fator multiplicativo => mínimo 50, máximo 100

 

dano extra da spell => de 0 a 600

 

um player de lvl 20 ml 50 tiraria - com sorte - 700 de damage da vítima

 

caso2 - spell física, dependente de skill, player de skill 50, arma de ataque 30

setCombatFormula(Combat, 2,1,0,2,0)

 

Suponhamos que com essas skills vc esteja hitando 60~70 do seu alvo

fator multiplicativo => mínimo 60, máximo 140

 

a spell não possui dano extra

 

caso3 - spell de dano independente

setCombatFormula(Combat, 3, 0,100,0,300)

 

esta spell tiraria sempre de 100 a 300 sem levar em conta ml ou skill de quem a utiliza

 

 

resumo: seria como vc fazer

dano = math.random(minA, maxA) + math.random(minB, maxB)

 

 

----------------------------------------------------------

 

edit... pesquisando um pouquinho mais... descobri aqui mesmo no xtibia, um link q o ta4e passou das sources, onde se calculam os dados dos damages

 

 

 

explicando min = (([LEVEL * 2] + [ML * 3]) * 1 * minA) + minB

max = (([LEVEL * 2] + [ML * 3]) * 1 * maxA) + minB

 

caso 1 - mínimo = (([20 * 2] + [50 * 3]) * 1) + 0 = 190

máximo = (([20*2] + [50 * 3]) * 2) + 600 = 980

 

variação da spell(level20, ml50) = 190 ~ 980

 

 

 

explicando min = minB (note que, para formula_skill, o valor de minA é descartado)

max = dano da arma * maxA + maxB

 

caso 2 - mínimo = 1

máximo = 60 * 2 + 0 = 120

 

variação da spell(arma dando 60 de damage) = 1 ~ 120

 

 

PS.: DEIXEI A ÁREA ERRADA MESMO APÓS O EDIT PARA FICAR COMO APRENDIZADO xD

 

 

 

Tipo. entendi +-... ou seja o 1.0 é descartado certo??

 

entaum pro meu EXORI GRAN não falhar eu devo colocar... assim?

 

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 2.0, 400)

Editado por gnomow157
Link para o comentário
https://xtibia.com/forum/topic/106174-d%C3%BAvida-sobre-spells/#findComment-685758
Compartilhar em outros sites

Tipo. entendi +-... ou seja o 1.0 é descartado certo??

entaum pro meu EXORI GRAN não falhar eu devo colocar... assim?

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 2.0, 400)



mina <- descartado / minB / maxA / maxB


nesse caso, ele falharia às vezes e se vc disse q está dando 1200, às vezes ele daria 1600

pra ele não falhar nunca, vc colocaria assim:

0,1,1.4,1

0 <- descartado / dano mínimo = 1 / dano máximo = 140% do dano da arma + 1

pra estar tirando 1200 cada hit da arma deve estar tirando ~850... tente dar uma revisada nas skills do char q vc está utilizando para teste
Link para o comentário
https://xtibia.com/forum/topic/106174-d%C3%BAvida-sobre-spells/#findComment-685791
Compartilhar em outros sites

Tipo, eu quero que um knight com skills 100 e uma arma atack 60 hite de player no minimo 300 e no maximo 450.. SEM FALHAR

 

e conforme ter mais skills e arma atack melhor hitar um pouco mais

sabe como pode fica ? x.x

Editado por gnomow157
Link para o comentário
https://xtibia.com/forum/topic/106174-d%C3%BAvida-sobre-spells/#findComment-685889
Compartilhar em outros sites

Tipo, eu quero que um knight com skills 100 e uma arma atack 60 hite de player no minimo 300 e no maximo 450.. SEM FALHAR

 

e conforme ter mais skills e arma atack melhor hitar um pouco mais

sabe como pode fica ? x.x

 

 

até sei... mas quem judia é esse seu 'no máximo, 450'

 

o q eu posso fazer por vc é assim ó

 

0,300,0.1,400

 

desse jeito, o dano base varia entre 300 a 400 + 10% do dano comum

 

ex, vc tá hitando 50 de um monstro... usa a spell ela vai tirar 300~400 + 5

entendeu?

Link para o comentário
https://xtibia.com/forum/topic/106174-d%C3%BAvida-sobre-spells/#findComment-686228
Compartilhar em outros sites

até sei... mas quem judia é esse seu 'no máximo, 450'

 

o q eu posso fazer por vc é assim ó

 

0,300,0.1,400

 

desse jeito, o dano base varia entre 300 a 400 + 10% do dano comum

 

ex, vc tá hitando 50 de um monstro... usa a spell ela vai tirar 300~400 + 5

entendeu?

 

 

~~~~

Não precisa ser isso no maximo, mas mais ou menos isso entendeu?? que tire entre uns 300~400 de PLAYER

pode tirar digamos as vezes uns 500 x.x

Link para o comentário
https://xtibia.com/forum/topic/106174-d%C3%BAvida-sobre-spells/#findComment-686254
Compartilhar em outros sites

~~~~

Não precisa ser isso no maximo, mas mais ou menos isso entendeu?? que tire entre uns 300~400 de PLAYER

pode tirar digamos as vezes uns 500 x.x

 

bom, a área de variação acho que está certa de 300 a 400

 

agora quem faz os testes é você no fator multiplicativo

leve em consideração que vc está multiplicando pelo dano de um ataque normal

 

0.1 = 10%

0.25 = 1/4 do valor

0.5 = 1/2 do valor

0.8 = 80% do valor

 

se o Knight estiver batendo 30 em um monstro ele tiraria

+3

+8

+15

+24

Link para o comentário
https://xtibia.com/forum/topic/106174-d%C3%BAvida-sobre-spells/#findComment-686260
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...