Skip to main content

Rollback netcode in Godot (part 3): Making a custom MessageSerializer

Submitted by David Snopek on Monday, 2022-02-07 @ 5:03 AM

This tutorial is part of the Rollback Netcode in Godot course. See the previous part if you haven't already!

This is the 3rd part in a tutorial series teaching how to implement rollback netcode in your game in Godot, using the Godot Rollback Netcode addon:

https://gitlab.com/snopek-games/godot-rollback-netcode/

In this part, we create a custom MessageSerializer, to facilitate quickly and reliably sending input data. We cover a lot of background information, such as the "sliding window" technique and the Maximum Transmission Unit (MTU).

Here's the Git repo with the tutorial code (see the 'part-3' branch):

https://gitlab.com/snopek-games/godot-rollback-tutorial

Level:
Intermediate

All the tutorials in this course

  1. Rollback netcode in Godot (part 1): What is rollback and prediction?
  2. Rollback netcode in Godot (part 2): Getting Started with the Godot Rollback Netcode addon!
  3. Rollback netcode in Godot (part 3): Making a custom MessageSerializer
  4. Rollback netcode in Godot (part 4): Spawning scenes and NetworkTimer
  5. Rollback netcode in Godot (part 5): State, hashing and mismatches
  6. Rollback netcode in Godot (part 6): Playing offline!
  7. Rollback netcode in Godot (part 7): Input Delay and Interpolation
  8. Rollback netcode in Godot (part 8): Animation Players
  9. Rollback netcode in Godot (part 9): Sound Effects
  10. Rollback netcode in Godot (part 10): Random Numbers
  11. Rollback netcode in Godot (part 11): Advanced Input Prediction