Cathedral Entrance

Room ID: 90

Wiki
Difficulty filter

From: 1
Left Door
To: 1
Left Door

Exit condition:

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

Requires:

"h_canHeatedCrystalFlash"
From: 1
Left Door
To: 1
Left Door

Requires:

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

It is possible to use a Super to speed up the Sova. Knocking it off while it is on the overhang above requires rapid switching to get to X-Ray in time.

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

{
  "or": [
    {
      "heatFrames": 560
    },
    {
      "and": [
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        },
        {
          "heatFrames": 420
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

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

Requires:

{
  "heatFrames": 150
}
From: 1
Left Door
To: 5
Bottom Right Junction

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 100
  }
}

Requires:

"canShinechargeMovement"
"canHorizontalShinespark"
{
  "heatFrames": 155
}
{
  "shinespark": {
    "frames": 54,
    "excessFrames": 15
  }
}
{
  "heatFrames": 105
}
From: 1
Left Door
To: 5
Bottom Right Junction

Normalized movement through the room can be used to manipulate the Sm. Dessgeegas and do this strat reliably without heat protection. The following is one way to do this; other approaches may also be possible. Before entering the room, damage down to between 127 and 159 energy, and unequip Speed Booster if it is collected. Position one pixel away from the door in the previous room. Hold angle-down (and optionally dash), enter the door transition, then hold shot while continuing to hold forward, angle-down, and dash. The shot block will be destroyed by the buffered shot. Continue holding right and dash to run under both Sm. Dessgeegas. After running under the second one, stop for a moment to prevent it from scrolling off camera. Morph, roll all the way against the right wall and quickly lay a Power Bomb. Move slightly to the left to avoid being bounced by the Power Bomb explosion. As the Sm. Dessgeega approaches, roll under it to the left to avoid being hit. Roll back to the right to collect its Power Bomb drop (which should be a ground level) and return to where the Power Bomb was laid, in time to perform the Crystal Flash inputs.

Entrance condition:

{
  "comeInRunning": {
    "minTiles": 0,
    "maxTiles": 0.0625,
    "speedBooster": false
  }
}

Requires:

{
  "notable": "10 Power Bomb Crystal Flash"
}
"canPrepareForNextRoom"
{
  "heatFrames": 570
}
"h_canHeated10PowerBombCrystalFlash"
From: 2
Right Door
To: 1
Left Door

Entrance condition:

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

Requires:

{
  "heatFrames": 45
}
From: 2
Right Door
To: 2
Right Door

Exit condition:

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

Requires:

"h_canHeatedCrystalFlash"
From: 2
Right Door
To: 2
Right Door

It takes about 20 seconds for the Sova to reach the door.

Requires:

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

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

{
  "heatFrames": 1180
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

{"types":["ammo"],"requires":[]}
From: 2
Right Door
To: 3
Bottom Left Junction

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 105
  }
}

Requires:

"canShinechargeMovement"
"canHorizontalShinespark"
{
  "heatFrames": 195
}
{
  "shinespark": {
    "frames": 58,
    "excessFrames": 0
  }
}
{
  "heatFrames": 105
}
From: 2
Right Door
To: 5
Bottom Right Junction

Requires:

{
  "heatFrames": 150
}
From: 2
Right Door
To: 5
Bottom Right Junction

A normalized entrance to the room can be used to manipulate the Sm. Dessgeegas and do this strat reliably without heat protection. The following is one way to do this; other approaches may also be possible. Before entering the room, damage down to between 90 and 125 energy. Position one pixel away from the door in the previous room. Enter the door transition (with or without holding dash), then hold dash and left until falling off the platform. Turn around and hold right, landing in the corner. Morph and lay a Power Bomb. Move slightly to the left to avoid being bounced by the Power Bomb explosion. As the Sm. Dessgeega approaches, roll under it to the left to avoid being hit. Roll back to the right to collect its Power Bomb drop (which should be a ground level) and return to where the Power Bomb was laid, in time to perform the Crystal Flash inputs.

Entrance condition:

{
  "comeInRunning": {
    "minTiles": 0,
    "maxTiles": 0.0625,
    "speedBooster": "any"
  }
}

Requires:

{
  "notable": "10 Power Bomb Crystal Flash"
}
"canPrepareForNextRoom"
{
  "heatFrames": 420
}
"h_canHeated10PowerBombCrystalFlash"
From: 3
Bottom Left Junction
To: 1
Left Door

Only one bomb is needed after using a spinjump to get into the two tile tunnel.

Requires:

"h_canBombThings"
{
  "heatFrames": 450
}
From: 3
Bottom Left Junction
To: 1
Left Door

Requires:

"h_canUseSpringBall"
{
  "heatFrames": 375
}
From: 3
Bottom Left Junction
To: 1
Left Door

Either race the nearby sova to the morph tunnel or wait for the global Sova to come around. Build speed on the lower platform and jump towards the morph tunnel while performing a Midair Morph to reach the Sova in time. Guiding the local Sova around through the shot block again can be faster, but is not expected.

Requires:

"canNeutralDamageBoost"
"Morph"
{
  "enemyDamage": {
    "enemy": "Sova",
    "hits": 1,
    "type": "contact"
  }
}
{
  "or": [
    {
      "and": [
        "canTrickyJump",
        "canLateralMidAirMorph",
        {
          "heatFrames": 340
        }
      ]
    },
    {
      "heatFrames": 2700
    }
  ]
}
From: 3
Bottom Left Junction
To: 1
Left Door

Requires:

{
  "or": [
    "canPreciseWalljump",
    "SpaceJump",
    {
      "and": [
        "HiJump",
        {
          "or": [
            "canWalljump",
            "SpeedBooster"
          ]
        }
      ]
    }
  ]
}
{
  "heatFrames": 210
}
From: 3
Bottom Left Junction
To: 1
Left Door

Guide the morph tunnel Sova on top of the shot blocks by keeping it on camera. Move the camera away once it is on top of the shot blocks. It will not move while off camera. Stand directly below the OffCamera Sova and fire up and jump to break the shot blocks. Either lower its health while guiding it, or as it begins to fall, there is time. As it falls, shoot again to freeze it at the right height. As a backup, the same Sova can be frozen on the left wall, dropped from the shot blocks again, or frozen on the right wall.

Requires:

{
  "notable": "Left Door Frozen Sova Step"
}
"canTrickyUseFrozenEnemies"
"canTrickyJump"
"canCameraManip"
{
  "heatFrames": 1100
}
From: 3
Bottom Left Junction
To: 2
Right Door

Requires:

"canTrickyUseFrozenEnemies"
{
  "heatFrames": 950
}
From: 3
Bottom Left Junction
To: 2
Right Door

Use a very well timed and precise walljump into morph to hit the global Sova so that the damage bonks Samus up to the door ledge. Aim for the lowest part of slope looking wall tile, where it does not look possible to make contact with a walljump, and fully delay the jump. To try again, the Sova loops to the left side wall. Or a Super can knock it off the wall to climb the right side again.

Requires:

{
  "notable": "Sova Morph Only Boost"
}
"canInsaneWalljump"
"canMidAirMorph"
"canNeutralDamageBoost"
{
  "enemyDamage": {
    "enemy": "Sova",
    "hits": 1,
    "type": "contact"
  }
}
{
  "heatFrames": 1050
}
From: 3
Bottom Left Junction
To: 3
Bottom Left Junction

Requires:

"h_heatProof"
{
  "or": [
    "canDodgeWhileShooting",
    "Plasma",
    "ScrewAttack",
    "Wave",
    "Spazer"
  ]
}
{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1
            ],
            "mustStayPut": false
          }
        },
        {
          "or": [
            "canWalljump",
            "SpaceJump",
            "h_canUseSpringBall"
          ]
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              2
            ],
            "mustStayPut": false
          }
        },
        {
          "or": [
            "HiJump",
            "SpaceJump"
          ]
        }
      ]
    }
  ]
}
{
  "partialRefill": {
    "type": "Energy",
    "limit": 160
  }
}
{
  "partialRefill": {
    "type": "Super",
    "limit": 4
  }
}
{
  "partialRefill": {
    "type": "Missile",
    "limit": 12
  }
}
{
  "partialRefill": {
    "type": "PowerBomb",
    "limit": 10
  }
}
From: 3
Bottom Left Junction
To: 3
Bottom Left Junction

