I'm trying to suppress all forms of ViewPunch. ViewPunch seems like it can only be modified serverside, even though ViewPunch functions are shared, they have no effect clientside. So every serverside tick I have to reset the viewpunch. But clients with a monitor hz above the server's tickrate see a stutter. ViewPunch increases with ping, and clients with high enough ping don't get their ViewPunch reset at all. Maybe there's something I can do on the actual clientside (like CalcView) to suppress ViewPunch?
ViewPunch is clientside for prediction, which means it will start applying viewpunch on the client before the server can suppress it. If you want to suppress all viewpunch, you must do it shared for the client to predict what the server will do.
All ViewPunch-modifying functions have no effect on the client.
They do, their value will just be overwritten by the server's once the data packet is received. But in that gaptime, it will use the client value for prediction. Relevant code to show this, which is all defined on the client and server:
SourceEngine2007/baseplayer_shared.cpp at 43a5c90a5ada1e69ca0445..
SourceEngine2007/baseplayer_shared.cpp at 43a5c90a5ada1e69ca0445..
SourceEngine2007/gamemovement.cpp at 43a5c90a5ada1e69ca044595383..
SourceEngine2007/c_baseplayer.cpp at 43a5c90a5ada1e69ca044595383..
Sorry, you need to Log In to post a reply to this thread.