Skip to main content

Rollback netcode in Godot (part 10): Random Numbers

Submitted by David Snopek on Monday, 2022-05-30 @ 9:00 AM

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

This is the 10th 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 discuss the challenges of generating random numbers in a rollback-safe way, while also minimizing the potential artifacts. We then dig in, and use the NetworkRandomNumberGenerator node from the addon to add a teleport ability to our demo game.

Here's the Git repo with the tutorial code (see the 'part-10' 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