Requires:

"h_canHeatedCrystalFlash"
From: 3
Bottom Left Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

"Plasma"
{
  "heatFrames": 100
}
From: 3
Bottom Left Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

"ScrewAttack"
{
  "heatFrames": 100
}
From: 3
Bottom Left Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

{
  "enemyKill": {
    "enemies": [
      [
        "Sm. Dessgeega",
        "Sm. Dessgeega"
      ]
    ],
    "explicitWeapons": [
      "Missile",
      "Super"
    ]
  }
}
{
  "heatFrames": 100
}
From: 3
Bottom Left Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

{
  "or": [
    "Wave",
    "Spazer"
  ]
}
{
  "heatFrames": 200
}
From: 3
Bottom Left Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

{
  "heatFrames": 350
}
From: 3
Bottom Left Junction
To: 5
Bottom Right Junction

Requires:

{
  "heatFrames": 150
}
{
  "enemyDamage": {
    "enemy": "Sm. Dessgeega",
    "type": "contact",
    "hits": 1
  }
}
From: 3
Bottom Left Junction
To: 5
Bottom Right Junction

Requires:

"canMockball"
{
  "heatFrames": 100
}
From: 4
Bottom Junction (Cleared Runway)
To: 1
Left Door

Jump and shoot the block, then quickly run away and back to charge the shinespark and shine through before the block respawns.

Requires:

{
  "canShineCharge": {
    "usedTiles": 43,
    "openEnd": 0
  }
}
{
  "heatFrames": 500
}
{
  "shinespark": {
    "frames": 22,
    "excessFrames": 3
  }
}
From: 4
Bottom Junction (Cleared Runway)
To: 1
Left Door

With plasma, it is possible to shoot the block from the ground and immediately shinespark. Other beams will disappear off-screen before Samus has moved up enough. A charge shot can be used instead, as it moves a bit slower, but there is a relatively small window.

Requires:

"Plasma"
{
  "canShineCharge": {
    "usedTiles": 43,
    "openEnd": 0
  }
}
{
  "heatFrames": 250
}
{
  "shinespark": {
    "frames": 22,
    "excessFrames": 3
  }
}
From: 4
Bottom Junction (Cleared Runway)
To: 1
Left Door

It is possible to shoot upwards from the ground then immediately as the shot is leaving the screen, press up and jump to shinespark without delay. A Charge shot can help, as it slows down the shot.

Requires:

"canHeroShot"
{
  "canShineCharge": {
    "usedTiles": 43,
    "openEnd": 0
  }
}
{
  "heatFrames": 250
}
{
  "shinespark": {
    "frames": 22,
    "excessFrames": 3
  }
}
From: 4
Bottom Junction (Cleared Runway)
To: 1
Left Door

This is a precise strat which requires maximum run speed. Perform a spin jump right next to the left wall. Shoot the block as Samus is about to leap through it, and land next to the door. A down grab makes this a little easier.

Requires:

{
  "notable": "Speedjump (Right to Left)"
}
"canTrickyDashJump"
{
  "heatFrames": 150
}
From: 4
Bottom Junction (Cleared Runway)
To: 1
Left Door

Kill the enemies, break the shot block, then use the bottom to charge a spark. Quickly climb up before the block respawns, and continue through the left door.

Requires:

"HiJump"
"canShinechargeMovementComplex"
{
  "canShineCharge": {
    "usedTiles": 43,
    "openEnd": 0
  }
}
{
  "or": [
    "canPreciseWalljump",
    "canTrickyJump",
    "SpaceJump"
  ]
}
{
  "heatFrames": 540
}

Exit condition:

{
  "leaveShinecharged": {
    "framesRemaining": 35
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":240}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":40}]}
From: 4
Bottom Junction (Cleared Runway)
To: 1
Left Door

Kill the enemies, then use the bottom to charge a spark. Shoot the shot block from the ground and follow it up so that it breaks, and continue through the left door.

Requires:

"HiJump"
"canShinechargeMovementComplex"
"canHeroShot"
{
  "canShineCharge": {
    "usedTiles": 43,
    "openEnd": 0
  }
}
{
  "or": [
    "canPreciseWalljump",
    "canTrickyJump",
    "SpaceJump"
  ]
}
{
  "heatFrames": 310
}

Exit condition:

{
  "leaveShinecharged": {
    "framesRemaining": 25
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":500}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":180}]}
From: 4
Bottom Junction (Cleared Runway)
To: 2
Right Door

Requires:

"canWalljump"
"canShinechargeMovement"
{
  "canShineCharge": {
    "usedTiles": 43,
    "openEnd": 0
  }
}
{
  "heatFrames": 380
}
{
  "shinespark": {
    "frames": 16,
    "excessFrames": 4
  }
}
From: 4
Bottom Junction (Cleared Runway)
To: 2
Right Door

