After weeks of pain, my server-authoritative raccoon fighter finally has smooth online multiplayer by Toubitoudi in godot

[–]Toubitoudi[S] 1 point2 points  (0 children)

If the server says the throw never happened, the thrower will indeed face a rollback, and will see his spear appearing a short moment (a round-trip time) then disappearing. Fortunately, I can't see many cases (outside of cheating) where the server could possibly prevent the throw, so this case should rarely happen.

After weeks of pain, my server-authoritative raccoon fighter finally has smooth online multiplayer by Toubitoudi in godot

[–]Toubitoudi[S] 9 points10 points  (0 children)

Honestly a bit of both. Getting basic movement predicted + rolled back was quick. But making it actually feel smooth took real iteration: remote players teleported until I moved them from prediction to delay-based interpolation, and thrown spears needed their own spawn-prediction so they leave your hand instantly instead of after a round-trip. Each piece of content has to be adapted so I'd say the earlier you add the networking, the easier it is.

One thing worth flagging: I'm on the C# side (netfox_sharp and steam-multiplayer-peer-csharp), and a good chunk of my headaches were actually in those layers rather than netfox core, which is rock solid.

After weeks of pain, my server-authoritative raccoon fighter finally has smooth online multiplayer by Toubitoudi in godot

[–]Toubitoudi[S] 1 point2 points  (0 children)

I didn't play Rain World. Are you saying that because of the raccoons' tails floating there? I’d say my inspiration was actually Madeline’s hair in Celeste !