Make Extra Traps fully random when in Archi save file (#36)

Since extra traps are based off GI model ID and Scene ID and the GI model is always a gold rupee in Multiworld Archi, it would always be the same trap per scene.
This commit is contained in:
Patrick12115
2025-12-07 11:48:28 -05:00
committed by GitHub
parent 1aa04eeee1
commit 53162fde4a

View File

@@ -63,6 +63,10 @@ std::vector<AltTrapType> getEnabledAddTraps() {
static void RollRandomTrap(uint32_t seed) {
uint32_t finalSeed = seed + (IS_RANDO ? Rando::Context::GetInstance()->GetSeed()
: static_cast<uint32_t>(gSaveContext.ship.stats.fileCreatedAt));
// Makes Extra Traps completely random in Archipelago since GI is always the same
if (IS_ARCHIPELAGO) {
finalSeed += rand();
}
Random_Init(finalSeed);
roll = RandomElement(getEnabledAddTraps());