This is a precise strat which requires maximum run speed. Jump when passing under the floating platform and barely avoid hitting the rightmost wall. Wall jump on the horizontal spire near to the door.

Requires:

{
  "notable": "Speedjump (Left to Right)"
}
"canTrickyDashJump"
"canWalljump"
{
  "heatFrames": 150
}
From: 4
Bottom Junction (Cleared Runway)
To: 2
Right Door

Kill the enemies and use the bottom to charge a spark. Quickly climb then spark through the right door.

Requires:

"HiJump"
"canShinechargeMovementComplex"
{
  "canShineCharge": {
    "usedTiles": 43,
    "openEnd": 0
  }
}
{
  "heatFrames": 320
}

Exit condition:

{
  "leaveShinecharged": {
    "framesRemaining": 60
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":180}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":120}]}
From: 4
Bottom Junction (Cleared Runway)
To: 3
Bottom Left Junction

Requires:

{
  "heatFrames": 100
}
From: 4
Bottom Junction (Cleared Runway)
To: 4
Bottom Junction (Cleared Runway)

Requires:

"h_canHeatedCrystalFlash"
From: 4
Bottom Junction (Cleared Runway)
To: 5
Bottom Right Junction

From: 5
Bottom Right Junction
To: 2
Right Door

Requires:

{
  "or": [
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 70
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 125
        }
      ]
    }
  ]
}
From: 5
Bottom Right Junction
To: 2
Right Door

Requires:

