#rollback-networking #rollback #ggpo #networking #gamedev #control-flow

ggrs

GGRS是对GGPO的重新构思,实现了Rust中的P2P回滚网络。回到未来!

28个版本

0.10.2 2024年4月23日
0.10.1 2024年2月27日
0.10.0 2023年11月10日
0.9.4 2023年3月30日
0.4.0 2021年7月29日

#260 in 网络编程

Download history 224/week @ 2024-05-03 161/week @ 2024-05-10 201/week @ 2024-05-17 150/week @ 2024-05-24 159/week @ 2024-05-31 130/week @ 2024-06-07 152/week @ 2024-06-14 159/week @ 2024-06-21 66/week @ 2024-06-28 265/week @ 2024-07-05 235/week @ 2024-07-12 179/week @ 2024-07-19 159/week @ 2024-07-26 159/week @ 2024-08-02 148/week @ 2024-08-09 123/week @ 2024-08-16

每月611次下载
用于 7 个crate(直接使用4个)

MIT/Apache

200KB
3K SLoC

GGRS LOGO

crates.io GitHub Workflow Status

Rust中的P2P回滚网络

GGRS(优秀的游戏回滚系统)是对GGPO网络SDK的重新构思,采用100%安全的Rust 🦀编写。原始库中的回调式API已被替换为更合理、更简单的控制流程。GGRS不再注册回调函数,而是返回一个请求列表供用户完成。

如果您想将回滚网络集成到您的游戏中,或者只想与其他回滚开发者(不仅限于Rust)交流,请查看GGPO开发者Discord

实时演示

GGRS有两个可以在浏览器中尝试的演示应用程序!一个是用macroquad编写的,另一个是用bevy编写的。两者都使用matchbox。与朋友一起试试!只需点击链接并与另一名玩家匹配!(您还可以在两个不同的窗口中打开链接以与自己对抗)

🚧 匹配功能目前离线 🚧

使用GGRS的项目

入门指南

要开始使用GGRS,请查看以下资源

开发状态

全局游戏重放(GGRS)处于早期阶段,但多玩家和观众的主要功能应该相当稳定。请查看变更日志以获取最新更改,即使它们尚未在crates.io上发布!如果您想贡献力量,请查看现有问题以及贡献指南!

Bevy 插件

《GGRS》的作者还在维护一个bevy插件。去看看吧

通过WebRTC套接字提供WASM支持

如果您想在浏览器中运行GGRS应用程序,请查看令人惊叹的Matchbox项目!Matchbox套接字通过功能标志与GGRS兼容

Godot 包装器

Godot是一个流行的开源游戏引擎。marcello505正在为GGRS开发一个包装器。在此找到仓库

Rust中的其他回滚实现

还可以看看令人惊叹的回滚项目,这是一个完全异步回滚库。特别感谢james7132提供了许多灵感和富有成效的讨论。

许可

GGRS可以双许可

任选其一。

依赖项

~1.5–8.5MB
~76K SLoC