Ridley's Room

Room ID: 142

Wiki
Difficulty filter

From: 1
Left Door
To: 1
Left Door

Exit condition:

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

Requires:

{
  "heatFrames": 210
}
"canMomentumConservingMorph"
"canInsaneJump"

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 1,
    "runway": {
      "length": 9,
      "openEnd": 2
    },
    "obstruction": [
      2,
      1
    ]
  }
}

Dev note: Max extra run speed $2.9 This strat is included for completeness, though it apparently doesn't have any applications.

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "not": "f_DefeatedRidley"
}
"canRiskPermanentLossOfAccess"
{
  "enemyDamage": {
    "enemy": "Ridley",
    "type": "contact",
    "hits": 1
  }
}

Dev note: FIXME: Ridley could also be used to set up G-mode, but the chaos of the fight makes this difficult.

From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInWithSidePlatform": {
    "platforms": [
      {
        "minHeight": 1,
        "maxHeight": 1,
        "minTiles": 17,
        "obstructions": [
          [
            1,
            0
          ]
        ],
        "speedBooster": true,
        "requires": [
          {
            "or": [
              {
                "and": [
                  "HiJump",
                  {
                    "heatFrames": 90
                  }
                ]
              },
              {
                "and": [
                  "canTrickyDashJump",
                  "canTrickySpringBallJump",
                  {
                    "heatFrames": 115
                  }
                ]
              }
            ]
          }
        ],
        "note": [
          "This applies to Warehouse Entrance."
        ],
        "detailNote": [
          "For the spring ball jump, retain forward momentum until the pause hits,",
          "in order for the mid-air jump to also get the 'tricky dash' boost in height."
        ]
      },
      {
        "minHeight": 2,
        "maxHeight": 2,
        "minTiles": 11.4375,
        "obstructions": [
          [
            1,
            0
          ]
        ],
        "speedBooster": true,
        "requires": [
          "canTrickyDashJump",
          "canTrickySpringBallJump",
          {
            "heatFrames": 100
          }
        ],
        "note": [
          "This applies to Ridley Tank Room, Halfie Climb Room, and Dust Torizo Room."
        ],
        "detailNote": [
          "Retain forward momentum until the pause hits,",
          "in order for the mid-air jump to also get the 'tricky dash' boost in height."
        ]
      },
      {
        "minHeight": 2,
        "maxHeight": 2,
        "minTiles": 12.4375,
        "obstructions": [
          [
            1,
            0
          ]
        ],
        "speedBooster": true,
        "requires": [
          "HiJump",
          {
            "heatFrames": 95
          }
        ],
        "note": [
          "This applies to Dust Torizo Room and Halfie Climb Room."
        ]
      },
      {
        "minHeight": 3,
        "maxHeight": 3,
        "minTiles": 10.4375,
        "obstructions": [
          [
            1,
            0
          ]
        ],
        "speedBooster": true,
        "requires": [
          "canTrickyDashJump",
          "canTrickySpringBallJump",
          {
            "heatFrames": 120
          }
        ],
        "note": [
          "This applies to Big Boy Room and Mickey Mouse Room."
        ],
        "detailNote": [
          "For the spring ball jump, retain forward momentum until the pause hits,",
          "in order for the mid-air jump to also get the 'tricky dash' boost in height."
        ]
      },
      {
        "minHeight": 2,
        "maxHeight": 2,
        "minTiles": 45,
        "obstructions": [
          [
            2,
            0
          ]
        ],
        "speedBooster": true,
        "requires": [
          "canInsaneJump",
          {
            "heatFrames": 85
          }
        ],
        "note": [
          "This applies to Waterway Energy Tank Room."
        ]
      },
      {
        "minHeight": 2,
        "maxHeight": 2,
        "minTiles": 45,
        "obstructions": [
          [
            3,
            0
          ]
        ],
        "speedBooster": true,
        "requires": [
          "canInsaneJump",
          "canMomentumConservingMorph",
          {
            "or": [
              {
                "and": [
                  "HiJump",
                  "canInsaneMidAirMorph",
                  {
                    "heatFrames": 80
                  }
                ]
              },
              {
                "and": [
                  "canTrickySpringBallJump",
                  {
                    "heatFrames": 100
                  }
                ]
              }
            ]
          }
        ],
        "note": [
          "This applies to Statues Hallway."
        ]
      },
      {
        "minHeight": 3,
        "maxHeight": 3,
        "minTiles": 37.4375,
        "obstructions": [
          [
            3,
            0
          ]
        ],
        "speedBooster": true,
        "requires": [
          "canInsaneJump",
          "canMomentumConservingMorph",
          {
            "or": [
              {
                "and": [
                  "HiJump",
                  {
                    "heatFrames": 85
                  }
                ]
              },
              {
                "and": [
                  "canTrickySpringBallJump",
                  {
                    "heatFrames": 100
                  }
                ]
              }
            ]
          }
        ],
        "note": [
          "This applies to Flyway."
        ]
      },
      {
        "minHeight": 2,
        "maxHeight": 2,
        "minTiles": 45,
        "obstructions": [
          [
            4,
            0
          ]
        ],
        "speedBooster": true,
        "requires": [
          "canInsaneJump",
          "canMomentumConservingMorph",
          "canInsaneMidAirMorph",
          "canTrickySpringBallJump",
          {
            "heatFrames": 100
          }
        ],
        "note": [
          "This applies to Baby Kraid Room."
        ]
      },
      {
        "minHeight": 3,
        "maxHeight": 3,
        "minTiles": 39.4375,
        "obstructions": [
          [
            3,
            2
          ]
        ],
        "speedBooster": true,
        "requires": [
          "canTrickyJump",
          {
            "or": [
              {
                "and": [
                  "HiJump",
                  {
                    "heatFrames": 75
                  }
                ]
              },
              {
                "and": [
                  "canTrickySpringBallJump",
                  {
                    "heatFrames": 115
                  }
                ]
              }
            ]
          }
        ],
        "note": [
          "This applies to Metal Pirates Room."
        ]
      }
    ]
  }
}

Clears obstacles: door_1

