From c40262ae58865390e8ee3e853613939ffa24f03c Mon Sep 17 00:00:00 2001 From: Max Whitehead <35712032+MaxCWhitehead@users.noreply.github.com> Date: Thu, 11 Apr 2024 20:44:22 -0700 Subject: [PATCH] fix(networking): Switch to ggrs fork with fix for corrections dropped at max prediction (#382) Switching to fork of ggrs with some fixes I am testing for desync. Desync occurs when client receives a frame it should rollback and correct while also at max prediction threshold (requires 3+ clients to hit failure, as if only 2 after receiving remote input 2nd would not be at max prediction anymore). Changes being used are here: https://github.com/MaxCWhitehead/ggrs/tree/prediction-error-rollback-test So far I no longer reproduce desync in jumpy, and the test I implemented in that branch is now passing. --- Cargo.lock | 2 +- framework_crates/bones_framework/Cargo.toml | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8229262249..4e2fc618ec 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2554,7 +2554,7 @@ dependencies = [ [[package]] name = "ggrs" version = "0.10.1" -source = "git+https://github.com/gschup/ggrs.git?rev=0af1a044b96465bd10398947b7fb5e0a34a75f70#0af1a044b96465bd10398947b7fb5e0a34a75f70" +source = "git+https://github.com/MaxCWhitehead/ggrs.git?rev=96499377407ce55805a9d0367b86860b74c233bd#96499377407ce55805a9d0367b86860b74c233bd" dependencies = [ "bincode", "bitfield-rle", diff --git a/framework_crates/bones_framework/Cargo.toml b/framework_crates/bones_framework/Cargo.toml index e8f57131db..151da949de 100644 --- a/framework_crates/bones_framework/Cargo.toml +++ b/framework_crates/bones_framework/Cargo.toml @@ -117,7 +117,9 @@ document-features = { version = "0.2", optional = true } # Networking [target.'cfg(not(target_arch = "wasm32"))'.dependencies] -ggrs = { git = "https://github.com/gschup/ggrs.git", rev = "0af1a044b96465bd10398947b7fb5e0a34a75f70", features = ["sync-send"] } +ggrs = { git = "https://github.com/MaxCWhitehead/ggrs.git", rev = "96499377407ce55805a9d0367b86860b74c233bd", features = [ + "sync-send", +] } bones_matchmaker_proto = { version = "0.2", path = "../../other_crates/bones_matchmaker_proto" } bytes = "1.4" mdns-sd = { version = "0.10", default-features = false }