mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-10-31 15:45:06 -04:00
Add all macros.
Replace all randomizer seed setting CVars with appropriate macro. Cleaned up non-gameplay-critical things that are part of Spock Race rando presets (like RTA timing, displaying timer, displaying the glitch lineup tick, or Fast File Select).
This commit is contained in:
parent
ebde648c59
commit
0086762870
@ -7,6 +7,7 @@
|
||||
#include <cstdint>
|
||||
#include "soh/Enhancements/randomizer/randomizerTypes.h"
|
||||
#include "soh/Enhancements/enhancementTypes.h"
|
||||
#include "soh/OTRGlobals.h"
|
||||
|
||||
enum PresetEntryType {
|
||||
PRESET_ENTRY_TYPE_S32,
|
||||
@ -354,139 +355,138 @@ const std::vector<const char*> cheatCvars = {
|
||||
};
|
||||
|
||||
const std::vector<const char*> randomizerCvars = {
|
||||
"gRandomize10GSHint",
|
||||
"gRandomize20GSHint",
|
||||
"gRandomize30GSHint",
|
||||
"gRandomize40GSHint",
|
||||
"gRandomize50GSHint",
|
||||
"gRandomizeAllLocationsReachable",
|
||||
"gRandomizeAltarHint",
|
||||
"gRandomizeBigPoeTargetCount",
|
||||
"gRandomizeBlueFireArrows",
|
||||
"gRandomizeBombchusInLogic",
|
||||
"gRandomizeBossKeysanity",
|
||||
"gRandomizeBridgeRewardOptions",
|
||||
"gRandomizeCompleteMaskQuest",
|
||||
"gRandomizeCuccosToReturn",
|
||||
"gRandomizeDampeHint",
|
||||
"gRandomizeDecoupleEntrances",
|
||||
"gRandomizeDoorOfTime",
|
||||
"gRandomizeDungeonCount",
|
||||
"gRandomizeEnableBombchuDrops",
|
||||
"gRandomizeEnableGlitchCutscenes",
|
||||
"gRandomizeEnabledGlitches",
|
||||
"gRandomizeEnabledTricks",
|
||||
"gRandomizeExcludedLocations",
|
||||
"gRandomizeForest",
|
||||
"gRandomizeFullWallets",
|
||||
"gRandomizeGanonTrial",
|
||||
"gRandomizeGanonTrialCount",
|
||||
"gRandomizeGerudoFortress",
|
||||
"gRandomizeGerudoKeys",
|
||||
"gRandomizeGossipStoneHints",
|
||||
"gRandomizeGsExpectSunsSong",
|
||||
"gRandomizeHintClarity",
|
||||
"gRandomizeHintDistribution",
|
||||
"gRandomizeIceTraps",
|
||||
"gRandomizeItemPool",
|
||||
"gRandomizeKakarikoGate",
|
||||
"gRandomizeKeysanity",
|
||||
"gRandomizeLacsDungeonCount",
|
||||
"gRandomizeLacsMedallionCount",
|
||||
"gRandomizeLacsRewardCount",
|
||||
"gRandomizeLacsRewardOptions",
|
||||
"gRandomizeLacsStoneCount",
|
||||
"gRandomizeLacsTokenCount",
|
||||
"gRandomizeLAHint",
|
||||
"gRandomizeLinksPocket",
|
||||
"gRandomizeLogicRules",
|
||||
"gRandomizeMedallionCount",
|
||||
"gRandomizeMixDungeons",
|
||||
"gRandomizeMixedEntrances",
|
||||
"gRandomizeMixGrottos",
|
||||
"gRandomizeMixInteriors",
|
||||
"gRandomizeMixOverworld",
|
||||
"gRandomizeMqDungeonCount",
|
||||
"gRandomizeMqDungeons",
|
||||
"gRandomizeRainbowBridge",
|
||||
"gRandomizeRewardCount",
|
||||
"gRandomizeScrubText",
|
||||
"gRandomizeShopsanity",
|
||||
"gRandomizeShopsanityPrices",
|
||||
"gRandomizeShopsanityPricesAffordable",
|
||||
"gRandomizeShuffleAdultTrade",
|
||||
"gRandomizeShuffleBeans",
|
||||
"gRandomizeShuffleBossEntrances",
|
||||
"gRandomizeShuffleCows",
|
||||
"gRandomizeShuffleDungeonReward",
|
||||
"gRandomizeShuffleDungeonsEntrances",
|
||||
"gRandomizeShuffleFrogSongRupees",
|
||||
"gRandomizeShuffleGanonBossKey",
|
||||
"gRandomizeShuffleGerudoToken",
|
||||
"gRandomizeShuffleGrottosEntrances",
|
||||
"gRandomizeShuffleInteriorsEntrances",
|
||||
"gRandomizeShuffleKeyRings",
|
||||
"gRandomizeShuffleKeyRingsBottomOfTheWell",
|
||||
"gRandomizeShuffleKeyRingsFireTemple",
|
||||
"gRandomizeShuffleKeyRingsForestTemple",
|
||||
"gRandomizeShuffleKeyRingsGanonsCastle",
|
||||
"gRandomizeShuffleKeyRingsGerudoFortress",
|
||||
"gRandomizeShuffleKeyRingsGTG",
|
||||
"gRandomizeShuffleKeyRingsRandomCount",
|
||||
"gRandomizeShuffleKeyRingsShadowTemple",
|
||||
"gRandomizeShuffleKeyRingsSpiritTemple",
|
||||
"gRandomizeShuffleKeyRingsWaterTemple",
|
||||
"gRandomizeShuffleKokiriSword",
|
||||
"gRandomizeShuffleMerchants",
|
||||
"gRandomizeShuffleOcarinas",
|
||||
"gRandomizeShuffleOverworldEntrances",
|
||||
"gRandomizeShuffleOverworldSpawns",
|
||||
"gRandomizeShuffleOwlDrops",
|
||||
"gRandomizeShuffleScrubs",
|
||||
"gRandomizeShuffleSongs",
|
||||
"gRandomizeShuffleTokens",
|
||||
"gRandomizeShuffleWarpSongs",
|
||||
"gRandomizeShuffleWeirdEgg",
|
||||
"gRandomizeSkipChildStealth",
|
||||
"gRandomizeSkipChildZelda",
|
||||
"gRandomizeSkipEponaRace",
|
||||
"gRandomizeSkipScarecrowsSong",
|
||||
"gRandomizeSkipTowerEscape",
|
||||
"gRandomizeStartingAge",
|
||||
"gRandomizeStartingConsumables",
|
||||
"gRandomizeStartingBoleroOfFire",
|
||||
"gRandomizeStartingDekuShield",
|
||||
"gRandomizeStartingEponasSong",
|
||||
"gRandomizeStartingKokiriSword",
|
||||
"gRandomizeStartingMapsCompasses",
|
||||
"gRandomizeStartingMinuetOfForest",
|
||||
"gRandomizeStartingNocturneOfShadow",
|
||||
"gRandomizeStartingOcarina",
|
||||
"gRandomizeStartingPreludeOfLight",
|
||||
"gRandomizeStartingRequiemOfSpirit",
|
||||
"gRandomizeStartingSariasSong",
|
||||
"gRandomizeStartingSerenadeOfWater",
|
||||
"gRandomizeStartingSkulltulaToken",
|
||||
"gRandomizeStartingSongOfStorms",
|
||||
"gRandomizeStartingSongOfTime",
|
||||
"gRandomizeStartingSunsSong",
|
||||
"gRandomizeStartingZeldasLullaby",
|
||||
"gRandomizeStoneCount",
|
||||
"gRandomizeSunlightArrows",
|
||||
"gRandomizeTokenCount",
|
||||
"gRandomizeWarpSongText",
|
||||
"gRandomizeZorasFountain",
|
||||
"gRandomizeShuffle100GSReward",
|
||||
"gRandomizeGregHint",
|
||||
RANDOMIZER_SEED_CVAR("10GSHint"),
|
||||
RANDOMIZER_SEED_CVAR("20GSHint"),
|
||||
RANDOMIZER_SEED_CVAR("30GSHint"),
|
||||
RANDOMIZER_SEED_CVAR("40GSHint"),
|
||||
RANDOMIZER_SEED_CVAR("50GSHint"),
|
||||
RANDOMIZER_SEED_CVAR("AllLocationsReachable"),
|
||||
RANDOMIZER_SEED_CVAR("AltarHint"),
|
||||
RANDOMIZER_SEED_CVAR("BigPoeTargetCount"),
|
||||
RANDOMIZER_SEED_CVAR("BlueFireArrows"),
|
||||
RANDOMIZER_SEED_CVAR("BombchusInLogic"),
|
||||
RANDOMIZER_SEED_CVAR("BossKeysanity"),
|
||||
RANDOMIZER_SEED_CVAR("BridgeRewardOptions"),
|
||||
RANDOMIZER_SEED_CVAR("CompleteMaskQuest"),
|
||||
RANDOMIZER_SEED_CVAR("CuccosToReturn"),
|
||||
RANDOMIZER_SEED_CVAR("DampeHint"),
|
||||
RANDOMIZER_SEED_CVAR("DecoupleEntrances"),
|
||||
RANDOMIZER_SEED_CVAR("DoorOfTime"),
|
||||
RANDOMIZER_SEED_CVAR("DungeonCount"),
|
||||
RANDOMIZER_SEED_CVAR("EnableBombchuDrops"),
|
||||
RANDOMIZER_SEED_CVAR("EnableGlitchCutscenes"),
|
||||
RANDOMIZER_SEED_CVAR("EnabledGlitches"),
|
||||
RANDOMIZER_SEED_CVAR("EnabledTricks"),
|
||||
RANDOMIZER_SEED_CVAR("ExcludedLocations"),
|
||||
RANDOMIZER_SEED_CVAR("Forest"),
|
||||
RANDOMIZER_SEED_CVAR("FullWallets"),
|
||||
RANDOMIZER_SEED_CVAR("GanonTrial"),
|
||||
RANDOMIZER_SEED_CVAR("GanonTrialCount"),
|
||||
RANDOMIZER_SEED_CVAR("GerudoFortress"),
|
||||
RANDOMIZER_SEED_CVAR("GerudoKeys"),
|
||||
RANDOMIZER_SEED_CVAR("GossipStoneHints"),
|
||||
RANDOMIZER_SEED_CVAR("GsExpectSunsSong"),
|
||||
RANDOMIZER_SEED_CVAR("HintClarity"),
|
||||
RANDOMIZER_SEED_CVAR("HintDistribution"),
|
||||
RANDOMIZER_SEED_CVAR("IceTraps"),
|
||||
RANDOMIZER_SEED_CVAR("ItemPool"),
|
||||
RANDOMIZER_SEED_CVAR("KakarikoGate"),
|
||||
RANDOMIZER_SEED_CVAR("Keysanity"),
|
||||
RANDOMIZER_SEED_CVAR("LacsDungeonCount"),
|
||||
RANDOMIZER_SEED_CVAR("LacsMedallionCount"),
|
||||
RANDOMIZER_SEED_CVAR("LacsRewardCount"),
|
||||
RANDOMIZER_SEED_CVAR("LacsRewardOptions"),
|
||||
RANDOMIZER_SEED_CVAR("LacsStoneCount"),
|
||||
RANDOMIZER_SEED_CVAR("LacsTokenCount"),
|
||||
RANDOMIZER_SEED_CVAR("LAHint"),
|
||||
RANDOMIZER_SEED_CVAR("LinksPocket"),
|
||||
RANDOMIZER_SEED_CVAR("LogicRules"),
|
||||
RANDOMIZER_SEED_CVAR("MedallionCount"),
|
||||
RANDOMIZER_SEED_CVAR("MixDungeons"),
|
||||
RANDOMIZER_SEED_CVAR("MixedEntrances"),
|
||||
RANDOMIZER_SEED_CVAR("MixGrottos"),
|
||||
RANDOMIZER_SEED_CVAR("MixInteriors"),
|
||||
RANDOMIZER_SEED_CVAR("MixOverworld"),
|
||||
RANDOMIZER_SEED_CVAR("MqDungeonCount"),
|
||||
RANDOMIZER_SEED_CVAR("MqDungeons"),
|
||||
RANDOMIZER_SEED_CVAR("RainbowBridge"),
|
||||
RANDOMIZER_SEED_CVAR("RewardCount"),
|
||||
RANDOMIZER_SEED_CVAR("ScrubText"),
|
||||
RANDOMIZER_SEED_CVAR("Shopsanity"),
|
||||
RANDOMIZER_SEED_CVAR("ShopsanityPrices"),
|
||||
RANDOMIZER_SEED_CVAR("ShopsanityPricesAffordable"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleAdultTrade"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleBeans"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleBossEntrances"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleCows"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleDungeonReward"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleDungeonsEntrances"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleFrogSongRupees"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleGerudoToken"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleGrottosEntrances"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleInteriorsEntrances"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKeyRings"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKeyRingsBottomOfTheWell"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKeyRingsFireTemple"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKeyRingsForestTemple"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKeyRingsGanonsCastle"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKeyRingsGerudoFortress"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKeyRingsGTG"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKeyRingsRandomCount"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKeyRingsShadowTemple"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKeyRingsSpiritTemple"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKeyRingsWaterTemple"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleKokiriSword"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleMerchants"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleOcarinas"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleOverworldEntrances"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleOverworldSpawns"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleOwlDrops"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleScrubs"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleSongs"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleTokens"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleWarpSongs"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleWeirdEgg"),
|
||||
RANDOMIZER_SEED_CVAR("SkipChildStealth"),
|
||||
RANDOMIZER_SEED_CVAR("SkipChildZelda"),
|
||||
RANDOMIZER_SEED_CVAR("SkipEponaRace"),
|
||||
RANDOMIZER_SEED_CVAR("SkipScarecrowsSong"),
|
||||
RANDOMIZER_SEED_CVAR("SkipTowerEscape"),
|
||||
RANDOMIZER_SEED_CVAR("StartingAge"),
|
||||
RANDOMIZER_SEED_CVAR("StartingConsumables"),
|
||||
RANDOMIZER_SEED_CVAR("StartingBoleroOfFire"),
|
||||
RANDOMIZER_SEED_CVAR("StartingDekuShield"),
|
||||
RANDOMIZER_SEED_CVAR("StartingEponasSong"),
|
||||
RANDOMIZER_SEED_CVAR("StartingKokiriSword"),
|
||||
RANDOMIZER_SEED_CVAR("StartingMapsCompasses"),
|
||||
RANDOMIZER_SEED_CVAR("StartingMinuetOfForest"),
|
||||
RANDOMIZER_SEED_CVAR("StartingNocturneOfShadow"),
|
||||
RANDOMIZER_SEED_CVAR("StartingOcarina"),
|
||||
RANDOMIZER_SEED_CVAR("StartingPreludeOfLight"),
|
||||
RANDOMIZER_SEED_CVAR("StartingRequiemOfSpirit"),
|
||||
RANDOMIZER_SEED_CVAR("StartingSariasSong"),
|
||||
RANDOMIZER_SEED_CVAR("StartingSerenadeOfWater"),
|
||||
RANDOMIZER_SEED_CVAR("StartingSkulltulaToken"),
|
||||
RANDOMIZER_SEED_CVAR("StartingSongOfStorms"),
|
||||
RANDOMIZER_SEED_CVAR("StartingSongOfTime"),
|
||||
RANDOMIZER_SEED_CVAR("StartingSunsSong"),
|
||||
RANDOMIZER_SEED_CVAR("StartingZeldasLullaby"),
|
||||
RANDOMIZER_SEED_CVAR("StoneCount"),
|
||||
RANDOMIZER_SEED_CVAR("SunlightArrows"),
|
||||
RANDOMIZER_SEED_CVAR("TokenCount"),
|
||||
RANDOMIZER_SEED_CVAR("WarpSongText"),
|
||||
RANDOMIZER_SEED_CVAR("ZorasFountain"),
|
||||
RANDOMIZER_SEED_CVAR("Shuffle100GSReward"),
|
||||
RANDOMIZER_SEED_CVAR("GregHint"),
|
||||
"gRandoManualSeedEntry",
|
||||
"gRandomizerSettingsEnabled",
|
||||
"gRandomizeTriforceHuntTotalPieces",
|
||||
"gRandomizeTriforceHuntRequiredPieces",
|
||||
"gRandomizeTriforceHunt",
|
||||
"gRandomizeShuffleMasterSword",
|
||||
"gRandomizeSariaHint",
|
||||
RANDOMIZER_SEED_CVAR("TriforceHuntTotalPieces"),
|
||||
RANDOMIZER_SEED_CVAR("TriforceHuntRequiredPieces"),
|
||||
RANDOMIZER_SEED_CVAR("TriforceHunt"),
|
||||
RANDOMIZER_SEED_CVAR("ShuffleMasterSword"),
|
||||
RANDOMIZER_SEED_CVAR("SariaHint"),
|
||||
"gRandomizeRupeeNames",
|
||||
"gRandomizeFrogsHint",
|
||||
RANDOMIZER_SEED_CVAR("FrogsHint"),
|
||||
"gRandoRelevantNavi",
|
||||
"gRandoQuestItemFanfares",
|
||||
};
|
||||
@ -857,15 +857,13 @@ const std::vector<PresetEntry> randomizerPresetEntries = {
|
||||
};
|
||||
|
||||
const std::vector<PresetEntry> spockRacePresetEntries = {
|
||||
PRESET_ENTRY_S32("gRandomizeLogicRules", 0),
|
||||
PRESET_ENTRY_S32("gGameplayStats.RTATiming", 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("LogicRules"), 0),
|
||||
PRESET_ENTRY_S32("gTextSpeed", 5),
|
||||
PRESET_ENTRY_S32("gMweepSpeed", 5),
|
||||
PRESET_ENTRY_S32("gClimbSpeed", 4),
|
||||
PRESET_ENTRY_S32("gFasterBlockPush", 5),
|
||||
PRESET_ENTRY_S32("gFasterHeavyBlockLift", 1),
|
||||
PRESET_ENTRY_S32("gNoForcedNavi", 1),
|
||||
PRESET_ENTRY_S32("gDisableLOD", 1),
|
||||
PRESET_ENTRY_S32("gDisableNaviCallAudio", 1),
|
||||
PRESET_ENTRY_S32("gFastChests", 1),
|
||||
PRESET_ENTRY_S32("gFastDrops", 1),
|
||||
@ -878,22 +876,17 @@ const std::vector<PresetEntry> spockRacePresetEntries = {
|
||||
PRESET_ENTRY_S32("gMarketSneak", 1),
|
||||
PRESET_ENTRY_S32("gInstantPutaway", 1),
|
||||
PRESET_ENTRY_S32("gFastBoomerang", 1),
|
||||
PRESET_ENTRY_S32("gDpadNoDropOcarinaInput", 1),
|
||||
PRESET_ENTRY_S32("gAdultBunnyHood", 1),
|
||||
PRESET_ENTRY_S32("gMMBunnyHood", BUNNY_HOOD_FAST),
|
||||
PRESET_ENTRY_S32("gSeparateArrows", 1),
|
||||
PRESET_ENTRY_S32("gAssignableTunicsAndBoots", 1),
|
||||
PRESET_ENTRY_S32("gEquipmentCanBeRemoved", 1),
|
||||
PRESET_ENTRY_S32("gDayGravePull", 1),
|
||||
PRESET_ENTRY_S32("gDrawLineupTick", 1),
|
||||
PRESET_ENTRY_S32("gNewDrops", 1),
|
||||
PRESET_ENTRY_S32("gCreditsFix", 1),
|
||||
PRESET_ENTRY_S32("gSkipText", 1),
|
||||
PRESET_ENTRY_S32("gSkulltulaFreeze", 1),
|
||||
PRESET_ENTRY_S32("gPauseAnyCursor", 1),
|
||||
PRESET_ENTRY_S32("gHideBuildInfo", 1),
|
||||
PRESET_ENTRY_S32("gSkipLogoTitle", 1),
|
||||
PRESET_ENTRY_S32("gSaveFileID", 4),
|
||||
PRESET_ENTRY_S32("gFastFarores", 1),
|
||||
PRESET_ENTRY_S32("gNoInputForCredits", 1),
|
||||
PRESET_ENTRY_S32("gMaskSelect", 1),
|
||||
@ -906,50 +899,48 @@ const std::vector<PresetEntry> spockRacePresetEntries = {
|
||||
PRESET_ENTRY_S32("gChildMinimumWeightFish", 3),
|
||||
PRESET_ENTRY_S32("gGoronPot", 1),
|
||||
PRESET_ENTRY_S32("gForgeTime", 0),
|
||||
PRESET_ENTRY_S32("gDisableFirstPersonChus", 1),
|
||||
PRESET_ENTRY_S32("gCheatEasyPauseBufferEnabled", 1),
|
||||
PRESET_ENTRY_S32("gDampeAllNight", 1),
|
||||
PRESET_ENTRY_S32("gRandomize10GSHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomize20GSHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomize30GSHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomize40GSHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomize50GSHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeAllLocationsReachable", 0),
|
||||
PRESET_ENTRY_S32("gRandomizeBlueFireArrows", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeBombchusInLogic", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeCompleteMaskQuest", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeCuccosToReturn", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeDampeHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeDoorOfTime", RO_DOOROFTIME_OPEN),
|
||||
PRESET_ENTRY_S32("gRandomizeEnableBombchuDrops", 1),
|
||||
PRESET_ENTRY_CPP_STRING("gRandomizeExcludedLocations", FormatLocations(
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("10GSHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("20GSHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("30GSHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("40GSHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("50GSHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("AllLocationsReachable"), 0),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("BlueFireArrows"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("BombchusInLogic"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("CompleteMaskQuest"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("CuccosToReturn"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("DampeHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("DoorOfTime"), RO_DOOROFTIME_OPEN),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("EnableBombchuDrops"), 1),
|
||||
PRESET_ENTRY_CPP_STRING(RANDOMIZER_SEED_CVAR("ExcludedLocations"), FormatLocations(
|
||||
{ RC_MARKET_10_BIG_POES, RC_KAK_40_GOLD_SKULLTULA_REWARD, RC_KAK_50_GOLD_SKULLTULA_REWARD, RC_ZR_FROGS_OCARINA_GAME })),
|
||||
PRESET_ENTRY_S32("gRandomizeForest", RO_FOREST_OPEN),
|
||||
PRESET_ENTRY_S32("gRandomizeFullWallets", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeGanonTrial", RO_GANONS_TRIALS_SKIP),
|
||||
PRESET_ENTRY_S32("gRandomizeGerudoFortress", RO_GF_FAST),
|
||||
PRESET_ENTRY_S32("gRandomizeGregHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeGsExpectSunsSong", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeKakarikoGate", RO_KAK_GATE_OPEN),
|
||||
PRESET_ENTRY_S32("gRandomizeLacsRewardCount", 5),
|
||||
PRESET_ENTRY_S32("gRandomizeRainbowBridge", RO_BRIDGE_GREG),
|
||||
PRESET_ENTRY_S32("gRandomizeScrubText", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShopsanity", RO_SHOPSANITY_RANDOM),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_LACS_REWARDS),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleKeyRings", RO_KEYRINGS_COUNT),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleKokiriSword", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleOcarinas", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleScrubs", RO_SCRUBS_AFFORDABLE),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipChildStealth", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipChildZelda", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipEponaRace", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipScarecrowsSong", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipTowerEscape", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingConsumables", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingMapsCompasses", RO_DUNGEON_ITEM_LOC_STARTWITH),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingOcarina", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSunlightArrows", 1),
|
||||
PRESET_ENTRY_S32("gRandomizerSettingsEnabled", 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("Forest"), RO_FOREST_OPEN),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("FullWallets"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GanonTrial"), RO_GANONS_TRIALS_SKIP),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GerudoFortress"), RO_GF_FAST),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GregHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GsExpectSunsSong"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("KakarikoGate"), RO_KAK_GATE_OPEN),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("LacsRewardCount"), 5),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("RainbowBridge"), RO_BRIDGE_GREG),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ScrubText"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("Shopsanity"), RO_SHOPSANITY_RANDOM),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_LACS_REWARDS),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleKeyRings"), RO_KEYRINGS_COUNT),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleKokiriSword"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleOcarinas"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleScrubs"), RO_SCRUBS_AFFORDABLE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipChildStealth"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipChildZelda"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipEponaRace"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipScarecrowsSong"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipTowerEscape"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingConsumables"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingMapsCompasses"), RO_DUNGEON_ITEM_LOC_STARTWITH),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingOcarina"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SunlightArrows"), 1),
|
||||
};
|
||||
|
||||
const std::vector<PresetEntry> spockRaceNoLogicPresetEntries = {
|
||||
@ -964,14 +955,8 @@ const std::vector<PresetEntry> spockRaceNoLogicPresetEntries = {
|
||||
PRESET_ENTRY_S32("gCustomizeFishing", 1),
|
||||
PRESET_ENTRY_S32("gDampeAllNight", 1),
|
||||
PRESET_ENTRY_S32("gDayGravePull", 1),
|
||||
PRESET_ENTRY_S32("gDisableFirstPersonChus", 1),
|
||||
PRESET_ENTRY_S32("gDisableLOD", 1),
|
||||
PRESET_ENTRY_S32("gDisableNaviCallAudio", 1),
|
||||
PRESET_ENTRY_S32("gDpadEquips", 1),
|
||||
PRESET_ENTRY_S32("gDpadNoDropOcarinaInput", 1),
|
||||
PRESET_ENTRY_S32("gDpadOcarina", 1),
|
||||
PRESET_ENTRY_S32("gDpadText", 1),
|
||||
PRESET_ENTRY_S32("gDrawLineupTick", 1),
|
||||
PRESET_ENTRY_S32("gEquipmentCanBeRemoved", 1),
|
||||
PRESET_ENTRY_S32("gFastBoomerang", 1),
|
||||
PRESET_ENTRY_S32("gFastChests", 1),
|
||||
@ -982,8 +967,6 @@ const std::vector<PresetEntry> spockRaceNoLogicPresetEntries = {
|
||||
PRESET_ENTRY_S32("gFasterHeavyBlockLift", 1),
|
||||
PRESET_ENTRY_S32("gFishNeverEscape", 1),
|
||||
PRESET_ENTRY_S32("gForgeTime", 0),
|
||||
PRESET_ENTRY_S32("gGameplayStats.RTATiming", 1),
|
||||
PRESET_ENTRY_S32("gGameplayStats.ShowIngameTimer", 1),
|
||||
PRESET_ENTRY_S32("gGoronPot", 1),
|
||||
PRESET_ENTRY_S32("gGuaranteeFishingBite", 1),
|
||||
PRESET_ENTRY_S32("gHideBuildInfo", 1),
|
||||
@ -994,71 +977,61 @@ const std::vector<PresetEntry> spockRaceNoLogicPresetEntries = {
|
||||
PRESET_ENTRY_S32("gMarketSneak", 1),
|
||||
PRESET_ENTRY_S32("gMaskSelect", 1),
|
||||
PRESET_ENTRY_S32("gMweepSpeed", 5),
|
||||
PRESET_ENTRY_S32("gNewDrops", 1),
|
||||
PRESET_ENTRY_S32("gNoForcedNavi", 1),
|
||||
PRESET_ENTRY_S32("gNoInputForCredits", 1),
|
||||
PRESET_ENTRY_S32("gOnFileSelectNameEntry", 0),
|
||||
PRESET_ENTRY_S32("gOpenMenuBar", 1),
|
||||
PRESET_ENTRY_S32("gPauseAnyCursor", 1),
|
||||
PRESET_ENTRY_S32("gRStickOcarina", 1),
|
||||
PRESET_ENTRY_S32("gRandomize10GSHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomize20GSHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomize30GSHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomize40GSHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomize50GSHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeAllLocationsReachable", 0),
|
||||
PRESET_ENTRY_S32("gRandomizeBlueFireArrows", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeBombchusInLogic", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeBossKeysanity", RO_DUNGEON_ITEM_LOC_ANYWHERE),
|
||||
PRESET_ENTRY_S32("gRandomizeCompleteMaskQuest", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeCuccosToReturn", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeDampeHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeDoorOfTime", RO_DOOROFTIME_OPEN),
|
||||
PRESET_ENTRY_S32("gRandomizeEnableBombchuDrops", 1),
|
||||
PRESET_ENTRY_CPP_STRING("gRandomizeExcludedLocations", FormatLocations(
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("10GSHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("20GSHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("30GSHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("40GSHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("50GSHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("AllLocationsReachable"), 0),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("BlueFireArrows"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("BombchusInLogic"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("BossKeysanity"), RO_DUNGEON_ITEM_LOC_ANYWHERE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("CompleteMaskQuest"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("CuccosToReturn"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("DampeHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("DoorOfTime"), RO_DOOROFTIME_OPEN),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("EnableBombchuDrops"), 1),
|
||||
PRESET_ENTRY_CPP_STRING(RANDOMIZER_SEED_CVAR("ExcludedLocations"), FormatLocations(
|
||||
{ RC_MARKET_10_BIG_POES, RC_KAK_40_GOLD_SKULLTULA_REWARD, RC_KAK_50_GOLD_SKULLTULA_REWARD, RC_ZR_FROGS_OCARINA_GAME })),
|
||||
PRESET_ENTRY_S32("gRandomizeForest", RO_FOREST_OPEN),
|
||||
PRESET_ENTRY_S32("gRandomizeFullWallets", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeGanonTrial", RO_GANONS_TRIALS_SKIP),
|
||||
PRESET_ENTRY_S32("gRandomizeGerudoFortress", RO_GF_FAST),
|
||||
PRESET_ENTRY_S32("gRandomizeGerudoKeys", RO_GERUDO_KEYS_ANYWHERE),
|
||||
PRESET_ENTRY_S32("gRandomizeGregHint", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeGsExpectSunsSong", 0),
|
||||
PRESET_ENTRY_S32("gRandomizeKakarikoGate", RO_KAK_GATE_OPEN),
|
||||
PRESET_ENTRY_S32("gRandomizeKeysanity", RO_DUNGEON_ITEM_LOC_ANYWHERE),
|
||||
PRESET_ENTRY_S32("gRandomizeLacsRewardCount", 5),
|
||||
PRESET_ENTRY_S32("gRandomizeLogicRules", RO_LOGIC_NO_LOGIC),
|
||||
PRESET_ENTRY_S32("gRandomizeRainbowBridge", RO_BRIDGE_GREG),
|
||||
PRESET_ENTRY_S32("gRandomizeScrubText", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShopsanity", RO_SHOPSANITY_RANDOM),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleAdultTrade", 0),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleBeans", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_LACS_REWARDS),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleGerudoToken", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleKeyRings", RO_KEYRINGS_COUNT),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleKokiriSword", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleOcarinas", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleScrubs", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleSongs", RO_SONG_SHUFFLE_ANYWHERE),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleTokens", RO_TOKENSANITY_ALL),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipChildStealth", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipChildZelda", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipEponaRace", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipScarecrowsSong", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipTowerEscape", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingConsumables", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingMapsCompasses", RO_DUNGEON_ITEM_LOC_STARTWITH),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingOcarina", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSunlightArrows", 1),
|
||||
PRESET_ENTRY_S32("gRandomizerSettingsEnabled", 1),
|
||||
PRESET_ENTRY_S32("gSaveFileID", 4),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("Forest"), RO_FOREST_OPEN),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("FullWallets"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GanonTrial"), RO_GANONS_TRIALS_SKIP),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GerudoFortress"), RO_GF_FAST),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GerudoKeys"), RO_GERUDO_KEYS_ANYWHERE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GregHint"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GsExpectSunsSong"), 0),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("KakarikoGate"), RO_KAK_GATE_OPEN),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("Keysanity"), RO_DUNGEON_ITEM_LOC_ANYWHERE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("LacsRewardCount"), 5),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("LogicRules"), RO_LOGIC_NO_LOGIC),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("RainbowBridge"), RO_BRIDGE_GREG),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ScrubText"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("Shopsanity"), RO_SHOPSANITY_RANDOM),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleAdultTrade"), 0),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleBeans"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_LACS_REWARDS),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleGerudoToken"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleKeyRings"), RO_KEYRINGS_COUNT),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleKokiriSword"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleOcarinas"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleScrubs"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleSongs"), RO_SONG_SHUFFLE_ANYWHERE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleTokens"), RO_TOKENSANITY_ALL),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipChildStealth"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipChildZelda"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipEponaRace"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipScarecrowsSong"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipTowerEscape"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingConsumables"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingMapsCompasses"), RO_DUNGEON_ITEM_LOC_STARTWITH),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingOcarina"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SunlightArrows"), 1),
|
||||
PRESET_ENTRY_S32("gSeparateArrows", 1),
|
||||
PRESET_ENTRY_S32("gSkipLogoTitle", 1),
|
||||
PRESET_ENTRY_S32("gSkipScarecrow", 1),
|
||||
PRESET_ENTRY_S32("gSkipText", 1),
|
||||
PRESET_ENTRY_S32("gSkulltulaFreeze", 1),
|
||||
PRESET_ENTRY_S32("gTextSpeed", 5),
|
||||
PRESET_ENTRY_S32("gZFightingMode", 0),
|
||||
};
|
||||
|
||||
const std::vector<PresetEntry> s6PresetEntries = {
|
||||
@ -1066,33 +1039,33 @@ const std::vector<PresetEntry> s6PresetEntries = {
|
||||
PRESET_ENTRY_S32("gFastChests", 1),
|
||||
PRESET_ENTRY_S32("gMMBunnyHood", BUNNY_HOOD_FAST),
|
||||
PRESET_ENTRY_S32("gAdultBunnyHood", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeBigPoeTargetCount", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeCuccosToReturn", 4),
|
||||
PRESET_ENTRY_S32("gRandomizeDoorOfTime", RO_DOOROFTIME_OPEN),
|
||||
PRESET_ENTRY_CPP_STRING("gRandomizeExcludedLocations", FormatLocations({ RC_DEKU_THEATER_MASK_OF_TRUTH })),
|
||||
PRESET_ENTRY_S32("gRandomizeForest", RO_FOREST_CLOSED_DEKU),
|
||||
PRESET_ENTRY_S32("gRandomizeGanonTrial", RO_GANONS_TRIALS_SKIP),
|
||||
PRESET_ENTRY_S32("gRandomizeGerudoFortress", RO_GF_FAST),
|
||||
PRESET_ENTRY_S32("gRandomizeIceTraps", RO_ICE_TRAPS_OFF),
|
||||
PRESET_ENTRY_S32("gRandomizeKakarikoGate", RO_KAK_GATE_OPEN),
|
||||
PRESET_ENTRY_S32("gRandomizeMedallionCount", 6),
|
||||
PRESET_ENTRY_S32("gRandomizeMqDungeons", RO_MQ_DUNGEONS_NONE),
|
||||
PRESET_ENTRY_S32("gRandomizeRainbowBridge", RO_BRIDGE_MEDALLIONS),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleAdultTrade", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleDungeonReward", RO_DUNGEON_REWARDS_END_OF_DUNGEON),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_STARTWITH),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleKokiriSword", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleOverworldSpawns", RO_GENERIC_ON),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipChildStealth", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipChildZelda", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipEponaRace", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipTowerEscape", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingAge", RO_AGE_RANDOM),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingConsumables", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingDekuShield", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingMapsCompasses", RO_DUNGEON_ITEM_LOC_STARTWITH),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingOcarina", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeZorasFountain", 0),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("BigPoeTargetCount"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("CuccosToReturn"), 4),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("DoorOfTime"), RO_DOOROFTIME_OPEN),
|
||||
PRESET_ENTRY_CPP_STRING(RANDOMIZER_SEED_CVAR("ExcludedLocations"), FormatLocations({ RC_DEKU_THEATER_MASK_OF_TRUTH })),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("Forest"), RO_FOREST_CLOSED_DEKU),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GanonTrial"), RO_GANONS_TRIALS_SKIP),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GerudoFortress"), RO_GF_FAST),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("IceTraps"), RO_ICE_TRAPS_OFF),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("KakarikoGate"), RO_KAK_GATE_OPEN),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("MedallionCount"), 6),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("MqDungeons"), RO_MQ_DUNGEONS_NONE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("RainbowBridge"), RO_BRIDGE_MEDALLIONS),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleAdultTrade"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleDungeonReward"), RO_DUNGEON_REWARDS_END_OF_DUNGEON),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_STARTWITH),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleKokiriSword"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleOverworldSpawns"), RO_GENERIC_ON),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipChildStealth"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipChildZelda"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipEponaRace"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipTowerEscape"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingAge"), RO_AGE_RANDOM),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingConsumables"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingDekuShield"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingMapsCompasses"), RO_DUNGEON_ITEM_LOC_STARTWITH),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingOcarina"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ZorasFountain"), 0),
|
||||
};
|
||||
|
||||
const std::vector<PresetEntry> hellModePresetEntries = {
|
||||
@ -1100,51 +1073,51 @@ const std::vector<PresetEntry> hellModePresetEntries = {
|
||||
PRESET_ENTRY_S32("gFastChests", 1),
|
||||
PRESET_ENTRY_S32("gMMBunnyHood", BUNNY_HOOD_FAST),
|
||||
PRESET_ENTRY_S32("gAdultBunnyHood", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeBigPoeTargetCount", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeBlueFireArrows", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeBossKeysanity", RO_DUNGEON_ITEM_LOC_ANYWHERE),
|
||||
PRESET_ENTRY_S32("gRandomizeCompleteMaskQuest", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeCuccosToReturn", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeDoorOfTime", RO_DOOROFTIME_OPEN),
|
||||
PRESET_ENTRY_S32("gRandomizeEnableBombchuDrops", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeEnableGlitchCutscenes", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeForest", RO_FOREST_OPEN),
|
||||
PRESET_ENTRY_S32("gRandomizeGanonTrial", RO_GANONS_TRIALS_SET_NUMBER),
|
||||
PRESET_ENTRY_S32("gRandomizeGanonTrialCount", 6),
|
||||
PRESET_ENTRY_S32("gRandomizeGerudoKeys", RO_GERUDO_KEYS_ANYWHERE),
|
||||
PRESET_ENTRY_S32("gRandomizeGsExpectSunsSong", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeIceTraps", RO_ICE_TRAPS_ONSLAUGHT),
|
||||
PRESET_ENTRY_S32("gRandomizeItemPool", RO_ITEM_POOL_MINIMAL),
|
||||
PRESET_ENTRY_S32("gRandomizeKakarikoGate", RO_KAK_GATE_OPEN),
|
||||
PRESET_ENTRY_S32("gRandomizeKeysanity", RO_DUNGEON_ITEM_LOC_ANYWHERE),
|
||||
PRESET_ENTRY_S32("gRandomizeLinksPocket", RO_LINKS_POCKET_NOTHING),
|
||||
PRESET_ENTRY_S32("gRandomizeMqDungeons", RO_MQ_DUNGEONS_RANDOM_NUMBER),
|
||||
PRESET_ENTRY_S32("gRandomizeRainbowBridge", RO_BRIDGE_DUNGEON_REWARDS),
|
||||
PRESET_ENTRY_S32("gRandomizeShopsanity", RO_SHOPSANITY_FOUR_ITEMS),
|
||||
PRESET_ENTRY_S32("gRandomizeShopsanityPrices", RO_SHOPSANITY_PRICE_TYCOON),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleAdultTrade", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleBeans", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleCows", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleDungeonReward", RO_DUNGEON_REWARDS_ANYWHERE),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleFrogSongRupees", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_LACS_DUNGEONS),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleGerudoToken", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleKeyRings", RO_KEYRINGS_RANDOM),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleKokiriSword", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleMasterSword", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleOcarinas", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleScrubs", RO_SCRUBS_RANDOM),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleSongs", RO_SONG_SHUFFLE_ANYWHERE),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleTokens", RO_TOKENSANITY_ALL),
|
||||
PRESET_ENTRY_S32("gRandomizeShuffleWeirdEgg", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipChildStealth", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipEponaRace", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipScarecrowsSong", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeSkipTowerEscape", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingAge", RO_AGE_RANDOM),
|
||||
PRESET_ENTRY_S32("gRandomizeStartingMapsCompasses", RO_DUNGEON_ITEM_LOC_ANYWHERE),
|
||||
PRESET_ENTRY_S32("gRandomizeSunlightArrows", 1),
|
||||
PRESET_ENTRY_S32("gRandomizeZorasFountain", 2),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("BigPoeTargetCount"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("BlueFireArrows"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("BossKeysanity"), RO_DUNGEON_ITEM_LOC_ANYWHERE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("CompleteMaskQuest"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("CuccosToReturn"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("DoorOfTime"), RO_DOOROFTIME_OPEN),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("EnableBombchuDrops"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("EnableGlitchCutscenes"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("Forest"), RO_FOREST_OPEN),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GanonTrial"), RO_GANONS_TRIALS_SET_NUMBER),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GanonTrialCount"), 6),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GerudoKeys"), RO_GERUDO_KEYS_ANYWHERE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("GsExpectSunsSong"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("IceTraps"), RO_ICE_TRAPS_ONSLAUGHT),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ItemPool"), RO_ITEM_POOL_MINIMAL),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("KakarikoGate"), RO_KAK_GATE_OPEN),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("Keysanity"), RO_DUNGEON_ITEM_LOC_ANYWHERE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("LinksPocket"), RO_LINKS_POCKET_NOTHING),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("MqDungeons"), RO_MQ_DUNGEONS_RANDOM_NUMBER),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("RainbowBridge"), RO_BRIDGE_DUNGEON_REWARDS),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("Shopsanity"), RO_SHOPSANITY_FOUR_ITEMS),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShopsanityPrices"), RO_SHOPSANITY_PRICE_TYCOON),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleAdultTrade"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleBeans"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleCows"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleDungeonReward"), RO_DUNGEON_REWARDS_ANYWHERE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleFrogSongRupees"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_LACS_DUNGEONS),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleGerudoToken"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleKeyRings"), RO_KEYRINGS_RANDOM),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleKokiriSword"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleMasterSword"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleOcarinas"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleScrubs"), RO_SCRUBS_RANDOM),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleSongs"), RO_SONG_SHUFFLE_ANYWHERE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleTokens"), RO_TOKENSANITY_ALL),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ShuffleWeirdEgg"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipChildStealth"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipEponaRace"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipScarecrowsSong"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SkipTowerEscape"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingAge"), RO_AGE_RANDOM),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("StartingMapsCompasses"), RO_DUNGEON_ITEM_LOC_ANYWHERE),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("SunlightArrows"), 1),
|
||||
PRESET_ENTRY_S32(RANDOMIZER_SEED_CVAR("ZorasFountain"), 2),
|
||||
};
|
||||
|
||||
typedef struct PresetDefinition {
|
||||
|
@ -10,6 +10,7 @@
|
||||
#include "spoiler_log.hpp"
|
||||
#include "soh/Enhancements/randomizer/randomizerTypes.h"
|
||||
#include "variables.h"
|
||||
#include "soh\OTRGlobals.h"
|
||||
|
||||
namespace Playthrough {
|
||||
|
||||
@ -41,7 +42,7 @@ int Playthrough_Init(uint32_t seed, std::unordered_map<RandomizerSettingKey, uin
|
||||
}
|
||||
}
|
||||
|
||||
if (CVarGetInteger("gRandomizerDontGenerateSpoiler", 0)) {
|
||||
if (CVarGetInteger(RANDOMIZER_SEED_CVAR("DontGenerateSpoiler"), 0)) {
|
||||
settingsStr += (char*)gBuildVersion;
|
||||
}
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -3,6 +3,7 @@
|
||||
#include <string>
|
||||
#include <libultraship/bridge.h>
|
||||
#include "z64.h"
|
||||
#include "soh\OTRGlobals.h"
|
||||
|
||||
// RandomizerCheck, RCVORMQ, RCTYPE, RCAREA, ActorId, SceneId, ActorParams, OG ItemID, "Short name", "Spoiler name", vanillaCompletion
|
||||
std::map<RandomizerCheck, RandomizerCheckObject> rcObjects = {
|
||||
@ -884,57 +885,57 @@ void RandomizerCheckObjects::UpdateImGuiVisibility() {
|
||||
(!RandomizerCheckObjects::AreaIsDungeon(locationIt.rcArea) ||
|
||||
locationIt.vOrMQ == RCVORMQ_BOTH ||
|
||||
locationIt.vOrMQ == RCVORMQ_MQ &&
|
||||
((CVarGetInteger("gRandomizeMqDungeons", RO_MQ_DUNGEONS_NONE) == RO_MQ_DUNGEONS_SET_NUMBER && (CVarGetInteger("gRandomizeMqDungeonCount", 12) > 0) || // at least one MQ dungeon
|
||||
CVarGetInteger("gRandomizeMqDungeons", RO_MQ_DUNGEONS_NONE) == RO_MQ_DUNGEONS_RANDOM_NUMBER)) ||
|
||||
((CVarGetInteger(RANDOMIZER_SEED_CVAR("MqDungeons"), RO_MQ_DUNGEONS_NONE) == RO_MQ_DUNGEONS_SET_NUMBER && (CVarGetInteger(RANDOMIZER_SEED_CVAR("MqDungeonCount"), 12) > 0) || // at least one MQ dungeon
|
||||
CVarGetInteger(RANDOMIZER_SEED_CVAR("MqDungeons"), RO_MQ_DUNGEONS_NONE) == RO_MQ_DUNGEONS_RANDOM_NUMBER)) ||
|
||||
locationIt.vOrMQ == RCVORMQ_VANILLA &&
|
||||
(CVarGetInteger("gRandomizeMqDungeons", RO_MQ_DUNGEONS_NONE) != RO_MQ_DUNGEONS_SET_NUMBER || CVarGetInteger("gRandomizeMqDungeonCount", 12) < 12) // at least one vanilla dungeon
|
||||
(CVarGetInteger(RANDOMIZER_SEED_CVAR("MqDungeons"), RO_MQ_DUNGEONS_NONE) != RO_MQ_DUNGEONS_SET_NUMBER || CVarGetInteger(RANDOMIZER_SEED_CVAR("MqDungeonCount"), 12) < 12) // at least one vanilla dungeon
|
||||
) &&
|
||||
(locationIt.rcType != RCTYPE_SHOP || CVarGetInteger("gRandomizeShopsanity", RO_SHOPSANITY_OFF) > RO_SHOPSANITY_ZERO_ITEMS) &&
|
||||
(locationIt.rcType != RCTYPE_SCRUB || CVarGetInteger("gRandomizeShuffleScrubs", RO_SCRUBS_OFF) != RO_SCRUBS_OFF ||
|
||||
(locationIt.rcType != RCTYPE_SHOP || CVarGetInteger(RANDOMIZER_SEED_CVAR("Shopsanity"), RO_SHOPSANITY_OFF) > RO_SHOPSANITY_ZERO_ITEMS) &&
|
||||
(locationIt.rcType != RCTYPE_SCRUB || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleScrubs"), RO_SCRUBS_OFF) != RO_SCRUBS_OFF ||
|
||||
locationIt.rc == RC_HF_DEKU_SCRUB_GROTTO || locationIt.rc == RC_LW_DEKU_SCRUB_GROTTO_FRONT || locationIt.rc == RC_LW_DEKU_SCRUB_NEAR_BRIDGE) && // The 3 scrubs that are always randomized
|
||||
(locationIt.rcType != RCTYPE_MERCHANT || CVarGetInteger("gRandomizeShuffleMerchants", RO_SHUFFLE_MERCHANTS_OFF) != RO_SHUFFLE_MERCHANTS_OFF) &&
|
||||
(locationIt.rcType != RCTYPE_SONG_LOCATION || CVarGetInteger("gRandomizeShuffleSongs", RO_SONG_SHUFFLE_SONG_LOCATIONS) != RO_SONG_SHUFFLE_SONG_LOCATIONS) && // song locations
|
||||
(locationIt.rcType != RCTYPE_MERCHANT || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleMerchants"), RO_SHUFFLE_MERCHANTS_OFF) != RO_SHUFFLE_MERCHANTS_OFF) &&
|
||||
(locationIt.rcType != RCTYPE_SONG_LOCATION || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleSongs"), RO_SONG_SHUFFLE_SONG_LOCATIONS) != RO_SONG_SHUFFLE_SONG_LOCATIONS) && // song locations
|
||||
((locationIt.rcType != RCTYPE_BOSS_HEART_OR_OTHER_REWARD && locationIt.rc != RC_SONG_FROM_IMPA && locationIt.rc != RC_SHEIK_IN_ICE_CAVERN) ||
|
||||
CVarGetInteger("gRandomizeShuffleSongs", RO_SONG_SHUFFLE_SONG_LOCATIONS) != RO_SONG_SHUFFLE_DUNGEON_REWARDS) && // song dungeon rewards
|
||||
(locationIt.rcType != RCTYPE_DUNGEON_REWARD || CVarGetInteger("gRandomizeShuffleDungeonReward", RO_DUNGEON_REWARDS_END_OF_DUNGEON) != RO_DUNGEON_REWARDS_END_OF_DUNGEON) && // dungeon rewards end of dungeons
|
||||
(locationIt.rcType != RCTYPE_OCARINA || CVarGetInteger("gRandomizeShuffleOcarinas", RO_GENERIC_NO)) && // ocarina locations
|
||||
CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleSongs"), RO_SONG_SHUFFLE_SONG_LOCATIONS) != RO_SONG_SHUFFLE_DUNGEON_REWARDS) && // song dungeon rewards
|
||||
(locationIt.rcType != RCTYPE_DUNGEON_REWARD || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleDungeonReward"), RO_DUNGEON_REWARDS_END_OF_DUNGEON) != RO_DUNGEON_REWARDS_END_OF_DUNGEON) && // dungeon rewards end of dungeons
|
||||
(locationIt.rcType != RCTYPE_OCARINA || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleOcarinas"), RO_GENERIC_NO)) && // ocarina locations
|
||||
(locationIt.rc != RC_HC_ZELDAS_LETTER) && // don't show until we support shuffling letter
|
||||
(locationIt.rcType != RCTYPE_GOSSIP_STONE) && // don't show gossip stones (maybe gossipsanity will be a thing eventually?)
|
||||
(locationIt.rcType != RCTYPE_LINKS_POCKET) && // links pocket can be set to nothing if needed
|
||||
(locationIt.rcType != RCTYPE_CHEST_GAME) && // don't show non final reward chest game checks until we support shuffling them
|
||||
(locationIt.rcType != RCTYPE_SKULL_TOKEN ||
|
||||
(CVarGetInteger("gRandomizeShuffleTokens", RO_TOKENSANITY_OFF) == RO_TOKENSANITY_ALL) ||
|
||||
((CVarGetInteger("gRandomizeShuffleTokens", RO_TOKENSANITY_OFF) == RO_TOKENSANITY_OVERWORLD) && RandomizerCheckObjects::AreaIsOverworld(locationIt.rcArea)) ||
|
||||
((CVarGetInteger("gRandomizeShuffleTokens", RO_TOKENSANITY_OFF) == RO_TOKENSANITY_DUNGEONS) && RandomizerCheckObjects::AreaIsDungeon(locationIt.rcArea))
|
||||
(CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleTokens"), RO_TOKENSANITY_OFF) == RO_TOKENSANITY_ALL) ||
|
||||
((CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleTokens"), RO_TOKENSANITY_OFF) == RO_TOKENSANITY_OVERWORLD) && RandomizerCheckObjects::AreaIsOverworld(locationIt.rcArea)) ||
|
||||
((CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleTokens"), RO_TOKENSANITY_OFF) == RO_TOKENSANITY_DUNGEONS) && RandomizerCheckObjects::AreaIsDungeon(locationIt.rcArea))
|
||||
) &&
|
||||
(locationIt.rcType != RCTYPE_COW || CVarGetInteger("gRandomizeShuffleCows", RO_GENERIC_NO)) &&
|
||||
(locationIt.rcType != RCTYPE_ADULT_TRADE || CVarGetInteger("gRandomizeShuffleAdultTrade", RO_GENERIC_NO)) &&
|
||||
(locationIt.rc != RC_KF_KOKIRI_SWORD_CHEST || CVarGetInteger("gRandomizeShuffleKokiriSword", RO_GENERIC_NO)) &&
|
||||
(locationIt.rc != RC_ZR_MAGIC_BEAN_SALESMAN || CVarGetInteger("gRandomizeShuffleBeans", RO_GENERIC_NO)) &&
|
||||
(locationIt.rc != RC_HC_MALON_EGG || CVarGetInteger("gRandomizeShuffleWeirdEgg", RO_GENERIC_NO)) &&
|
||||
(locationIt.rcType != RCTYPE_FROG_SONG || CVarGetInteger("gRandomizeShuffleFrogSongRupees", RO_GENERIC_NO)) &&
|
||||
(locationIt.rcType != RCTYPE_MAP_COMPASS || CVarGetInteger("gRandomizeStartingMapsCompasses", RO_DUNGEON_ITEM_LOC_OWN_DUNGEON) != RO_DUNGEON_ITEM_LOC_VANILLA) &&
|
||||
(locationIt.rcType != RCTYPE_SMALL_KEY || CVarGetInteger("gRandomizeKeysanity", RO_DUNGEON_ITEM_LOC_OWN_DUNGEON) != RO_DUNGEON_ITEM_LOC_VANILLA) &&
|
||||
(locationIt.rcType != RCTYPE_BOSS_KEY || CVarGetInteger("gRandomizeBossKeysanity", RO_DUNGEON_ITEM_LOC_OWN_DUNGEON) != RO_DUNGEON_ITEM_LOC_VANILLA) &&
|
||||
(locationIt.rcType != RCTYPE_GANON_BOSS_KEY || CVarGetInteger("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_VANILLA) && // vanilla ganon boss key
|
||||
(locationIt.rcType != RCTYPE_COW || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleCows"), RO_GENERIC_NO)) &&
|
||||
(locationIt.rcType != RCTYPE_ADULT_TRADE || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleAdultTrade"), RO_GENERIC_NO)) &&
|
||||
(locationIt.rc != RC_KF_KOKIRI_SWORD_CHEST || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleKokiriSword"), RO_GENERIC_NO)) &&
|
||||
(locationIt.rc != RC_ZR_MAGIC_BEAN_SALESMAN || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleBeans"), RO_GENERIC_NO)) &&
|
||||
(locationIt.rc != RC_HC_MALON_EGG || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleWeirdEgg"), RO_GENERIC_NO)) &&
|
||||
(locationIt.rcType != RCTYPE_FROG_SONG || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleFrogSongRupees"), RO_GENERIC_NO)) &&
|
||||
(locationIt.rcType != RCTYPE_MAP_COMPASS || CVarGetInteger(RANDOMIZER_SEED_CVAR("StartingMapsCompasses"), RO_DUNGEON_ITEM_LOC_OWN_DUNGEON) != RO_DUNGEON_ITEM_LOC_VANILLA) &&
|
||||
(locationIt.rcType != RCTYPE_SMALL_KEY || CVarGetInteger(RANDOMIZER_SEED_CVAR("Keysanity"), RO_DUNGEON_ITEM_LOC_OWN_DUNGEON) != RO_DUNGEON_ITEM_LOC_VANILLA) &&
|
||||
(locationIt.rcType != RCTYPE_BOSS_KEY || CVarGetInteger(RANDOMIZER_SEED_CVAR("BossKeysanity"), RO_DUNGEON_ITEM_LOC_OWN_DUNGEON) != RO_DUNGEON_ITEM_LOC_VANILLA) &&
|
||||
(locationIt.rcType != RCTYPE_GANON_BOSS_KEY || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_VANILLA) && // vanilla ganon boss key
|
||||
(locationIt.rc != RC_TOT_LIGHT_ARROWS_CUTSCENE ||
|
||||
(CVarGetInteger("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_DUNGEONS &&
|
||||
CVarGetInteger("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_MEDALLIONS &&
|
||||
CVarGetInteger("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_REWARDS &&
|
||||
CVarGetInteger("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_STONES &&
|
||||
CVarGetInteger("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_TOKENS &&
|
||||
CVarGetInteger("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_VANILLA)
|
||||
(CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_DUNGEONS &&
|
||||
CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_MEDALLIONS &&
|
||||
CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_REWARDS &&
|
||||
CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_STONES &&
|
||||
CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_TOKENS &&
|
||||
CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_LACS_VANILLA)
|
||||
) && // LACS ganon boss key
|
||||
(locationIt.rc != RC_KAK_100_GOLD_SKULLTULA_REWARD || CVarGetInteger("gRandomizeShuffleGanonBossKey", RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_KAK_TOKENS) && // 100 skull reward ganon boss key
|
||||
(locationIt.rc != RC_KAK_100_GOLD_SKULLTULA_REWARD || CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleGanonBossKey"), RO_GANON_BOSS_KEY_VANILLA) != RO_GANON_BOSS_KEY_KAK_TOKENS) && // 100 skull reward ganon boss key
|
||||
(locationIt.rcType != RCTYPE_GF_KEY && locationIt.rc != RC_GF_GERUDO_MEMBERSHIP_CARD ||
|
||||
(CVarGetInteger("gRandomizeGerudoFortress", RO_GF_NORMAL) == RO_GF_OPEN && locationIt.rcType != RCTYPE_GF_KEY && locationIt.rc != RC_GF_GERUDO_MEMBERSHIP_CARD) ||
|
||||
(CVarGetInteger("gRandomizeGerudoFortress", RO_GF_NORMAL) == RO_GF_FAST &&
|
||||
((locationIt.rc == RC_GF_GERUDO_MEMBERSHIP_CARD && CVarGetInteger("gRandomizeShuffleGerudoToken", RO_GENERIC_NO) == RO_GENERIC_YES) ||
|
||||
(locationIt.rc == RC_GF_NORTH_F1_CARPENTER && CVarGetInteger("gRandomizeGerudoKeys", RO_GERUDO_KEYS_VANILLA) != RO_GERUDO_KEYS_VANILLA))
|
||||
(CVarGetInteger(RANDOMIZER_SEED_CVAR("GerudoFortress"), RO_GF_NORMAL) == RO_GF_OPEN && locationIt.rcType != RCTYPE_GF_KEY && locationIt.rc != RC_GF_GERUDO_MEMBERSHIP_CARD) ||
|
||||
(CVarGetInteger(RANDOMIZER_SEED_CVAR("GerudoFortress"), RO_GF_NORMAL) == RO_GF_FAST &&
|
||||
((locationIt.rc == RC_GF_GERUDO_MEMBERSHIP_CARD && CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleGerudoToken"), RO_GENERIC_NO) == RO_GENERIC_YES) ||
|
||||
(locationIt.rc == RC_GF_NORTH_F1_CARPENTER && CVarGetInteger(RANDOMIZER_SEED_CVAR("GerudoKeys"), RO_GERUDO_KEYS_VANILLA) != RO_GERUDO_KEYS_VANILLA))
|
||||
) ||
|
||||
(CVarGetInteger("gRandomizeGerudoFortress", RO_GF_NORMAL) == RO_GF_NORMAL &&
|
||||
((locationIt.rc == RC_GF_GERUDO_MEMBERSHIP_CARD && CVarGetInteger("gRandomizeShuffleGerudoToken", RO_GENERIC_NO) == RO_GENERIC_YES) ||
|
||||
(locationIt.rcType == RCTYPE_GF_KEY && CVarGetInteger("gRandomizeGerudoKeys", RO_GERUDO_KEYS_VANILLA) != RO_GERUDO_KEYS_VANILLA))
|
||||
(CVarGetInteger(RANDOMIZER_SEED_CVAR("GerudoFortress"), RO_GF_NORMAL) == RO_GF_NORMAL &&
|
||||
((locationIt.rc == RC_GF_GERUDO_MEMBERSHIP_CARD && CVarGetInteger(RANDOMIZER_SEED_CVAR("ShuffleGerudoToken"), RO_GENERIC_NO) == RO_GENERIC_YES) ||
|
||||
(locationIt.rcType == RCTYPE_GF_KEY && CVarGetInteger(RANDOMIZER_SEED_CVAR("GerudoKeys"), RO_GERUDO_KEYS_VANILLA) != RO_GERUDO_KEYS_VANILLA))
|
||||
)
|
||||
)
|
||||
);
|
||||
|
@ -65,6 +65,22 @@ private:
|
||||
uint32_t IsGameMasterQuest();
|
||||
#endif
|
||||
|
||||
#define RANDOMIZER_CVAR(var) "gRandoEnhancements." var
|
||||
#define RANDOMIZER_SEED_CVAR(var) "gRandoSettings." var
|
||||
#define COSMETIC_CVAR(var) "gCosmetics." var
|
||||
#define AUDIO_CVAR(var) "gAudioEditor." var
|
||||
#define REPL_SEQ_CVAR(var) AUDIO_CVAR("ReplacedSequences." var)
|
||||
#define EXCL_SEQ_CVAR(var) AUDIO_CVAR("Excluded." var)
|
||||
#define CHEAT_CVAR(var) "gCheats." var
|
||||
#define ENHANCEMENT_CVAR(var) "gEnhancements." var
|
||||
#define SETTING_CVAR(var) "gSettings." var
|
||||
#define WINDOW_CVAR(var) "gOpenWindows." var
|
||||
#define TRACKER_CVAR(var) "gTrackers." var
|
||||
#define ITEM_TRACKER_CVAR(var) TRACKER_CVAR("ItemTracker." var)
|
||||
#define CHECK_TRACKER_CVAR(var) TRACKER_CVAR("CheckTracker." var)
|
||||
#define ENTRANCE_TRACKER_CVAR(var) TRACKER_CVAR("EntranceTracker." var)
|
||||
#define DEV_TOOLS_CVAR(var) "gDeveloperTools."
|
||||
|
||||
#ifndef __cplusplus
|
||||
void InitOTR(void);
|
||||
void DeinitOTR(void);
|
||||
|
@ -1025,7 +1025,7 @@ void FileChoose_UpdateRandomizer() {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!SpoilerFileExists(CVarGetString("gSpoilerLog", "")) && !CVarGetInteger("gRandomizerDontGenerateSpoiler", 0)) {
|
||||
if (!SpoilerFileExists(CVarGetString("gSpoilerLog", "")) && !CVarGetInteger(RANDOMIZER_SEED_CVAR("DontGenerateSpoiler"), 0)) {
|
||||
CVarSetString("gSpoilerLog", "");
|
||||
fileSelectSpoilerFileLoaded = false;
|
||||
}
|
||||
@ -1053,7 +1053,7 @@ void FileChoose_UpdateRandomizer() {
|
||||
Randomizer_LoadEntranceOverrides(fileLoc, silent);
|
||||
fileSelectSpoilerFileLoaded = true;
|
||||
|
||||
if (SpoilerFileExists(CVarGetString("gSpoilerLog", "")) && CVarGetInteger("gRandomizerDontGenerateSpoiler", 0)) {
|
||||
if (SpoilerFileExists(CVarGetString("gSpoilerLog", "")) && CVarGetInteger(RANDOMIZER_SEED_CVAR("DontGenerateSpoiler"), 0)) {
|
||||
remove(fileLoc);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user