Morph Ball Room

Room ID: 38

Wiki
Difficulty filter

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}

Exit condition:

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

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}
"canShinechargeMovement"
{
  "canShineCharge": {
    "usedTiles": 25,
    "openEnd": 0
  }
}

Exit condition:

{
  "leaveShinecharged": {
    "framesRemaining": 135
  }
}
From: 1
Left Door
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}

Exit condition:

{
  "leaveSpinning": {
    "remoteRunway": {
      "length": 23,
      "openEnd": 0
    },
    "minExtraRunSpeed": "$2.7"
  }
}
From: 1
Left Door
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}

Exit condition:

{
  "leaveWithMockball": {
    "remoteRunway": {
      "length": 23,
      "openEnd": 0
    },
    "landingRunway": {
      "length": 4,
      "openEnd": 1
    }
  }
}
From: 1
Left Door
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}

Exit condition:

{
  "leaveWithSpringBallBounce": {
    "remoteRunway": {
      "length": 18,
      "openEnd": 0
    },
    "landingRunway": {
      "length": 4,
      "openEnd": 1
    },
    "movementType": "uncontrolled"
  }
}
From: 1
Left Door
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}

Exit condition:

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

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}
{
  "canShineCharge": {
    "usedTiles": 24,
    "openEnd": 0
  }
}
"canChainTemporaryBlue"

Exit condition:

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

Requires:

"h_ZebesIsAwake"

Exit condition:

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

Requires:

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

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}
"h_canCrystalFlash"
From: 1
Left Door
To: 1
Left Door

Requires:

{
  "enemyDamage": {
    "enemy": "Sidehopper",
    "type": "contact",
    "hits": 5
  }
}

Clears obstacles: C

From: 1
Left Door
To: 1
Left Door

For the Power Bomb and Screw Attack kills, this strat assumes you don't know you're entering the room beforehand. If you know, it's possible to Power Bomb kill the first two Sidehoppers damage-free by morphing before entering. For Screw, just entering with a spin jump would work.

Requires:

{
  "enemyKill": {
    "enemies": [
      [
        "Sidehopper",
        "Sidehopper"
      ],
      [
        "Sidehopper"
      ]
    ],
    "explicitWeapons": [
      "Missile",
      "Super",
      "PowerBomb",
      "ScrewAttack",
      "Plasma"
    ]
  }
}

Clears obstacles: C

From: 1
Left Door
To: 1
Left Door

Entrance condition:

{
  "comeInWithSpark": {}
}

Requires:

{
  "shinespark": {
    "frames": 40,
    "excessFrames": 9
  }
}

Clears obstacles: C

From: 1
Left Door
To: 1
Left Door

Enter the room ready to kill the hoppers before they can hit Samus. with a charge plasma shot ready, or in a screw attack spin jump, or a morph, ready to lay a power bomb.

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

"canPrepareForNextRoom"
{
  "or": [
    {
      "and": [
        "Plasma",
        "Charge"
      ]
    },
    "ScrewAttack",
    {
      "and": [
        "h_canUsePowerBombs",
        {
          "enemyKill": {
            "enemies": [
              [
                "Sidehopper"
              ]
            ],
            "explicitWeapons": [
              "Missile",
              "Super",
              "PowerBomb"
            ]
          }
        }
      ]
    }
  ]
}

Clears obstacles: C

From: 1
Left Door
To: 1
Left Door

Enter the room and immediately shoot a Missile and a Super to kill the first hopper. Quickly kill the second the same way or safely kill it with morph.

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

"canPrepareForNextRoom"
"canFarmWhileShooting"
{
  "ammo": {
    "type": "Missile",
    "count": 1
  }
}
{
  "ammo": {
    "type": "Super",
    "count": 1
  }
}
{
  "or": [
    "Morph",
    {
      "and": [
        {
          "ammo": {
            "type": "Missile",
            "count": 1
          }
        },
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        }
      ]
    }
  ]
}

Clears obstacles: C

From: 1
Left Door
To: 1
Left Door

Enter the room and immediately shoot a Missile and a Super to kill the first hopper.

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

"canPrepareForNextRoom"
"canFarmWhileShooting"
{
  "ammo": {
    "type": "Missile",
    "count": 1
  }
}
{
  "ammo": {
    "type": "Super",
    "count": 1
  }
}
From: 1
Left Door
To: 1
Left Door

Spark diagonally immediately on entry to kill the first two sidehoppers, then carefully kill the third.

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 5
  }
}

Requires:

"canPrepareForNextRoom"
"canTrickyJump"
"canDodgeWhileShooting"
{
  "shinespark": {
    "frames": 5,
    "excessFrames": 1
  }
}
{
  "enemyKill": {
    "enemies": [
      [
        "Sidehopper"
      ]
    ],
    "explicitWeapons": [
      "Missile",
      "Super",
      "PowerBomb",
      "Plasma",
      "Spazer",
      "Wave",
      "Bombs"
    ]
  }
}

Clears obstacles: C

From: 1
Left Door
To: 1
Left Door

Spark diagonally immediately on entry to kill the first two sidehoppers, then carefully kill the third.

Requires:

"canDodgeWhileShooting"
"canUseSpeedEchoes"
{
  "useFlashSuit": {}
}
{
  "shinespark": {
    "frames": 5,
    "excessFrames": 1
  }
}
{
  "enemyKill": {
    "enemies": [
      [
        "Sidehopper"
      ]
    ],
    "explicitWeapons": [
      "Missile",
      "Super",
      "PowerBomb",
      "Plasma",
      "Spazer",
      "Wave"
    ]
  }
}

Clears obstacles: C

