Pink Brinstar Hopper Room

Room ID: 61

Wiki
Difficulty filter

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 1,
    "openEnd": 1
  }
}
From: 1
Left Door
To: 1
Left Door

This assumes you don't know you're entering this room, and take a Small Sidehopper hit quickly. The Small Sidehoppers may deliver more of the hits, but this is an assumed worst case scenario

Requires:

{
  "enemyDamage": {
    "enemy": "Sm. Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
{
  "enemyDamage": {
    "enemy": "Sidehopper",
    "type": "contact",
    "hits": 3
  }
}

Clears obstacles: A

From: 1
Left Door
To: 1
Left Door

This assumes you don't know you're entering this room, and take a Small Sidehopper hit quickly.

Requires:

{
  "enemyDamage": {
    "enemy": "Sm. Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
{
  "enemyDamage": {
    "enemy": "Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
{
  "or": [
    "Spazer",
    "Wave"
  ]
}

Clears obstacles: A

From: 1
Left Door
To: 1
Left Door

This assumes you don't know you're entering this room, and take a Small Sidehopper hit quickly.

Requires:

{
  "enemyDamage": {
    "enemy": "Sm. Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
{
  "enemyKill": {
    "enemies": [
      [
        "Sidehopper",
        "Sm. Sidehopper",
        "Sm. Sidehopper"
      ]
    ],
    "explicitWeapons": [
      "Missile",
      "Super",
      "PowerBomb",
      "ScrewAttack",
      "Plasma"
    ]
  }
}

Clears obstacles: A

From: 1
Left Door
To: 1
Left Door

Weaken the big hopper with a Power Beam shot and then use one Super to hit all three enemies when they stack together.

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

{
  "enemyDamage": {
    "enemy": "Sm. Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
"canPrepareForNextRoom"
{
  "ammo": {
    "type": "Super",
    "count": 1
  }
}

Clears obstacles: A

From: 1
Left Door
To: 1
Left Door

Requires:

"canPrepareForNextRoom"
"ScrewAttack"

Clears obstacles: A

From: 1
Left Door
To: 1
Left Door

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 1
  }
}

Requires:

"canPrepareForNextRoom"

Clears obstacles: A

From: 1
Left Door
To: 1
Left Door

Entrance condition:

{
  "comeInWithSpark": {}
}

Requires:

"canPrepareForNextRoom"
{
  "shinespark": {
    "frames": 24
  }
}

Clears obstacles: A

Bounce on the Power Bomb, then quickly kill the remaining Sidehopper with a strong beam, ammo, or pseudo-screw. If Samus has a weak beam, use the bomb to boost to the right to get the Sidehopper to jump to the right, then morph under it while killing it.

Entrance condition:

{
  "comeInJumping": {
    "speedBooster": "any",
    "minTiles": 0.4375
  }
}

Requires:

"canPrepareForNextRoom"
{
  "tech": "canJumpIntoIBJ"
}
"canResetFallSpeed"
"h_canUsePowerBombs"
"canHitbox"
{
  "or": [
    "canPseudoScrew",
    "Plasma",
    {
      "ammo": {
        "type": "Missile",
        "count": 2
      }
    },
    {
      "ammo": {
        "type": "Super",
        "count": 1
      }
    },
    {
      "and": [
        "Ice",
        "Wave"
      ]
    },
    {
      "and": [
        "Ice",
        "Spazer"
      ]
    },
    {
      "and": [
        "Wave",
        "Spazer"
      ]
    },
    {
      "and": [
        "canTrickyJump",
        {
          "tech": "canBombHorizontally"
        }
      ]
    }
  ]
}
From: 1
Left Door
To: 1
Left Door

Jump straight up and shoot with the correct timing. This strat involves shooting a Super diagonally from the correct height while flush against the left wall. Its acceleration will cause it to clip into the blue gate off-screen.

Requires:

{
  "notable": "Reverse Gate Glitch"
}
{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "or": [
    "canTrickyJump",
    "h_canBackIntoCorner"
  ]
}
"HiJump"
"canOffScreenSuperShot"

Clears obstacles: B

Use damage from the small sidehopper to align against the left wall. Jump straight up and shoot with the correct timing. This strat involves shooting a Super diagonally from the correct height while flush against the left wall. Its acceleration will cause it to clip into the blue gate off-screen.

Requires:

{
  "notable": "Reverse Gate Glitch"
}
{
  "enemyDamage": {
    "enemy": "Sm. Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
{
  "enemyDamage": {
    "enemy": "Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
"canNeutralDamageBoost"
"HiJump"
"canOffScreenSuperShot"

Clears obstacles: B

From: 1
Left Door
To: 1
Left Door

Use a stationary spinjump, or spinjump against the wall and turn around without moving; and shoot with the same correct timing. This strat involves shooting a Super diagonally from the correct height while flush against the left wall. Its acceleration will cause it to clip into the blue gate off-screen.

Requires:

{
  "notable": "Reverse Gate Glitch"
}
{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "or": [
    "canTrickyJump",
    "h_canBackIntoCorner"
  ]
}
"canStationarySpinJump"
"SpaceJump"
"canOffScreenSuperShot"

Clears obstacles: B

From: 1
Left Door
To: 1
Left Door

Build run speed and jump into the left wall, turning around without changing Samus' pixel position. This strat involves shooting a Super diagonally from the correct height while flush against the left wall. Its acceleration will cause it to clip into the blue gate off-screen.

Requires:

{
  "notable": "Reverse Gate Glitch"
}
{
  "obstaclesCleared": [
    "A"
  ]
}
"canTrickyDashJump"
"canOffScreenSuperShot"

Clears obstacles: B

From: 1
Left Door
To: 1
Left Door

A consistent setup is to align with the wall below the door frame facing right. Jump and turn around to land on the door frame. Then jump and turn around again to return to being aligned with the wall but at the right height for shooting the Super. This strat involves shooting a Super diagonally from the correct height while flush against the left wall. Its acceleration will cause it to clip into the blue gate off-screen.

Requires:

{
  "notable": "Reverse Gate Glitch"
}
{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "doorUnlockedAtNode": 1
}
"canTrickyJump"
"canOffScreenSuperShot"

Clears obstacles: B

Unlocks doors:

{"types":["ammo"],"requires":[]}
From: 1
Left Door
To: 1
Left Door

Entrance condition:

{
  "comeInWithGMode": {
    "mode": "indirect",
    "morphed": false
  }
}

Clears obstacles: B, C

Kill the Sidehoppers with a Power Bomb upon entry.

Entrance condition:

{
  "comeInWithGMode": {
    "mode": "indirect",
    "morphed": true
  }
}

Requires:

{
  "enemyDamage": {
    "enemy": "Sm. Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
"h_canArtificialMorphPowerBomb"

Clears obstacles: A, B, C

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}
"h_canCrystalFlash"

This is possible to do without taking a second hit: Enter the room in a jump, then shoot down to open the door and land in the doorsill.

Entrance condition:

{
  "comeInJumping": {
    "minTiles": 1,
    "speedBooster": "any"
  }
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

{"types":["ammo"],"requires":["never"]}
From: 1
Left Door
To: 1
Left Door

This is possible to do without taking a second hit: Enter the room in a jump, then shoot down to open the door and land in the doorsill.

Requires:

{
  "obstaclesNotCleared": [
    "A"
  ]
}
{
  "enemyDamage": {
    "enemy": "Sm. Sidehopper",
    "type": "contact",
    "hits": 1
  }
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

{"types":["missiles","super"],"requires":[]}
{"types":["powerbomb"],"requires":["never"]}
From: 1
Left Door
To: 1
Left Door

Requires:

{
  "enemyDamage": {
    "enemy": "Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
From: 1
Left Door
To: 2
Right Door

Requires:

"canIBJ"
{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "or": [
    "Wave",
    {
      "obstaclesCleared": [
        "B"
      ]
    }
  ]
}

Kill the Sidehoppers with Bombs or a Power Bomb, then IBJ up onto the Grapple block.

Entrance condition:

{
  "comeInWithGMode": {
    "mode": "indirect",
    "morphed": true
  }
}

Requires:

"h_canArtificialMorphIBJ"
{
  "enemyDamage": {
    "enemy": "Sm. Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
{
  "or": [
    {
      "enemyDamage": {
        "enemy": "Sidehopper",
        "type": "contact",
        "hits": 3
      }
    },
    "h_canArtificialMorphPowerBomb"
  ]
}

Clears obstacles: A, B

From: 1
Left Door
To: 3
Top Junction

Requires:

{
  "or": [
    {
      "obstaclesCleared": [
        "A"
      ]
    },
    {
      "enemyDamage": {
        "enemy": "Sm. Sidehopper",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
{
  "or": [
    "SpaceJump",
    "canWalljump",
    {
      "and": [
        "Grapple",
        {
          "obstaclesNotCleared": [
            "C"
          ]
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    }
  ]
}
From: 1
Left Door
To: 3
Top Junction

Entrance condition:

{
  "comeInJumping": {
    "minTiles": 1,
    "speedBooster": "any"
  }
}

Requires:

"canPrepareForNextRoom"
{
  "or": [
    "SpaceJump",
    "canWalljump",
    {
      "and": [
        "Grapple",
        {
          "obstaclesNotCleared": [
            "C"
          ]
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    }
  ]
}
From: 1
Left Door
To: 3
Top Junction

Run from the left side to the right, then jump just before or at the end of the runway to get up onto the Grapple block.

Requires:

"HiJump"
"canTrickyJump"
"SpeedBooster"
{
  "obstaclesCleared": [
    "A"
  ]
}
From: 1
Left Door
To: 3
Top Junction

Perform a very precise Spring Ball jump from the doorframe onto the Grapple block. A running spin jump or crouch jump can be used.

Requires:

{
  "doorUnlockedAtNode": 1
}
"canTrickySpringBallJump"
"canTrickyJump"
{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "obstaclesNotCleared": [
    "C"
  ]
}
From: 1
Left Door
To: 3
Top Junction

Jump into the room and onto the Grapple block.

Entrance condition:

{
  "comeInJumping": {
    "speedBooster": true,
    "minTiles": 34.4375
  }
}

Requires:

"canPrepareForNextRoom"
"canTrickyJump"
From: 1
Left Door
To: 3
Top Junction

Jump into the room and onto the Grapple block.

Entrance condition:

{
  "comeInJumping": {
    "speedBooster": true,
    "minTiles": 25
  }
}

Requires:

"canPrepareForNextRoom"
"canTrickyDashJump"
From: 1
Left Door
To: 3
Top Junction

Jump into the room and onto the Grapple block.

Entrance condition:

{
  "comeInJumping": {
    "speedBooster": true,
    "minTiles": 6.4375
  }
}

Requires:

"canPrepareForNextRoom"
"HiJump"
"canDisableEquipment"
"canCarefulJump"
From: 1
Left Door
To: 3
Top Junction

Jump into the room and onto the Grapple block. Requires a runway of only 2 tiles in the adjacent room.

Entrance condition:

{
  "comeInJumping": {
    "speedBooster": true,
    "minTiles": 1.4375
  }
}

Requires:

"canPrepareForNextRoom"
"HiJump"
"canTrickyDashJump"
"canDisableEquipment"
From: 1
Left Door
To: 3
Top Junction

Perform a Spring Ball jump from a speedy jump in the previous room.

Entrance condition:

{
  "comeInJumping": {
    "speedBooster": true,
    "minTiles": 7
  }
}

Requires:

"canPrepareForNextRoom"
"canTrickySpringBallJump"
"canCarefulJump"
From: 1
Left Door
To: 3
Top Junction

Perform a very precise Spring Ball jump through the transition and onto the Grapple block. A running spin jump or crouch jump can be used.

Entrance condition:

{
  "comeInJumping": {
    "speedBooster": false,
    "minTiles": 0.4375
  }
}

Requires:

"canPrepareForNextRoom"
"canTrickySpringBallJump"
"canTrickyJump"
From: 1
Left Door
To: 3
Top Junction

Come in with a spring ball bounce after gaining speed on a remote runway using at least 34 tiles.

Entrance condition:

{
  "comeInWithSpringBallBounce": {
    "speedBooster": true,
    "remoteAndLandingMinTiles": [
      [
        34,
        1
      ]
    ],
    "movementType": "any"
  }
}
From: 1
Left Door
To: 3
Top Junction

Jump into the room and spark up onto the grapple block.

Entrance condition:

{
  "comeInJumping": {
    "speedBooster": false,
    "minTiles": 0.4375
  }
}

Requires:

{
  "useFlashSuit": {}
}
{
  "or": [
    {
      "shinespark": {
        "frames": 16,
        "excessFrames": 8
      }
    },
    {
      "and": [
        "HiJump",
        {
          "shinespark": {
            "frames": 11,
            "excessFrames": 7
          }
        }
      ]
    }
  ]
}
From: 1
Left Door
To: 3
Top Junction

Jump into the room and spark up onto the grapple block.

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

"HiJump"
{
  "useFlashSuit": {}
}
{
  "shinespark": {
    "frames": 20,
    "excessFrames": 2
  }
}
From: 1
Left Door
To: 3
Top Junction

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "useFlashSuit": {}
}
{
  "or": [
    {
      "shinespark": {
        "frames": 16,
        "excessFrames": 7
      }
    },
    {
      "and": [
        "HiJump",
        {
          "shinespark": {
            "frames": 12,
            "excessFrames": 7
          }
        }
      ]
    }
  ]
}
From: 1
Left Door
To: 3
Top Junction

Kill the Sidehoppers with Bombs or a Power Bomb, then IBJ up onto the Grapple block. Use Wave to get through.

Entrance condition:

{
  "comeInWithGMode": {
    "mode": "any",
    "morphed": true
  }
}

Requires:

"h_canArtificialMorphIBJ"
{
  "enemyDamage": {
    "enemy": "Sm. Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
{
  "or": [
    {
      "enemyDamage": {
        "enemy": "Sidehopper",
        "type": "contact",
        "hits": 3
      }
    },
    "h_canArtificialMorphPowerBomb"
  ]
}

Clears obstacles: A

From: 1
Left Door
To: 3
Top Junction

To minimize damage from the Hoppers, get stuck in the door relatively high and move quickly. Climb up somewhat less than 1 screen, until Samus' head appears between 1 and 3 tiles below the door. Then perform a turn-around spin jump to the right to get on top of the Grapple block.

Entrance condition:

{
  "comeInWithDoorStuckSetup": {}
}

Requires:

{
  "notable": "Hopper X-Ray Climb"
}
"canXRayClimb"
{
  "enemyDamage": {
    "enemy": "Sidehopper",
    "type": "contact",
    "hits": 2
  }
}
From: 1
Left Door
To: 4
Frozen Hopper Junction

Carefully freeze the hoppers without taking too much damage but also without accidently killing all of the enemies.

Requires:

{
  "obstaclesNotCleared": [
    "A"
  ]
}
"canTrickyUseFrozenEnemies"
{
  "enemyDamage": {
    "enemy": "Sm. Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
{
  "enemyDamage": {
    "enemy": "Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
{
  "or": [
    {
      "and": [
        "Wave",
        "Spazer"
      ]
    },
    "Plasma",
    {
      "enemyDamage": {
        "enemy": "Sidehopper",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

Entrance condition:

{
  "comeInWithGrappleTeleport": {
    "blockPositions": [
      [
        2,
        29
      ]
    ]
  }
}

Bypasses door shell: true

From: 2
Right Door
To: 1
Left Door

Entrance condition:

{
  "comeInWithGrappleTeleport": {
    "blockPositions": [
      [
        2,
        29
      ]
    ]
  }
}

Exit condition:

{
  "leaveWithGrappleTeleport": {
    "blockPositions": [
      [
        2,
        29
      ]
    ]
  }
}

Bypasses door shell: true

From: 2
Right Door
To: 2
Right Door

Exit condition:

{
  "leaveWithRunway": {
    "length": 6,
    "openEnd": 1
  }
}
From: 2
Right Door
To: 2
Right Door

Requires:

"h_canCrystalFlash"

Clears obstacles: A

From: 2
Right Door
To: 2
Right Door

Requires:

"Charge"
"Plasma"
"canSpecialBeamAttack"
{
  "ammo": {
    "type": "PowerBomb",
    "count": 1
  }
}

Clears obstacles: A

From: 2
Right Door
To: 3
Top Junction

Requires:

{
  "or": [
    "canWalljump",
    "h_canFly",
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    }
  ]
}

Clears obstacles: B

From: 2
Right Door
To: 3
Top Junction

The elevator can be raised by hitting below the shot block with a Bomb.

Requires:

"h_canUseMorphBombs"

Clears obstacles: B

From: 2
Right Door
To: 3
Top Junction

Use a Power Bomb against the left wall or Wave to kill the enemies and ride the elevator.

Requires:

{
  "or": [
    "h_canUsePowerBombs",
    "Wave"
  ]
}

Clears obstacles: A, B

From: 2
Right Door
To: 3
Top Junction

The elevator can be raised by clipping a shot into the floor, shot while falling with the right amount of vertical speed. This can be done with a Missile, Super, or charged Spazer or Plasma shot, a well positioned angle Spazer shot while crouched, or an or Ice SBA.

Requires:

{
  "notable": "Shot Clip to Ride the Elevator"
}
{
  "or": [
    {
      "ammo": {
        "type": "Missile",
        "count": 1
      }
    },
    {
      "ammo": {
        "type": "Super",
        "count": 1
      }
    },
    "Spazer",
    {
      "and": [
        "Charge",
        "Plasma"
      ]
    },
    {
      "and": [
        "Charge",
        "Ice",
        "canSpecialBeamAttack",
        {
          "ammo": {
            "type": "PowerBomb",
            "count": 1
          }
        }
      ]
    }
  ]
}

Clears obstacles: B

From: 2
Right Door
To: 3
Top Junction

Jump near the end of the runway in-room. Assumes there is a runway in the adjacent room of at least 37 tiles.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": true,
    "minTiles": 37
  }
}
From: 2
Right Door
To: 3
Top Junction

Jump at the end of the runway in-room. Assumes there is a runway in the adjacent room of at least 7 tiles.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": true,
    "minTiles": 7
  }
}

Requires:

"HiJump"
From: 2
Right Door
To: 3
Top Junction

Jump at the end of the runway in-room. Assumes that a runway of exactly 29 tiles is used in the adjacent room.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": true,
    "minTiles": 29
  }
}

Requires:

"canTrickyDashJump"
From: 2
Right Door
To: 3
Top Junction

Jump at the very end of the runway in-room. Requires a runway in the adjacent room of at least 6 tiles.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": true,
    "minTiles": 6
  }
}

Requires:

"HiJump"
"canTrickyJump"
From: 2
Right Door
To: 3
Top Junction

Jump at the very end of the runway in-room. Requires a runway in the adjacent room of at least 7 tiles.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": true,
    "minTiles": 7
  }
}

Requires:

"canTrickySpringBallJump"
"canTrickyDashJump"
From: 2
Right Door
To: 3
Top Junction

Start the elevator ride by using Screw Attack or Pseudo Screw in the hole. Kago the elevator to fall back in and hit the elevator again. This is much easier while the elevator is still rising, but can still be done with Morph afterwards. Unless HiJump is owned, this will need to be done once more to get high enough to get to the blue gate.

Requires:

{
  "notable": "Screw and Kago to Ride the Elevator"
}
"canKago"
{
  "or": [
    "ScrewAttack",
    "canPseudoScrew"
  ]
}
{
  "or": [
    {
      "and": [
        "HiJump",
        {
          "or": [
            "canCrouchJump",
            "canDownGrab"
          ]
        }
      ]
    },
    "canTrickyJump",
    "Morph"
  ]
}

Clears obstacles: B

From: 2
Right Door
To: 3
Top Junction

Entrance condition:

{
  "comeInShinecharging": {
    "length": 5,
    "openEnd": 1
  }
}

Requires:

{
  "or": [
    {
      "shinespark": {
        "frames": 22,
        "excessFrames": 4
      }
    },
    {
      "and": [
        "canMidairShinespark",
        {
          "shinespark": {
            "frames": 15,
            "excessFrames": 3
          }
        }
      ]
    },
    {
      "and": [
        "canMidairShinespark",
        "HiJump",
        {
          "shinespark": {
            "frames": 12,
            "excessFrames": 4
          }
        }
      ]
    }
  ]
}

Clears obstacles: B

From: 2
Right Door
To: 3
Top Junction

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 1
  }
}

Requires:

{
  "shinespark": {
    "frames": 22,
    "excessFrames": 4
  }
}

Clears obstacles: B

From: 2
Right Door
To: 3
Top Junction

Come in with a spring ball bounce after gaining speed on a remote runway using at least 42 tiles.

Entrance condition:

{
  "comeInWithSpringBallBounce": {
    "speedBooster": true,
    "remoteAndLandingMinTiles": [
      [
        42,
        0
      ]
    ],
    "movementType": "any"
  }
}
From: 2
Right Door
To: 3
Top Junction

Come in with a spring ball bounce after gaining speed on a remote runway using exactly 32 tiles.

Entrance condition:

{
  "comeInWithSpringBallBounce": {
    "speedBooster": true,
    "remoteAndLandingMinTiles": [
      [
        32,
        0
      ]
    ],
    "movementType": "any"
  }
}

Requires:

"canTrickyDashJump"
"canInsaneJump"

Shinesparking horizontally into the wall will trigger the elevator as Samus's echos hit it.

Entrance condition:

{
  "comeInShinecharging": {
    "length": 5,
    "openEnd": 1
  }
}

Requires:

{
  "notable": "Shinespark into the Wall to Ride the Elevator"
}
"canHorizontalShinespark"
{
  "shinespark": {
    "frames": 1,
    "excessFrames": 1
  }
}

Clears obstacles: B

Shinesparking horizontally into the wall will trigger the elevator as Samus's echos hit it.

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 45
  }
}

Requires:

{
  "notable": "Shinespark into the Wall to Ride the Elevator"
}
"canHorizontalShinespark"
{
  "shinespark": {
    "frames": 1,
    "excessFrames": 1
  }
}

Clears obstacles: B

Shinesparking horizontally into the wall will trigger the elevator as Samus's echos hit it.

Entrance condition:

{
  "comeInWithSpark": {}
}

Requires:

{
  "notable": "Shinespark into the Wall to Ride the Elevator"
}
"canHorizontalShinespark"
{
  "shinespark": {
    "frames": 15,
    "excessFrames": 6
  }
}

Clears obstacles: B

Shinesparking horizontally into the wall will trigger the elevator as Samus's echos hit it.

Requires:

{
  "notable": "Shinespark into the Wall to Ride the Elevator"
}
"canHorizontalShinespark"
{
  "useFlashSuit": {}
}
{
  "shinespark": {
    "frames": 1,
    "excessFrames": 1
  }
}

Clears obstacles: B

From: 2
Right Door
To: 3
Top Junction

X-Ray climb until Samus is a little over halfway off screen; the position is not precise. Face right, then do a turnaround buffer spin jump into a Spring Ball jump to reach the ledge. The pause input can be pressed at the same time as the turnaround. It helps to do an airball to gain horizontal speed. The jump input after pausing should not be buffered, in order to allow a little time for the spring fling horizontal speed to take effect.

Entrance condition:

{
  "comeInWithDoorStuckSetup": {}
}

Requires:

"canXRayClimb"
"canTrickyJump"
"canLateralMidAirMorph"
"canTrickySpringBallJump"
"canSpringFling"
From: 2
Right Door
To: 3
Top Junction

Get stuck 3 pixels inside the door, and X-ray climb to a precise height: after just one pixel of Samus' feet are visible while crouching facing left, perform exactly 7 more X-Ray stand-ups. Use X-ray to face left, then run and jump to barely make it onto the ledge.

Entrance condition:

{
  "comeInWithDoorStuckSetup": {}
}

Requires:

"HiJump"
"canXRayClimb"
"canOffScreenMovement"
"canInsaneJump"

Enter with G-Mode and use X-Ray to get stuck 9 pixels inside the door. X-Ray climb to a relatively specific height: after just one pixel of Samus' feet are visible while crouching facing left, perform between 20 and 22 more X-Ray stand-ups (any of these work). Use X-ray to face left, then run and jump to barely make it onto the ledge.

Entrance condition:

{
  "comeInWithGMode": {
    "mode": "direct",
    "morphed": false
  }
}

Requires:

"canXRayClimb"
"canOffScreenMovement"
"canInsaneJump"
From: 2
Right Door
To: 3
Top Junction

Entrance condition:

{
  "comeInWithGMode": {
    "mode": "any",
    "morphed": true
  }
}

Requires:

"h_canArtificialMorphIBJ"

Clears obstacles: B

From: 2
Right Door
To: 3
Top Junction

Using a power bomb against the left wall will kill the enemies and trigger the elevator.

Entrance condition:

{
  "comeInWithGMode": {
    "mode": "any",
    "morphed": true
  }
}

Requires:

"h_canArtificialMorphPowerBomb"

Clears obstacles: A, B

From: 2
Right Door
To: 3
Top Junction

Entrance condition:

{
  "comeInWithGrappleTeleport": {
    "blockPositions": [
      [
        5,
        3
      ],
      [
        7,
        2
      ]
    ]
  }
}
From: 3
Top Junction
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}
From: 3
Top Junction
To: 1
Left Door

Jump far to the left in order to hit a small Sidehopper instead of a large one.

Requires:

{
  "or": [
    {
      "enemyDamage": {
        "enemy": "Sidehopper",
        "type": "contact",
        "hits": 1
      }
    },
    {
      "and": [
        "canCarefulJump",
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    }
  ]
}
From: 3
Top Junction
To: 1
Left Door

It is possible to kill the Sidehoppers damageless by jumping into the bottom left corner then quickly spin jumping again.

Requires:

"ScrewAttack"
{
  "or": [
    "canCarefulJump",
    {
      "enemyDamage": {
        "enemy": "Sm. Sidehopper",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}

Clears obstacles: A

From: 3
Top Junction
To: 2
Right Door

Requires:

{
  "obstaclesCleared": [
    "B"
  ]
}
{
  "or": [
    "canCarefulJump",
    "canWalljump",
    "SpaceJump",
    "Grapple"
  ]
}
From: 3
Top Junction
To: 3
Top Junction

Requires:

"Wave"

Clears obstacles: B

From: 4
Frozen Hopper Junction
To: 1
Left Door

Clears obstacles: A

From: 4
Frozen Hopper Junction
To: 3
Top Junction

Use a Frozen Hopper as a platform to jump up to the Grapple Block with an additional movement item. Letting it jump from the spike ledge or the door frame will make the jump easier, but it is difficult to avoid Hopper damage when setting this up.

Requires:

{
  "obstaclesNotCleared": [
    "A"
  ]
}
"canTrickyUseFrozenEnemies"
{
  "or": [
    "HiJump",
    "canSpringBallJumpMidAir"
  ]
}
{
  "or": [
    {
      "enemyDamage": {
        "enemy": "Sm. Sidehopper",
        "type": "contact",
        "hits": 1
      }
    },
    "canTrickyJump"
  ]
}
From: 4
Frozen Hopper Junction
To: 4
Frozen Hopper Junction

Freeze a small hopper to the side and kill the remaining Side Hoppers. Stand against the left wall (damage knockback will align Samus with the wall) and shoot up to freeze the hopper. Jump up to land on it, aligned with the wall. Alternatively, Jump and shoot down to freeze the hopper as a way to avoid damage. Fire a Super just above the door shell to hit the Gate. This strat involves shooting a Super diagonally from the correct height while flush against the left wall. Its acceleration will cause it to clip into the blue gate off-screen.

Requires:

{
  "notable": "Reverse Gate Glitch"
}
{
  "obstaclesNotCleared": [
    "A"
  ]
}
"canTrickyUseFrozenEnemies"
"h_canBackIntoCorner"
"canOffScreenSuperShot"
{
  "enemyDamage": {
    "enemy": "Sm. Sidehopper",
    "type": "contact",
    "hits": 1
  }
}

Clears obstacles: B

From: 4
Frozen Hopper Junction
To: 4
Frozen Hopper Junction

This strat involves shooting a Super diagonally from the correct height while flush against the left wall. Its acceleration will cause it to clip into the blue gate off-screen. Jump straight up and shoot with the correct timing. Taking damage can be used to align against the wall.

Requires:

{
  "notable": "Reverse Gate Glitch"
}
{
  "obstaclesNotCleared": [
    "A"
  ]
}
{
  "or": [
    "h_canBackIntoCorner",
    {
      "enemyDamage": {
        "enemy": "Sm. Sidehopper",
        "type": "contact",
        "hits": 1
      }
    },
    "canTrickyJump"
  ]
}
"HiJump"
"canOffScreenSuperShot"

Clears obstacles: B

{
  "$schema": "../../../schema/m3-room.schema.json",
  "id": 61,
  "name": "Pink Brinstar Hopper Room",
  "area": "Brinstar",
  "subarea": "Pink",
  "playable": true,
  "roomAddress": "0x7A130",
  "roomEnvironments": [
    {
      "heated": false
    }
  ],
  "nodes": [
    {
      "id": 1,
      "name": "Left Door",
      "nodeType": "door",
      "nodeSubType": "gray",
      "nodeAddress": "0x0018fb2",
      "doorOrientation": "left",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ],
      "locks": [
        {
          "name": "Pink Brinstar Hoppers Left Gray Lock (to Big Pink)",
          "lockType": "killEnemies",
          "unlockStrats": [
            {
              "name": "Base",
              "notable": false,
              "requires": [
                {
                  "obstaclesCleared": [
                    "A"
                  ]
                }
              ]
            }
          ],
          "yields": [
            "f_ZebesAwake"
          ]
        }
      ]
    },
    {
      "id": 2,
      "name": "Right Door",
      "nodeType": "door",
      "nodeSubType": "gray",
      "nodeAddress": "0x0018fbe",
      "doorOrientation": "right",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ],
      "locks": [
        {
          "name": "Pink Brinstar Hoppers Right Gray Lock (to E-Tank)",
          "lockType": "killEnemies",
          "unlockStrats": [
            {
              "name": "Base",
              "notable": false,
              "requires": [
                {
                  "obstaclesCleared": [
                    "A"
                  ]
                }
              ]
            }
          ],
          "yields": [
            "f_ZebesAwake"
          ],
          "devNote": "Hoppers must be killed, possibly by going to 1 and back."
        }
      ]
    },
    {
      "id": 3,
      "name": "Top Junction",
      "nodeType": "junction",
      "nodeSubType": "junction",
      "note": "Represents being on the Grapple block if going right or to the right of the gate, if going left."
    },
    {
      "id": 4,
      "name": "Frozen Hopper Junction",
      "nodeType": "junction",
      "nodeSubType": "junction",
      "note": "Represents being with the Hoppers, one of them is frozen, and they are no longer a threat to Samus."
    }
  ],
  "obstacles": [
    {
      "id": "A",
      "name": "Hoppers",
      "obstacleType": "enemies"
    },
    {
      "id": "B",
      "name": "Blue Gate",
      "obstacleType": "inanimate"
    },
    {
      "id": "C",
      "name": "In G-Mode - Can't Use Grapple, Open Door",
      "obstacleType": "abstract"
    }
  ],
  "enemies": [
    {
      "id": "e1",
      "groupName": "Pink Wave Gate Small Sidehoppers",
      "enemyName": "Sm. Sidehopper",
      "quantity": 2,
      "homeNodes": [
        1
      ]
    },
    {
      "id": "e2",
      "groupName": "Pink Wave Gate Sidehopper",
      "enemyName": "Sidehopper",
      "quantity": 1,
      "homeNodes": [
        1
      ]
    }
  ],
  "links": [
    {
      "from": 1,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        },
        {
          "id": 4
        }
      ]
    },
    {
      "from": 2,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        }
      ]
    },
    {
      "from": 3,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        }
      ]
    },
    {
      "from": 4,
      "to": [
        {
          "id": 1
        },
        {
          "id": 3
        },
        {
          "id": 4
        }
      ]
    }
  ],
  "strats": [
    {
      "id": 1,
      "link": [
        1,
        1
      ],
      "name": "Leave With Runway",
      "requires": [
        {
          "obstaclesCleared": [
            "A"
          ]
        }
      ],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 1,
          "openEnd": 1
        }
      }
    },
    {
      "id": 2,
      "link": [
        1,
        1
      ],
      "name": "Power Beam Kill",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 3
          }
        }
      ],
      "clearsObstacles": [
        "A"
      ],
      "note": [
        "This assumes you don't know you're entering this room, and take a Small Sidehopper hit quickly.",
        "The Small Sidehoppers may deliver more of the hits, but this is an assumed worst case scenario"
      ]
    },
    {
      "id": 3,
      "link": [
        1,
        1
      ],
      "name": "Intermediate Weapon Kill",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "or": [
            "Spazer",
            "Wave"
          ]
        }
      ],
      "clearsObstacles": [
        "A"
      ],
      "note": "This assumes you don't know you're entering this room, and take a Small Sidehopper hit quickly."
    },
    {
      "id": 4,
      "link": [
        1,
        1
      ],
      "name": "Fast Weapon Kill",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "enemyKill": {
            "enemies": [
              [
                "Sidehopper",
                "Sm. Sidehopper",
                "Sm. Sidehopper"
              ]
            ],
            "explicitWeapons": [
              "Missile",
              "Super",
              "PowerBomb",
              "ScrewAttack",
              "Plasma"
            ]
          }
        }
      ],
      "clearsObstacles": [
        "A"
      ],
      "note": "This assumes you don't know you're entering this room, and take a Small Sidehopper hit quickly."
    },
    {
      "id": 5,
      "link": [
        1,
        1
      ],
      "name": "Stacked Super Kill",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        "canPrepareForNextRoom",
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        }
      ],
      "clearsObstacles": [
        "A"
      ],
      "note": "Weaken the big hopper with a Power Beam shot and then use one Super to hit all three enemies when they stack together."
    },
    {
      "id": 6,
      "link": [
        1,
        1
      ],
      "name": "Kill on Entry (Screw Attack)",
      "requires": [
        "canPrepareForNextRoom",
        "ScrewAttack"
      ],
      "clearsObstacles": [
        "A"
      ]
    },
    {
      "id": 7,
      "link": [
        1,
        1
      ],
      "name": "Kill on Entry (Come In With Blue Speed)",
      "entranceCondition": {
        "comeInGettingBlueSpeed": {
          "length": 0,
          "openEnd": 1
        }
      },
      "requires": [
        "canPrepareForNextRoom"
      ],
      "clearsObstacles": [
        "A"
      ]
    },
    {
      "id": 8,
      "link": [
        1,
        1
      ],
      "name": "Kill on Entry (Come In With Spark)",
      "entranceCondition": {
        "comeInWithSpark": {}
      },
      "requires": [
        "canPrepareForNextRoom",
        {
          "shinespark": {
            "frames": 24
          }
        }
      ],
      "clearsObstacles": [
        "A"
      ]
    },
    {
      "id": 9,
      "link": [
        1,
        1
      ],
      "name": "Kill on Entry (Come In With Unmorph Power Bomb Boost)",
      "entranceCondition": {
        "comeInJumping": {
          "speedBooster": "any",
          "minTiles": 0.4375
        }
      },
      "requires": [
        "canPrepareForNextRoom",
        {
          "tech": "canJumpIntoIBJ"
        },
        "canResetFallSpeed",
        "h_canUsePowerBombs",
        "canHitbox",
        {
          "or": [
            "canPseudoScrew",
            "Plasma",
            {
              "ammo": {
                "type": "Missile",
                "count": 2
              }
            },
            {
              "ammo": {
                "type": "Super",
                "count": 1
              }
            },
            {
              "and": [
                "Ice",
                "Wave"
              ]
            },
            {
              "and": [
                "Ice",
                "Spazer"
              ]
            },
            {
              "and": [
                "Wave",
                "Spazer"
              ]
            },
            {
              "and": [
                "canTrickyJump",
                {
                  "tech": "canBombHorizontally"
                }
              ]
            }
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Bounce on the Power Bomb, then quickly kill the remaining Sidehopper with a strong beam, ammo, or pseudo-screw.",
        "If Samus has a weak beam, use the bomb to boost to the right to get the Sidehopper to jump to the right, then morph under it while killing it."
      ],
      "devNote": "This is significantly easier than a typical canUnmorphBombBoost, so it is instead modeled with canJumpIntoIBJ and canResetFallSpeed."
    },
    {
      "id": 10,
      "link": [
        1,
        1
      ],
      "name": "Reverse Gate Glitch (HiJump)",
      "requires": [
        {
          "notable": "Reverse Gate Glitch"
        },
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "or": [
            "canTrickyJump",
            "h_canBackIntoCorner"
          ]
        },
        "HiJump",
        "canOffScreenSuperShot"
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": [
        "Jump straight up and shoot with the correct timing.",
        "This strat involves shooting a Super diagonally from the correct height while flush against the left wall.",
        "Its acceleration will cause it to clip into the blue gate off-screen."
      ],
      "devNote": [
        "Springball jumps didn't look possible but was close.",
        "IBJ didn't look possible."
      ]
    },
    {
      "id": 11,
      "link": [
        1,
        1
      ],
      "name": "Reverse Gate Glitch (HiJump, Hoppers Alive)",
      "requires": [
        {
          "notable": "Reverse Gate Glitch"
        },
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        "canNeutralDamageBoost",
        "HiJump",
        "canOffScreenSuperShot"
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": [
        "Use damage from the small sidehopper to align against the left wall.",
        "Jump straight up and shoot with the correct timing.",
        "This strat involves shooting a Super diagonally from the correct height while flush against the left wall.",
        "Its acceleration will cause it to clip into the blue gate off-screen."
      ]
    },
    {
      "id": 12,
      "link": [
        1,
        1
      ],
      "name": "Reverse Gate Glitch (SpaceJump)",
      "requires": [
        {
          "notable": "Reverse Gate Glitch"
        },
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "or": [
            "canTrickyJump",
            "h_canBackIntoCorner"
          ]
        },
        "canStationarySpinJump",
        "SpaceJump",
        "canOffScreenSuperShot"
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": [
        "Use a stationary spinjump, or spinjump against the wall and turn around without moving; and shoot with the same correct timing.",
        "This strat involves shooting a Super diagonally from the correct height while flush against the left wall.",
        "Its acceleration will cause it to clip into the blue gate off-screen."
      ]
    },
    {
      "id": 13,
      "link": [
        1,
        1
      ],
      "name": "Reverse Gate Glitch (Speedy Jump)",
      "requires": [
        {
          "notable": "Reverse Gate Glitch"
        },
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        "canTrickyDashJump",
        "canOffScreenSuperShot"
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": [
        "Build run speed and jump into the left wall, turning around without changing Samus' pixel position.",
        "This strat involves shooting a Super diagonally from the correct height while flush against the left wall.",
        "Its acceleration will cause it to clip into the blue gate off-screen."
      ],
      "devNote": "The reverse gate glitch requires killing the enemies first, so it's required here."
    },
    {
      "id": 14,
      "link": [
        1,
        1
      ],
      "name": "Reverse Gate Glitch (Door Frame Jump)",
      "requires": [
        {
          "notable": "Reverse Gate Glitch"
        },
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "doorUnlockedAtNode": 1
        },
        "canTrickyJump",
        "canOffScreenSuperShot"
      ],
      "clearsObstacles": [
        "B"
      ],
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ],
      "note": [
        "A consistent setup is to align with the wall below the door frame facing right.",
        "Jump and turn around to land on the door frame.",
        "Then jump and turn around again to return to being aligned with the wall but at the right height for shooting the Super.",
        "This strat involves shooting a Super diagonally from the correct height while flush against the left wall.",
        "Its acceleration will cause it to clip into the blue gate off-screen."
      ],
      "devNote": [
        "The reverse gate glitch pretty much requires killing the enemies first, so it's required here.",
        "FIXME: direct GMode would have a usable door frame."
      ]
    },
    {
      "id": 15,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Indirect to Despawn Gate",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "indirect",
          "morphed": false
        }
      },
      "requires": [],
      "clearsObstacles": [
        "B",
        "C"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 16,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Morph Indirect to Despawn Gate Power Bomb Kill",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "indirect",
          "morphed": true
        }
      },
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        "h_canArtificialMorphPowerBomb"
      ],
      "clearsObstacles": [
        "A",
        "B",
        "C"
      ],
      "flashSuitChecked": true,
      "note": "Kill the Sidehoppers with a Power Bomb upon entry."
    },
    {
      "id": 17,
      "link": [
        1,
        1
      ],
      "name": "Crystal Flash",
      "requires": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        "h_canCrystalFlash"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 18,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Setup - Get Hit By Hopper (Jump Entry)",
      "entranceCondition": {
        "comeInJumping": {
          "minTiles": 1,
          "speedBooster": "any"
        }
      },
      "requires": [],
      "exitCondition": {
        "leaveWithGModeSetup": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "This is possible to do without taking a second hit:",
        "Enter the room in a jump, then shoot down to open the door and land in the doorsill."
      ]
    },
    {
      "id": 19,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Setup - Get Hit By Hopper",
      "requires": [
        {
          "obstaclesNotCleared": [
            "A"
          ]
        },
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        }
      ],
      "exitCondition": {
        "leaveWithGModeSetup": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "missiles",
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "This is possible to do without taking a second hit:",
        "Enter the room in a jump, then shoot down to open the door and land in the doorsill."
      ],
      "devNote": [
        "Version for entering from the right, or if unable to enter jumping.",
        "A Power Bomb would kill the hoppers."
      ]
    },
    {
      "id": 20,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Regain Mobility",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 1
          }
        }
      ],
      "gModeRegainMobility": {},
      "flashSuitChecked": true
    },
    {
      "id": 21,
      "link": [
        1,
        2
      ],
      "name": "IBJ",
      "requires": [
        "canIBJ",
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "or": [
            "Wave",
            {
              "obstaclesCleared": [
                "B"
              ]
            }
          ]
        }
      ],
      "devNote": [
        "IBJ requires the enemies to be killed",
        "The reverse gate glitch may be executed earlier from node 1 -> 1."
      ]
    },
    {
      "id": 22,
      "link": [
        1,
        2
      ],
      "name": "G-Mode Morph Indirect to Despawn Gate with IBJ",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "indirect",
          "morphed": true
        }
      },
      "requires": [
        "h_canArtificialMorphIBJ",
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "or": [
            {
              "enemyDamage": {
                "enemy": "Sidehopper",
                "type": "contact",
                "hits": 3
              }
            },
            "h_canArtificialMorphPowerBomb"
          ]
        }
      ],
      "clearsObstacles": [
        "A",
        "B"
      ],
      "flashSuitChecked": true,
      "note": "Kill the Sidehoppers with Bombs or a Power Bomb, then IBJ up onto the Grapple block."
    },
    {
      "id": 23,
      "link": [
        1,
        3
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            {
              "obstaclesCleared": [
                "A"
              ]
            },
            {
              "enemyDamage": {
                "enemy": "Sm. Sidehopper",
                "type": "contact",
                "hits": 1
              }
            }
          ]
        },
        {
          "or": [
            "SpaceJump",
            "canWalljump",
            {
              "and": [
                "Grapple",
                {
                  "obstaclesNotCleared": [
                    "C"
                  ]
                }
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpringBallJumpMidAir"
              ]
            }
          ]
        }
      ],
      "devNote": "The reverse gate glitch may be executed earlier from node 1 -> 1."
    },
    {
      "id": 24,
      "link": [
        1,
        3
      ],
      "name": "Jump into Room",
      "entranceCondition": {
        "comeInJumping": {
          "minTiles": 1,
          "speedBooster": "any"
        }
      },
      "requires": [
        "canPrepareForNextRoom",
        {
          "or": [
            "SpaceJump",
            "canWalljump",
            {
              "and": [
                "Grapple",
                {
                  "obstaclesNotCleared": [
                    "C"
                  ]
                }
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpringBallJumpMidAir"
              ]
            }
          ]
        }
      ]
    },
    {
      "id": 25,
      "link": [
        1,
        3
      ],
      "name": "Speedy Jump Onto Grapple Block",
      "requires": [
        "HiJump",
        "canTrickyJump",
        "SpeedBooster",
        {
          "obstaclesCleared": [
            "A"
          ]
        }
      ],
      "note": "Run from the left side to the right, then jump just before or at the end of the runway to get up onto the Grapple block."
    },
    {
      "id": 26,
      "link": [
        1,
        3
      ],
      "name": "Spring Ball from the Doorframe",
      "requires": [
        {
          "doorUnlockedAtNode": 1
        },
        "canTrickySpringBallJump",
        "canTrickyJump",
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "obstaclesNotCleared": [
            "C"
          ]
        }
      ],
      "note": [
        "Perform a very precise Spring Ball jump from the doorframe onto the Grapple block.",
        "A running spin jump or crouch jump can be used."
      ],
      "devNote": "FIXME: Direct GMode would have a usable door frame."
    },
    {
      "id": 27,
      "link": [
        1,
        3
      ],
      "name": "Speedy Jump",
      "entranceCondition": {
        "comeInJumping": {
          "speedBooster": true,
          "minTiles": 34.4375
        }
      },
      "requires": [
        "canPrepareForNextRoom",
        "canTrickyJump"
      ],
      "note": "Jump into the room and onto the Grapple block."
    },
    {
      "id": 28,
      "link": [
        1,
        3
      ],
      "name": "Tricky Speedy Jump",
      "entranceCondition": {
        "comeInJumping": {
          "speedBooster": true,
          "minTiles": 25
        }
      },
      "requires": [
        "canPrepareForNextRoom",
        "canTrickyDashJump"
      ],
      "note": "Jump into the room and onto the Grapple block."
    },
    {
      "id": 29,
      "link": [
        1,
        3
      ],
      "name": "Speedy HiJump",
      "entranceCondition": {
        "comeInJumping": {
          "speedBooster": true,
          "minTiles": 6.4375
        }
      },
      "requires": [
        "canPrepareForNextRoom",
        "HiJump",
        "canDisableEquipment",
        "canCarefulJump"
      ],
      "note": "Jump into the room and onto the Grapple block."
    },
    {
      "id": 30,
      "link": [
        1,
        3
      ],
      "name": "Tricky Speedy HiJump",
      "entranceCondition": {
        "comeInJumping": {
          "speedBooster": true,
          "minTiles": 1.4375
        }
      },
      "requires": [
        "canPrepareForNextRoom",
        "HiJump",
        "canTrickyDashJump",
        "canDisableEquipment"
      ],
      "note": "Jump into the room and onto the Grapple block. Requires a runway of only 2 tiles in the adjacent room.",
      "devNote": "It can be done with no open ends, but it's a fair bit tighter."
    },
    {
      "id": 31,
      "link": [
        1,
        3
      ],
      "name": "Cross-Room Spring Ball Jump",
      "entranceCondition": {
        "comeInJumping": {
          "speedBooster": true,
          "minTiles": 7
        }
      },
      "requires": [
        "canPrepareForNextRoom",
        "canTrickySpringBallJump",
        "canCarefulJump"
      ],
      "note": "Perform a Spring Ball jump from a speedy jump in the previous room."
    },
    {
      "id": 32,
      "link": [
        1,
        3
      ],
      "name": "Tricky Cross-Room Spring Ball Jump",
      "entranceCondition": {
        "comeInJumping": {
          "speedBooster": false,
          "minTiles": 0.4375
        }
      },
      "requires": [
        "canPrepareForNextRoom",
        "canTrickySpringBallJump",
        "canTrickyJump"
      ],
      "note": [
        "Perform a very precise Spring Ball jump through the transition and onto the Grapple block.",
        "A running spin jump or crouch jump can be used."
      ]
    },
    {
      "id": 33,
      "link": [
        1,
        3
      ],
      "name": "Spring Ball Bounce",
      "entranceCondition": {
        "comeInWithSpringBallBounce": {
          "speedBooster": true,
          "remoteAndLandingMinTiles": [
            [
              34,
              1
            ]
          ],
          "movementType": "any"
        }
      },
      "requires": [],
      "note": "Come in with a spring ball bounce after gaining speed on a remote runway using at least 34 tiles.",
      "devNote": "This requires extra run speed of at least $6.0."
    },
    {
      "id": 34,
      "link": [
        1,
        3
      ],
      "name": "Use Flash Suit",
      "entranceCondition": {
        "comeInJumping": {
          "speedBooster": false,
          "minTiles": 0.4375
        }
      },
      "requires": [
        {
          "useFlashSuit": {}
        },
        {
          "or": [
            {
              "shinespark": {
                "frames": 16,
                "excessFrames": 8
              }
            },
            {
              "and": [
                "HiJump",
                {
                  "shinespark": {
                    "frames": 11,
                    "excessFrames": 7
                  }
                }
              ]
            }
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": "Jump into the room and spark up onto the grapple block."
    },
    {
      "id": 35,
      "link": [
        1,
        3
      ],
      "name": "Use Flash Suit (Water Entrance)",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        "HiJump",
        {
          "useFlashSuit": {}
        },
        {
          "shinespark": {
            "frames": 20,
            "excessFrames": 2
          }
        }
      ],
      "flashSuitChecked": true,
      "note": "Jump into the room and spark up onto the grapple block.",
      "devNote": "The other strat should always be usable if there is air physics."
    },
    {
      "id": 36,
      "link": [
        1,
        3
      ],
      "name": "Use Flash Suit",
      "requires": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "useFlashSuit": {}
        },
        {
          "or": [
            {
              "shinespark": {
                "frames": 16,
                "excessFrames": 7
              }
            },
            {
              "and": [
                "HiJump",
                {
                  "shinespark": {
                    "frames": 12,
                    "excessFrames": 7
                  }
                }
              ]
            }
          ]
        }
      ],
      "flashSuitChecked": true
    },
    {
      "id": 37,
      "link": [
        1,
        3
      ],
      "name": "G-Mode Morph IBJ",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        "h_canArtificialMorphIBJ",
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "or": [
            {
              "enemyDamage": {
                "enemy": "Sidehopper",
                "type": "contact",
                "hits": 3
              }
            },
            "h_canArtificialMorphPowerBomb"
          ]
        }
      ],
      "clearsObstacles": [
        "A"
      ],
      "flashSuitChecked": true,
      "note": "Kill the Sidehoppers with Bombs or a Power Bomb, then IBJ up onto the Grapple block. Use Wave to get through."
    },
    {
      "id": 38,
      "link": [
        1,
        3
      ],
      "name": "Hopper X-Ray Climb",
      "entranceCondition": {
        "comeInWithDoorStuckSetup": {}
      },
      "requires": [
        {
          "notable": "Hopper X-Ray Climb"
        },
        "canXRayClimb",
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 2
          }
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "To minimize damage from the Hoppers, get stuck in the door relatively high and move quickly.",
        "Climb up somewhat less than 1 screen, until Samus' head appears between 1 and 3 tiles below the door.",
        "Then perform a turn-around spin jump to the right to get on top of the Grapple block."
      ],
      "devNote": [
        "It is possible to avoid all Hopper damage, but it is not clear if this can be done reliably.",
        "Two hits from the big Sidehopper appears to be a worst-case scenario."
      ]
    },
    {
      "id": 39,
      "link": [
        1,
        4
      ],
      "name": "Hopper Freeze",
      "requires": [
        {
          "obstaclesNotCleared": [
            "A"
          ]
        },
        "canTrickyUseFrozenEnemies",
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "or": [
            {
              "and": [
                "Wave",
                "Spazer"
              ]
            },
            "Plasma",
            {
              "enemyDamage": {
                "enemy": "Sidehopper",
                "type": "contact",
                "hits": 1
              }
            }
          ]
        }
      ],
      "note": [
        "Carefully freeze the hoppers without taking too much damage but also without accidently killing all of the enemies."
      ],
      "devNote": [
        "The Small Sidehoppers may deliver more of the hits, but this is an assumed worst case scenario"
      ]
    },
    {
      "id": 40,
      "link": [
        2,
        1
      ],
      "name": "Grapple Teleport",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              2,
              29
            ]
          ]
        }
      },
      "requires": [],
      "bypassesDoorShell": true
    },
    {
      "id": 41,
      "link": [
        2,
        1
      ],
      "name": "Carry Grapple Teleport",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              2,
              29
            ]
          ]
        }
      },
      "requires": [],
      "bypassesDoorShell": true,
      "exitCondition": {
        "leaveWithGrappleTeleport": {
          "blockPositions": [
            [
              2,
              29
            ]
          ]
        }
      }
    },
    {
      "id": 42,
      "link": [
        2,
        2
      ],
      "name": "Leave With Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 6,
          "openEnd": 1
        }
      }
    },
    {
      "id": 43,
      "link": [
        2,
        2
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_canCrystalFlash"
      ],
      "clearsObstacles": [
        "A"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 44,
      "link": [
        2,
        2
      ],
      "name": "Plasma SBA Sidehopper Kill",
      "requires": [
        "Charge",
        "Plasma",
        "canSpecialBeamAttack",
        {
          "ammo": {
            "type": "PowerBomb",
            "count": 1
          }
        }
      ],
      "clearsObstacles": [
        "A"
      ],
      "devNote": "This also raises the elevator, but using this method to get up is a bit obscure and would use the notable from 2->3."
    },
    {
      "id": 45,
      "link": [
        2,
        3
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "canWalljump",
            "h_canFly",
            {
              "and": [
                "HiJump",
                "canSpringBallJumpMidAir"
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "B"
      ]
    },
    {
      "id": 46,
      "link": [
        2,
        3
      ],
      "name": "Ride the Elevator",
      "requires": [
        "h_canUseMorphBombs"
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": "The elevator can be raised by hitting below the shot block with a Bomb."
    },
    {
      "id": 47,
      "link": [
        2,
        3
      ],
      "name": "Elevator with Power Bombs or Wave",
      "requires": [
        {
          "or": [
            "h_canUsePowerBombs",
            "Wave"
          ]
        }
      ],
      "clearsObstacles": [
        "A",
        "B"
      ],
      "note": "Use a Power Bomb against the left wall or Wave to kill the enemies and ride the elevator."
    },
    {
      "id": 48,
      "link": [
        2,
        3
      ],
      "name": "Shot Clip to Ride the Elevator",
      "requires": [
        {
          "notable": "Shot Clip to Ride the Elevator"
        },
        {
          "or": [
            {
              "ammo": {
                "type": "Missile",
                "count": 1
              }
            },
            {
              "ammo": {
                "type": "Super",
                "count": 1
              }
            },
            "Spazer",
            {
              "and": [
                "Charge",
                "Plasma"
              ]
            },
            {
              "and": [
                "Charge",
                "Ice",
                "canSpecialBeamAttack",
                {
                  "ammo": {
                    "type": "PowerBomb",
                    "count": 1
                  }
                }
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": [
        "The elevator can be raised by clipping a shot into the floor, shot while falling with the right amount of vertical speed.",
        "This can be done with a Missile, Super, or charged Spazer or Plasma shot, a well positioned angle Spazer shot while crouched, or an  or Ice SBA."
      ],
      "devNote": [
        "FIXME: Do we need leniency or another tech for this?",
        "This is only notable as a way to avoid wall jumps."
      ]
    },
    {
      "id": 49,
      "link": [
        2,
        3
      ],
      "name": "Speedy Jump",
      "entranceCondition": {
        "comeInRunning": {
          "speedBooster": true,
          "minTiles": 37
        }
      },
      "requires": [],
      "note": "Jump near the end of the runway in-room. Assumes there is a runway in the adjacent room of at least 37 tiles."
    },
    {
      "id": 50,
      "link": [
        2,
        3
      ],
      "name": "Speedy HiJump",
      "entranceCondition": {
        "comeInRunning": {
          "speedBooster": true,
          "minTiles": 7
        }
      },
      "requires": [
        "HiJump"
      ],
      "note": "Jump at the end of the runway in-room. Assumes there is a runway in the adjacent room of at least 7 tiles."
    },
    {
      "id": 51,
      "link": [
        2,
        3
      ],
      "name": "Tricky Speedy Jump",
      "entranceCondition": {
        "comeInRunning": {
          "speedBooster": true,
          "minTiles": 29
        }
      },
      "requires": [
        "canTrickyDashJump"
      ],
      "note": "Jump at the end of the runway in-room. Assumes that a runway of exactly 29 tiles is used in the adjacent room.",
      "devNote": "This requires extra run speed of exactly $6.0 or $6.1 when jumping."
    },
    {
      "id": 52,
      "link": [
        2,
        3
      ],
      "name": "Tricky Speedy HiJump",
      "entranceCondition": {
        "comeInRunning": {
          "speedBooster": true,
          "minTiles": 6
        }
      },
      "requires": [
        "HiJump",
        "canTrickyJump"
      ],
      "note": "Jump at the very end of the runway in-room. Requires a runway in the adjacent room of at least 6 tiles."
    },
    {
      "id": 53,
      "link": [
        2,
        3
      ],
      "name": "Tricky Speedy Spring Ball",
      "entranceCondition": {
        "comeInRunning": {
          "speedBooster": true,
          "minTiles": 7
        }
      },
      "requires": [
        "canTrickySpringBallJump",
        "canTrickyDashJump"
      ],
      "note": "Jump at the very end of the runway in-room. Requires a runway in the adjacent room of at least 7 tiles."
    },
    {
      "id": 54,
      "link": [
        2,
        3
      ],
      "name": "Screw and Kago to Ride the Elevator",
      "requires": [
        {
          "notable": "Screw and Kago to Ride the Elevator"
        },
        "canKago",
        {
          "or": [
            "ScrewAttack",
            "canPseudoScrew"
          ]
        },
        {
          "or": [
            {
              "and": [
                "HiJump",
                {
                  "or": [
                    "canCrouchJump",
                    "canDownGrab"
                  ]
                }
              ]
            },
            "canTrickyJump",
            "Morph"
          ]
        }
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": [
        "Start the elevator ride by using Screw Attack or Pseudo Screw in the hole.",
        "Kago the elevator to fall back in and hit the elevator again. This is much easier while the elevator is still rising, but can still be done with Morph afterwards.",
        "Unless HiJump is owned, this will need to be done once more to get high enough to get to the blue gate."
      ],
      "devNote": "This is only notable as a way to avoid wall jumps."
    },
    {
      "id": 55,
      "link": [
        2,
        3
      ],
      "name": "Shinespark, Come in Shinecharging",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 5,
          "openEnd": 1
        }
      },
      "requires": [
        {
          "or": [
            {
              "shinespark": {
                "frames": 22,
                "excessFrames": 4
              }
            },
            {
              "and": [
                "canMidairShinespark",
                {
                  "shinespark": {
                    "frames": 15,
                    "excessFrames": 3
                  }
                }
              ]
            },
            {
              "and": [
                "canMidairShinespark",
                "HiJump",
                {
                  "shinespark": {
                    "frames": 12,
                    "excessFrames": 4
                  }
                }
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "B"
      ]
    },
    {
      "id": 56,
      "link": [
        2,
        3
      ],
      "name": "Shinespark, Come in Shinecharged",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 1
        }
      },
      "requires": [
        {
          "shinespark": {
            "frames": 22,
            "excessFrames": 4
          }
        }
      ],
      "clearsObstacles": [
        "B"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 57,
      "link": [
        2,
        3
      ],
      "name": "Spring Ball Bounce",
      "entranceCondition": {
        "comeInWithSpringBallBounce": {
          "speedBooster": true,
          "remoteAndLandingMinTiles": [
            [
              42,
              0
            ]
          ],
          "movementType": "any"
        }
      },
      "requires": [],
      "note": "Come in with a spring ball bounce after gaining speed on a remote runway using at least 42 tiles.",
      "devNote": "This requires extra run speed of at least $6.D."
    },
    {
      "id": 58,
      "link": [
        2,
        3
      ],
      "name": "Spring Ball Bounce (Tricky Dash Jump)",
      "entranceCondition": {
        "comeInWithSpringBallBounce": {
          "speedBooster": true,
          "remoteAndLandingMinTiles": [
            [
              32,
              0
            ]
          ],
          "movementType": "any"
        }
      },
      "requires": [
        "canTrickyDashJump",
        "canInsaneJump"
      ],
      "note": "Come in with a spring ball bounce after gaining speed on a remote runway using exactly 32 tiles.",
      "devNote": "This requires extra run speed of either $6.0 or $6.1"
    },
    {
      "id": 59,
      "link": [
        2,
        3
      ],
      "name": "Shinespark into the Wall to Ride the Elevator, Come in Shinecharging",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 5,
          "openEnd": 1
        }
      },
      "requires": [
        {
          "notable": "Shinespark into the Wall to Ride the Elevator"
        },
        "canHorizontalShinespark",
        {
          "shinespark": {
            "frames": 1,
            "excessFrames": 1
          }
        }
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": "Shinesparking horizontally into the wall will trigger the elevator as Samus's echos hit it."
    },
    {
      "id": 60,
      "link": [
        2,
        3
      ],
      "name": "Shinespark into the Wall to Ride the Elevator, Come in Shinecharged",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 45
        }
      },
      "requires": [
        {
          "notable": "Shinespark into the Wall to Ride the Elevator"
        },
        "canHorizontalShinespark",
        {
          "shinespark": {
            "frames": 1,
            "excessFrames": 1
          }
        }
      ],
      "clearsObstacles": [
        "B"
      ],
      "flashSuitChecked": true,
      "note": "Shinesparking horizontally into the wall will trigger the elevator as Samus's echos hit it."
    },
    {
      "id": 61,
      "link": [
        2,
        3
      ],
      "name": "Shinespark into the Wall to Ride the Elevator, Come in Shinesparking",
      "entranceCondition": {
        "comeInWithSpark": {}
      },
      "requires": [
        {
          "notable": "Shinespark into the Wall to Ride the Elevator"
        },
        "canHorizontalShinespark",
        {
          "shinespark": {
            "frames": 15,
            "excessFrames": 6
          }
        }
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": "Shinesparking horizontally into the wall will trigger the elevator as Samus's echos hit it."
    },
    {
      "id": 62,
      "link": [
        2,
        3
      ],
      "name": "Shinespark into the Wall to Ride the Elevator, Use Flash Suit",
      "requires": [
        {
          "notable": "Shinespark into the Wall to Ride the Elevator"
        },
        "canHorizontalShinespark",
        {
          "useFlashSuit": {}
        },
        {
          "shinespark": {
            "frames": 1,
            "excessFrames": 1
          }
        }
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": "Shinesparking horizontally into the wall will trigger the elevator as Samus's echos hit it."
    },
    {
      "id": 63,
      "link": [
        2,
        3
      ],
      "name": "Pink Hoppers X-Ray Climb Spring Ball Jump",
      "entranceCondition": {
        "comeInWithDoorStuckSetup": {}
      },
      "requires": [
        "canXRayClimb",
        "canTrickyJump",
        "canLateralMidAirMorph",
        "canTrickySpringBallJump",
        "canSpringFling"
      ],
      "flashSuitChecked": true,
      "note": [
        "X-Ray climb until Samus is a little over halfway off screen; the position is not precise.",
        "Face right, then do a turnaround buffer spin jump into a Spring Ball jump to reach the ledge.",
        "The pause input can be pressed at the same time as the turnaround.",
        "It helps to do an airball to gain horizontal speed.",
        "The jump input after pausing should not be buffered, in order to allow a little time for the spring fling horizontal speed to take effect."
      ]
    },
    {
      "id": 64,
      "link": [
        2,
        3
      ],
      "name": "Pink Hoppers X-Ray Climb HiJump Insane Jump",
      "entranceCondition": {
        "comeInWithDoorStuckSetup": {}
      },
      "requires": [
        "HiJump",
        "canXRayClimb",
        "canOffScreenMovement",
        "canInsaneJump"
      ],
      "flashSuitChecked": true,
      "note": [
        "Get stuck 3 pixels inside the door, and X-ray climb to a precise height:",
        "after just one pixel of Samus' feet are visible while crouching facing left, perform exactly 7 more X-Ray stand-ups.",
        "Use X-ray to face left, then run and jump to barely make it onto the ledge."
      ],
      "devNote": [
        "3 pixels stuck in the door is X position 478 (0x1DE)."
      ]
    },
    {
      "id": 65,
      "link": [
        2,
        3
      ],
      "name": "Pink Hoppers G-Mode Deep Stuck X-Ray Climb Insane Jump",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "direct",
          "morphed": false
        }
      },
      "requires": [
        "canXRayClimb",
        "canOffScreenMovement",
        "canInsaneJump"
      ],
      "flashSuitChecked": true,
      "note": [
        "Enter with G-Mode and use X-Ray to get stuck 9 pixels inside the door.",
        "X-Ray climb to a relatively specific height:",
        "after just one pixel of Samus' feet are visible while crouching facing left, perform between 20 and 22 more X-Ray stand-ups (any of these work).",
        "Use X-ray to face left, then run and jump to barely make it onto the ledge."
      ],
      "devNote": [
        "9 pixels stuck in the door is X position 484 (0x1E4).",
        "The correct Y positions for the jump are 193 (0xC1), 188 (0xBC), and 187 (0xBB)",
        "FIXME: Some of the X position to the left (482, 483) could also work; maybe investigate which vertical positions work for them?"
      ]
    },
    {
      "id": 66,
      "link": [
        2,
        3
      ],
      "name": "G-Mode Morph IBJ",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        "h_canArtificialMorphIBJ"
      ],
      "clearsObstacles": [
        "B"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 67,
      "link": [
        2,
        3
      ],
      "name": "G-Mode Morph Elevator with Power Bomb",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        "h_canArtificialMorphPowerBomb"
      ],
      "clearsObstacles": [
        "A",
        "B"
      ],
      "flashSuitChecked": true,
      "note": "Using a power bomb against the left wall will kill the enemies and trigger the elevator."
    },
    {
      "id": 68,
      "link": [
        2,
        3
      ],
      "name": "Grapple Teleport",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              5,
              3
            ],
            [
              7,
              2
            ]
          ]
        }
      },
      "requires": []
    },
    {
      "id": 69,
      "link": [
        3,
        1
      ],
      "name": "Dead Sidehoppers",
      "requires": [
        {
          "obstaclesCleared": [
            "A"
          ]
        }
      ]
    },
    {
      "id": 70,
      "link": [
        3,
        1
      ],
      "name": "Tank a Hit",
      "requires": [
        {
          "or": [
            {
              "enemyDamage": {
                "enemy": "Sidehopper",
                "type": "contact",
                "hits": 1
              }
            },
            {
              "and": [
                "canCarefulJump",
                {
                  "enemyDamage": {
                    "enemy": "Sm. Sidehopper",
                    "type": "contact",
                    "hits": 1
                  }
                }
              ]
            }
          ]
        }
      ],
      "note": "Jump far to the left in order to hit a small Sidehopper instead of a large one."
    },
    {
      "id": 71,
      "link": [
        3,
        1
      ],
      "name": "Screw Kill",
      "requires": [
        "ScrewAttack",
        {
          "or": [
            "canCarefulJump",
            {
              "enemyDamage": {
                "enemy": "Sm. Sidehopper",
                "type": "contact",
                "hits": 1
              }
            }
          ]
        }
      ],
      "clearsObstacles": [
        "A"
      ],
      "note": "It is possible to kill the Sidehoppers damageless by jumping into the bottom left corner then quickly spin jumping again."
    },
    {
      "id": 72,
      "link": [
        3,
        2
      ],
      "name": "Base",
      "requires": [
        {
          "obstaclesCleared": [
            "B"
          ]
        },
        {
          "or": [
            "canCarefulJump",
            "canWalljump",
            "SpaceJump",
            "Grapple"
          ]
        }
      ]
    },
    {
      "id": 73,
      "link": [
        3,
        3
      ],
      "name": "Open the Gate",
      "requires": [
        "Wave"
      ],
      "clearsObstacles": [
        "B"
      ]
    },
    {
      "id": 74,
      "link": [
        4,
        1
      ],
      "name": "Base",
      "requires": [],
      "clearsObstacles": [
        "A"
      ]
    },
    {
      "id": 75,
      "link": [
        4,
        3
      ],
      "name": "Frozen Hopper Platform",
      "requires": [
        {
          "obstaclesNotCleared": [
            "A"
          ]
        },
        "canTrickyUseFrozenEnemies",
        {
          "or": [
            "HiJump",
            "canSpringBallJumpMidAir"
          ]
        },
        {
          "or": [
            {
              "enemyDamage": {
                "enemy": "Sm. Sidehopper",
                "type": "contact",
                "hits": 1
              }
            },
            "canTrickyJump"
          ]
        }
      ],
      "note": [
        "Use a Frozen Hopper as a platform to jump up to the Grapple Block with an additional movement item.",
        "Letting it jump from the spike ledge or the door frame will make the jump easier, but it is difficult to avoid Hopper damage when setting this up."
      ],
      "devNote": "FIXME: A big hopper doing a high jump from the door frame is enough to reach the grapple block without a movement item.  This would need a full manip since it is hard to try to make happen."
    },
    {
      "id": 76,
      "link": [
        4,
        4
      ],
      "name": "Reverse Gate Glitch (Ice)",
      "requires": [
        {
          "notable": "Reverse Gate Glitch"
        },
        {
          "obstaclesNotCleared": [
            "A"
          ]
        },
        "canTrickyUseFrozenEnemies",
        "h_canBackIntoCorner",
        "canOffScreenSuperShot",
        {
          "enemyDamage": {
            "enemy": "Sm. Sidehopper",
            "type": "contact",
            "hits": 1
          }
        }
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": [
        "Freeze a small hopper to the side and kill the remaining Side Hoppers.",
        "Stand against the left wall (damage knockback will align Samus with the wall) and shoot up to freeze the hopper.",
        "Jump up to land on it, aligned with the wall.",
        "Alternatively, Jump and shoot down to freeze the hopper as a way to avoid damage.",
        "Fire a Super just above the door shell to hit the Gate.",
        "This strat involves shooting a Super diagonally from the correct height while flush against the left wall.",
        "Its acceleration will cause it to clip into the blue gate off-screen."
      ]
    },
    {
      "id": 77,
      "link": [
        4,
        4
      ],
      "name": "Reverse Gate Glitch (HiJump, Ice)",
      "requires": [
        {
          "notable": "Reverse Gate Glitch"
        },
        {
          "obstaclesNotCleared": [
            "A"
          ]
        },
        {
          "or": [
            "h_canBackIntoCorner",
            {
              "enemyDamage": {
                "enemy": "Sm. Sidehopper",
                "type": "contact",
                "hits": 1
              }
            },
            "canTrickyJump"
          ]
        },
        "HiJump",
        "canOffScreenSuperShot"
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": [
        "This strat involves shooting a Super diagonally from the correct height while flush against the left wall.",
        "Its acceleration will cause it to clip into the blue gate off-screen.",
        "Jump straight up and shoot with the correct timing.",
        "Taking damage can be used to align against the wall."
      ]
    },
    {
      "link": [
        1,
        1
      ],
      "name": "Base (Unlock Door)",
      "requires": [],
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ]
    },
    {
      "link": [
        1,
        1
      ],
      "name": "Base (Come In Normally)",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": []
    },
    {
      "link": [
        2,
        2
      ],
      "name": "Base (Unlock Door)",
      "requires": [],
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ]
    },
    {
      "link": [
        2,
        2
      ],
      "name": "Base (Come In Normally)",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": []
    }
  ],
  "nextStratId": 78,
  "notables": [
    {
      "id": 1,
      "name": "Shinespark into the Wall to Ride the Elevator",
      "note": "Shinesparking horizontally into the wall will trigger the elevator as Samus's echos hit it."
    },
    {
      "id": 2,
      "name": "Reverse Gate Glitch",
      "note": [
        "This strat involves shooting a Super diagonally from the correct height while flush against the left wall.",
        "Its acceleration will cause it to clip into the blue gate off-screen."
      ]
    },
    {
      "id": 3,
      "name": "Hopper X-Ray Climb",
      "note": [
        "To minimize damage from the Hoppers, get stuck in the door relatively high and move quickly.",
        "Climb up somewhat less than 1 screen, until Samus' head appears between 1 and 3 tiles below the door.",
        "Then perform a turn-around spin jump to the right to get on top of the Grapple block."
      ]
    },
    {
      "id": 4,
      "name": "Shot Clip to Ride the Elevator",
      "note": [
        "The elevator can be raised by clipping a shot into the floor, shot while falling with the right amount of vertical speed.",
        "This can be done with a Missile, Super, or charged Spazer or Plasma shot, a well positioned angle Spazer shot while crouched, or an  or Ice SBA."
      ]
    },
    {
      "id": 5,
      "name": "Screw and Kago to Ride the Elevator",
      "note": [
        "Start the elevator ride by using Screw Attack or Pseudo Screw in the hole.",
        "Kago the elevator to fall back in and hit the elevator again. This is much easier while the elevator is still rising, but can still be done with Morph afterwards.",
        "Unless HiJump is owned, this will need to be done once more to get high enough to get to the blue gate."
      ]
    }
  ],
  "nextNotableId": 6
}