diff --git a/region/maridia/inner-green/East Sand Hall.json b/region/maridia/inner-green/East Sand Hall.json index c4c7eb77b5..6606264630 100644 --- a/region/maridia/inner-green/East Sand Hall.json +++ b/region/maridia/inner-green/East Sand Hall.json @@ -414,6 +414,7 @@ }, "requires": [ "canSuitlessMaridia", + "h_crouchJumpDownGrab", "canInsaneJump" ], "flashSuitChecked": true, @@ -421,7 +422,7 @@ "The sand does not impede Samus in G-Mode.", "Carefully jump over the first two Evirs. Crouch against the pillar and wait a brief moment before jumping and down grabbing onto it.", "Lure the third Evir's projectile by jumping then crouch jump and down grab the second pillar.", - "Getting onto the final pillar is the hardest pard, which requires a subpixel precise jump.", + "Getting onto the final pillar is the hardest part, which requires a subpixel precise jump.", "Carefully lure the Evir projectile while getting into position, one pixel from the right edge.", "Stand and spinjump to the right. Note that running before jumping doesn't help." ] @@ -1124,6 +1125,10 @@ }, "requires": [ "h_navigateUnderwater", + {"or": [ + "canInsaneJump", + {"enemyDamage": {"enemy": "Evir", "type": "particle", "hits": 1}} + ]}, {"or": [ "Gravity", "HiJump", @@ -1131,7 +1136,10 @@ ]} ], "flashSuitChecked": true, - "note": "The sand does not impede Samus in G-Mode.", + "note": [ + "The sand does not impede Samus in G-Mode.", + "Enter the room on the right half of the transition, where both Evirs will be off camera to avoid their projectiles." + ], "devNote": "Only the last jump needs any items." }, { @@ -1147,16 +1155,24 @@ }, "requires": [ "h_navigateUnderwater", + {"or": [ + "canInsaneJump", + {"enemyDamage": {"enemy": "Evir", "type": "particle", "hits": 1}} + ]}, {"or": [ "Gravity", "HiJump", "canSpringBallJumpMidAir", - "canTrickyJump" + {"and": [ + "h_crouchJumpDownGrab", + "canInsaneJump" + ]} ]} ], "flashSuitChecked": true, "note": [ "The sand does not impede Samus in G-Mode.", + "Enter the room on the right half of the transition, where both Evirs will be off camera to avoid their projectiles.", "It is possible to jump to the tall pillar with nothing, requiring a subpixel precise jump.", "Running before jumping doesn't help. Stand one pixel from the right edge and spinjump to the right." ] diff --git a/region/maridia/inner-green/Oasis.json b/region/maridia/inner-green/Oasis.json index 48f7c0eb7f..832f582825 100644 --- a/region/maridia/inner-green/Oasis.json +++ b/region/maridia/inner-green/Oasis.json @@ -2156,6 +2156,33 @@ "bypassesDoorShell": "free", "flashSuitChecked": true }, + { + "link": [3, 3], + "name": "Carry G-Mode Back Up, Bomb Into Spring Ball Jump", + "entranceCondition": { + "comeInWithGMode": { + "mode": "direct", + "morphed": true + }, + "comesThroughToilet": "any" + }, + "requires": [ + "h_artificialMorphUnderwaterBombIntoSpringBallJump" + ], + "exitCondition": { + "leaveWithGMode": { + "morphed": false + } + }, + "bypassesDoorShell": "free", + "flashSuitChecked": true, + "note": [ + "Pause and jump just before the fade out finishes. Turn off Spring Ball and place a Bomb just above where Samus' head would be if standing.", + "Pause again between 23-25 frames later and equip Spring Ball; Samus has a three frame window where she has upward momentum from the Bomb and can jump again.", + "The positioning of the Bomb is quite lenient, with an 11 frame window for where it can be placed.", + "Unmorph at the top of the jump to touch the transition blocks." + ] + }, { "id": 50, "link": [3, 4], diff --git a/region/maridia/inner-green/Shaktool Room.json b/region/maridia/inner-green/Shaktool Room.json index 628a2332b8..f574a08d71 100644 --- a/region/maridia/inner-green/Shaktool Room.json +++ b/region/maridia/inner-green/Shaktool Room.json @@ -651,6 +651,7 @@ {"or": [ {"ammo": {"type": "Super", "count": 1}}, {"and": [ + "canTrickyGMode", "canSpecialBeamAttack", {"ammo": {"type": "PowerBomb", "count": 1}} ]} diff --git a/region/maridia/inner-green/West Sand Hall.json b/region/maridia/inner-green/West Sand Hall.json index f31cba0b98..add243b9aa 100644 --- a/region/maridia/inner-green/West Sand Hall.json +++ b/region/maridia/inner-green/West Sand Hall.json @@ -293,14 +293,14 @@ "requires": [ "h_navigateUnderwater", {"or": [ - "canCarefulJump", + "canTrickyDodgeEnemies", "h_crouchJumpDownGrab", "HiJump", "Gravity", "canSpringBallJumpMidAir" ]}, {"or": [ - "canCarefulJump", + "canTrickyDodgeEnemies", {"enemyDamage": {"enemy": "Evir", "type": "particle", "hits": 1}} ]} ], @@ -559,8 +559,7 @@ } }, "requires": [ - "h_navigateUnderwater", - "canCarefulJump" + "h_navigateUnderwater" ], "flashSuitChecked": true }, @@ -765,18 +764,18 @@ "requires": [ "h_navigateUnderwater", {"or": [ - "canCarefulJump", "h_crouchJumpDownGrab", "HiJump", "Gravity", "canSpringBallJumpMidAir" ]}, {"or": [ - "canCarefulJump", + "canInsaneJump", {"enemyDamage": {"enemy": "Evir", "type": "particle", "hits": 1}} ]} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "note": "Dodging the Evirs can be tricky. Enter on the far right side, facing left, and hold left on entry to dodge them reliably." }, { "id": 39, @@ -790,9 +789,20 @@ "comesThroughToilet": "any" }, "requires": [ - "h_navigateUnderwater" + "h_navigateUnderwater", + {"or": [ + "h_crouchJumpDownGrab", + "HiJump", + "Gravity", + "canSpringBallJumpMidAir" + ]}, + {"or": [ + "canInsaneJump", + {"enemyDamage": {"enemy": "Evir", "type": "particle", "hits": 1}} + ]} ], - "flashSuitChecked": true + "flashSuitChecked": true, + "note": "Dodging the Evirs can be tricky. Enter on the far right side, facing left, and hold left on entry to dodge them reliably." }, { "id": 40, diff --git a/region/maridia/inner-pink/Botwoon Quicksand Room.json b/region/maridia/inner-pink/Botwoon Quicksand Room.json index 58110227e7..6985119bcc 100644 --- a/region/maridia/inner-pink/Botwoon Quicksand Room.json +++ b/region/maridia/inner-pink/Botwoon Quicksand Room.json @@ -146,7 +146,8 @@ "morphed": false } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "note": "Samus falls so quickly that it is unlikely that the Bulls will cause any problem." }, { "id": 4, @@ -165,7 +166,8 @@ "morphed": true } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "note": "Samus falls so quickly that it is unlikely that the Bulls will cause any problem." }, { "id": 5, @@ -179,9 +181,16 @@ "comesThroughToilet": "any" }, "requires": [ + "canInsaneJump", {"or": [ {"enemyDamage": {"enemy": "Bull", "type": "contact", "hits": 1}}, - "h_artificialMorphPowerBomb" + {"and": [ + "h_artificialMorphPowerBomb", + {"or": [ + "h_additionalBomb", + "h_artificialMorphMovement" + ]} + ]} ]} ], "exitCondition": { @@ -189,7 +198,15 @@ "morphed": true } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "note": [ + "Enter the room on the right side and land on the ledge just below the hidden tunnel then Power Bomb boost to get into the tunnel and kil the Bulls.", + "Alternatively, enter the room near the right with a bit of right momentum and land directly in the tunnel while taking a Bull hit." + ], + "devNote": [ + "This room does not have water, so Samus can be boosted by bomb boosts without Gravity after PLMs are overloaded.", + "It is possible to do this with 1 Power Bomb, but it is very precise and significantly depends on room entry." + ] }, { "id": 6, @@ -241,9 +258,16 @@ "comesThroughToilet": "any" }, "requires": [ + "canInsaneJump", {"or": [ {"enemyDamage": {"enemy": "Bull", "type": "contact", "hits": 1}}, - "h_artificialMorphPowerBomb" + {"and": [ + "h_artificialMorphPowerBomb", + {"or": [ + "h_additionalBomb", + "h_artificialMorphMovement" + ]} + ]} ]} ], "exitCondition": { @@ -251,7 +275,15 @@ "morphed": true } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "note": [ + "Enter the room on the left side and land on the ledge just below the hidden tunnel then Power Bomb boost to get into the tunnel and kil the Bulls.", + "Alternatively, enter the room near the left with a bit of left momentum and land directly in the tunnel while taking a Bull hit." + ], + "devNote": [ + "This room does not have water, so Samus can be boosted by bomb boosts without Gravity after PLMs are overloaded.", + "It is possible to do this with 1 Power Bomb, but it is very precise and significantly depends on room entry." + ] }, { "id": 10, @@ -286,7 +318,8 @@ "morphed": false } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "note": "Samus falls so quickly that it is unlikely that the Bulls will cause any problem." }, { "id": 13, @@ -305,7 +338,8 @@ "morphed": true } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "note": "Samus falls so quickly that it is unlikely that the Bulls will cause any problem." }, { "id": 14, diff --git a/region/maridia/inner-pink/East Aqueduct Quicksand Room.json b/region/maridia/inner-pink/East Aqueduct Quicksand Room.json index af92a291be..291f05f3aa 100644 --- a/region/maridia/inner-pink/East Aqueduct Quicksand Room.json +++ b/region/maridia/inner-pink/East Aqueduct Quicksand Room.json @@ -99,13 +99,19 @@ }, "comesThroughToilet": "any" }, - "requires": [], + "requires": [ + {"or": [ + "canTrickyDodgeEnemies", + {"enemyDamage": {"enemy": "Bull", "type": "contact", "hits": 1}} + ]} + ], "exitCondition": { "leaveWithGMode": { "morphed": false } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "note": "Samus will fall quickly. Fall through the room slightly left of center to avoid the Bulls." }, { "id": 5, @@ -118,13 +124,19 @@ }, "comesThroughToilet": "any" }, - "requires": [], + "requires": [ + {"or": [ + "canTrickyDodgeEnemies", + {"enemyDamage": {"enemy": "Bull", "type": "contact", "hits": 1}} + ]} + ], "exitCondition": { "leaveWithGMode": { "morphed": true } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "note": "Samus will fall quickly. Fall through the room slightly left of center to avoid the Bulls." }, { "id": 6, diff --git a/region/maridia/inner-pink/West Aqueduct Quicksand Room.json b/region/maridia/inner-pink/West Aqueduct Quicksand Room.json index 8afe580292..4c393b1d71 100644 --- a/region/maridia/inner-pink/West Aqueduct Quicksand Room.json +++ b/region/maridia/inner-pink/West Aqueduct Quicksand Room.json @@ -99,13 +99,19 @@ }, "comesThroughToilet": "any" }, - "requires": [], + "requires": [ + {"or": [ + "canTrickyDodgeEnemies", + {"enemyDamage": {"enemy": "Bull", "type": "contact", "hits": 1}} + ]} + ], "exitCondition": { "leaveWithGMode": { "morphed": false } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "note": "Samus will fall quickly. Fall through the room slightly right of center to avoid the Bulls." }, { "id": 5, @@ -118,13 +124,19 @@ }, "comesThroughToilet": "any" }, - "requires": [], + "requires": [ + {"or": [ + "canTrickyDodgeEnemies", + {"enemyDamage": {"enemy": "Bull", "type": "contact", "hits": 1}} + ]} + ], "exitCondition": { "leaveWithGMode": { "morphed": true } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "note": "Samus will fall quickly. Fall through the room slightly right of center to avoid the Bulls." }, { "id": 6, diff --git a/region/maridia/inner-yellow/Maridia Elevator Room.json b/region/maridia/inner-yellow/Maridia Elevator Room.json index ef888df287..3f829b7bf4 100644 --- a/region/maridia/inner-yellow/Maridia Elevator Room.json +++ b/region/maridia/inner-yellow/Maridia Elevator Room.json @@ -590,32 +590,6 @@ }, "unlocksDoors": [{"types": ["ammo"], "requires": []}] }, - { - "id": 12, - "link": [1, 2], - "name": "G-Mode Morph", - "entranceCondition": { - "comeInWithGMode": { - "mode": "any", - "morphed": true - } - }, - "requires": [ - {"or": [ - {"and": [ - "h_artificialMorphIBJ", - {"or": [ - "Gravity", - "h_artificialMorphSpringBall", - "h_artificialMorphPowerBomb", - {"enemyDamage": {"enemy": "Ripper", "type": "contact", "hits": 1}} - ]} - ]}, - "h_artificialMorphSpringBallBombJump" - ]} - ], - "flashSuitChecked": true - }, { "id": 41, "link": [1, 2], @@ -820,7 +794,12 @@ {"or": [ "Gravity", "h_artificialMorphPowerBomb", - {"enemyDamage": {"enemy": "Ripper", "type": "contact", "hits": 1}} + {"enemyDamage": {"enemy": "Ripper", "type": "contact", "hits": 1}}, + {"and": [ + "canInsaneJump", + "h_artificialMorphDoubleBombJump", + "h_artificialMorphStaggeredIBJ" + ]} ]}, "h_artificialMorphPowerBomb", {"or": [ diff --git a/region/maridia/inner-yellow/Maridia Swiss Cheese Room.json b/region/maridia/inner-yellow/Maridia Swiss Cheese Room.json index 4d5fcaa9db..2f937d6054 100644 --- a/region/maridia/inner-yellow/Maridia Swiss Cheese Room.json +++ b/region/maridia/inner-yellow/Maridia Swiss Cheese Room.json @@ -229,14 +229,23 @@ "h_artificialMorphIBJ", {"or": [ "h_artificialMorphSpringBall", - "Gravity" + "h_artificialMorphPowerBomb", + "canInsaneJump", + {"enemyDamage": {"enemy": "Menu", "type": "contact", "hits": 1}} + ]}, + {"or": [ + "h_artificialMorphSpringBall", + "Gravity", + "canTrickyGMode" ]} ], "flashSuitChecked": true, - "devNote": [ - "Spring Ball and Gravity wouldn't be required with some risky off-screen horizontal bomb jumps.", - "This strat is only useful for avoiding a wall jump. A simpler variant exits G-Mode after the morph tunnel." - ] + "note": [ + "With Bombs alone, this is much more difficult. After going off screen, roll to the left until Samus is back on screen.", + "Once Samus is obstructed by the first block, boost horizontally onto where the right edge of where the other on-screen platform is.", + "Then peform an IBJ which is completely blind at the top. Boost onto the left or right platform then exit G-mode and fix the camera if necessary." + ], + "devNote": "This strat is only useful for avoiding a wall jump. A simpler variant exits G-Mode after the morph tunnel." }, { "id": 8, @@ -475,7 +484,7 @@ {"or": [ "h_artificialMorphSpringBall", {"and": [ - "h_artificialMorphBombThings", + "h_artificialMorphPowerBomb", "h_additionalBomb", {"or": [ "h_artificialMorphBombHorizontally", @@ -484,6 +493,17 @@ "Gravity" ]} ]} + ]}, + {"and": [ + "h_artificialMorphBombs", + {"or": [ + "h_artificialMorphBombHorizontally", + "Gravity" + ]}, + {"or": [ + "canInsaneJump", + {"enemyDamage": {"enemy": "Menu", "type": "contact", "hits": 1}} + ]} ]} ]} ], diff --git a/region/maridia/inner-yellow/Plasma Beach Quicksand Room.json b/region/maridia/inner-yellow/Plasma Beach Quicksand Room.json index 16d5fa4084..fa5b9da98f 100644 --- a/region/maridia/inner-yellow/Plasma Beach Quicksand Room.json +++ b/region/maridia/inner-yellow/Plasma Beach Quicksand Room.json @@ -110,7 +110,12 @@ }, "comesThroughToilet": "any" }, - "requires": [], + "requires": [ + {"or": [ + "canTrickyDodgeEnemies", + {"enemyDamage": {"enemy": "Bull", "type": "contact", "hits": 1}} + ]} + ], "exitCondition": { "leaveWithGMode": { "morphed": false @@ -129,7 +134,12 @@ }, "comesThroughToilet": "any" }, - "requires": [], + "requires": [ + {"or": [ + "canTrickyDodgeEnemies", + {"enemyDamage": {"enemy": "Bull", "type": "contact", "hits": 1}} + ]} + ], "exitCondition": { "leaveWithGMode": { "morphed": true diff --git a/region/maridia/inner-yellow/Plasma Spark Room.json b/region/maridia/inner-yellow/Plasma Spark Room.json index 18538009cc..99c1c6d34b 100644 --- a/region/maridia/inner-yellow/Plasma Spark Room.json +++ b/region/maridia/inner-yellow/Plasma Spark Room.json @@ -311,7 +311,8 @@ "h_artificialMorphLongIBJ", {"or": [ "h_artificialMorphSpringBallBombJump", - "h_artificialMorphBombHorizontally" + "h_artificialMorphBombHorizontally", + "Gravity" ]} ], "flashSuitChecked": true @@ -411,6 +412,10 @@ "h_additionalBomb", "h_additionalBomb", "h_additionalBomb" + ]}, + {"and": [ + "h_artificialMorphSpringBallBombJump", + {"notable": "Left Shaft Precise Crouch Jump Down Grab"} ]} ]} ], @@ -1158,8 +1163,17 @@ {"and": [ "canGravityJump", "h_artificialMorphSpringBallBombJump", - "h_additionalBomb", - "h_additionalBomb" + {"or": [ + "h_additionalBomb", + {"tech": "canDoubleSpringBallJumpMidAir"} + ]}, + {"or": [ + {"and": [ + "h_additionalBomb", + "h_additionalBomb" + ]}, + {"notable": "Left Shaft Precise Crouch Jump Down Grab"} + ]} ]} ]} ], @@ -1809,7 +1823,29 @@ } }, "requires": [ - "h_artificialMorphLongIBJ" + {"or": [ + "h_artificialMorphLongIBJ", + {"and": [ + "Gravity", + "h_artificialMorphIBJ", + "h_artificialMorphBombHorizontally" + ]}, + {"and": [ + "canGravityJump", + "h_artificialMorphSpringBallBombJump", + {"or": [ + "h_additionalBomb", + {"tech": "canDoubleSpringBallJumpMidAir"} + ]}, + {"or": [ + {"and": [ + "h_additionalBomb", + "h_additionalBomb" + ]}, + {"notable": "Left Shaft Precise Crouch Jump Down Grab"} + ]} + ]} + ]} ], "flashSuitChecked": true }, @@ -2156,8 +2192,17 @@ "Freeze the island Choot when it is at the far left of its second-highest swoop.", "Run right-to-left on it and perform a last-frame jump into a max-height spring ball jump." ] + }, + { + "id": 5, + "name": "Left Shaft Precise Crouch Jump Down Grab", + "wallJumpAvoid": true, + "note": [ + "Starting from the edge of the platforms that stick out, crouch jump and down grab to get to the next one.", + "Going up from the left runway does not work, as that starts one tile further to the left." + ] } ], "nextStratId": 94, - "nextNotableId": 5 + "nextNotableId": 6 } \ No newline at end of file diff --git a/region/maridia/inner-yellow/Plasma Tutorial Room.json b/region/maridia/inner-yellow/Plasma Tutorial Room.json index 3a5dbe1359..7e228182b9 100644 --- a/region/maridia/inner-yellow/Plasma Tutorial Room.json +++ b/region/maridia/inner-yellow/Plasma Tutorial Room.json @@ -114,7 +114,8 @@ "link": [1, 1], "name": "G-Mode Setup - Get Hit By Puyo", "requires": [ - "canBePatient" + "canBePatient", + "canTrickyGMode" ], "exitCondition": { "leaveWithGModeSetup": {} @@ -631,7 +632,8 @@ "link": [2, 2], "name": "G-Mode Setup - Get Hit By Puyo", "requires": [ - "canBeVeryPatient" + "canBeVeryPatient", + "canTrickyGMode" ], "exitCondition": { "leaveWithGModeSetup": {} diff --git a/region/maridia/inner-yellow/The Beach.json b/region/maridia/inner-yellow/The Beach.json index 0085bad225..a69e9860a8 100644 --- a/region/maridia/inner-yellow/The Beach.json +++ b/region/maridia/inner-yellow/The Beach.json @@ -66,13 +66,7 @@ ] } ], - "obstacles": [ - { - "id": "A", - "name": "G-Mode Grab Item and Return", - "obstacleType": "abstract" - } - ], + "obstacles": [], "enemies": [ { "id": "e1", @@ -310,8 +304,7 @@ {"partialRefill": {"type": "Energy", "limit": 140}}, {"partialRefill": {"type": "Super", "limit": 4}}, {"partialRefill": {"type": "Missile", "limit": 20}} - ], - "resetsObstacles": ["A"] + ] }, { "id": 67, @@ -332,8 +325,7 @@ {"partialRefill": {"type": "Energy", "limit": 300}}, {"partialRefill": {"type": "Super", "limit": 4}}, {"refill": ["Missile"]} - ], - "resetsObstacles": ["A"] + ] }, { "id": 11, @@ -344,31 +336,10 @@ ], "flashSuitChecked": true }, - { - "id": 12, - "link": [1, 2], - "name": "Come in Shinecharging, Leave With Temporary Blue", - "entranceCondition": { - "comeInShinecharging": { - "length": 5, - "openEnd": 0 - } - }, - "requires": [ - "canChainTemporaryBlue", - "canXRayTurnaround" - ], - "exitCondition": { - "leaveWithTemporaryBlue": { - "direction": "any" - } - }, - "unlocksDoors": [{"types": ["ammo"], "requires": []}] - }, { "id": 13, - "link": [1, 3], - "name": "G-Mode Morph", + "link": [1, 1], + "name": "G-Mode Morph, Remote Acquire", "entranceCondition": { "comeInWithGMode": { "mode": "direct", @@ -388,13 +359,30 @@ "h_artificialMorphDoubleSpringBallJump" ]} ], - "clearsObstacles": ["A"], + "collectsItems": [3], "flashSuitChecked": true, - "note": "Avoid moving too much between the right of the Owtch and the item to avoid overloading PLMs until after touching the item.", - "devNote": [ - "This link doesn't accomplish anything, other than enabling Samus to return with Artificial Morph.", - "Samus does not obtain the item until returning and exiting G-Mode, so all the requirements must be here." - ] + "note": "Avoid moving too much between the right of the Owtch and the item to avoid overloading PLMs until after touching the item." + }, + { + "id": 12, + "link": [1, 2], + "name": "Come in Shinecharging, Leave With Temporary Blue", + "entranceCondition": { + "comeInShinecharging": { + "length": 5, + "openEnd": 0 + } + }, + "requires": [ + "canChainTemporaryBlue", + "canXRayTurnaround" + ], + "exitCondition": { + "leaveWithTemporaryBlue": { + "direction": "any" + } + }, + "unlocksDoors": [{"types": ["ammo"], "requires": []}] }, { "id": 14, @@ -617,6 +605,31 @@ ], "devNote": "This strat is applicable with Crocomire's Room and the Post Crocomire Jump Room." }, + { + "link": [2, 1], + "name": "G-Mode Morph", + "entranceCondition": { + "comeInWithGMode": { + "mode": "any", + "morphed": true + }, + "comesThroughToilet": "any" + }, + "requires": [ + {"or": [ + {"and": [ + "Gravity", + {"or": [ + "h_artificialMorphIBJ", + "h_artificialMorphSpringBallBombJump" + ]} + ]}, + "h_artificialMorphDoubleSpringBallJump" + ]} + ], + "collectsItems": [3], + "flashSuitChecked": true + }, { "id": 25, "link": [2, 2], @@ -1398,15 +1411,6 @@ "Fire a Grapple shot after entering the room, to allow Samus to move further right and get onto the ledge." ] }, - { - "id": 59, - "link": [3, 1], - "name": "G-Mode Morph Return", - "requires": [ - {"obstaclesCleared": ["A"]} - ], - "devNote": "Samus does not obtain the item until returning and exiting G-Mode, so all the requirements are on the matching strat that clears the obstacle." - }, { "id": 60, "link": [3, 2],