NeotokyoRevamp / neo

This project has moved to: https://github.com/NeotokyoRebuild/neo
Other
30 stars 14 forks source link

Third person animations are not networking properly #39

Open Rainyan opened 4 years ago

Rainyan commented 4 years ago

Third person animation/ticks should be server driven and predicted clientside.

AdamTadeusz commented 4 months ago

Interesting to see that Reload animations work when the other client is crouched. When using sv_showanimstate 2 (need to uncomment a piece of code to make it work), I noticed that reload sequences sit on a different layer than usual when that player is crouched (and same for local player when crouch reloading, using cl_showanimstate 1). Also I can see that two reload sequences in total play on two different layers when the player is crouched, with one being ahead of the other by a few ticks causing a jitter when the first reload animation ends.

AdamTadeusz commented 4 months ago

image Here is an image of parts of the output from dtwatchent 2, observing a client connected to the host reloading their srm. When crouched, m_nSequence 44 is transmitted and the character runs their reload animation on both screens, but not when the client is standing up

AdamTadeusz commented 4 months ago

I am able to get all the animations to play between clients by using networked properties defined in the BaseCombatWeapon and NEOBaseCombatWeapon classes, recreating the animation layers clientside instead of grabbing them from the server. Will cleanup and make a merge request once I'm happy with it @Rainyan . I don't know if its the best way to do it but It works and this problem is almost 4 years old now so..

AdamTadeusz commented 4 months ago

For documentations sake possibly fixed in #72