All Projects → gschup → ggrs

gschup / ggrs

Licence: Unknown and 2 other licenses found Licenses found Unknown LICENSE Apache-2.0 LICENSE-APACHE MIT LICENSE-MIT
GGRS is a reimagination of GGPO, enabling P2P rollback networking in Rust. Rollback to the future!

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to ggrs

o3tanks
A command-line interface tool to build and run O3DE (Open 3D Engine) in containers
Stars: ✭ 19 (-90.91%)
Mutual labels:  gamedev
Mengine
Mengine is an multiple platforms engine for creating and running graphical games
Stars: ✭ 21 (-89.95%)
Mutual labels:  gamedev
hierarchical-pathfinding
Implementation of Near-Optimal Hierarchical Pathfinding (HPA*) algorithm in Unity, tested with maps from Dragon Age: Origins
Stars: ✭ 90 (-56.94%)
Mutual labels:  gamedev
first-person-controller-for-unity
A First-Person Controller for Unity.
Stars: ✭ 18 (-91.39%)
Mutual labels:  gamedev
playthos
2D Game Engine written in Go.
Stars: ✭ 39 (-81.34%)
Mutual labels:  gamedev
limitless-engine
OpenGL C++ Graphics Engine
Stars: ✭ 95 (-54.55%)
Mutual labels:  gamedev
wfc
Go port of the Wave Function Collapse algorithm
Stars: ✭ 47 (-77.51%)
Mutual labels:  gamedev
cog
Macro powered ECS Framework written in Haxe
Stars: ✭ 29 (-86.12%)
Mutual labels:  gamedev
octoawesome
This is the code repository for the OctoAwesome project - a collection of daily, 20 minute long game development tutorial videos, iterating over the same piece of code
Stars: ✭ 104 (-50.24%)
Mutual labels:  gamedev
build
Build system scripts based on GENie (https://github.com/bkaradzic/genie) project generator
Stars: ✭ 30 (-85.65%)
Mutual labels:  gamedev
awesome-n64-development
A curated list of Nintendo 64 development resources including toolchains, documentation, emulators, example code, and more
Stars: ✭ 210 (+0.48%)
Mutual labels:  gamedev
themachinery-books
This repository contains the source of "The Machinery book " and some other books.
Stars: ✭ 20 (-90.43%)
Mutual labels:  gamedev
surgescript
SurgeScript: a scripting language for games.
Stars: ✭ 41 (-80.38%)
Mutual labels:  gamedev
ecs
A dependency free, lightweight, fast Entity-Component System (ECS) implementation in Swift
Stars: ✭ 79 (-62.2%)
Mutual labels:  gamedev
bevy verlet
Verlet physics plugin for bevy.
Stars: ✭ 29 (-86.12%)
Mutual labels:  gamedev
Unity-Visual-Behavior-Tree
Reactive Visual Scripting Behavior Tree Tool for Unity 2018.x+
Stars: ✭ 36 (-82.78%)
Mutual labels:  gamedev
newport
Modular game engine built in Rust
Stars: ✭ 4 (-98.09%)
Mutual labels:  gamedev
moon-cheeser
Moon Cheeser is an infinite runner where the player plays as a mouse gathering cheese pieces and avoiding craters and other astronomical objects, such as comets and planets, on a moon made of cheese.
Stars: ✭ 32 (-84.69%)
Mutual labels:  gamedev
Codebot
Free and open source (MIT license) web-based IDE focused on game development.
Stars: ✭ 86 (-58.85%)
Mutual labels:  gamedev
sdlpp
C++ wrapper for SDL2
Stars: ✭ 37 (-82.3%)
Mutual labels:  gamedev

GGRS LOGO

crates.io GitHub Workflow Status

P2P Rollback Networking in Rust

GGRS (good game rollback system) is a reimagination of the GGPO network SDK written in 100% safe Rust 🦀. The callback-style API from the original library has been replaced with a much saner, simpler control flow. Instead of registering callback functions, GGRS returns a list of requests for the user to fulfill.

If you are interested in integrating rollback networking into your game or just want to chat with other rollback developers (not limited to Rust), check out the GGPO Developers Discord!

Live Demonstrations

GGRS has two demo apps you can try in the browser! One written with macroquad, the other written with bevy. Both use matchbox. Try it out with a friend! Just click the link and match with another player! (You can also open the link in two separate windows to play against yourself)

Projects using GGRS

Getting Started

To get started with GGRS, check out the following resources:

Development Status

GGRS is in an early stage, but the main functionality for multiple players and spectators should be quite stable. See the Changelog for the latest changes, even those yet unreleased on crates.io! If you want to contribute, check out existing issues, as well as the contribution guide!

Useful Links

Bevy Plugin

The authors of GGRS are also maintaining a bevy plugin. Check it out:

WASM support through WebRTC sockets

If you are interested to run a GGRS application in your browser, check the amazing Matchbox project! The matchbox sockets are compatible with GGRS through a feature flag:

Godot Wrapper

Godot is a popular open-source game engine. marcello505 is developing a wrapper for GGRS. Find the repository here:

Other Rollback Implementations in Rust

Also take a look at the awesome backroll project, a completely async rollback library. Special thanks to james7132 for a lot of inspiration and fruitful discussion.

Licensing

GGRS is dual-licensed under either

at your option.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].