From 3d16ecd7e9cce3ad20d1662d2b1ff4e0965670c7 Mon Sep 17 00:00:00 2001 From: Antonio Martinez Date: Sat, 27 Sep 2025 20:38:42 -0400 Subject: [PATCH] Staffsync excludes many RNG classes --- src/g_demo.cpp | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/g_demo.cpp b/src/g_demo.cpp index 4e08d1be5..7ecc422b6 100644 --- a/src/g_demo.cpp +++ b/src/g_demo.cpp @@ -305,14 +305,30 @@ boolean G_ConsiderEndingDemoRead(void) // Demo failed sync during a sync test! Log the failure to be reported later. static boolean G_FailStaffSync(staffsync_reason_t reason, UINT32 extra) { + if (demo.attract != DEMO_ATTRACT_OFF) // Don't shout about RNG desyncs in titledemos + return false; + if (!staffsync) return true; if (staffsync_results[staffsync_failed].reason != 0) return false; - if (reason == SYNC_RNG && extra == PR_ITEM_DEBRIS) - return false; + if (reason == SYNC_RNG) + { + switch (extra) + { + case PR_ITEM_DEBRIS: + case PR_RANDOMAUDIENCE: + case PR_VOICES: + case PR_DECORATION: + case PR_RANDOMANIM: + CONS_Printf("[!] Ignored desync from RNG class %d\n", extra); + return false; + default: + break; + } + } staffsync_results[staffsync_failed].map = gamemap; memcpy(&staffsync_results[staffsync_failed].name, player_names[consoleplayer], sizeof(player_names[consoleplayer]));