2009-07-08, 06:53 AM
Ive been doing some researches of my own, and i must say that im extremely close to it. From what I have now, i can see that its an extremely complicated forumula, and its something in the style of:
...many other calculations... (level*multiplier + str*multiplier + int*multiplier + dex*multiplier + luk*multiplier)... more calculations...
The only thing im missing is how are the multipliers generated. They are obviously not static because most of them are things like 2.123785135468.
I'm hoping to finish and have a formula by today's evening, but it will possibly take another day depending on how complicated generating the multipliers is.
On my level 1 equipless beginner with 429 str, 429 int, 50 dex, 50 luk, versus a green mushroom, it was something like (not exact, i have some things missing):
variable1 = dex * 0.25 + luk *0.2871941235 + str*0.4 + int * 0.111111111
if (some weird var i dont understand, possibly level < 15)
variable1 = variable1 * 0.00125
variable2 = level * 0.0018 + variable1 + 0.28
0-StandardPDD * 1.3 (i have no idea what to do with this line, i cant understand my own handwriting
)
damage = variable 2 - (some other variable (possibly def) * variable2 * 0.01)
however this always produced a static damage of about 61, not a min-max range. so i assume one of these "multipliers" was actually a randomized value.
aaannnndddd... im back to debugging.
...many other calculations... (level*multiplier + str*multiplier + int*multiplier + dex*multiplier + luk*multiplier)... more calculations...
The only thing im missing is how are the multipliers generated. They are obviously not static because most of them are things like 2.123785135468.
I'm hoping to finish and have a formula by today's evening, but it will possibly take another day depending on how complicated generating the multipliers is.
On my level 1 equipless beginner with 429 str, 429 int, 50 dex, 50 luk, versus a green mushroom, it was something like (not exact, i have some things missing):
variable1 = dex * 0.25 + luk *0.2871941235 + str*0.4 + int * 0.111111111
if (some weird var i dont understand, possibly level < 15)
variable1 = variable1 * 0.00125
variable2 = level * 0.0018 + variable1 + 0.28
0-StandardPDD * 1.3 (i have no idea what to do with this line, i cant understand my own handwriting
)damage = variable 2 - (some other variable (possibly def) * variable2 * 0.01)
however this always produced a static damage of about 61, not a min-max range. so i assume one of these "multipliers" was actually a randomized value.
aaannnndddd... im back to debugging.