Dev note: FIXME: Many of the spring ball jump variants can be done more easily with a spring ball bounce, which should be added as a separate strat.

From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInWithGrappleSwing": {
    "blocks": [
      {
        "position": [
          -1,
          5
        ],
        "environment": "water",
        "note": "Mt. Everest"
      },
      {
        "position": [
          8,
          3
        ],
        "note": "Grapple Beam Room"
      },
      {
        "position": [
          7,
          3
        ],
        "note": "Colosseum"
      }
    ]
  }
}

Requires:

"h_heatProof"
"canPreciseGrappleJump"

Clears obstacles: door_1

From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInWithGrappleSwing": {
    "blocks": [
      {
        "position": [
          6,
          4
        ],
        "note": "Grapple Tutorial Room 2"
      },
      {
        "position": [
          6,
          2
        ],
        "note": "Spiky Acid Snakes Tunnel"
      },
      {
        "position": [
          5,
          2
        ],
        "note": "The Moat, Double Chamber, Wrecked Ship Energy Tank Room"
      },
      {
        "position": [
          2.375,
          4.5625
        ],
        "note": "Post Crocomire Farming Room"
      }
    ]
  }
}

Requires:

"h_heatProof"
"canTrickyGrappleJump"

Clears obstacles: door_1

From: 1
Left Door
To: 3
Ridley

Requires:

{
  "heatFrames": 50
}
From: 1
Left Door
To: 3
Ridley

Enter the room in G-mode, perform a Crystal Flash, then lay an additional Power Bomb, preferably at the top of the room. The Power Bomb will not explode but will continually force Ridley into a corner of the room. If the Power Bomb is laid near the top of the room, then Ridley will be forced into the bottom of the room, making it easy to damage Ridley at the highest possible rate; if the Power Bomb is laid lower, Ridley will be forced to the top of room, and Samus will have to jump repeatedly to bring it on camera. in which case Ridley can still be damaged but more slowly and with some caution needed to avoid invisible fireballs. After reducing Ridley's health to zero, take damage from Ridley or an invisible fireball to trigger auto-reserves and exit G-mode. Then get grabbed by Ridley to finish the fight.

Entrance condition:

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

Requires:

{
  "notable": "G-Mode Crystal Flash Stuck Ridley"
}
"h_heatedGMode"
"h_CrystalFlash"
"h_usePowerBomb"
{
  "or": [
    {
      "and": [
        {
          "or": [
            "canWalljump",
            "HiJump",
            "canSpringBallJumpMidAir",
            "SpaceJump"
          ]
        },
        {
          "ridleyKill": {
            "powerBombs": false,
            "gMode": true,
            "stuck": "bottom"
          }
        }
      ]
    },
    {
      "ridleyKill": {
        "powerBombs": false,
        "gMode": true,
        "stuck": "top"
      }
    }
  ]
}
{
  "autoReserveTrigger": {}
}
{
  "heatFrames": 520
}
{
  "partialRefill": {
    "type": "Energy",
    "limit": 100
  }
}

Clears obstacles: f_DefeatedRidley, door_1

From: 1
Left Door
To: 3
Ridley

Enter the room in G-mode and quickly kill Ridley with 30 Supers. G-mode protects against heat damage but also causes Ridley's fireballs to be invisible and not move. As long as Ridley is swooping, not many fireballs will be placed, so delaying Ridley from pogoing can be helpful. Once Ridley begins pogoing, it generally becomes unsafe for Samus to jump high because of the risk of touching a fireball. By the end of the fight, projectiles will probably be overloaded, causing Ridley's drops not to spawn; they can be collected by exiting G-mode just before drops spawn, and pause abusing if necessary.

Entrance condition:

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

Requires:

{
  "notable": "G-Mode Ridley with 30 Supers"
}
"h_heatedGMode"
{
  "heatFrames": 0
}
{
  "ammo": {
    "type": "Super",
    "count": 30
  }
}
{
  "or": [
    {
      "and": [
        "canPauseAbuse",
        {
          "resourceAtMost": [
            {
              "type": "Energy",
              "count": 1
            }
          ]
        },
        {
          "partialRefill": {
            "type": "Energy",
            "limit": 100
          }
        }
      ]
    },
    "free"
  ]
}

Clears obstacles: f_DefeatedRidley, door_1

Dev note: FIXME: Leaving back through the open door while still in G-Mode is also possible, and free to do.

From: 2
Right Door
To: 2
Right Door

Exit condition:

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

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

"canPrepareForNextRoom"
"canInsaneJump"
{
  "heatFrames": 55
}
{
  "doorUnlockedAtNode": 2
}

Clears obstacles: door_2

Unlocks doors:

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

Entrance condition:

{
  "comeInWithDoorStuckSetup": {}
}

Requires:

"canPrepareForNextRoom"
{
  "heatFrames": 55
}
{
  "doorUnlockedAtNode": 2
}

Clears obstacles: door_2

Unlocks doors:

{"types":["ammo"],"requires":[]}
From: 2
Right Door
To: 2
Right Door

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

"canPrepareForNextRoom"
{
  "or": [
    "SpaceJump",
    "canWalljump"
  ]
}
{
  "heatFrames": 80
}
{
  "doorUnlockedAtNode": 2
}

Clears obstacles: door_2

Unlocks doors:

{"types":["super"],"requires":["canTrickyJump"]}
{"types":["missiles","powerbomb"],"requires":["never"]}
From: 2
Right Door
To: 2
Right Door

Requires:

{
  "not": "f_DefeatedRidley"
}
"canRiskPermanentLossOfAccess"
{
  "enemyDamage": {
    "enemy": "Ridley",
    "type": "contact",
    "hits": 1
  }
}

Dev note: FIXME: Ridley could also be used to set up G-mode, but the chaos of the fight makes this difficult.

From: 2
Right Door
To: 2
Right Door

Entrance condition:

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

Requires:

