Blue Brinstar Energy Tank Room

Room ID: 41

Wiki
Difficulty filter

From: 1
Bottom Left Door
To: 1
Bottom Left Door

Exit condition:

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

Lure the Reo from the right and freeze it in the correct position when it swoops down. Note that using a frozen Geemer may be useful and is easier to setup, particularly if shortcharging out the door.

Requires:

"h_canFrozenEnemyRunway"
{
  "enemyDamage": {
    "enemy": "Reo",
    "type": "contact",
    "hits": 1
  }
}

Exit condition:

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

Requires:

{
  "canShineCharge": {
    "usedTiles": 30,
    "openEnd": 0
  }
}
"canShinechargeMovement"
{
  "shineChargeFrames": 40
}

Exit condition:

{
  "leaveShinecharged": {}
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}
{
  "canShineCharge": {
    "usedTiles": 41,
    "openEnd": 0
  }
}
"canShinechargeMovement"
{
  "shineChargeFrames": 40
}

Exit condition:

{
  "leaveShinecharged": {}
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Exit condition:

{
  "leaveSpinning": {
    "remoteRunway": {
      "length": 28,
      "openEnd": 0
    }
  }
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}

Exit condition:

{
  "leaveSpinning": {
    "remoteRunway": {
      "length": 38,
      "openEnd": 1
    }
  }
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Exit condition:

{
  "leaveWithMockball": {
    "remoteRunway": {
      "length": 28,
      "openEnd": 0
    },
    "landingRunway": {
      "length": 3,
      "openEnd": 1
    }
  }
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}

Exit condition:

{
  "leaveWithMockball": {
    "remoteRunway": {
      "length": 38,
      "openEnd": 1
    },
    "landingRunway": {
      "length": 3,
      "openEnd": 1
    }
  }
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Exit condition:

{
  "leaveWithSpringBallBounce": {
    "remoteRunway": {
      "length": 23,
      "openEnd": 1
    },
    "landingRunway": {
      "length": 3,
      "openEnd": 1
    },
    "movementType": "uncontrolled"
  }
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}

Exit condition:

{
  "leaveWithSpringBallBounce": {
    "remoteRunway": {
      "length": 31,
      "openEnd": 0
    },
    "landingRunway": {
      "length": 3,
      "openEnd": 1
    },
    "movementType": "uncontrolled"
  }
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Exit condition:

{
  "leaveSpaceJumping": {
    "remoteRunway": {
      "length": 20,
      "openEnd": 0
    }
  }
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}

Exit condition:

{
  "leaveSpaceJumping": {
    "remoteRunway": {
      "length": 28,
      "openEnd": 1
    }
  }
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

{
  "canShineCharge": {
    "usedTiles": 29,
    "openEnd": 0
  }
}
"canChainTemporaryBlue"

Exit condition:

{
  "leaveWithTemporaryBlue": {}
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

"h_ZebesIsAwake"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "refill": [
    "Missile"
  ]
}
{
  "partialRefill": {
    "type": "Energy",
    "limit": 200
  }
}

Resets obstacles: A, B, C, D

From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

"h_ZebesIsAwake"

Exit condition:

{
  "leaveWithGModeSetup": {}
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

{
  "enemyDamage": {
    "enemy": "Geemer (blue)",
    "type": "contact",
    "hits": 1
  }
}
"h_ZebesIsAwake"
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

"h_canCrystalFlash"

Clears obstacles: C

From: 1
Bottom Left Door
To: 3
Hidden Ceiling Item

Requires:

{
  "or": [
    "HiJump",
    "SpaceJump",
    "canSpringBallJumpMidAir"
  ]
}
From: 1
Bottom Left Door
To: 3
Hidden Ceiling Item

Requires:

"h_ZebesIsAwake"
"canUseFrozenEnemies"
From: 1
Bottom Left Door
To: 3
Hidden Ceiling Item

Requires:

"canBombAboveIBJ"
From: 1
Bottom Left Door
To: 3
Hidden Ceiling Item

Use a Power Bomb while performing an IBJ to break the shot block while part way up.

Requires:

"canPowerBombMidIBJ"

Clears obstacles: C

From: 1
Bottom Left Door
To: 3
Hidden Ceiling Item

An alternate strat to canBombAboveIBJ. Shoot the block, jump into an IBJ, then do a quick double bomb jump to make it in time.

Requires:

"canJumpIntoIBJ"
"canDoubleBombJump"
From: 1
Bottom Left Door
To: 3
Hidden Ceiling Item

Have Samus shoot the shot block revealing the item and then quickly get hit by an enemy at the peak of her jump in order to reach the item. No directional inputs should be held while getting hit by the enemy in order to have a neutral boost and reach the item. This is traditionally done with the swooping Reo; after a few failed tries, it may help to reset the room to reposition it. The global Geemer may be easier to use, although it takes longer to get there; jump as it starts moving horizontally again while it is 3 tiles away from the item.

Requires:

{
  "notable": "Ceiling Damage Boost"
}
"h_ZebesIsAwake"
"canNeutralDamageBoost"
{
  "enemyDamage": {
    "enemy": "Geemer (blue)",
    "hits": 1,
    "type": "contact"
  }
}
From: 1
Bottom Left Door
To: 3
Hidden Ceiling Item

Does not require a shinespark. You can shoot the block, then just run and jump.

Requires:

"SpeedBooster"
"canCarefulJump"
From: 1
Bottom Left Door
To: 3
Hidden Ceiling Item

Reveal the item and then setup to jump into an IBJ. As Samus starts falling, unmorph to extend Samus' hitbox high enough to reach the item after bouncing on the bomb.

Requires:

"canCrouchJump"
"canMidAirMorph"
{
  "tech": "canJumpIntoIBJ"
}
"canUnmorphBombBoost"
From: 1
Bottom Left Door
To: 3
Hidden Ceiling Item

Requires:

{
  "useFlashSuit": {}
}
{
  "shinespark": {
    "frames": 3,
    "excessFrames": 2
  }
}
From: 1
Bottom Left Door
To: 3
Hidden Ceiling Item

Triple frame perfect dashing stationary spinjump into delayed CWJ and precise hitbox manipulation.

Requires:

{
  "notable": "Taco Tank"
}
"canCWJ"
"canInsaneWalljump"
"canStationarySpinJump"
From: 1
Bottom Left Door
To: 4
Right Item

Requires:

"Morph"
From: 1
Bottom Left Door
To: 5
G-Mode Morph Junction (Bottom)

It is possible to roll off of the ledge and avoid the Geemers, but it is somewhat tight and the timing is likely earlier than expected.

Entrance condition:

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

Requires:

"h_ZebesIsAwake"
{
  "or": [
    "h_canArtificialMorphSpringBall",
    "h_canArtificialMorphBombThings",
    "canTrickyJump",
    {
      "enemyDamage": {
        "enemy": "Geemer (blue)",
        "hits": 1,
        "type": "contact"
      }
    }
  ]
}
From: 1
Bottom Left Door
To: 5
G-Mode Morph Junction (Bottom)

The eye scanners are particularly annoying while in g-mode. They scan Samus with bright flashing lights which remain for a further distance. This is notable so a player can disable having to enter these flashing lights. If disabled, Samus will only require being in g-mode in this room if Zebes is awake.

Entrance condition:

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

Requires:

{
  "notable": "G-Mode Flashing Lights"
}
{
  "or": [
    "h_ZebesNotAwake",
    "h_canArtificialMorphSpringBall",
    "h_canArtificialMorphBombThings",
    "canTrickyJump",
    {
      "enemyDamage": {
        "enemy": "Geemer (blue)",
        "hits": 1,
        "type": "contact"
      }
    }
  ]
}
From: 1
Bottom Left Door
To: 6
G-Mode Morph Junction Direct (Bottom)

Entrance condition:

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

Requires:

"h_ZebesIsAwake"
{
  "or": [
    "h_canArtificialMorphSpringBall",
    "h_canArtificialMorphBombThings",
    "canTrickyJump",
    {
      "enemyDamage": {
        "enemy": "Geemer (blue)",
        "hits": 1,
        "type": "contact"
      }
    }
  ]
}
From: 1
Bottom Left Door
To: 6
G-Mode Morph Junction Direct (Bottom)

Entrance condition:

{
  "comeInWithGMode": {
    "mode": "direct",
    "morphed": true,
    "mobility": "immobile"
  }
}

Requires:

"h_ZebesIsAwake"
"canUseIFrames"
From: 1
Bottom Left Door
To: 6
G-Mode Morph Junction Direct (Bottom)

The eye scanners are particularly annoying while in G-mode. They scan Samus with bright flashing lights which remain for a further distance. This is notable so a player can disable having to enter these flashing lights. If disabled, Samus will only require being in g-mode in this room if Zebes is awake.

Entrance condition:

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

Requires:

{
  "notable": "G-Mode Flashing Lights"
}
{
  "or": [
    "h_ZebesNotAwake",
    "h_canArtificialMorphSpringBall",
    "h_canArtificialMorphBombThings",
    "canTrickyJump",
    {
      "enemyDamage": {
        "enemy": "Geemer (blue)",
        "hits": 1,
        "type": "contact"
      }
    }
  ]
}
From: 2
Top Left Door
To: 2
Top Left Door

Exit condition:

{
  "leaveWithRunway": {
    "length": 5,
    "openEnd": 0
  }
}
From: 2
Top Left Door
To: 2
Top Left Door

Requires:

{
  "notable": "Leave With Spark (Fast Wall Climb)"
}
{
  "obstaclesCleared": [
    "A",
    "C"
  ]
}
"HiJump"
{
  "canShineCharge": {
    "usedTiles": 35,
    "openEnd": 1
  }
}
"canShinechargeMovementTricky"
"canFastWalljumpClimb"
{
  "shinespark": {
    "frames": 8,
    "excessFrames": 0
  }
}

Exit condition:

{
  "leaveWithSpark": {
    "position": "top"
  }
}

Falling down the shaft and breaking the crumble block does not require Morph.

Requires:

"h_ZebesIsAwake"
{
  "or": [
    "h_canDestroyBombWalls",
    {
      "obstaclesCleared": [
        "A"
      ]
    }
  ]
}
{
  "or": [
    "canConsecutiveWalljump",
    "h_canFly"
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Falling down the shaft and breaking the crumble block does not require Morph.

Requires:

"h_ZebesIsAwake"
{
  "or": [
    "h_canDestroyBombWalls",
    {
      "obstaclesCleared": [
        "A"
      ]
    }
  ]
}
"h_canUsePowerBombs"
{
  "canShineCharge": {
    "usedTiles": 42,
    "openEnd": 0
  }
}
{
  "shinespark": {
    "frames": 43
  }
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Falling down the shaft and breaking the crumble block does not require Morph.

Requires:

"h_ZebesIsAwake"
{
  "obstaclesCleared": [
    "A",
    "B"
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}
From: 2
Top Left Door
To: 2
Top Left Door

Requires:

"h_canCrystalFlash"

Clears obstacles: A

From: 2
Top Left Door
To: 4
Right Item

Requires:

"Morph"
{
  "or": [
    "h_canDestroyBombWalls",
    {
      "obstaclesCleared": [
        "A"
      ]
    }
  ]
}

Clears obstacles: A, B

From: 2
Top Left Door
To: 4
Right Item

Entrance condition:

{
  "comeInShinecharging": {
    "length": 3,
    "openEnd": 0
  }
}

Requires:

"Morph"
"canTemporaryBlue"

Clears obstacles: A, B

From: 3
Hidden Ceiling Item
To: 1
Bottom Left Door

From: 4
Right Item
To: 1
Bottom Left Door

Requires:

"Morph"
From: 4
Right Item
To: 1
Bottom Left Door

Requires:

{
  "or": [
    "h_canUsePowerBombs",
    {
      "obstaclesCleared": [
        "C"
      ]
    }
  ]
}

Clears obstacles: C

From: 4
Right Item
To: 1
Bottom Left Door

After touching the item, roll back to the left before exiting G-Mode and remotely collect it.

Requires:

"canEnterGMode"
{
  "obstaclesCleared": [
    "D"
  ]
}
From: 4
Right Item
To: 2
Top Left Door

The Crumble Block does not respawn, so it's possible to grab the items and go back up without breaking the Power Bomb blocks.

Requires:

{
  "notable": "Return Through Crumble Blocks"
}
"Morph"
{
  "or": [
    "canConsecutiveWalljump",
    "h_canFly"
  ]
}
{
  "obstaclesCleared": [
    "A",
    "B"
  ]
}
From: 4
Right Item
To: 2
Top Left Door

Base strat when entering the room from below.

Requires:

{
  "or": [
    "h_canUsePowerBombs",
    {
      "obstaclesCleared": [
        "C"
      ]
    }
  ]
}
{
  "or": [
    "canConsecutiveWalljump",
    "h_canFly"
  ]
}
{
  "or": [
    {
      "and": [
        "h_canUsePowerBombs",
        "canTrivialMidAirMorph"
      ]
    },
    "ScrewAttack"
  ]
}

Clears obstacles: A, B, C

From: 4
Right Item
To: 2
Top Left Door

Placing the bomb against the bomb block at the top of the shaft can be somewhat tricky.

Requires:

{
  "or": [
    "h_canUsePowerBombs",
    {
      "obstaclesCleared": [
        "C"
      ]
    }
  ]
}
"h_canUseMorphBombs"
{
  "or": [
    "h_canFly",
    {
      "and": [
        "canConsecutiveWalljump",
        "canWallJumpInstantMorph"
      ]
    }
  ]
}

Clears obstacles: A, B, C

From: 4
Right Item
To: 2
Top Left Door

Use both Geemers to climb the tall shaft by repeatedly freezing them. Note that one moves locally when on camera and the other moves globally.

Requires:

{
  "or": [
    "h_canUsePowerBombs",
    {
      "and": [
        {
          "obstaclesCleared": [
            "B"
          ]
        },
        "Morph"
      ]
    },
    {
      "obstaclesCleared": [
        "C"
      ]
    }
  ]
}
{
  "or": [
    {
      "obstaclesCleared": [
        "A"
      ]
    },
    "ScrewAttack",
    {
      "and": [
        "h_canUseMorphBombs",
        "canMidAirMorph"
      ]
    }
  ]
}
"canTrickyUseFrozenEnemies"
"canTrickyJump"
"canCameraManip"

Clears obstacles: A, B

From: 4
Right Item
To: 2
Top Left Door

Use both Geemers to climb the tall shaft by repeatedly freezing them. Note that one moves locally when on camera and the other moves globally. Once Samus is close to the top Bomb Block, freeze one Geemer low and jump as high as possible before placing a power bomb. Continue climbing with the Geemer that survives.

Requires:

{
  "or": [
    "h_canUsePowerBombs",
    {
      "and": [
        {
          "obstaclesCleared": [
            "B"
          ]
        },
        "Morph"
      ]
    },
    {
      "obstaclesCleared": [
        "C"
      ]
    }
  ]
}
"h_canUsePowerBombs"
"canTrivialMidAirMorph"
"canTrickyUseFrozenEnemies"
"canTrickyJump"
"canBePatient"
"canCameraManip"

Clears obstacles: A, B

From: 4
Right Item
To: 2
Top Left Door

Requires:

{
  "or": [
    "h_canUsePowerBombs",
    {
      "obstaclesCleared": [
        "C"
      ]
    }
  ]
}
{
  "canShineCharge": {
    "usedTiles": 42,
    "openEnd": 0
  }
}
{
  "shinespark": {
    "frames": 43,
    "excessFrames": 2
  }
}

Clears obstacles: A, B, C

From: 4
Right Item
To: 2
Top Left Door

Breaking the Power Bomb blocks exactly wide enough makes it easier to quickly enter the one-tile gap. Aligning the Power Bomb with the left side of the ceiling fixture that sticks down will position the explosion correctly for this.

Requires:

{
  "or": [
    "h_canUsePowerBombs",
    {
      "obstaclesCleared": [
        "C"
      ]
    }
  ]
}
"canShinechargeMovementComplex"
"canFastWalljumpClimb"
{
  "canShineCharge": {
    "usedTiles": 42,
    "openEnd": 0
  }
}
{
  "shinespark": {
    "frames": 17,
    "excessFrames": 3
  }
}

Clears obstacles: A, B, C

From: 4
Right Item
To: 2
Top Left Door

Requires:

{
  "obstaclesCleared": [
    "B"
  ]
}
"Morph"
{
  "canShineCharge": {
    "usedTiles": 31,
    "openEnd": 0
  }
}
{
  "shinespark": {
    "frames": 40,
    "excessFrames": 3
  }
}
"canShinechargeMovementTricky"

Clears obstacles: A

From: 4
Right Item
To: 2
Top Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}
{
  "useFlashSuit": {}
}
{
  "or": [
    {
      "shinespark": {
        "frames": 36,
        "excessFrames": 3
      }
    },
    {
      "and": [
        {
          "or": [
            "canConsecutiveWalljump",
            "SpaceJump"
          ]
        },
        {
          "shinespark": {
            "frames": 9,
            "excessFrames": 9
          }
        }
      ]
    }
  ]
}

Clears obstacles: A

Requires:

{
  "obstaclesCleared": [
    "B"
  ]
}
"Morph"
{
  "obstaclesNotCleared": [
    "C"
  ]
}
{
  "useFlashSuit": {}
}
{
  "shinespark": {
    "frames": 33,
    "excessFrames": 3
  }
}

Clears obstacles: A

From: 4
Right Item
To: 2
Top Left Door

Keep the two Geemers on screen while moving to the right side of the room. Freeze the second Geemer as it exits the Morph Tunnel, with the Crumble block. Use a Super Missile to knock the first Geemer down and freeze it at the pixel perfect height. Become stuck in the wall after using Grapple to kill the frozen Geemer as it walks through Samus, firing to the left. This re-enables XRay climbing.

Requires:

{
  "notable": "Geemer Ice Stuck XRay Climb"
}
"canWallIceClip"
"canXRayClimb"
"Grapple"
{
  "ammo": {
    "type": "Super",
    "count": 1
  }
}
{
  "enemyDamage": {
    "enemy": "Geemer (blue)",
    "type": "contact",
    "hits": 1
  }
}
From: 4
Right Item
To: 2
Top Left Door

After overloading the PLMs by touching the item, go through the crumble and bomb blocks to the top door.

Requires:

{
  "obstaclesCleared": [
    "D"
  ]
}
"canRiskPermanentLossOfAccess"
"h_canArtificialMorphMovement"
{
  "or": [
    "canConsecutiveWalljump",
    "SpaceJump"
  ]
}
From: 5
G-Mode Morph Junction (Bottom)
To: 2
Top Left Door

Overload PLMs by repeatidly bombing the Power Bomb blocks or the side of the crumble block, then enter through the crumble block.

Requires:

"canEnterGMode"
"h_canArtificialMorphIBJ"
{
  "or": [
    "canConsecutiveWalljump",
    "SpaceJump",
    "canOffScreenMovement"
  ]
}
From: 5
G-Mode Morph Junction (Bottom)
To: 4
Right Item

Requires:

"canEnterGMode"
From: 5
G-Mode Morph Junction (Bottom)
To: 4
Right Item

The blocks will not break if PLMs are already overloaded. Exiting G-Mode before the Power Bomb explodes will ensure they break.

Requires:

"canEnterGMode"
"h_canArtificialMorphPowerBomb"

Clears obstacles: B, C

From: 6
G-Mode Morph Junction Direct (Bottom)
To: 2
Top Left Door

Overload PLMs with a single Power Bomb by hitting the item at the right end of the room. This can be done with a single precisely placed Power Bomb. There should be 4 empty tiles between Samus and the left of the blocks when the bomb is placed.

Requires:

"canEnterGMode"
{
  "itemNotCollectedAtNode": 4
}
"canRiskPermanentLossOfAccess"
"h_canArtificialMorphPowerBomb"
"h_canArtificialMorphMovement"
{
  "or": [
    "canConsecutiveWalljump",
    "SpaceJump"
  ]
}
From: 6
G-Mode Morph Junction Direct (Bottom)
To: 4
Right Item

Touch the item to either roll back to the left before exiting G-Mode and remotely collect it, or to overload PLMs and go up through the crumble block and bomb block.

Requires:

"canEnterGMode"
{
  "itemNotCollectedAtNode": 4
}
"h_canArtificialMorphMovement"

Clears obstacles: D

From: 6
G-Mode Morph Junction Direct (Bottom)
To: 5
G-Mode Morph Junction (Bottom)

Requires:

"canEnterGMode"

{
  "$schema": "../../../schema/m3-room.schema.json",
  "id": 41,
  "name": "Blue Brinstar Energy Tank Room",
  "area": "Brinstar",
  "subarea": "Blue",
  "roomAddress": "0x79F64",
  "roomEnvironments": [
    {
      "heated": false
    }
  ],
  "nodes": [
    {
      "id": 1,
      "name": "Bottom Left Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x0018ee6",
      "doorOrientation": "left",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ],
      "viewableNodes": [
        {
          "id": 3,
          "strats": [
            {
              "name": "Base",
              "requires": []
            }
          ]
        }
      ]
    },
    {
      "id": 2,
      "name": "Top Left Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x0018ef2",
      "doorOrientation": "left",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ]
    },
    {
      "id": 3,
      "name": "Hidden Ceiling Item",
      "nodeType": "item",
      "nodeSubType": "hidden",
      "nodeItem": "ETank",
      "nodeAddress": "0x7879E",
      "locks": [
        {
          "name": "Dummy Item Lock",
          "lockType": "gameFlag",
          "unlockStrats": [
            {
              "name": "Base (Collect Item)",
              "notable": false,
              "requires": []
            }
          ]
        }
      ]
    },
    {
      "id": 4,
      "name": "Right Item",
      "nodeType": "item",
      "nodeSubType": "visible",
      "nodeItem": "Missile",
      "nodeAddress": "0x78798",
      "locks": [
        {
          "name": "Dummy Item Lock",
          "lockType": "gameFlag",
          "unlockStrats": [
            {
              "name": "Base (Collect Item)",
              "notable": false,
              "requires": []
            }
          ]
        }
      ]
    },
    {
      "id": 5,
      "name": "G-Mode Morph Junction (Bottom)",
      "nodeType": "junction",
      "nodeSubType": "g-mode",
      "note": "Represents being in the room with G-Mode, to the right of the two Geemers, with morph or artificial morph."
    },
    {
      "id": 6,
      "name": "G-Mode Morph Junction Direct (Bottom)",
      "nodeType": "junction",
      "nodeSubType": "g-mode",
      "note": "Represents being in the room with G-Mode, to the right of the two Geemers, with morph or artificial morph, in direct G-Mode."
    }
  ],
  "obstacles": [
    {
      "id": "A",
      "name": "Top Bomb Block",
      "obstacleType": "inanimate"
    },
    {
      "id": "B",
      "name": "Crumble Block",
      "obstacleType": "inanimate"
    },
    {
      "id": "C",
      "name": "Power Bomb Blocks",
      "obstacleType": "inanimate"
    },
    {
      "id": "D",
      "name": "Touch the Item while Remaining in G-Mode Morph",
      "obstacleType": "abstract"
    }
  ],
  "enemies": [
    {
      "id": "e1",
      "groupName": "Ceiling E-Tank Geemers",
      "enemyName": "Geemer (blue)",
      "quantity": 2,
      "homeNodes": [
        1
      ],
      "spawn": [
        "f_ZebesAwake"
      ]
    },
    {
      "id": "e2",
      "groupName": "Ceiling E-Tank Skrees",
      "enemyName": "Skree",
      "quantity": 2,
      "homeNodes": [
        1
      ],
      "spawn": [
        "f_ZebesAwake"
      ]
    },
    {
      "id": "e3",
      "groupName": "Ceiling E-Tank Reo",
      "enemyName": "Reo",
      "quantity": 1,
      "homeNodes": [
        1
      ],
      "spawn": [
        "f_ZebesAwake"
      ]
    }
  ],
  "links": [
    {
      "from": 1,
      "to": [
        {
          "id": 1
        },
        {
          "id": 3
        },
        {
          "id": 4
        },
        {
          "id": 5
        },
        {
          "id": 6
        }
      ]
    },
    {
      "from": 2,
      "to": [
        {
          "id": 2
        },
        {
          "id": 4
        }
      ]
    },
    {
      "from": 3,
      "to": [
        {
          "id": 1
        }
      ]
    },
    {
      "from": 4,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        }
      ]
    },
    {
      "from": 5,
      "to": [
        {
          "id": 2
        },
        {
          "id": 4
        }
      ]
    },
    {
      "from": 6,
      "to": [
        {
          "id": 2
        },
        {
          "id": 4
        },
        {
          "id": 5
        }
      ]
    }
  ],
  "strats": [
    {
      "id": 1,
      "link": [
        1,
        1
      ],
      "name": "Leave With Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 3,
          "openEnd": 1
        }
      }
    },
    {
      "id": 2,
      "link": [
        1,
        1
      ],
      "name": "Leave With Runway - Frozen Reo",
      "requires": [
        "h_canFrozenEnemyRunway",
        {
          "enemyDamage": {
            "enemy": "Reo",
            "type": "contact",
            "hits": 1
          }
        }
      ],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 6,
          "openEnd": 0
        }
      },
      "note": [
        "Lure the Reo from the right and freeze it in the correct position when it swoops down.",
        "Note that using a frozen Geemer may be useful and is easier to setup, particularly if shortcharging out the door."
      ],
      "devNote": [
        "The Reo can be set up flush with the runway or 3 pixels higher.",
        "FIXME: Find and add a description for a normalized setup for this and possibly remove the Reo hit."
      ]
    },
    {
      "id": 3,
      "link": [
        1,
        1
      ],
      "name": "Leave Shinecharged",
      "requires": [
        {
          "canShineCharge": {
            "usedTiles": 30,
            "openEnd": 0
          }
        },
        "canShinechargeMovement",
        {
          "shineChargeFrames": 40
        }
      ],
      "exitCondition": {
        "leaveShinecharged": {}
      },
      "flashSuitChecked": true
    },
    {
      "id": 4,
      "link": [
        1,
        1
      ],
      "name": "Leave Shinecharged - Power Bomb Blocks Broken",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        },
        {
          "canShineCharge": {
            "usedTiles": 41,
            "openEnd": 0
          }
        },
        "canShinechargeMovement",
        {
          "shineChargeFrames": 40
        }
      ],
      "exitCondition": {
        "leaveShinecharged": {}
      },
      "flashSuitChecked": true
    },
    {
      "id": 5,
      "link": [
        1,
        1
      ],
      "name": "Leave Spinning",
      "requires": [],
      "exitCondition": {
        "leaveSpinning": {
          "remoteRunway": {
            "length": 28,
            "openEnd": 0
          }
        }
      }
    },
    {
      "id": 6,
      "link": [
        1,
        1
      ],
      "name": "Leave Spinning - Power Bomb Blocks Broken",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        }
      ],
      "exitCondition": {
        "leaveSpinning": {
          "remoteRunway": {
            "length": 38,
            "openEnd": 1
          }
        }
      }
    },
    {
      "id": 7,
      "link": [
        1,
        1
      ],
      "name": "Leave With Mockball",
      "requires": [],
      "exitCondition": {
        "leaveWithMockball": {
          "remoteRunway": {
            "length": 28,
            "openEnd": 0
          },
          "landingRunway": {
            "length": 3,
            "openEnd": 1
          }
        }
      }
    },
    {
      "id": 8,
      "link": [
        1,
        1
      ],
      "name": "Leave With Mockball - Power Bomb Blocks Broken",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        }
      ],
      "exitCondition": {
        "leaveWithMockball": {
          "remoteRunway": {
            "length": 38,
            "openEnd": 1
          },
          "landingRunway": {
            "length": 3,
            "openEnd": 1
          }
        }
      }
    },
    {
      "id": 9,
      "link": [
        1,
        1
      ],
      "name": "Leave With Spring Ball Bounce",
      "requires": [],
      "exitCondition": {
        "leaveWithSpringBallBounce": {
          "remoteRunway": {
            "length": 23,
            "openEnd": 1
          },
          "landingRunway": {
            "length": 3,
            "openEnd": 1
          },
          "movementType": "uncontrolled"
        }
      }
    },
    {
      "id": 10,
      "link": [
        1,
        1
      ],
      "name": "Leave With Spring Ball Bounce - Power Bomb Blocks Broken",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        }
      ],
      "exitCondition": {
        "leaveWithSpringBallBounce": {
          "remoteRunway": {
            "length": 31,
            "openEnd": 0
          },
          "landingRunway": {
            "length": 3,
            "openEnd": 1
          },
          "movementType": "uncontrolled"
        }
      }
    },
    {
      "id": 11,
      "link": [
        1,
        1
      ],
      "name": "Leave Space Jumping",
      "requires": [],
      "exitCondition": {
        "leaveSpaceJumping": {
          "remoteRunway": {
            "length": 20,
            "openEnd": 0
          }
        }
      }
    },
    {
      "id": 12,
      "link": [
        1,
        1
      ],
      "name": "Leave Space Jumping - Power Bomb Blocks Broken",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        }
      ],
      "exitCondition": {
        "leaveSpaceJumping": {
          "remoteRunway": {
            "length": 28,
            "openEnd": 1
          }
        }
      }
    },
    {
      "id": 13,
      "link": [
        1,
        1
      ],
      "name": "Leave With Temporary Blue",
      "requires": [
        {
          "canShineCharge": {
            "usedTiles": 29,
            "openEnd": 0
          }
        },
        "canChainTemporaryBlue"
      ],
      "exitCondition": {
        "leaveWithTemporaryBlue": {}
      }
    },
    {
      "id": 14,
      "link": [
        1,
        1
      ],
      "name": "Geemer, Skree, and Reo Farm",
      "requires": [
        "h_ZebesIsAwake",
        {
          "resetRoom": {
            "nodes": [
              1
            ]
          }
        },
        {
          "refill": [
            "Missile"
          ]
        },
        {
          "partialRefill": {
            "type": "Energy",
            "limit": 200
          }
        }
      ],
      "resetsObstacles": [
        "A",
        "B",
        "C",
        "D"
      ]
    },
    {
      "id": 15,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Setup - Get Hit By Geemer",
      "requires": [
        "h_ZebesIsAwake"
      ],
      "exitCondition": {
        "leaveWithGModeSetup": {}
      },
      "flashSuitChecked": true
    },
    {
      "id": 16,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Regain Mobility",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Geemer (blue)",
            "type": "contact",
            "hits": 1
          }
        },
        "h_ZebesIsAwake"
      ],
      "gModeRegainMobility": {},
      "flashSuitChecked": true
    },
    {
      "id": 17,
      "link": [
        1,
        1
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_canCrystalFlash"
      ],
      "clearsObstacles": [
        "C"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 18,
      "link": [
        1,
        3
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "HiJump",
            "SpaceJump",
            "canSpringBallJumpMidAir"
          ]
        }
      ]
    },
    {
      "id": 19,
      "link": [
        1,
        3
      ],
      "name": "Use Frozen Enemy",
      "requires": [
        "h_ZebesIsAwake",
        "canUseFrozenEnemies"
      ]
    },
    {
      "id": 20,
      "link": [
        1,
        3
      ],
      "name": "IBJ",
      "requires": [
        "canBombAboveIBJ"
      ]
    },
    {
      "id": 21,
      "link": [
        1,
        3
      ],
      "name": "IBJ with Power Bomb",
      "requires": [
        "canPowerBombMidIBJ"
      ],
      "clearsObstacles": [
        "C"
      ],
      "note": "Use a Power Bomb while performing an IBJ to break the shot block while part way up."
    },
    {
      "id": 22,
      "link": [
        1,
        3
      ],
      "name": "Ceiling Item Jump Into IBJ",
      "requires": [
        "canJumpIntoIBJ",
        "canDoubleBombJump"
      ],
      "note": "An alternate strat to canBombAboveIBJ. Shoot the block, jump into an IBJ, then do a quick double bomb jump to make it in time."
    },
    {
      "id": 23,
      "link": [
        1,
        3
      ],
      "name": "Ceiling Damage Boost",
      "requires": [
        {
          "notable": "Ceiling Damage Boost"
        },
        "h_ZebesIsAwake",
        "canNeutralDamageBoost",
        {
          "enemyDamage": {
            "enemy": "Geemer (blue)",
            "hits": 1,
            "type": "contact"
          }
        }
      ],
      "note": [
        "Have Samus shoot the shot block revealing the item and then quickly get hit by an enemy at the peak of her jump in order to reach the item.",
        "No directional inputs should be held while getting hit by the enemy in order to have a neutral boost and reach the item.",
        "This is traditionally done with the swooping Reo; after a few failed tries, it may help to reset the room to reposition it.",
        "The global Geemer may be easier to use, although it takes longer to get there; jump as it starts moving horizontally again while it is 3 tiles away from the item."
      ],
      "devNote": "Although the Reo is traditionally used for the boost, the Geemer does less damage and should still put this in logic with low energy."
    },
    {
      "id": 24,
      "link": [
        1,
        3
      ],
      "name": "Ceiling Item Speed Jump",
      "requires": [
        "SpeedBooster",
        "canCarefulJump"
      ],
      "note": "Does not require a shinespark. You can shoot the block, then just run and jump."
    },
    {
      "id": 25,
      "link": [
        1,
        3
      ],
      "name": "Ceiling Item Unmorph Bomb Boost",
      "requires": [
        "canCrouchJump",
        "canMidAirMorph",
        {
          "tech": "canJumpIntoIBJ"
        },
        "canUnmorphBombBoost"
      ],
      "note": [
        "Reveal the item and then setup to jump into an IBJ.",
        "As Samus starts falling, unmorph to extend Samus' hitbox high enough to reach the item after bouncing on the bomb."
      ],
      "devNote": "It is a JumpIntoIBJ that bounces on a single bomb or Power Bomb."
    },
    {
      "id": 26,
      "link": [
        1,
        3
      ],
      "name": "Use Flash Suit",
      "requires": [
        {
          "useFlashSuit": {}
        },
        {
          "shinespark": {
            "frames": 3,
            "excessFrames": 2
          }
        }
      ],
      "flashSuitChecked": true,
      "devNote": [
        "Technically you obtain the item after 1 frame, then continue for 2 more.",
        "If the item is an Energy Tank, the first frame deals damage, the next obtains the tank without dealing damage, then the next deals damage again.",
        "It is untested if this is how it works with other items, but it is likely never going to matter."
      ]
    },
    {
      "id": 27,
      "link": [
        1,
        3
      ],
      "name": "Taco Tank",
      "requires": [
        {
          "notable": "Taco Tank"
        },
        "canCWJ",
        "canInsaneWalljump",
        "canStationarySpinJump"
      ],
      "note": "Triple frame perfect dashing stationary spinjump into delayed CWJ and precise hitbox manipulation."
    },
    {
      "id": 28,
      "link": [
        1,
        4
      ],
      "name": "Base",
      "requires": [
        "Morph"
      ]
    },
    {
      "id": 29,
      "link": [
        1,
        5
      ],
      "name": "G-Mode Morph",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        "h_ZebesIsAwake",
        {
          "or": [
            "h_canArtificialMorphSpringBall",
            "h_canArtificialMorphBombThings",
            "canTrickyJump",
            {
              "enemyDamage": {
                "enemy": "Geemer (blue)",
                "hits": 1,
                "type": "contact"
              }
            }
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": "It is possible to roll off of the ledge and avoid the Geemers, but it is somewhat tight and the timing is likely earlier than expected.",
      "devNote": "An immobile strat only takes one hit on entry, skipping the Geemer hit, which is modeled by going 1->6->5."
    },
    {
      "id": 30,
      "link": [
        1,
        5
      ],
      "name": "G-Mode Morph with Flashing Lights",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        {
          "notable": "G-Mode Flashing Lights"
        },
        {
          "or": [
            "h_ZebesNotAwake",
            "h_canArtificialMorphSpringBall",
            "h_canArtificialMorphBombThings",
            "canTrickyJump",
            {
              "enemyDamage": {
                "enemy": "Geemer (blue)",
                "hits": 1,
                "type": "contact"
              }
            }
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "The eye scanners are particularly annoying while in g-mode. They scan Samus with bright flashing lights which remain for a further distance.",
        "This is notable so a player can disable having to enter these flashing lights. If disabled, Samus will only require being in g-mode in this room if Zebes is awake."
      ],
      "devNote": "Although there would be no enemies and the strat would be free, these options are here as a way to avoid the canRiskPermanentLossOfAccess."
    },
    {
      "id": 31,
      "link": [
        1,
        6
      ],
      "name": "G-Mode Morph",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "direct",
          "morphed": true
        }
      },
      "requires": [
        "h_ZebesIsAwake",
        {
          "or": [
            "h_canArtificialMorphSpringBall",
            "h_canArtificialMorphBombThings",
            "canTrickyJump",
            {
              "enemyDamage": {
                "enemy": "Geemer (blue)",
                "hits": 1,
                "type": "contact"
              }
            }
          ]
        }
      ],
      "flashSuitChecked": true,
      "devNote": "It is possible to roll off of the ledge and avoid the Geemers, but it is somewhat tight and the timing is likely earlier than expected."
    },
    {
      "id": 32,
      "link": [
        1,
        6
      ],
      "name": "G-Mode Immobile Morph",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "direct",
          "morphed": true,
          "mobility": "immobile"
        }
      },
      "requires": [
        "h_ZebesIsAwake",
        "canUseIFrames"
      ],
      "flashSuitChecked": true,
      "devNote": "The immobile case is included as a separate strat, since the Geemer hit to restore mobility provides i-frames eliminating a need to account for a subsequent Geemer hit (or a way to evade it)."
    },
    {
      "id": 33,
      "link": [
        1,
        6
      ],
      "name": "G-Mode Morph with Flashing Lights",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "direct",
          "morphed": true
        }
      },
      "requires": [
        {
          "notable": "G-Mode Flashing Lights"
        },
        {
          "or": [
            "h_ZebesNotAwake",
            "h_canArtificialMorphSpringBall",
            "h_canArtificialMorphBombThings",
            "canTrickyJump",
            {
              "enemyDamage": {
                "enemy": "Geemer (blue)",
                "hits": 1,
                "type": "contact"
              }
            }
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "The eye scanners are particularly annoying while in G-mode. They scan Samus with bright flashing lights which remain for a further distance.",
        "This is notable so a player can disable having to enter these flashing lights. If disabled, Samus will only require being in g-mode in this room if Zebes is awake."
      ],
      "devNote": "Although there would be no enemies and the strat would be free, these options are here as a way to avoid the canRiskPermanentLossOfAccess."
    },
    {
      "id": 34,
      "link": [
        2,
        2
      ],
      "name": "Leave with Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 5,
          "openEnd": 0
        }
      }
    },
    {
      "id": 63,
      "link": [
        2,
        2
      ],
      "name": "Leave With Spark (Fast Wall Climb)",
      "requires": [
        {
          "notable": "Leave With Spark (Fast Wall Climb)"
        },
        {
          "obstaclesCleared": [
            "A",
            "C"
          ]
        },
        "HiJump",
        {
          "canShineCharge": {
            "usedTiles": 35,
            "openEnd": 1
          }
        },
        "canShinechargeMovementTricky",
        "canFastWalljumpClimb",
        {
          "shinespark": {
            "frames": 8,
            "excessFrames": 0
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {
          "position": "top"
        }
      }
    },
    {
      "id": 35,
      "link": [
        2,
        2
      ],
      "name": "G-Mode Setup - Get Hit By Geemer - Broken Crumble Blocks",
      "requires": [
        "h_ZebesIsAwake",
        {
          "or": [
            "h_canDestroyBombWalls",
            {
              "obstaclesCleared": [
                "A"
              ]
            }
          ]
        },
        {
          "or": [
            "canConsecutiveWalljump",
            "h_canFly"
          ]
        }
      ],
      "exitCondition": {
        "leaveWithGModeSetup": {}
      },
      "flashSuitChecked": true,
      "note": "Falling down the shaft and breaking the crumble block does not require Morph."
    },
    {
      "id": 36,
      "link": [
        2,
        2
      ],
      "name": "G-Mode Setup - Get Hit By Geemer - Broken Power Bomb Blocks",
      "requires": [
        "h_ZebesIsAwake",
        {
          "or": [
            "h_canDestroyBombWalls",
            {
              "obstaclesCleared": [
                "A"
              ]
            }
          ]
        },
        "h_canUsePowerBombs",
        {
          "canShineCharge": {
            "usedTiles": 42,
            "openEnd": 0
          }
        },
        {
          "shinespark": {
            "frames": 43
          }
        }
      ],
      "exitCondition": {
        "leaveWithGModeSetup": {}
      },
      "flashSuitChecked": true,
      "note": "Falling down the shaft and breaking the crumble block does not require Morph."
    },
    {
      "id": 37,
      "link": [
        2,
        2
      ],
      "name": "G-Mode Setup - Get Hit By Geemer - Blocks Already Broken",
      "requires": [
        "h_ZebesIsAwake",
        {
          "obstaclesCleared": [
            "A",
            "B"
          ]
        }
      ],
      "exitCondition": {
        "leaveWithGModeSetup": {}
      },
      "flashSuitChecked": true,
      "note": "Falling down the shaft and breaking the crumble block does not require Morph."
    },
    {
      "id": 38,
      "link": [
        2,
        2
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_canCrystalFlash"
      ],
      "clearsObstacles": [
        "A"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 39,
      "link": [
        2,
        4
      ],
      "name": "Base",
      "requires": [
        "Morph",
        {
          "or": [
            "h_canDestroyBombWalls",
            {
              "obstaclesCleared": [
                "A"
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "A",
        "B"
      ]
    },
    {
      "id": 40,
      "link": [
        2,
        4
      ],
      "name": "Temporary Blue",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 3,
          "openEnd": 0
        }
      },
      "requires": [
        "Morph",
        "canTemporaryBlue"
      ],
      "clearsObstacles": [
        "A",
        "B"
      ],
      "flashSuitChecked": true,
      "devNote": "There is 1 unusable tile in this runway."
    },
    {
      "id": 41,
      "link": [
        3,
        1
      ],
      "name": "Base",
      "requires": []
    },
    {
      "id": 42,
      "link": [
        4,
        1
      ],
      "name": "Base",
      "requires": [
        "Morph"
      ]
    },
    {
      "id": 43,
      "link": [
        4,
        1
      ],
      "name": "Broken Power Bomb Blocks",
      "requires": [
        {
          "or": [
            "h_canUsePowerBombs",
            {
              "obstaclesCleared": [
                "C"
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "C"
      ]
    },
    {
      "id": 44,
      "link": [
        4,
        1
      ],
      "name": "Artificial Morph Remotely Collect the Item",
      "requires": [
        "canEnterGMode",
        {
          "obstaclesCleared": [
            "D"
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": "After touching the item, roll back to the left before exiting G-Mode and remotely collect it.",
      "devNote": "This does not include canRiskPermanentLossOfAccess, because the only reason to do this strat is if the item is there."
    },
    {
      "id": 45,
      "link": [
        4,
        2
      ],
      "name": "Return Through Crumble Blocks",
      "requires": [
        {
          "notable": "Return Through Crumble Blocks"
        },
        "Morph",
        {
          "or": [
            "canConsecutiveWalljump",
            "h_canFly"
          ]
        },
        {
          "obstaclesCleared": [
            "A",
            "B"
          ]
        }
      ],
      "note": "The Crumble Block does not respawn, so it's possible to grab the items and go back up without breaking the Power Bomb blocks."
    },
    {
      "id": 46,
      "link": [
        4,
        2
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "h_canUsePowerBombs",
            {
              "obstaclesCleared": [
                "C"
              ]
            }
          ]
        },
        {
          "or": [
            "canConsecutiveWalljump",
            "h_canFly"
          ]
        },
        {
          "or": [
            {
              "and": [
                "h_canUsePowerBombs",
                "canTrivialMidAirMorph"
              ]
            },
            "ScrewAttack"
          ]
        }
      ],
      "clearsObstacles": [
        "A",
        "B",
        "C"
      ],
      "note": "Base strat when entering the room from below.",
      "devNote": "canWallJumpInstantMorph is not needed here, as the precision is very low."
    },
    {
      "id": 47,
      "link": [
        4,
        2
      ],
      "name": "Power Bomb and Bombs",
      "requires": [
        {
          "or": [
            "h_canUsePowerBombs",
            {
              "obstaclesCleared": [
                "C"
              ]
            }
          ]
        },
        "h_canUseMorphBombs",
        {
          "or": [
            "h_canFly",
            {
              "and": [
                "canConsecutiveWalljump",
                "canWallJumpInstantMorph"
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "A",
        "B",
        "C"
      ],
      "note": "Placing the bomb against the bomb block at the top of the shaft can be somewhat tricky."
    },
    {
      "id": 48,
      "link": [
        4,
        2
      ],
      "name": "Geemer Ice Climb",
      "requires": [
        {
          "or": [
            "h_canUsePowerBombs",
            {
              "and": [
                {
                  "obstaclesCleared": [
                    "B"
                  ]
                },
                "Morph"
              ]
            },
            {
              "obstaclesCleared": [
                "C"
              ]
            }
          ]
        },
        {
          "or": [
            {
              "obstaclesCleared": [
                "A"
              ]
            },
            "ScrewAttack",
            {
              "and": [
                "h_canUseMorphBombs",
                "canMidAirMorph"
              ]
            }
          ]
        },
        "canTrickyUseFrozenEnemies",
        "canTrickyJump",
        "canCameraManip"
      ],
      "clearsObstacles": [
        "A",
        "B"
      ],
      "note": [
        "Use both Geemers to climb the tall shaft by repeatedly freezing them.",
        "Note that one moves locally when on camera and the other moves globally."
      ]
    },
    {
      "id": 49,
      "link": [
        4,
        2
      ],
      "name": "Geemer Ice Climb with PowerBombs",
      "requires": [
        {
          "or": [
            "h_canUsePowerBombs",
            {
              "and": [
                {
                  "obstaclesCleared": [
                    "B"
                  ]
                },
                "Morph"
              ]
            },
            {
              "obstaclesCleared": [
                "C"
              ]
            }
          ]
        },
        "h_canUsePowerBombs",
        "canTrivialMidAirMorph",
        "canTrickyUseFrozenEnemies",
        "canTrickyJump",
        "canBePatient",
        "canCameraManip"
      ],
      "clearsObstacles": [
        "A",
        "B"
      ],
      "note": [
        "Use both Geemers to climb the tall shaft by repeatedly freezing them.",
        "Note that one moves locally when on camera and the other moves globally.",
        "Once Samus is close to the top Bomb Block, freeze one Geemer low and jump as high as possible before placing a power bomb.",
        "Continue climbing with the Geemer that survives."
      ]
    },
    {
      "id": 50,
      "link": [
        4,
        2
      ],
      "name": "Shinespark",
      "requires": [
        {
          "or": [
            "h_canUsePowerBombs",
            {
              "obstaclesCleared": [
                "C"
              ]
            }
          ]
        },
        {
          "canShineCharge": {
            "usedTiles": 42,
            "openEnd": 0
          }
        },
        {
          "shinespark": {
            "frames": 43,
            "excessFrames": 2
          }
        }
      ],
      "clearsObstacles": [
        "A",
        "B",
        "C"
      ],
      "flashSuitChecked": true,
      "devNote": "The runway here is 31 tiles before breaking the Power Bomb blocks, but becomes longer after."
    },
    {
      "id": 51,
      "link": [
        4,
        2
      ],
      "name": "Walljump Up Shaft and Shinespark",
      "requires": [
        {
          "or": [
            "h_canUsePowerBombs",
            {
              "obstaclesCleared": [
                "C"
              ]
            }
          ]
        },
        "canShinechargeMovementComplex",
        "canFastWalljumpClimb",
        {
          "canShineCharge": {
            "usedTiles": 42,
            "openEnd": 0
          }
        },
        {
          "shinespark": {
            "frames": 17,
            "excessFrames": 3
          }
        }
      ],
      "clearsObstacles": [
        "A",
        "B",
        "C"
      ],
      "flashSuitChecked": true,
      "note": [
        "Breaking the Power Bomb blocks exactly wide enough makes it easier to quickly enter the one-tile gap.",
        "Aligning the Power Bomb with the left side of the ceiling fixture that sticks down will position the explosion correctly for this."
      ],
      "devNote": "The runway here is 31 tiles before breaking the Power Bomb blocks, but becomes longer after."
    },
    {
      "id": 52,
      "link": [
        4,
        2
      ],
      "name": "Shinespark (Return Through Crumble Blocks)",
      "requires": [
        {
          "obstaclesCleared": [
            "B"
          ]
        },
        "Morph",
        {
          "canShineCharge": {
            "usedTiles": 31,
            "openEnd": 0
          }
        },
        {
          "shinespark": {
            "frames": 40,
            "excessFrames": 3
          }
        },
        "canShinechargeMovementTricky"
      ],
      "clearsObstacles": [
        "A"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 53,
      "link": [
        4,
        2
      ],
      "name": "Use Flash Suit",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        },
        {
          "useFlashSuit": {}
        },
        {
          "or": [
            {
              "shinespark": {
                "frames": 36,
                "excessFrames": 3
              }
            },
            {
              "and": [
                {
                  "or": [
                    "canConsecutiveWalljump",
                    "SpaceJump"
                  ]
                },
                {
                  "shinespark": {
                    "frames": 9,
                    "excessFrames": 9
                  }
                }
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "A"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 54,
      "link": [
        4,
        2
      ],
      "name": "Use Flash Suit (Return Through Crumble Blocks)",
      "requires": [
        {
          "obstaclesCleared": [
            "B"
          ]
        },
        "Morph",
        {
          "obstaclesNotCleared": [
            "C"
          ]
        },
        {
          "useFlashSuit": {}
        },
        {
          "shinespark": {
            "frames": 33,
            "excessFrames": 3
          }
        }
      ],
      "clearsObstacles": [
        "A"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 55,
      "link": [
        4,
        2
      ],
      "name": "Geemer Ice Stuck XRay Climb",
      "requires": [
        {
          "notable": "Geemer Ice Stuck XRay Climb"
        },
        "canWallIceClip",
        "canXRayClimb",
        "Grapple",
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        },
        {
          "enemyDamage": {
            "enemy": "Geemer (blue)",
            "type": "contact",
            "hits": 1
          }
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Keep the two Geemers on screen while moving to the right side of the room.",
        "Freeze the second Geemer as it exits the Morph Tunnel, with the Crumble block.",
        "Use a Super Missile to knock the first Geemer down and freeze it at the pixel perfect height.",
        "Become stuck in the wall after using Grapple to kill the frozen Geemer as it walks through Samus, firing to the left.",
        "This re-enables XRay climbing."
      ],
      "devNote": "FIXME: The Reo can be used to avoid spending a Super, but it's chaotic."
    },
    {
      "id": 56,
      "link": [
        4,
        2
      ],
      "name": "G-Mode Morph Touch the Item to Overload PLMs",
      "requires": [
        {
          "obstaclesCleared": [
            "D"
          ]
        },
        "canRiskPermanentLossOfAccess",
        "h_canArtificialMorphMovement",
        {
          "or": [
            "canConsecutiveWalljump",
            "SpaceJump"
          ]
        }
      ],
      "note": "After overloading the PLMs by touching the item, go through the crumble and bomb blocks to the top door.",
      "devNote": "The setup for this strat is where the obstacle is cleared."
    },
    {
      "id": 57,
      "link": [
        5,
        2
      ],
      "name": "G-Mode Morph IBJ",
      "requires": [
        "canEnterGMode",
        "h_canArtificialMorphIBJ",
        {
          "or": [
            "canConsecutiveWalljump",
            "SpaceJump",
            "canOffScreenMovement"
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": "Overload PLMs by repeatidly bombing the Power Bomb blocks or the side of the crumble block, then enter through the crumble block.",
      "devNote": "The off screen movement is just during an IBJ, and only if wall jumps are disabled. But the IBJ is long and Samus is covered for most of it."
    },
    {
      "id": 58,
      "link": [
        5,
        4
      ],
      "name": "G-Mode Morph",
      "requires": [
        "canEnterGMode"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 59,
      "link": [
        5,
        4
      ],
      "name": "G-Mode Morph with Power Bomb",
      "requires": [
        "canEnterGMode",
        "h_canArtificialMorphPowerBomb"
      ],
      "clearsObstacles": [
        "B",
        "C"
      ],
      "flashSuitChecked": true,
      "note": "The blocks will not break if PLMs are already overloaded. Exiting G-Mode before the Power Bomb explodes will ensure they break."
    },
    {
      "id": 60,
      "link": [
        6,
        2
      ],
      "name": "G-Mode Morph Power Bomb the Item",
      "requires": [
        "canEnterGMode",
        {
          "itemNotCollectedAtNode": 4
        },
        "canRiskPermanentLossOfAccess",
        "h_canArtificialMorphPowerBomb",
        "h_canArtificialMorphMovement",
        {
          "or": [
            "canConsecutiveWalljump",
            "SpaceJump"
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Overload PLMs with a single Power Bomb by hitting the item at the right end of the room.",
        "This can be done with a single precisely placed Power Bomb. There should be 4 empty tiles between Samus and the left of the blocks when the bomb is placed."
      ]
    },
    {
      "id": 61,
      "link": [
        6,
        4
      ],
      "name": "G-Mode Morph Remotely Collect the Item",
      "requires": [
        "canEnterGMode",
        {
          "itemNotCollectedAtNode": 4
        },
        "h_canArtificialMorphMovement"
      ],
      "clearsObstacles": [
        "D"
      ],
      "collectsItems": [
        4
      ],
      "flashSuitChecked": true,
      "note": [
        "Touch the item to either roll back to the left before exiting G-Mode and remotely collect it,",
        "or to overload PLMs and go up through the crumble block and bomb block."
      ],
      "devNote": [
        "This will force Samus to pick up the item, so it can only be done once.",
        "This does not include canRiskPermanentLossOfAccess if Samus only uses this to return to the left with the item."
      ]
    },
    {
      "id": 62,
      "link": [
        6,
        5
      ],
      "name": "Base",
      "requires": [
        "canEnterGMode"
      ],
      "flashSuitChecked": true
    },
    {
      "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": []
    },
    {
      "name": "Base (Collect Item)",
      "notable": false,
      "requires": [],
      "link": [
        3,
        3
      ],
      "collectsItems": [
        3
      ]
    },
    {
      "name": "Base (Collect Item)",
      "notable": false,
      "requires": [],
      "link": [
        4,
        4
      ],
      "collectsItems": [
        4
      ]
    }
  ],
  "nextStratId": 64,
  "notables": [
    {
      "id": 1,
      "name": "G-Mode Flashing Lights",
      "note": [
        "The eye scanners are particularly annoying while in g-mode. They scan Samus with bright flashing lights which remain for a further distance.",
        "This is notable so a player can disable having to enter these flashing lights. If disabled, Samus will only require being in g-mode in this room if Zebes is awake."
      ]
    },
    {
      "id": 2,
      "name": "Ceiling Damage Boost",
      "note": [
        "Have Samus shoot the shot block revealing the item and then quickly get hit by an enemy at the peak of her jump in order to reach the item.",
        "No directional inputs should be held while getting hit by the enemy in order to have a neutral boost and reach the item.",
        "This is traditionally done with the swooping Reo; after a few failed tries, it may help to reset the room to reposition it.",
        "The global Geemer may be easier to use, although it takes longer to get there; jump as it starts moving horizontally again while it is 3 tiles away from the item."
      ]
    },
    {
      "id": 3,
      "name": "Taco Tank",
      "note": "Triple frame perfect dashing stationary spinjump into delayed CWJ and precise hitbox manipulation."
    },
    {
      "id": 4,
      "name": "Return Through Crumble Blocks",
      "note": "The Crumble Block does not respawn, so it's possible to grab the items and go back up without breaking the Power Bomb blocks."
    },
    {
      "id": 5,
      "name": "Geemer Ice Stuck XRay Climb",
      "note": [
        "Keep the two Geemers on screen while moving to the right side of the room.",
        "Freeze the second Geemer as it exits the Morph Tunnel, with the Crumble block.",
        "Use a Super Missile to knock the first Geemer down and freeze it at the pixel perfect height.",
        "Become stuck in the wall after using Grapple to kill the frozen Geemer as it walks through Samus, firing to the left.",
        "This re-enables XRay climbing."
      ]
    },
    {
      "id": 6,
      "name": "Leave With Spark (Fast Wall Climb)",
      "note": [
        "Gain a shinecharge using the runway at the bottom of the room.",
        "Perform a series of fast walljumps to reach the top of the room and spark out."
      ]
    }
  ],
  "nextNotableId": 7
}