~/talk

Rollback System in C++ for Online Multiplayer Games

Talkat CppCon 2024 · on Sunday, 2024-09-15· [frontend-architecture]
links:none on file
slides:none on file

A concrete C++20 implementation appears on GitHub and uses SDL2 spine Photon FMOD and fmt to run on PC Linux and Nintendo Switch while shipping a simple custom physics and fixed-point (32-bit with 16-bit shift) math replacement to preserve determinism. The system copies compact arrays (inputs packed to ~5 bytes), keeps a rollback manager stores inputs and snapshots the model state, re‑simulates up to N frames (commonly 6–8) and uses a checksum detects desyncs — current tests show desyncs after ~1.5s without more debugging tooling.

AI-written summary · about

  1. 0:00Introduction
  2. 3:16Online multiplayer challenges
  3. 7:33Network latency and input delays
  4. 10:31Netcode basics
  5. 14:02Rollback netcode explained
  6. 19:29Physics vs graphics states
  7. 23:20Game architecture for rollback
  8. 27:12Implementing rollback
  9. 33:35Physics determinism challenges
  10. 36:02Floating points break determinism
  11. 41:20Fixed-point numbers
  12. 43:28Server-client input confirmation
  13. 47:04Debugging desyncs
  14. 50:56Object creation and destruction
  15. 52:02Optimizing rollback performance
  16. 53:47Future of C++ sockets
  17. 54:52Conclusion and key takeaways
  18. 56:24Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.