{
  "or": [
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 50
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 105
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 5,
    "openEnd": 0
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 5
Bottom Right Junction
To: 2
Right Door

Requires:

"canSpringBallJumpMidAir"
{
  "heatFrames": 200
}
From: 5
Bottom Right Junction
To: 2
Right Door

Requires:

{
  "or": [
    {
      "and": [
        "canIBJ",
        {
          "heatFrames": 1020
        }
      ]
    },
    {
      "and": [
        "canDoubleBombJump",
        {
          "heatFrames": 510
        }
      ]
    }
  ]
}
From: 5
Bottom Right Junction
To: 2
Right Door

Requires:

{
  "or": [
    {
      "and": [
        "canJumpIntoIBJ",
        {
          "heatFrames": 450
        }
      ]
    },
    {
      "and": [
        "canDoubleBombJump",
        {
          "heatFrames": 300
        }
      ]
    }
  ]
}
From: 5
Bottom Right Junction
To: 2
Right Door

Use a fully delayed walljump to gain enough horizontal distance to place a bomb past the lip of the overhang. Unmorph to hover in the air above the bomb while it explodes. Ride the explosion into a down-grab to reach the ledge.

Requires:

"canInsaneWalljump"
"canWallJumpInstantMorph"
"canUnmorphBombBoost"
"canDownGrab"
{
  "heatFrames": 215
}
From: 5
Bottom Right Junction
To: 2
Right Door

Wait for the global Sova to begin climbing the wall below the door. Time a walljump into instant morph where Samus boosts off of the Sova with the right timing to bounce up to the door's ledge. The jump must be a fully delayed walljump. Normalizing the camera can help with timing the walljump. The damage boost can be attempted again when the Sova climbs down the left wall, or by knocking it off the wall with a Super Missile.

Requires:

{
  "notable": "Sova Boost"
}
"canInsaneWalljump"
"canWallJumpInstantMorph"
"canNeutralDamageBoost"
"canCameraManip"
{
  "heatFrames": 830
}
{
  "enemyDamage": {
    "enemy": "Sova",
    "type": "contact",
    "hits": 1
  }
}
{
  "heatFrames": 90
}
From: 5
Bottom Right Junction
To: 2
Right Door

Wait for the global Sova to begin climbing the wall below the door. Have Reserves set to manual and couch jump up above the Sova as it turns the lip of the ledge. Before touching the Sova, pause, so that Samus will recieve a small damage boost followed by pause screen appearing. Set Reserves back to auto which will end Samus' IFrames enabling a second damage boost. Without Morphball, this requires a blind damage boost.

Requires:

{
  "notable": "Sova Boost"
}
"canCrouchJump"
"canInsaneJump"
{
  "or": [
    "canMidAirMorph",
    "canOffScreenMovement"
  ]
}
"canCameraManip"
"canReserveDoubleDamageBoost"
{
  "heatFrames": 830
}
{
  "autoReserveTrigger": {
    "minReserveEnergy": 85
  }
}
{
  "enemyDamage": {
    "enemy": "Sova",
    "type": "contact",
    "hits": 1
  }
}
{
  "heatFrames": 90
}
From: 5
Bottom Right Junction
To: 2
Right Door

Wait for the global Sova to begin climbing the wall below the door. Time a crouch jump to touch the Sova as it begins to climb lip of the ledge to the door. Just before the collision, place a Bomb or Power Bomb. Reserves will activate which will suspend Samus in the air on top of the Bomb while it explodes. This will give two height boosts, allowing Samus to reach the door.

Requires:

{
  "notable": "Sova Boost"
}
"h_canBombThings"
"canMidAirMorph"
"canTrickyJump"
"canCrouchJump"
"canManageReserves"
"canCameraManip"
{
  "heatFrames": 830
}
{
  "autoReserveTrigger": {
    "minReserveEnergy": 85
  }
}
{
  "enemyDamage": {
    "enemy": "Sova",
    "type": "contact",
    "hits": 1
  }
}
{
  "heatFrames": 90
}
From: 5
Bottom Right Junction
To: 3
Bottom Left Junction

Requires:

"canDodgeWhileShooting"
{
  "heatFrames": 350
}
From: 5
Bottom Right Junction
To: 3
Bottom Left Junction

Requires:

{
  "heatFrames": 160
}
{
  "enemyDamage": {
    "enemy": "Sm. Dessgeega",
    "type": "contact",
    "hits": 1
  }
}
From: 5
Bottom Right Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

"Plasma"
{
  "heatFrames": 100
}
From: 5
Bottom Right Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

"ScrewAttack"
{
  "heatFrames": 100
}
From: 5
Bottom Right Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

{
  "enemyKill": {
    "enemies": [
      [
        "Sm. Dessgeega",
        "Sm. Dessgeega"
      ]
    ],
    "explicitWeapons": [
      "Missile",
      "Super"
    ]
  }
}
{
  "heatFrames": 100
}
From: 5
Bottom Right Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

{
  "or": [
    "Wave",
    "Spazer"
  ]
}
{
  "heatFrames": 200
}
From: 5
Bottom Right Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

{
  "heatFrames": 350
}

{
  "$schema": "../../../schema/m3-room.schema.json",
  "id": 90,
  "name": "Cathedral Entrance",
  "area": "Norfair",
  "subarea": "Upper",
  "subsubarea": "East",
  "playable": true,
  "roomAddress": "0x7A7B3",
  "roomEnvironments": [
    {
      "heated": true
    }
  ],
  "nodes": [
    {
      "id": 1,
      "name": "Left Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x00192a6",
      "doorOrientation": "left",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ]
    },
    {
      "id": 2,
      "name": "Right Door",
      "nodeType": "door",
      "nodeSubType": "red",
      "nodeAddress": "0x00192b2",
      "doorOrientation": "right",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ]
    },
    {
      "id": 3,
      "name": "Bottom Left Junction",
      "nodeType": "junction",
      "nodeSubType": "junction"
    },
    {
      "id": 4,
      "name": "Bottom Junction (Cleared Runway)",
      "nodeType": "junction",
      "nodeSubType": "junction",
      "note": "This node is only considered reached if the runway is clear of enemies, to setup SpeedBooster strats."
    },
    {
      "id": 5,
      "name": "Bottom Right Junction",
      "nodeType": "junction",
      "nodeSubType": "junction"
    }
  ],
  "enemies": [
    {
      "id": "e1",
      "groupName": "Cathedral Entrance Sovas",
      "enemyName": "Sova",
      "quantity": 4,
      "homeNodes": [
        3
      ],
      "dropRequires": [
        "h_heatProof"
      ]
    },
    {
      "id": "e2",
      "groupName": "Cathedral Entrance Small Dessgeegas",
      "enemyName": "Sm. Dessgeega",
      "quantity": 2,
      "betweenNodes": [
        3,
        5
      ],
      "dropRequires": [
        "h_heatProof"
      ]
    }
  ],
  "links": [
    {
      "from": 1,
      "to": [
        {
          "id": 1
        },
        {
          "id": 3
        },
        {
          "id": 5
        }
      ]
    },
    {
      "from": 2,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        },
        {
          "id": 5
        }
      ]
    },
    {
      "from": 3,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2,
          "devNote": "This link goes straight from 3 to 2 because waiting for the Sova is the same time, regardless of how quickly you can travel through the other nodes"
        },
        {
          "id": 3
        },
        {
          "id": 4
        },
        {
          "id": 5
        }
      ]
    },
    {
      "from": 4,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        },
        {
          "id": 4
        },
        {
          "id": 5,
          "devNote": "Node 4 is considered equivalent to 5 (though 5 isn't equivlent to 4)."
        }
      ]
    },
    {
      "from": 5,
      "to": [
        {
          "id": 2
        },
        {
          "id": 3
        },
        {
          "id": 4
        },
        {
          "id": 5
        }
      ]
    }
  ],
  "strats": [
    {
      "id": 1,
      "link": [
        1,
        1
      ],
      "name": "Leave with Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 5,
          "openEnd": 0
        }
      }
    },
    {
      "id": 2,
      "link": [
        1,
        1
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_canHeatedCrystalFlash"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 3,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Regain Mobility",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sova",
            "type": "contact",
            "hits": 1
          }
        }
      ],
      "gModeRegainMobility": {},
      "flashSuitChecked": true
    },
    {
      "id": 58,
      "link": [
        1,
        1
      ],
      "name": "G-Mode Setup - Get Hit By Sova",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        {
          "or": [
            {
              "heatFrames": 560
            },
            {
              "and": [
                {
                  "ammo": {
                    "type": "Super",
                    "count": 1
                  }
                },
                {
                  "heatFrames": 420
                }
              ]
            }
          ]
        }
      ],
      "exitCondition": {
        "leaveWithGModeSetup": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "missiles",
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": "It is possible to use a Super to speed up the Sova. Knocking it off while it is on the overhang above requires rapid switching to get to X-Ray in time.",
      "devNote": "Generally, coming from the right works, but that would require modeling the room traversal too."
    },
    {
      "id": 4,
      "link": [
        1,
        3
      ],
      "name": "Base",
      "requires": [
        {
          "heatFrames": 150
        }
      ]
    },
    {
      "id": 5,
      "link": [
        1,
        5
      ],
      "name": "Shinespark (Come In Shinecharged)",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 100
        }
      },
      "requires": [
        "canShinechargeMovement",
        "canHorizontalShinespark",
        {
          "heatFrames": 155
        },
        {
          "shinespark": {
            "frames": 54,
            "excessFrames": 15
          }
        },
        {
          "heatFrames": 105
        }
      ],
      "flashSuitChecked": true
    },
    {
      "id": 6,
      "link": [
        1,
        5
      ],
      "name": "10 Power Bomb Crystal Flash",
      "entranceCondition": {
        "comeInRunning": {
          "minTiles": 0,
          "maxTiles": 0.0625,
          "speedBooster": false
        }
      },
      "requires": [
        {
          "notable": "10 Power Bomb Crystal Flash"
        },
        "canPrepareForNextRoom",
        {
          "heatFrames": 570
        },
        "h_canHeated10PowerBombCrystalFlash"
      ],
      "flashSuitChecked": true,
      "note": [
        "Normalized movement through the room can be used to manipulate the Sm. Dessgeegas and do this strat reliably without heat protection.",
        "The following is one way to do this; other approaches may also be possible.",
        "Before entering the room, damage down to between 127 and 159 energy, and unequip Speed Booster if it is collected.",
        "Position one pixel away from the door in the previous room.",
        "Hold angle-down (and optionally dash), enter the door transition, then hold shot while continuing to hold forward, angle-down, and dash.",
        "The shot block will be destroyed by the buffered shot.",
        "Continue holding right and dash to run under both Sm. Dessgeegas.",
        "After running under the second one, stop for a moment to prevent it from scrolling off camera.",
        "Morph, roll all the way against the right wall and quickly lay a Power Bomb.",
        "Move slightly to the left to avoid being bounced by the Power Bomb explosion.",
        "As the Sm. Dessgeega approaches, roll under it to the left to avoid being hit.",
        "Roll back to the right to collect its Power Bomb drop (which should be a ground level) and return to where the Power Bomb was laid, in time to perform the Crystal Flash inputs."
      ],
      "devNote": [
        "The heat frames include about a half second of leniency to position in the previous room in case it is also heated.",
        "FIXME: Find some way to properly express being above health bomb range, though it shouldn't be a serious problem here.",
        "Without heat protection, this is already accounted for by the heatFrames (though this is a bit hacky).",
        "With heat protection, it should be possible to farm a bit to get out of health bomb range."
      ]
    },
    {
      "id": 7,
      "link": [
        2,
        1
      ],
      "name": "Grapple Teleport",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              7,
              2
            ]
          ]
        }
      },
      "requires": [
        {
          "heatFrames": 45
        }
      ]
    },
    {
      "id": 8,
      "link": [
        2,
        2
      ],
      "name": "Leave with Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 5,
          "openEnd": 1
        }
      }
    },
    {
      "id": 9,
      "link": [
        2,
        2
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_canHeatedCrystalFlash"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 10,
      "link": [
        2,
        2
      ],
      "name": "G-Mode Regain Mobility",
      "requires": [
        {
          "enemyDamage": {
            "enemy": "Sova",
            "type": "contact",
            "hits": 1
          }
        }
      ],
      "gModeRegainMobility": {},
      "flashSuitChecked": true,
      "note": "It takes about 20 seconds for the Sova to reach the door."
    },
    {
      "id": 59,
      "link": [
        2,
        2
      ],
      "name": "G-Mode Setup - Get Hit By Sova",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        {
          "heatFrames": 1180
        }
      ],
      "exitCondition": {
        "leaveWithGModeSetup": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ],
      "flashSuitChecked": true,
      "devNote": "Generally, coming from the left works, but that would require modeling the room traversal too."
    },
    {
      "id": 11,
      "link": [
        2,
        3
      ],
      "name": "Shinespark (Come In Shinecharged)",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 105
        }
      },
      "requires": [
        "canShinechargeMovement",
        "canHorizontalShinespark",
        {
          "heatFrames": 195
        },
        {
          "shinespark": {
            "frames": 58,
            "excessFrames": 0
          }
        },
        {
          "heatFrames": 105
        }
      ],
      "flashSuitChecked": true
    },
    {
      "id": 12,
      "link": [
        2,
        5
      ],
      "name": "Base",
      "requires": [
        {
          "heatFrames": 150
        }
      ]
    },
    {
      "id": 13,
      "link": [
        2,
        5
      ],
      "name": "10 Power Bomb Crystal Flash",
      "entranceCondition": {
        "comeInRunning": {
          "minTiles": 0,
          "maxTiles": 0.0625,
          "speedBooster": "any"
        }
      },
      "requires": [
        {
          "notable": "10 Power Bomb Crystal Flash"
        },
        "canPrepareForNextRoom",
        {
          "heatFrames": 420
        },
        "h_canHeated10PowerBombCrystalFlash"
      ],
      "flashSuitChecked": true,
      "note": [
        "A normalized entrance to the room can be used to manipulate the Sm. Dessgeegas and do this strat reliably without heat protection.",
        "The following is one way to do this; other approaches may also be possible.",
        "Before entering the room, damage down to between 90 and 125 energy.",
        "Position one pixel away from the door in the previous room.",
        "Enter the door transition (with or without holding dash), then hold dash and left until falling off the platform.",
        "Turn around and hold right, landing in the corner.",
        "Morph and lay a Power Bomb.",
        "Move slightly to the left to avoid being bounced by the Power Bomb explosion.",
        "As the Sm. Dessgeega approaches, roll under it to the left to avoid being hit.",
        "Roll back to the right to collect its Power Bomb drop (which should be a ground level) and return to where the Power Bomb was laid, in time to perform the Crystal Flash inputs."
      ],
      "devNote": [
        "The heat frames include about a half second of leniency to position in the previous room in case it is also heated.",
        "FIXME: Find some way to properly express being above health bomb range, though it shouldn't be a serious problem here.",
        "Without heat protection, this is already accounted for by the heatFrames (though this is a bit hacky).",
        "With heat protection, it should be possible to farm a bit to get out of health bomb range."
      ]
    },
    {
      "id": 14,
      "link": [
        3,
        1
      ],
      "name": "Base",
      "requires": [
        "h_canBombThings",
        {
          "heatFrames": 450
        }
      ],
      "note": "Only one bomb is needed after using a spinjump to get into the two tile tunnel."
    },
    {
      "id": 15,
      "link": [
        3,
        1
      ],
      "name": "Base with Spring Ball",
      "requires": [
        "h_canUseSpringBall",
        {
          "heatFrames": 375
        }
      ]
    },
    {
      "id": 16,
      "link": [
        3,
        1
      ],
      "name": "Sova Boost",
      "requires": [
        "canNeutralDamageBoost",
        "Morph",
        {
          "enemyDamage": {
            "enemy": "Sova",
            "hits": 1,
            "type": "contact"
          }
        },
        {
          "or": [
            {
              "and": [
                "canTrickyJump",
                "canLateralMidAirMorph",
                {
                  "heatFrames": 340
                }
              ]
            },
            {
              "heatFrames": 2700
            }
          ]
        }
      ],
      "note": [
        "Either race the nearby sova to the morph tunnel or wait for the global Sova to come around.",
        "Build speed on the lower platform and jump towards the morph tunnel while performing a Midair Morph to reach the Sova in time.",
        "Guiding the local Sova around through the shot block again can be faster, but is not expected."
      ],
      "devNote": "The global Sova is moving while the player reaches this node and this heatFrame count reflects that."
    },
    {
      "id": 17,
      "link": [
        3,
        1
      ],
      "name": "Up from Below",
      "requires": [
        {
          "or": [
            "canPreciseWalljump",
            "SpaceJump",
            {
              "and": [
                "HiJump",
                {
                  "or": [
                    "canWalljump",
                    "SpeedBooster"
                  ]
                }
              ]
            }
          ]
        },
        {
          "heatFrames": 210
        }
      ]
    },
    {
      "id": 18,
      "link": [
        3,
        1
      ],
      "name": "Left Door Frozen Sova Step",
      "requires": [
        {
          "notable": "Left Door Frozen Sova Step"
        },
        "canTrickyUseFrozenEnemies",
        "canTrickyJump",
        "canCameraManip",
        {
          "heatFrames": 1100
        }
      ],
      "note": [
        "Guide the morph tunnel Sova on top of the shot blocks by keeping it on camera.",
        "Move the camera away once it is on top of the shot blocks.  It will not move while off camera.",
        "Stand directly below the OffCamera Sova and fire up and jump to break the shot blocks.",
        "Either lower its health while guiding it, or as it begins to fall, there is time.",
        "As it falls, shoot again to freeze it at the right height.",
        "As a backup, the same Sova can be frozen on the left wall, dropped from the shot blocks again, or frozen on the right wall."
      ]
    },
    {
      "id": 19,
      "link": [
        3,
        2
      ],
      "name": "Frozen Sova",
      "requires": [
        "canTrickyUseFrozenEnemies",
        {
          "heatFrames": 950
        }
      ]
    },
    {
      "id": 20,
      "link": [
        3,
        2
      ],
      "name": "Sova Morph Only Boost",
      "requires": [
        {
          "notable": "Sova Morph Only Boost"
        },
        "canInsaneWalljump",
        "canMidAirMorph",
        "canNeutralDamageBoost",
        {
          "enemyDamage": {
            "enemy": "Sova",
            "hits": 1,
            "type": "contact"
          }
        },
        {
          "heatFrames": 1050
        }
      ],
      "note": [
        "Use a very well timed and precise walljump into morph to hit the global Sova so that the damage bonks Samus up to the door ledge.",
        "Aim for the lowest part of slope looking wall tile, where it does not look possible to make contact with a walljump, and fully delay the jump.",
        "To try again, the Sova loops to the left side wall. Or a Super can knock it off the wall to climb the right side again."
      ]
    },
    {
      "id": 21,
      "link": [
        3,
        3
      ],
      "name": "Sova and Sm. Dessgeega Farm",
      "requires": [
        "h_heatProof",
        {
          "or": [
            "canDodgeWhileShooting",
            "Plasma",
            "ScrewAttack",
            "Wave",
            "Spazer"
          ]
        },
        {
          "or": [
            {
              "and": [
                {
                  "resetRoom": {
                    "nodes": [
                      1
                    ],
                    "mustStayPut": false
                  }
                },
                {
                  "or": [
                    "canWalljump",
                    "SpaceJump",
                    "h_canUseSpringBall"
                  ]
                }
              ]
            },
            {
              "and": [
                {
                  "resetRoom": {
                    "nodes": [
                      2
                    ],
                    "mustStayPut": false
                  }
                },
                {
                  "or": [
                    "HiJump",
                    "SpaceJump"
                  ]
                }
              ]
            }
          ]
        },
        {
          "partialRefill": {
            "type": "Energy",
            "limit": 160
          }
        },
        {
          "partialRefill": {
            "type": "Super",
            "limit": 4
          }
        },
        {
          "partialRefill": {
            "type": "Missile",
            "limit": 12
          }
        },
        {
          "partialRefill": {
            "type": "PowerBomb",
            "limit": 10
          }
        }
      ]
    },
    {
      "id": 22,
      "link": [
        3,
        3
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_canHeatedCrystalFlash"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 23,
      "link": [
        3,
        4
      ],
      "name": "Plasma Kill",
      "requires": [
        "Plasma",
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "id": 24,
      "link": [
        3,
        4
      ],
      "name": "Screw Kill",
      "requires": [
        "ScrewAttack",
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "id": 25,
      "link": [
        3,
        4
      ],
      "name": "Ammo Kill",
      "requires": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Sm. Dessgeega",
                "Sm. Dessgeega"
              ]
            ],
            "explicitWeapons": [
              "Missile",
              "Super"
            ]
          }
        },
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "id": 26,
      "link": [
        3,
        4
      ],
      "name": "Intermediate Beam Kill",
      "requires": [
        {
          "or": [
            "Wave",
            "Spazer"
          ]
        },
        {
          "heatFrames": 200
        }
      ]
    },
    {
      "id": 27,
      "link": [
        3,
        4
      ],
      "name": "Power Beam Kill",
      "requires": [
        {
          "heatFrames": 350
        }
      ]
    },
    {
      "id": 28,
      "link": [
        3,
        5
      ],
      "name": "Tank a Hit",
      "requires": [
        {
          "heatFrames": 150
        },
        {
          "enemyDamage": {
            "enemy": "Sm. Dessgeega",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "id": 29,
      "link": [
        3,
        5
      ],
      "name": "Mockball Through",
      "requires": [
        "canMockball",
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "id": 30,
      "link": [
        4,
        1
      ],
      "name": "Shinespark",
      "requires": [
        {
          "canShineCharge": {
            "usedTiles": 43,
            "openEnd": 0
          }
        },
        {
          "heatFrames": 500
        },
        {
          "shinespark": {
            "frames": 22,
            "excessFrames": 3
          }
        }
      ],
      "note": "Jump and shoot the block, then quickly run away and back to charge the shinespark and shine through before the block respawns.",
      "devNote": [
        "FIXME: Some of the heatFrames should come after the shinespark"
      ]
    },
    {
      "id": 31,
      "link": [
        4,
        1
      ],
      "name": "Shinespark With Plasma",
      "requires": [
        "Plasma",
        {
          "canShineCharge": {
            "usedTiles": 43,
            "openEnd": 0
          }
        },
        {
          "heatFrames": 250
        },
        {
          "shinespark": {
            "frames": 22,
            "excessFrames": 3
          }
        }
      ],
      "note": [
        "With plasma, it is possible to shoot the block from the ground and immediately shinespark.",
        "Other beams will disappear off-screen before Samus has moved up enough.",
        "A charge shot can be used instead, as it moves a bit slower, but there is a relatively small window."
      ],
      "devNote": [
        "FIXME: Some of the heatFrames should come after the shinespark"
      ]
    },
    {
      "id": 32,
      "link": [
        4,
        1
      ],
      "name": "Hero Shot Shinespark",
      "requires": [
        "canHeroShot",
        {
          "canShineCharge": {
            "usedTiles": 43,
            "openEnd": 0
          }
        },
        {
          "heatFrames": 250
        },
        {
          "shinespark": {
            "frames": 22,
            "excessFrames": 3
          }
        }
      ],
      "note": [
        "It is possible to shoot upwards from the ground then immediately as the shot is leaving the screen, press up and jump to shinespark without delay.",
        "A Charge shot can help, as it slows down the shot."
      ],
      "devNote": [
        "FIXME: Some of the heatFrames should come after the shinespark"
      ]
    },
    {
      "id": 33,
      "link": [
        4,
        1
      ],
      "name": "Speedjump (Right to Left)",
      "requires": [
        {
          "notable": "Speedjump (Right to Left)"
        },
        "canTrickyDashJump",
        {
          "heatFrames": 150
        }
      ],
      "note": [
        "This is a precise strat which requires maximum run speed.",
        "Perform a spin jump right next to the left wall.",
        "Shoot the block as Samus is about to leap through it, and land next to the door.",
        "A down grab makes this a little easier."
      ]
    },
    {
      "id": 34,
      "link": [
        4,
        1
      ],
      "name": "Leave Shinecharged",
      "requires": [
        "HiJump",
        "canShinechargeMovementComplex",
        {
          "canShineCharge": {
            "usedTiles": 43,
            "openEnd": 0
          }
        },
        {
          "or": [
            "canPreciseWalljump",
            "canTrickyJump",
            "SpaceJump"
          ]
        },
        {
          "heatFrames": 540
        }
      ],
      "exitCondition": {
        "leaveShinecharged": {
          "framesRemaining": 35
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 240
            }
          ]
        },
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            {
              "heatFrames": 40
            }
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": "Kill the enemies, break the shot block, then use the bottom to charge a spark. Quickly climb up before the block respawns, and continue through the left door."
    },
    {
      "id": 35,
      "link": [
        4,
        1
      ],
      "name": "Leave Shinecharged Hero Shot",
      "requires": [
        "HiJump",
        "canShinechargeMovementComplex",
        "canHeroShot",
        {
          "canShineCharge": {
            "usedTiles": 43,
            "openEnd": 0
          }
        },
        {
          "or": [
            "canPreciseWalljump",
            "canTrickyJump",
            "SpaceJump"
          ]
        },
        {
          "heatFrames": 310
        }
      ],
      "exitCondition": {
        "leaveShinecharged": {
          "framesRemaining": 25
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 500
            }
          ]
        },
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            {
              "heatFrames": 180
            }
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": "Kill the enemies, then use the bottom to charge a spark. Shoot the shot block from the ground and follow it up so that it breaks, and continue through the left door."
    },
    {
      "id": 36,
      "link": [
        4,
        2
      ],
      "name": "Shinespark",
      "requires": [
        "canWalljump",
        "canShinechargeMovement",
        {
          "canShineCharge": {
            "usedTiles": 43,
            "openEnd": 0
          }
        },
        {
          "heatFrames": 380
        },
        {
          "shinespark": {
            "frames": 16,
            "excessFrames": 4
          }
        }
      ],
      "devNote": [
        "FIXME: Some of the heatFrames should come after the shinespark"
      ]
    },
    {
      "id": 37,
      "link": [
        4,
        2
      ],
      "name": "Speedjump (Left to Right)",
      "requires": [
        {
          "notable": "Speedjump (Left to Right)"
        },
        "canTrickyDashJump",
        "canWalljump",
        {
          "heatFrames": 150
        }
      ],
      "note": [
        "This is a precise strat which requires maximum run speed.",
        "Jump when passing under the floating platform and barely avoid hitting the rightmost wall.",
        "Wall jump on the horizontal spire near to the door."
      ]
    },
    {
      "id": 38,
      "link": [
        4,
        2
      ],
      "name": "Leave Shinecharged",
      "requires": [
        "HiJump",
        "canShinechargeMovementComplex",
        {
          "canShineCharge": {
            "usedTiles": 43,
            "openEnd": 0
          }
        },
        {
          "heatFrames": 320
        }
      ],
      "exitCondition": {
        "leaveShinecharged": {
          "framesRemaining": 60
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 180
            }
          ]
        },
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            {
              "heatFrames": 120
            }
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": "Kill the enemies and use the bottom to charge a spark. Quickly climb then spark through the right door."
    },
    {
      "id": 39,
      "link": [
        4,
        3
      ],
      "name": "Base",
      "requires": [
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "id": 40,
      "link": [
        4,
        4
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_canHeatedCrystalFlash"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 41,
      "link": [
        4,
        5
      ],
      "name": "Base",
      "requires": []
    },
    {
      "id": 42,
      "link": [
        5,
        2
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            {
              "and": [
                "HiJump",
                {
                  "heatFrames": 70
                }
              ]
            },
            {
              "and": [
                "SpaceJump",
                {
                  "heatFrames": 125
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "id": 43,
      "link": [
        5,
        2
      ],
      "name": "Move Assist Leave with Runway",
      "requires": [
        {
          "or": [
            {
              "and": [
                "HiJump",
                {
                  "heatFrames": 50
                }
              ]
            },
            {
              "and": [
                "SpaceJump",
                {
                  "heatFrames": 105
                }
              ]
            }
          ]
        }
      ],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 5,
          "openEnd": 0
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 50
            }
          ]
        },
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            {
              "heatFrames": 110
            }
          ]
        }
      ]
    },
    {
      "id": 44,
      "link": [
        5,
        2
      ],
      "name": "MidAir SpringBall",
      "requires": [
        "canSpringBallJumpMidAir",
        {
          "heatFrames": 200
        }
      ]
    },
    {
      "id": 45,
      "link": [
        5,
        2
      ],
      "name": "IBJ",
      "requires": [
        {
          "or": [
            {
              "and": [
                "canIBJ",
                {
                  "heatFrames": 1020
                }
              ]
            },
            {
              "and": [
                "canDoubleBombJump",
                {
                  "heatFrames": 510
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "id": 46,
      "link": [
        5,
        2
      ],
      "name": "Jump into IBJ",
      "requires": [
        {
          "or": [
            {
              "and": [
                "canJumpIntoIBJ",
                {
                  "heatFrames": 450
                }
              ]
            },
            {
              "and": [
                "canDoubleBombJump",
                {
                  "heatFrames": 300
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "id": 47,
      "link": [
        5,
        2
      ],
      "name": "Walljump into Unmorph Bomb Boost",
      "requires": [
        "canInsaneWalljump",
        "canWallJumpInstantMorph",
        "canUnmorphBombBoost",
        "canDownGrab",
        {
          "heatFrames": 215
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Use a fully delayed walljump to gain enough horizontal distance to place a bomb past the lip of the overhang.",
        "Unmorph to hover in the air above the bomb while it explodes.",
        "Ride the explosion into a down-grab to reach the ledge."
      ]
    },
    {
      "id": 48,
      "link": [
        5,
        2
      ],
      "name": "Sova Boost (Walljump)",
      "requires": [
        {
          "notable": "Sova Boost"
        },
        "canInsaneWalljump",
        "canWallJumpInstantMorph",
        "canNeutralDamageBoost",
        "canCameraManip",
        {
          "heatFrames": 830
        },
        {
          "enemyDamage": {
            "enemy": "Sova",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "heatFrames": 90
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Wait for the global Sova to begin climbing the wall below the door.",
        "Time a walljump into instant morph where Samus boosts off of the Sova with the right timing to bounce up to the door's ledge.",
        "The jump must be a fully delayed walljump.",
        "Normalizing the camera can help with timing the walljump.",
        "The damage boost can be attempted again when the Sova climbs down the left wall, or by knocking it off the wall with a Super Missile."
      ]
    },
    {
      "id": 49,
      "link": [
        5,
        2
      ],
      "name": "Sova Boost (Reserve Double Damage Boost)",
      "requires": [
        {
          "notable": "Sova Boost"
        },
        "canCrouchJump",
        "canInsaneJump",
        {
          "or": [
            "canMidAirMorph",
            "canOffScreenMovement"
          ]
        },
        "canCameraManip",
        "canReserveDoubleDamageBoost",
        {
          "heatFrames": 830
        },
        {
          "autoReserveTrigger": {
            "minReserveEnergy": 85
          }
        },
        {
          "enemyDamage": {
            "enemy": "Sova",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "heatFrames": 90
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Wait for the global Sova to begin climbing the wall below the door.",
        "Have Reserves set to manual and couch jump up above the Sova as it turns the lip of the ledge.",
        "Before touching the Sova, pause, so that Samus will recieve a small damage boost followed by pause screen appearing.",
        "Set Reserves back to auto which will end Samus' IFrames enabling a second damage boost.",
        "Without Morphball, this requires a blind damage boost."
      ]
    },
    {
      "id": 50,
      "link": [
        5,
        2
      ],
      "name": "Sova Boost (Reserve Delay Bomb Boost and Sova Boost)",
      "requires": [
        {
          "notable": "Sova Boost"
        },
        "h_canBombThings",
        "canMidAirMorph",
        "canTrickyJump",
        "canCrouchJump",
        "canManageReserves",
        "canCameraManip",
        {
          "heatFrames": 830
        },
        {
          "autoReserveTrigger": {
            "minReserveEnergy": 85
          }
        },
        {
          "enemyDamage": {
            "enemy": "Sova",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "heatFrames": 90
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Wait for the global Sova to begin climbing the wall below the door.",
        "Time a crouch jump to touch the Sova as it begins to climb lip of the ledge to the door.",
        "Just before the collision, place a Bomb or Power Bomb.",
        "Reserves will activate which will suspend Samus in the air on top of the Bomb while it explodes.",
        "This will give two height boosts, allowing Samus to reach the door."
      ]
    },
    {
      "id": 51,
      "link": [
        5,
        3
      ],
      "name": "Base",
      "requires": [
        "canDodgeWhileShooting",
        {
          "heatFrames": 350
        }
      ]
    },
    {
      "id": 52,
      "link": [
        5,
        3
      ],
      "name": "Tank a Hit",
      "requires": [
        {
          "heatFrames": 160
        },
        {
          "enemyDamage": {
            "enemy": "Sm. Dessgeega",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "id": 53,
      "link": [
        5,
        4
      ],
      "name": "Plasma Kill",
      "requires": [
        "Plasma",
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "id": 54,
      "link": [
        5,
        4
      ],
      "name": "Screw Kill",
      "requires": [
        "ScrewAttack",
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "id": 55,
      "link": [
        5,
        4
      ],
      "name": "Ammo Kill",
      "requires": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Sm. Dessgeega",
                "Sm. Dessgeega"
              ]
            ],
            "explicitWeapons": [
              "Missile",
              "Super"
            ]
          }
        },
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "id": 56,
      "link": [
        5,
        4
      ],
      "name": "Intermediate Beam Kill",
      "requires": [
        {
          "or": [
            "Wave",
            "Spazer"
          ]
        },
        {
          "heatFrames": 200
        }
      ]
    },
    {
      "id": 57,
      "link": [
        5,
        4
      ],
      "name": "Power Beam Kill",
      "requires": [
        {
          "heatFrames": 350
        }
      ]
    },
    {
      "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": []
    },
    {
      "link": [
        2,
        2
      ],
      "name": "Base (Unlock Door)",
      "requires": [],
      "unlocksDoors": [
        {
          "types": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 50
            }
          ]
        },
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            {
              "heatFrames": 110
            }
          ]
        }
      ]
    },
    {
      "link": [
        2,
        2
      ],
      "name": "Base (Come In Normally)",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": []
    }
  ],
  "nextStratId": 60,
  "notables": [
    {
      "id": 1,
      "name": "10 Power Bomb Crystal Flash",
      "note": [
        "Use a Sm. Dessgeega to collect a Power Bomb, to be able to perform a Crystal Flash with a capacity of only 10 Power Bombs.",
        "Normalized whole-room movement can be used to manipulate the Sm. Dessgeegas, to be able to do this strat reliably without heat protection.",
        "For details, see the individual strats, as the specific technique depends on whether entering from the left or right side of the room."
      ]
    },
    {
      "id": 2,
      "name": "Sova Boost",
      "note": [
        "Wait for the global Sova to begin climbing the wall below the right side door.",
        "Jump into it just before it reaches the ledge that the door is on to gain height through a neutral damage boost.",
        "The jump can be either a difficult walljump or a crouch jump combined with a type of Bomb and the refill effect of Reserve tanks.",
        "Maniputlating the camera can help normalizing the timing of the jump."
      ]
    },
    {
      "id": 3,
      "name": "Left Door Frozen Sova Step",
      "note": [
        "Guide the morph tunnel Sova on top of the shot blocks by keeping it on camera.",
        "Move the camera away once it is on top of the shot blocks.  It will not move while off camera.",
        "Stand directly below the OffCamera Sova and fire up and jump to break the shot blocks.",
        "Either lower its health while guiding it, or as it begins to fall, there is time.",
        "As it falls, shoot again to freeze it at the right height.",
        "As a backup, the same Sova can be frozen on the left wall, dropped from the shot blocks again, or frozen on the right wall."
      ]
    },
    {
      "id": 4,
      "name": "Sova Morph Only Boost",
      "note": [
        "Use a very well timed and precise walljump into morph to hit the global Sova so that the damage bonks Samus up to the door ledge.",
        "Aim for the lowest part of slope looking wall tile, where it does not look possible to make contact with a walljump, and fully delay the jump.",
        "To try again, the Sova loops to the left side wall. Or a Super can knock it off the wall to climb the right side again."
      ]
    },
    {
      "id": 5,
      "name": "Speedjump (Right to Left)",
      "note": [
        "This is a precise strat which requires maximum run speed.",
        "Perform a spin jump right next to the left wall.",
        "Shoot the block as Samus is about to leap through it, and land next to the door.",
        "A down grab makes this a little easier."
      ]
    },
    {
      "id": 6,
      "name": "Speedjump (Left to Right)",
      "note": [
        "This is a precise strat which requires maximum run speed.",
        "Jump when passing under the floating platform and barely avoid hitting the rightmost wall.",
        "Wall jump on the horizontal spire near to the door."
      ]
    }
  ],
  "nextNotableId": 7
}