diff --git a/src/d/actor/d_a_mg_rod.cpp b/src/d/actor/d_a_mg_rod.cpp index e4cad01f7f..e0db518112 100644 --- a/src/d/actor/d_a_mg_rod.cpp +++ b/src/d/actor/d_a_mg_rod.cpp @@ -4040,15 +4040,8 @@ static void uki_catch(dmg_rod_class* i_this) { i_this->msgflow.init(actor, 0x139A, 0, NULL); dComIfGs_onEventBit(dSv_event_flag_c::saveBitLabels[468]); #if TARGET_PC - if (randomizer_IsActive()) { - // In rando, give the player the fishing bottle randomized item. Then save - // the itemId for later since the textbox happens after we've already given the player - // the item. If we didn't save it and the item is progressive, then we get the wrong - // text for the item. - u8 itemId = verifyProgressiveItem(randomizer_getItemAtLocation("Fishing Hole Bottle")); - g_randomizerState.mFishingBottleItemId = itemId; - execItemGet(itemId); - } else + // Don't give the item here in rando. We give it later in the FLW Message + if (!randomizer_IsActive()) #endif dComIfGs_setEmptyBottle(); } else if (mgfish->mCaughtType == MG_CATCH_KN) { diff --git a/src/d/d_msg_flow.cpp b/src/d/d_msg_flow.cpp index 68651bd064..1b4c8058eb 100644 --- a/src/d/d_msg_flow.cpp +++ b/src/d/d_msg_flow.cpp @@ -514,19 +514,16 @@ int dMsgFlow_c::setNormalMsg(mesg_flow_node* i_flowNode_p, fopAc_ac_c* i_speaker #if TARGET_PC if (randomizer_IsActive()) { - // If this is the fishing hole bottle message, override it - // with the item message for the randomized item - if (msg_no == 0x71E && g_randomizerState.mFishingBottleItemId != 0) { - msg_no = getItemMessageID(g_randomizerState.mFishingBottleItemId); - g_randomizerState.mFishingBottleItemId = 0; - } else { - u32 key = (dMsgObject_getGroupID() << 16) | msg_no; - auto& flowItemOverrides = randomizer_GetContext().mFlowItemMessageOverrides; - if (flowItemOverrides.contains(key)) { - u8 itemId = verifyProgressiveItem(flowItemOverrides[key]); - msg_no = getItemMessageID(itemId); - execItemGet(itemId); - } + u32 key = (dMsgObject_getGroupID() << 16) | msg_no; + // Use group 0 if the msg_no is below 5000 regardless of current group + if (msg_no < 5000) { + key &= 0x0000FFFF; + } + auto& flowItemOverrides = randomizer_GetContext().mFlowItemMessageOverrides; + if (flowItemOverrides.contains(key)) { + u8 itemId = verifyProgressiveItem(flowItemOverrides[key]); + msg_no = getItemMessageID(itemId); + execItemGet(itemId); } } #endif diff --git a/src/dusk/randomizer/generator/data/locations.yaml b/src/dusk/randomizer/generator/data/locations.yaml index 07a78700dc..d910c33f03 100644 --- a/src/dusk/randomizer/generator/data/locations.yaml +++ b/src/dusk/randomizer/generator/data/locations.yaml @@ -3538,8 +3538,9 @@ - ARC - REL Metadata: - Name Lookup: - - Fishing Hole Bottle + FLW Message: + - Group: 0 + Message Id: 1822 - Name: Fishing Hole Heart Piece Original Item: Piece of Heart