{
  "or": [
    "SpaceJump",
    "canWalljump",
    {
      "and": [
        "canJumpIntoIBJ",
        "canTrickyJump",
        {
          "or": [
            "canLongIBJ",
            "HiJump"
          ]
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            "f_DefeatedRidley",
            {
              "obstaclesCleared": [
                "f_DefeatedRidley"
              ]
            }
          ]
        },
        {
          "or": [
            "canLongIBJ",
            {
              "and": [
                "canJumpIntoIBJ",
                "HiJump"
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    {
      "and": [
        "HiJump",
        "SpeedBooster",
        "canTrickyJump",
        {
          "or": [
            "canInsaneJump",
            {
              "or": [
                "f_DefeatedRidley",
                {
                  "obstaclesCleared": [
                    "f_DefeatedRidley"
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}

Exit condition:

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

Clears obstacles: door_2

From: 2
Right Door
To: 2
Right Door

Entrance condition:

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

Requires:

"canArtificialMorph"

Exit condition:

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

Clears obstacles: door_2

Dev note: Artificial morph will allow Samus not to fall; real Morph is not sufficient.

From: 2
Right Door
To: 3
Ridley

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

{
  "heatFrames": 100
}

Clears obstacles: door_2

From: 2
Right Door
To: 3
Ridley

Entrance condition:

{
  "comeInWithMockball": {
    "speedBooster": "any",
    "adjacentMinTiles": 0,
    "remoteAndLandingMinTiles": [
      [
        0,
        0
      ]
    ]
  }
}

Requires:

{
  "heatFrames": 100
}

Clears obstacles: door_2

From: 2
Right Door
To: 3
Ridley

Enter the room in G-mode, perform a Crystal Flash, then lay an additional Power Bomb, preferably at the top of the room. The Power Bomb will not explode but will continually force Ridley into a corner of the room. If the Power Bomb is laid near the top of the room, then Ridley will be forced into the bottom of the room, making it easy to damage Ridley at the highest possible rate; if the Power Bomb is laid lower, Ridley will be forced to the top of room, and Samus will have to jump repeatedly to bring it on camera. in which case Ridley can still be damaged but more slowly and with some caution needed to avoid invisible fireballs. After reducing Ridley's health to zero, take damage from Ridley or an invisible fireball to trigger auto-reserves and exit G-mode. Then get grabbed by Ridley to finish the fight.

Entrance condition:

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

Requires:

{
  "notable": "G-Mode Crystal Flash Stuck Ridley"
}
"h_heatedGMode"
"h_CrystalFlash"
"h_usePowerBomb"
{
  "or": [
    {
      "and": [
        {
          "or": [
            "canWalljump",
            "HiJump",
            "canSpringBallJumpMidAir",
            "SpaceJump"
          ]
        },
        {
          "ridleyKill": {
            "powerBombs": false,
            "gMode": true,
            "stuck": "bottom"
          }
        }
      ]
    },
    {
      "ridleyKill": {
        "powerBombs": false,
        "gMode": true,
        "stuck": "top"
      }
    }
  ]
}
{
  "autoReserveTrigger": {}
}
{
  "heatFrames": 520
}
{
  "partialRefill": {
    "type": "Energy",
    "limit": 100
  }
}

Clears obstacles: f_DefeatedRidley, door_2

Dev note: FIXME: artificial morph with direct G-mode is another option for laying a Power Bomb at the top of the room, by landing on the door ledge on entry (the Morph item would still be needed since the Crystal Flash forces Samus out of being morphed).

From: 2
Right Door
To: 3
Ridley

Enter the room in G-mode and quickly kill Ridley with 30 Supers. G-mode protects against heat damage but also causes Ridley's fireballs to be invisible and not move. As long as Ridley is swooping, not many fireballs will be placed, so delaying Ridley from pogoing can be helpful. Once Ridley begins pogoing, it generally becomes unsafe for Samus to jump high because of the risk of touching a fireball. By the end of the fight, projectiles will probably be overloaded, causing Ridley's drops not to spawn; they can be collected by exiting G-mode just before drops spawn, and pause abusing if necessary.

Entrance condition:

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

Requires:

{
  "notable": "G-Mode Ridley with 30 Supers"
}
"h_heatedGMode"
{
  "heatFrames": 0
}
{
  "ammo": {
    "type": "Super",
    "count": 30
  }
}
{
  "or": [
    {
      "and": [
        "canPauseAbuse",
        {
          "resourceAtMost": [
            {
              "type": "Energy",
              "count": 1
            }
          ]
        },
        {
          "partialRefill": {
            "type": "Energy",
            "limit": 100
          }
        }
      ]
    },
    "free"
  ]
}

Clears obstacles: f_DefeatedRidley, door_2

Dev note: FIXME: Leaving back through the open door while still in G-Mode is also possible, but difficult to do without touching an invisible fireball.

From: 3
Ridley
To: 1
Left Door

Requires:

{
  "heatFrames": 50
}
From: 3
Ridley
To: 2
Right Door

Requires:

"canWalljump"
{
  "heatFrames": 200
}
From: 3
Ridley
To: 2
Right Door

Requires:

"SpaceJump"
{
  "heatFrames": 250
}
IBJ (Very Hard)
Ridley's Room
From: 3
Ridley
To: 2
Right Door

Requires:

"h_heatProof"
{
  "and": [
    "canJumpIntoIBJ",
    "canTrickyJump",
    {
      "or": [
        "canLongIBJ",
        "HiJump"
      ]
    }
  ]
}
{
  "and": [
    {
      "or": [
        "f_DefeatedRidley",
        {
          "obstaclesCleared": [
            "f_DefeatedRidley"
          ]
        }
      ]
    },
    {
      "or": [
        "canLongIBJ",
        {
          "and": [
            "canJumpIntoIBJ",
            "HiJump"
          ]
        }
      ]
    }
  ]
}
From: 3
Ridley
To: 2
Right Door

Requires:

"HiJump"
"canSpringBallJumpMidAir"
{
  "heatFrames": 210
}
From: 3
Ridley
To: 2
Right Door

Requires starting on one of the last three pixels and then performing a last frame jump to get enough height.

Requires:

"HiJump"
"SpeedBooster"
"canTrickyJump"
{
  "heatFrames": 320
}
{
  "or": [
    "canInsaneJump",
    {
      "heatFrames": 300
    }
  ]
}

Dev note: This gives one leniency attempt without canInsaneJump.

From: 3
Ridley
To: 3
Ridley

Requires:

"h_heatProof"
{
  "ridleyKill": {}
}

Clears obstacles: f_DefeatedRidley

From: 3
Ridley
To: 3
Ridley

Fight Ridley without immunity to heat damage.

Requires:

{
  "notable": "Ridley without Heat Protection"
}
{
  "heatFrames": 0
}
{
  "ridleyKill": {}
}

Clears obstacles: f_DefeatedRidley

Dev note: Heat frames are accounted for as part of the enemyKill.

From: 3
Ridley
To: 3
Ridley

Requires:

"h_heatedCrystalFlash"

{
  "$schema": "../../../schema/m3-room.schema.json",
  "id": 142,
  "name": "Ridley's Room",
  "area": "Norfair",
  "subarea": "Lower",
  "subsubarea": "East",
  "roomAddress": "0x7B32E",
  "roomEnvironments": [
    {
      "heated": true
    }
  ],
  "mapTileMask": [
    [
      1
    ],
    [
      1
    ]
  ],
  "nodes": [
    {
      "id": 1,
      "name": "Left Door",
      "nodeType": "door",
      "nodeSubType": "gray",
      "nodeAddress": "0x00198b2",
      "doorOrientation": "left",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ],
      "locks": [
        {
          "name": "Ridley Room Left Gray Lock (to E-Tank)",
          "lockType": "gameFlag",
          "unlockStrats": [
            {
              "name": "Base",
              "requires": [
                {
                  "or": [
                    "f_DefeatedRidley",
                    {
                      "obstaclesCleared": [
                        "f_DefeatedRidley"
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ],
      "mapTileMask": [
        [
          1
        ],
        [
          2
        ]
      ]
    },
    {
      "id": 2,
      "name": "Right Door",
      "nodeType": "door",
      "nodeSubType": "gray",
      "nodeAddress": "0x00198be",
      "doorOrientation": "right",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ],
      "useImplicitComeInNormally": false,
      "useImplicitComeInWithMockball": false,
      "useImplicitCarryGModeBackThrough": false,
      "useImplicitCarryGModeMorphBackThrough": false,
      "locks": [
        {
          "name": "Ridley Room Right Gray Lock (to Farming Room)",
          "lockType": "gameFlag",
          "unlockStrats": [
            {
              "name": "Base",
              "requires": [
                {
                  "or": [
                    "f_DefeatedRidley",
                    {
                      "obstaclesCleared": [
                        "f_DefeatedRidley"
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ],
      "mapTileMask": [
        [
          2
        ],
        [
          1
        ]
      ]
    },
    {
      "id": 3,
      "name": "Ridley",
      "nodeType": "junction",
      "nodeSubType": "junction",
      "mapTileMask": [
        [
          2
        ],
        [
          2
        ]
      ],
      "devNote": "FIXME: This node can be eliminated."
    }
  ],
  "enemies": [
    {
      "id": "e1",
      "groupName": "Ridley",
      "enemyName": "Ridley",
      "quantity": 1,
      "homeNodes": [
        3
      ],
      "stopSpawn": [
        "f_DefeatedRidley"
      ]
    }
  ],
  "links": [
    {
      "from": 1,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        }
      ]
    },
    {
      "from": 2,
      "to": [
        {
          "id": 2
        },
        {
          "id": 3
        }
      ]
    },
    {
      "from": 3,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        }
      ]
    }
  ],
  "strats": [
    {
      "id": 1,
      "link": [
        1,
        1
      ],
      "name": "Leave With Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 1,
          "openEnd": 1
        }
      }
    },
    {
      "id": 25,
      "link": [
        1,
        1
      ],
      "name": "Leave With Side Platform",
      "requires": [
        {
          "heatFrames": 210
        },
        "canMomentumConservingMorph",
        "canInsaneJump"
      ],
      "exitCondition": {
        "leaveWithSidePlatform": {
          "height": 1,
          "runway": {
            "length": 9,
            "openEnd": 2
          },
          "obstruction": [
            2,
            1
          ]
        }
      },
      "devNote": [
        "Max extra run speed $2.9",
        "This strat is included for completeness, though it apparently doesn't have any applications."
      ]
    },
    {
      "id": 2,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Regain Mobility",
      "requires": [
        {
          "not": "f_DefeatedRidley"
        },
        "canRiskPermanentLossOfAccess",
        {
          "enemyDamage": {
            "enemy": "Ridley",
            "type": "contact",
            "hits": 1
          }
        }
      ],
      "gModeRegainMobility": {},
      "flashSuitChecked": true,
      "devNote": "FIXME: Ridley could also be used to set up G-mode, but the chaos of the fight makes this difficult."
    },
    {
      "id": 26,
      "link": [
        1,
        2
      ],
      "name": "Side Platform Cross Room Speedy Jump",
      "entranceCondition": {
        "comeInWithSidePlatform": {
          "platforms": [
            {
              "minHeight": 1,
              "maxHeight": 1,
              "minTiles": 17,
              "obstructions": [
                [
                  1,
                  0
                ]
              ],
              "speedBooster": true,
              "requires": [
                {
                  "or": [
                    {
                      "and": [
                        "HiJump",
                        {
                          "heatFrames": 90
                        }
                      ]
                    },
                    {
                      "and": [
                        "canTrickyDashJump",
                        "canTrickySpringBallJump",
                        {
                          "heatFrames": 115
                        }
                      ]
                    }
                  ]
                }
              ],
              "note": [
                "This applies to Warehouse Entrance."
              ],
              "detailNote": [
                "For the spring ball jump, retain forward momentum until the pause hits,",
                "in order for the mid-air jump to also get the 'tricky dash' boost in height."
              ]
            },
            {
              "minHeight": 2,
              "maxHeight": 2,
              "minTiles": 11.4375,
              "obstructions": [
                [
                  1,
                  0
                ]
              ],
              "speedBooster": true,
              "requires": [
                "canTrickyDashJump",
                "canTrickySpringBallJump",
                {
                  "heatFrames": 100
                }
              ],
              "note": [
                "This applies to Ridley Tank Room, Halfie Climb Room, and Dust Torizo Room."
              ],
              "detailNote": [
                "Retain forward momentum until the pause hits,",
                "in order for the mid-air jump to also get the 'tricky dash' boost in height."
              ]
            },
            {
              "minHeight": 2,
              "maxHeight": 2,
              "minTiles": 12.4375,
              "obstructions": [
                [
                  1,
                  0
                ]
              ],
              "speedBooster": true,
              "requires": [
                "HiJump",
                {
                  "heatFrames": 95
                }
              ],
              "note": [
                "This applies to Dust Torizo Room and Halfie Climb Room."
              ]
            },
            {
              "minHeight": 3,
              "maxHeight": 3,
              "minTiles": 10.4375,
              "obstructions": [
                [
                  1,
                  0
                ]
              ],
              "speedBooster": true,
              "requires": [
                "canTrickyDashJump",
                "canTrickySpringBallJump",
                {
                  "heatFrames": 120
                }
              ],
              "note": [
                "This applies to Big Boy Room and Mickey Mouse Room."
              ],
              "detailNote": [
                "For the spring ball jump, retain forward momentum until the pause hits,",
                "in order for the mid-air jump to also get the 'tricky dash' boost in height."
              ]
            },
            {
              "minHeight": 2,
              "maxHeight": 2,
              "minTiles": 45,
              "obstructions": [
                [
                  2,
                  0
                ]
              ],
              "speedBooster": true,
              "requires": [
                "canInsaneJump",
                {
                  "heatFrames": 85
                }
              ],
              "note": [
                "This applies to Waterway Energy Tank Room."
              ]
            },
            {
              "minHeight": 2,
              "maxHeight": 2,
              "minTiles": 45,
              "obstructions": [
                [
                  3,
                  0
                ]
              ],
              "speedBooster": true,
              "requires": [
                "canInsaneJump",
                "canMomentumConservingMorph",
                {
                  "or": [
                    {
                      "and": [
                        "HiJump",
                        "canInsaneMidAirMorph",
                        {
                          "heatFrames": 80
                        }
                      ]
                    },
                    {
                      "and": [
                        "canTrickySpringBallJump",
                        {
                          "heatFrames": 100
                        }
                      ]
                    }
                  ]
                }
              ],
              "note": [
                "This applies to Statues Hallway."
              ]
            },
            {
              "minHeight": 3,
              "maxHeight": 3,
              "minTiles": 37.4375,
              "obstructions": [
                [
                  3,
                  0
                ]
              ],
              "speedBooster": true,
              "requires": [
                "canInsaneJump",
                "canMomentumConservingMorph",
                {
                  "or": [
                    {
                      "and": [
                        "HiJump",
                        {
                          "heatFrames": 85
                        }
                      ]
                    },
                    {
                      "and": [
                        "canTrickySpringBallJump",
                        {
                          "heatFrames": 100
                        }
                      ]
                    }
                  ]
                }
              ],
              "note": [
                "This applies to Flyway."
              ]
            },
            {
              "minHeight": 2,
              "maxHeight": 2,
              "minTiles": 45,
              "obstructions": [
                [
                  4,
                  0
                ]
              ],
              "speedBooster": true,
              "requires": [
                "canInsaneJump",
                "canMomentumConservingMorph",
                "canInsaneMidAirMorph",
                "canTrickySpringBallJump",
                {
                  "heatFrames": 100
                }
              ],
              "note": [
                "This applies to Baby Kraid Room."
              ]
            },
            {
              "minHeight": 3,
              "maxHeight": 3,
              "minTiles": 39.4375,
              "obstructions": [
                [
                  3,
                  2
                ]
              ],
              "speedBooster": true,
              "requires": [
                "canTrickyJump",
                {
                  "or": [
                    {
                      "and": [
                        "HiJump",
                        {
                          "heatFrames": 75
                        }
                      ]
                    },
                    {
                      "and": [
                        "canTrickySpringBallJump",
                        {
                          "heatFrames": 115
                        }
                      ]
                    }
                  ]
                }
              ],
              "note": [
                "This applies to Metal Pirates Room."
              ]
            }
          ]
        }
      },
      "requires": [],
      "devNote": [
        "FIXME: Many of the spring ball jump variants can be done more easily with a spring ball bounce,",
        "which should be added as a separate strat."
      ],
      "clearsObstacles": [
        "door_1"
      ]
    },
    {
      "id": 23,
      "link": [
        1,
        2
      ],
      "name": "Precise Grapple Jump",
      "entranceCondition": {
        "comeInWithGrappleSwing": {
          "blocks": [
            {
              "position": [
                -1,
                5
              ],
              "environment": "water",
              "note": "Mt. Everest"
            },
            {
              "position": [
                8,
                3
              ],
              "note": "Grapple Beam Room"
            },
            {
              "position": [
                7,
                3
              ],
              "note": "Colosseum"
            }
          ]
        }
      },
      "requires": [
        "h_heatProof",
        "canPreciseGrappleJump"
      ],
      "clearsObstacles": [
        "door_1"
      ]
    },
    {
      "id": 24,
      "link": [
        1,
        2
      ],
      "name": "Tricky Grapple Jump",
      "entranceCondition": {
        "comeInWithGrappleSwing": {
          "blocks": [
            {
              "position": [
                6,
                4
              ],
              "note": "Grapple Tutorial Room 2"
            },
            {
              "position": [
                6,
                2
              ],
              "note": "Spiky Acid Snakes Tunnel"
            },
            {
              "position": [
                5,
                2
              ],
              "note": "The Moat, Double Chamber, Wrecked Ship Energy Tank Room"
            },
            {
              "position": [
                2.375,
                4.5625
              ],
              "note": "Post Crocomire Farming Room"
            }
          ]
        }
      },
      "requires": [
        "h_heatProof",
        "canTrickyGrappleJump"
      ],
      "clearsObstacles": [
        "door_1"
      ]
    },
    {
      "id": 3,
      "link": [
        1,
        3
      ],
      "name": "Base",
      "requires": [
        {
          "heatFrames": 50
        }
      ]
    },
    {
      "id": 27,
      "link": [
        1,
        3
      ],
      "name": "G-Mode Crystal Flash Stuck Ridley",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": false,
          "mobility": "mobile"
        }
      },
      "requires": [
        {
          "notable": "G-Mode Crystal Flash Stuck Ridley"
        },
        "h_heatedGMode",
        "h_CrystalFlash",
        "h_usePowerBomb",
        {
          "or": [
            {
              "and": [
                {
                  "or": [
                    "canWalljump",
                    "HiJump",
                    "canSpringBallJumpMidAir",
                    "SpaceJump"
                  ]
                },
                {
                  "ridleyKill": {
                    "powerBombs": false,
                    "gMode": true,
                    "stuck": "bottom"
                  }
                }
              ]
            },
            {
              "ridleyKill": {
                "powerBombs": false,
                "gMode": true,
                "stuck": "top"
              }
            }
          ]
        },
        {
          "autoReserveTrigger": {}
        },
        {
          "heatFrames": 520
        },
        {
          "partialRefill": {
            "type": "Energy",
            "limit": 100
          }
        }
      ],
      "setsFlags": [
        "f_DefeatedRidley"
      ],
      "note": [
        "Enter the room in G-mode, perform a Crystal Flash, then lay an additional Power Bomb, preferably at the top of the room.",
        "The Power Bomb will not explode but will continually force Ridley into a corner of the room.",
        "If the Power Bomb is laid near the top of the room, then Ridley will be forced into the bottom of the room,",
        "making it easy to damage Ridley at the highest possible rate;",
        "if the Power Bomb is laid lower, Ridley will be forced to the top of room, and Samus will have to jump repeatedly to bring it on camera.",
        "in which case Ridley can still be damaged but more slowly and with some caution needed to avoid invisible fireballs.",
        "After reducing Ridley's health to zero, take damage from Ridley or an invisible fireball to trigger auto-reserves and exit G-mode.",
        "Then get grabbed by Ridley to finish the fight."
      ],
      "clearsObstacles": [
        "f_DefeatedRidley",
        "door_1"
      ]
    },
    {
      "id": 28,
      "link": [
        1,
        3
      ],
      "name": "G-Mode Ridley with 30 Supers",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": false,
          "mobility": "mobile"
        }
      },
      "requires": [
        {
          "notable": "G-Mode Ridley with 30 Supers"
        },
        "h_heatedGMode",
        {
          "heatFrames": 0
        },
        {
          "ammo": {
            "type": "Super",
            "count": 30
          }
        },
        {
          "or": [
            {
              "and": [
                "canPauseAbuse",
                {
                  "resourceAtMost": [
                    {
                      "type": "Energy",
                      "count": 1
                    }
                  ]
                },
                {
                  "partialRefill": {
                    "type": "Energy",
                    "limit": 100
                  }
                }
              ]
            },
            "free"
          ]
        }
      ],
      "setsFlags": [
        "f_DefeatedRidley"
      ],
      "note": [
        "Enter the room in G-mode and quickly kill Ridley with 30 Supers.",
        "G-mode protects against heat damage but also causes Ridley's fireballs to be invisible and not move.",
        "As long as Ridley is swooping, not many fireballs will be placed, so delaying Ridley from pogoing can be helpful.",
        "Once Ridley begins pogoing, it generally becomes unsafe for Samus to jump high because of the risk of touching a fireball.",
        "By the end of the fight, projectiles will probably be overloaded, causing Ridley's drops not to spawn;",
        "they can be collected by exiting G-mode just before drops spawn, and pause abusing if necessary."
      ],
      "devNote": [
        "FIXME: Leaving back through the open door while still in G-Mode is also possible, and free to do."
      ],
      "clearsObstacles": [
        "f_DefeatedRidley",
        "door_1"
      ]
    },
    {
      "id": 4,
      "link": [
        2,
        2
      ],
      "name": "Leave With Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 1,
          "openEnd": 1
        }
      }
    },
    {
      "id": 20,
      "link": [
        2,
        2
      ],
      "name": "Land in Door Frame",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        "canPrepareForNextRoom",
        "canInsaneJump",
        {
          "heatFrames": 55
        },
        {
          "doorUnlockedAtNode": 2
        }
      ],
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "clearsObstacles": [
        "door_2"
      ]
    },
    {
      "id": 21,
      "link": [
        2,
        2
      ],
      "name": "Door Stuck, Open Door",
      "entranceCondition": {
        "comeInWithDoorStuckSetup": {}
      },
      "requires": [
        "canPrepareForNextRoom",
        {
          "heatFrames": 55
        },
        {
          "doorUnlockedAtNode": 2
        }
      ],
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ],
      "clearsObstacles": [
        "door_2"
      ]
    },
    {
      "id": 14,
      "link": [
        2,
        2
      ],
      "name": "Prepared Return Without Falling",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        "canPrepareForNextRoom",
        {
          "or": [
            "SpaceJump",
            "canWalljump"
          ]
        },
        {
          "heatFrames": 80
        },
        {
          "doorUnlockedAtNode": 2
        }
      ],
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": [
            "canTrickyJump"
          ]
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "clearsObstacles": [
        "door_2"
      ]
    },
    {
      "id": 5,
      "link": [
        2,
        2
      ],
      "name": "G-Mode Regain Mobility",
      "requires": [
        {
          "not": "f_DefeatedRidley"
        },
        "canRiskPermanentLossOfAccess",
        {
          "enemyDamage": {
            "enemy": "Ridley",
            "type": "contact",
            "hits": 1
          }
        }
      ],
      "gModeRegainMobility": {},
      "flashSuitChecked": true,
      "devNote": "FIXME: Ridley could also be used to set up G-mode, but the chaos of the fight makes this difficult."
    },
    {
      "id": 6,
      "link": [
        2,
        2
      ],
      "name": "Carry G-Mode Back Through",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "direct",
          "morphed": false
        }
      },
      "requires": [
        {
          "or": [
            "SpaceJump",
            "canWalljump",
            {
              "and": [
                "canJumpIntoIBJ",
                "canTrickyJump",
                {
                  "or": [
                    "canLongIBJ",
                    "HiJump"
                  ]
                }
              ]
            },
            {
              "and": [
                {
                  "or": [
                    "f_DefeatedRidley",
                    {
                      "obstaclesCleared": [
                        "f_DefeatedRidley"
                      ]
                    }
                  ]
                },
                {
                  "or": [
                    "canLongIBJ",
                    {
                      "and": [
                        "canJumpIntoIBJ",
                        "HiJump"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpringBallJumpMidAir"
              ]
            },
            {
              "and": [
                "HiJump",
                "SpeedBooster",
                "canTrickyJump",
                {
                  "or": [
                    "canInsaneJump",
                    {
                      "or": [
                        "f_DefeatedRidley",
                        {
                          "obstaclesCleared": [
                            "f_DefeatedRidley"
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ],
      "exitCondition": {
        "leaveWithGMode": {
          "morphed": false
        }
      },
      "bypassesDoorShell": "free",
      "flashSuitChecked": true,
      "clearsObstacles": [
        "door_2"
      ]
    },
    {
      "id": 7,
      "link": [
        2,
        2
      ],
      "name": "Carry G-Mode Morph Back Through",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "direct",
          "morphed": true
        }
      },
      "requires": [
        "canArtificialMorph"
      ],
      "exitCondition": {
        "leaveWithGMode": {
          "morphed": true
        }
      },
      "bypassesDoorShell": "free",
      "flashSuitChecked": true,
      "devNote": "Artificial morph will allow Samus not to fall; real Morph is not sufficient.",
      "clearsObstacles": [
        "door_2"
      ]
    },
    {
      "id": 8,
      "link": [
        2,
        3
      ],
      "name": "Base",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        {
          "heatFrames": 100
        }
      ],
      "clearsObstacles": [
        "door_2"
      ]
    },
    {
      "id": 22,
      "link": [
        2,
        3
      ],
      "name": "Fall Into Room With Mockball",
      "entranceCondition": {
        "comeInWithMockball": {
          "speedBooster": "any",
          "adjacentMinTiles": 0,
          "remoteAndLandingMinTiles": [
            [
              0,
              0
            ]
          ]
        }
      },
      "requires": [
        {
          "heatFrames": 100
        }
      ],
      "flashSuitChecked": true,
      "clearsObstacles": [
        "door_2"
      ]
    },
    {
      "id": 29,
      "link": [
        2,
        3
      ],
      "name": "G-Mode Crystal Flash Stuck Ridley",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": false,
          "mobility": "mobile"
        }
      },
      "requires": [
        {
          "notable": "G-Mode Crystal Flash Stuck Ridley"
        },
        "h_heatedGMode",
        "h_CrystalFlash",
        "h_usePowerBomb",
        {
          "or": [
            {
              "and": [
                {
                  "or": [
                    "canWalljump",
                    "HiJump",
                    "canSpringBallJumpMidAir",
                    "SpaceJump"
                  ]
                },
                {
                  "ridleyKill": {
                    "powerBombs": false,
                    "gMode": true,
                    "stuck": "bottom"
                  }
                }
              ]
            },
            {
              "ridleyKill": {
                "powerBombs": false,
                "gMode": true,
                "stuck": "top"
              }
            }
          ]
        },
        {
          "autoReserveTrigger": {}
        },
        {
          "heatFrames": 520
        },
        {
          "partialRefill": {
            "type": "Energy",
            "limit": 100
          }
        }
      ],
      "setsFlags": [
        "f_DefeatedRidley"
      ],
      "note": [
        "Enter the room in G-mode, perform a Crystal Flash, then lay an additional Power Bomb, preferably at the top of the room.",
        "The Power Bomb will not explode but will continually force Ridley into a corner of the room.",
        "If the Power Bomb is laid near the top of the room, then Ridley will be forced into the bottom of the room,",
        "making it easy to damage Ridley at the highest possible rate;",
        "if the Power Bomb is laid lower, Ridley will be forced to the top of room, and Samus will have to jump repeatedly to bring it on camera.",
        "in which case Ridley can still be damaged but more slowly and with some caution needed to avoid invisible fireballs.",
        "After reducing Ridley's health to zero, take damage from Ridley or an invisible fireball to trigger auto-reserves and exit G-mode.",
        "Then get grabbed by Ridley to finish the fight."
      ],
      "devNote": [
        "FIXME: artificial morph with direct G-mode is another option for laying a Power Bomb at the top of the room,",
        "by landing on the door ledge on entry (the Morph item would still be needed since the Crystal Flash forces Samus out of being morphed)."
      ],
      "clearsObstacles": [
        "f_DefeatedRidley",
        "door_2"
      ]
    },
    {
      "id": 30,
      "link": [
        2,
        3
      ],
      "name": "G-Mode Ridley with 30 Supers",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": false,
          "mobility": "mobile"
        }
      },
      "requires": [
        {
          "notable": "G-Mode Ridley with 30 Supers"
        },
        "h_heatedGMode",
        {
          "heatFrames": 0
        },
        {
          "ammo": {
            "type": "Super",
            "count": 30
          }
        },
        {
          "or": [
            {
              "and": [
                "canPauseAbuse",
                {
                  "resourceAtMost": [
                    {
                      "type": "Energy",
                      "count": 1
                    }
                  ]
                },
                {
                  "partialRefill": {
                    "type": "Energy",
                    "limit": 100
                  }
                }
              ]
            },
            "free"
          ]
        }
      ],
      "setsFlags": [
        "f_DefeatedRidley"
      ],
      "note": [
        "Enter the room in G-mode and quickly kill Ridley with 30 Supers.",
        "G-mode protects against heat damage but also causes Ridley's fireballs to be invisible and not move.",
        "As long as Ridley is swooping, not many fireballs will be placed, so delaying Ridley from pogoing can be helpful.",
        "Once Ridley begins pogoing, it generally becomes unsafe for Samus to jump high because of the risk of touching a fireball.",
        "By the end of the fight, projectiles will probably be overloaded, causing Ridley's drops not to spawn;",
        "they can be collected by exiting G-mode just before drops spawn, and pause abusing if necessary."
      ],
      "devNote": [
        "FIXME: Leaving back through the open door while still in G-Mode is also possible,",
        "but difficult to do without touching an invisible fireball."
      ],
      "clearsObstacles": [
        "f_DefeatedRidley",
        "door_2"
      ]
    },
    {
      "id": 9,
      "link": [
        3,
        1
      ],
      "name": "Base",
      "requires": [
        {
          "heatFrames": 50
        }
      ]
    },
    {
      "id": 10,
      "link": [
        3,
        2
      ],
      "name": "Wall Jump",
      "requires": [
        "canWalljump",
        {
          "heatFrames": 200
        }
      ]
    },
    {
      "id": 11,
      "link": [
        3,
        2
      ],
      "name": "Space Jump",
      "requires": [
        "SpaceJump",
        {
          "heatFrames": 250
        }
      ]
    },
    {
      "id": 12,
      "link": [
        3,
        2
      ],
      "name": "IBJ",
      "requires": [
        "h_heatProof",
        {
          "and": [
            "canJumpIntoIBJ",
            "canTrickyJump",
            {
              "or": [
                "canLongIBJ",
                "HiJump"
              ]
            }
          ]
        },
        {
          "and": [
            {
              "or": [
                "f_DefeatedRidley",
                {
                  "obstaclesCleared": [
                    "f_DefeatedRidley"
                  ]
                }
              ]
            },
            {
              "or": [
                "canLongIBJ",
                {
                  "and": [
                    "canJumpIntoIBJ",
                    "HiJump"
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "id": 18,
      "link": [
        3,
        2
      ],
      "name": "HiJump Spring Ball",
      "requires": [
        "HiJump",
        "canSpringBallJumpMidAir",
        {
          "heatFrames": 210
        }
      ]
    },
    {
      "id": 19,
      "link": [
        3,
        2
      ],
      "name": "Speedy HiJump",
      "requires": [
        "HiJump",
        "SpeedBooster",
        "canTrickyJump",
        {
          "heatFrames": 320
        },
        {
          "or": [
            "canInsaneJump",
            {
              "heatFrames": 300
            }
          ]
        }
      ],
      "note": "Requires starting on one of the last three pixels and then performing a last frame jump to get enough height.",
      "devNote": "This gives one leniency attempt without canInsaneJump."
    },
    {
      "id": 16,
      "link": [
        3,
        3
      ],
      "name": "Heat Proof Ridley",
      "requires": [
        "h_heatProof",
        {
          "ridleyKill": {}
        }
      ],
      "setsFlags": [
        "f_DefeatedRidley"
      ],
      "clearsObstacles": [
        "f_DefeatedRidley"
      ]
    },
    {
      "id": 17,
      "link": [
        3,
        3
      ],
      "name": "Ridley without Heat Protection",
      "requires": [
        {
          "notable": "Ridley without Heat Protection"
        },
        {
          "heatFrames": 0
        },
        {
          "ridleyKill": {}
        }
      ],
      "setsFlags": [
        "f_DefeatedRidley"
      ],
      "note": "Fight Ridley without immunity to heat damage.",
      "devNote": [
        "Heat frames are accounted for as part of the enemyKill."
      ],
      "clearsObstacles": [
        "f_DefeatedRidley"
      ]
    },
    {
      "id": 13,
      "link": [
        3,
        3
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_heatedCrystalFlash"
      ],
      "flashSuitChecked": true
    },
    {
      "link": [
        1,
        1
      ],
      "name": "Base (Unlock Door)",
      "requires": [],
      "unlocksDoors": [
        {
          "types": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 50
            }
          ]
        },
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            {
              "heatFrames": 110
            }
          ]
        }
      ]
    },
    {
      "link": [
        1,
        1
      ],
      "name": "Base (Come In Normally)",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [],
      "clearsObstacles": [
        "door_1"
      ]
    },
    {
      "link": [
        1,
        1
      ],
      "name": "Base (Come In With Mockball)",
      "entranceCondition": {
        "comeInWithMockball": {
          "adjacentMinTiles": 0,
          "remoteAndLandingMinTiles": [
            [
              0,
              0
            ]
          ],
          "speedBooster": "any"
        }
      },
      "requires": [
        {
          "heatFrames": 10
        }
      ],
      "clearsObstacles": [
        "door_1"
      ]
    },
    {
      "link": [
        2,
        2
      ],
      "name": "Base (Unlock Door)",
      "requires": [],
      "unlocksDoors": [
        {
          "types": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 50
            }
          ]
        },
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            {
              "heatFrames": 110
            }
          ]
        }
      ]
    }
  ],
  "notables": [
    {
      "id": 1,
      "name": "Ridley without Heat Protection",
      "note": "Fight Ridley without immunity to heat damage."
    },
    {
      "id": 2,
      "name": "G-Mode Crystal Flash Stuck Ridley",
      "note": [
        "In G-mode, use a Crystal Flash and an additional Power Bomb to get Ridley stuck in a corner of the room.",
        "To end the fight, exit G-mode by using damage from Ridley to trigger auto-reserves."
      ]
    },
    {
      "id": 3,
      "name": "G-Mode Ridley with 30 Supers",
      "note": [
        "In G-Mode, use 30 Supers to end the fight quickly, carefully avoiding the invisible fireballs that Ridley spawns.",
        "Use X-Ray to exit G-Mode precisely at the end of the fight just before drops spawn."
      ]
    }
  ],
  "nextStratId": 31,
  "nextNotableId": 4,
  "obstacles": [
    {
      "id": "door_1",
      "name": "door_1"
    },
    {
      "id": "door_2",
      "name": "door_2"
    },
    {
      "id": "f_DefeatedRidley",
      "name": "f_DefeatedRidley"
    }
  ]
}