From 92dd3819896fa5f874d102c6b2ff7fbc049caa3a Mon Sep 17 00:00:00 2001 From: Brent Kerby Date: Thu, 2 Apr 2026 07:11:35 -0600 Subject: [PATCH 1/3] Wrecked Ship pt. 1 (Bowling Alley, etc.): blue suit logic --- region/wreckedship/main/Attic.json | 349 ++++++++++++++------- region/wreckedship/main/Basement.json | 140 ++++++--- region/wreckedship/main/Bowling Alley.json | 237 +++++++++++--- 3 files changed, 530 insertions(+), 196 deletions(-) diff --git a/region/wreckedship/main/Attic.json b/region/wreckedship/main/Attic.json index 2e76b093f..b48ee5600 100644 --- a/region/wreckedship/main/Attic.json +++ b/region/wreckedship/main/Attic.json @@ -155,7 +155,8 @@ "openEnd": 1 } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 2, @@ -173,6 +174,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Freeze the Atomic in position to extend the runway. Maintain a half-tile gap between the Atomic and the runway to extend it as far as possible.", "One easy method to align the Atomic is to lure the it high then stand under it to freeze it." @@ -195,6 +197,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": [ "Max extra run speed $2.C.", "This strat is included for completeness, though it apparently doesn't have any applications." @@ -213,7 +216,8 @@ "exitCondition": { "leaveShinecharged": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 4, @@ -228,7 +232,8 @@ "exitCondition": { "leaveShinecharged": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 5, @@ -246,7 +251,8 @@ "minExtraRunSpeed": "$0.8" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 6, @@ -264,7 +270,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 7, @@ -284,6 +291,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "note": "With the power on, blue speed can be used to pass through the atomic cage on the floor while continuing to gain speed." }, { @@ -305,7 +313,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 9, @@ -327,7 +336,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 10, @@ -350,7 +360,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 11, @@ -372,7 +383,8 @@ "movementType": "uncontrolled" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 12, @@ -395,7 +407,8 @@ "movementType": "controlled" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 13, @@ -419,7 +432,8 @@ "movementType": "controlled" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 14, @@ -436,7 +450,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 15, @@ -454,7 +469,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 16, @@ -468,12 +484,13 @@ "exitCondition": { "leaveWithTemporaryBlue": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 17, "link": [1, 1], - "name": "Door Runway, Shinespark Left", + "name": "Leave With Spark", "requires": [ {"obstaclesCleared": ["A"]}, {"canShineCharge": {"usedTiles": 35, "openEnd": 1}}, @@ -483,7 +500,8 @@ "exitCondition": { "leaveWithSpark": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 57, @@ -498,7 +516,8 @@ "canSpikeSuit", {"shinespark": {"frames": 2, "excessFrames": 2}} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 18, @@ -509,29 +528,38 @@ {"resetRoom": {"nodes": [1]}}, {"or": [ {"and": [ - "ScrewAttack", - {"cycleFrames": 420} - ]}, - {"and": [ - "Plasma", - {"cycleFrames": 440} - ]}, - {"and": [ - "canDodgeWhileShooting", + "canDash", {"or": [ - "Wave", - "Spazer" - ]}, - {"cycleFrames": 840} + {"and": [ + "ScrewAttack", + {"cycleFrames": 420} + ]}, + {"and": [ + "Plasma", + {"cycleFrames": 440} + ]}, + {"and": [ + "canDodgeWhileShooting", + {"or": [ + "Wave", + "Spazer" + ]}, + {"cycleFrames": 840} + ]}, + {"and": [ + "canTrickyDodgeEnemies", + "Ice", + {"cycleFrames": 1200} + ]}, + {"and": [ + "canTrickyDodgeEnemies", + {"cycleFrames": 1740} + ]} + ]} ]}, {"and": [ - "canTrickyDodgeEnemies", - "Ice", - {"cycleFrames": 1200} - ]}, - {"and": [ - "canTrickyDodgeEnemies", - {"cycleFrames": 1740} + {"haveBlueSuit": {}}, + {"cycleFrames": 630} ]} ]} ], @@ -540,7 +568,8 @@ {"enemy": "Kihunter (yellow)", "count": 1}, {"enemy": "Atomic", "count": 2} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 19, @@ -582,11 +611,16 @@ "canFarmWhileShooting", {"cycleFrames": 1980} ]} + ]}, + {"or": [ + "canDash", + {"cycleFrames": 380} ]} ], "resetsObstacles": ["A"], "farmCycleDrops": [{"enemy": "Trapped Atomic", "count": 3}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 59, @@ -597,11 +631,16 @@ "canRiskPermanentLossOfAccess", {"resetRoom": {"nodes": [1, 2, 3]}}, "h_useMorphBombs", - {"cycleFrames": 2300} + {"cycleFrames": 2300}, + {"or": [ + "canDash", + {"cycleFrames": 380} + ]} ], "resetsObstacles": ["A"], "farmCycleDrops": [{"enemy": "Trapped Atomic", "count": 4}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 60, @@ -619,7 +658,8 @@ ], "resetsObstacles": ["A"], "farmCycleDrops": [{"enemy": "Trapped Atomic", "count": 8}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 61, @@ -630,6 +670,7 @@ "canRiskPermanentLossOfAccess", {"or": [ "ScrewAttack", + {"haveBlueSuit": {}}, {"and": [ "Plasma", {"cycleFrames": 60} @@ -657,7 +698,8 @@ {"cycleFrames": 480} ], "farmCycleDrops": [{"enemy": "Covern", "count": 1}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 20, @@ -668,6 +710,7 @@ "h_CrystalFlash" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "If the leftmost Kihunter is still alive, lay the Power Bomb with it on screen, to kill it before the Crystal Flash refill begins." }, { @@ -678,7 +721,8 @@ "exitCondition": { "leaveWithGModeSetup": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 22, @@ -695,6 +739,7 @@ ], "gModeRegainMobility": {}, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": "The Covern will do more damage than the Atomic, so there is no canRiskPermanentLossOfAccess." }, { @@ -706,7 +751,8 @@ "canRiskPermanentLossOfAccess" ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 24, @@ -723,11 +769,13 @@ "enemies": [["Kihunter (yellow)"]], "explicitWeapons": ["Missile", "Super", "ScrewAttack", "Plasma", "Ice+Wave+Spazer"] }}, + {"haveBlueSuit": {}}, {"enemyDamage": {"enemy": "Kihunter (yellow)", "type": "contact", "hits": 1}} ]} ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 67, @@ -780,7 +828,8 @@ }, "requires": [], "bypassesDoorShell": "yes", - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 26, @@ -798,7 +847,8 @@ } }, "bypassesDoorShell": "yes", - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 27, @@ -816,7 +866,8 @@ } }, "bypassesDoorShell": "yes", - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 28, @@ -827,7 +878,8 @@ "canRiskPermanentLossOfAccess" ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 29, @@ -848,7 +900,8 @@ ]} ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 31, @@ -863,6 +916,7 @@ ], "bypassesDoorShell": "yes", "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Clear out the Kihunters near the door, and freeze two Atomics to set up a moonfall between them, and aim down.", "After gaining enough speed, press forward to fall down and clip past the door shell below.", @@ -881,7 +935,8 @@ "exitCondition": { "leaveShinecharged": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 33, @@ -895,7 +950,8 @@ "exitCondition": { "leaveShinecharged": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 34, @@ -909,7 +965,8 @@ "exitCondition": { "leaveShinecharged": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 35, @@ -923,6 +980,7 @@ {"shinespark": {"frames": 6, "excessFrames": 6}} ], "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": "This strat is not useful in-room, but can satisfy a strat in the room before with an exit shinespark." }, { @@ -940,7 +998,8 @@ "direction": "any" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 37, @@ -955,7 +1014,8 @@ "direction": "left" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 38, @@ -970,7 +1030,8 @@ "direction": "left" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 62, @@ -981,35 +1042,44 @@ {"resetRoom": {"nodes": [2]}}, {"or": [ {"and": [ - "ScrewAttack", - {"cycleFrames": 520} - ]}, - {"and": [ - "canDodgeWhileShooting", - "Plasma", - {"cycleFrames": 800} - ]}, - {"and": [ - "canDodgeWhileShooting", - "Wave", - "Spazer", - "Ice", - {"cycleFrames": 930} - ]}, - {"and": [ - "canTrickyDodgeEnemies", + "canDash", {"or": [ - "Wave", - "Spazer", - "Ice" - ]}, - "h_complexToCarryFlashSuit", - {"cycleFrames": 1400} + {"and": [ + "ScrewAttack", + {"cycleFrames": 520} + ]}, + {"and": [ + "canDodgeWhileShooting", + "Plasma", + {"cycleFrames": 800} + ]}, + {"and": [ + "canDodgeWhileShooting", + "Wave", + "Spazer", + "Ice", + {"cycleFrames": 930} + ]}, + {"and": [ + "canTrickyDodgeEnemies", + {"or": [ + "Wave", + "Spazer", + "Ice" + ]}, + "h_complexToCarryFlashSuit", + {"cycleFrames": 1400} + ]}, + {"and": [ + "canInsaneJump", + "h_trickyToCarryFlashSuit", + {"cycleFrames": 2600} + ]} + ]} ]}, {"and": [ - "canInsaneJump", - "h_trickyToCarryFlashSuit", - {"cycleFrames": 2600} + {"haveBlueSuit": {}}, + {"cycleFrames": 520} ]} ]} ], @@ -1018,7 +1088,8 @@ {"enemy": "Kihunter (yellow)", "count": 3}, {"enemy": "Atomic", "count": 2} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 63, @@ -1068,11 +1139,16 @@ "canFarmWhileShooting", {"cycleFrames": 1980} ]} + ]}, + {"or": [ + "canDash", + {"cycleFrames": 200} ]} ], "resetsObstacles": ["A"], "farmCycleDrops": [{"enemy": "Trapped Atomic", "count": 3}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 39, @@ -1082,7 +1158,8 @@ {"obstaclesCleared": ["A"]}, "h_CrystalFlash" ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 40, @@ -1100,6 +1177,7 @@ ], "gModeRegainMobility": {}, "flashSuitChecked": true, + "blueSuitChecked": true, "note": "Use a Covern or Kihunter. A flying Kihunter takes about 25 seconds to get to the door.", "devNote": "The Kihunter will do more damage than the Covern, so whether Phantoon is dead or not, that strat will be accurate or conservative." }, @@ -1162,6 +1240,7 @@ "name": "G-Mode Setup - Get Hit by Thawing Atomic", "requires": [ "f_DefeatedPhantoon", + "canDash", "canWallIceClip", "canDownwardGModeSetup" ], @@ -1169,6 +1248,7 @@ "leaveWithGModeSetup": {} }, "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Run from the ledge into the open doorway while hitting the frozen Atomic and the door transition simultaneously, just as the Atomic thaws and touches Samus during the transition.", "Note that this requires a precise freeze (3 pixel window), precise thaw timing, and a 50% success rate due to collision oscillation.", @@ -1191,7 +1271,8 @@ "leaveShinecharged": {} }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 42, @@ -1202,7 +1283,8 @@ "canRiskPermanentLossOfAccess" ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 43, @@ -1219,11 +1301,13 @@ "enemies": [["Kihunter (yellow)"], ["Kihunter (yellow)"]], "explicitWeapons": ["Missile", "Super", "ScrewAttack", "Plasma", "Ice+Wave+Spazer"] }}, + {"haveBlueSuit": {}}, {"enemyDamage": {"enemy": "Kihunter (yellow)", "type": "contact", "hits": 1}} ]} ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 66, @@ -1242,7 +1326,8 @@ "canOffScreenMovement" ], "unlocksDoors": [{"types": ["ammo"], "requires": []}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 44, @@ -1255,7 +1340,8 @@ }, "requires": [], "bypassesDoorShell": "yes", - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 45, @@ -1273,7 +1359,8 @@ } }, "bypassesDoorShell": "yes", - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 46, @@ -1291,7 +1378,8 @@ } }, "bypassesDoorShell": "yes", - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 47, @@ -1302,7 +1390,8 @@ "canRiskPermanentLossOfAccess" ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 48, @@ -1319,11 +1408,13 @@ "enemies": [["Kihunter (yellow)"]], "explicitWeapons": ["Missile", "Super", "ScrewAttack", "Plasma", "Ice+Wave+Spazer"] }}, + {"haveBlueSuit": {}}, {"enemyDamage": {"enemy": "Kihunter (yellow)", "type": "contact", "hits": 1}} ]} ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 69, @@ -1377,7 +1468,8 @@ "steepUpTiles": 4 } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 50, @@ -1395,7 +1487,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 51, @@ -1417,6 +1510,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": [ "A couple extra tiles could be used by taking a hit and using i-frames from the atomic cage on the floor, if Phantoon is defeated;", "with a 12-tile shortcharge to gain invulnerability from blue speed, even more runway could be used." @@ -1437,7 +1531,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 64, @@ -1448,25 +1543,34 @@ {"resetRoom": {"nodes": [3]}}, {"or": [ {"and": [ - "ScrewAttack", - {"cycleFrames": 400} - ]}, - {"and": [ - "Plasma", - {"cycleFrames": 520} - ]}, - {"and": [ - "canDodgeWhileShooting", + "canDash", {"or": [ - "Wave", - "Spazer" - ]}, - {"cycleFrames": 840} + {"and": [ + "ScrewAttack", + {"cycleFrames": 400} + ]}, + {"and": [ + "Plasma", + {"cycleFrames": 520} + ]}, + {"and": [ + "canDodgeWhileShooting", + {"or": [ + "Wave", + "Spazer" + ]}, + {"cycleFrames": 840} + ]}, + {"and": [ + "canTrickyDodgeEnemies", + "Ice", + {"cycleFrames": 1500} + ]} + ]} ]}, {"and": [ - "canTrickyDodgeEnemies", - "Ice", - {"cycleFrames": 1500} + {"haveBlueSuit": {}}, + {"cycleFrames": 600} ]} ]} ], @@ -1475,7 +1579,8 @@ {"enemy": "Kihunter (yellow)", "count": 3}, {"enemy": "Atomic", "count": 1} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 65, @@ -1513,11 +1618,16 @@ "Ice", {"cycleFrames": 1300} ]} + ]}, + {"or": [ + "canDash", + {"cycleFrames": 380} ]} ], "resetsObstacles": ["A"], "farmCycleDrops": [{"enemy": "Trapped Atomic", "count": 3}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 53, @@ -1526,7 +1636,8 @@ "requires": [ "h_CrystalFlash" ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 54, @@ -1536,7 +1647,8 @@ "exitCondition": { "leaveWithGModeSetup": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 55, @@ -1554,6 +1666,7 @@ ], "gModeRegainMobility": {}, "flashSuitChecked": true, + "blueSuitChecked": true, "note": "Use a Covern or Kihunter. A flying Kihunter will collide with Samus eventually, which could take up to 30 seconds, based on her positioning.", "devNote": "The Kihunter will do more damage than the Covern, so whether Phantoon is dead or not, that strat will be accurate or conservative." } diff --git a/region/wreckedship/main/Basement.json b/region/wreckedship/main/Basement.json index 538fab686..978125cdc 100644 --- a/region/wreckedship/main/Basement.json +++ b/region/wreckedship/main/Basement.json @@ -85,7 +85,8 @@ "openEnd": 1 } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 2, @@ -102,6 +103,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": "The length is more similar to 5 with 0 open end, than 4 with 1." }, { @@ -118,6 +120,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "One way to position the Atomic is to lure it to the right by standing on the ground,", "then jump over it and freeze it while standing in the corner on the ground once it is just under 2 tiles away from the ledge.", @@ -151,6 +154,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": ["Max extra run speed $7.0."] }, { @@ -175,6 +179,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": [ "Max extra run speed $7.0.", "The obstruction (from the Workrobot) actually extends between 4 and 5 tiles." @@ -192,7 +197,8 @@ "exitCondition": { "leaveShinecharged": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 5, @@ -207,7 +213,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 6, @@ -226,7 +233,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 7, @@ -246,7 +254,8 @@ "movementType": "uncontrolled" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 8, @@ -262,6 +271,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": "FIXME: Slightly longer runway can be used with power on; it's not clear yet if there's any application where this matters." }, { @@ -275,7 +285,8 @@ "exitCondition": { "leaveWithTemporaryBlue": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 10, @@ -285,7 +296,8 @@ "h_CrystalFlash" ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 11, @@ -297,7 +309,8 @@ "exitCondition": { "leaveWithGModeSetup": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 12, @@ -308,7 +321,8 @@ "f_DefeatedPhantoon" ], "gModeRegainMobility": {}, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 61, @@ -329,14 +343,16 @@ {"canShineCharge": {"usedTiles": 38, "openEnd": 1}}, "h_RModeKnockbackSpark" ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 13, "link": [1, 2], "name": "Base", "requires": [], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 64, @@ -389,6 +405,7 @@ }, "bypassesDoorShell": "yes", "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Freeze an Atomic at a precise distance below the door in order to jump up and clip through the door shell.", "Freezing it while it is moving horizontally and Samus is standing works as a trivial setup.", @@ -398,7 +415,7 @@ { "id": 14, "link": [1, 3], - "name": "G-mode Morph", + "name": "G-Mode Morph", "entranceCondition": { "comeInWithGMode": { "mode": "any", @@ -409,6 +426,7 @@ "h_artificialMorphMovement" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "Use the camera scroll blocks just left of the bomb blocks, in order to overload PLMs and go through them." }, { @@ -438,6 +456,7 @@ ]} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "On room entry, place a Power Bomb to kill the Atomic and land on the Workrobot.", "Wait for the Workrobot to move across the room until it meets with a second robot.", @@ -468,6 +487,7 @@ {"enemyDamage": {"enemy": "Atomic", "type": "contact", "hits": 1}} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Wait for the Atomic to hit Samus, then use it to force her way through the first Workrobot.", "Move partway across the room and keep the Atomic just off screen, which is where Samus can see approximately one full tile of the vertical doorshell.", @@ -493,6 +513,7 @@ {"enemyDamage": {"enemy": "Atomic", "type": "contact", "hits": 2}} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Delay getting hit by the Atomic for as long as possible, then fall off the ledge and clip through the first Workrobot.", "Move partway across the room and keep the Atomic just off screen, which is where Samus can see approximately one full tile of the vertical doorshell.", @@ -505,7 +526,8 @@ "link": [2, 1], "name": "Base", "requires": [], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 17, @@ -517,6 +539,7 @@ ], "bypassesDoorShell": "yes", "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Freeze an Atomic at a precise distance below the door in order to jump up and clip through the door shell.", "Freezing it while it is moving horizontally and Samus is standing works as a trivial setup." @@ -534,7 +557,8 @@ "exitCondition": { "leaveShinecharged": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 19, @@ -550,6 +574,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": "A couple more tiles can be used if power is on, but this doesn't seem worth modeling." }, { @@ -574,7 +599,8 @@ "direction": "left" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 21, @@ -599,6 +625,7 @@ ]}, {"or": [ "ScrewAttack", + {"haveBlueSuit": {}}, "Plasma", {"and": [ {"or": [ @@ -608,11 +635,16 @@ {"cycleFrames": 240} ]}, {"cycleFrames": 515} + ]}, + {"or": [ + "canDash", + {"cycleFrames": 200} ]} ], "resetsObstacles": ["A"], "farmCycleDrops": [{"enemy": "Atomic", "count": 3}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 22, @@ -624,7 +656,8 @@ "height": 2 } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 23, @@ -639,6 +672,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": "We could add another jumpway (or two) for the long platform below but it does not yet seem to have an application." }, { @@ -692,6 +726,7 @@ "leaveWithGModeSetup": {} }, "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Bring two atomics to the doorway.", "Stand on one frozen Atomic to freeze a second Atomic at the correct height to use as a platform." @@ -706,7 +741,8 @@ "f_DefeatedPhantoon" ], "gModeRegainMobility": {}, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 26, @@ -726,7 +762,8 @@ } }, "bypassesDoorShell": "free", - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 27, @@ -749,6 +786,7 @@ }, "bypassesDoorShell": "free", "flashSuitChecked": true, + "blueSuitChecked": true, "note": "With Bombs, it may be helpful to roll off the platform and kill the Atomics before safely leaving the room." }, { @@ -777,6 +815,7 @@ }, "bypassesDoorShell": "yes", "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Freeze an Atomic at a precise distance below the door in order to jump up and clip through the door shell.", "Freezing it while it is moving horizontally and Samus is standing works as a trivial setup." @@ -803,7 +842,8 @@ {"canShineCharge": {"usedTiles": 38, "openEnd": 1}}, "h_RModeKnockbackSpark" ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 28, @@ -819,7 +859,8 @@ ]} ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 67, @@ -843,6 +884,7 @@ ], "clearsObstacles": ["A"], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "This speedball is easier with Phantoon dead, since you can push the robots all the way left.", "It's even possible to setup the short hop mockball by bonking the center platform." @@ -858,6 +900,7 @@ ], "clearsObstacles": ["A"], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "This speedball is harder with Phantoon alive and has a shorter runway because of the robot standing in the way." }, { @@ -883,6 +926,7 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": "Higher run speed can be used, especially if power is on, but it is more difficult and not clear yet if it's worth modeling." }, { @@ -898,7 +942,8 @@ "leaveWithTemporaryBlue": {} }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 33, @@ -915,6 +960,7 @@ "h_artificialMorphMovement" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "Use the camera scroll blocks just left of the bomb blocks, in order to overload PLMs and go through them." }, { @@ -943,6 +989,7 @@ ]} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "On room entry, dodge the Atomic and quickly place a Power Bomb to kill both Atomics.", "It is tricky but possible to kill them both with a single Power Bomb placed on the right half of the platform.", @@ -993,7 +1040,8 @@ } }, "requires": [], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 36, @@ -1006,7 +1054,8 @@ }, "requires": [], "bypassesDoorShell": "yes", - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 37, @@ -1024,7 +1073,8 @@ } }, "bypassesDoorShell": "yes", - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 38, @@ -1042,7 +1092,8 @@ } }, "bypassesDoorShell": "yes", - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 39, @@ -1058,7 +1109,8 @@ ]} ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 68, @@ -1087,7 +1139,8 @@ "canSlowShortCharge" ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 41, @@ -1104,7 +1157,8 @@ "canSpringBallBounce" ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 42, @@ -1118,7 +1172,8 @@ "canSpringBallBounce" ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 43, @@ -1137,6 +1192,7 @@ ], "clearsObstacles": ["A"], "flashSuitChecked": true, + "blueSuitChecked": true, "note": ["Bounce directly into the morph tunnel."], "detailNote": ["This version allows preserving a flash suit."] }, @@ -1182,6 +1238,7 @@ "Morph" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "Use the camera scroll blocks just right of the bomb blocks, in order to overload PLMs and go through them. Cancel g-mode and return into the morph tunnel to fix the camera." }, { @@ -1198,6 +1255,7 @@ "canOffScreenMovement" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "Use the camera scroll blocks just right of the bomb blocks, in order to overload PLMs and go through them. Dodge the enemies while getting to the door." }, { @@ -1211,7 +1269,8 @@ "openEnd": 1 } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 47, @@ -1239,6 +1298,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Lure an Atomic from the left half of the room. Morph in the corner against the top stair and wait for the Atomic to approach.", "Quickly unmorph just before and freeze the Atomic just after it hits Samus." @@ -1267,7 +1327,8 @@ "movementType": "controlled" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 58, @@ -1298,6 +1359,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "If power is off, kago inside the left Workrobot, gaining speed at the start of the run by running in place." ], @@ -1328,6 +1390,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": [ "Max extra run speed $1.3.", "This strat is included for completeness, though it apparently doesn't have any applications." @@ -1347,7 +1410,8 @@ "exitCondition": { "leaveWithSpark": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 49, @@ -1363,7 +1427,8 @@ "exitCondition": { "leaveShinecharged": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 50, @@ -1374,6 +1439,7 @@ ], "clearsObstacles": ["A"], "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": "The Gadora won't attack if you position all the way to the left." }, { @@ -1393,7 +1459,8 @@ "exitCondition": { "leaveWithGModeSetup": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 63, @@ -1415,7 +1482,8 @@ {"canShineCharge": {"usedTiles": 38, "openEnd": 1}}, "h_RModeKnockbackSpark" ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true } ], "notables": [ diff --git a/region/wreckedship/main/Bowling Alley.json b/region/wreckedship/main/Bowling Alley.json index 5ae83a6a7..abfab9ba9 100644 --- a/region/wreckedship/main/Bowling Alley.json +++ b/region/wreckedship/main/Bowling Alley.json @@ -45,7 +45,8 @@ "requires": [ "never" ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true } ] } @@ -91,6 +92,7 @@ ]} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "The item doesn't spawn until Phantoon is defeated." } ] @@ -123,6 +125,7 @@ ]} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "The item doesn't spawn until Phantoon is defeated." } ] @@ -202,7 +205,8 @@ "openEnd": 1 } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 2, @@ -215,7 +219,8 @@ "openEnd": 0 } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 3, @@ -236,7 +241,8 @@ "openEnd": 1 } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 4, @@ -256,7 +262,8 @@ } }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 5, @@ -277,7 +284,8 @@ } }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 6, @@ -286,7 +294,8 @@ "requires": [ "h_CrystalFlash" ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 91, @@ -340,6 +349,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Use SpeedBooster to construct a structure for Moondancing that has 1 chest height block and 1 head height block to the right of it and no other Speed blocks.", "Crystal Flash below the lower block, exactly pixel aligned with its right side, to standup and then begin Moondancing.", @@ -369,6 +379,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Use SpeedBooster to construct a structure for Moondancing that has 1 chest height block and 1 head height block to the right of it and no other Speed blocks.", "Crystal Flash below the lower block, exactly pixel aligned with its right side, to standup and then begin Moondancing.", @@ -397,6 +408,7 @@ ], "clearsObstacles": ["B"], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Use SpeedBooster to construct a structure for Moondancing that has 1 chest height block and 1 head height block to the right of it and no other Speed blocks.", "Crystal Flash below the lower block, exactly pixel aligned with its right side, to standup and then begin Moondancing.", @@ -430,6 +442,7 @@ ], "clearsObstacles": ["B"], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "The camera will not follow Samus after clipping." }, { @@ -493,6 +506,7 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Jump close to ceiling, and activate a shinespark to the right.", "If successful, Samus will clip into the wall behind the Chozo statue and be able to X-Ray climb up." @@ -528,6 +542,7 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Arm pump slowly after the Chozo statue comes on screen, when the camera locks and Samus starts to move again, armpump only 3 or 4 more times to clear the last spike and avoid an extra spike hit." ], @@ -580,7 +595,8 @@ "openEnd": 1 } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 58, @@ -608,6 +624,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "note": "If using the full runway, back into the corner against the Chozo statue.", "devNote": ["Max extra run speed $7.0."] }, @@ -621,7 +638,8 @@ "blocks": [{"position": [8, 2], "note": "Closest Grapple block to the door"}] } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 12, @@ -640,6 +658,7 @@ "leaveShinecharged": {} }, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": "At least two spike hits are expected per attempt (with any additional leniency hits being multiplied by this amount)." }, { @@ -656,7 +675,8 @@ "exitCondition": { "leaveShinecharged": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 14, @@ -674,7 +694,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 15, @@ -691,7 +712,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 16, @@ -713,7 +735,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 17, @@ -734,7 +757,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 18, @@ -757,7 +781,8 @@ "movementType": "uncontrolled" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 19, @@ -779,7 +804,8 @@ "movementType": "uncontrolled" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 20, @@ -797,7 +823,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 21, @@ -812,7 +839,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 22, @@ -827,7 +855,8 @@ "exitCondition": { "leaveWithTemporaryBlue": {} }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 78, @@ -844,7 +873,8 @@ "canPatientSpikeSuit", {"shinespark": {"frames": 3, "excessFrames": 3}} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 79, @@ -872,6 +902,7 @@ {"types": ["missiles"], "requires": ["never"]} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": ["This requires a first frame unmorph."] }, { @@ -884,7 +915,8 @@ "h_spikeXModeSpikeSuit", {"shinespark": {"frames": 3, "excessFrames": 3}} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 81, @@ -903,6 +935,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "note": ["This requires a first frame Spikesuit unmorph."] }, { @@ -940,7 +973,8 @@ "requires": [ "h_CrystalFlash" ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 93, @@ -977,6 +1011,7 @@ ], "setsFlags": ["f_UsedBowlingStatue"], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "Samus's shinecharge frames are paused while riding the Bowling Chozo." }, { @@ -1006,6 +1041,7 @@ ], "setsFlags": ["f_UsedBowlingStatue"], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "Samus's shinecharge frames are paused while riding the Bowling Chozo." }, { @@ -1016,7 +1052,8 @@ "Grapple", "h_midAirShootUp" ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 25, @@ -1025,7 +1062,8 @@ "requires": [ "SpaceJump" ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 97, @@ -1067,6 +1105,7 @@ {"spikeHits": 1} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Jump into the room and morph along the ceiling to maximize distance.", "Unmorph while entering the spikes to minimize knockback", @@ -1092,6 +1131,7 @@ {"spikeHits": 1} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Jump into the room and morph along the ceiling to maximize distance.", "Unmorph while entering the spikes to minimize knockback", @@ -1119,6 +1159,7 @@ {"spikeHits": 1} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Start with Spring Ball disabled. Jump over the spikes and mid-air morph.", "Spring fling on the way down, Spring Ball bounce through the spikes, then spring fling again to reach the statue taking only one spike hit." @@ -1142,6 +1183,7 @@ {"spikeHits": 1} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Enter the room with a mockball or bounce.", "Time a pause to unequip Spring Ball soon after bouncing after the spike hit.", @@ -1154,6 +1196,7 @@ "link": [2, 6], "name": "2-hit Bowling", "requires": [ + "canDash", "canTrickyJump", "canUseIFrames", {"or": [ @@ -1163,6 +1206,7 @@ {"spikeHits": 2} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "This is doable even without any momentum from a previous room, but pretty tight." }, { @@ -1175,6 +1219,7 @@ {"spikeHits": 2} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "A bit easier than 2-hit bowling" }, { @@ -1182,19 +1227,47 @@ "link": [2, 6], "name": "3-hit Bowling", "requires": [ + "canDash", "canUseIFrames", {"spikeHits": 3} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 30, "link": [2, 6], "name": "Spike Run", "requires": [ + "canDash", + {"spikeHits": 6} + ], + "flashSuitChecked": true, + "blueSuitChecked": true + }, + { + "link": [2, 6], + "name": "Blue Suit Damage Boosts", + "requires": [ + {"haveBlueSuit": {}}, + {"tech": "canHorizontalDamageBoost"}, + "canBlueSuitSpikeJump", + {"noFlashSuit": {}}, {"spikeHits": 6} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true + }, + { + "link": [2, 6], + "name": "Blue Suit Spike Jumps", + "requires": [ + {"haveBlueSuit": {}}, + "canBlueSuitSpikeJump", + {"spikeHits": 8} + ], + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 31, @@ -1206,7 +1279,8 @@ "requires": [ {"shinespark": {"frames": 91, "excessFrames": 8}} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 32, @@ -1230,6 +1304,7 @@ "h_XModeSpikeHit" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "Move in X-Mode until the Chozo Statue becomes visible and then jump before releasing X-Ray." }, { @@ -1271,6 +1346,7 @@ "canBeVeryPatient" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "This is a very long ceiling bomb jump.", "devNote": "There is no reason to go back to the left." }, @@ -1291,6 +1367,7 @@ {"or": [ "SpaceJump", {"and": [ + "canDash", "canUseIFrames", {"spikeHits": 2}, {"or": [ @@ -1300,6 +1377,12 @@ {"spikeHits": 1} ]} ]}, + {"and": [ + {"haveBlueSuit": {}}, + {"tech": "canHorizontalDamageBoost"}, + "canBlueSuitSpikeJump", + {"spikeHits": 6} + ]}, {"and": [ {"blueSuitShinecharge": {}}, "canDash", @@ -1308,6 +1391,7 @@ ]} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Ride the statue, which will not take Samus down, and will instead drop her off in the spike pit somewhat near the door." ] @@ -1329,6 +1413,7 @@ {"or": [ "SpaceJump", {"and": [ + "canDash", "canUseIFrames", "h_pauseAbuseMinimalReserveRefill", "h_pauseAbuseMinimalReserveRefill", @@ -1348,6 +1433,7 @@ ]} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Crystal Flash then pause abuse to cross the spikeway with minimal Energy loss.", "Ride the statue, which will not take Samus down, and will instead drop her off in the spike pit somewhat near the door." @@ -1367,10 +1453,12 @@ "canComplexGMode", "f_DefeatedPhantoon", "h_artificialMorphSpringFling", + "canDash", "canInsaneJump", {"spikeHits": 4} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Spring fling many times to cross the spikeway with as few hits as possible.", "Ride the statue, which will not take Samus down, and will instead drop her off in the spike pit somewhat near the door." @@ -1394,6 +1482,7 @@ "canBeVeryPatient" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "This is a very long ceiling bomb jump.", "Ride the statue, which will not take Samus down, and will instead drop her off in the spike pit somewhat near the door." @@ -1422,9 +1511,20 @@ "canOffScreenMovement", {"or": [ {"and": [ + "canDash", {"spikeHits": 1}, "canUseIFrames" ]}, + {"and": [ + "canBlueSuitSpikeJump", + {"spikeHits": 2} + ]}, + {"and": [ + "canBlueSuitSpikeJump", + "canWalljump", + "canBeVeryPatient", + {"spikeHits": 1} + ]}, "Grapple", {"and": [ "SpaceJump", @@ -1440,6 +1540,7 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Climb up about half a screen.", "If Phantoon is dead, the last part of the climb should be done carefully to avoid triggering collision with the spikes:", @@ -1455,6 +1556,9 @@ "With Grapple it is possible to swing on the Grapple blocks, avoiding all spike damage.", "Spike damage can also be avoided with Space Jump, by doing a stationary turn-around spin jump, which is very precise." ], + "detailNote": [ + "With a blue suit, Samus will instantly lose i-frames, making the spikes very dangerous." + ], "devNote": [ "FIXME: The canBeVeryPatient is for difficulty placement, as the damageless Space Jump version would likely require many attempts.", "The resourceCapacity requirement is to ensure that reserve energy management will not be needed for the lower-difficulty version of the strat;", @@ -1473,7 +1577,8 @@ "openEnd": 1 } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 59, @@ -1494,6 +1599,7 @@ } }, "flashSuitChecked": true, + "blueSuitChecked": true, "devNote": ["Max extra run speed $2.7."] }, { @@ -1511,7 +1617,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 38, @@ -1532,7 +1639,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 39, @@ -1554,7 +1662,8 @@ "movementType": "uncontrolled" } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 40, @@ -1571,7 +1680,8 @@ } } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 41, @@ -1580,16 +1690,18 @@ "requires": [ "h_CrystalFlash" ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 42, "link": [3, 4], - "name": "Bomb the blocks", + "name": "Bomb the Blocks", "requires": [ "h_bombThings" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "If using PBs, place it far enough right to reach the shot blocks." }, { @@ -1602,6 +1714,7 @@ "Plasma" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "Plasma or Charged Spazer can reach the shot blocks through the tunnel while crouched.", "devNote": [ "Plasma is somewhat known as a way to reach the blocks.", @@ -1622,6 +1735,7 @@ "canHeroShot" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Break the shot blocks with Power Beam by first rolling into the morph tunnel to unlock camera scroll for this room.", "The blocks can now be cleared from the left side by shooting and quickly scrolling the camera to the right a small amount.", @@ -1712,6 +1826,7 @@ "canHeroShot" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Land on the crumble blocks while unmorphing, in order to retain temporary blue while falling, breaking the bomb blocks", "Roll most of the way into the morph tunnel to unlock the camera scroll, then roll back left, crouch, fire a shot, and follow it to the right, to clear the shot blocks." @@ -1735,6 +1850,7 @@ "canHeroShot" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Land on the crumble blocks while unmorphing, in order to retain temporary blue while falling, breaking the bomb blocks", "Roll most of the way into the morph tunnel to unlock the camera scroll, then roll back left, crouch, fire a shot, and follow it to the right, to clear the shot blocks." @@ -1749,6 +1865,7 @@ {"obstaclesNotCleared": ["B"]} ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "The bomb block respawns. It must be broken on the way back too." }, { @@ -1787,6 +1904,7 @@ "canSpringBallBounce" ], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Use Temporary Blue to bounce into the Morph Tunnel with temp blue then continue to the bomb block using SpringBall.", "Just left of center of the pit is a good place to bounce for entering the tunnel.", @@ -1826,6 +1944,7 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Gain temporary blue, and bounce into the morph tunnel, using Spring Ball to reach the left side while retaining temporary blue.", "After bouncing up out of the tunnel, unmorph, aim down, and use a pause buffer to remorph and land or bounce on the door frame, chaining temporary blue into the next room.", @@ -1860,6 +1979,7 @@ ]} ], "flashSuitChecked": true, + "note": [ "The shot blocks must be broken using Bombs or Power Bombs because Beams will instantly despawn.", "Use X-Ray or a Crystal Flash to stand up, followed by a Partial Floor clip to jump through the Crumble blocks." @@ -1897,7 +2017,27 @@ "canSpikeSuit", {"shinespark": {"frames": 6, "excessFrames": 6}} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true + }, + { + "link": [4, 4], + "name": "Gain Blue Suit (X-Mode)", + "requires": [ + "f_DefeatedPhantoon", + {"obstaclesNotCleared": ["B"]}, + {"or": [ + {"and": [ + {"obstaclesCleared": ["A"]}, + {"canShineCharge": {"usedTiles": 30, "openEnd": 1}} + ]}, + {"canShineCharge": {"usedTiles": 14, "openEnd": 1}} + ]}, + {"spikeHits": 1}, + "h_spikeXModeBlueSuit" + ], + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 48, @@ -1940,7 +2080,8 @@ ]} ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 98, @@ -1981,6 +2122,7 @@ ], "clearsObstacles": ["A"], "flashSuitChecked": true, + "blueSuitChecked": true, "note": "Wall jump repeatedly off of the left wall, jump before the spikes and hold jump while passing them to avoid wall jump checking them." }, { @@ -2073,7 +2215,8 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], "flashSuitChecked": true, - "note": "Menu to Grappling Beam before the crystal flash ends and mash shoot while holding down." + "blueSuitChecked": true, + "note": "Menu to Grappling Beam before the Crystal Flash ends and mash shoot while holding down." }, { "id": 51, @@ -2093,14 +2236,15 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Fall through the Crumble blocks in order to damage down using either the spikes or repeated Shinesparks.", "Touching the Chozo statue will lock the camera in a less useful position.", "Menu to Grappling Beam before the crystal flash ends and mash shoot while holding down." ], "devNote": [ - "FIXME: If power is on, spikes or worker robots can damage Samus.", - " but multiples of 60 may not put Samus into Crystal Flash range, and visiting the robots will lock the camera making the jump-into-CF much harder." + "FIXME: If power is on, spikes or worker robots can damage Samus,", + "but multiples of 60 may not put Samus into Crystal Flash range, and visiting the robots will lock the camera making the jump-into-CF much harder." ] }, { @@ -2114,7 +2258,8 @@ "canOffScreenMovement" ]} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 53, @@ -2128,7 +2273,8 @@ ]} ], "clearsObstacles": ["A"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 61, @@ -2167,6 +2313,7 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Jump or Spring Ball jump into a breakable Grapple block.", "The timing is precise and it can help to break two Grapple blocks to use one as a cue.", @@ -2201,6 +2348,7 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "IBJ into a breakable Grapple block.", "The timing is very precise and requires a quick morph and ascent with precisely placed double bomb jumps.", @@ -2237,6 +2385,7 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Use a Grapple fling to get stuck inside a breakable Grapple block.", "It can help to break two or more Grapple blocks in a row.", @@ -2266,6 +2415,7 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Use X-mode to gain a shinecharge near the Chozo statue.", "Jump onto the Chozo statue, press against the wall, and shinespark into it to clip in, then X-Ray climb up." @@ -2315,7 +2465,8 @@ ], "clearsObstacles": ["C"], "setsFlags": ["f_UsedBowlingStatue"], - "flashSuitChecked": true + "flashSuitChecked": true, + "blueSuitChecked": true }, { "id": 67, @@ -2334,6 +2485,7 @@ ], "setsFlags": ["f_UsedBowlingStatue"], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Quickly unmorph and jump to the left edge to take as few spike hits as possible.", "It is also possible to place a bomb or Power Bomb just before being grabbed by the statue before the bowling ride.", @@ -2361,6 +2513,7 @@ "unlocksDoors": [{"types": ["ammo"], "requires": []}], "setsFlags": ["f_UsedBowlingStatue"], "flashSuitChecked": true, + "blueSuitChecked": true, "note": [ "Quickly unmorph and jump onto the bowling statue. Be careful not to jump below its hand and be pushed back down.", "It is also possible to place a bomb or Power Bomb just before being grabbed by the statue before the bowling ride.", From 48ba804afd65546d30ebeda34eed39af06bb3eb6 Mon Sep 17 00:00:00 2001 From: Brent Kerby Date: Thu, 2 Apr 2026 20:50:56 -0600 Subject: [PATCH 2/3] feedback update --- region/wreckedship/main/Attic.json | 1 + 1 file changed, 1 insertion(+) diff --git a/region/wreckedship/main/Attic.json b/region/wreckedship/main/Attic.json index b48ee5600..10054d911 100644 --- a/region/wreckedship/main/Attic.json +++ b/region/wreckedship/main/Attic.json @@ -896,6 +896,7 @@ "enemies": [["Kihunter (yellow)"], ["Kihunter (yellow)"]], "explicitWeapons": ["Missile", "Super", "ScrewAttack", "Plasma", "Ice+Wave+Spazer"] }}, + {"haveBlueSuit": {}}, {"enemyDamage": {"enemy": "Kihunter (yellow)", "type": "contact", "hits": 2}} ]} ], From 6f21834a806859ea9006d8d83aa44e0dc414ebc3 Mon Sep 17 00:00:00 2001 From: Brent Kerby Date: Fri, 3 Apr 2026 17:42:08 -0600 Subject: [PATCH 3/3] add Bowling Alley blue suit stored moonfall clip --- region/wreckedship/main/Bowling Alley.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/region/wreckedship/main/Bowling Alley.json b/region/wreckedship/main/Bowling Alley.json index abfab9ba9..7cdcc7826 100644 --- a/region/wreckedship/main/Bowling Alley.json +++ b/region/wreckedship/main/Bowling Alley.json @@ -432,7 +432,8 @@ {"and": [ {"getBlueSpeed": {"usedTiles": 29, "openEnd": 0}}, {"doorUnlockedAtNode": 1} - ]} + ]}, + {"haveBlueSuit": {}} ]}, "canMoonfall" ],