Originally posted by Karon
It spend me several days to find out a run/walk speed
forumla by changing the WalkVelocity and RunVelocity in charstats.txt to groups of combination and test the time
to cover a fixed distance.It's a little pity that someone has
found the same formula before me
First of all,the naked character walks along a distance=1 TU,it will
cost him about 1 second.So we can say that a character walks
or runs at a speed of xxxx TU/second,xxxx is the final run/walk
speed.Of course the time may be more beyond 1 sec when with
a very low speed.
(1 TU is a 32*16 pixels diamond_shaped map unit,see more from
http://www.lurkerlounge.com/diablo2...s/120300.shtml,
1 TU(Tile Unit)=2/3 yard normally)
in charstats.txt WalkVelocity(WB)=6,RunVelocity(RB)=9,let's
call them WB and RB as abbreviation.
I changed the (WB,RB) to different groups such as (0,4),(1,4)
(2,4),(3,4),(4,4)......(4,0),(4,1),(4,2),(4,3),(4,4).....(8,0),(8,1)...
(16,0),(16,1)....then recorded the time,and found these:
(1)if WB=0,the char will never move in spite of how big RB is,
unless he or she is knockbacked or teleports.and if you mod
WB=-1 or other negative value,the char will walk backward.
(2)final_walk_speed=WB*(1+ Skill% + e_item% + Armor%)
*Skill% is the bonus from vigor,increase speed....etc,even include
the holyfreeze,slow target item,freeze....etc,the value is added
in directly without any diminish.
*e_item% is the influence of "xx faster run/walk" mod on items,
it will be diminished as [frw*A/(frw+A)].I thought the A=120 as
many other diminishment but the test data tell me no.Now
according to Hammerman's article,A=150 as a final value.
*Armor% is -10% or -5% of heavy or middle armors/shields.We
can find this value in armor.txt.It's the "speed" column.Also I
changed it to many values to test.
(3)final_run_speed=RB+WB*(Skill% + e_item% + Armor%).
Yes,that is,if there is no any bonus to walk_speed,the final
run speed is equal to RB.
(4)after the two calculation above,there is a check of bottom
to them:
if final_walk_speed < WB/4 , final_walk_speed=WB/4
if final_run_speed < WB/4, final_run_speed = WB/4
so in the game the lowest run/walk speed is 6/4=1.5 TU/sec
Here is an example.
(WB,RB)=(6,9),I moded the speed of Cap and Quilted Armor
to 100 and 100(so they will both have -100% speed mod)
a char equiped with Cap and Quilted Armor will have
final_walk_speed=6*(1-100%-100%)=-6 TU/sec
final_run_speed=9+6*(-100%-100%)=9-12=-3 TU/sec
now -6 and -3 both < 1.5,so
final_walk_speed=final_run_speed=1.5 TU/sec
another normal example
(WB,RB)=(6,9),with 40% faster run/walk item,with 43% vigor,
with a chaos armor equiped,then
final_walk_speed=6*(1+[40*150/190]%-10%+43%)=9.84 TU/s
final_run_speed=9 + (9.84-6)=12.84 TU/s
I have to mention that there has been a person who found the
same formula above at the time Wed Mar 13 15:07:46 2002.
His(Her) ID is Garyyen at
www.gamer.com.tw
We have almost the same results except the "BW/4" bottom.He(She) has some different opinions about the bottom.His(her)
formula shows:
final_run_speed=RB*(1+(WB/RB)*(bonus%+1/4) ) when
WB/4 > RB
it's incompatible to my test data.
sorry for that i can't give a link about it,because the protection
setup of
www.gamer.com.tw ,the url does not work