BestoNet
BestoNet is a custom rollback networking solution developed for the fighting game Idol Showdown. Built in C# for Unity, it integrates with Facepunch Steamworks to provide a robust and efficient rollback implementation.
Install / Use
/learn @BestoGames/BestoNetREADME
BestoNet is a custom rollback networking solution developed for the fighting game Idol Showdown. Built in C# for Unity, it integrates with Facepunch Steamworks to provide a robust and efficient rollback implementation.
This is a work in progress as a library, and won't work right out the box
📚 Documentation
Background
Originally we used Unity GGPO but there were some issues.
- Unplayable connections at long distances (experiencing ~7 frames of rollback)
- Maintenance difficulties due to GGPO's C++ codebase
- System instability during poor network conditions
- Using GGPO required a relay system that added extra latency to online matches
Core Features
Rollback Management
- Speculative Frame Saving: Saves CPU time and preventing 7 frame rollbacks
- Currently saves the midpoint frame, confirm frame, and end frame
- Input Prediction: Will predict the next input using the previously received input
- Rift Management: Many different options to deal with one sided rollback and game syncing
- Reliable Input Messaging: Maintains a 7-frame input buffer to handle packet loss and out-of-order delivery
Implementation Requirements
- Frame Timing: Idol Showdown currently uses a separate thread as a timer.
- Spectator: The current implementation contains a call to send confirmed frame inputs to a spectator buffer
- State management system: Deterministic game logic is required. For efficiency reasons, we recommend avoiding using byte[] with BinaryWriter/Reader
Configuration

Current Unity Configuration Settings
Credits
This implementation draws inspiration from:
- MK/Injustice GDC presentation
- Zinac's rollback implementation guide
- GekkoNet's Rollback System
Special thanks to Rin Iota for developing the original networking foundation that enabled ISD Rollback's creation.
Contributing
This is an open-source project accepting community contributions. Please read our Contributing Guide and Code of Conduct before submitting pull requests.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Related Skills
node-connect
339.3kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
339.3kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.9kCommit, push, and open a PR