From: 1
Left Door
To: 1
Left Door

This strat assumes you don't know you're entering the room beforehand. Otherwise, it's possible to kill the first two Sidehoppers without taking damage. It's possible to break the bomb blocks alongside the third Sidehopper without taking an additional hit with a mockball.

Requires:

{
  "or": [
    "canMockball",
    {
      "enemyDamage": {
        "enemy": "Sidehopper",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
{
  "enemyKill": {
    "enemies": [
      [
        "Sidehopper",
        "Sidehopper"
      ],
      [
        "Sidehopper"
      ]
    ],
    "explicitWeapons": [
      "PowerBomb"
    ]
  }
}

Clears obstacles: A, C

From: 1
Left Door
To: 1
Left Door

Requires:

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

Clears obstacles: C

From: 1
Left Door
To: 1
Left Door

Requires:

"h_ZebesNotAwake"

Clears obstacles: C

From: 1
Left Door
To: 1
Left Door

Entrance condition:

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

Exit condition:

{
  "leaveWithGMode": {
    "morphed": false
  }
}

Bypasses door shell: true

From: 1
Left Door
To: 1
Left Door

Entrance condition:

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

Exit condition:

{
  "leaveWithGMode": {
    "morphed": true
  }
}

Bypasses door shell: true

From: 1
Left Door
To: 5
Left Item

Requires:

"Morph"
{
  "obstaclesCleared": [
    "A",
    "C"
  ]
}
From: 1
Left Door
To: 5
Left Item

Requires:

"h_canBombThings"
{
  "obstaclesCleared": [
    "C"
  ]
}

Clears obstacles: A

From: 1
Left Door
To: 5
Left Item

It's a short charge into a speedball to break the bomb blocks. The Sidehoppers need to be destroyed beforehand to clear the running space.

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}
{
  "speedBall": {
    "length": 25,
    "openEnd": 0
  }
}

Clears obstacles: A

From: 1
Left Door
To: 5
Left Item

Entrance condition:

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

Requires:

"canSpeedball"

Clears obstacles: A

From: 1
Left Door
To: 5
Left Item

Overload the PLMs by rolling through the camera scroll blocks which are 4 tiles to the right of the stair by the door.

Entrance condition:

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

Requires:

"h_ZebesNotAwake"

Clears obstacles: D

From: 1
Left Door
To: 5
Left Item

Either kill the Sidehoppers immediately on entry by placing a Power Bomb while rolling off the stair or tank their hits. If Samus has Morph Ball, it is also possible to kill the Sidehoppers upon room entry with Screw Attack or a powerful beam. Overload the PLMs by rolling through the camera scroll blocks which are 4 tiles to the right of the stair by the door. Roll under the last Sidehopper and through the bomb blocks.

Entrance condition:

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

Requires:

{
  "or": [
    {
      "enemyDamage": {
        "enemy": "Sidehopper",
        "type": "contact",
        "hits": 2
      }
    },
    {
      "ammo": {
        "type": "PowerBomb",
        "count": 1
      }
    },
    {
      "and": [
        "Morph",
        {
          "or": [
            {
              "and": [
                "Plasma",
                "Charge"
              ]
            },
            "ScrewAttack"
          ]
        }
      ]
    }
  ]
}

Clears obstacles: D

From: 1
Left Door
To: 5
Left Item

Tank the Sidehopper hits or kill them after a single hit by quickly placing a Power Bomb. It is also possible to kill the Sidehoppers with a very fast Screw Attack, if Samus has Morph Ball. Overload the PLMs by rolling through the camera scroll blocks which are 4 tiles to the right of the stair by the door. Roll under the last Sidehopper and through the bomb blocks.

Entrance condition:

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

Requires:

{
  "or": [
    {
      "enemyDamage": {
        "enemy": "Sidehopper",
        "type": "contact",
        "hits": 3
      }
    },
    {
      "and": [
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "ammo": {
            "type": "PowerBomb",
            "count": 1
          }
        }
      ]
    },
    {
      "and": [
        "Morph",
        "ScrewAttack",
        "canTrickyJump"
      ]
    }
  ]
}

Clears obstacles: D

From: 2
Elevator
To: 2
Elevator

Requires:

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

Exit condition:

{
  "leaveShinecharged": {
    "framesRemaining": 130
  }
}
From: 2
Elevator
To: 3
Right Door

From: 2
Elevator
To: 4
Right Item

From: 3
Right Door
To: 1
Left Door

Entrance condition:

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

Bypasses door shell: true

From: 3
Right Door
To: 1
Left Door

Entrance condition:

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

Exit condition:

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

Bypasses door shell: true

From: 3
Right Door
To: 2
Elevator

From: 3
Right Door
To: 2
Elevator

Entrance condition:

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

Exit condition:

{
  "leaveWithGMode": {
    "morphed": false
  }
}
From: 3
Right Door
To: 3
Right Door

Exit condition:

{
  "leaveWithRunway": {
    "length": 5,
    "openEnd": 1
  }
}
From: 3
Right Door
To: 3
Right Door

Requires:

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

Exit condition:

{
  "leaveShinecharged": {
    "framesRemaining": 130
  }
}
From: 3
Right Door
To: 3
Right Door

Exit condition:

{
  "leaveSpinning": {
    "remoteRunway": {
      "length": 26,
      "openEnd": 1
    },
    "minExtraRunSpeed": "$2.4"
  }
}
From: 3
Right Door
To: 3
Right Door

Exit condition:

{
  "leaveWithMockball": {
    "remoteRunway": {
      "length": 26,
      "openEnd": 1
    },
    "landingRunway": {
      "length": 5,
      "openEnd": 1
    }
  }
}
From: 3
Right Door
To: 3
Right Door

Exit condition:

{
  "leaveWithSpringBallBounce": {
    "remoteRunway": {
      "length": 23,
      "openEnd": 0
    },
    "landingRunway": {
      "length": 5,
      "openEnd": 1
    },
    "movementType": "uncontrolled"
  }
}
From: 3
Right Door
To: 3
Right Door

Exit condition:

{
  "leaveSpaceJumping": {
    "remoteRunway": {
      "length": 21,
      "openEnd": 1
    }
  }
}
From: 3
Right Door
To: 3
Right Door

Requires:

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

Exit condition:

{
  "leaveWithTemporaryBlue": {}
}
From: 3
Right Door
To: 5
Left Item

Place the Power Bomb, then exit g-mode before the bomb goes off.

Entrance condition:

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

Requires:

"h_canArtificialMorphPowerBomb"
"h_canArtificialMorphMovement"

Clears obstacles: B

From: 4
Right Item
To: 2
Elevator

Requires:

{
  "or": [
    "canWalljump",
    "Morph",
    "SpaceJump",
    "HiJump"
  ]
}
From: 4
Right Item
To: 2
Elevator

Requires:

{
  "or": [
    "canCarefulJump",
    "canEscapeMorphLocation"
  ]
}
From: 4
Right Item
To: 2
Elevator

Requires:

"h_canCrouchJumpDownGrab"
From: 4
Right Item
To: 4
Right Item

Requires:

"h_canCrystalFlash"

Clears obstacles: B

From: 4
Right Item
To: 5
Left Item

Requires:

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

Clears obstacles: B

From: 5
Left Item
To: 1
Left Door

Kill the ground hoppers by shooting through the morph tunnel, then roll through to the left door.

Requires:

"Morph"
{
  "obstaclesCleared": [
    "A"
  ]
}
From: 5
Left Item
To: 1
Left Door

It's a short charge into a speedball to break the Bomb Blocks. The Power Bomb Blocks need to be destroyed to have enough running room. The sidehoppers that remain can be killed safely using the morph tunnel.

Requires:

{
  "obstaclesCleared": [
    "B"
  ]
}
{
  "getBlueSpeed": {
    "usedTiles": 21,
    "openEnd": 1
  }
}
"canSpeedball"

Clears obstacles: A, C

From: 5
Left Item
To: 1
Left Door

The SideHoppers can be killed safely from behind with Power Beam.

Requires:

"Morph"
{
  "or": [
    "Wave",
    "canDodgeWhileShooting",
    "h_canUsePowerBombs",
    "ScrewAttack"
  ]
}
{
  "obstaclesCleared": [
    "A"
  ]
}

Clears obstacles: C

From: 5
Left Item
To: 4
Right Item

Requires:

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

Clears obstacles: B

From: 5
Left Item
To: 5
Left Item

Requires:

"h_canBombThings"

Clears obstacles: A

Place the Power Bomb, then exit g-mode before the bomb goes off.

Requires:

{
  "obstaclesCleared": [
    "D"
  ]
}
"h_canArtificialMorphPowerBomb"
{
  "or": [
    "h_canArtificialMorphSpringBall",
    "h_canArtificialMorphPowerBomb",
    "h_canArtificialMorphBombs"
  ]
}

Clears obstacles: B

From: 6
Left Door Spawn At Junction
To: 1
Left Door

Requires:

{
  "enemyDamage": {
    "enemy": "Sidehopper",
    "type": "contact",
    "hits": 1
  }
}
From: 6
Left Door Spawn At Junction
To: 1
Left Door

Requires:

"h_ZebesNotAwake"

Clears obstacles: C

From: 6
Left Door Spawn At Junction
To: 5
Left Item

Requires:

{
  "enemyDamage": {
    "enemy": "Sidehopper",
    "type": "contact",
    "hits": 2
  }
}
{
  "or": [
    "canCarefulJump",
    {
      "enemyDamage": {
        "enemy": "Sidehopper",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
"h_canBombThings"

{
  "$schema": "../../../schema/m3-room.schema.json",
  "id": 38,
  "name": "Morph Ball Room",
  "area": "Brinstar",
  "subarea": "Blue",
  "playable": true,
  "roomAddress": "0x79E9F",
  "roomEnvironments": [
    {
      "heated": false
    }
  ],
  "nodes": [
    {
      "id": 1,
      "name": "Left Door",
      "nodeType": "door",
      "nodeSubType": "gray",
      "nodeAddress": "0x0018e9e",
      "doorOrientation": "left",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ],
      "locks": [
        {
          "name": "Morph Ball Room Gray Lock (to Green Hill Zone)",
          "lockType": "killEnemies",
          "lock": [
            "f_ZebesAwake"
          ],
          "unlockStrats": [
            {
              "name": "Base",
              "notable": false,
              "requires": [
                {
                  "obstaclesCleared": [
                    "C"
                  ]
                }
              ],
              "devNote": "Obstacle can be destroyed either going 1 -> 6 or 6 -> 1."
            }
          ],
          "devNote": "Technically this yields f_ZebesAwake, although it requires the same flag to spawn the enemies, so it's not possible here."
        }
      ],
      "spawnAt": 6
    },
    {
      "id": 2,
      "name": "Elevator",
      "nodeType": "door",
      "nodeSubType": "elevator",
      "nodeAddress": "0x0018eb6",
      "doorOrientation": "up"
    },
    {
      "id": 3,
      "name": "Right Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x0018eaa",
      "doorOrientation": "right",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ]
    },
    {
      "id": 4,
      "name": "Right Item",
      "nodeType": "item",
      "nodeSubType": "visible",
      "nodeItem": "Morph",
      "nodeAddress": "0x786DE",
      "devNote": [
        "This item is technically no longer spawned after Zebes is awake, which would require canRiskPermanentLossOfAccess.",
        "The logic here is not modeling that, as that bug is likely not going to be kept by anyone that utilizes this data."
      ],
      "locks": [
        {
          "name": "Dummy Item Lock",
          "lockType": "gameFlag",
          "unlockStrats": [
            {
              "name": "Base (Collect Item)",
              "notable": false,
              "requires": []
            }
          ]
        }
      ]
    },
    {
      "id": 5,
      "name": "Left Item",
      "nodeType": "item",
      "nodeSubType": "visible",
      "nodeItem": "PowerBomb",
      "nodeAddress": "0x7874C",
      "locks": [
        {
          "name": "Blue Brinstar Power Bombs Spawn Lock",
          "lockType": "gameFlag",
          "unlockStrats": [
            {
              "name": "Base",
              "notable": false,
              "requires": [
                {
                  "or": [
                    "h_ZebesIsAwake",
                    "h_AllItemsSpawned"
                  ]
                }
              ]
            }
          ],
          "note": "Item doesn't appear before Zebes is awakened."
        }
      ]
    },
    {
      "id": 6,
      "name": "Left Door Spawn At Junction",
      "nodeType": "junction",
      "nodeSubType": "junction"
    }
  ],
  "obstacles": [
    {
      "id": "A",
      "name": "Bomb Blocks",
      "obstacleType": "inanimate"
    },
    {
      "id": "B",
      "name": "Power Bomb Blocks",
      "obstacleType": "inanimate"
    },
    {
      "id": "C",
      "name": "Sidehopper trio",
      "obstacleType": "enemies"
    },
    {
      "id": "D",
      "name": "At the Power Bomb Item While in Artificial Morph",
      "obstacleType": "abstract"
    }
  ],
  "enemies": [
    {
      "id": "e1",
      "groupName": "Morph Ball Room Sidehoppers",
      "enemyName": "Sidehopper",
      "quantity": 3,
      "homeNodes": [
        1,
        6
      ],
      "spawn": [
        "f_ZebesAwake"
      ]
    }
  ],
  "links": [
    {
      "from": 1,
      "to": [
        {
          "id": 1
        },
        {
          "id": 5
        }
      ]
    },
    {
      "from": 2,
      "to": [
        {
          "id": 2
        },
        {
          "id": 3
        },
        {
          "id": 4
        }
      ]
    },
    {
      "from": 3,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        },
        {
          "id": 5
        }
      ]
    },
    {
      "from": 4,
      "to": [
        {
          "id": 2
        },
        {
          "id": 4
        },
        {
          "id": 5
        }
      ]
    },
    {
      "from": 5,
      "to": [
        {
          "id": 1
        },
        {
          "id": 4
        },
        {
          "id": 5
        }
      ]
    },
    {
      "from": 6,
      "to": [
        {
          "id": 1
        },
        {
          "id": 5
        }
      ]
    }
  ],
  "strats": [
    {
      "id": 1,
      "link": [
        1,
        1
      ],
      "name": "Leave with Runway",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        }
      ],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 4,
          "openEnd": 1
        }
      }
    },
    {
      "id": 2,
      "link": [
        1,
        1
      ],
      "name": "Leave Shinecharged",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        },
        "canShinechargeMovement",
        {
          "canShineCharge": {
            "usedTiles": 25,
            "openEnd": 0
          }
        }
      ],
      "exitCondition": {
        "leaveShinecharged": {
          "framesRemaining": 135
        }
      },
      "flashSuitChecked": true
    },
    {
      "id": 3,
      "link": [
        1,
        1
      ],
      "name": "Leave Spinning",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        }
      ],
      "exitCondition": {
        "leaveSpinning": {
          "remoteRunway": {
            "length": 23,
            "openEnd": 0
          },
          "minExtraRunSpeed": "$2.7"
        }
      }
    },
    {
      "id": 4,
      "link": [
        1,
        1
      ],
      "name": "Leave With Mockball",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        }
      ],
      "exitCondition": {
        "leaveWithMockball": {
          "remoteRunway": {
            "length": 23,
            "openEnd": 0
          },
          "landingRunway": {
            "length": 4,
            "openEnd": 1
          }
        }
      }
    },
    {
      "id": 5,
      "link": [
        1,
        1
      ],
      "name": "Leave With Spring Ball Bounce",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        }
      ],
      "exitCondition": {
        "leaveWithSpringBallBounce": {
          "remoteRunway": {
            "length": 18,
            "openEnd": 0
          },
          "landingRunway": {
            "length": 4,
            "openEnd": 1
          },
          "movementType": "uncontrolled"
        }
      }
    },
    {
      "id": 6,
      "link": [
        1,
        1
      ],
      "name": "Leave Space Jumping",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        }
      ],
      "exitCondition": {
        "leaveSpaceJumping": {
          "remoteRunway": {
            "length": 17,
            "openEnd": 1
          }
        }
      }
    },
    {
      "id": 7,
      "link": [
        1,
        1
      ],
      "name": "Leave With Temporary Blue",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        },
        {
          "canShineCharge": {
            "usedTiles": 24,
            "openEnd": 0
          }
        },
        "canChainTemporaryBlue"
      ],
      "exitCondition": {
        "leaveWithTemporaryBlue": {}
      }
    },
    {
      "id": 8,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Setup - Get Hit By Sidehopper",
      "requires": [
        "h_ZebesIsAwake"
      ],
      "exitCondition": {
        "leaveWithGModeSetup": {}
      },
      "flashSuitChecked": true
    },
    {
      "id": 9,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Regain Mobility",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 1
          }
        },
        "h_ZebesIsAwake"
      ],
      "gModeRegainMobility": {},
      "flashSuitChecked": true
    },
    {
      "id": 10,
      "link": [
        1,
        1
      ],
      "name": "Crystal Flash",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        },
        "h_canCrystalFlash"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 11,
      "link": [
        1,
        1
      ],
      "name": "Power Beam Sidehopper Kill",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 5
          }
        }
      ],
      "clearsObstacles": [
        "C"
      ]
    },
    {
      "id": 12,
      "link": [
        1,
        1
      ],
      "name": "Quick Sidehopper Kill",
      "requires": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Sidehopper",
                "Sidehopper"
              ],
              [
                "Sidehopper"
              ]
            ],
            "explicitWeapons": [
              "Missile",
              "Super",
              "PowerBomb",
              "ScrewAttack",
              "Plasma"
            ]
          }
        }
      ],
      "clearsObstacles": [
        "C"
      ],
      "note": [
        "For the Power Bomb and Screw Attack kills, this strat assumes you don't know you're entering the room beforehand.",
        "If you know, it's possible to Power Bomb kill the first two Sidehoppers damage-free by morphing before entering.",
        "For Screw, just entering with a spin jump would work."
      ]
    },
    {
      "id": 13,
      "link": [
        1,
        1
      ],
      "name": "Spark into Room",
      "entranceCondition": {
        "comeInWithSpark": {}
      },
      "requires": [
        {
          "shinespark": {
            "frames": 40,
            "excessFrames": 9
          }
        }
      ],
      "clearsObstacles": [
        "C"
      ]
    },
    {
      "id": 14,
      "link": [
        1,
        1
      ],
      "name": "Prepared Kill on Entry",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        "canPrepareForNextRoom",
        {
          "or": [
            {
              "and": [
                "Plasma",
                "Charge"
              ]
            },
            "ScrewAttack",
            {
              "and": [
                "h_canUsePowerBombs",
                {
                  "enemyKill": {
                    "enemies": [
                      [
                        "Sidehopper"
                      ]
                    ],
                    "explicitWeapons": [
                      "Missile",
                      "Super",
                      "PowerBomb"
                    ]
                  }
                }
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "C"
      ],
      "note": [
        "Enter the room ready to kill the hoppers before they can hit Samus.",
        "with a charge plasma shot ready, or in a screw attack spin jump, or a morph, ready to lay a power bomb."
      ]
    },
    {
      "id": 15,
      "link": [
        1,
        1
      ],
      "name": "Prepared Missile and Super Kill",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        "canPrepareForNextRoom",
        "canFarmWhileShooting",
        {
          "ammo": {
            "type": "Missile",
            "count": 1
          }
        },
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        },
        {
          "or": [
            "Morph",
            {
              "and": [
                {
                  "ammo": {
                    "type": "Missile",
                    "count": 1
                  }
                },
                {
                  "ammo": {
                    "type": "Super",
                    "count": 1
                  }
                }
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "C"
      ],
      "note": [
        "Enter the room and immediately shoot a Missile and a Super to kill the first hopper.",
        "Quickly kill the second the same way or safely kill it with morph."
      ]
    },
    {
      "id": 16,
      "link": [
        1,
        1
      ],
      "name": "Prepared Missile and Super Kill (First Hopper)",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        "canPrepareForNextRoom",
        "canFarmWhileShooting",
        {
          "ammo": {
            "type": "Missile",
            "count": 1
          }
        },
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        }
      ],
      "note": "Enter the room and immediately shoot a Missile and a Super to kill the first hopper.",
      "devNote": "This can then be paired with quickly leaving the room normally or with a G-Mode setup, if the door is unlocked."
    },
    {
      "id": 17,
      "link": [
        1,
        1
      ],
      "name": "Diagonal Spark on Entry",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 5
        }
      },
      "requires": [
        "canPrepareForNextRoom",
        "canTrickyJump",
        "canDodgeWhileShooting",
        {
          "shinespark": {
            "frames": 5,
            "excessFrames": 1
          }
        },
        {
          "enemyKill": {
            "enemies": [
              [
                "Sidehopper"
              ]
            ],
            "explicitWeapons": [
              "Missile",
              "Super",
              "PowerBomb",
              "Plasma",
              "Spazer",
              "Wave",
              "Bombs"
            ]
          }
        }
      ],
      "clearsObstacles": [
        "C"
      ],
      "note": "Spark diagonally immediately on entry to kill the first two sidehoppers, then carefully kill the third."
    },
    {
      "id": 18,
      "link": [
        1,
        1
      ],
      "name": "Use Flash Suit, Diagonal Spark on Entry",
      "requires": [
        "canDodgeWhileShooting",
        "canUseSpeedEchoes",
        {
          "useFlashSuit": {}
        },
        {
          "shinespark": {
            "frames": 5,
            "excessFrames": 1
          }
        },
        {
          "enemyKill": {
            "enemies": [
              [
                "Sidehopper"
              ]
            ],
            "explicitWeapons": [
              "Missile",
              "Super",
              "PowerBomb",
              "Plasma",
              "Spazer",
              "Wave"
            ]
          }
        }
      ],
      "clearsObstacles": [
        "C"
      ],
      "flashSuitChecked": true,
      "note": "Spark diagonally immediately on entry to kill the first two sidehoppers, then carefully kill the third."
    },
    {
      "id": 19,
      "link": [
        1,
        1
      ],
      "name": "Power Bomb Sidehopper Kill and Bomb Blocks",
      "requires": [
        {
          "or": [
            "canMockball",
            {
              "enemyDamage": {
                "enemy": "Sidehopper",
                "type": "contact",
                "hits": 1
              }
            }
          ]
        },
        {
          "enemyKill": {
            "enemies": [
              [
                "Sidehopper",
                "Sidehopper"
              ],
              [
                "Sidehopper"
              ]
            ],
            "explicitWeapons": [
              "PowerBomb"
            ]
          }
        }
      ],
      "clearsObstacles": [
        "A",
        "C"
      ],
      "note": [
        "This strat assumes you don't know you're entering the room beforehand. Otherwise, it's possible to kill the first two Sidehoppers without taking damage.",
        "It's possible to break the bomb blocks alongside the third Sidehopper without taking an additional hit with a mockball."
      ],
      "devNote": "FIXME: There are missing Power Bomb strats that enter the room with a mockball."
    },
    {
      "id": 20,
      "link": [
        1,
        1
      ],
      "name": "Medium Sidehopper Kill",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 2
          }
        },
        {
          "or": [
            "Spazer",
            "Wave"
          ]
        }
      ],
      "clearsObstacles": [
        "C"
      ]
    },
    {
      "id": 21,
      "link": [
        1,
        1
      ],
      "name": "Free Passage",
      "requires": [
        "h_ZebesNotAwake"
      ],
      "clearsObstacles": [
        "C"
      ],
      "devNote": "The obstacle isn't really cleared, but should enable all strats that require it to be."
    },
    {
      "id": 22,
      "link": [
        1,
        1
      ],
      "name": "Carry G-Mode Back Through",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "direct",
          "morphed": false
        }
      },
      "requires": [],
      "exitCondition": {
        "leaveWithGMode": {
          "morphed": false
        }
      },
      "bypassesDoorShell": true,
      "flashSuitChecked": true
    },
    {
      "id": 23,
      "link": [
        1,
        1
      ],
      "name": "Carry G-Mode Morph Back Through",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "direct",
          "morphed": true
        }
      },
      "requires": [],
      "exitCondition": {
        "leaveWithGMode": {
          "morphed": true
        }
      },
      "bypassesDoorShell": true,
      "flashSuitChecked": true
    },
    {
      "id": 24,
      "link": [
        1,
        5
      ],
      "name": "Blocks Already Broken",
      "requires": [
        "Morph",
        {
          "obstaclesCleared": [
            "A",
            "C"
          ]
        }
      ]
    },
    {
      "id": 25,
      "link": [
        1,
        5
      ],
      "name": "Bomb the Blocks",
      "requires": [
        "h_canBombThings",
        {
          "obstaclesCleared": [
            "C"
          ]
        }
      ],
      "clearsObstacles": [
        "A"
      ]
    },
    {
      "id": 26,
      "link": [
        1,
        5
      ],
      "name": "Morph Ball Room Speedball (Left to Right)",
      "requires": [
        {
          "obstaclesCleared": [
            "C"
          ]
        },
        {
          "speedBall": {
            "length": 25,
            "openEnd": 0
          }
        }
      ],
      "clearsObstacles": [
        "A"
      ],
      "note": [
        "It's a short charge into a speedball to break the bomb blocks.",
        "The Sidehoppers need to be destroyed beforehand to clear the running space."
      ]
    },
    {
      "id": 27,
      "link": [
        1,
        5
      ],
      "name": "Room Entry Speedball",
      "entranceCondition": {
        "comeInGettingBlueSpeed": {
          "length": 2,
          "openEnd": 0
        }
      },
      "requires": [
        "canSpeedball"
      ],
      "clearsObstacles": [
        "A"
      ],
      "devNote": [
        "This is a direct link because clearing the hoppers is unnecessary.",
        "One tile is subtracted from the runway length since Samus must be blue before contacting the first Hopper.",
        "There is 1 unusable tile in this runway."
      ]
    },
    {
      "id": 28,
      "link": [
        1,
        5
      ],
      "name": "G-Mode Morph Overload PLMs Zebes Asleep",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        "h_ZebesNotAwake"
      ],
      "clearsObstacles": [
        "D"
      ],
      "flashSuitChecked": true,
      "note": "Overload the PLMs by rolling through the camera scroll blocks which are 4 tiles to the right of the stair by the door."
    },
    {
      "id": 29,
      "link": [
        1,
        5
      ],
      "name": "G-Mode Overload PLMs Indirect",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "indirect",
          "morphed": true
        }
      },
      "requires": [
        {
          "or": [
            {
              "enemyDamage": {
                "enemy": "Sidehopper",
                "type": "contact",
                "hits": 2
              }
            },
            {
              "ammo": {
                "type": "PowerBomb",
                "count": 1
              }
            },
            {
              "and": [
                "Morph",
                {
                  "or": [
                    {
                      "and": [
                        "Plasma",
                        "Charge"
                      ]
                    },
                    "ScrewAttack"
                  ]
                }
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "D"
      ],
      "flashSuitChecked": true,
      "note": [
        "Either kill the Sidehoppers immediately on entry by placing a Power Bomb while rolling off the stair or tank their hits.",
        "If Samus has Morph Ball, it is also possible to kill the Sidehoppers upon room entry with Screw Attack or a powerful beam.",
        "Overload the PLMs by rolling through the camera scroll blocks which are 4 tiles to the right of the stair by the door.",
        "Roll under the last Sidehopper and through the bomb blocks."
      ]
    },
    {
      "id": 30,
      "link": [
        1,
        5
      ],
      "name": "G-Mode Morph Overload PLMs Direct",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "direct",
          "morphed": true
        }
      },
      "requires": [
        {
          "or": [
            {
              "enemyDamage": {
                "enemy": "Sidehopper",
                "type": "contact",
                "hits": 3
              }
            },
            {
              "and": [
                {
                  "enemyDamage": {
                    "enemy": "Sidehopper",
                    "type": "contact",
                    "hits": 1
                  }
                },
                {
                  "ammo": {
                    "type": "PowerBomb",
                    "count": 1
                  }
                }
              ]
            },
            {
              "and": [
                "Morph",
                "ScrewAttack",
                "canTrickyJump"
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "D"
      ],
      "flashSuitChecked": true,
      "note": [
        "Tank the Sidehopper hits or kill them after a single hit by quickly placing a Power Bomb.",
        "It is also possible to kill the Sidehoppers with a very fast Screw Attack, if Samus has Morph Ball.",
        "Overload the PLMs by rolling through the camera scroll blocks which are 4 tiles to the right of the stair by the door.",
        "Roll under the last Sidehopper and through the bomb blocks."
      ]
    },
    {
      "id": 31,
      "link": [
        2,
        2
      ],
      "name": "Leave Shinecharged",
      "requires": [
        {
          "canShineCharge": {
            "usedTiles": 30,
            "openEnd": 0
          }
        },
        "canShinechargeMovement"
      ],
      "exitCondition": {
        "leaveShinecharged": {
          "framesRemaining": 130
        }
      },
      "flashSuitChecked": true
    },
    {
      "id": 32,
      "link": [
        2,
        3
      ],
      "name": "Base",
      "requires": []
    },
    {
      "id": 33,
      "link": [
        2,
        4
      ],
      "name": "Base",
      "requires": []
    },
    {
      "id": 34,
      "link": [
        3,
        1
      ],
      "name": "Grapple Teleport",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              2,
              34
            ]
          ]
        }
      },
      "requires": [],
      "bypassesDoorShell": true
    },
    {
      "id": 35,
      "link": [
        3,
        1
      ],
      "name": "Carry Grapple Teleport",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              2,
              34
            ]
          ]
        }
      },
      "requires": [],
      "bypassesDoorShell": true,
      "exitCondition": {
        "leaveWithGrappleTeleport": {
          "blockPositions": [
            [
              2,
              34
            ]
          ]
        }
      }
    },
    {
      "id": 36,
      "link": [
        3,
        2
      ],
      "name": "Base",
      "requires": []
    },
    {
      "id": 37,
      "link": [
        3,
        2
      ],
      "name": "Carry G-Mode Up the Elevator",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": false
        }
      },
      "requires": [],
      "exitCondition": {
        "leaveWithGMode": {
          "morphed": false
        }
      },
      "flashSuitChecked": true
    },
    {
      "id": 38,
      "link": [
        3,
        3
      ],
      "name": "Leave with Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 5,
          "openEnd": 1
        }
      }
    },
    {
      "id": 39,
      "link": [
        3,
        3
      ],
      "name": "Leave Shinecharged",
      "requires": [
        {
          "canShineCharge": {
            "usedTiles": 30,
            "openEnd": 0
          }
        },
        "canShinechargeMovement"
      ],
      "exitCondition": {
        "leaveShinecharged": {
          "framesRemaining": 130
        }
      },
      "flashSuitChecked": true
    },
    {
      "id": 40,
      "link": [
        3,
        3
      ],
      "name": "Leave Spinning",
      "requires": [],
      "exitCondition": {
        "leaveSpinning": {
          "remoteRunway": {
            "length": 26,
            "openEnd": 1
          },
          "minExtraRunSpeed": "$2.4"
        }
      }
    },
    {
      "id": 41,
      "link": [
        3,
        3
      ],
      "name": "Leave With Mockball",
      "requires": [],
      "exitCondition": {
        "leaveWithMockball": {
          "remoteRunway": {
            "length": 26,
            "openEnd": 1
          },
          "landingRunway": {
            "length": 5,
            "openEnd": 1
          }
        }
      }
    },
    {
      "id": 42,
      "link": [
        3,
        3
      ],
      "name": "Leave With Spring Ball Bounce",
      "requires": [],
      "exitCondition": {
        "leaveWithSpringBallBounce": {
          "remoteRunway": {
            "length": 23,
            "openEnd": 0
          },
          "landingRunway": {
            "length": 5,
            "openEnd": 1
          },
          "movementType": "uncontrolled"
        }
      }
    },
    {
      "id": 43,
      "link": [
        3,
        3
      ],
      "name": "Leave Space Jumping",
      "requires": [],
      "exitCondition": {
        "leaveSpaceJumping": {
          "remoteRunway": {
            "length": 21,
            "openEnd": 1
          }
        }
      }
    },
    {
      "id": 44,
      "link": [
        3,
        3
      ],
      "name": "Leave With Temporary Blue",
      "requires": [
        {
          "canShineCharge": {
            "usedTiles": 29,
            "openEnd": 0
          }
        },
        "canChainTemporaryBlue"
      ],
      "exitCondition": {
        "leaveWithTemporaryBlue": {}
      }
    },
    {
      "id": 45,
      "link": [
        3,
        5
      ],
      "name": "G-Mode Morph Power Bomb the Blocks",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        "h_canArtificialMorphPowerBomb",
        "h_canArtificialMorphMovement"
      ],
      "clearsObstacles": [
        "B"
      ],
      "flashSuitChecked": true,
      "note": "Place the Power Bomb, then exit g-mode before the bomb goes off."
    },
    {
      "id": 46,
      "link": [
        4,
        2
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "canWalljump",
            "Morph",
            "SpaceJump",
            "HiJump"
          ]
        }
      ]
    },
    {
      "id": 47,
      "link": [
        4,
        2
      ],
      "name": "Careful Jump",
      "requires": [
        {
          "or": [
            "canCarefulJump",
            "canEscapeMorphLocation"
          ]
        }
      ]
    },
    {
      "id": 48,
      "link": [
        4,
        2
      ],
      "name": "Crouch Jump Down Grab",
      "requires": [
        "h_canCrouchJumpDownGrab"
      ]
    },
    {
      "id": 49,
      "link": [
        4,
        4
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_canCrystalFlash"
      ],
      "clearsObstacles": [
        "B"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 50,
      "link": [
        4,
        5
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "h_canUsePowerBombs",
            {
              "obstaclesCleared": [
                "B"
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "B"
      ]
    },
    {
      "id": 51,
      "link": [
        5,
        1
      ],
      "name": "Blocks Already Broken",
      "requires": [
        "Morph",
        {
          "obstaclesCleared": [
            "A"
          ]
        }
      ],
      "note": "Kill the ground hoppers by shooting through the morph tunnel, then roll through to the left door."
    },
    {
      "id": 52,
      "link": [
        5,
        1
      ],
      "name": "Morph Ball Room Speedball (Right to Left)",
      "requires": [
        {
          "obstaclesCleared": [
            "B"
          ]
        },
        {
          "getBlueSpeed": {
            "usedTiles": 21,
            "openEnd": 1
          }
        },
        "canSpeedball"
      ],
      "clearsObstacles": [
        "A",
        "C"
      ],
      "note": [
        "It's a short charge into a speedball to break the Bomb Blocks.",
        "The Power Bomb Blocks need to be destroyed to have enough running room.",
        "The sidehoppers that remain can be killed safely using the morph tunnel."
      ]
    },
    {
      "id": 53,
      "link": [
        5,
        1
      ],
      "name": "Safe Sidehopper Kill",
      "requires": [
        "Morph",
        {
          "or": [
            "Wave",
            "canDodgeWhileShooting",
            "h_canUsePowerBombs",
            "ScrewAttack"
          ]
        },
        {
          "obstaclesCleared": [
            "A"
          ]
        }
      ],
      "clearsObstacles": [
        "C"
      ],
      "note": "The SideHoppers can be killed safely from behind with Power Beam.",
      "devNote": "Killing the ceiling hopper is the only one that's not free. Killing the bottom two and leaving the left door is accounted for elsewhere."
    },
    {
      "id": 54,
      "link": [
        5,
        4
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "h_canUsePowerBombs",
            {
              "obstaclesCleared": [
                "B"
              ]
            }
          ]
        }
      ],
      "clearsObstacles": [
        "B"
      ]
    },
    {
      "id": 55,
      "link": [
        5,
        5
      ],
      "name": "Bomb the Blocks",
      "requires": [
        "h_canBombThings"
      ],
      "clearsObstacles": [
        "A"
      ]
    },
    {
      "id": 56,
      "link": [
        5,
        5
      ],
      "name": "Power Bomb Blocks While in Artificial Morph from the Left",
      "requires": [
        {
          "obstaclesCleared": [
            "D"
          ]
        },
        "h_canArtificialMorphPowerBomb",
        {
          "or": [
            "h_canArtificialMorphSpringBall",
            "h_canArtificialMorphPowerBomb",
            "h_canArtificialMorphBombs"
          ]
        }
      ],
      "clearsObstacles": [
        "B"
      ],
      "note": "Place the Power Bomb, then exit g-mode before the bomb goes off."
    },
    {
      "id": 57,
      "link": [
        6,
        1
      ],
      "name": "Sidehopper Hit on Entry",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "id": 58,
      "link": [
        6,
        1
      ],
      "name": "Free Passage",
      "requires": [
        "h_ZebesNotAwake"
      ],
      "clearsObstacles": [
        "C"
      ],
      "devNote": "The obstacle isn't really cleared, but should enable all strats that require it to be."
    },
    {
      "id": 59,
      "link": [
        6,
        5
      ],
      "name": "Run Through",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sidehopper",
            "type": "contact",
            "hits": 2
          }
        },
        {
          "or": [
            "canCarefulJump",
            {
              "enemyDamage": {
                "enemy": "Sidehopper",
                "type": "contact",
                "hits": 1
              }
            }
          ]
        },
        "h_canBombThings"
      ]
    },
    {
      "link": [
        1,
        1
      ],
      "name": "Base (Unlock Door)",
      "requires": [],
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ]
    },
    {
      "link": [
        1,
        6
      ],
      "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": []
    },
    {
      "link": [
        3,
        3
      ],
      "name": "Base (Unlock Door)",
      "requires": [],
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ]
    },
    {
      "link": [
        3,
        3
      ],
      "name": "Base (Come In Normally)",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": []
    },
    {
      "name": "Base (Collect Item)",
      "notable": false,
      "requires": [],
      "link": [
        4,
        4
      ],
      "collectsItems": [
        4
      ]
    },
    {
      "name": "Base",
      "notable": false,
      "requires": [
        {
          "or": [
            "h_ZebesIsAwake",
            "h_AllItemsSpawned"
          ]
        }
      ],
      "link": [
        5,
        5
      ],
      "collectsItems": [
        5
      ]
    }
  ],
  "nextStratId": 60,
  "notables": [],
  "nextNotableId": 1
}