TheEnginesOfCreation / EntityPlus

EntityPlus is a mod that offers a true single player experience in the Quake III Arena videogame.
34 stars 5 forks source link

Playerspeed is messed up when ducking after a target_playerspeed #121

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
When the player's speed is modified by target_playerspeed, the player's speed 
is distorted when ducking.

Original issue reported on code.google.com by era...@gmail.com on 7 Sep 2011 at 10:02

GoogleCodeExporter commented 9 years ago
The problem here is that when target_playerspeed lowers the player's normal 
movement speed, crouching lowers the player's movement speed again to 25%. In 
normal situations, where the player's speed is the default 320, this means 
crouching happens at a speed of 80. When target_playerspeed lowers the movement 
speed to 160, crouching happens at a speed of 40 which is such a slow crawl 
that it almost is like you aren't moving at all.

To solve this, crouching speed is first clamped to a lower value of 80. This 
means that if the crouch speed is less than 80 after the initial calculation, 
crouch speed will now be 80. 
In cases where the target_playerspeed itself has set a normal movement speeds 
that is less than 80, the crouch speed will be clamped to that speed (otherwise 
crouching would happen at a higher speed than normal walking). For instance, 
after being affected by a target_playerspeed with a speed of 60, the crouching 
speed will be 60 as well.

Original comment by era...@gmail.com on 8 Sep 2011 at 1:57