From f59d9172d6ce3cd64025421094349c4709fc9683 Mon Sep 17 00:00:00 2001 From: Amber Burton Date: Fri, 3 Jul 2026 23:40:06 -0400 Subject: [PATCH] Desync the great fairy cutscene (#6860) When 2 players are in the fairy fountain and 1 activates the great fairy cutscene, it can force the other player into the cutscene as well, and I've had some crashes arbitrarily too so this guarentees that doesnt happen. --- soh/soh/Network/Anchor/Packets/SetFlag.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/soh/soh/Network/Anchor/Packets/SetFlag.cpp b/soh/soh/Network/Anchor/Packets/SetFlag.cpp index f416797a3f..65c739dfe1 100644 --- a/soh/soh/Network/Anchor/Packets/SetFlag.cpp +++ b/soh/soh/Network/Anchor/Packets/SetFlag.cpp @@ -69,11 +69,17 @@ void Anchor::HandlePacket_SetFlag(nlohmann::json payload) { return; } - // Special case: Ignore Tower Collapse timer start. + // Special case: Ignore tower collapse timer start, stored 0x36. if (sceneNum == SCENE_GANONS_TOWER_COLLAPSE_EXTERIOR && flagType == FLAG_SCENE_SWITCH && flag == 0x36) { return; } + // Special case: Ignore Great Fairy cutscenes, stored 0x38. + if ((sceneNum == SCENE_GREAT_FAIRYS_FOUNTAIN_MAGIC || sceneNum == SCENE_GREAT_FAIRYS_FOUNTAIN_SPELLS) && + flagType == FLAG_SCENE_SWITCH && flag == 0x38) { + return; + } + auto effect = new GameInteractionEffect::SetSceneFlag(); effect->parameters[0] = sceneNum; effect->parameters[1] = flagType;