News for hackers. Stuff that matters.
Re:Bunnyhopping from the Programmer's Perspective (2015) by IQunder130 on Saturday June 05, 2021 @07:02AM (#27403940)
The thing I don't understand is why you would limit velocity in such a strange way to begin with.
Re:Bunnyhopping from the Programmer's Perspective (2015) by megameter on Saturday June 05, 2021 @08:18AM (#27404275)
It's an artifact of the projection also being used to slide off walls smoothly, and then just reusing that idea - which could be a accident, or an "accident" (choosing by what feels better).

Goldsrc surfing was most exploitable in the form of "wall-running" by strafing against rounded surfaces(e.g. the cylindrical sewer pipe interiors in cs_siege and cs_militia, I think, both did this). Same bug, different mechanism, easier to control.

Re:Bunnyhopping from the Programmer's Perspective (2015) by smoldesu on Saturday June 05, 2021 @12:28PM (#27406389)
If you think that's stupid, wait until you see how to Bunnyhop in Half Life 2:

https://www.youtube.com/watch?v=EfRIMwWbyrQ

Re:Bunnyhopping from the Programmer's Perspective (2015) by enriquto on Saturday June 05, 2021 @07:45AM (#27404114)
accelerations map directly to actions of the user (forces). It seems fairly natural, not strange, to control velocities and positions in terms of accelerations. The same thing happens in real life.
Re:Bunnyhopping from the Programmer's Perspective (2015) by IQunder130 on Saturday June 05, 2021 @10:24AM (#27405295)
That's not the strange thing. The strange thing is limiting it on a projection rather than the magnitude of the velocity vector.
Re:Bunnyhopping from the Programmer's Perspective (2015) by enriquto on Saturday June 05, 2021 @03:37PM (#27407913)
applying a force perpendicular to the velocity does not change the speed, only the direction. Only the component of the force tangent to the velocity vector (the projection) is relevant for controlling the max speed
Re:Bunnyhopping from the Programmer's Perspective (2015) by IQunder130 on Saturday June 05, 2021 @04:13PM (#27408127)
They're not measuring the projection of the acceleration vector on the velocity vector, they're measuring the projection of the velocity vector on the acceleration vector and limiting that. Which makes no sense for a speed limiting method as evidenced by the fact that strafejumping exists. What you said is true and also irrelevant.

To get a true speed limit you would compute the new velocity vector, compute its magnitude and rescale the components by the ratio under the limit. Which is slightly more computationally expensive I suppose.

Re:Bunnyhopping from the Programmer's Perspective (2015) by wizzwizz4 on Saturday June 05, 2021 @01:03PM (#27406703)
If you're already calculating the projection, it's cheaper.