PDA

View Full Version : Combat & stat calculations (warning, mathematics involved)



Zeltar
11-13-2007, 04:45 AM
My apologies for people that don’t like maths. If so you can ship this thread.

I’m interested in looking at the maths behind SoS, gaining an understanding of the functions related to combat calculations, and then calculating and justifying a optimum build strat for each situation (the optimum will be quite different at lower levels compared to higher levels, also skills like fist up, accuracy, doping change the balance).

How is damage calculated for each hit?

My guess is it is something Like:

Base_dammage=(weapon+Agi/2+2*Pow/3)

Chance_of_critical=0.166*AGI+?*MEN

Critical_hit_dammage=?*Base_dammmage (what is the factor for critical hit?)

Then the damage of a blow has a random factor, and is also affected by the defenders defence:
Damage_inflicted on successful_hit=max(Random*base_damage-Defenders armour,1)

And you sometimes miss so
Damage_on_average= Damage_inflicted on successful_hit*(1-Defender_dodge_chance-critical_hit_chance)+Critical_hit_dammage*chance_o f_critical_hit/100.

Then
Attack time=bast_attack_time-doping-2/150*AGI (seconds)

Dammage_per_second= Damage_on_average/attack time.

Dodge=AGI/300 (I heard that the ratios change when stats go up, so it is not linear for all stats)
Dammage_recieved_second=(Mob_attack_time*mob_damma ge-your_armour)*(1-dodge)

Now all this is a function of POW, AGI, and MEN. With a few constants thrown in (weapon, defender armour, doping effect)

You also have the equation Stats_available=POW+AGI+MEN

This can be substituted into all the equations. This leaves 2 variables, where you want to maximize damage/second.

So you want to maximize damage_dealt/secong/damage_recieved_second

if you want to make a hybrid between two stats then you can bring this all down to a equaction of one variable, eg by substituting in POW= Stats_available –AGI.
Then differentiating with respect to AGI, to find the stationary point. This will be your maximum.

Naturally the position of the maximum or optimum point will depend on constants such as weapons, armour, doping effect, accuracy effect, monster stats(you can average).

Once I have all the data I plan to put it all into a excel spreadsheet, enabling the instant calculation of the optimum build for each situation(different skills, equipment, type of monsters)
I believe then you can mathematically calculate the optimum stat distribution.

Snakeshit
04-16-2008, 01:09 PM
My apologies for people that don’t like maths. If so you can ship this thread.

I’m interested in looking at the maths behind SoS, gaining an understanding of the functions related to combat calculations, and then calculating and justifying a optimum build strat for each situation (the optimum will be quite different at lower levels compared to higher levels, also skills like fist up, accuracy, doping change the balance).

How is damage calculated for each hit?

My guess is it is something Like:

Base_dammage=(weapon+Agi/2+2*Pow/3)

Chance_of_critical=0.166*AGI+?*MEN

Critical_hit_dammage=?*Base_dammmage (what is the factor for critical hit?)

Then the damage of a blow has a random factor, and is also affected by the defenders defence:
Damage_inflicted on successful_hit=max(Random*base_damage-Defenders armour,1)

And you sometimes miss so
Damage_on_average= Damage_inflicted on successful_hit*(1-Defender_dodge_chance-critical_hit_chance)+Critical_hit_dammage*chance_o f_critical_hit/100.

Then
Attack time=bast_attack_time-doping-2/150*AGI (seconds)

Dammage_per_second= Damage_on_average/attack time.

Dodge=AGI/300 (I heard that the ratios change when stats go up, so it is not linear for all stats)
Dammage_recieved_second=(Mob_attack_time*mob_damma ge-your_armour)*(1-dodge)

Now all this is a function of POW, AGI, and MEN. With a few constants thrown in (weapon, defender armour, doping effect)

You also have the equation Stats_available=POW+AGI+MEN

This can be substituted into all the equations. This leaves 2 variables, where you want to maximize damage/second.

So you want to maximize damage_dealt/secong/damage_recieved_second

if you want to make a hybrid between two stats then you can bring this all down to a equaction of one variable, eg by substituting in POW= Stats_available –AGI.
Then differentiating with respect to AGI, to find the stationary point. This will be your maximum.

Naturally the position of the maximum or optimum point will depend on constants such as weapons, armour, doping effect, accuracy effect, monster stats(you can average).

Once I have all the data I plan to put it all into a excel spreadsheet, enabling the instant calculation of the optimum build for each situation(different skills, equipment, type of monsters)
I believe then you can mathematically calculate the optimum stat distribution.

.....Sounds about right to me....

joradn102794
04-18-2008, 11:14 AM
wow how long did u spent time workin it out???

ggBuRNe
04-18-2008, 11:32 AM
i love math so much.. but doesn't have the time to bother with calculations in game.. math for engineering is bothering me now.. @_@ .. Anyway, good effort and keep working on it.. ^^

Khrim
04-18-2008, 11:45 AM
YEESH!! O.o;; I love math and even that made me cringe and run for my teddy bear. *hiding now* I'll stick to business math ^^ ty