Simulating Rollbacks Locally #210
-
Hi! I'm in the process of considering netcoding options in Godot so I'm putting together a small proof of concept for myself to implement and test things. I was wondering if there was an easy way to essentially create an environment where rollbacks are constantly triggered on clients to test the netcoding in various situations. What would be the best way to do this with Netfox? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Hi @jeremyhcho! Rollback will happen, as long as there's active RollbackSynchronizers and latency between server and clients. The higher the latency, the older the input received on the server, and the more ticks it needs to resimulate. Similarly on clients - the higher the latency, the older the last received state, so more ticks need to be resimulated. For local testing on Linux, there's a script included that you can use to simulate latency artifically. For Windows, I know there's clumsy, although I haven't used it myself. You can check the number of rollback ticks simulated in Godot's profiler: Out of curiosity, what are the alternatives you're checking? I only know of Snopek's rollback addon. |
Beta Was this translation helpful? Give feedback.
Hi @jeremyhcho! Rollback will happen, as long as there's active RollbackSynchronizers and latency between server and clients. The higher the latency, the older the input received on the server, and the more ticks it needs to resimulate. Similarly on clients - the higher the latency, the older the last received state, so more ticks need to be resimulated.
For local testing on Linux, there's a script included that you can use to simulate latency artifically. For Windows, I know there's clumsy, although I haven't used it myself.
You can check the number of rollback ticks simulated in Godot's profiler:
Out of curiosity, what are the alternatives you're checking? I only know of Snopek's rollb…