canDash (Implicit)

The ability to use the dash button to gain run speed.

Dev note: This is ability is very simple, but it is useful to model since dashing may not be possible in some contexts, such as while carrying a blue suit.

Difficulty filter

Strats ()

From: 1
Top Left Door
To: 4
Top Junction (Right of Spikes)

Requires:

"canUseIFrames"
"h_pauseAbuseMinimalReserveRefill"
{
  "or": [
    "canDash",
    {
      "and": [
        "h_pauseAbuseMinimalReserveRefill",
        {
          "or": [
            "h_horizontalDamageBoostWithBlueSuit",
            "h_pauseAbuseMinimalReserveRefill"
          ]
        }
      ]
    }
  ]
}
From: 1
Top Left Door
To: 4
Top Junction (Right of Spikes)

Run and jump into an airball, pressing pause just as Samus hits the ceiling, in order to unequip Spring Ball to reset fall speed.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 28
  }
}

Requires:

"h_speedJump"
"canTrickyJump"
"canLateralMidAirMorph"
"canSpringFling"

Dev note: This can be done with 26 tiles of other-room runway, but it would probably require a higher movement tech.

From: 1
Top Left Door
To: 4
Top Junction (Right of Spikes)

Requires:

"canDash"
{
  "spikeHits": 1
}
{
  "or": [
    "canUseIFrames",
    {
      "spikeHits": 1
    }
  ]
}
From: 1
Top Left Door
To: 4
Top Junction (Right of Spikes)

Requires:

"h_storedSpark"
"canDash"
"canHorizontalShinespark"
{
  "shinespark": {
    "frames": 41,
    "excessFrames": 6
  }
}
From: 1
Top Left Door
To: 6
Right of Morph Tunnel with Temporary Blue

Use Springball on the spikes to cross the room with a Speedball. Then bounce into the Morph tunnel and use Springball to bounce all of the way through. It can help to unmorph before the Morph tunnel and use temporary blue to start the bounce into the tunnel.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 5,
    "openEnd": 1,
    "minExtraRunSpeed": "$2.0",
    "maxExtraRunSpeed": "$3.F"
  }
}

Requires:

"h_blueJump"
"canTrickySpringBallBounce"
{
  "or": [
    "canInsaneJump",
    "canChainTemporaryBlue"
  ]
}
{
  "spikeHits": 1
}

Dev note: Higher and lower run speeds can also work but may need to jump earlier or take additional spike hits.

From: 2
Bottom Left Door
To: 3
Item

Charge a Shinespark running left, then get blue speed by running back to the right to jump through the Boyons.

Requires:

"canCarefulJump"
"canShinechargeMovementComplex"
{
  "getBlueSpeed": {
    "usedTiles": 34,
    "openEnd": 0
  }
}
"h_blueJump"
{
  "canShineCharge": {
    "usedTiles": 34,
    "openEnd": 0
  }
}
{
  "shinespark": {
    "frames": 128,
    "excessFrames": 6
  }
}

Dev note: The out-of-order requirements are to work around the tests' assumption that a getBlueSpeed would lose the shinecharge.

From: 2
Bottom Left Door
To: 3
Item

Wall jump up 5 times, placing a Power Bomb precisely in the top right corner to overload PLMs with as few Power Bombs as possible. This only works in direct G-mode with the item still uncollected.

Entrance condition:

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

Requires:

"canPowerBombItemOverloadPLMs"
{
  "notable": "G-Mode Up with Power Bombs"
}
{
  "itemNotCollectedAtNode": 3
}
"canConsecutiveWalljump"
"Morph"
{
  "or": [
    "canRiskPermanentLossOfAccess",
    {
      "and": [
        "canComplexGMode",
        "canLongXRayClimb",
        "canBeVeryPatient"
      ]
    }
  ]
}
{
  "ammo": {
    "type": "PowerBomb",
    "count": 5
  }
}
"canBePatient"
{
  "or": [
    "Ice",
    "canTrickyDodgeEnemies",
    "ScrewAttack",
    {
      "and": [
        "h_getBlueSpeedMaxRunway",
        "h_blueJump"
      ]
    },
    {
      "enemyKill": {
        "enemies": [
          [
            "Boyon",
            "Boyon",
            "Boyon",
            "Boyon"
          ]
        ],
        "excludedWeapons": [
          "Bombs"
        ]
      }
    },
    {
      "enemyDamage": {
        "enemy": "Boyon",
        "type": "contact",
        "hits": 1
      }
    },
    {
      "and": [
        "canBeVeryPatient",
        "h_useMorphBombs"
      ]
    }
  ]
}

Dev note: Using this strat doesn't have canRiskPermanentLossOfAccess if the player could x-ray climb instead: this requires direct G-mode and Samus can freely doorstuck here, and there is no benefit to going to the item instead of the top left door, unless the item is there. FIXME: Placing the Power Bombs lower, on the magic tile, could overload PLMs with fewer, likely with as low as 2 Power Bombs.

From: 2
Bottom Left Door
To: 5
Bottom Junction (Right of Boyons)

Shinespark up to the item, touch it, and return through the speed block that is now air. Exit G-mode below to collect the item.

Entrance condition:

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

Requires:

"canComplexGMode"
"canRemoteAcquire"
{
  "or": [
    {
      "and": [
        "canTrivialUseFrozenEnemies",
        "h_shinechargeMaxRunway"
      ]
    },
    {
      "and": [
        "canShinechargeMovementComplex",
        {
          "getBlueSpeed": {
            "usedTiles": 34,
            "openEnd": 0
          }
        },
        "h_blueJump",
        {
          "canShineCharge": {
            "usedTiles": 34,
            "openEnd": 0
          }
        }
      ]
    },
    {
      "and": [
        {
          "canShineCharge": {
            "usedTiles": 25,
            "openEnd": 2
          }
        },
        {
          "enemyKill": {
            "enemies": [
              [
                "Boyon",
                "Boyon",
                "Boyon",
                "Boyon"
              ]
            ],
            "excludedWeapons": [
              "Bombs"
            ]
          }
        }
      ]
    },
    {
      "blueSuitShinecharge": {}
    },
    {
      "and": [
        "canInsaneJump",
        {
          "canShineCharge": {
            "usedTiles": 14,
            "openEnd": 0
          }
        }
      ]
    },
    {
      "and": [
        "canInsaneJump",
        {
          "canShineCharge": {
            "usedTiles": 14,
            "openEnd": 1
          }
        },
        {
          "enemyKill": {
            "enemies": [
              [
                "Boyon"
              ]
            ]
          }
        }
      ]
    }
  ]
}
{
  "shinespark": {
    "frames": 121,
    "excessFrames": 5
  }
}

Collects items: 3

Dev note: The shinespark frames could be reduced with more items or tech, but in direct G-mode, Samus will be at low Energy and need an energy free shinespark. The out-of-order requirements in the blue jump case are to work around the tests' assumption that a getBlueSpeed would lose the shinecharge.

From: 2
Bottom Left Door
To: 5
Bottom Junction (Right of Boyons)

Jump at the last tile to make it through all of the Boyons.

Requires:

"canDash"
"ScrewAttack"
{
  "or": [
    "canCarefulJump",
    "SpaceJump",
    "h_speedJump"
  ]
}
From: 4
Top Junction (Right of Spikes)
To: 1
Top Left Door

Requires:

"canUseIFrames"
"h_pauseAbuseMinimalReserveRefill"
{
  "or": [
    "canDash",
    {
      "and": [
        "h_pauseAbuseMinimalReserveRefill",
        {
          "or": [
            "h_horizontalDamageBoostWithBlueSuit",
            "h_pauseAbuseMinimalReserveRefill"
          ]
        }
      ]
    }
  ]
}
From: 4
Top Junction (Right of Spikes)
To: 1
Top Left Door

Requires:

"canDash"
{
  "spikeHits": 1
}
{
  "or": [
    "canUseIFrames",
    {
      "spikeHits": 1
    }
  ]
}
From: 4
Top Junction (Right of Spikes)
To: 1
Top Left Door

Requires:

"h_storedSpark"
"canDash"
"canHorizontalShinespark"
{
  "or": [
    {
      "shinespark": {
        "frames": 44,
        "excessFrames": 7
      }
    },
    {
      "and": [
        "canShinechargeMovementTricky",
        {
          "shinespark": {
            "frames": 38,
            "excessFrames": 0
          }
        }
      ]
    },
    {
      "and": [
        "canShinechargeMovementTricky",
        "canSpeedyJump",
        {
          "shinespark": {
            "frames": 35,
            "excessFrames": 0
          }
        }
      ]
    }
  ]
}
From: 5
Bottom Junction (Right of Boyons)
To: 2
Bottom Left Door

Jump at the last tile to make it through all of the Boyons.

Requires:

"canDash"
"ScrewAttack"
{
  "or": [
    "canCarefulJump",
    "SpaceJump",
    "h_speedJump"
  ]
}
From: 1
Left Door
To: 1
Left Door

Leaving with upward momentum is possible in three ways: 1) Most easily, with a momentum-conserving morph against the ceiling through the transition, 2) With a momentum-conserving turnaround through the transition, or 3) Jumping specifically with a extra run speed $5.2 or $5.3 and aiming down through the transition. For the first two methods, back into the corner at the start of runway.

Requires:

"h_speedJump"
{
  "or": [
    "canMomentumConservingMorph",
    "canInsaneJump"
  ]
}

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 3,
    "runway": {
      "length": 38,
      "openEnd": 0
    },
    "obstruction": [
      5,
      2
    ]
  }
}

Dev note: Max extra run speed $6.5. Using the full runway, the momentum-conserving morph has a 4-frame window for the jump, and between a 2-frame and 5-frame window for the morph depending on the jump timing (with later jumps giving a bigger window for the morph); these windows can be more narrow depending on what is required in the next room. The momentum-conserving turnaround has a 2-frame window for the jump, and either a 3-frame or 5-frame for the turnaround (with the last-frame jump giving the larger window for the turnaround); again the windows can be more narrow depending on what is required in the next room. The aim-down method requires specific positioning to ensure Samus barely clears the door ledge with a frame-perfect jump.

From: 2
Right Door
To: 2
Right Door

Leaving with upward momentum is possible in three ways: 1) Most easily, with a momentum-conserving morph against the ceiling through the transition, 2) With a momentum-conserving turnaround through the transition, or 3) Jumping specifically with a extra run speed $5.2 or $5.3 and aiming down through the transition. For the first two methods, avoid backing into the corner at the start of runway; instead press against it and turn around, to put Samus into a better position. An even better position is obtained by backing up an additional 8 to 12 pixels from the runway start (again, pressing forward into the corner, not backing into it), or equivalently, pressing and releasing an angle button 4 to 6 times to arm pump while running.

Requires:

"h_speedJump"
{
  "or": [
    "canMomentumConservingMorph",
    "canInsaneJump"
  ]
}

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 3,
    "runway": {
      "length": 38,
      "openEnd": 0
    },
    "obstruction": [
      3,
      0
    ]
  }
}

Dev note: Max extra run speed $6.1. Using the full runway (either backing into the corner or turning around from it), the momentum-conserving morph has a 5-frame window for the jump, and either a 2-frame window or 3-frame window for the morph depending on the jump timing; these windows can be more narrow depending on what is required in the next room. The momentum-conserving turnaround requires a frame-perfect (last-frame) jump and a frame-perfect turnaround. The aim-down method requires specific positioning to ensure Samus barely clears the door ledge with a frame-perfect jump.

From: 1
Top Left Door
To: 1
Top Left Door

Overload the scroll PLMs which are one tile to the left of the bomb blocks, then pass through them. Refill at the ship, then return.

Entrance condition:

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

Requires:

"canComplexGMode"
{
  "refill": [
    "Energy",
    "Missile",
    "Super",
    "PowerBomb"
  ]
}
{
  "or": [
    "SpaceJump",
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    "canTrickyWalljump",
    {
      "and": [
        "canSpeedyJump",
        {
          "or": [
            "HiJump",
            "canSpringBallJumpMidAir",
            "canWalljump"
          ]
        }
      ]
    },
    {
      "and": [
        "h_shinechargeMaxRunway",
        "canMidairShinespark",
        {
          "or": [
            {
              "shinespark": {
                "frames": 29,
                "excessFrames": 1
              }
            },
            {
              "and": [
                "canShinechargeMovementComplex",
                "h_speedJump",
                {
                  "shinespark": {
                    "frames": 22,
                    "excessFrames": 1
                  }
                }
              ]
            },
            {
              "and": [
                "HiJump",
                {
                  "shinespark": {
                    "frames": 17,
                    "excessFrames": 11
                  }
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}
From: 1
Top Left Door
To: 7
Junction (Left Ledge Below Bomb Blocks)

Entrance condition:

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

Requires:

{
  "or": [
    "canBlueSpaceJump",
    {
      "and": [
        "canSpringBallBounce",
        "canTrickyJump",
        "h_blueJump"
      ]
    },
    "canLongChainTemporaryBlue"
  ]
}

Clears obstacles: A

From: 3
Top Right Door
To: 1
Top Left Door

Use the runway near the Power Bomb room door to jump to the left, morphing as Samus begins descending, to bounce through the Bomb blocks. Any time while bouncing, hold an angle button and unmorph to gain temporary blue; then chain it to reach the door with temporary blue. The jump can be set up by using the full runway with a one-tap shortcharge, with the tap being at the top of the lowest slope.

Requires:

{
  "notable": "Big Jump with Blue Speed"
}
{
  "notable": "Big Jump Leave With Temporary Blue"
}
"canTrickyJump"
"Morph"
"canLateralMidAirMorph"
{
  "getBlueSpeed": {
    "usedTiles": 30,
    "openEnd": 2
  }
}
"h_blueJump"
"canLongChainTemporaryBlue"

Exit condition:

{
  "leaveWithTemporaryBlue": {}
}

Unlocks doors:

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

Use the runway near the top right door to jump towards the top left bomb blocks and break them using the blue speed from SpeedBooster. This can be done using the full runway, with a one-tap shortcharge, where the tap is at the top of the lowest slope, and the jump is at the top of the last slope. Alternatively, a controlled release of the jump button works in place of the shortcharge, where the bottom of the thick dark line in the background at the top of the room works as a visual cue. Aiming down or morphing before hitting the wall can help make the jump slightly less precise. Note that it is possible to jump all the way to the ledge above the bomb blocks, place a Power Bomb, then drop down, but it isn't typically easier.

Requires:

{
  "notable": "Big Jump with Blue Speed"
}
"canTrickyJump"
{
  "or": [
    {
      "obstaclesCleared": [
        "A"
      ]
    },
    "h_bombThings"
  ]
}
{
  "getBlueSpeed": {
    "usedTiles": 30,
    "openEnd": 2
  }
}
"h_blueJump"

Clears obstacles: A

From: 3
Top Right Door
To: 1
Top Left Door

Use the runway near the top right door to jump towards the top left bomb blocks and break them using the blue speed from SpeedBooster. This can be done using the full runway, with a one-tap shortcharge, where the tap is at the top of the lowest slope, and the jump is at the top of the last slope. Alternatively, a controlled release of the jump button works in place of the shortcharge, where the bottom of the thick dark line in the background at the top of the room works as a visual cue. While midair, morph once Samus begins descending to bounce through all of the Bomb blocks.

Requires:

{
  "notable": "Big Jump with Blue Speed"
}
"canTrickyJump"
"Morph"
"canLateralMidAirMorph"
{
  "getBlueSpeed": {
    "usedTiles": 30,
    "openEnd": 2
  }
}
"h_blueJump"

Clears obstacles: A

From: 3
Top Right Door
To: 1
Top Left Door

Gain speed using the long runway at the top-right of room, do a big jump across the room into a mockball or speedball, then use controlled bounces to make it through the top-left door.

Requires:

{
  "obstaclesCleared": [
    "A",
    "C"
  ]
}
"h_speedJump"
"canInsaneJump"

Exit condition:

{
  "leaveWithSpringBallBounce": {
    "remoteRunway": {
      "length": 31,
      "openEnd": 1,
      "steepUpTiles": 9
    },
    "landingRunway": {
      "length": 3,
      "openEnd": 1
    },
    "minExtraRunSpeed": "$4.9",
    "movementType": "controlled"
  }
}

Unlocks doors:

{"types":["ammo"],"requires":[],"useImplicitRequires":false}

Dev note: Unlocking doors would be done ahead-of-time when the door is opened, i.e. when obstacle 'C' is set.

From: 3
Top Right Door
To: 1
Top Left Door

It is possible to save a small amount of energy by jumping from the upper right ledge, instead of from the plateau. Use the cues in the background to spark at a precise height.

Requires:

"canDash"
"canInsaneJump"
"canHorizontalShinespark"
{
  "useFlashSuit": {}
}
{
  "or": [
    {
      "shinespark": {
        "frames": 95,
        "excessFrames": 34
      }
    },
    {
      "and": [
        "HiJump",
        {
          "shinespark": {
            "frames": 90,
            "excessFrames": 34
          }
        }
      ]
    }
  ]
}

Clears obstacles: A

Dev note: This is only useful without SpeedBooster and without a way to refill at the ship - i.e. without wall jump to get back up.

From: 3
Top Right Door
To: 1
Top Left Door

Use the runway near the top right door to jump towards the top left bomb blocks and break them using the blue speed from SpeedBooster. This can be done using the full runway, with a one-tap shortcharge, where the tap is at the top of the lowest slope, and the jump is at the top of the last slope. Alternatively, a controlled release of the jump button works in place of the shortcharge, where the bottom of the thick dark line in the background at the top of the room works as a visual cue. Aiming down before hitting the wall can help make the jump slightly less precise. Use a flash suit to get through the remaining blocks.

Requires:

{
  "notable": "Big Jump with Blue Speed"
}
{
  "getBlueSpeed": {
    "usedTiles": 30,
    "openEnd": 2
  }
}
"h_blueJump"
"canHorizontalShinespark"
{
  "useFlashSuit": {}
}
{
  "shinespark": {
    "frames": 52,
    "excessFrames": 45
  }
}

Clears obstacles: A

From: 4
Bottom Right Door
To: 1
Top Left Door

Store the spark on the right side of the ledge. Run left and do a big jump towards the top left door and then midair spark at the right time. Do not jump to max height or Samus will run out of shinecharge frames, instead short the jump a little. The lines in the background make for a good way to measure height.

Requires:

"canMidairShinespark"
"canShinechargeMovementComplex"
{
  "canShineCharge": {
    "usedTiles": 19,
    "steepUpTiles": 2,
    "steepDownTiles": 1,
    "openEnd": 2
  }
}
{
  "or": [
    {
      "and": [
        "h_speedJump",
        {
          "shinespark": {
            "frames": 95,
            "excessFrames": 33
          }
        }
      ]
    },
    {
      "and": [
        "h_speedJump",
        "canShinechargeMovementTricky",
        {
          "shinespark": {
            "frames": 87,
            "excessFrames": 33
          }
        }
      ]
    },
    {
      "shinespark": {
        "frames": 104,
        "excessFrames": 33
      }
    },
    {
      "and": [
        "canShinechargeMovementTricky",
        {
          "shinespark": {
            "frames": 103,
            "excessFrames": 33
          }
        }
      ]
    }
  ]
}

Clears obstacles: A

From: 4
Bottom Right Door
To: 1
Top Left Door

Store the spark on the right side of the ledge. Run left and do a big jump towards the gauntlet door and then midair spark at the right time. Do not jump to max height or Samus will run out of shinecharge frames, instead short the jump a little. The lines in the background make for a good way to measure height.

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}
"canMidairShinespark"
"canShinechargeMovementComplex"
{
  "canShineCharge": {
    "usedTiles": 19,
    "steepUpTiles": 2,
    "steepDownTiles": 1,
    "openEnd": 2
  }
}
{
  "or": [
    {
      "and": [
        "h_speedJump",
        {
          "shinespark": {
            "frames": 96
          }
        }
      ]
    },
    {
      "and": [
        "h_speedJump",
        "canShinechargeMovementTricky",
        {
          "shinespark": {
            "frames": 88
          }
        }
      ]
    },
    {
      "shinespark": {
        "frames": 105
      }
    }
  ]
}

Exit condition:

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

Unlocks doors:

{"types":["ammo"],"requires":[],"useImplicitRequires":false}

Dev note: Unlocking the door is free since the obstacle C cleared means that any lock was already taken care of.

From: 4
Bottom Right Door
To: 1
Top Left Door

From the right door, run and jump while on the dirt mound directly right of the ship. Then SpringBall Jump to reach the Bomb blocks leading to the top left door.

Requires:

"HiJump"
"h_getBlueSpeedMaxRunway"
"h_blueJump"
"canLateralMidAirMorph"
"canTrickySpringBallJump"
From: 4
Bottom Right Door
To: 1
Top Left Door

Requires:

"h_storedSpark"
"canDash"
"canHorizontalShinespark"
{
  "or": [
    {
      "shinespark": {
        "frames": 103,
        "excessFrames": 34
      }
    },
    {
      "and": [
        "HiJump",
        {
          "shinespark": {
            "frames": 99,
            "excessFrames": 34
          }
        }
      ]
    }
  ]
}

Clears obstacles: A

From: 5
Ship
To: 1
Top Left Door

Shinespark diagonally from the small hill left of the ship to break part way into the hidden bomb wall, then use Bombs or another means to continue to the left.

Requires:

"h_shinechargeMaxRunway"
{
  "or": [
    {
      "shinespark": {
        "frames": 39,
        "excessFrames": 2
      }
    },
    {
      "and": [
        "canShinechargeMovement",
        "canMidairShinespark",
        {
          "or": [
            {
              "shinespark": {
                "frames": 32,
                "excessFrames": 3
              }
            },
            {
              "and": [
                "HiJump",
                {
                  "shinespark": {
                    "frames": 28,
                    "excessFrames": 2
                  }
                }
              ]
            },
            {
              "and": [
                "h_speedJump",
                "HiJump",
                {
                  "shinespark": {
                    "frames": 24,
                    "excessFrames": 3
                  }
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}
{
  "or": [
    "h_destroyBombWalls",
    {
      "obstaclesCleared": [
        "A"
      ]
    }
  ]
}

Clears obstacles: A

From: 5
Ship
To: 3
Top Right Door

Requires:

"h_shinechargeMaxRunway"
{
  "or": [
    {
      "shinespark": {
        "frames": 78,
        "excessFrames": 11
      }
    },
    {
      "and": [
        "canShinechargeMovement",
        {
          "shinespark": {
            "frames": 73,
            "excessFrames": 15
          }
        }
      ]
    },
    {
      "and": [
        "canShinechargeMovement",
        "canMidairShinespark",
        {
          "shinespark": {
            "frames": 65,
            "excessFrames": 15
          }
        }
      ]
    },
    {
      "and": [
        "canShinechargeMovement",
        "canMidairShinespark",
        "HiJump",
        {
          "shinespark": {
            "frames": 61,
            "excessFrames": 14
          }
        }
      ]
    },
    {
      "and": [
        "canShinechargeMovementComplex",
        "canMidairShinespark",
        "HiJump",
        "h_speedJump",
        {
          "shinespark": {
            "frames": 55,
            "excessFrames": 13
          }
        }
      ]
    }
  ]
}
From: 5
Alcatraz Door
To: 8
Central Junction

Wait 3 minutes for a global Geemer to waddle over, or shoot a Super 20 to 30 seconds after entering the room to knock it off the ceiling and save a lot of time. Freeze the Geemer as it turns onto the middle slope of the left wall to escape - it helps to freeze the Geemer from below. Alternatively, use a Super to knock it off the wall and freeze it mid-air.

Requires:

"h_ZebesIsAwake"
"canMidAirMorph"
"canTrickyUseFrozenEnemies"
{
  "or": [
    "canBeVeryPatient",
    {
      "ammo": {
        "type": "Super",
        "count": 1
      }
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canTrickyDodgeEnemies",
        {
          "or": [
            "canDash",
            "h_crouchJumpDownGrab",
            "canInsaneJump"
          ]
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canTrickyJump",
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        }
      ]
    }
  ]
}
From: 8
Central Junction
To: 1
Top Left Door

After the Geemer is near, destroy the bomb wall using blue speed from the right. This opens a path for the Geemer to hit Samus through the transition.

Requires:

"h_ZebesIsAwake"
{
  "or": [
    {
      "haveBlueSuit": {}
    },
    {
      "and": [
        {
          "getBlueSpeed": {
            "usedTiles": 25,
            "steepUpTiles": 3,
            "steepDownTiles": 3,
            "openEnd": 1
          }
        },
        "h_blueJump"
      ]
    },
    {
      "and": [
        {
          "or": [
            {
              "canShineCharge": {
                "usedTiles": 25,
                "steepUpTiles": 3,
                "steepDownTiles": 3,
                "openEnd": 1
              }
            },
            {
              "useFlashSuit": {}
            }
          ]
        },
        {
          "shinespark": {
            "frames": 2,
            "excessFrames": 2
          }
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

{"types":["ammo"],"requires":[]}
From: 8
Central Junction
To: 1
Top Left Door

Requires:

{
  "or": [
    {
      "haveBlueSuit": {}
    },
    {
      "and": [
        {
          "getBlueSpeed": {
            "usedTiles": 25,
            "steepUpTiles": 3,
            "steepDownTiles": 3,
            "openEnd": 1
          }
        },
        "h_blueJump",
        "canCarefulJump"
      ]
    },
    {
      "and": [
        {
          "or": [
            {
              "canShineCharge": {
                "usedTiles": 25,
                "steepUpTiles": 3,
                "steepDownTiles": 3,
                "openEnd": 1
              }
            },
            {
              "useFlashSuit": {}
            }
          ]
        },
        "canShinechargeMovement",
        {
          "shinespark": {
            "frames": 2,
            "excessFrames": 2
          }
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 22,
    "openEnd": 0,
    "steepUpTiles": 4,
    "steepDownTiles": 2
  }
}

Unlocks doors:

{"types":["ammo"],"requires":[]}
From: 8
Central Junction
To: 1
Top Left Door

Break the bomb wall while blue, or spark diagonally next to it.

Requires:

{
  "or": [
    {
      "and": [
        {
          "getBlueSpeed": {
            "usedTiles": 25,
            "steepUpTiles": 3,
            "steepDownTiles": 3,
            "openEnd": 1
          }
        },
        "canCarefulJump",
        "h_blueJump"
      ]
    },
    {
      "and": [
        {
          "canShineCharge": {
            "usedTiles": 25,
            "steepUpTiles": 3,
            "steepDownTiles": 3,
            "openEnd": 1
          }
        },
        "canShinechargeMovement",
        {
          "shinespark": {
            "frames": 2,
            "excessFrames": 2
          }
        }
      ]
    }
  ]
}

Dev note: It is possible to come in the top right door, charge a spark, use a bounce ball, or blue space jump, but this is a bit easier anyway.

From: 8
Central Junction
To: 8
Central Junction

Requires:

"h_ZebesIsAwake"
{
  "cycleFrames": 1860
}
{
  "or": [
    {
      "resetRoom": {
        "nodes": [
          3,
          4,
          6,
          7
        ]
      }
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1
            ]
          }
        },
        {
          "cycleFrames": 420
        },
        {
          "or": [
            "ScrewAttack",
            "h_useMorphBombs",
            {
              "and": [
                {
                  "getBlueSpeed": {
                    "usedTiles": 25,
                    "steepUpTiles": 3,
                    "steepDownTiles": 3,
                    "openEnd": 1
                  }
                },
                "canCarefulJump",
                "h_blueJump"
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              2
            ]
          }
        },
        {
          "cycleFrames": 240
        },
        "Morph"
      ]
    },
    {
      "and": [
        "Morph",
        {
          "resetRoom": {
            "nodes": [
              5
            ]
          }
        },
        {
          "cycleFrames": 420
        },
        {
          "or": [
            "h_bombThings",
            {
              "and": [
                "SpaceJump",
                "canMidAirMorph",
                "canCarefulJump"
              ]
            },
            {
              "and": [
                {
                  "notable": "Alcatraz Escape"
                },
                "canPreciseWalljump",
                "canConsecutiveWalljump",
                "canWallJumpInstantMorph"
              ]
            },
            {
              "and": [
                "canTrickySpringBallJump",
                "canTrickyJump"
              ]
            },
            {
              "and": [
                "HiJump",
                "canTrickyDashJump",
                "canMidAirMorph"
              ]
            }
          ]
        }
      ]
    }
  ]
}

Resets obstacles: R-Mode

Farm cycle drops: 11 Geemer (blue)

Dev note: A two-way farming strat could be added, e.g. if it is possible to reset the room at both the top-right and the bottom.

From: 2
Right Door
To: 2
Right Door

Requires:

"Morph"
"Missile"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "cycleFrames": 930
}
{
  "or": [
    "canDash",
    {
      "cycleFrames": 270
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 8 Grey Space Pirate (standing), 2 Grey Space Pirate (wall)

From: 2
Right Door
To: 2
Right Door

This strat is slower but only requires one of the two doors to be unlocked.

Requires:

"Morph"
"Missile"
{
  "or": [
    {
      "resetRoom": {
        "nodes": [
          1
        ]
      }
    },
    {
      "resetRoom": {
        "nodes": [
          2
        ]
      }
    }
  ]
}
{
  "cycleFrames": 930
}
{
  "or": [
    "canDash",
    {
      "cycleFrames": 160
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 4 Grey Space Pirate (standing), 1 Grey Space Pirate (wall)

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "or": [
    {
      "resetRoom": {
        "nodes": [
          1
        ]
      }
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              2
            ]
          }
        },
        {
          "cycleFrames": 60
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "and": [
                "Plasma",
                {
                  "cycleFrames": 330
                }
              ]
            },
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 355
                }
              ]
            },
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 355
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 360
                }
              ]
            },
            {
              "cycleFrames": 390
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 530
        }
      ]
    }
  ]
}

Farm cycle drops: 1 Reo, 3 Mellow

Requires:

{
  "obstaclesCleared": [
    "B"
  ]
}
{
  "getBlueSpeed": {
    "usedTiles": 15,
    "steepUpTiles": 1,
    "steepDownTiles": 1,
    "openEnd": 1
  }
}
"h_blueJump"
"canInsaneJump"
"canTrickySpringBallBounce"
"canChainTemporaryBlue"

Clears obstacles: A, E

Dev note: This assumes getting blue speed using significantly less than the available runway, because at higher speed it would be more difficult to bounce across the room.

From: 1
Left Door
To: 4
Middle Junction (Left of Morph Tunnel)

Requires:

"canDash"
{
  "or": [
    "canCarefulJump",
    {
      "acidFrames": 35
    }
  ]
}
{
  "or": [
    "ScrewAttack",
    {
      "obstaclesCleared": [
        "A",
        "B"
      ]
    }
  ]
}

Clears obstacles: A, B

From: 1
Left Door
To: 4
Middle Junction (Left of Morph Tunnel)

When taking too much acid damage, it is always possible to return to the left and farm.

Requires:

"canDash"
{
  "or": [
    "canCarefulJump",
    {
      "acidFrames": 35
    }
  ]
}
"h_useMorphBombs"

Clears obstacles: A, B

From: 1
Left Door
To: 4
Middle Junction (Left of Morph Tunnel)

When taking too much acid damage, it is always possible to return to the left and farm.

Requires:

"canDash"
{
  "or": [
    "canCarefulJump",
    {
      "acidFrames": 35
    }
  ]
}
{
  "or": [
    {
      "and": [
        "Morph",
        {
          "ammo": {
            "type": "PowerBomb",
            "count": 2
          }
        }
      ]
    },
    {
      "obstaclesCleared": [
        "A"
      ]
    }
  ]
}
{
  "or": [
    "h_usePowerBomb",
    {
      "obstaclesCleared": [
        "B"
      ]
    }
  ]
}

Clears obstacles: A, B

From: 1
Left Door
To: 4
Middle Junction (Left of Morph Tunnel)

Requires:

"h_usePowerBomb"
"canDash"
{
  "useFlashSuit": {}
}
{
  "or": [
    {
      "and": [
        "canHorizontalShinespark",
        {
          "shinespark": {
            "frames": 28,
            "excessFrames": 0
          }
        }
      ]
    },
    {
      "and": [
        "h_additionalBomb",
        {
          "shinespark": {
            "frames": 1,
            "excessFrames": 1
          }
        }
      ]
    }
  ]
}

Clears obstacles: A, B

From: 4
Middle Junction (Left of Morph Tunnel)
To: 1
Left Door

Requires:

"canDash"
{
  "or": [
    "canCarefulJump",
    {
      "acidFrames": 35
    }
  ]
}
{
  "or": [
    "ScrewAttack",
    {
      "and": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "obstaclesCleared": [
            "B"
          ]
        }
      ]
    }
  ]
}

Clears obstacles: A, B

From: 4
Middle Junction (Left of Morph Tunnel)
To: 1
Left Door

After destroying a single bomb block, Samus can spin jump into its spot to quickly escape the acid. To avoid the acid completely, morph quickly at the right height and place a bomb.

Requires:

"canDash"
{
  "or": [
    "canCarefulJump",
    {
      "acidFrames": 35
    }
  ]
}
"h_useMorphBombs"
{
  "or": [
    "canTrickyJump",
    {
      "and": [
        "canCarefulJump",
        "canBombHorizontally",
        {
          "acidFrames": 35
        }
      ]
    },
    {
      "acidFrames": 100
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canTrickyJump",
        "canTrickyWalljump"
      ]
    },
    {
      "and": [
        "canCarefulJump",
        {
          "acidFrames": 35
        }
      ]
    },
    {
      "acidFrames": 100
    }
  ]
}
"h_complexToCarryFlashSuit"

Clears obstacles: A, B

From: 4
Middle Junction (Left of Morph Tunnel)
To: 1
Left Door

Requires:

"canDash"
{
  "or": [
    "canCarefulJump",
    {
      "acidFrames": 35
    }
  ]
}
"Morph"
{
  "ammo": {
    "type": "PowerBomb",
    "count": 3
  }
}

Clears obstacles: A, B

From: 4
Middle Junction (Left of Morph Tunnel)
To: 1
Left Door

Requires:

"h_usePowerBomb"
"canHorizontalShinespark"
{
  "useFlashSuit": {}
}
{
  "or": [
    {
      "shinespark": {
        "frames": 58,
        "excessFrames": 21
      }
    },
    {
      "and": [
        "h_additionalBomb",
        "canDash",
        {
          "shinespark": {
            "frames": 30,
            "excessFrames": 27
          }
        }
      ]
    }
  ]
}

Clears obstacles: A, B

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 6,
    "openEnd": 1,
    "steepUpTiles": 1,
    "steepDownTiles": 1
  }
}

Requires:

"h_blueJump"

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

{"types":["ammo"],"requires":[]}

Dev note: Freeing the Waver with a shinespark is not reliable, and depends on when and where the shinespark starts. Most of these strats kill the Wavers or set up situations where they can't reach the door.

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        "ScrewAttack",
        "canDodgeWhileShooting",
        {
          "cycleFrames": 600
        }
      ]
    },
    {
      "and": [
        "canDash",
        "h_bombThings",
        "canTrickyDodgeEnemies",
        {
          "cycleFrames": 850
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 660
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 2 Waver

Dev note: There is a third Waver on the right side of the room, but generally it would not be worthwhile to cross the room for it.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 6,
    "openEnd": 1,
    "steepUpTiles": 1,
    "steepDownTiles": 1
  }
}

Requires:

"h_blueJump"

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

{"types":["ammo"],"requires":[]}

Dev note: Freeing the Waver with a shinespark is not reliable, and depends on when and where the shinespark starts. Most of these strats kill the Wavers or set up situations where they can't reach the door.

From: 2
Right Door
To: 2
Right Door

Requires:

{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
"canDodgeWhileShooting"
{
  "or": [
    {
      "and": [
        "canDash",
        "ScrewAttack",
        {
          "cycleFrames": 420
        }
      ]
    },
    {
      "and": [
        "canDash",
        "h_bombThings",
        "canTrickyDodgeEnemies",
        {
          "cycleFrames": 630
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 620
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 1 Waver

From: 4
Bottom Right Door
To: 2
Middle Right Door

FIXME: This could use a ledge grab tech to avoid the 4th pirate hit.

Requires:

"canDash"
"canUseIFrames"
"canTrickyJump"
{
  "enemyDamage": {
    "enemy": "Green Space Pirate (standing)",
    "type": "contact",
    "hits": 3
  }
}

Dev note: A shinespark could be used to kill the bottom two pirates.

From: 1
Left Door
To: 1
Left Door

Leaving with upward momentum is possible in three ways: 1) Most easily, with a momentum-conserving morph against the ceiling through the transition, 2) With a momentum-conserving turnaround through the transition, or 3) Jumping specifically with a extra run speed $5.2 or $5.3 and aiming down through the transition. For the first two methods, back into the corner to use the full runway; it helps to use an arm pump to advance a single pixel while running. This can be done by holding an angle button before starting to move forward, then releasing angle while running.

Requires:

"h_speedJump"
{
  "or": [
    "canMomentumConservingMorph",
    "canInsaneJump"
  ]
}

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 2,
    "runway": {
      "length": 45,
      "openEnd": 1
    },
    "obstruction": [
      3,
      0
    ]
  }
}

Dev note: Max extra run speed $7.0. Using the full runway with a single-pixel arm pump, the momentum-conserving morph has a 4-frame window for the jump, and between a 3-frame and 5-frame window for the morph depending on the jump timing (with later jumps giving a bigger window for the morph); these windows will be more narrow if the ceiling in the next room extends past the door shell. The momentum-conserving turnaround requires a frame-perfect jump, with a 4-frame window for the turnaround, again possibly less depending on what is required in the next room. The aim-down method requires specific positioning to ensure Samus barely clears the door ledge with a frame-perfect jump.

From: 2
Right Door
To: 2
Right Door

Leaving with upward momentum is possible in three ways: 1) Most easily, with a momentum-conserving morph against the ceiling through the transition, 2) With a momentum-conserving turnaround through the transition, or 3) Jumping specifically with a extra run speed $5.2 or $5.3 and aiming down through the transition. For the first two methods, back into the corner to use the full runway.

Requires:

"h_speedJump"
{
  "or": [
    "canMomentumConservingMorph",
    "canInsaneJump"
  ]
}

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 2,
    "runway": {
      "length": 45,
      "openEnd": 1
    },
    "obstruction": [
      3,
      0
    ]
  }
}

Dev note: Max extra run speed $7.0. The momentum-conserving morph has a 4-frame window for the jump, and between a 2-frame and 5-frame window for the morph depending on the jump timing (with later jumps giving a bigger window for the morph); these windows will be more narrow if the ceiling in the next room extends past the door shell. The momentum-conserving turnaround requires a frame-perfect jump, with a 4-frame window for the turnaround, again possibly less depending on what is required in the next room. The aim-down method requires specific positioning to ensure Samus barely clears the door ledge with a frame-perfect jump.

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "or": [
    {
      "resetRoom": {
        "nodes": [
          1
        ]
      }
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              2
            ]
          }
        },
        {
          "cycleFrames": 60
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        {
          "or": [
            "Wave",
            "Spazer",
            "Plasma"
          ]
        },
        {
          "cycleFrames": 960
        }
      ]
    },
    {
      "cycleFrames": 1110
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "cycleFrames": 400
    }
  ]
}

Farm cycle drops: 6 Geemer (blue), 3 Waver

From: 2
Left Door
To: 2
Left Door

Requires:

{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "cycleFrames": 270
}
{
  "or": [
    {
      "and": [
        "Gravity",
        {
          "or": [
            "canDash",
            {
              "cycleFrames": 175
            }
          ]
        }
      ]
    },
    {
      "cycleFrames": 270
    }
  ]
}
{
  "or": [
    "Grapple",
    {
      "and": [
        "Wave",
        {
          "cycleFrames": 50
        }
      ]
    },
    {
      "and": [
        "Plasma",
        {
          "cycleFrames": 50
        }
      ]
    },
    {
      "and": [
        "ScrewAttack",
        {
          "cycleFrames": 80
        }
      ]
    },
    {
      "and": [
        "Spazer",
        {
          "cycleFrames": 150
        }
      ]
    },
    {
      "and": [
        "canPseudoScrew",
        {
          "cycleFrames": 180
        }
      ]
    },
    {
      "and": [
        "Ice",
        {
          "cycleFrames": 270
        }
      ]
    },
    {
      "cycleFrames": 420
    }
  ]
}

Farm cycle drops: 3 Sciser

From: 2
Right Door
To: 2
Right Door

Requires:

{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1,
              2
            ]
          }
        },
        "canCameraManip"
      ]
    },
    {
      "resetRoom": {
        "nodes": [
          3
        ]
      }
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 720
                }
              ]
            },
            {
              "and": [
                "Plasma",
                {
                  "cycleFrames": 770
                }
              ]
            },
            {
              "and": [
                "canPseudoScrew",
                {
                  "cycleFrames": 1000
                }
              ]
            },
            {
              "and": [
                "canUseGrapple",
                {
                  "cycleFrames": 1020
                }
              ]
            },
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 1050
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 1080
                }
              ]
            },
            {
              "and": [
                "Ice",
                {
                  "cycleFrames": 1170
                }
              ]
            },
            {
              "and": [
                "canDodgeWhileShooting",
                {
                  "cycleFrames": 1440
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 1010
        }
      ]
    }
  ]
}

Farm cycle drops: 2 Sciser, 2 Kihunter (green)

From: 1
Left Door
To: 1
Left Door

Requires:

"Gravity"
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "and": [
                "Plasma",
                {
                  "cycleFrames": 410
                }
              ]
            },
            {
              "and": [
                "canUseGrapple",
                {
                  "cycleFrames": 440
                }
              ]
            },
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 460
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 540
                }
              ]
            },
            {
              "and": [
                "canDodgeWhileShooting",
                {
                  "cycleFrames": 730
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 710
        }
      ]
    }
  ]
}

Farm cycle drops: 4 Choot

From: 1
Left Door
To: 1
Left Door

Requires:

"canDodgeWhileShooting"
{
  "cycleFrames": 215
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 40
        }
      ]
    }
  ]
}

Farm cycle drops: 1 Choot

From: 1
Left Door
To: 1
Left Door

Farm 3 Choots using Grapple to collect the drops, without dipping into the water.

Requires:

"canUseGrapple"
{
  "cycleFrames": 330
}
{
  "or": [
    "canDash",
    {
      "cycleFrames": 90
    }
  ]
}

Farm cycle drops: 3 Choot

From: 2
Right Door
To: 2
Right Door

Requires:

"Gravity"
{
  "cycleFrames": 270
}
{
  "or": [
    "canDash",
    {
      "cycleFrames": 90
    }
  ]
}
{
  "or": [
    "HiJump",
    {
      "and": [
        "canWalljump",
        {
          "cycleFrames": 45
        }
      ]
    }
  ]
}
{
  "or": [
    "Plasma",
    {
      "and": [
        "canUseGrapple",
        {
          "cycleFrames": 15
        }
      ]
    },
    {
      "and": [
        "ScrewAttack",
        {
          "cycleFrames": 15
        }
      ]
    },
    {
      "and": [
        "Wave",
        {
          "cycleFrames": 35
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 40
        }
      ]
    },
    {
      "and": [
        "Spazer",
        {
          "cycleFrames": 55
        }
      ]
    },
    {
      "cycleFrames": 105
    }
  ]
}

Farm cycle drops: 1 Choot

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 990
                }
              ]
            },
            {
              "and": [
                "Plasma",
                {
                  "cycleFrames": 620
                }
              ]
            },
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 920
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 1010
                }
              ]
            },
            {
              "and": [
                {
                  "or": [
                    "canDodgeWhileShooting",
                    "Ice"
                  ]
                },
                {
                  "cycleFrames": 1740
                }
              ]
            },
            {
              "and": [
                "canUseGrapple",
                {
                  "cycleFrames": 740
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 1160
        }
      ]
    }
  ]
}

Farm cycle drops: 6 Waver, 6 Choot

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "resetRoom": {
    "nodes": [
      1,
      2
    ]
  }
}
{
  "cycleFrames": 100
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 495
                }
              ]
            },
            {
              "and": [
                "Plasma",
                {
                  "cycleFrames": 310
                }
              ]
            },
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 460
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 505
                }
              ]
            },
            {
              "and": [
                {
                  "or": [
                    "canDodgeWhileShooting",
                    "Ice"
                  ]
                },
                {
                  "cycleFrames": 870
                }
              ]
            },
            {
              "and": [
                "canUseGrapple",
                {
                  "cycleFrames": 370
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 580
        }
      ]
    }
  ]
}

Farm cycle drops: 3 Waver, 3 Choot

Dev note: The 100 extra cycleFrames is an average extra time needed to return back to the entry door rather than continuing to the opposite door. For simplicity, the weapon-specific cycleFrames are exactly half those in the 'Both Doors' variant, even though technically some weapons may be affected slightly more than others by having to use a specific door.

From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 21
  }
}

Requires:

"h_speedJump"
"canInsaneJump"
From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 11
  }
}

Requires:

"h_speedJump"
"canInsaneJump"
"canLateralMidAirMorph"
"canMomentumConservingMorph"
Speed Jump (Very Hard)
The Moat
From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 26
  }
}

Requires:

"h_speedJump"
"canTrickyJump"
From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 18
  }
}

Requires:

"h_speedJump"
"canTrickyJump"
"canLateralMidAirMorph"
Base (Medium)
The Moat
From: 1
Left Door
To: 3
Item

This jump is much easier without HiJump or Speedbooster equipped.

Requires:

"canDash"
"canDisableEquipment"

Collects items: 3

From: 1
Left Door
To: 3
Item

Requires:

{
  "or": [
    "Grapple",
    "SpaceJump",
    {
      "and": [
        "Gravity",
        "canDash"
      ]
    },
    "canGravityJump"
  ]
}

Collects items: 3

From: 2
Right Door
To: 3
Item

Execution of this strat is non-trivial, and failing will lead to falling into the pit. Depending on item loadout, that could be a softlock.

Requires:

"canDash"
"canDisableEquipment"
"canCarefulJump"
{
  "or": [
    {
      "doorUnlockedAtNode": 2
    },
    "canTrickyJump",
    "canLateralMidAirMorph",
    "h_speedJump"
  ]
}

Collects items: 3

Dev note: Could use a failure definition?

From: 3
Item
To: 2
Right Door

Requires:

"Gravity"
{
  "or": [
    {
      "and": [
        "canTrickySpringBallJump",
        {
          "or": [
            "canLateralMidAirMorph",
            "canTrickyJump"
          ]
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canWalljump",
        {
          "or": [
            "canDash",
            "canTrickyJump"
          ]
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpeedyJump"
      ]
    }
  ]
}
{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
From: 13
Bottom Junction
To: 5
Lower Section - Bottom Right Door

It may be best to have shorter, later jumps to prevent bonking the ceiling or hitting the Ripper.

Requires:

"canDash"
{
  "or": [
    "canCarefulJump",
    "canConsecutiveWalljump"
  ]
}
From: 13
Bottom Junction
To: 13
Bottom Junction

Requires:

{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1
            ]
          }
        },
        {
          "or": [
            {
              "and": [
                "Gravity",
                "canDash",
                {
                  "cycleFrames": 790
                }
              ]
            },
            {
              "and": [
                "canDash",
                {
                  "cycleFrames": 1380
                }
              ]
            },
            {
              "and": [
                "Gravity",
                {
                  "cycleFrames": 1220
                }
              ]
            },
            {
              "cycleFrames": 1785
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              4
            ]
          }
        },
        {
          "or": [
            {
              "and": [
                "Gravity",
                "SpaceJump",
                {
                  "cycleFrames": 750
                },
                {
                  "or": [
                    "canDash",
                    {
                      "cycleFrames": 185
                    }
                  ]
                }
              ]
            },
            {
              "and": [
                "Gravity",
                "canWalljump",
                {
                  "cycleFrames": 650
                },
                {
                  "or": [
                    "canDash",
                    {
                      "and": [
                        "canGravityJump",
                        {
                          "cycleFrames": 150
                        },
                        "h_doubleEquipmentScreenCycleFrames"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "and": [
                "SpaceJump",
                {
                  "cycleFrames": 1390
                },
                {
                  "or": [
                    "canDash",
                    {
                      "cycleFrames": 530
                    }
                  ]
                }
              ]
            },
            {
              "and": [
                "canDash",
                "canWalljump",
                {
                  "cycleFrames": 1420
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              5
            ]
          }
        },
        {
          "or": [
            {
              "and": [
                "Gravity",
                "SpaceJump",
                {
                  "cycleFrames": 690
                },
                {
                  "or": [
                    "canDash",
                    {
                      "cycleFrames": 355
                    }
                  ]
                }
              ]
            },
            {
              "and": [
                "Gravity",
                "canDash",
                "canWalljump",
                {
                  "cycleFrames": 820
                }
              ]
            },
            {
              "and": [
                "Gravity",
                "canDash",
                {
                  "cycleFrames": 1110
                }
              ]
            },
            {
              "and": [
                "canGravityJump",
                {
                  "cycleFrames": 1120
                }
              ]
            },
            {
              "and": [
                "canDash",
                {
                  "cycleFrames": 1600
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "ScrewAttack",
        "Gravity"
      ]
    },
    {
      "haveBlueSuit": {}
    },
    {
      "and": [
        "Plasma",
        {
          "cycleFrames": 50
        }
      ]
    },
    {
      "and": [
        "Wave",
        {
          "cycleFrames": 160
        }
      ]
    },
    {
      "and": [
        "Spazer",
        {
          "cycleFrames": 200
        }
      ]
    },
    {
      "and": [
        "Ice",
        {
          "cycleFrames": 290
        }
      ]
    },
    {
      "and": [
        "canPseudoScrew",
        {
          "cycleFrames": 290
        }
      ]
    },
    {
      "cycleFrames": 500
    }
  ]
}

Resets obstacles: A, B, R-Mode

Farm cycle drops: 2 Skultera

From: 2
Right Door
To: 1
Left Door

It's not necessary to jump through the door, the in-room doorsill gives enough running room to make it up.

Requires:

"canDash"
"canPreciseWalljump"
"canTrickyJump"
{
  "or": [
    {
      "spikeHits": 1
    },
    "h_backIntoCorner"
  ]
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

"h_ZebesIsAwake"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "cycleFrames": 400
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 80
        }
      ]
    }
  ]
}

Resets obstacles: A, B, C

Farm cycle drops: 2 Geemer (blue), 2 Skree, 1 Reo

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

Leaving with upward momentum is possible in three ways: 1) Most easily, with a momentum-conserving morph against the ceiling through the transition, 2) With a momentum-conserving turnaround through the transition, or 3) Jumping specifically with a extra run speed between $5.2 and $5.4 and aiming down through the transition. For the first two methods, avoid backing into the corner; instead press against it and turn around, to put Samus into a better position. For the third method, use only the part of the runway in front of the Power Bomb blocks, or about a tile less.

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}
"h_speedJump"
{
  "or": [
    "canMomentumConservingMorph",
    "canInsaneJump"
  ]
}

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 3,
    "runway": {
      "length": 42,
      "openEnd": 0
    },
    "obstruction": [
      3,
      0
    ]
  }
}

Dev note: Max extra run speed $6.8. Using the full runway, the momentum-conserving morph has a 4-frame window for the jump, and between a 3-frame and 6-frame window for the morph depending on the jump timing (with later jumps giving a bigger window for the morph); The momentum-conserving turnaround has a 2-frame window for the jump, and either a 1-frame or 5-frame window for the turnaround depending on the jump (with the last-frame jump giving the larger window for the turnaround).

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

Leaving with upward momentum is possible in three ways: 1) Most easily, with a momentum-conserving morph against the ceiling through the transition, 2) With a momentum-conserving turnaround through the transition, or 3) Jumping and aiming down through the transition. To maximize the lenience for the jump, back into the Power Bomb block corner, and while running perform a single-pixel arm pump (e.g. by firing a shot); this only matters in certain situations, but in all cases it won't hurt.

Requires:

"h_speedJump"
{
  "or": [
    "canMomentumConservingMorph",
    "canInsaneJump"
  ]
}

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 3,
    "runway": {
      "length": 31,
      "openEnd": 0
    },
    "obstruction": [
      3,
      0
    ]
  }
}

Dev note: Max extra run speed $5.4. The momentum-conserving morph has a 3-frame window for the jump, and between a 3-frame and 8-frame window for the morph depending on the jump timing (with later jumps giving a bigger window for the morph); these windows can be more narrow depending on what is required in the next room. The momentum-conserving turnaround has a 2-frame window for the jump: if jumping on the second-to-last possible frame, then there is a 4-frame window for the turnaround, while if jumping on the last frame, there is a 5-frame window for turning around before the transition or it can be buffered through the transition (or the turnaround could not be performed at all, to maintain forward and upward momentum by simply aiming down).

From: 2
Top Left Door
To: 2
Top Left Door

Requires:

{
  "notable": "Return Through Crumble Blocks"
}
"h_ZebesIsAwake"
"Morph"
{
  "or": [
    "ScrewAttack",
    {
      "and": [
        "h_useMorphBombs",
        {
          "cycleFrames": 80
        }
      ]
    },
    {
      "haveBlueSuit": {}
    }
  ]
}
{
  "or": [
    "canConsecutiveWalljump",
    {
      "and": [
        "SpaceJump",
        {
          "cycleFrames": 250
        }
      ]
    }
  ]
}
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "cycleFrames": 1210
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 50
        }
      ]
    }
  ]
}

Clears obstacles: A, B

Resets obstacles: C

Farm cycle drops: 2 Geemer (blue), 2 Skree, 1 Reo

Dev note: Returning with an IBJ or frozen Geemer would also be possible, but these are probably too slow to model in a farm strat.

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "C"
  ]
}
"h_speedJump"
"canInsaneJump"
"canMomentumConservingMorph"

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 2,
    "runway": {
      "length": 25,
      "openEnd": 0
    },
    "obstruction": [
      4,
      0
    ]
  }
}

Dev note: Max extra run speed $4.A. Using the full runway, this requires a last-frame jump, followed by a 2-frame window for the morph.

From: 1
Left Door
To: 2
Right Door

The only way the Wavers will get to the door is if the right crumble blocks are all broken. This assumes that Samus comes from the left with Speed, a mockball, or a crouch gate clip. After the crumbles are broken, shoot the ceiling block and wait by the door for the Waver to come. Note that if Samus takes more than 35 seconds after entering the room, before shooting the ceiling, the Waver will not come down.

Requires:

{
  "obstaclesNotCleared": [
    "A"
  ]
}
{
  "or": [
    "h_speedDash",
    "canMockball",
    {
      "and": [
        "canCrouchGateClip",
        {
          "or": [
            "canXRayTurnaround",
            "canMoonwalk"
          ]
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

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

Requires:

{
  "obstaclesNotCleared": [
    "A"
  ]
}
"h_speedDash"

Clears obstacles: A

From: 1
Left Door
To: 2
Right Door

Run into the room and off the ledge with blue speed, killing any Beetoms in your path.

Entrance condition:

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

Requires:

"h_blueJump"

Dev note: This does not clear the obstacle since it does not kill all the Beetoms.

From: 2
Right Door
To: 1
Left Door

Run into the room and off the ledge with blue speed, killing any Beetoms in your path.

Entrance condition:

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

Requires:

"h_blueJump"

Dev note: This does not clear the obstacle since it does not kill all the Beetoms.

From: 10
Right Etecoon Shaft - Bottom Left Door
To: 14
Right Etecoon Shaft - Wall Jump Checkpoint

Spring ball jump then bounce on a Power Bomb in order to be able to midair spark. It is easiest to wait to turn around until after the bomb boost. With a blue suit, this requires using dash after shinecharging to be able to boost on the Power Bomb.

Requires:

{
  "or": [
    {
      "useFlashSuit": {}
    },
    {
      "and": [
        "canInsaneJump",
        {
          "blueSuitShinecharge": {}
        }
      ]
    }
  ]
}
"canDash"
"canSpringBallJumpMidAir"
"canUnmorphBombBoost"
{
  "shinespark": {
    "frames": 18,
    "excessFrames": 13
  }
}
From: 1
Top Left Door
To: 2
Top Right Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 15
  }
}

Requires:

"h_speedJump"
"canInsaneJump"
"canMomentumConservingMorph"

Dev note: This is technically possible with 14 tiles but it might require too much precision.

From: 1
Top Left Door
To: 2
Top Right Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 17
  }
}

Requires:

"h_speedJump"
"canTrickyJump"
"canLateralMidAirMorph"
From: 1
Top Left Door
To: 5
Junction The Left End of Morph Tube

Requires:

"h_speedJump"
"canTrickyJump"
"canLateralMidAirMorph"
"can4HighMidAirMorph"
From: 3
Bottom Right Door
To: 1
Top Left Door

Build up some run speed and then extend the Grapple Beam through the Blue Gate, while jumping, to open it from the wrong side.

Requires:

{
  "notable": "Grapple Gate Glitch"
}
"canPreciseGrapple"
"h_speedJump"
"canTrickyJump"

Clears obstacles: B

From: 3
Bottom Right Door
To: 3
Bottom Right Door

Open the gate (Wave Beam or gate glitch) and clear the Small Sidehoppers for a runway. Use respawning Geegas for energy.

Entrance condition:

{
  "comeInWithRMode": {}
}

Requires:

{
  "or": [
    "Wave",
    "h_blueGateGlitch",
    {
      "and": [
        {
          "notable": "Grapple Gate Glitch"
        },
        "canPreciseGrapple",
        "h_speedJump",
        "canTrickyJump"
      ]
    }
  ]
}
{
  "refill": [
    "Energy"
  ]
}
{
  "canShineCharge": {
    "usedTiles": 30,
    "openEnd": 0
  }
}
{
  "autoReserveTrigger": {}
}
"canRModeSparkInterrupt"

Clears obstacles: B

From: 2
Right Door
To: 2
Right Door

Requires:

"h_speedJump"
"canMomentumConservingMorph"

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 2,
    "runway": {
      "length": 20,
      "openEnd": 0
    },
    "obstruction": [
      3,
      0
    ]
  }
}

Dev note: Max extra run speed $3.F.

From: 1
Left Side - Top Door
To: 16
Direct G-Mode Morph (Top Item, Above Hopper Pit)

Roll directly through the bomb block on entry without rolling much in the morph tunnel to overload PLMs as little as possible.

Entrance condition:

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

Requires:

"h_blueSuitGMode"
"Morph"
{
  "or": [
    "SpaceJump",
    "canWalljump",
    {
      "and": [
        "HiJump",
        "canSpeedyJump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    "canTrickyUseFrozenEnemies",
    {
      "and": [
        "canDash",
        "canTrickyJump",
        "canHorizontalDamageBoost",
        {
          "enemyDamage": {
            "enemy": "Zeb",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            {
              "canShineCharge": {
                "usedTiles": 24,
                "openEnd": 1
              }
            },
            {
              "blueSuitShinecharge": {}
            }
          ]
        },
        {
          "shinespark": {
            "frames": 9,
            "excessFrames": 3
          }
        }
      ]
    }
  ]
}
G-mode (Expert+)
Big Pink
From: 2
Right Side - Top Door
To: 16
Direct G-Mode Morph (Top Item, Above Hopper Pit)

Entrance condition:

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

Requires:

"Morph"
{
  "or": [
    "SpaceJump",
    "canWalljump",
    "canPreciseGrapple",
    {
      "and": [
        "HiJump",
        "canSpeedyJump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    "canTrickyUseFrozenEnemies",
    {
      "and": [
        "canDash",
        "canTrickyJump",
        "canHorizontalDamageBoost",
        {
          "enemyDamage": {
            "enemy": "Zeb",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            {
              "canShineCharge": {
                "usedTiles": 24,
                "openEnd": 1
              }
            },
            {
              "blueSuitShinecharge": {}
            }
          ]
        },
        {
          "shinespark": {
            "frames": 9,
            "excessFrames": 3
          }
        }
      ]
    }
  ]
}
G-mode (Expert+)
Big Pink
From: 3
Left Side - Top Middle Door (Main Entrance)
To: 16
Direct G-Mode Morph (Top Item, Above Hopper Pit)

Entrance condition:

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

Requires:

"Morph"
{
  "or": [
    "SpaceJump",
    "canWalljump",
    "canPreciseGrapple",
    {
      "and": [
        "HiJump",
        "canSpeedyJump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    "canTrickyUseFrozenEnemies",
    {
      "and": [
        "canDash",
        "canTrickyJump",
        "canHorizontalDamageBoost",
        {
          "enemyDamage": {
            "enemy": "Zeb",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            {
              "canShineCharge": {
                "usedTiles": 24,
                "openEnd": 1
              }
            },
            {
              "blueSuitShinecharge": {}
            }
          ]
        },
        {
          "shinespark": {
            "frames": 9,
            "excessFrames": 3
          }
        }
      ]
    }
  ]
}
G-mode (Expert+)
Big Pink
From: 6
Right Side - Top Middle Door
To: 16
Direct G-Mode Morph (Top Item, Above Hopper Pit)

Entrance condition:

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

Requires:

"Morph"
{
  "or": [
    "SpaceJump",
    "canWalljump",
    "canPreciseGrapple",
    {
      "and": [
        "HiJump",
        "canSpeedyJump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    "canTrickyUseFrozenEnemies",
    {
      "and": [
        "canDash",
        "canTrickyJump",
        "canHorizontalDamageBoost",
        {
          "enemyDamage": {
            "enemy": "Zeb",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            {
              "canShineCharge": {
                "usedTiles": 24,
                "openEnd": 1
              }
            },
            {
              "blueSuitShinecharge": {}
            }
          ]
        },
        {
          "shinespark": {
            "frames": 9,
            "excessFrames": 3
          }
        }
      ]
    }
  ]
}
G-mode (Expert+)
Big Pink
From: 8
Right Side - Bottom Door
To: 16
Direct G-Mode Morph (Top Item, Above Hopper Pit)

Entrance condition:

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

Requires:

"Morph"
{
  "or": [
    "SpaceJump",
    "canWalljump",
    "canPreciseGrapple",
    {
      "and": [
        "HiJump",
        "canSpeedyJump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    "canTrickyUseFrozenEnemies",
    {
      "and": [
        "canDash",
        "canTrickyJump",
        "canHorizontalDamageBoost",
        {
          "enemyDamage": {
            "enemy": "Zeb",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            {
              "canShineCharge": {
                "usedTiles": 24,
                "openEnd": 1
              }
            },
            {
              "blueSuitShinecharge": {}
            }
          ]
        },
        {
          "shinespark": {
            "frames": 9,
            "excessFrames": 3
          }
        }
      ]
    }
  ]
}
From: 13
Central Junction
To: 10
Top Item (Above Hopper Pit)

Lead an enemy through parts of the room as a way to reach the Mission Impossible missile location. The respawning Zeb can be used by carfeully keeping it on camera and staying high enough that it does not attack. Wait for it to respawn before attempting to guide it. Or a Reo can be brought up to this section of room, but sometimes gets stuck on the way.

Requires:

{
  "or": [
    "canTrickyUseFrozenEnemies",
    {
      "and": [
        "canDash",
        "canTrickyJump",
        "canHorizontalDamageBoost",
        {
          "enemyDamage": {
            "enemy": "Zeb",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    }
  ]
}
"canCameraManip"

Dev note: This is just to avoid walljumping.

From: 1
Left Door
To: 1
Left Door

Entrance condition:

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

Requires:

"h_blueJump"
"canPrepareForNextRoom"

Clears obstacles: A

From: 1
Right Door
To: 2
Chozo Item

Entrance condition:

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

Requires:

"h_blueJump"
"canCarefulJump"
From: 1
Left Door
To: 2
Right Door

Requires:

"h_storedSpark"
"canDash"
"canHorizontalShinespark"
{
  "shinespark": {
    "frames": 132,
    "excessFrames": 60
  }
}
From: 2
Right Door
To: 1
Left Door

Use a Fireflea (or two) to quickly boost to the left, to be able to catch the Waver and boost off it on its first cycle, to cross the first gap. Take one or two more hits from the Wavers for i-frames; take the last hit close to the ground while holding forward. Then gain speed using Speed Booster to jump across the second gap. If the jump is slightly short, a wall jump can be used to get up.

Using the second Waver cycle leads to a bad pattern at the end, where the path of the speedy jump will be blocked by a Waver, which can still be avoided but only with great difficulty.

Requires:

"canHorizontalDamageBoost"
"canTrickyJump"
"canUseIFrames"
"h_speedJump"
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        "canTrickyDodgeEnemies",
        {
          "enemyDamage": {
            "enemy": "Fireflea",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "enemyDamage": {
        "enemy": "Fireflea",
        "type": "contact",
        "hits": 2
      }
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canInsaneJump",
        {
          "enemyDamage": {
            "enemy": "Waver",
            "type": "contact",
            "hits": 2
          }
        }
      ]
    },
    {
      "enemyDamage": {
        "enemy": "Waver",
        "type": "contact",
        "hits": 3
      }
    }
  ]
}
{
  "or": [
    "canWalljump",
    "canTrickyDodgeEnemies"
  ]
}

Dev note: FIXME: Patiently waiting for a different Waver cycle could be another way to avoid Fireflea damage. FIXME: gaining a shinecharge on the spikes (and hero shot sparking out the left door) is possible though extremely precise.

From: 2
Right Door
To: 1
Left Door

Requires:

"h_storedSpark"
"canDash"
"canHorizontalShinespark"
{
  "shinespark": {
    "frames": 99,
    "excessFrames": 5
  }
}
From: 1
Left Door
To: 1
Left Door

Leaving with upward momentum is possible in three ways: 1) Most easily, with a momentum-conserving morph against the ceiling through the transition, 2) With a momentum-conserving turnaround through the transition, or 3) Jumping specifically with a extra run speed $5.2 or $5.3 and aiming down through the transition. For the first two methods, avoid backing into the corner at the start of runway; instead press against it and turn around, to put Samus into a better position.

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}
"h_speedJump"
{
  "or": [
    "canMomentumConservingMorph",
    "canInsaneJump"
  ]
}

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 2,
    "runway": {
      "length": 45,
      "openEnd": 1
    },
    "obstruction": [
      3,
      0
    ]
  }
}

Dev note: Max extra run speed $7.0. Using the full runway, there is a 4-frame window for the jump, then between a 1-frame and 4-frame window for the morph depending on the jump (with later jumps giving more frames for the morph). If there is a solid tile on the ceiling in the next room past the door frame, then the windows for the jump and morph are tighter. The momentum-conserving turnaround has a 3-frame window for the jump, and between a 1-frame or 4-frame for the turnaround (with later jumps giving a larger window for the turnaround); again the windows can be more narrow depending on what is required in the next room.

From: 1
Left Door
To: 2
Right Door

Requires:

"canDash"
{
  "enemyKill": {
    "enemies": [
      [
        "Green Space Pirate (standing)",
        "Green Space Pirate (standing)",
        "Green Space Pirate (standing)"
      ]
    ],
    "excludedWeapons": [
      "Bombs"
    ]
  }
}
{
  "or": [
    "canDodgeWhileShooting",
    "ScrewAttack",
    {
      "enemyDamage": {
        "enemy": "Mini-Kraid",
        "type": "spike",
        "hits": 1
      }
    }
  ]
}
{
  "or": [
    {
      "enemyKill": {
        "enemies": [
          [
            "Mini-Kraid"
          ]
        ],
        "excludedWeapons": [
          "PowerBeam",
          "Bombs",
          "Charge",
          "Ice",
          "Wave",
          "Spazer"
        ]
      }
    },
    {
      "enemyDamage": {
        "enemy": "Mini-Kraid",
        "type": "spike",
        "hits": 3
      }
    },
    {
      "and": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Mini-Kraid"
              ]
            ],
            "explicitWeapons": [
              "Wave",
              "Spazer"
            ]
          }
        },
        {
          "enemyDamage": {
            "enemy": "Mini-Kraid",
            "type": "spike",
            "hits": 2
          }
        }
      ]
    },
    "canInsaneJump"
  ]
}
{
  "or": [
    "h_complexToCarryFlashSuit",
    {
      "enemyDamage": {
        "enemy": "Mini-Kraid",
        "type": "spike",
        "hits": 3
      }
    }
  ]
}

Clears obstacles: A

Dev note: FIXME: Collecting the drops from the pirates could make the Mini-Kraid spike hits not matter much.

From: 1
Left Door
To: 2
Right Door

Kill the pirates by placing Bombs next to them without touching them. With low Energy, it is possible to jump over the pirates and kill Mini-Kraid first, but it is difficult to do so damageless.

Requires:

"canDash"
"canDodgeWhileShooting"
{
  "enemyKill": {
    "enemies": [
      [
        "Green Space Pirate (standing)",
        "Green Space Pirate (standing)",
        "Green Space Pirate (standing)"
      ]
    ],
    "explicitWeapons": [
      "Bombs"
    ]
  }
}
{
  "or": [
    "canTrickyJump",
    {
      "enemyDamage": {
        "enemy": "Green Space Pirate (standing)",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
{
  "or": [
    "canInsaneJump",
    {
      "enemyDamage": {
        "enemy": "Mini-Kraid",
        "type": "spike",
        "hits": 4
      }
    }
  ]
}
{
  "or": [
    "h_complexToCarryFlashSuit",
    {
      "enemyDamage": {
        "enemy": "Mini-Kraid",
        "type": "spike",
        "hits": 3
      }
    }
  ]
}

Clears obstacles: A

Dev note: FIXME: Collecting the drops from the pirates could make the Mini-Kraid spike hits not matter much.

From: 1
Left Door
To: 2
Right Door

Quickly run through to tank the Pirate (or its laser) and one of Mini-Kraid's spikes.

Requires:

"canDash"
{
  "enemyDamage": {
    "enemy": "Green Space Pirate (standing)",
    "type": "contact",
    "hits": 1
  }
}
{
  "enemyDamage": {
    "enemy": "Mini-Kraid",
    "type": "spike",
    "hits": 1
  }
}
From: 2
Right Door
To: 1
Left Door

Wait to hit one of Mini-Kraid's spikes, then run through.

Requires:

"canDash"
{
  "or": [
    "canCarefulJump",
    {
      "enemyDamage": {
        "enemy": "Green Space Pirate (standing)",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
{
  "or": [
    "canTrickyJump",
    {
      "enemyDamage": {
        "enemy": "Mini-Kraid",
        "type": "spike",
        "hits": 1
      }
    }
  ]
}
From: 2
Right Door
To: 2
Right Door

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}
"h_speedJump"
"canInsaneJump"
"canMomentumConservingMorph"

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 2,
    "runway": {
      "length": 45,
      "openEnd": 1
    },
    "obstruction": [
      4,
      0
    ]
  }
}

Dev note: Max extra run speed $7.0. Press against the overhang left of the ceiling spikes, then perform 4 arm pumps to advance 8 pixels while running. There is a 2-frame window for the jump and a 2-frame window for the morph. These windows can be more narrow depending on what is required in the next room.

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "or": [
    "f_DefeatedKraid",
    {
      "obstaclesCleared": [
        "f_DefeatedKraid"
      ]
    }
  ]
}
"h_speedJump"
"canInsaneJump"
"canMomentumConservingMorph"

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 2,
    "runway": {
      "length": 24,
      "openEnd": 0
    },
    "obstruction": [
      4,
      0
    ]
  }
}

Dev note: Max extra run speed $4.4. Using the full runway, there is a 2-frame window for the jump, then a 1-frame or 2-frame window for the morph depending on the jump (with a last-frame jump giving a 2-frame morph window).

From: 2
Right Door
To: 2
Right Door

Requires:

{
  "or": [
    "f_DefeatedKraid",
    {
      "obstaclesCleared": [
        "f_DefeatedKraid"
      ]
    }
  ]
}
"h_speedJump"
"canInsaneJump"
"canMomentumConservingMorph"

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 2,
    "runway": {
      "length": 24,
      "openEnd": 0
    },
    "obstruction": [
      4,
      0
    ]
  }
}

Dev note: Max extra run speed $4.4. Using the full runway, there is a 2-frame window for the jump, then a 1-frame or 2-frame window for the morph depending on the jump (with a last-frame jump giving a 2-frame morph window).

From: 4
Junction (Right Pit)
To: 3
Right Door

To save energy, jump from the runway by the Super blocks. This is doable with less than 29 Energy.

Requires:

"h_storedSpark"
"canDash"
{
  "shinespark": {
    "frames": 2,
    "excessFrames": 2
  }
}
From: 1
Bottom Left Door
To: 1
Bottom Left Door

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "cycleFrames": 300
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 260
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 3 Skree

From: 1
Bottom Left Door
To: 2
Top Right Door

Enter the room with a Missile selected on auto-cancel, holding angle-up. Fire a Missile shot to kill the first Skree, then run right and immediately fire a beam shot to destroy the shot block. Run off the edge and down-grab onto the next platform. Run and jump directly up where the shot block used to be, moving quickly enough to dodge the Skree projectiles by going under them. Use a wall jump, HiJump, or a mid-air spring ball jump to make it up.

Requires:

"canDash"
"canAutoCancelWeapon"
{
  "ammo": {
    "type": "Missile",
    "count": 1
  }
}
"canTrickyDodgeEnemies"
"canInsaneJump"
{
  "or": [
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 160
        }
      ]
    },
    {
      "and": [
        "canWalljump",
        {
          "heatFrames": 180
        }
      ]
    },
    {
      "and": [
        "canTrickySpringBallJump",
        {
          "heatFrames": 195
        }
      ]
    }
  ]
}

Dev note: FIXME: this can be done without a Missile (only Power Beam) with only about 5 more heat frames.

Base (Basic)
Bat Cave
From: 1
Bottom Left Door
To: 2
Top Right Door

Requires:

"canDash"
{
  "or": [
    "canWalljump",
    "HiJump",
    "SpaceJump",
    "canSpringBallJumpMidAir"
  ]
}
{
  "heatFrames": 350
}
From: 1
Bottom Left Door
To: 2
Top Right Door

Freeze the middle Skree mid-air to use it as a platform.

Requires:

{
  "or": [
    "canDash",
    {
      "haveBlueSuit": {}
    }
  ]
}
"canTrickyUseFrozenEnemies"
{
  "heatFrames": 260
}
"h_complexToCarryFlashSuit"
From: 1
Bottom Left Door
To: 2
Top Right Door

Shoot the Skree and shotblock from the door. While avoiding Skree projectiles, jump to the next bubble platform followed by jumping directly up where the shot block used to be.

Requires:

"canDash"
"canPreciseWalljump"
"canTrickyJump"
{
  "heatFrames": 220
}
From: 1
Bottom Left Door
To: 2
Top Right Door

Shoot the Skree and shotblock from the door. While avoiding Skree projectiles, jump to the next bubble platform followed by jumping directly up where the shot block used to be.

Requires:

"canDash"
"HiJump"
"canTrickyJump"
{
  "heatFrames": 200
}
From: 1
Bottom Left Door
To: 2
Top Right Door

Shoot the Skree and shotblock from the door. While avoiding Skree projectiles, jump to the next bubble platform followed by jumping directly up where the shot block used to be, performing a mid-air spring ball jump to make it up to the ledge.

Requires:

"canDash"
"canTrickySpringBallJump"
"canTrickyJump"
{
  "heatFrames": 240
}
Base (Basic)
Bat Cave
From: 3
Gamet Farm Junction
To: 2
Top Right Door

Requires:

{
  "heatFrames": 50
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 1
Left Side - Top Door
To: 7
Top Right Door

Kill King Cac by scrolling the camera, before attempting the jump.

Requires:

{
  "doorUnlockedAtNode": 1
}
"canDash"
"canTrickyJump"
"canCameraManip"
From: 1
Left Side - Top Door
To: 7
Top Right Door

King Cac can be killed by scrolling the camera before jumping across.

Requires:

"h_speedJump"
"canCarefulJump"
{
  "or": [
    {
      "doorUnlockedAtNode": 1
    },
    "canTrickyJump"
  ]
}
{
  "or": [
    "canCameraManip",
    {
      "and": [
        "canNeutralDamageBoost",
        {
          "enemyDamage": {
            "enemy": "Cacatac",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    }
  ]
}
From: 1
Left Side - Top Door
To: 7
Top Right Door

King Cac can be killed by scrolling the camera before jumping across.

Requires:

"canDash"
"canWalljump"
"canCarefulJump"
{
  "or": [
    "canCameraManip",
    "canTrickyWalljump",
    {
      "and": [
        "canNeutralDamageBoost",
        {
          "enemyDamage": {
            "enemy": "Cacatac",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    }
  ]
}
From: 4
Left Side - Bottom Door
To: 4
Left Side - Bottom Door

Requires:

{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              4
            ]
          }
        },
        {
          "cycleFrames": 155
        },
        {
          "or": [
            "canDash",
            {
              "cycleFrames": 15
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              5
            ]
          }
        },
        {
          "cycleFrames": 220
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 1 Sova

From: 7
Top Right Door
To: 7
Top Right Door

Requires:

{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1
            ]
          }
        },
        {
          "or": [
            {
              "and": [
                "Grapple",
                {
                  "cycleFrames": 300
                }
              ]
            },
            {
              "and": [
                "SpaceJump",
                {
                  "cycleFrames": 390
                }
              ]
            },
            {
              "and": [
                "canDash",
                "HiJump",
                "canTrickyWalljump",
                {
                  "cycleFrames": 690
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              6
            ]
          }
        },
        {
          "cycleFrames": 370
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              7
            ]
          }
        },
        {
          "cycleFrames": 360
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "cycleFrames": 20
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 1 Cacatac, 1 Waver

From: 9
Main Junction
To: 7
Top Right Door

Starting from the platform near the door to the left, run and jump to the right wall and wall jump twice to get to the top.

Requires:

"canDash"
"HiJump"
"canCarefulJump"
"canWalljump"
From: 9
Main Junction
To: 9
Main Junction

Requires:

{
  "or": [
    {
      "resetRoom": {
        "nodes": [
          2
        ]
      }
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              3
            ]
          }
        },
        {
          "cycleFrames": 60
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "SpaceJump",
        {
          "cycleFrames": 600
        }
      ]
    },
    {
      "and": [
        "canDash",
        "HiJump",
        "canTrickyWalljump",
        {
          "cycleFrames": 660
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 1 Cacatac, 2 Waver

From: 9
Main Junction
To: 9
Main Junction

Requires:

{
  "noBlueSuit": {}
}
"ScrewAttack"
{
  "or": [
    "canWalljump",
    "HiJump",
    "SpaceJump",
    {
      "and": [
        "canSpringBallJumpMidAir",
        "h_doubleEquipmentScreenCycleFrames",
        {
          "cycleFrames": 20
        }
      ]
    },
    {
      "and": [
        "canIBJ",
        {
          "cycleFrames": 600
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1
            ]
          }
        },
        {
          "or": [
            {
              "and": [
                "SpaceJump",
                {
                  "cycleFrames": 1050
                }
              ]
            },
            {
              "and": [
                "canDash",
                "HiJump",
                "canTrickyWalljump",
                {
                  "cycleFrames": 970
                }
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpringBallJumpMidAir",
                {
                  "cycleFrames": 970
                },
                "h_doubleEquipmentScreenCycleFrames"
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              2
            ]
          }
        },
        {
          "cycleFrames": 840
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              3
            ]
          }
        },
        {
          "cycleFrames": 960
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              4
            ]
          }
        },
        {
          "cycleFrames": 1800
        },
        "h_useMorphBombs"
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              5
            ]
          }
        },
        {
          "cycleFrames": 1800
        },
        "h_useMorphBombs"
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 1 Ripper 2 (red), 1 Waver

From: 9
Main Junction
To: 9
Main Junction

Requires:

{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1
            ]
          }
        },
        {
          "or": [
            {
              "and": [
                "SpaceJump",
                {
                  "cycleFrames": 1500
                }
              ]
            },
            {
              "and": [
                "canDash",
                "HiJump",
                "canTrickyWalljump",
                {
                  "cycleFrames": 1320
                }
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpringBallJumpMidAir",
                {
                  "cycleFrames": 1320
                },
                "h_doubleEquipmentScreenCycleFrames"
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              2
            ]
          }
        },
        {
          "cycleFrames": 1140
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              3
            ]
          }
        },
        {
          "cycleFrames": 1140
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              4
            ]
          }
        },
        {
          "cycleFrames": 720
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              5
            ]
          }
        },
        {
          "cycleFrames": 730
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              6
            ]
          }
        },
        {
          "cycleFrames": 1770
        },
        {
          "or": [
            "SpaceJump",
            {
              "and": [
                "canDash",
                "HiJump",
                "canTrickyWalljump"
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              7
            ]
          }
        },
        {
          "cycleFrames": 1740
        },
        {
          "or": [
            "SpaceJump",
            {
              "and": [
                "canDash",
                "HiJump",
                "canTrickyWalljump"
              ]
            }
          ]
        }
      ]
    }
  ]
}
"h_useMorphBombs"

Resets obstacles: A

Farm cycle drops: 3 Sova

From: 9
Main Junction
To: 9
Main Junction

Requires:

{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              2
            ]
          }
        },
        {
          "cycleFrames": 660
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              3
            ]
          }
        },
        {
          "cycleFrames": 720
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "cycleFrames": 60
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 2 Waver

From: 1
Left Door
To: 2
Right Door

Cross the room while killing Sovas and a Geruta and then jumping through their drops. Killing a Geruta with a PowerBomb will leave 2 drops.

Requires:

"canDash"
"canFarmWhileShooting"
"canTrickyJump"
{
  "or": [
    "h_usePowerBomb",
    "Spazer",
    "Plasma",
    "Wave"
  ]
}
{
  "resourceMissingAtMost": [
    {
      "type": "Missile",
      "count": 0
    },
    {
      "type": "Super",
      "count": 0
    }
  ]
}
{
  "heatFramesWithEnergyDrops": {
    "frames": 240,
    "drops": [
      {
        "enemy": "Geruta",
        "count": 1
      },
      {
        "enemy": "Sova",
        "count": 1
      }
    ]
  }
}
{
  "heatFrames": 160
}

Dev note: The PowerBomb farm treats a Geruta drop as similar to a Sova drop.

Base (Basic)
Cathedral
From: 1
Left Door
To: 4
Junction Above Item

Requires:

{
  "heatFrames": 300
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 40
    }
  ]
}
From: 1
Left Door
To: 4
Junction Above Item

Requires:

"canDash"
"SpaceJump"
{
  "heatFrames": 180
}
From: 1
Left Door
To: 4
Junction Above Item

Requires:

"canDash"
"canTrickyJump"
{
  "heatFrames": 200
}
From: 2
Right Door
To: 1
Left Door

Cross the room while killing Sovas and a Geruta and then jumping through their drops. Killing a Geruta with a PowerBomb will leave 2 drops and it may be better to detour to the second Geruta for more drops.

Requires:

"canDash"
"canFarmWhileShooting"
"canTrickyJump"
{
  "or": [
    {
      "and": [
        "h_usePowerBomb",
        {
          "heatFrames": 60
        }
      ]
    },
    "Spazer",
    "Plasma",
    "Wave"
  ]
}
{
  "resourceMissingAtMost": [
    {
      "type": "Missile",
      "count": 0
    },
    {
      "type": "Super",
      "count": 0
    }
  ]
}
{
  "heatFramesWithEnergyDrops": {
    "frames": 315,
    "drops": [
      {
        "enemy": "Geruta",
        "count": 1
      },
      {
        "enemy": "Sova",
        "count": 1
      }
    ]
  }
}
{
  "heatFrames": 85
}

Dev note: This is an approximation. PBs can collect 4 geruta drops with a detour. Beams may prefer 2 Sovas.

From: 2
Right Door
To: 4
Junction Above Item

Requires:

"canDash"
"canTrickyJump"
{
  "or": [
    "ScrewAttack",
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "or": [
            "Wave",
            "Spazer",
            "Plasma",
            "canPseudoScrew",
            {
              "ammo": {
                "type": "Missile",
                "count": 1
              }
            },
            {
              "ammo": {
                "type": "Super",
                "count": 1
              }
            }
          ]
        }
      ]
    },
    {
      "heatFrames": 5
    }
  ]
}
{
  "heatFrames": 190
}
From: 2
Right Door
To: 4
Junction Above Item

Place a Power Bomb near below the Sova to kill both Gerutas, resulting in 4 drops.

Requires:

"canDash"
"canFarmWhileShooting"
"canTrickyJump"
"h_usePowerBomb"
{
  "resourceMissingAtMost": [
    {
      "type": "Missile",
      "count": 0
    },
    {
      "type": "Super",
      "count": 0
    }
  ]
}
{
  "heatFramesWithEnergyDrops": {
    "frames": 270,
    "drops": [
      {
        "enemy": "Geruta",
        "count": 4
      }
    ]
  }
}
{
  "or": [
    "canInsaneJump",
    {
      "heatFrames": 30
    }
  ]
}
Base (Basic)
Cathedral
From: 4
Junction Above Item
To: 1
Left Door

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        {
          "or": [
            "Plasma",
            "ScrewAttack",
            "canPseudoScrew",
            {
              "ammo": {
                "type": "Super",
                "count": 1
              }
            }
          ]
        },
        {
          "heatFrames": 270
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            "h_usePowerBomb",
            "Ice",
            "Wave",
            "Spazer",
            {
              "ammo": {
                "type": "Missile",
                "count": 2
              }
            }
          ]
        },
        {
          "heatFrames": 300
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            "canDodgeWhileShooting",
            {
              "enemyDamage": {
                "enemy": "Geruta",
                "type": "contact",
                "hits": 1
              }
            }
          ]
        },
        {
          "heatFrames": 390
        }
      ]
    }
  ]
}

Unlocks doors:

{"types":["powerbomb"],"requires":[{"heatFrames":50}]}

Dev note: FIXME: Powerbomb kill would also unlock the door.

From: 4
Junction Above Item
To: 1
Left Door

Build speed on the central platform and jump to the door.

Requires:

"canDash"
"canCarefulJump"
"canDodgeWhileShooting"
{
  "heatFrames": 200
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":25}]}
Base (Basic)
Cathedral
From: 4
Junction Above Item
To: 2
Right Door

Requires:

"canDash"
{
  "heatFrames": 250
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":60}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 4
Junction Above Item
To: 2
Right Door

Requires:

"canDash"
{
  "heatFrames": 240
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 6,
    "openEnd": 0,
    "gentleDownTiles": 2,
    "startingDownTiles": 2
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":60}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 4
Junction Above Item
To: 2
Right Door

Requires:

"canDash"
"canTrickyJump"
{
  "heatFrames": 160
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":60}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 4
Junction Above Item
To: 2
Right Door

Requires:

"canDash"
"canTrickyJump"
{
  "heatFrames": 150
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 6,
    "openEnd": 0,
    "gentleDownTiles": 2,
    "startingDownTiles": 2
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":60}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
Base (Basic)
Cathedral
From: 4
Junction Above Item
To: 3
Hidden Item

Requires:

"canDash"
"Morph"
{
  "heatFrames": 210
}
{
  "or": [
    {
      "enemyKill": {
        "enemies": [
          [
            "Geruta"
          ]
        ],
        "explicitWeapons": [
          "Super",
          "Missile",
          "PowerBomb",
          "ScrewAttack",
          "Plasma",
          "Spazer",
          "Wave",
          "PseudoScrew"
        ]
      }
    },
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "and": [
        {
          "enemyDamage": {
            "enemy": "Geruta",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "heatFrames": 200
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canInsaneJump",
        {
          "lavaFrames": 20
        }
      ]
    },
    {
      "and": [
        {
          "lavaFrames": 70
        },
        {
          "heatFrames": 50
        }
      ]
    },
    {
      "and": [
        "Gravity",
        {
          "lavaFrames": 40
        },
        {
          "heatFrames": 20
        }
      ]
    }
  ]
}
From: 4
Junction Above Item
To: 4
Junction Above Item

Requires:

"h_heatProof"
{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1
            ]
          }
        },
        {
          "cycleFrames": 1080
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              2
            ]
          }
        },
        {
          "cycleFrames": 1230
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "Plasma",
            "Wave",
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 150
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 60
                }
              ]
            },
            {
              "cycleFrames": 700
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 540
        }
      ]
    }
  ]
}

Farm cycle drops: 4 Sova, 3 Geruta

From: 1
Left Door
To: 1
Left Door

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "or": [
    {
      "and": [
        "HiJump",
        "canWalljump",
        {
          "cycleFrames": 450
        }
      ]
    },
    {
      "and": [
        "canPreciseWalljump",
        {
          "cycleFrames": 600
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "cycleFrames": 660
        }
      ]
    },
    {
      "and": [
        "h_useSpringBall",
        {
          "cycleFrames": 650
        }
      ]
    },
    {
      "and": [
        "h_useMorphBombs",
        {
          "cycleFrames": 720
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "Plasma",
            "Spazer",
            "Wave",
            {
              "and": [
                "Ice",
                {
                  "cycleFrames": 130
                }
              ]
            },
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 100
                }
              ]
            },
            {
              "and": [
                "canPseudoScrew",
                {
                  "cycleFrames": 130
                }
              ]
            },
            {
              "and": [
                "canTrickyJump",
                {
                  "cycleFrames": 160
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 260
        }
      ]
    }
  ]
}

Resets obstacles: R-Mode

Farm cycle drops: 2 Sova, 2 Sm. Dessgeega

From: 2
Right Door
To: 2
Right Door

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "or": [
    {
      "and": [
        "HiJump",
        {
          "cycleFrames": 550
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "cycleFrames": 610
        }
      ]
    },
    {
      "and": [
        "h_useSpringBall",
        "h_doubleEquipmentScreenCycleFrames",
        {
          "cycleFrames": 600
        }
      ]
    },
    {
      "and": [
        "canIBJ",
        {
          "cycleFrames": 1220
        }
      ]
    },
    {
      "and": [
        "canJumpIntoIBJ",
        {
          "cycleFrames": 830
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "Plasma",
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 50
                }
              ]
            },
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 50
                }
              ]
            },
            {
              "and": [
                "Ice",
                {
                  "cycleFrames": 260
                }
              ]
            },
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 80
                }
              ]
            },
            {
              "and": [
                "canPseudoScrew",
                {
                  "cycleFrames": 160
                }
              ]
            },
            {
              "and": [
                "canTrickyJump",
                {
                  "cycleFrames": 540
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 260
        }
      ]
    }
  ]
}

Resets obstacles: R-Mode

Farm cycle drops: 2 Sova, 2 Sm. Dessgeega

From: 2
Right Door
To: 3
Bottom Left Junction

Manipulate the movement of the Sm. Dessgeegas by entering the room in a specific way. Multiple setups are possible: A relatively safe method is to walk into the room (with no dash speed, and any amount of base speed or none at all), walk off the ledge, and press against the opposite ledge to align with it. After landing, wait a moment, then run off the edge and across the room. If successful, the first Sm. Dessgeega should have hopped to the right, out of Samus' way, and the second Sm. Dessgeega should do a big hop while Samus runs under it. A more aggressive method involves walking into the room, and holding dash starting when Samus is about 1 tile from falling off the ledge; start holding forward again slightly before landing on the small floating platform, while continuing to hold dash.

Rooms containing hopper-type enemies (including Sm. Dessgeegas) reset RNG on entry, which makes it possible to manipulate their movement in a deterministic way. It also means the Sova drop can be manipulated by killing it on specific frames relative to room entry. Because the Sova is global, its position can be used as a cue for when to kill it. If Samus is full on Missiles, there are several 3-frame windows of where it can be killed to obtain a big energy. The exact timing required for the shot will depend on the weapon used.

Requires:

"canDash"
{
  "notable": "Dessgeega Dodge (Right-to-Left)"
}
"canTrickyDodgeEnemies"
"canInsaneJump"
{
  "heatFramesWithEnergyDrops": {
    "frames": 295,
    "drops": [
      {
        "enemy": "Sova",
        "count": 1
      }
    ]
  }
}

Dev note: Manipulating the second Sm. Dessgeega is much more precise than manipulating the first. The way the strat is written, manipulating the Sova drop isn't technically expected, though in practice getting a big energy is required to make it through the room tankless.

From: 2
Right Door
To: 5
Bottom Right Junction

Requires:

{
  "heatFrames": 100
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 3
Bottom Left Junction
To: 1
Left Door

Requires:

{
  "or": [
    {
      "and": [
        "canPreciseWalljump",
        {
          "heatFrames": 150
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 210
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canWalljump",
        {
          "heatFrames": 180
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpeedyJump",
        "canCarefulJump",
        {
          "heatFrames": 100
        }
      ]
    }
  ]
}
{
  "or": [
    "canHeroShot",
    {
      "and": [
        {
          "heatFrames": 100
        },
        "h_midAirShootUp"
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 3
Bottom Left Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

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

Requires:

"canDash"
{
  "or": [
    "Wave",
    "Spazer"
  ]
}
{
  "heatFrames": 95
}
{
  "or": [
    "canTrickyDodgeEnemies",
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "heatFrames": 75
        }
      ]
    },
    {
      "enemyDamage": {
        "enemy": "Sm. Dessgeega",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
From: 3
Bottom Left Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

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

Requires:

"canDash"
{
  "heatFrames": 350
}
{
  "or": [
    "canTrickyDodgeEnemies",
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "enemyDamage": {
            "enemy": "Sm. Dessgeega",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "enemyDamage": {
        "enemy": "Sm. Dessgeega",
        "type": "contact",
        "hits": 2
      }
    }
  ]
}
From: 3
Bottom Left Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

"canDash"
"ScrewAttack"
{
  "heatFrames": 135
}
From: 3
Bottom Left Junction
To: 5
Bottom Right Junction

Requires:

"canDash"
{
  "heatFrames": 115
}
{
  "enemyDamage": {
    "enemy": "Sm. Dessgeega",
    "type": "contact",
    "hits": 1
  }
}
From: 4
Bottom Junction (Cleared Runway)
To: 3
Bottom Left Junction

Requires:

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

Requires:

{
  "or": [
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 110
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 150
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 5
Bottom Right Junction
To: 3
Bottom Left Junction

Requires:

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

Requires:

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

Requires:

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

Requires:

"canDash"
{
  "or": [
    "Wave",
    "Spazer"
  ]
}
{
  "heatFrames": 140
}
{
  "or": [
    "canTrickyDodgeEnemies",
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "heatFrames": 60
        }
      ]
    },
    {
      "enemyDamage": {
        "enemy": "Sm. Dessgeega",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
From: 5
Bottom Right Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

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

Requires:

"canDash"
{
  "heatFrames": 350
}
{
  "or": [
    "canTrickyDodgeEnemies",
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "enemyDamage": {
            "enemy": "Sm. Dessgeega",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "enemyDamage": {
        "enemy": "Sm. Dessgeega",
        "type": "contact",
        "hits": 2
      }
    }
  ]
}
From: 5
Bottom Right Junction
To: 4
Bottom Junction (Cleared Runway)

Requires:

"canDash"
"ScrewAttack"
{
  "heatFrames": 140
}
From: 1
Top Left Door
To: 3
Right Door

Overload PLMs by shooting the gate, then go through the crumble blocks below and get to the door.

Entrance condition:

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

Requires:

"Morph"
{
  "or": [
    "SpaceJump",
    {
      "and": [
        "canPreciseGrapple",
        "canUseEnemies"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    {
      "and": [
        "canDash",
        "HiJump",
        "canWalljump",
        "canTrickyJump"
      ]
    },
    {
      "and": [
        "canWalljump",
        "canUseIFrames",
        {
          "spikeHits": 1
        },
        "h_spikeJumpWithActiveEnemies"
      ]
    },
    {
      "and": [
        "h_IBJFromSpikes",
        "h_spikeJumpWithActiveEnemies"
      ]
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"
From: 1
Top Left Door
To: 3
Right Door

With Grapple, a running jump then single Grapple swing can be used before PLMs are overloaded, alternatively jump on the crumble blocks and Grapple the Ripper.

Entrance condition:

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

Requires:

{
  "or": [
    "SpaceJump",
    "canTrickySpringBallJump",
    {
      "and": [
        "canWalljump",
        {
          "or": [
            "canDash",
            "HiJump",
            {
              "and": [
                "canBlueSuitSpikeJump",
                {
                  "spikeHits": 1
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpeedyJump"
      ]
    },
    {
      "and": [
        "canPreciseGrapple",
        {
          "or": [
            "canDash",
            "canUseEnemies",
            "canInsaneJump"
          ]
        }
      ]
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"
From: 1
Top Left Door
To: 4
Item

Requires:

{
  "heatFrames": 220
}
{
  "or": [
    {
      "noFlashSuit": {}
    },
    "canComplexCarryFlashSuit",
    "Ice",
    "Wave",
    "Spazer",
    "Plasma",
    {
      "heatFrames": 300
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 90
    }
  ]
}

Clears obstacles: A

From: 2
Bottom Left Door
To: 1
Top Left Door

Wall jump up the left wall, perform a delayed wall jump on the Fune to reach the door.

Entrance condition:

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

Requires:

"canPrepareForNextRoom"
"canTrickyWalljump"
"canConsecutiveWalljump"
"canTrickyJump"
"canFastWalljumpClimb"
"canUseEnemies"
{
  "heatFrames": 120
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}

Dev note: This differs from the canPrepareForNextRoom option of the previous strat only in requiring an air entry. FIXME: canFastWalljumpClimb is for difficulty placement.

From: 2
Bottom Left Door
To: 1
Top Left Door

Entrance condition:

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

Requires:

"canPrepareForNextRoom"
"HiJump"
"SpaceJump"
{
  "heatFrames": 120
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}

Dev note: This differs from the canPrepareForNextRoom option of the previous strat only in requiring an air entry.

From: 2
Bottom Left Door
To: 1
Top Left Door

Spin jump into the room with at least 1 tile of run speed. Then perform a mid-air Spring Ball jump to reach the ledge above.

Entrance condition:

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

Requires:

"HiJump"
"canPrepareForNextRoom"
"canSpringBallJumpMidAir"
{
  "heatFrames": 110
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 2
Bottom Left Door
To: 1
Top Left Door

Entrance condition:

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

Requires:

"canPrepareForNextRoom"
"SpaceJump"
{
  "heatFrames": 200
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 15
    }
  ]
}

Dev note: This differs from the canPrepareForNextRoom option of the previous strat only in requiring an air entry.

From: 2
Bottom Left Door
To: 1
Top Left Door

Wall jump up the left wall, perform a delayed wall jump on the Fune to reach the door.

Requires:

"canTrickyWalljump"
"canConsecutiveWalljump"
"canTrickyJump"
"canUseEnemies"
{
  "or": [
    {
      "heatFrames": 190
    },
    {
      "and": [
        "canPrepareForNextRoom",
        {
          "heatFrames": 135
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}
From: 2
Bottom Left Door
To: 1
Top Left Door

Requires:

"HiJump"
"SpaceJump"
{
  "heatFrames": 150
}
{
  "or": [
    "canPrepareForNextRoom",
    {
      "heatFrames": 70
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}
From: 2
Bottom Left Door
To: 1
Top Left Door

Requires:

"HiJump"
"canSpringBallJumpMidAir"
{
  "heatFrames": 160
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}
From: 2
Bottom Left Door
To: 1
Top Left Door

Requires:

{
  "or": [
    {
      "and": [
        "canLongIBJ",
        {
          "heatFrames": 1450
        }
      ]
    },
    {
      "and": [
        "canJumpIntoIBJ",
        {
          "heatFrames": 960
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canJumpIntoIBJ",
        {
          "heatFrames": 620
        }
      ]
    },
    {
      "and": [
        "canDoubleBombJump",
        {
          "heatFrames": 560
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canDoubleBombJump",
        {
          "heatFrames": 490
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 30
    }
  ]
}
From: 2
Bottom Left Door
To: 1
Top Left Door

Requires:

"SpaceJump"
{
  "heatFrames": 220
}
{
  "or": [
    "canPrepareForNextRoom",
    {
      "heatFrames": 100
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 15
    }
  ]
}
From: 2
Bottom Left Door
To: 1
Top Left Door

Wall jump up the left wall and then on the moving platform (Kamer) while avoiding the Fune's fireball. The Kamers will temporarily move down if Samus is below them, so it is best to walk under the first Kamer before climbing the wall. It is possible to freeze or kill the Fune with a Super or Power Bomb to make things easier.

Requires:

{
  "notable": "Walljump Climb Using the Kamer"
}
"canTrickyWalljump"
"canConsecutiveWalljump"
"canUseEnemies"
{
  "or": [
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "heatFrames": 360
        }
      ]
    },
    {
      "and": [
        "canTrickyJump",
        {
          "heatFrames": 240
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            "canUseFrozenEnemies",
            {
              "ammo": {
                "type": "Super",
                "count": 1
              }
            }
          ]
        },
        {
          "heatFrames": 432
        }
      ]
    },
    {
      "and": [
        {
          "ammo": {
            "type": "PowerBomb",
            "count": 1
          }
        },
        {
          "heatFrames": 456
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 2
Bottom Left Door
To: 1
Top Left Door

Wall jump up the left wall and then on the moving platform (Kamer) while avoiding the Fune's fireball. The Kamers will temporarily move down if Samus is below them, so it is best to walk under the first Kamer before climbing the wall.

Requires:

{
  "notable": "Walljump Climb Using the Kamer"
}
"HiJump"
"canUseEnemies"
"canPreciseWalljump"
{
  "or": [
    {
      "heatFrames": 360
    },
    {
      "and": [
        "canTrickyJump",
        {
          "heatFrames": 230
        }
      ]
    }
  ]
}
{
  "or": [
    "canDodgeWhileShooting",
    {
      "enemyDamage": {
        "enemy": "Fune",
        "type": "fireball",
        "hits": 1
      }
    },
    {
      "and": [
        "canUseFrozenEnemies",
        {
          "heatFrames": 70
        }
      ]
    },
    {
      "and": [
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        },
        {
          "heatFrames": 70
        }
      ]
    },
    {
      "and": [
        {
          "ammo": {
            "type": "PowerBomb",
            "count": 1
          }
        },
        {
          "heatFrames": 90
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 2
Bottom Left Door
To: 3
Right Door

Overload PLMs by shooting the gate, then go through the crumble blocks below and get to the door. The gate can be shot while precisely positioned from below without requiring any items. The positioning is precise and off camera; while facing left, position Samus front foot barely on the flat part after the slope.

Entrance condition:

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

Requires:

"Morph"
{
  "or": [
    "SpaceJump",
    {
      "and": [
        "canPreciseGrapple",
        {
          "or": [
            "canDash",
            "canUseEnemies",
            "canInsaneJump"
          ]
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    {
      "and": [
        "canDash",
        "HiJump",
        "canWalljump",
        "canTrickyJump"
      ]
    },
    {
      "and": [
        "canWalljump",
        "canUseIFrames",
        {
          "spikeHits": 1
        },
        "h_spikeJumpWithActiveEnemies"
      ]
    },
    {
      "and": [
        "h_IBJFromSpikes",
        "h_spikeJumpWithActiveEnemies"
      ]
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"
From: 2
Bottom Left Door
To: 3
Right Door

It is possible to climb the left side of the room with SpeedBooster alone, with either a tricky dash jump or a vertical shinespark, then Grapple the Ripper or ceiling blocks. With Grapple, a running jump then single Grapple swing can be used before PLMs are overloaded, alternatively jump on the crumble blocks and Grapple the Ripper.

Entrance condition:

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

Requires:

{
  "or": [
    "SpaceJump",
    "canTrickySpringBallJump",
    {
      "and": [
        "canWalljump",
        {
          "or": [
            "canDash",
            "HiJump",
            {
              "and": [
                "canBlueSuitSpikeJump",
                {
                  "spikeHits": 1
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpeedyJump"
      ]
    },
    {
      "and": [
        "canTrickyDashJump",
        "canPreciseGrapple"
      ]
    },
    {
      "and": [
        "canPreciseGrapple",
        {
          "canShineCharge": {
            "usedTiles": 28,
            "gentleUpTiles": 3,
            "gentleDownTiles": 3,
            "openEnd": 0
          }
        },
        "canMidairShinespark",
        {
          "shinespark": {
            "frames": 17,
            "excessFrames": 4
          }
        }
      ]
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"
From: 2
Bottom Left Door
To: 4
Item

Wall jump up the left wall, perform a delayed wall jump on the Fune.

Entrance condition:

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

Requires:

"canPrepareForNextRoom"
"canTrickyWalljump"
"canConsecutiveWalljump"
"canTrickyJump"
"canUseEnemies"
"canPrepareForNextRoom"
{
  "heatFrames": 300
}
{
  "or": [
    {
      "noFlashSuit": {}
    },
    "canComplexCarryFlashSuit",
    "Ice",
    "Wave",
    "Spazer",
    "Plasma",
    {
      "heatFrames": 300
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 50
    }
  ]
}

Dev note: This differs from the canPrepareForNextRoom option of the previous strat only in requiring an air entry.

From: 2
Bottom Left Door
To: 4
Item

Wall jump up the left wall, perform a delayed wall jump on the Fune.

Requires:

"canTrickyWalljump"
"canConsecutiveWalljump"
"canTrickyJump"
"canUseEnemies"
"canPrepareForNextRoom"
{
  "heatFrames": 315
}
{
  "or": [
    {
      "noFlashSuit": {}
    },
    "canComplexCarryFlashSuit",
    "Ice",
    "Wave",
    "Spazer",
    "Plasma",
    {
      "heatFrames": 300
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 50
    }
  ]
}
From: 2
Bottom Left Door
To: 4
Item

Requires:

"HiJump"
"SpaceJump"
{
  "heatFrames": 250
}
{
  "or": [
    {
      "noFlashSuit": {}
    },
    {
      "and": [
        {
          "heatFrames": 30
        },
        {
          "or": [
            "canComplexCarryFlashSuit",
            "Ice",
            "Wave",
            "Spazer",
            "Plasma"
          ]
        }
      ]
    },
    {
      "heatFrames": 300
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 50
    }
  ]
}

Clears obstacles: A

From: 2
Bottom Left Door
To: 4
Item

Requires:

"HiJump"
"canSpringBallJumpMidAir"
{
  "heatFrames": 250
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 40
    }
  ]
}

Clears obstacles: A

From: 2
Bottom Left Door
To: 4
Item

Run to the right, wait a moment for the platforms to come down, then wall jump off the second platform from the right. Alternatively, wall jump off the wall to the right to reach the platform sooner, to wall jump off of it.

Requires:

"HiJump"
"canWalljump"
"canTrickyJump"
{
  "or": [
    {
      "and": [
        "canHeroShot",
        {
          "heatFrames": 270
        },
        "canInsaneWalljump",
        "h_trickyToCarryFlashSuit",
        "canBeVeryPatient"
      ]
    },
    {
      "and": [
        {
          "heatFrames": 360
        },
        {
          "or": [
            "h_complexToCarryFlashSuit",
            "Ice",
            "Wave",
            "Spazer",
            "Plasma",
            {
              "heatFrames": 300
            }
          ]
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 120
    }
  ]
}

Clears obstacles: A

From: 2
Bottom Left Door
To: 4
Item

Requires:

"SpaceJump"
{
  "heatFrames": 310
}
{
  "or": [
    {
      "noFlashSuit": {}
    },
    {
      "and": [
        {
          "heatFrames": 60
        },
        {
          "or": [
            "canComplexCarryFlashSuit",
            "Ice",
            "Wave",
            "Spazer",
            "Plasma"
          ]
        }
      ]
    },
    {
      "heatFrames": 300
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}

Clears obstacles: A

From: 3
Right Door
To: 1
Top Left Door

Jump onto the crumble blocks to make them solid, then use them as a platform to cross the room. With Grapple, a running jump then single Grapple swing can be used before PLMs are overloaded, alternatively jump on the crumble blocks and Grapple the Ripper.

Entrance condition:

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

Requires:

{
  "or": [
    "SpaceJump",
    {
      "and": [
        "canPreciseGrapple",
        {
          "or": [
            "canDash",
            "canUseEnemies",
            "canInsaneJump"
          ]
        }
      ]
    },
    "canInsaneWalljump",
    {
      "and": [
        "HiJump",
        "canWalljump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpeedyJump"
      ]
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"

Dev note: This is only for strats that can't go to 7 - variants without Morph, or without a way to get back up after going down.

From: 3
Right Door
To: 2
Bottom Left Door

Jump onto the crumble blocks to make them solid, then use them as a platform to cross the room. With Grapple, a running jump then single Grapple swing can be used before PLMs are overloaded, alternatively jump on the crumble blocks and Grapple the Ripper.

Entrance condition:

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

Requires:

{
  "or": [
    "SpaceJump",
    {
      "and": [
        "canPreciseGrapple",
        {
          "or": [
            "canDash",
            "canUseEnemies",
            "canInsaneJump"
          ]
        }
      ]
    },
    "canInsaneWalljump",
    {
      "and": [
        "HiJump",
        "canWalljump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpeedyJump"
      ]
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"

Dev note: This is only for strats that can't go to 7 - variants without Morph.

From: 3
Right Door
To: 4
Item

Requires:

"canDash"
"HiJump"
"canInsaneJump"
"canCrumbleJump"
"canWalljump"
{
  "heatFrames": 340
}
From: 3
Right Door
To: 4
Item

Pause while crumble jumping, and quickly mid-air morph and equip Spring Ball, to obtain a boost in horizontal speed before mid-air Spring Ball jumping.

Requires:

"canCrumbleJump"
"canTrickySpringBallJump"
"canSpringFling"
"h_trickyToCarryFlashSuit"
{
  "heatFrames": 270
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        "canInsaneJump",
        {
          "heatFrames": 190
        }
      ]
    }
  ]
}
From: 3
Right Door
To: 4
Item

Jump onto the crumble blocks to make them solid, then use them as a platform to cross the room. With Grapple, a running jump then single Grapple swing can be used before PLMs are overloaded, alternatively jump on the crumble blocks and Grapple the Ripper.

Entrance condition:

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

Requires:

{
  "or": [
    "SpaceJump",
    {
      "and": [
        "canStaggeredIBJ",
        "canDoubleBombJump",
        "canBombHorizontally"
      ]
    },
    {
      "and": [
        "canDash",
        {
          "or": [
            "canTrickySpringBallJump",
            "canInsaneWalljump",
            {
              "and": [
                "HiJump",
                "canWalljump"
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpeedyJump"
              ]
            },
            "h_IBJFromSpikes"
          ]
        }
      ]
    },
    {
      "and": [
        "canPreciseGrapple",
        {
          "or": [
            "canDash",
            "canUseEnemies",
            "canInsaneJump"
          ]
        }
      ]
    }
  ]
}
{
  "heatFrames": 0
}

Dev note: FIXME: some more of these options may be possible with a blue suit, with greater difficulty.

From: 3
Right Door
To: 4
Item

Jump onto the crumble blocks to make them solid, then use them as a platform to cross the room. With Grapple, a running jump then single Grapple swing can be used before PLMs are overloaded, alternatively jump on the crumble blocks and Grapple the Ripper. In indirect G-mode, stand where the gate will spawn and exit G-mode to open the gate. In direct G-mode, overload PLMs by shooting the gate then position Samus a few pixels away from the gate to where upward diagonal shots go through it. Crouch then shoot diagonally and quickly exit G-mode (3-7 frames later) to open the gate on G-mode exit.

Entrance condition:

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

Requires:

"canComplexGMode"
"h_heatedGMode"
{
  "or": [
    "SpaceJump",
    {
      "and": [
        "canStaggeredIBJ",
        "canDoubleBombJump",
        "canBombHorizontally"
      ]
    },
    {
      "and": [
        "canDash",
        {
          "or": [
            "canTrickySpringBallJump",
            "canInsaneWalljump",
            {
              "and": [
                "HiJump",
                "canWalljump"
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpeedyJump"
              ]
            },
            "h_IBJFromSpikes"
          ]
        }
      ]
    },
    {
      "and": [
        "canPreciseGrapple",
        {
          "or": [
            "canDash",
            "canUseEnemies",
            "canInsaneJump"
          ]
        }
      ]
    }
  ]
}
{
  "heatFrames": 35
}

Clears obstacles: A

Dev note: The canComplexGMode is only used here to describe opening the gate in direct G-mode without gate glitching. However, the indirect variant still requires canHeatedGMode or Varia - with Varia, indirect strats can instead be used to go to the top left door and return. FIXME: some more of these options may be possible with a blue suit, with greater difficulty.

From: 3
Right Door
To: 4
Item

Requires:

"Grapple"
{
  "heatFrames": 155
}
{
  "or": [
    {
      "noFlashSuit": {}
    },
    {
      "and": [
        "canMidAirMorph",
        {
          "heatFrames": 35
        }
      ]
    },
    {
      "heatFrames": 80
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 15
    }
  ]
}
From: 3
Right Door
To: 4
Item

Requires:

"canDash"
"canUseIFrames"
{
  "or": [
    {
      "spikeHits": 1
    },
    {
      "and": [
        "canTrickyJump",
        {
          "enemyDamage": {
            "enemy": "Ripper 2 (green)",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "heatFrames": 20
        }
      ]
    }
  ]
}
"canWalljump"
"HiJump"
{
  "heatFrames": 230
}
From: 3
Right Door
To: 4
Item

Jump into the spike pit, hitting the Ripper to avoid spike damage. Climb the left wall while avoiding falling onto the spikes or through the crumble blocks. The ledge is the same size of that in writg.

Requires:

"canDash"
{
  "notable": "HiJumpless Wall Jump"
}
"h_heatProof"
"canInsaneWalljump"
"canHorizontalDamageBoost"
{
  "or": [
    "canUseIFrames",
    "canCrumbleJump"
  ]
}
{
  "enemyDamage": {
    "enemy": "Ripper 2 (green)",
    "type": "contact",
    "hits": 1
  }
}

Dev note: FIXME: a blue suit version of this could be possible, but would probably need to take spike hits.

From: 3
Right Door
To: 4
Item

Requires:

"SpaceJump"
{
  "heatFrames": 160
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 135
    }
  ]
}
From: 3
Right Door
To: 4
Item

Requires:

"canDash"
"h_heatedIBJFromSpikes"
{
  "heatFrames": 1100
}

Dev note: FIXME: Refine these heat frames. A crumble jump into IBJ is also possible.

From: 3
Right Door
To: 4
Item

Requires:

"canDash"
"canUseIFrames"
{
  "or": [
    {
      "spikeHits": 1
    },
    {
      "and": [
        "canTrickyJump",
        {
          "enemyDamage": {
            "enemy": "Ripper 2 (green)",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "heatFrames": 20
        }
      ]
    }
  ]
}
"canSpringBallJumpMidAir"
{
  "heatFrames": 240
}
From: 3
Right Door
To: 4
Item

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 3
  }
}

Requires:

"h_speedJump"
"canMomentumConservingMorph"
"canSpringFling"
"h_unpauseKeepMomentum"
{
  "heatFrames": 140
}

Dev note: The momentum-conserving morph is not strictly required (particularly with longer runways) but makes it easier.

From: 3
Right Door
To: 5
Junction Below Spikes

Requires:

{
  "heatFrames": 180
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 100
    }
  ]
}
{
  "or": [
    {
      "spikeHits": 1
    },
    {
      "and": [
        "canTrickyJump",
        {
          "or": [
            "canDash",
            {
              "disableEquipment": "HiJump"
            }
          ]
        }
      ]
    },
    "canInsaneJump"
  ]
}
From: 3
Right Door
To: 6
G-Mode, Remote Acquire Junction (Bottom Right)

Jump onto the crumble blocks to make them solid, then use them as a platform to get to the item. With Grapple, a running jump then single Grapple swing can be used before PLMs are overloaded, alternatively jump on the crumble blocks and Grapple the Ripper. Avoid touching all 6 crumbles, so Samus can use the item to overload PLMs and go through one of the crumbles to get to the left side of the room. If the item has already been obtained, Samus can shoot the gate many times to overload PLMs.

Entrance condition:

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

Requires:

"canRemoteAcquire"
{
  "or": [
    "SpaceJump",
    "canCeilingBombJump",
    {
      "and": [
        "canBombHorizontally",
        "canIBJ",
        "h_usePowerBomb"
      ]
    },
    {
      "and": [
        "canStaggeredIBJ",
        "canDoubleBombJump",
        "canBombHorizontally"
      ]
    },
    {
      "and": [
        "canPreciseGrapple",
        "canUseEnemies"
      ]
    },
    {
      "and": [
        "canDash",
        {
          "or": [
            "canTrickySpringBallJump",
            "canInsaneWalljump",
            {
              "and": [
                "HiJump",
                "canWalljump"
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpeedyJump"
              ]
            },
            "h_IBJFromSpikes"
          ]
        }
      ]
    }
  ]
}
{
  "heatFrames": 0
}
From: 3
Right Door
To: 7
G-Mode Junction (Bottom Right)

Jump onto the crumble blocks to make them solid, then use them as a platform to cross the room. With Grapple, a running jump then single Grapple swing can be used before PLMs are overloaded, alternatively jump on the crumble blocks and Grapple the Ripper.

Entrance condition:

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

Requires:

"Morph"
{
  "or": [
    "SpaceJump",
    "canCeilingBombJump",
    {
      "and": [
        "canStaggeredIBJ",
        "canDoubleBombJump",
        "canBombHorizontally"
      ]
    },
    {
      "and": [
        "canBombHorizontally",
        "canIBJ",
        "h_usePowerBomb"
      ]
    },
    {
      "and": [
        "canDash",
        {
          "or": [
            "canTrickySpringBallJump",
            "canInsaneWalljump",
            {
              "and": [
                "HiJump",
                "canWalljump"
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpeedyJump"
              ]
            },
            "h_IBJFromSpikes"
          ]
        }
      ]
    },
    {
      "and": [
        "canPreciseGrapple",
        {
          "or": [
            "canDash",
            "canUseEnemies",
            "canInsaneJump"
          ]
        }
      ]
    }
  ]
}
{
  "heatFrames": 0
}

Dev note: With Grapple, Morph isn't needed, but there's no reason to go there without Morph.

From: 4
Item
To: 1
Top Left Door

Requires:

{
  "heatFrames": 215
}
{
  "or": [
    {
      "and": [
        "Wave",
        {
          "heatFrames": 35
        }
      ]
    },
    {
      "obstaclesCleared": [
        "A"
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 85
    }
  ]
}

Clears obstacles: A

From: 4
Item
To: 1
Top Left Door

Requires:

{
  "heatFrames": 250
}
"h_heatedBlueGateGlitch"
{
  "or": [
    "canDash",
    {
      "heatFrames": 85
    }
  ]
}

Clears obstacles: A

From: 4
Item
To: 2
Bottom Left Door

Requires:

{
  "heatFrames": 155
}
{
  "or": [
    {
      "and": [
        "Wave",
        {
          "heatFrames": 60
        }
      ]
    },
    {
      "obstaclesCleared": [
        "A"
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 100
    }
  ]
}

Clears obstacles: A

From: 4
Item
To: 3
Right Door

Pause while crumble jumping, and quickly mid-air morph and equip Spring Ball, to obtain a boost in horizontal speed before mid-air Spring Ball jumping.

Requires:

"canCrumbleJump"
"canTrickySpringBallJump"
"canSpringFling"
"canInsaneJump"
"h_trickyToCarryFlashSuit"
{
  "heatFrames": 280
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 80
    }
  ]
}

Dev note: Compared to the other direction, this direction requires traveling one more tile horizontally, which makes it more difficult.

From: 4
Item
To: 3
Right Door

Requires:

"Grapple"
{
  "heatFrames": 165
}
{
  "or": [
    {
      "noFlashSuit": {}
    },
    {
      "and": [
        "canMidAirMorph",
        {
          "heatFrames": 20
        }
      ]
    },
    {
      "heatFrames": 90
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 4
Item
To: 3
Right Door

Requires:

"canDash"
"Grapple"
{
  "heatFrames": 145
}
{
  "or": [
    {
      "noFlashSuit": {}
    },
    {
      "and": [
        "canMidAirMorph",
        {
          "heatFrames": 20
        }
      ]
    },
    {
      "heatFrames": 90
    }
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 6,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 4
Item
To: 3
Right Door

Requires:

"SpaceJump"
{
  "heatFrames": 160
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 140
    }
  ]
}
From: 4
Item
To: 3
Right Door

Requires:

"canDash"
"SpaceJump"
{
  "heatFrames": 140
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 6,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 4
Item
To: 3
Right Door

Requires:

"h_speedJump"
"canMomentumConservingMorph"
"canSpringFling"
{
  "heatFrames": 190
}
From: 4
Item
To: 3
Right Door

Requires:

"canDash"
"h_heatedIBJFromSpikes"
{
  "heatFrames": 1100
}

Dev note: FIXME: refine these heat frames. A crumble jump into IBJ is also possible.

From: 4
Item
To: 3
Right Door

Requires:

"canDash"
"canUseIFrames"
{
  "or": [
    {
      "spikeHits": 1
    },
    {
      "and": [
        "canTrickyJump",
        {
          "enemyDamage": {
            "enemy": "Ripper 2 (green)",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "heatFrames": 10
        }
      ]
    }
  ]
}
"canSpringBallJumpMidAir"
{
  "heatFrames": 260
}
From: 4
Item
To: 3
Right Door

Requires:

"canDash"
"canWalljump"
{
  "heatFrames": 205
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 6,
    "openEnd": 1
  }
}

Collects items: 4

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 4
Item
To: 3
Right Door

Requires:

"canDash"
"canWalljump"
{
  "heatFrames": 225
}

Collects items: 4

From: 4
Item
To: 5
Junction Below Spikes

Requires:

{
  "heatFrames": 135
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
{
  "or": [
    "canCarefulJump",
    {
      "spikeHits": 1
    }
  ]
}
From: 5
Junction Below Spikes
To: 2
Bottom Left Door

Requires:

"Morph"
{
  "heatFrames": 170
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 45
    }
  ]
}
From: 5
Junction Below Spikes
To: 5
Junction Below Spikes

Requires:

"h_heatProof"
"Morph"
{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1
            ]
          }
        },
        {
          "or": [
            {
              "and": [
                "SpaceJump",
                {
                  "cycleFrames": 1060
                }
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpeedyJump",
                {
                  "cycleFrames": 940
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              2
            ]
          }
        },
        {
          "cycleFrames": 830
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              3
            ]
          }
        },
        {
          "or": [
            {
              "and": [
                "SpaceJump",
                {
                  "cycleFrames": 1160
                }
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpeedyJump",
                {
                  "or": [
                    "Grapple",
                    "canWalljump"
                  ]
                },
                {
                  "cycleFrames": 1190
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "cycleFrames": 120
    }
  ]
}

Resets obstacles: A, R-Mode

Farm cycle drops: 1 Kago

Dev note: FIXME: There are more possible item combinations.

From: 7
G-Mode Junction (Bottom Right)
To: 1
Top Left Door

With Plasma and a pause abuse, it is possible to kill the Kago and exit G-mode while killing the Kago bugs and make it to the door with a small amount of Energy remaining. Shoot Plasma and quickly exit G-Mode, so that the bugs die immediately. Avoid having spent much time on the left side of the room, as the Fune fireballs will reduce the number of drops obtained. Note that it is possible to climb the left side of the room with SpeedBooster alone, with either a tricky dash jump or a vertical shinespark.

Requires:

"Morph"
{
  "or": [
    "SpaceJump",
    "canSpringBallJumpMidAir",
    "canWalljump",
    {
      "and": [
        "HiJump",
        "canSpeedyJump"
      ]
    },
    "canTrickyDashJump",
    {
      "and": [
        {
          "canShineCharge": {
            "usedTiles": 28,
            "gentleUpTiles": 3,
            "gentleDownTiles": 3,
            "openEnd": 0
          }
        },
        "canMidairShinespark",
        {
          "shinespark": {
            "frames": 1,
            "excessFrames": 1
          }
        }
      ]
    }
  ]
}
"Plasma"
"h_heatedGModePauseAbuse"
"canInsaneJump"
"canDash"

Dev note: All of these methods are fast enough to be able to escape after obtaining the drops. The shinespark is longer than 1 frame, but is modeled this way because the drops aren't properly modeled.

From: 1
Left Door
To: 1
Left Door

Kill the Beetoms with Screw Attack or by freezing and using Bombs or Power Bombs.

Requires:

{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 370
                }
              ]
            },
            {
              "and": [
                "Ice",
                "h_useMorphBombs",
                {
                  "cycleFrames": 480
                }
              ]
            },
            {
              "and": [
                "Morph",
                {
                  "resourceAvailable": [
                    {
                      "type": "Energy",
                      "count": 50
                    }
                  ]
                },
                "h_usePowerBomb",
                {
                  "cycleFrames": 460
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 570
        }
      ]
    }
  ]
}

Farm cycle drops: 3 Beetom

Dev note: Health Bomb ends at 50 energy. One ammo can be used to gain a power bomb and then power bombs can be used to farm more power bombs.

From: 1
Left Door
To: 1
Left Door

Requires:

"h_heatProof"
"Grapple"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "cycleFrames": 300
}
{
  "or": [
    "Plasma",
    "Spazer",
    "Ice",
    "Wave",
    {
      "cycleFrames": 90
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "cycleFrames": 20
    }
  ]
}

Farm cycle drops: 1 Geruta

From: 1
Left Door
To: 1
Left Door

Requires:

"h_heatProof"
"canMidAirMorph"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "cycleFrames": 320
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "Plasma",
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 20
                }
              ]
            },
            {
              "and": [
                "Ice",
                {
                  "cycleFrames": 40
                }
              ]
            },
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 15
                }
              ]
            },
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 30
                }
              ]
            },
            {
              "cycleFrames": 200
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 50
        }
      ]
    }
  ]
}

Collects items: 3

Farm cycle drops: 1 Geruta

From: 1
Left Door
To: 3
Item

Requires:

"canDash"
"Morph"
{
  "heatFrames": 170
}
{
  "enemyKill": {
    "enemies": [
      [
        "Geruta"
      ]
    ],
    "explicitWeapons": [
      "Super",
      "Missile",
      "Plasma"
    ]
  }
}
From: 1
Left Door
To: 3
Item

Requires:

"canDash"
"Morph"
{
  "heatFrames": 300
}
From: 2
Right Door
To: 2
Right Door

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "and": [
                {
                  "or": [
                    "ScrewAttack",
                    "Plasma"
                  ]
                },
                {
                  "cycleFrames": 90
                }
              ]
            },
            {
              "and": [
                {
                  "or": [
                    "Ice",
                    "Spazer",
                    "Wave",
                    "canPseudoScrew"
                  ]
                },
                {
                  "cycleFrames": 110
                }
              ]
            },
            {
              "and": [
                "h_lavaProof",
                {
                  "cycleFrames": 210
                }
              ]
            },
            {
              "and": [
                "canTrickyJump",
                {
                  "cycleFrames": 270
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 110
        }
      ]
    }
  ]
}

Farm cycle drops: 1 Geruta

From: 2
Right Door
To: 3
Item

Requires:

"canDash"
{
  "heatFrames": 130
}
From: 2
Right Door
To: 3
Item

Requires:

"canDash"
"canPrepareForNextRoom"
{
  "enemyKill": {
    "enemies": [
      [
        "Geruta"
      ]
    ],
    "explicitWeapons": [
      "Super",
      "Missile",
      "Plasma",
      "ScrewAttack"
    ]
  }
}
{
  "heatFrames": 80
}
From: 3
Item
To: 1
Left Door

Requires:

{
  "or": [
    "canTrivialMidAirMorph",
    "h_useSpringBall",
    {
      "and": [
        "h_usePowerBomb",
        {
          "heatFrames": 260
        }
      ]
    },
    {
      "and": [
        "Morph",
        "Wave",
        {
          "heatFrames": 180
        }
      ]
    }
  ]
}
{
  "heatFrames": 175
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}

Collects items: 3

Dev note: The Wave and Power Bomb options ride the rising tower, to avoid a mid-air morph.

From: 3
Item
To: 2
Right Door

Requires:

{
  "heatFrames": 105
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}

Collects items: 3

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":80}]}
From: 3
Item
To: 2
Right Door

Requires:

"canDash"
{
  "heatFrames": 90
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 3,
    "openEnd": 1
  }
}

Collects items: 3

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":30}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":80}]}
From: 1
Top Left Door
To: 4
Top Right Door

Requires:

{
  "heatFrames": 85
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 30
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
From: 1
Top Left Door
To: 5
Middle Junction (Ledge Right of Morph Tunnel)

Requires:

{
  "heatFrames": 100
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 35
    }
  ]
}
From: 2
Middle Left Door
To: 2
Middle Left Door

Requires:

"h_heatProof"
"Morph"
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "and": [
                {
                  "or": [
                    "Plasma",
                    "Wave",
                    "Spazer"
                  ]
                },
                {
                  "cycleFrames": 630
                }
              ]
            },
            {
              "and": [
                "Grapple",
                {
                  "cycleFrames": 680
                }
              ]
            },
            {
              "cycleFrames": 770
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 810
        }
      ]
    }
  ]
}

Resets obstacles: A, R-Mode

Farm cycle drops: 4 Viola

From: 2
Middle Left Door
To: 3
Bottom Left Door

Requires:

"Morph"
{
  "heatFrames": 225
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "heatFrames": 10
            },
            "canMockball",
            {
              "obstaclesCleared": [
                "A"
              ]
            }
          ]
        }
      ]
    },
    {
      "heatFrames": 15
    }
  ]
}

Clears obstacles: A

Unlocks doors:

{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 2
Middle Left Door
To: 5
Middle Junction (Ledge Right of Morph Tunnel)

Requires:

"Morph"
{
  "heatFrames": 165
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "heatFrames": 10
            },
            "canMockball",
            {
              "obstaclesCleared": [
                "A"
              ]
            }
          ]
        }
      ]
    },
    {
      "heatFrames": 25
    }
  ]
}

Clears obstacles: A

From: 3
Bottom Left Door
To: 3
Bottom Left Door

Requires:

"h_heatProof"
{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1,
              4
            ]
          }
        },
        {
          "or": [
            {
              "and": [
                "canDash",
                {
                  "or": [
                    {
                      "and": [
                        {
                          "or": [
                            "Plasma",
                            "Wave",
                            "Spazer"
                          ]
                        },
                        {
                          "cycleFrames": 450
                        }
                      ]
                    },
                    {
                      "and": [
                        "Grapple",
                        {
                          "cycleFrames": 530
                        }
                      ]
                    },
                    {
                      "cycleFrames": 660
                    }
                  ]
                }
              ]
            },
            {
              "and": [
                {
                  "haveBlueSuit": {}
                },
                {
                  "cycleFrames": 565
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              3
            ]
          }
        },
        {
          "or": [
            {
              "and": [
                "canDash",
                {
                  "or": [
                    {
                      "and": [
                        {
                          "or": [
                            "Plasma",
                            "Wave",
                            "Spazer"
                          ]
                        },
                        {
                          "cycleFrames": 450
                        }
                      ]
                    },
                    {
                      "cycleFrames": 500
                    }
                  ]
                }
              ]
            },
            {
              "and": [
                {
                  "haveBlueSuit": {}
                },
                {
                  "cycleFrames": 570
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}

Resets obstacles: A, R-Mode

Farm cycle drops: 4 Viola

From: 3
Bottom Left Door
To: 5
Middle Junction (Ledge Right of Morph Tunnel)

Requires:

{
  "heatFrames": 120
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 4
Top Right Door
To: 1
Top Left Door

Requires:

{
  "heatFrames": 85
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 30
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
From: 4
Top Right Door
To: 5
Middle Junction (Ledge Right of Morph Tunnel)

Requires:

{
  "heatFrames": 85
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 5
Middle Junction (Ledge Right of Morph Tunnel)
To: 1
Top Left Door

Requires:

{
  "heatFrames": 140
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 5
Middle Junction (Ledge Right of Morph Tunnel)
To: 2
Middle Left Door

Requires:

"Morph"
{
  "heatFrames": 150
}
{
  "or": [
    {
      "and": [
        "Wave",
        {
          "heatFrames": 30
        }
      ]
    },
    {
      "obstaclesCleared": [
        "A"
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 40
    }
  ]
}

Clears obstacles: A

From: 5
Middle Junction (Ledge Right of Morph Tunnel)
To: 2
Middle Left Door

Requires:

"Morph"
{
  "heatFrames": 150
}
"h_heatedBlueGateGlitch"
{
  "or": [
    "canDash",
    {
      "heatFrames": 65
    }
  ]
}

Clears obstacles: A

From: 5
Middle Junction (Ledge Right of Morph Tunnel)
To: 2
Middle Left Door

Requires:

"canDash"
"Morph"
{
  "heatFrames": 150
}
{
  "or": [
    {
      "and": [
        "Wave",
        {
          "heatFrames": 30
        }
      ]
    },
    {
      "obstaclesCleared": [
        "A"
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 11,
    "openEnd": 0,
    "gentleDownTiles": 4
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":70}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 5
Middle Junction (Ledge Right of Morph Tunnel)
To: 2
Middle Left Door

Requires:

"canDash"
"Morph"
{
  "heatFrames": 150
}
"h_heatedBlueGateGlitch"

Exit condition:

{
  "leaveWithRunway": {
    "length": 11,
    "openEnd": 0,
    "gentleDownTiles": 4
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":90}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 5
Middle Junction (Ledge Right of Morph Tunnel)
To: 3
Bottom Left Door

Requires:

{
  "heatFrames": 115
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 15
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 5
Middle Junction (Ledge Right of Morph Tunnel)
To: 3
Bottom Left Door

Requires:

"canDash"
{
  "heatFrames": 160
}

Exit condition:

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

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 1
Left Door
To: 2
Right Door

Entrance condition:

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

Requires:

"Gravity"
{
  "or": [
    {
      "lavaFrames": 280
    },
    {
      "and": [
        "SpaceJump",
        {
          "lavaFrames": 240
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "disableEquipment": "SpeedBooster"
        },
        {
          "or": [
            {
              "notable": "Thread the Needle Entry"
            },
            {
              "heatFrames": 20
            }
          ]
        }
      ]
    },
    {
      "lavaFrames": 100
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"
From: 1
Left Door
To: 2
Right Door

Perform a Crystal Flash in order to refill reserves. Position Samus below the 2-tile space of the ceiling Morph tunnel. Jump as Samus reaches 4 Energy, and mid-air morph, timed so that reserves trigger while Samus still has upward momentum just before Samus would hit the ceiling. If done properly, the R-mode standup will cause Samus to clip into the ceiling Morph tunnel. If successful, Samus will end up crouched in the tunnel; press down to morph, then roll out to the right to exit the room.

With a mid-air morph, this has a 4-frame window for the jump. It is also an option to pause abuse: instead of jumping at a precise Energy value, set reserves to manual, wait until Samus is close to zero Energy, then press pause and wait a moment before jumping (firing a shot when pausing may help create a visual cue), so that Samus is at 0 Energy and in position just below the ceiling when the pause hits. Then set reserves to auto (and re-equip Varia if available) and unpause.

Entrance condition:

{
  "comeInWithRMode": {}
}

Requires:

"h_heatedCrystalFlash"
"canRModeStandupClip"
"canInsaneJump"
{
  "heatFrames": 140
}
{
  "disableEquipment": "Varia"
}
{
  "autoReserveTrigger": {}
}
{
  "heatFrames": 275
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 15
    }
  ]
}

Dev note: Jumping using Spring Ball is also possible, which simplifies the movement by avoiding the need for a mid-air morph; it still has a 4-frame window for the jump timing. Jumping and aiming down is also possible but only gives a 2-frame window for the jump.

From: 1
Left Door
To: 3
Above Lava Junction

Requires:

{
  "heatFrames": 90
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 50
    }
  ]
}
From: 1
Left Door
To: 5
Lava, Center Namihe

Gain a specifc amount of speed by running from a standstill, starting slightly more than 3 tiles from the edge of the Ridley statue jaw. Jump on the last possible frame (second-to-last frame may also work, depending on subpixels). If successful, Samus will avoid bonking the wall and will land directly in front of the Namihe.

Requires:

{
  "notable": "Thread the Needle Entry"
}
{
  "or": [
    "canSuitlessLavaDive",
    "Gravity"
  ]
}
"canDash"
"canInsaneJump"
{
  "heatFrames": 200
}
{
  "lavaFrames": 60
}

Dev note: Starting horizontal positions between $F2 and $FB will work consistently with a last-frame jump. Positions further left can also work but may require an earlier jump. Gravity only makes about 1 or 2 frames of difference here, which we ignore.

From: 2
Right Door
To: 1
Left Door

Entrance condition:

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

Requires:

{
  "lavaFrames": 210
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "disableEquipment": "SpeedBooster"
        }
      ]
    },
    {
      "lavaFrames": 60
    }
  ]
}
"canSuitlessLavaDive"
"canGravityJump"
{
  "or": [
    {
      "and": [
        "HiJump",
        {
          "gravitylessLavaFrames": 115
        }
      ]
    },
    {
      "and": [
        "canTrickyWalljump",
        "canTrickyJump",
        {
          "gravitylessLavaFrames": 175
        }
      ]
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"

Dev note: FIXME: Many strats without Gravity have been skipped for now.

From: 2
Right Door
To: 1
Left Door

Entrance condition:

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

Requires:

"Gravity"
"SpaceJump"
{
  "lavaFrames": 280
}
{
  "or": [
    {
      "and": [
        {
          "disableEquipment": "SpeedBooster"
        },
        "canDash"
      ]
    },
    {
      "lavaFrames": 80
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"

Dev note: FIXME: GT Max Suitless climb could be added, but is likely not reasonable.

From: 2
Right Door
To: 1
Left Door

Wall jump off of the Upper-Left Namihe and then Spring Ball jump up and out of the Lava. Pausing early in order to get more horizontal distance by equiping Spring Ball may help.

Entrance condition:

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

Requires:

{
  "notable": "HiJump"
}
"Gravity"
"canSpringwall"
"HiJump"
"canUseEnemies"
{
  "lavaFrames": 390
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "disableEquipment": "SpeedBooster"
        }
      ]
    },
    {
      "lavaFrames": 150
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"

Dev note: This strat is not useful unless Samus has lava proof but not heat proof. Otherwise, the non-G-mode variant can be used. FIXME: These lava frames are lenient, they are what it would take without Gravity (the non-G-mode variant also doesnt account for Gravity).

From: 2
Right Door
To: 3
Above Lava Junction

Samus will be slowed by lava if Speed Booster is equipped, even with Gravity.

Requires:

{
  "or": [
    "h_lavaProof",
    "canSuitlessLavaDive"
  ]
}
"Gravity"
"SpaceJump"
{
  "heatFrames": 340
}
{
  "lavaFrames": 280
}
{
  "or": [
    {
      "and": [
        {
          "disableEquipment": "SpeedBooster"
        },
        "canDash"
      ]
    },
    {
      "and": [
        {
          "heatFrames": 120
        },
        {
          "lavaFrames": 120
        }
      ]
    }
  ]
}
From: 2
Right Door
To: 3
Above Lava Junction

Use the platform above the third Namihe to run and jump into a diagonal spark.

Requires:

"Gravity"
{
  "or": [
    "h_lavaProof",
    "canSuitlessLavaDive"
  ]
}
"canDash"
{
  "disableEquipment": "SpeedBooster"
}
{
  "useFlashSuit": {}
}
{
  "shinespark": {
    "frames": 23
  }
}
{
  "heatFrames": 425
}
{
  "lavaFrames": 275
}

Dev note: FIXME: a version with SpeedBooster equipped is possible, with more energy usage.

From: 2
Right Door
To: 3
Above Lava Junction

Use a flash suit to shinespark out of the lava. A diagonal spark is slightly better though Samus will barely move horizontally.

Requires:

"canSuitlessLavaDive"
"canDash"
{
  "disableEquipment": "SpeedBooster"
}
{
  "useFlashSuit": {}
}
{
  "or": [
    {
      "and": [
        "canBounceBall",
        {
          "lavaFrames": 270
        },
        {
          "shinespark": {
            "frames": 32
          }
        },
        {
          "heatFrames": 420
        }
      ]
    },
    {
      "and": [
        {
          "lavaFrames": 375
        },
        {
          "shinespark": {
            "frames": 27
          }
        },
        {
          "heatFrames": 525
        }
      ]
    }
  ]
}
From: 2
Right Door
To: 5
Lava, Center Namihe

Samus will be slowed by lava if Speed Booster is equipped, even with Gravity.

Requires:

{
  "or": [
    "h_lavaProof",
    "canSuitlessLavaDive"
  ]
}
"Gravity"
{
  "heatFrames": 250
}
{
  "lavaFrames": 190
}
{
  "or": [
    {
      "and": [
        {
          "disableEquipment": "SpeedBooster"
        },
        "canDash"
      ]
    },
    {
      "and": [
        {
          "heatFrames": 50
        },
        {
          "lavaFrames": 50
        }
      ]
    }
  ]
}
From: 3
Above Lava Junction
To: 1
Left Door

Requires:

{
  "heatFrames": 104
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 50
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":10}]}
From: 4
Lava, Left Wall
To: 5
Lava, Center Namihe

Samus will be slowed by lava if SpeedBooster is equipped, even with Gravity.

Requires:

{
  "or": [
    {
      "and": [
        "Gravity",
        {
          "heatFrames": 180
        },
        {
          "lavaFrames": 180
        }
      ]
    },
    {
      "and": [
        "Gravity",
        {
          "disableEquipment": "SpeedBooster"
        },
        "canDash",
        {
          "heatFrames": 140
        },
        {
          "lavaFrames": 140
        }
      ]
    },
    {
      "and": [
        {
          "heatFrames": 210
        },
        {
          "lavaFrames": 210
        }
      ]
    }
  ]
}
From: 5
Lava, Center Namihe
To: 2
Right Door

Samus will be slowed by lava if SpeedBooster is equipped, even with Gravity.

Requires:

"Gravity"
{
  "or": [
    "h_lavaProof",
    "canSuitlessLavaDive"
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "disableEquipment": "SpeedBooster"
        },
        {
          "heatFrames": 270
        },
        {
          "lavaFrames": 220
        }
      ]
    },
    {
      "and": [
        "canDash",
        {
          "disableEquipment": "SpeedBooster"
        },
        "SpaceJump",
        "canCarefulJump",
        {
          "heatFrames": 225
        },
        {
          "lavaFrames": 180
        }
      ]
    },
    {
      "and": [
        {
          "heatFrames": 330
        },
        {
          "lavaFrames": 300
        }
      ]
    }
  ]
}
From: 5
Lava, Center Namihe
To: 4
Lava, Left Wall

Samus will be slowed by lava if SpeedBooster is equipped, even with Gravity.

Requires:

{
  "or": [
    {
      "and": [
        "Gravity",
        {
          "heatFrames": 195
        },
        {
          "lavaFrames": 195
        }
      ]
    },
    {
      "and": [
        "Gravity",
        "canDash",
        {
          "disableEquipment": "SpeedBooster"
        },
        {
          "heatFrames": 150
        },
        {
          "lavaFrames": 150
        }
      ]
    },
    {
      "and": [
        {
          "heatFrames": 200
        },
        {
          "lavaFrames": 200
        }
      ]
    }
  ]
}
From: 1
Left Door
To: 4
Gamet Farm Junction

Requires:

{
  "heatFrames": 50
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 25
    }
  ]
}
From: 2
Right Door
To: 4
Gamet Farm Junction

Requires:

{
  "heatFrames": 180
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 120
    }
  ]
}
From: 3
Top Door
To: 2
Right Door

Requires:

{
  "heatFrames": 40
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}
From: 3
Top Door
To: 4
Gamet Farm Junction

Requires:

{
  "heatFrames": 175
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 105
    }
  ]
}
From: 4
Gamet Farm Junction
To: 1
Left Door

Requires:

{
  "heatFrames": 75
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 25
    }
  ]
}
From: 4
Gamet Farm Junction
To: 1
Left Door

Requires:

"canDash"
{
  "heatFrames": 10
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 14,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["ammo"],"requires":[]}
From: 4
Gamet Farm Junction
To: 2
Right Door

Requires:

{
  "heatFrames": 205
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 135
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[]}
From: 4
Gamet Farm Junction
To: 2
Right Door

Requires:

"canDash"
{
  "heatFrames": 440
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

{"types":["missiles","powerbomb"],"requires":["never"]}
{"types":["super"],"requires":[]}

Dev note: FIXME: with Ice, this could be done dashless.

From: 4
Gamet Farm Junction
To: 2
Right Door

Requires:

"canDash"
{
  "heatFrames": 155
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 14,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":40}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 4
Gamet Farm Junction
To: 3
Top Door

Requires:

{
  "heatFrames": 210
}
{
  "or": [
    "h_trickyToCarryFlashSuit",
    {
      "heatFrames": 40
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 110
    }
  ]
}
From: 4
Gamet Farm Junction
To: 3
Top Door

Bring a Gamet from the farm and freeze it at a precise distance below the door in order to crouch-jump up and clip through the door shell. The pixel window is larger and higher with Morph and an X-Ray stand-up, in which case a standing jump is used.

Requires:

{
  "or": [
    "canDash",
    "h_heatProof"
  ]
}
{
  "heatFrames": 560
}
"h_iceClip"

Bypasses door shell: true

Dev note: FIXME: This could be done dashless without heat protection.

From: 4
Gamet Farm Junction
To: 3
Top Door

Requires:

{
  "heatFrames": 220
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 110
    }
  ]
}

Exit condition:

{
  "leaveWithDoorFrameBelow": {
    "height": 2
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 4
Gamet Farm Junction
To: 3
Top Door

Requires:

{
  "heatFrames": 220
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 110
    }
  ]
}

Exit condition:

{
  "leaveWithPlatformBelow": {
    "height": 9,
    "leftPosition": -7.5,
    "rightPosition": 2
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 4
Gamet Farm Junction
To: 3
Top Door

Position below the door, jump when Samus reaches 7 Energy, and mid-air morph, timed so that reserves trigger while Samus still has upward momentum just before Samus would hit the door. If done properly, the R-mode standup will cause Samus to clip past the door shell.

With a mid-air morph, this has a 5-frame window for the jump. Otherwise, with a jump aim-down it has a 3-frame window. If Spring Ball is available, jumping in Spring Ball increases the window to 6 frames. In any case, it may help to pause abuse: instead of jumping at a precise Energy value, set reserves to manual, wait until Samus is close to zero Energy, and press pause a moment before jumping, so that Samus is at 0 energy and in position just below the door when the pause hits. Then set reserves to auto (and re-equip Varia if available), and unpause.

Requires:

{
  "obstaclesCleared": [
    "R-Mode"
  ]
}
"canDash"
"canRModeStandupClip"
"canInsaneJump"
{
  "or": [
    "canMidAirMorph",
    "canBeVeryPatient"
  ]
}
{
  "heatFrames": 210
}
{
  "disableEquipment": "Varia"
}
{
  "autoReserveTrigger": {}
}
{
  "heatFrames": 5
}

Bypasses door shell: true

From: 1
Left Door
To: 2
Right Door

While crossing the Spiky Lava, land on frozen Yapping Maws to reduce the number of spike hits needed. Damage boost towards then freeze the Leftmost enemy as it extends. Morph and unmorph while above the middle Yapping Maw to land on it just above the lava line. Ignore the rightmost Yapping Maw. Delay the damage boost from the spikes slightly in order to rise above the lava before moving.

Requires:

{
  "notable": "Frozen Maw Platforms"
}
"canDash"
"canResetFallSpeed"
"canTrickyUseFrozenEnemies"
"canTrickyJump"
{
  "or": [
    {
      "and": [
        {
          "notable": "Suitless Damage Boosts"
        },
        "canHorizontalDamageBoost"
      ]
    },
    {
      "and": [
        {
          "spikeHits": 2
        },
        {
          "lavaFrames": 30
        },
        {
          "heatFrames": 240
        }
      ]
    }
  ]
}
"canUseIFrames"
{
  "spikeHits": 2
}
{
  "lavaFrames": 35
}
{
  "heatFrames": 520
}
"h_complexToCarryFlashSuit"
From: 1
Left Door
To: 2
Right Door

Entrance condition:

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

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        {
          "lavaFrames": 150
        },
        {
          "spikeHits": 7
        }
      ]
    },
    {
      "and": [
        {
          "notable": "Suitless Damage Boosts"
        },
        {
          "lavaFrames": 80
        },
        {
          "spikeHits": 3
        },
        "canUseIFrames",
        "canHorizontalDamageBoost"
      ]
    },
    {
      "and": [
        "Gravity",
        {
          "disableEquipment": "SpeedBooster"
        },
        {
          "lavaFrames": 100
        },
        {
          "spikeHits": 2
        },
        {
          "or": [
            "canUseIFrames",
            "canHorizontalDamageBoost"
          ]
        }
      ]
    },
    {
      "and": [
        {
          "notable": "Frozen Maw Platforms"
        },
        "canResetFallSpeed",
        "canTrickyUseFrozenEnemies",
        "canTrickyJump",
        "canHorizontalDamageBoost",
        "canUseIFrames",
        {
          "spikeHits": 2
        },
        {
          "lavaFrames": 15
        }
      ]
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"

Dev note: FIXME: Grapple could maybe be used to skip some damage by partially swinging across the room. Blue suit damage boost options could also be added.

From: 1
Left Door
To: 2
Right Door

Uses a runway of at least 14 tiles in the adjacent room. Disable SpeedBooster after jumping so that the lava will not take away all of Samus' momentum.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 14
  }
}

Requires:

"Gravity"
"h_speedJump"
{
  "disableEquipment": "SpeedBooster"
}
"canSpringBallBounce"
"canTrickyJump"
{
  "spikeHits": 1
}
{
  "heatFrames": 240
}
{
  "lavaFrames": 10
}
From: 1
Left Door
To: 2
Right Door

Pause abuse the spike and lava damage to cross the room while losing minimal Energy.

Requires:

"canDash"
{
  "noFlashSuit": {}
}
{
  "notable": "Pause Abuse Damage Boosts"
}
{
  "or": [
    {
      "and": [
        {
          "disableEquipment": "SpeedBooster"
        },
        "Gravity"
      ]
    },
    {
      "and": [
        "canInsaneJump",
        {
          "notable": "Suitless Damage Boosts"
        }
      ]
    }
  ]
}
"canHorizontalDamageBoost"
"canPauseAbuse"
{
  "resourceAvailable": [
    {
      "type": "RegularEnergy",
      "count": 99
    },
    {
      "type": "ReserveEnergy",
      "count": 100
    }
  ]
}
{
  "resourceAtMost": [
    {
      "type": "RegularEnergy",
      "count": 1
    }
  ]
}
{
  "lavaFrames": 30
}
{
  "heatFrames": 340
}

Dev note: Energy ineffeciency is necessary and is represented by extra heatFrames.

From: 1
Left Door
To: 2
Right Door

Requires:

"SpaceJump"
{
  "heatFrames": 390
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 300
    }
  ]
}

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 12.4375
  }
}

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 195
}
From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 17
  }
}

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 175
}
From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 26
  }
}

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 145
}
From: 1
Left Door
To: 2
Right Door

Entrance condition:

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

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 250
}
From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 9
  }
}

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 225
}
From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 45
  }
}

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 120
}
From: 1
Left Door
To: 2
Right Door

Damage boosts can be used to save energy - delay the damage boost from the spikes slightly in order to rise above the lava before moving.

Requires:

"canDash"
{
  "notable": "Suitless Damage Boosts"
}
{
  "heatFrames": 460
}
{
  "lavaFrames": 60
}
{
  "spikeHits": 3
}
"canUseIFrames"
"canHorizontalDamageBoost"
From: 1
Left Door
To: 2
Right Door

Uses a runway of at least 21 tiles in the adjacent room. It will help to perform the first jump with HiJump disabled. Disable SpeedBooster before Samus reaches the lava.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 21
  }
}

Requires:

"h_speedJump"
"HiJump"
{
  "disableEquipment": "HiJump"
}
{
  "disableEquipment": "SpeedBooster"
}
"canSpringBallBounce"
"canTrickyJump"
{
  "spikeHits": 1
}
{
  "heatFrames": 200
}
{
  "lavaFrames": 11
}

Dev note: SpringFling can be used to extend the last SpringBall bounce so that runway can be shortened, but it mostly inflates the number of strats.

From: 1
Left Door
To: 2
Right Door

Uses a runway of at least 8 tiles in the adjacent room. It will help to perform the first jump with HiJump disabled. Disable SpeedBooster before Samus reaches the lava.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 8
  }
}

Requires:

"canTrickyJump"
"h_speedJump"
"HiJump"
{
  "disableEquipment": "HiJump"
}
{
  "disableEquipment": "SpeedBooster"
}
"canSpringBallBounce"
{
  "spikeHits": 2
}
{
  "heatFrames": 311
}
{
  "lavaFrames": 22
}
From: 1
Left Door
To: 2
Right Door

Requires:

"canDash"
{
  "heatFrames": 820
}
{
  "lavaFrames": 150
}
{
  "spikeHits": 7
}
From: 1
Left Door
To: 2
Right Door

Speedbooster significantly reduces your jump speed in lava and should be turned off.

Requires:

"canDash"
"Gravity"
{
  "disableEquipment": "SpeedBooster"
}
{
  "heatFrames": 330
}
{
  "lavaFrames": 90
}
{
  "spikeHits": 2
}
{
  "or": [
    "canUseIFrames",
    {
      "and": [
        {
          "spikeHits": 2
        },
        {
          "heatFrames": 50
        }
      ]
    }
  ]
}
{
  "or": [
    "canHorizontalDamageBoost",
    {
      "and": [
        {
          "heatFrames": 20
        },
        {
          "lavaFrames": 20
        }
      ]
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

While crossing the Spiky Lava, land on frozen Yapping Maws to reduce the number of spike hits needed. Morph and unmorph while above the rightmost Yapping Maw to land on it just above the lava line. Ignore the second Yapping Maw. Freeze the Leftmost enemy as it extends. Delay the damage boost from the spikes slightly in order to rise above the lava before moving.

Requires:

"canDash"
{
  "notable": "Frozen Maw Platforms"
}
"canResetFallSpeed"
"canTrickyUseFrozenEnemies"
"canTrickyJump"
{
  "or": [
    {
      "and": [
        {
          "notable": "Suitless Damage Boosts"
        },
        "canHorizontalDamageBoost"
      ]
    },
    {
      "and": [
        {
          "spikeHits": 1
        },
        {
          "lavaFrames": 20
        },
        {
          "heatFrames": 240
        }
      ]
    }
  ]
}
"canUseIFrames"
{
  "spikeHits": 2
}
{
  "lavaFrames": 35
}
{
  "heatFrames": 520
}
"h_complexToCarryFlashSuit"
From: 2
Right Door
To: 1
Left Door

Entrance condition:

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

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        {
          "lavaFrames": 150
        },
        {
          "spikeHits": 7
        }
      ]
    },
    {
      "and": [
        {
          "notable": "Suitless Damage Boosts"
        },
        {
          "lavaFrames": 80
        },
        {
          "spikeHits": 3
        },
        "canUseIFrames",
        "canHorizontalDamageBoost"
      ]
    },
    {
      "and": [
        "Gravity",
        {
          "disableEquipment": "SpeedBooster"
        },
        {
          "lavaFrames": 100
        },
        {
          "spikeHits": 2
        },
        {
          "or": [
            "canUseIFrames",
            "canHorizontalDamageBoost"
          ]
        }
      ]
    },
    {
      "and": [
        {
          "notable": "Frozen Maw Platforms"
        },
        "canResetFallSpeed",
        "canTrickyUseFrozenEnemies",
        "canTrickyJump",
        "canHorizontalDamageBoost",
        "canUseIFrames",
        {
          "spikeHits": 2
        },
        {
          "lavaFrames": 15
        }
      ]
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"

Dev note: FIXME: Grapple could maybe be used to skip some damage by partially swinging across the room.

From: 2
Right Door
To: 1
Left Door

Uses a runway of at least 14 tiles in the adjacent room. Disable SpeedBooster after jumping so that the lava will not take away all of Samus' momentum.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 14
  }
}

Requires:

"Gravity"
"h_speedJump"
{
  "disableEquipment": "SpeedBooster"
}
"canSpringBallBounce"
"canTrickyJump"
{
  "spikeHits": 1
}
{
  "heatFrames": 240
}
{
  "lavaFrames": 10
}
From: 2
Right Door
To: 1
Left Door

Pause abuse the spike and lava damage to cross the room while losing minimal Energy.

Requires:

"canDash"
{
  "noFlashSuit": {}
}
{
  "notable": "Pause Abuse Damage Boosts"
}
{
  "or": [
    {
      "and": [
        {
          "disableEquipment": "SpeedBooster"
        },
        "Gravity"
      ]
    },
    {
      "and": [
        "canInsaneJump",
        {
          "notable": "Suitless Damage Boosts"
        }
      ]
    }
  ]
}
"canHorizontalDamageBoost"
"canPauseAbuse"
{
  "resourceAvailable": [
    {
      "type": "RegularEnergy",
      "count": 99
    },
    {
      "type": "ReserveEnergy",
      "count": 100
    }
  ]
}
{
  "resourceAtMost": [
    {
      "type": "RegularEnergy",
      "count": 1
    }
  ]
}
{
  "lavaFrames": 30
}
{
  "heatFrames": 340
}

Dev note: Energy ineffeciency is necessary and is represented by extra heatFrames.

From: 2
Right Door
To: 1
Left Door

Requires:

"SpaceJump"
{
  "heatFrames": 390
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 300
    }
  ]
}

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 12.4375
  }
}

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 195
}
From: 2
Right Door
To: 1
Left Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 17
  }
}

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 175
}
From: 2
Right Door
To: 1
Left Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 26
  }
}

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 145
}
From: 2
Right Door
To: 1
Left Door

Entrance condition:

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

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 250
}
From: 2
Right Door
To: 1
Left Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 9
  }
}

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 225
}
From: 2
Right Door
To: 1
Left Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 45
  }
}

Requires:

"h_speedJump"
"SpaceJump"
{
  "heatFrames": 120
}
From: 2
Right Door
To: 1
Left Door

Damage boosts can be used to save energy - delay the damage boost from the spikes slightly in order to rise above the lava before moving.

Requires:

"canDash"
{
  "notable": "Suitless Damage Boosts"
}
{
  "heatFrames": 460
}
{
  "lavaFrames": 60
}
{
  "spikeHits": 3
}
"canUseIFrames"
"canHorizontalDamageBoost"
From: 2
Right Door
To: 1
Left Door

Uses a runway of at least 21 tiles in the adjacent room. It will help to perform the first jump with HiJump disabled. Disable SpeedBooster before Samus reaches the lava.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 21
  }
}

Requires:

"h_speedJump"
"HiJump"
{
  "disableEquipment": "HiJump"
}
{
  "disableEquipment": "SpeedBooster"
}
"canSpringBallBounce"
"canTrickyJump"
{
  "spikeHits": 1
}
{
  "heatFrames": 200
}
{
  "lavaFrames": 11
}

Dev note: SpringFling can be used to extend the last SpringBall bounce so that runway can be shortened, but it mostly inflates the number of strats.

From: 2
Right Door
To: 1
Left Door

Uses a runway of at least 8 tiles in the adjacent room. It will help to perform the first jump with HiJump disabled. Disable SpeedBooster before Samus reaches the lava.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 8
  }
}

Requires:

"h_speedJump"
"canTrickyJump"
"HiJump"
{
  "disableEquipment": "HiJump"
}
{
  "disableEquipment": "SpeedBooster"
}
"canSpringBallBounce"
{
  "spikeHits": 2
}
{
  "heatFrames": 311
}
{
  "lavaFrames": 22
}
From: 2
Right Door
To: 1
Left Door

Requires:

"canDash"
{
  "heatFrames": 820
}
{
  "lavaFrames": 150
}
{
  "spikeHits": 7
}
From: 2
Right Door
To: 1
Left Door

Speedbooster significantly reduces your jump speed in lava and should be turned off.

Requires:

"canDash"
"Gravity"
{
  "disableEquipment": "SpeedBooster"
}
{
  "heatFrames": 330
}
{
  "lavaFrames": 90
}
{
  "spikeHits": 2
}
{
  "or": [
    "canUseIFrames",
    {
      "and": [
        {
          "spikeHits": 2
        },
        {
          "heatFrames": 50
        }
      ]
    }
  ]
}
{
  "or": [
    "canHorizontalDamageBoost",
    {
      "and": [
        {
          "heatFrames": 20
        },
        {
          "lavaFrames": 20
        }
      ]
    }
  ]
}
From: 1
Left Door
To: 2
Right Door

Requires:

{
  "heatFrames": 55
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 1
Left Door
To: 2
Right Door

Requires:

"canDash"
{
  "heatFrames": 10
}

Exit condition:

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

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}

Dev note: The 10 heat frames are for moonwalking back against the door on entry. FIXME: heat frames to unlock the door could be reduced.

From: 1
Left Door
To: 2
Right Door

Requires:

"canDash"
{
  "doorUnlockedAtNode": 1
}
{
  "heatFrames": 65
}

Exit condition:

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

Unlocks doors:

{"nodeId":2,"types":["missiles"],"requires":[{"heatFrames":50}]}
{"nodeId":2,"types":["super"],"requires":[]}
{"nodeId":2,"types":["powerbomb"],"requires":[{"heatFrames":110}]}

Dev note: The 65 heat frames are for shooting open the door and moonwalking back into the doorway. FIXME: heat frames to unlock the door could be reduced.

From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInWithStoredFallSpeed": {
    "fallSpeedInTiles": 1
  }
}

Requires:

{
  "heatFrames": 55
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}

Exit condition:

{
  "leaveWithStoredFallSpeed": {
    "fallSpeedInTiles": 1
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInWithStoredFallSpeed": {
    "fallSpeedInTiles": 2
  }
}

Requires:

{
  "heatFrames": 55
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}

Exit condition:

{
  "leaveWithStoredFallSpeed": {
    "fallSpeedInTiles": 2
  }
}

Unlocks doors:

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

Requires:

{
  "heatFrames": 30
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

Requires:

{
  "heatFrames": 55
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

Requires:

"canDash"
{
  "heatFrames": 10
}

Exit condition:

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

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}

Dev note: The 10 heat frames are for moonwalking back against the door on entry. FIXME: heat frames to unlock the door could be reduced.

From: 2
Right Door
To: 1
Left Door

Requires:

"canDash"
{
  "doorUnlockedAtNode": 2
}
{
  "heatFrames": 65
}

Exit condition:

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

Unlocks doors:

{"nodeId":1,"types":["missiles"],"requires":[{"heatFrames":50}]}
{"nodeId":1,"types":["super"],"requires":[]}
{"nodeId":1,"types":["powerbomb"],"requires":[{"heatFrames":110}]}

Dev note: The 65 heat frames are for shooting open the door and moonwalking back into the doorway. FIXME: heat frames to unlock the door could be reduced.

From: 2
Right Door
To: 1
Left Door

Entrance condition:

{
  "comeInWithStoredFallSpeed": {
    "fallSpeedInTiles": 1
  }
}

Requires:

{
  "heatFrames": 55
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}

Exit condition:

{
  "leaveWithStoredFallSpeed": {
    "fallSpeedInTiles": 1
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInWithStoredFallSpeed": {
    "fallSpeedInTiles": 2
  }
}

Requires:

{
  "heatFrames": 55
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}

Exit condition:

{
  "leaveWithStoredFallSpeed": {
    "fallSpeedInTiles": 2
  }
}

Unlocks doors:

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

Requires:

{
  "heatFrames": 30
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 4
Elevator
To: 1
Left Door

Requires:

{
  "heatFrames": 45
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":30}]}
From: 1
Left Door
To: 2
Right Door

Requires:

{
  "or": [
    {
      "heatFrames": 440
    },
    {
      "and": [
        {
          "heatFrames": 340
        },
        {
          "or": [
            "canTrickyJump",
            {
              "and": [
                {
                  "heatFrames": 50
                },
                "canDodgeWhileShooting",
                {
                  "or": [
                    "Plasma",
                    "Wave",
                    "Spazer",
                    "ScrewAttack",
                    "canPseudoScrew",
                    {
                      "ammo": {
                        "type": "Missile",
                        "count": 1
                      }
                    },
                    {
                      "ammo": {
                        "type": "Super",
                        "count": 1
                      }
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 130
        }
      ]
    }
  ]
}
From: 1
Left Door
To: 2
Right Door

The Magdollite flames can be killed for drops. The left Multiviola will be in the way and should be killed too.

Requires:

"canDash"
"canFarmWhileShooting"
{
  "heatFramesWithEnergyDrops": {
    "frames": 240,
    "drops": [
      {
        "enemy": "Multiviola",
        "count": 1
      },
      {
        "enemy": "Magdollite",
        "count": 3
      }
    ]
  }
}
{
  "heatFramesWithEnergyDrops": {
    "frames": 180,
    "drops": [
      {
        "enemy": "Magdollite",
        "count": 5
      }
    ]
  }
}
{
  "heatFrames": 110
}
From: 1
Left Door
To: 2
Right Door

Requires:

"canDash"
"SpaceJump"
{
  "or": [
    "ScrewAttack",
    {
      "and": [
        "canPrepareForNextRoom",
        "canPseudoScrew"
      ]
    }
  ]
}
{
  "heatFrames": 300
}
From: 2
Right Door
To: 1
Left Door

Requires:

{
  "or": [
    {
      "heatFrames": 420
    },
    {
      "and": [
        {
          "heatFrames": 325
        },
        {
          "or": [
            "canInsaneJump",
            {
              "and": [
                "canDodgeWhileShooting",
                {
                  "or": [
                    "Plasma",
                    "Wave",
                    "Spazer",
                    "ScrewAttack",
                    "canPseudoScrew",
                    {
                      "ammo": {
                        "type": "Missile",
                        "count": 1
                      }
                    },
                    {
                      "ammo": {
                        "type": "Super",
                        "count": 1
                      }
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "heatFrames": 360
        },
        "canTrickyJump"
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 175
        }
      ]
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

The Magdollite flames can be killed for drops.

Requires:

"canDash"
"canFarmWhileShooting"
{
  "heatFramesWithEnergyDrops": {
    "frames": 150,
    "drops": [
      {
        "enemy": "Magdollite",
        "count": 5
      }
    ]
  }
}
{
  "heatFramesWithEnergyDrops": {
    "frames": 280,
    "drops": [
      {
        "enemy": "Magdollite",
        "count": 3
      }
    ]
  }
}
{
  "heatFrames": 80
}
From: 2
Right Door
To: 1
Left Door

Without Screw or pseudo screw, it is possible to carefully space jump over the left Multiviola.

Requires:

"canDash"
"SpaceJump"
{
  "or": [
    "ScrewAttack",
    {
      "and": [
        "canPrepareForNextRoom",
        "canPseudoScrew"
      ]
    },
    "canPreciseSpaceJump"
  ]
}
{
  "heatFrames": 310
}
From: 2
Right Door
To: 2
Right Door

Follow the right Multiviola to the left and back.

Requires:

{
  "heatFrames": 570
}
{
  "or": [
    "canTrickyDodgeEnemies",
    {
      "enemyDamage": {
        "enemy": "Multiviola",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 30
    }
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Dev note: Could save some heat frames by setting this up while crossing the room.

From: 1
Right Door
To: 1
Right Door

Very quickly cross the room, collecting both items without falling into the lava. A Power Bomb in the middle of the room sets up the Sova drops and adds lag which makes the block item easier to collect with a Flatley jump. Farming the left sova and middle dragon increases the chances of getting enough health drops, but it may still not be possible with poor drop luck. Pause abuse can be useful for reaching the right side drops if the left side's luck was bad.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "any",
    "minTiles": 2
  }
}

Requires:

"canDash"
{
  "or": [
    "Wave",
    "Plasma",
    "Spazer",
    "canBeVeryPatient"
  ]
}
{
  "enemyKill": {
    "enemies": [
      [
        "Sova",
        "Sova",
        "Sova",
        "Dragon",
        "Dragon"
      ]
    ],
    "explicitWeapons": [
      "PowerBomb"
    ]
  }
}
"canMockball"
"canPreciseWalljump"
"canInsaneJump"
"canPauseAbuse"
"canFarmWhileShooting"
"canBePatient"
{
  "resourceMissingAtMost": [
    {
      "type": "Missile",
      "count": 0
    },
    {
      "type": "Super",
      "count": 0
    }
  ]
}
{
  "heatFrames": 392
}
{
  "resourceAtMost": [
    {
      "type": "RegularEnergy",
      "count": 1
    }
  ]
}

Collects items: 2, 3

Dev note: Not notable because it is safer to collect the items in separate trips. The first OR block is for farming the left sova for more consistency, or resetting to retry the strat multiple times. canBePatient indicates a chance of failure even if everything is performed correctly.

From: 1
Right Door
To: 1
Right Door

Requires:

"h_heatProof"
"h_lavaProof"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "cycleFrames": 300
        },
        {
          "or": [
            "ScrewAttack",
            "Plasma",
            {
              "and": [
                "canPseudoScrew",
                {
                  "or": [
                    "Wave",
                    "Spazer",
                    {
                      "cycleFrames": 420
                    }
                  ]
                },
                {
                  "cycleFrames": 390
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 410
        }
      ]
    }
  ]
}

Clears obstacles: A

Farm cycle drops: 3 Sova, 3 Dragon

Requires:

"canDash"
{
  "notable": "Power Bomb with Damage Boost"
}
{
  "enemyKill": {
    "enemies": [
      [
        "Dragon"
      ],
      [
        "Dragon",
        "Dragon"
      ]
    ],
    "explicitWeapons": [
      "PowerBomb"
    ]
  }
}
"canHorizontalDamageBoost"
{
  "enemyDamage": {
    "enemy": "Dragon",
    "type": "fireball",
    "hits": 2
  }
}
"canFlatleyJump"
"canTrickyJump"
{
  "or": [
    {
      "tech": "canUsePowerBombLag"
    },
    "canInsaneJump"
  ]
}
{
  "heatFrames": 400
}
"h_trickyToCarryFlashSuit"

Collects items: 3

From: 1
Right Door
To: 1
Right Door

Requires:

"h_heatProof"
"canCarefulJump"
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "cycleFrames": 110
        },
        {
          "or": [
            "Wave",
            "Spazer",
            "Plasma",
            "Grapple",
            {
              "and": [
                "canTrickyJump",
                {
                  "cycleFrames": 50
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 190
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 1 Sova

From: 1
Right Door
To: 1
Right Door

Requires:

"h_heatProof"
{
  "or": [
    "h_lavaProof",
    "canInsaneJump",
    {
      "and": [
        "canDodgeWhileShooting",
        "Plasma"
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "Wave",
            "Spazer",
            "Plasma"
          ]
        },
        {
          "cycleFrames": 470
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 650
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 3 Sova

Dev note: Heat scaling makes up the difference in platforming ability.

From: 1
Right Door
To: 2
Chozo Ball Item

Place a Power Bomb while waiting for the middle Dragon to shoot a fireball, to clear the Sovas for later. While the item block is breaking, turn around to perform a Flatley jump to collect the item and jump to the ledge item in one motion. Place a second Power Bomb while jumping up from the lower item block to clear the remaining enemies for the return trip.

Requires:

"canDash"
{
  "notable": "Power Bomb with Damage Boost"
}
"canFlatleyJump"
"canTrickyDodgeEnemies"
"canMidAirMorph"
"canHorizontalDamageBoost"
{
  "enemyDamage": {
    "enemy": "Dragon",
    "type": "fireball",
    "hits": 1
  }
}
{
  "enemyKill": {
    "enemies": [
      [
        "Dragon"
      ],
      [
        "Dragon",
        "Dragon"
      ]
    ],
    "explicitWeapons": [
      "PowerBomb"
    ]
  }
}
{
  "heatFrames": 260
}
"h_trickyToCarryFlashSuit"

Clears obstacles: A

Collects items: 3

From: 1
Right Door
To: 2
Chozo Ball Item

Place a Power Bomb while waiting for the middle Dragon to shoot a fireball, to clear the Sovas for later. Place a second Power Bomb while jumping up from the lower item block to clear the remaining enemies for the return trip.

Requires:

"canDash"
{
  "notable": "Power Bomb with Damage Boost"
}
"canTrickyJump"
"canMidAirMorph"
"canHorizontalDamageBoost"
{
  "enemyDamage": {
    "enemy": "Dragon",
    "type": "fireball",
    "hits": 1
  }
}
{
  "enemyKill": {
    "enemies": [
      [
        "Dragon"
      ],
      [
        "Dragon",
        "Dragon"
      ]
    ],
    "explicitWeapons": [
      "PowerBomb"
    ]
  }
}
{
  "heatFrames": 270
}
"h_trickyToCarryFlashSuit"

Clears obstacles: A

From: 1
Right Door
To: 2
Chozo Ball Item

Requires:

"SpaceJump"
{
  "heatFrames": 180
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 130
    }
  ]
}
From: 1
Right Door
To: 2
Chozo Ball Item

Clear the Dragons while moving towards the items with Space Jump and Screw Attack to make for a faster exit later.

Requires:

"canDash"
"SpaceJump"
"ScrewAttack"
"canTrickyJump"
{
  "heatFrames": 180
}

Clears obstacles: A

From: 1
Right Door
To: 3
Hidden Platform Item

Requires:

"canDash"
"h_lavaProof"
{
  "or": [
    "h_heatProof",
    {
      "and": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "heatFrames": 100
        }
      ]
    }
  ]
}
From: 1
Right Door
To: 4
Junction Above Hidden Platform Item

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        "canTrickyDodgeEnemies",
        {
          "heatFrames": 35
        }
      ]
    },
    "canInsaneJump",
    {
      "and": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "heatFrames": 60
        }
      ]
    }
  ]
}
{
  "heatFrames": 195
}
From: 1
Right Door
To: 4
Junction Above Hidden Platform Item

Requires:

"canDash"
"canDodgeWhileShooting"
"canTrickyJump"
{
  "or": [
    "Spazer",
    "Wave",
    "Plasma",
    "ScrewAttack"
  ]
}
{
  "heatFrames": 210
}
From: 1
Right Door
To: 4
Junction Above Hidden Platform Item

Place a Power Bomb while waiting for the middle Dragon to shoot a fireball, to clear the Sovas for later. A second Power Bomb will be needed to clear the remaining Dragons for the return trip.

Requires:

"canDash"
{
  "notable": "Power Bomb with Damage Boost"
}
"canTrickyJump"
"canMidAirMorph"
"canHorizontalDamageBoost"
{
  "enemyDamage": {
    "enemy": "Dragon",
    "type": "fireball",
    "hits": 1
  }
}
{
  "enemyKill": {
    "enemies": [
      [
        "Dragon"
      ]
    ],
    "explicitWeapons": [
      "PowerBomb"
    ]
  }
}
{
  "heatFrames": 180
}
"h_trickyToCarryFlashSuit"

Dev note: Would be better if we could model 1 PB consumed + dragons half-dead.

From: 1
Right Door
To: 4
Junction Above Hidden Platform Item

Requires:

"SpaceJump"
{
  "heatFrames": 160
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 150
    }
  ]
}
From: 2
Chozo Ball Item
To: 1
Right Door

Return while collecting Sova drops.

Requires:

"canDash"
"canFarmWhileShooting"
"canTrickyJump"
{
  "or": [
    "Wave",
    "Plasma",
    "Spazer"
  ]
}
{
  "resourceMissingAtMost": [
    {
      "type": "Missile",
      "count": 0
    },
    {
      "type": "Super",
      "count": 0
    }
  ]
}
{
  "heatFramesWithEnergyDrops": {
    "frames": 130,
    "drops": [
      {
        "enemy": "Sova",
        "count": 3
      }
    ]
  }
}
{
  "heatFrames": 80
}
From: 2
Chozo Ball Item
To: 1
Right Door

Requires:

"SpaceJump"
{
  "heatFrames": 210
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 110
    }
  ]
}
From: 3
Hidden Platform Item
To: 1
Right Door

Requires:

"h_lavaProof"
{
  "or": [
    "h_heatProof",
    {
      "and": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "heatFrames": 130
        },
        "canDash",
        {
          "disableEquipment": "SpeedBooster"
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            {
              "haveBlueSuit": {}
            },
            {
              "obstaclesCleared": [
                "A"
              ]
            }
          ]
        },
        {
          "heatFrames": 180
        }
      ]
    }
  ]
}
From: 4
Junction Above Hidden Platform Item
To: 1
Right Door

Return while collecting Sova drops.

Requires:

"canDash"
"canFarmWhileShooting"
{
  "or": [
    "Wave",
    "Plasma",
    "Spazer"
  ]
}
{
  "resourceMissingAtMost": [
    {
      "type": "Missile",
      "count": 0
    },
    {
      "type": "Super",
      "count": 0
    }
  ]
}
{
  "heatFramesWithEnergyDrops": {
    "frames": 120,
    "drops": [
      {
        "enemy": "Sova",
        "count": 2
      }
    ]
  }
}
{
  "heatFrames": 40
}
From: 4
Junction Above Hidden Platform Item
To: 2
Chozo Ball Item

Requires:

{
  "heatFrames": 60
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 1
Left Door
To: 2
Gamet Farm Junction

Requires:

{
  "heatFrames": 10
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}
From: 2
Gamet Farm Junction
To: 1
Left Door

Requires:

{
  "heatFrames": 30
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 2
Gamet Farm Junction
To: 1
Left Door

Involves leaving some drops hanging after killing the Gamets so they don't respawn.

Requires:

"canDash"
"h_runOverRespawningEnemies"
{
  "heatFrames": 0
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 13,
    "openEnd": 0,
    "gentleUpTiles": 1,
    "gentleDownTiles": 3
  }
}

Unlocks doors:

{"types":["ammo"],"requires":[]}

Dev note: Health drops are collected while using this runway, offsetting any heat frames used to get into position.

From: 1
Top Door
To: 2
Top Right Door

Requires:

{
  "heatFrames": 115
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}

Unlocks doors:

{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 1
Top Door
To: 2
Top Right Door

Requires:

"canDash"
{
  "heatFrames": 105
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 4,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 2
Top Right Door
To: 1
Top Door

Requires:

{
  "heatFrames": 160
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 2
Top Right Door
To: 1
Top Door

Requires:

{
  "heatFrames": 135
}
"HiJump"
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}
From: 2
Top Right Door
To: 1
Top Door

Requires:

{
  "heatFrames": 160
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}

Exit condition:

{
  "leaveWithDoorFrameBelow": {
    "height": 3
  }
}

Unlocks doors:

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

Requires:

{
  "heatFrames": 160
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}

Exit condition:

{
  "leaveWithPlatformBelow": {
    "height": 9,
    "leftPosition": 0,
    "rightPosition": 2
  }
}

Unlocks doors:

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

Requires:

{
  "heatFrames": 135
}
"HiJump"
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}

Exit condition:

{
  "leaveWithPlatformBelow": {
    "height": 9,
    "leftPosition": 0,
    "rightPosition": 2
  }
}

Unlocks doors:

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

Requires:

{
  "heatFrames": 115
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}

Unlocks doors:

{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 2
Top Right Door
To: 3
Bottom Right Door

Requires:

"canDash"
{
  "heatFrames": 125
}

Exit condition:

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

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 3
Bottom Right Door
To: 1
Top Door

Requires:

{
  "or": [
    {
      "heatFrames": 280
    },
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 220
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}
From: 3
Bottom Right Door
To: 2
Top Right Door

Requires:

{
  "heatFrames": 135
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}

Unlocks doors:

{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 3
Bottom Right Door
To: 2
Top Right Door

Requires:

"HiJump"
{
  "heatFrames": 115
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}

Unlocks doors:

{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 3
Bottom Right Door
To: 2
Top Right Door

Requires:

"canDash"
{
  "heatFrames": 120
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 4,
    "openEnd": 1
  }
}

Unlocks doors:

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

Requires:

"canDash"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
"h_heatProof"
"Plasma"
{
  "or": [
    {
      "and": [
        "h_lavaProof",
        {
          "or": [
            {
              "and": [
                "Morph",
                {
                  "cycleFrames": 1170
                }
              ]
            },
            {
              "cycleFrames": 1500
            }
          ]
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "cycleFrames": 1440
        }
      ]
    },
    {
      "and": [
        "Grapple",
        {
          "cycleFrames": 1800
        }
      ]
    }
  ]
}

Farm cycle drops: 5 Sova, 4 Dragon

From: 1
Left Door
To: 1
Left Door

Partially cross the room until a Sova falls from the ceiling, follow it back and forth across the room. Alternatively, to save a lot of Energy, use a Super to knock off the first Sova after the one that falls, while it is on the right side of it's platform.

Requires:

{
  "or": [
    "canDash",
    {
      "heatFrames": 60
    }
  ]
}
{
  "heatFrames": 1500
}
{
  "or": [
    {
      "ammo": {
        "type": "Super",
        "count": 1
      }
    },
    {
      "heatFrames": 2000
    }
  ]
}

Exit condition:

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

Requires:

"canDash"
"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "cycleFrames": 680
}
{
  "or": [
    "SpaceJump",
    {
      "cycleFrames": 40
    }
  ]
}
{
  "or": [
    "Wave",
    "Spazer",
    "Plasma",
    {
      "cycleFrames": 360
    }
  ]
}

Farm cycle drops: 4 Sova

From: 1
Left Door
To: 1
Left Door

Requires:

"canDash"
"h_heatProof"
"ScrewAttack"
{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1
            ]
          }
        },
        {
          "cycleFrames": 340
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              2
            ]
          }
        },
        {
          "cycleFrames": 900
        },
        {
          "or": [
            "SpaceJump",
            {
              "cycleFrames": 320
            }
          ]
        }
      ]
    }
  ]
}

Farm cycle drops: 2 Squeept

Dev note: With a blue suit, Screw Attack does not work against the Squeepts.

From: 1
Left Door
To: 2
Right Door

Cross the room while following the Sova that falls from the ceiling to the right door.

Requires:

{
  "or": [
    "canDash",
    {
      "heatFrames": 60
    }
  ]
}
{
  "heatFrames": 1390
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

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

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        "canTrickyJump",
        {
          "heatFrames": 540
        }
      ]
    },
    {
      "heatFrames": 660
    }
  ]
}
From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

"canDash"
"Morph"
{
  "enemyDamage": {
    "enemy": "Sova",
    "type": "contact",
    "hits": 1
  }
}
{
  "enemyDamage": {
    "enemy": "Dragon",
    "type": "contact",
    "hits": 1
  }
}
{
  "heatFrames": 480
}
From: 1
Left Door
To: 2
Right Door

Building run speed can speed up the room a noticable amount.

Requires:

"canDash"
"SpaceJump"
{
  "heatFrames": 460
}
From: 2
Right Door
To: 1
Left Door

Cross more than half way across the room until a Sova falls from the ceiling then follow it back and forth across the room. Alternatively, to save a lot of Energy, use a Super to knock off the Sova just before that, while it is on the right side of it's thin platform.

Requires:

{
  "or": [
    "canDash",
    {
      "heatFrames": 140
    }
  ]
}
{
  "heatFrames": 1780
}
{
  "or": [
    {
      "ammo": {
        "type": "Super",
        "count": 1
      }
    },
    {
      "heatFrames": 2050
    }
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

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

Build up run speed to travel farther when jumping.

Requires:

"canDash"
{
  "heatFrames": 540
}
{
  "or": [
    "canTrickyJump",
    {
      "heatFrames": 160
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

"canDash"
"Gravity"
{
  "enemyDamage": {
    "enemy": "Dragon",
    "type": "contact",
    "hits": 1
  }
}
{
  "enemyDamage": {
    "enemy": "Sova",
    "type": "contact",
    "hits": 1
  }
}
{
  "heatFrames": 500
}
{
  "lavaFrames": 360
}
From: 2
Right Door
To: 1
Left Door

Requires:

"canDash"
"SpaceJump"
{
  "heatFrames": 450
}
From: 2
Right Door
To: 2
Right Door

Requires:

"canDash"
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
"h_heatProof"
"Plasma"
{
  "or": [
    {
      "and": [
        "h_lavaProof",
        {
          "or": [
            {
              "and": [
                "Morph",
                {
                  "cycleFrames": 930
                }
              ]
            },
            {
              "and": [
                "SpaceJump",
                {
                  "cycleFrames": 1100
                }
              ]
            },
            {
              "cycleFrames": 1290
            }
          ]
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "cycleFrames": 1230
        }
      ]
    },
    {
      "and": [
        "Grapple",
        {
          "cycleFrames": 1680
        }
      ]
    }
  ]
}

Farm cycle drops: 5 Sova, 4 Dragon

From: 2
Right Door
To: 2
Right Door

Cross more than half way across the room until a Sova falls from the ceiling. Alternatively, to save Energy, use a Super to knock off the second Sova from the right, while it is on the left side of it's platform.

Requires:

{
  "or": [
    "canDash",
    {
      "heatFrames": 140
    }
  ]
}
{
  "heatFrames": 1500
}
{
  "or": [
    {
      "ammo": {
        "type": "Super",
        "count": 1
      }
    },
    {
      "heatFrames": 320
    }
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}
From: 2
Right Door
To: 2
Right Door

Requires:

"canDash"
"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "cycleFrames": 720
}
{
  "or": [
    "SpaceJump",
    {
      "cycleFrames": 30
    }
  ]
}
{
  "or": [
    "Wave",
    "Spazer",
    "Plasma",
    {
      "and": [
        "canFarmWhileShooting",
        {
          "cycleFrames": 30
        }
      ]
    }
  ]
}
{
  "or": [
    "canTrickyJump",
    {
      "cycleFrames": 60
    }
  ]
}

Farm cycle drops: 4 Sova

Dev note: Add canTrickyJump for catching the Sovas on their first cycles.

From: 1
Left Shaft - Top Left Door
To: 1
Left Shaft - Top Left Door

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "cycleFrames": 285
        },
        {
          "or": [
            "Plasma",
            "ScrewAttack",
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 90
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 205
                }
              ]
            },
            {
              "and": [
                "canDodgeWhileShooting",
                {
                  "cycleFrames": 315
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 340
        }
      ]
    }
  ]
}
{
  "or": [
    "canWalljump",
    "HiJump",
    "h_crouchJumpDownGrab",
    {
      "and": [
        "SpaceJump",
        {
          "cycleFrames": 20
        }
      ]
    }
  ]
}

Resets obstacles: R-Mode

Farm cycle drops: 1 Multiviola, 2 Alcoon

From: 1
Left Shaft - Top Left Door
To: 1
Left Shaft - Top Left Door

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "cycleFrames": 130
        },
        {
          "or": [
            "Plasma",
            "Wave",
            "Spazer",
            {
              "cycleFrames": 30
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 140
        }
      ]
    }
  ]
}

Resets obstacles: R-Mode

Farm cycle drops: 1 Multiviola

From: 1
Left Shaft - Top Left Door
To: 6
Left Shaft - Top Junction

Requires:

{
  "heatFrames": 80
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 15
    }
  ]
}
From: 2
Left Shaft - Bottom Right Door
To: 2
Left Shaft - Bottom Right Door

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "cycleFrames": 245
        },
        {
          "or": [
            "ScrewAttack",
            {
              "and": [
                "Plasma",
                {
                  "cycleFrames": 25
                }
              ]
            },
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 40
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 100
                }
              ]
            },
            {
              "and": [
                "canDodgeWhileShooting",
                {
                  "cycleFrames": 220
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 360
        }
      ]
    }
  ]
}

Resets obstacles: R-Mode

Farm cycle drops: 1 Multiviola, 1 Alcoon

From: 2
Left Shaft - Bottom Right Door
To: 8
Left Shaft - Bottom Junction

Requires:

{
  "or": [
    {
      "heatFrames": 100
    },
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 95
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 30
        }
      ]
    }
  ]
}
From: 3
Left Shaft - Middle Right Door
To: 3
Left Shaft - Middle Right Door

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      3
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "Plasma",
            "ScrewAttack",
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 90
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 90
                }
              ]
            },
            {
              "and": [
                "canDodgeWhileShooting",
                {
                  "cycleFrames": 285
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "haveBlueSuit": {}
    }
  ]
}
{
  "or": [
    "canWalljump",
    "HiJump",
    "h_crouchJumpDownGrab",
    "SpaceJump"
  ]
}
{
  "cycleFrames": 210
}

Resets obstacles: R-Mode

Farm cycle drops: 1 Multiviola, 1 Alcoon

From: 3
Left Shaft - Middle Right Door
To: 4
Left Shaft - Top Right Door

Wait for the Alcoon to walk off the edge. Use it and the Multiviola as platforms. Spawn the Alcoon, then run back to the right so it will not stop and fire projectiles.

Requires:

"canTrickyUseFrozenEnemies"
{
  "heatFrames": 1250
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 30
    }
  ]
}

Dev note: FIXME: split this into 3->7 and 7->4 strats.

From: 3
Left Shaft - Middle Right Door
To: 7
Left Shaft - Middle Junction

Requires:

{
  "or": [
    {
      "and": [
        "canWalljump",
        {
          "heatFrames": 120
        }
      ]
    },
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 110
        }
      ]
    },
    {
      "and": [
        "h_heatedCrouchJumpDownGrab",
        {
          "heatFrames": 150
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 155
        }
      ]
    },
    {
      "and": [
        "canSpringBallJumpMidAir",
        {
          "heatFrames": 180
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 45
        }
      ]
    }
  ]
}
From: 3
Left Shaft - Middle Right Door
To: 8
Left Shaft - Bottom Junction

Requires:

{
  "heatFrames": 65
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}
From: 4
Left Shaft - Top Right Door
To: 4
Left Shaft - Top Right Door

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      4
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "Plasma",
            "ScrewAttack",
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 20
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 90
                }
              ]
            },
            {
              "and": [
                "canDodgeWhileShooting",
                {
                  "cycleFrames": 260
                },
                {
                  "or": [
                    "canFarmWhileShooting",
                    {
                      "cycleFrames": 90
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 90
        }
      ]
    }
  ]
}
{
  "or": [
    "canWalljump",
    "HiJump",
    "h_crouchJumpDownGrab",
    "SpaceJump"
  ]
}
{
  "cycleFrames": 450
}

Resets obstacles: R-Mode

Farm cycle drops: 1 Multiviola, 2 Alcoon

From: 4
Left Shaft - Top Right Door
To: 4
Left Shaft - Top Right Door

Jump and aim down two to three times to activate the Multiviola.

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      4
    ]
  }
}
{
  "cycleFrames": 200
}
"canCameraManip"
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "Plasma",
            "Wave",
            "Spazer",
            {
              "cycleFrames": 30
            }
          ]
        }
      ]
    },
    {
      "haveBlueSuit": {}
    }
  ]
}

Resets obstacles: R-Mode

Farm cycle drops: 1 Multiviola

From: 4
Left Shaft - Top Right Door
To: 6
Left Shaft - Top Junction

Requires:

{
  "or": [
    {
      "and": [
        "canWalljump",
        {
          "heatFrames": 130
        }
      ]
    },
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 115
        }
      ]
    },
    {
      "and": [
        "h_heatedCrouchJumpDownGrab",
        {
          "heatFrames": 150
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 155
        }
      ]
    },
    {
      "and": [
        "canSpringBallJumpMidAir",
        {
          "heatFrames": 180
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 40
        }
      ]
    }
  ]
}
From: 4
Left Shaft - Top Right Door
To: 6
Left Shaft - Top Junction

Spawn the Alcoon, then run back to the right so it will not stop and fire projectiles. Then wait for it to walk off the ledge.

Requires:

"canCameraManip"
"canTrickyUseFrozenEnemies"
{
  "heatFrames": 750
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 40
    }
  ]
}
From: 4
Left Shaft - Top Right Door
To: 6
Left Shaft - Top Junction

Kill the enemies, then IBJ.

Requires:

"canIBJ"
{
  "or": [
    {
      "heatFrames": 735
    },
    {
      "and": [
        "canJumpIntoIBJ",
        {
          "heatFrames": 285
        }
      ]
    },
    {
      "and": [
        "canDoubleBombJump",
        {
          "heatFrames": 240
        }
      ]
    }
  ]
}
{
  "or": [
    "canTrickyDodgeEnemies",
    {
      "heatFrames": 100
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 40
        }
      ]
    }
  ]
}
From: 4
Left Shaft - Top Right Door
To: 7
Left Shaft - Middle Junction

Requires:

{
  "heatFrames": 65
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 5
    }
  ]
}
From: 5
Far Right Door
To: 6
Left Shaft - Top Junction

Requires:

"canDash"
"h_useMorphBombs"
{
  "heatFrames": 730
}
From: 5
Far Right Door
To: 6
Left Shaft - Top Junction

Requires:

"canDash"
{
  "heatFrames": 250
}
"h_heatedCrystalFlash"
{
  "heatFrames": 380
}

Dev note: FIXME: a dashless option could be added here.

From: 5
Far Right Door
To: 6
Left Shaft - Top Junction

Requires:

"canDash"
{
  "heatFrames": 450
}
{
  "or": [
    "ScrewAttack",
    {
      "and": [
        "h_usePowerBomb",
        {
          "heatFrames": 40
        }
      ]
    },
    {
      "and": [
        "h_useMorphBombs",
        {
          "heatFrames": 80
        }
      ]
    }
  ]
}
"h_heatedCrystalFlash"
{
  "heatFrames": 250
}

Dev note: FIXME: a dashless option could be added here.

From: 5
Far Right Door
To: 6
Left Shaft - Top Junction

Requires:

"canDash"
"h_usePowerBomb"
{
  "heatFrames": 660
}
From: 5
Far Right Door
To: 6
Left Shaft - Top Junction

Requires:

"canDash"
"Morph"
"ScrewAttack"
{
  "heatFrames": 600
}
From: 6
Left Shaft - Top Junction
To: 1
Left Shaft - Top Left Door

Requires:

{
  "or": [
    {
      "and": [
        "canWalljump",
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "and": [
        "canWalljump",
        "ScrewAttack",
        {
          "heatFrames": 85
        }
      ]
    },
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 95
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "ScrewAttack",
        {
          "heatFrames": 75
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "Plasma",
        {
          "heatFrames": 70
        }
      ]
    },
    {
      "and": [
        "h_heatedCrouchJumpDownGrab",
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 115
        }
      ]
    },
    {
      "and": [
        "canSpringBallJumpMidAir",
        {
          "heatFrames": 120
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 30
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":30}]}
{"types":["powerbomb"],"requires":[{"heatFrames":70}]}

Dev note: The heat frames account for bad scenarios of where the Multiviola may be (entering from node 4), which is why Screw Attack can be helpful.

From: 6
Left Shaft - Top Junction
To: 1
Left Shaft - Top Left Door

Requires:

"canUseFrozenEnemies"
{
  "heatFrames": 285
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 15
    }
  ]
}

Dev note: FIXME: this represents a worst case Multiviola cycle. Typically freezing the Multiviola is faster but the Alcoon is also an option.

From: 6
Left Shaft - Top Junction
To: 1
Left Shaft - Top Left Door

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        "canWalljump",
        {
          "heatFrames": 80
        }
      ]
    },
    {
      "and": [
        "canWalljump",
        "ScrewAttack",
        {
          "heatFrames": 60
        }
      ]
    },
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 80
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "ScrewAttack",
        {
          "heatFrames": 60
        }
      ]
    },
    {
      "and": [
        "h_heatedCrouchJumpDownGrab",
        {
          "heatFrames": 80
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 80
        }
      ]
    },
    {
      "and": [
        "canSpringBallJumpMidAir",
        {
          "heatFrames": 90
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 8,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":70}]}
From: 6
Left Shaft - Top Junction
To: 4
Left Shaft - Top Right Door

Requires:

"canDash"
{
  "or": [
    {
      "heatFrames": 130
    },
    {
      "and": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Alcoon"
              ]
            ],
            "explicitWeapons": [
              "ScrewAttack",
              "Missile",
              "Super",
              "Wave+Plasma"
            ]
          }
        },
        {
          "heatFrames": 125
        }
      ]
    },
    {
      "and": [
        "h_PlasmaHitbox",
        {
          "heatFrames": 125
        }
      ]
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
{"types":["powerbomb"],"requires":[{"heatFrames":20}]}
From: 6
Left Shaft - Top Junction
To: 4
Left Shaft - Top Right Door

Requires:

"canDash"
{
  "or": [
    {
      "heatFrames": 115
    },
    {
      "and": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Alcoon"
              ]
            ],
            "explicitWeapons": [
              "ScrewAttack",
              "Missile",
              "Super",
              "Wave+Plasma"
            ]
          }
        },
        {
          "heatFrames": 110
        }
      ]
    },
    {
      "and": [
        "h_PlasmaHitbox",
        {
          "heatFrames": 110
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 4,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":20}]}
From: 6
Left Shaft - Top Junction
To: 7
Left Shaft - Middle Junction

Requires:

"canDash"
{
  "or": [
    {
      "heatFrames": 145
    },
    {
      "and": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Alcoon"
              ]
            ],
            "explicitWeapons": [
              "ScrewAttack",
              "Missile",
              "Super",
              "Wave+Plasma"
            ]
          }
        },
        {
          "heatFrames": 140
        }
      ]
    },
    {
      "and": [
        "h_PlasmaHitbox",
        {
          "heatFrames": 140
        }
      ]
    }
  ]
}
From: 7
Left Shaft - Middle Junction
To: 3
Left Shaft - Middle Right Door

Requires:

"canDash"
{
  "or": [
    {
      "heatFrames": 130
    },
    {
      "and": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Alcoon"
              ]
            ],
            "explicitWeapons": [
              "ScrewAttack",
              "Missile",
              "Super",
              "Wave+Plasma"
            ]
          }
        },
        {
          "heatFrames": 125
        }
      ]
    },
    {
      "and": [
        "h_PlasmaHitbox",
        {
          "heatFrames": 125
        }
      ]
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
{"types":["powerbomb"],"requires":[{"heatFrames":10}]}
From: 7
Left Shaft - Middle Junction
To: 3
Left Shaft - Middle Right Door

Requires:

"canDash"
{
  "or": [
    {
      "heatFrames": 110
    },
    {
      "and": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Alcoon"
              ]
            ],
            "explicitWeapons": [
              "ScrewAttack",
              "Missile",
              "Super",
              "Wave+Plasma"
            ]
          }
        },
        {
          "heatFrames": 100
        }
      ]
    },
    {
      "and": [
        "h_PlasmaHitbox",
        {
          "heatFrames": 100
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 4,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":65}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":30}]}
From: 7
Left Shaft - Middle Junction
To: 4
Left Shaft - Top Right Door

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        "canWalljump",
        {
          "heatFrames": 55
        }
      ]
    },
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 40
        }
      ]
    },
    {
      "and": [
        "h_heatedCrouchJumpDownGrab",
        {
          "heatFrames": 90
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 75
        }
      ]
    },
    {
      "and": [
        "canSpringBallJumpMidAir",
        {
          "heatFrames": 100
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 4,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 7
Left Shaft - Middle Junction
To: 6
Left Shaft - Top Junction

Requires:

{
  "or": [
    {
      "and": [
        "canWalljump",
        {
          "heatFrames": 150
        }
      ]
    },
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 110
        }
      ]
    },
    {
      "and": [
        "h_heatedCrouchJumpDownGrab",
        "h_heatedCrouchJumpDownGrab",
        {
          "heatFrames": 270
        }
      ]
    },
    {
      "and": [
        "h_heatedCrouchJumpDownGrab",
        "h_heatedCrouchJumpDownGrab",
        {
          "enemyKill": {
            "enemies": [
              [
                "Multiviola"
              ]
            ],
            "explicitWeapons": [
              "Missile",
              "Super",
              "Wave",
              "Plasma"
            ]
          }
        },
        {
          "heatFrames": 200
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 205
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 40
        }
      ]
    }
  ]
}
From: 7
Left Shaft - Middle Junction
To: 8
Left Shaft - Bottom Junction

Requires:

"canDash"
{
  "or": [
    {
      "heatFrames": 160
    },
    {
      "and": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Multiviola",
                "Alcoon"
              ]
            ],
            "explicitWeapons": [
              "ScrewAttack",
              "Wave+Plasma"
            ]
          }
        },
        {
          "heatFrames": 145
        }
      ]
    },
    {
      "and": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Multiviola"
              ]
            ],
            "explicitWeapons": [
              "Missile",
              "Super",
              "Plasma"
            ]
          }
        },
        {
          "heatFrames": 150
        }
      ]
    },
    {
      "and": [
        "h_PlasmaHitbox",
        {
          "heatFrames": 145
        }
      ]
    }
  ]
}

Dev note: This includes time to wait for the Multiviola to move out of the way (if it can't be quickly killed), as will normally be a problem when entering through the upper doors (node 1 or 4).

From: 8
Left Shaft - Bottom Junction
To: 2
Left Shaft - Bottom Right Door

Requires:

"canDash"
{
  "or": [
    {
      "heatFrames": 115
    },
    {
      "and": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Alcoon"
              ]
            ],
            "explicitWeapons": [
              "ScrewAttack",
              "Missile",
              "Super",
              "Wave+Plasma"
            ]
          }
        },
        {
          "heatFrames": 110
        }
      ]
    },
    {
      "and": [
        "h_PlasmaHitbox",
        {
          "heatFrames": 110
        }
      ]
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":30}]}
{"types":["powerbomb"],"requires":[{"heatFrames":10}]}
From: 8
Left Shaft - Bottom Junction
To: 2
Left Shaft - Bottom Right Door

Requires:

"canDash"
{
  "heatFrames": 70
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 13,
    "openEnd": 0,
    "gentleDownTiles": 4
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":30}]}
From: 8
Left Shaft - Bottom Junction
To: 3
Left Shaft - Middle Right Door

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        "canWalljump",
        {
          "heatFrames": 65
        }
      ]
    },
    {
      "and": [
        "canWalljump",
        "ScrewAttack",
        {
          "heatFrames": 45
        }
      ]
    },
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 55
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "ScrewAttack",
        {
          "heatFrames": 35
        }
      ]
    },
    {
      "and": [
        "h_heatedCrouchJumpDownGrab",
        {
          "heatFrames": 60
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 80
        }
      ]
    },
    {
      "and": [
        "canSpringBallJumpMidAir",
        {
          "heatFrames": 75
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 4,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 8
Left Shaft - Bottom Junction
To: 7
Left Shaft - Middle Junction

Requires:

{
  "or": [
    {
      "and": [
        "canWalljump",
        {
          "heatFrames": 160
        }
      ]
    },
    {
      "and": [
        "canWalljump",
        "ScrewAttack",
        {
          "heatFrames": 140
        }
      ]
    },
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 135
        }
      ]
    },
    {
      "and": [
        "HiJump",
        "ScrewAttack",
        {
          "heatFrames": 105
        }
      ]
    },
    {
      "and": [
        "h_heatedCrouchJumpDownGrab",
        "h_heatedCrouchJumpDownGrab",
        {
          "heatFrames": 195
        },
        {
          "or": [
            {
              "noBlueSuit": {}
            },
            "canXRayCancelShinecharge",
            "canMidAirMorph",
            {
              "heatFrames": 60
            }
          ]
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "heatFrames": 210
        }
      ]
    },
    {
      "and": [
        "canSpringBallJumpMidAir",
        {
          "heatFrames": 280
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 40
        }
      ]
    }
  ]
}
From: 1
Left Door
To: 1
Left Door

Free the Geruta and lure it to this door. To speed it up, it helps to prevent breaking most of the crumbles (no more than two consecutive) so the Geruta doesn't get stuck.

Requires:

"canComplexGMode"
{
  "heatFrames": 2100
}
{
  "or": [
    "h_heatProof",
    "canCrumbleJump"
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 150
        }
      ]
    }
  ]
}

Exit condition:

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

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "h_speedDash",
            {
              "cycleFrames": 225
            }
          ]
        },
        {
          "or": [
            {
              "and": [
                "Plasma",
                {
                  "cycleFrames": 790
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 1020
                }
              ]
            },
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 960
                }
              ]
            },
            {
              "and": [
                "Ice",
                {
                  "cycleFrames": 930
                }
              ]
            },
            {
              "and": [
                "canPseudoScrew",
                {
                  "cycleFrames": 930
                }
              ]
            },
            {
              "and": [
                "canDodgeWhileShooting",
                {
                  "cycleFrames": 1350
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        "canCrumbleJump",
        {
          "cycleFrames": 2160
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 3 Geruta

From: 1
Left Door
To: 1
Left Door

Requires:

"canDash"
"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
"ScrewAttack"
{
  "cycleFrames": 1140
}

Resets obstacles: A

Farm cycle drops: 2 Metaree, 3 Geruta

From: 1
Left Door
To: 2
Right Door

Requires:

"canDash"
{
  "obstaclesNotCleared": [
    "A"
  ]
}
{
  "simpleHeatFrames": 560
}
{
  "heatFrames": 60
}

Clears obstacles: A

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
From: 1
Left Door
To: 2
Right Door

Use a Crystal Flash after crossing 3 crumble block bridges, and a second Crystal Flash after crossing 3 more.

In order to cross without tanks or Speed Booster, some arm pumping is helpful but not required.

Requires:

"canDash"
{
  "simpleHeatFrames": 160
}
{
  "heatFrames": 40
}
"h_heatedCrystalFlash"
{
  "simpleHeatFrames": 140
}
{
  "heatFrames": 40
}
"h_heatedCrystalFlash"
{
  "simpleHeatFrames": 240
}
{
  "heatFrames": 30
}

Dev note: FIXME: A dashless variant could be possible.

From: 1
Left Door
To: 2
Right Door

Free the Geruta and lure it to this door. To speed it up, it helps to prevent breaking most of the crumbles (no more than two consecutive) so the Geruta doesn't get stuck.

Requires:

"canComplexGMode"
{
  "heatFrames": 2200
}
{
  "or": [
    "h_heatProof",
    "canCrumbleJump"
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 750
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

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

Requires:

"canDash"
{
  "obstaclesNotCleared": [
    "A"
  ]
}
{
  "simpleHeatFrames": 560
}
{
  "heatFrames": 60
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 8,
    "openEnd": 1
  }
}

Unlocks doors:

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

Requires:

{
  "obstaclesNotCleared": [
    "A"
  ]
}
"h_speedDash"
{
  "simpleHeatFrames": 310
}
{
  "heatFrames": 40
}

Clears obstacles: A

From: 1
Left Door
To: 2
Right Door

Shoot from the middle of the second set of crumble blocks from the left.

Requires:

{
  "obstaclesNotCleared": [
    "A"
  ]
}
"h_speedDash"
"canHeroShot"
{
  "simpleHeatFrames": 250
}
{
  "heatFrames": 40
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 45,
    "openEnd": 1
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInWithStoredFallSpeed": {
    "fallSpeedInTiles": 1
  }
}

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        {
          "simpleHeatFrames": 560
        },
        {
          "heatFrames": 60
        }
      ]
    },
    {
      "and": [
        "h_speedDash",
        {
          "simpleHeatFrames": 310
        },
        {
          "heatFrames": 40
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithStoredFallSpeed": {
    "fallSpeedInTiles": 1
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInWithStoredFallSpeed": {
    "fallSpeedInTiles": 2
  }
}

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        {
          "simpleHeatFrames": 560
        },
        {
          "heatFrames": 60
        }
      ]
    },
    {
      "and": [
        "h_speedDash",
        {
          "simpleHeatFrames": 310
        },
        {
          "heatFrames": 40
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithStoredFallSpeed": {
    "fallSpeedInTiles": 2
  }
}

Unlocks doors:

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

Requires:

"canDash"
{
  "obstaclesNotCleared": [
    "A"
  ]
}
{
  "simpleHeatFrames": 560
}
{
  "heatFrames": 60
}

Clears obstacles: A

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
From: 2
Right Door
To: 1
Left Door

Requires:

"canDash"
{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "or": [
    "h_heatProof",
    {
      "and": [
        {
          "heatFrames": 690
        },
        {
          "or": [
            {
              "ammo": {
                "type": "Super",
                "count": 3
              }
            },
            {
              "ammo": {
                "type": "Missile",
                "count": 6
              }
            },
            "ScrewAttack",
            "Plasma",
            "Spazer",
            "Wave"
          ]
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canCarefulJump",
        {
          "heatFrames": 420
        }
      ]
    },
    {
      "and": [
        {
          "heatFrames": 720
        },
        {
          "lavaFrames": 60
        }
      ]
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}

Dev note: This can be used for collecting the item without needing to reset the room.

From: 2
Right Door
To: 1
Left Door

Use a Crystal Flash after crossing 4 crumble block bridges, and a second Crystal Flash in the middle of the large ramp in the center of the room.

This allows crossing the room without tanks or Speed Booster.

Requires:

"h_SpeedBoosterHallNoRisingLava"
"canDash"
{
  "obstaclesNotCleared": [
    "A"
  ]
}
{
  "simpleHeatFrames": 135
}
{
  "heatFrames": 40
}
"h_heatedCrystalFlash"
{
  "simpleHeatFrames": 130
}
{
  "heatFrames": 40
}
"h_heatedCrystalFlash"
{
  "simpleHeatFrames": 280
}
{
  "heatFrames": 30
}
From: 2
Right Door
To: 1
Left Door

Free the Geruta and lure it to this door. To speed it up, it helps to prevent breaking most of the crumbles (no more than two consecutive) so the Geruta doesn't get stuck.

Requires:

"canDash"
"h_SpeedBoosterHallNoRisingLava"
"canComplexGMode"
{
  "heatFrames": 2250
}
{
  "or": [
    "h_heatProof",
    "canCrumbleJump"
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

{"types":["missiles","super"],"requires":[]}
{"types":["powerbomb"],"requires":["h_heatProof"]}

Dev note: FIXME: A dashless variant could be possible, either with very careful crumble block breaking, or with dipping in the lava.

From: 2
Right Door
To: 1
Left Door

Requires:

"canDash"
{
  "obstaclesNotCleared": [
    "A"
  ]
}
{
  "simpleHeatFrames": 560
}
{
  "heatFrames": 60
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 8,
    "openEnd": 1
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

{
  "not": "f_ClearedSpeedBoosterLavaTrap"
}
{
  "doorUnlockedAtNode": 1
}
{
  "simpleHeatFrames": 310
}
{
  "heatFrames": 40
}
"h_speedDash"

Exit condition:

{
  "leaveNormally": {}
}

Sets flags: f_ClearedSpeedBoosterLavaTrap

Unlocks doors:

{"nodeId":1,"types":["missiles","super"],"requires":[]}
{"nodeId":1,"types":["powerbomb"],"requires":[{"heatFrames":120}]}
From: 2
Right Door
To: 1
Left Door

Requires:

{
  "obstaclesNotCleared": [
    "A"
  ]
}
"h_speedDash"
{
  "simpleHeatFrames": 310
}
{
  "heatFrames": 40
}

Clears obstacles: A

From: 2
Right Door
To: 1
Left Door

Shoot while climbing the highest ramp for the shot to open the door.

Requires:

{
  "obstaclesNotCleared": [
    "A"
  ]
}
"h_speedDash"
"canHeroShot"
{
  "simpleHeatFrames": 250
}
{
  "heatFrames": 40
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 45,
    "openEnd": 1
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInWithStoredFallSpeed": {
    "fallSpeedInTiles": 1
  }
}

Requires:

"canDash"
{
  "or": [
    {
      "heatFrames": 650
    },
    {
      "and": [
        "h_speedDash",
        {
          "heatFrames": 360
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithStoredFallSpeed": {
    "fallSpeedInTiles": 1
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInWithStoredFallSpeed": {
    "fallSpeedInTiles": 2
  }
}

Requires:

"canDash"
{
  "or": [
    {
      "heatFrames": 650
    },
    {
      "and": [
        "h_speedDash",
        {
          "heatFrames": 360
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithStoredFallSpeed": {
    "fallSpeedInTiles": 2
  }
}

Unlocks doors:

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

Free the Geruta and lure it to this door. To speed it up, it helps to prevent breaking most of the crumbles (no more than two consecutive) so the Geruta doesn't get stuck.

Requires:

{
  "or": [
    "h_SpeedBoosterHallNoRisingLava",
    "h_lavaProof"
  ]
}
"canComplexGMode"
{
  "heatFrames": 2500
}
{
  "or": [
    "h_heatProof",
    "canCrumbleJump"
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        "h_lavaProof",
        {
          "heatFrames": 1150
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Dev note: FIXME: A dashless variant without lava proof could be possible.

From: 2
Right Door
To: 2
Right Door

Requires:

"h_SpeedBoosterHallNoRisingLava"
"canDash"
"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "or": [
    "h_speedDash",
    {
      "cycleFrames": 170
    }
  ]
}
{
  "or": [
    {
      "and": [
        "Plasma",
        {
          "cycleFrames": 790
        }
      ]
    },
    {
      "and": [
        "Spazer",
        {
          "cycleFrames": 1290
        }
      ]
    },
    {
      "and": [
        "Wave",
        {
          "cycleFrames": 1140
        }
      ]
    },
    {
      "and": [
        "Ice",
        {
          "cycleFrames": 1320
        }
      ]
    },
    {
      "and": [
        "ScrewAttack",
        {
          "cycleFrames": 1140
        }
      ]
    },
    {
      "and": [
        "canPseudoScrew",
        {
          "cycleFrames": 1200
        }
      ]
    },
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "cycleFrames": 1500
        }
      ]
    }
  ]
}
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        "canTrickyJump",
        "canWalljump",
        {
          "cycleFrames": 60
        }
      ]
    },
    {
      "and": [
        "h_lavaProof",
        {
          "cycleFrames": 180
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 3 Geruta

Dev note: FIXME: Variants could be added for dashless and/or rising lava.

From: 1
Left Door
To: 2
Item

Requires:

{
  "heatFrames": 65
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 15
    }
  ]
}

Dev note: There is no G-Mode strat added here, as it would require immobile and indirect to have enough energy and would only save a few frames.

From: 2
Item
To: 1
Left Door

Requires:

{
  "heatFrames": 80
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 25
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":50}]}
From: 2
Item
To: 1
Left Door

Requires:

"canDash"
{
  "heatFrames": 60
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 3.5,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":30}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 1
Left Door
To: 2
Right Door

Ride the first Tripper, using Morph to avoid spike damage, then perform a Crystal Flash. The second Tripper will likely either be destroyed or in a bad pattern, making it necessary to jump through the lava to cross the rest of the room.

It may help to use the Tripper to do a big jump past the shutter before doing the Crystal Flash; otherwise the shutter might end up closed and get in the way.

Requires:

"canDash"
"canSuitlessLavaDive"
{
  "heatFrames": 425
}
"h_heatedCrystalFlash"
{
  "heatFrames": 300
}
{
  "lavaFrames": 70
}

Dev note: FIXME: A dashless variant of this could be added.

From: 1
Left Door
To: 2
Right Door

Spin-jump across both sets of lava, trying to minimize the time spent in lava. To get onto the first pillar, either use a wall jump off the pillar, or use the Tripper briefly as a platform by crouch jumping or down grabbing onto it.

Requires:

"canSuitlessLavaDive"
{
  "heatFrames": 710
}
{
  "lavaFrames": 120
}
{
  "or": [
    "canWalljump",
    {
      "and": [
        {
          "or": [
            "h_underwaterCrouchJump",
            "canDownGrab"
          ]
        },
        {
          "heatFrames": 110
        },
        {
          "lavaFrames": 20
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "heatFrames": 70
        },
        {
          "lavaFrames": 10
        }
      ]
    }
  ]
}
From: 1
Left Door
To: 2
Right Door

If you have Speed Booster, unequip it to be able to run faster in the lava.

Requires:

"Gravity"
{
  "heatFrames": 360
}
{
  "lavaFrames": 130
}
{
  "or": [
    "canCarefulJump",
    {
      "heatFrames": 40
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "disableEquipment": "SpeedBooster"
        }
      ]
    },
    {
      "and": [
        {
          "heatFrames": 170
        },
        {
          "lavaFrames": 60
        }
      ]
    }
  ]
}
From: 1
Left Door
To: 2
Right Door

Use the Tripper to cross the first lava pit while avoiding all damage from the spikes and lava. If you do not have Morph, this is tricky but can be done by carefully timing a jump against the pillar and releasing the d-pad inputs, to land on the Tripper as early as possible. This allows the Tripper to sink low enough that crouching on the Tripper is enough to avoid spike damage. From the Tripper, run and jump directly onto the first pillar past the shutter; it can help to moonwalk back left on the Tripper to maximize run speed for the jump. From the pillar, run and jump directly into the lava rather than waiting for the second Tripper. Perform quick spin jumps to minimize lava damage.

Requires:

{
  "or": [
    "canTrickyJump",
    "Morph"
  ]
}
"canSuitlessLavaDive"
{
  "heatFrames": 760
}
{
  "lavaFrames": 60
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 90
    }
  ]
}

Dev note: Wall jumps are not needed for this strat and would not be helpful.

From: 1
Left Door
To: 2
Right Door

Requires:

"Morph"
{
  "heatFrames": 1010
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

Ride the first Tripper, using Morph to avoid spike damage, then perform a Crystal Flash. The second Tripper will likely either be destroyed or in a bad pattern, making it necessary to jump through the lava to cross the rest of the room.

It may help to use the Tripper to do a big jump past the shutter before doing the Crystal Flash; otherwise the shutter might end up closed and get in the way.

Requires:

"canDash"
"canSuitlessLavaDive"
{
  "heatFrames": 425
}
"h_heatedCrystalFlash"
{
  "heatFrames": 300
}
{
  "lavaFrames": 70
}

Dev note: FIXME: A dashless variant of this could be added.

From: 2
Right Door
To: 1
Left Door

Spin-jump across both sets of lava, trying to minimize the time spent in lava. To get onto the first pillar, either use a wall jump off the pillar, or use the Tripper briefly as a platform by crouch jumping or down grabbing onto it.

Requires:

"canSuitlessLavaDive"
{
  "heatFrames": 710
}
{
  "lavaFrames": 120
}
{
  "or": [
    "canWalljump",
    {
      "and": [
        {
          "or": [
            "h_underwaterCrouchJump",
            "canDownGrab"
          ]
        },
        {
          "heatFrames": 220
        },
        {
          "lavaFrames": 70
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "heatFrames": 70
        },
        {
          "lavaFrames": 10
        }
      ]
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

If you have Speed Booster, unequip it to be able to run faster in the lava.

Requires:

"Gravity"
{
  "heatFrames": 360
}
{
  "lavaFrames": 130
}
{
  "or": [
    "canCarefulJump",
    {
      "heatFrames": 40
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "disableEquipment": "SpeedBooster"
        }
      ]
    },
    {
      "and": [
        {
          "heatFrames": 170
        },
        {
          "lavaFrames": 60
        }
      ]
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

Wait for the Tripper to approach the right platform, then run onto and off its left side. Spin jump to the left one time, then jump up onto the right side of the Tripper. Run to the left and jump directly onto the first pillar after the shutter. Spin jump across the remaining lava, trying to minimize the time spent in lava.

Requires:

"canDash"
"canSuitlessLavaDive"
"canTrickyJump"
{
  "heatFrames": 780
}
{
  "lavaFrames": 100
}

Dev note: Wall jumps are not needed for this strat.

From: 2
Right Door
To: 1
Left Door

Ride the first Tripper, using Morph to avoid spike damage. From the Tripper, run and jump directly onto the first pillar after the shutter. Spin jump across the remaining lava, trying to minimize the time spent in lava.

Requires:

"canSuitlessLavaDive"
"Morph"
{
  "heatFrames": 780
}
{
  "lavaFrames": 60
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 70
    }
  ]
}

Dev note: Wall jumps are not needed for this strat.

From: 2
Right Door
To: 1
Left Door

Requires:

"Morph"
{
  "heatFrames": 1010
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 15
    }
  ]
}
From: 1
Top Left Door
To: 3
Top Right Door

Requires:

"canDash"
{
  "heatFrames": 125
}
From: 1
Top Left Door
To: 4
Top Floating Platform Junction

Requires:

{
  "heatFrames": 75
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 25
    }
  ]
}
From: 2
Bottom Left Door
To: 2
Bottom Left Door

Requires:

"canDash"
{
  "or": [
    {
      "obstaclesCleared": [
        "A"
      ]
    },
    {
      "heatFrames": 60
    }
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 11,
    "openEnd": 1
  }
}
From: 2
Bottom Left Door
To: 5
Bottom Floating Platform Junction

Requires:

{
  "heatFrames": 70
}
{
  "or": [
    {
      "heatFrames": 30
    },
    {
      "obstaclesCleared": [
        "A"
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 30
    }
  ]
}

Clears obstacles: A

From: 3
Top Right Door
To: 1
Top Left Door

Requires:

"canDash"
{
  "heatFrames": 125
}
From: 3
Top Right Door
To: 4
Top Floating Platform Junction

Requires:

{
  "heatFrames": 75
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 25
    }
  ]
}
From: 4
Top Floating Platform Junction
To: 1
Top Left Door

Requires:

{
  "heatFrames": 75
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 25
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":10}]}
From: 4
Top Floating Platform Junction
To: 1
Top Left Door

Requires:

"canDash"
{
  "heatFrames": 30
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 12,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 4
Top Floating Platform Junction
To: 3
Top Right Door

Requires:

{
  "heatFrames": 75
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 25
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":10}]}
From: 4
Top Floating Platform Junction
To: 3
Top Right Door

Requires:

"canDash"
{
  "heatFrames": 30
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 12,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}
From: 5
Bottom Floating Platform Junction
To: 1
Top Left Door

Requires:

"canComplexGMode"
{
  "heatFrames": 480
}
{
  "or": [
    "canWalljump",
    "HiJump",
    "SpaceJump",
    "h_crouchJumpDownGrab"
  ]
}
{
  "or": [
    "canTrickyUseFrozenEnemies",
    "canMoonwalk",
    "canInsaneJump"
  ]
}
{
  "or": [
    "canDash",
    "canTrickyGMode"
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

{"types":["super"],"requires":[]}
{"types":["missiles","powerbomb"],"requires":["never"]}

Dev note: FIXME: the frozen enemy option should use extra heat frames (e.g. with pausing to turn off ice).

From: 5
Bottom Floating Platform Junction
To: 2
Bottom Left Door

Requires:

{
  "heatFrames": 85
}
{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 35
    }
  ]
}

Unlocks doors:

{"types":["ammo"],"requires":[]}

Dev note: The unlocksDoors has no heatFrames since you could farm back up after unlocking.

From: 5
Bottom Floating Platform Junction
To: 2
Bottom Left Door

Requires:

"canDash"
{
  "heatFrames": 45
}
{
  "obstaclesCleared": [
    "A"
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 11,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["ammo"],"requires":[]}

Dev note: The unlocksDoors has no heatFrames since you could farm back up after unlocking.

From: 1
Top Left Door
To: 2
Bottom Left Door

Requires:

"Gravity"
"Morph"
{
  "or": [
    {
      "and": [
        "canMockball",
        {
          "disableEquipment": "SpeedBooster"
        },
        "canTrickyJump",
        {
          "lavaFrames": 80
        }
      ]
    },
    {
      "lavaFrames": 100
    }
  ]
}
{
  "or": [
    {
      "lavaFrames": 140
    },
    {
      "and": [
        "canDash",
        {
          "disableEquipment": "SpeedBooster"
        },
        {
          "lavaFrames": 110
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "lavaFrames": 40
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveNormally": {}
}

Unlocks doors:

{"types":["missiles"],"requires":[{"lavaFrames":80}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"lavaFrames":60}]}

Dev note: FIXME: A leaveWithRunway variation could be added, but it would require Speed Booster to be disabled, which would need new schema support in order to properly match entrance conditions in the next room.

From: 2
Bottom Left Door
To: 1
Top Left Door

Requires:

"Morph"
{
  "or": [
    "canMockball",
    {
      "and": [
        "canDash",
        {
          "heatFrames": 35
        }
      ]
    },
    {
      "heatFrames": 200
    }
  ]
}
{
  "heatFrames": 420
}

Exit condition:

{
  "leaveNormally": {}
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 2
Bottom Left Door
To: 1
Top Left Door

Requires:

"canDash"
"Morph"
{
  "or": [
    "canMockball",
    {
      "heatFrames": 35
    }
  ]
}
{
  "heatFrames": 380
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 8,
    "openEnd": 1,
    "heated": true
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 2
Bottom Left Door
To: 1
Top Left Door

Requires:

"canDash"
"Morph"
"SpaceJump"
{
  "or": [
    "canMockball",
    {
      "heatFrames": 35
    }
  ]
}
{
  "heatFrames": 405
}

Exit condition:

{
  "leaveNormally": {}
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 8
Main Junction
To: 8
Main Junction

Requires:

{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1,
              6
            ]
          }
        },
        {
          "cycleFrames": 660
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              2
            ]
          }
        },
        {
          "cycleFrames": 670
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              3,
              5
            ]
          }
        },
        {
          "cycleFrames": 630
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              4
            ]
          }
        },
        {
          "cycleFrames": 750
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              7
            ]
          }
        },
        {
          "cycleFrames": 1700
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "Spazer",
            "Wave",
            "Plasma",
            {
              "and": [
                "Grapple",
                {
                  "cycleFrames": 120
                }
              ]
            },
            {
              "cycleFrames": 150
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 120
        }
      ]
    }
  ]
}

Farm cycle drops: 6 Sova

From: 1
Left Door
To: 3
Item

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "heatFrames": 50
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}
From: 1
Left Door
To: 3
Item

Build up 34 tiles worth of run speed and jump into the door on the last frame. Hold angle up through the transition but also aim down to duck below the ceiling until Samus is past it. Fire the Super Missile frame perfectly to open the gate.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 34
  }
}

Requires:

{
  "notable": "High Speed Gate Glitch"
}
"h_speedJump"
"h_heatedGreenGateGlitch"
{
  "ammo": {
    "type": "Super",
    "count": 1
  }
}
"canInsaneJump"
{
  "noFlashSuit": {}
}

Clears obstacles: A

Dev note: 1 extra tile is added so that you can jump into the door, simplifying the inputs a bit.

From: 2
Right Door
To: 1
Left Door

Entrance condition:

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

Requires:

{
  "or": [
    "SpaceJump",
    {
      "and": [
        "HiJump",
        "canSpeedyJump",
        "canWalljump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir",
        {
          "or": [
            {
              "noBlueSuit": {}
            },
            {
              "and": [
                "Gravity",
                {
                  "lavaFrames": 25
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "notable": "Spring Ball Bomb Boost"
        },
        {
          "noBlueSuit": {}
        },
        "canSpringBallJumpMidAir",
        "canUnmorphBombBoost",
        "h_crouchJumpDownGrab",
        {
          "or": [
            "canInsaneJump",
            "h_additionalBomb"
          ]
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            {
              "canShineCharge": {
                "usedTiles": 15,
                "openEnd": 2
              }
            },
            "h_storedSpark"
          ]
        },
        "canMidairShinespark",
        {
          "shinespark": {
            "frames": 12,
            "excessFrames": 2
          }
        }
      ]
    },
    {
      "and": [
        {
          "notable": "Ceiling Mockball Spring Fling"
        },
        "h_speedJump",
        "canInsaneJump",
        "canMomentumConservingMorph",
        "canSpringFling"
      ]
    }
  ]
}
"h_heatedGModeOpenDifferentDoor"
From: 2
Right Door
To: 2
Right Door

Requires:

{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
"h_heatProof"
"h_lavaProof"
"Gravity"
{
  "cycleFrames": 500
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "ScrewAttack",
            {
              "and": [
                "Plasma",
                {
                  "cycleFrames": 60
                }
              ]
            },
            {
              "and": [
                "h_useMorphBombs",
                "canFarmWhileShooting",
                {
                  "cycleFrames": 1700
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 690
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 5 Dragon

From: 2
Right Door
To: 2
Right Door

Touch the item as little as possible in order to prevent PLMs from being overloaded, so the platforms below remain solid.

Entrance condition:

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

Requires:

"canRemoteAcquire"
{
  "or": [
    "SpaceJump",
    {
      "and": [
        "HiJump",
        "canSpeedyJump",
        "canWalljump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir",
        {
          "or": [
            {
              "noBlueSuit": {}
            },
            {
              "and": [
                "Gravity",
                {
                  "lavaFrames": 25
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "notable": "Spring Ball Bomb Boost"
        },
        {
          "noBlueSuit": {}
        },
        "canSpringBallJumpMidAir",
        "canUnmorphBombBoost",
        "h_crouchJumpDownGrab",
        "canInsaneJump"
      ]
    },
    {
      "and": [
        {
          "or": [
            {
              "canShineCharge": {
                "usedTiles": 15,
                "openEnd": 2
              }
            },
            "h_storedSpark"
          ]
        },
        "canMidairShinespark",
        {
          "shinespark": {
            "frames": 12,
            "excessFrames": 2
          }
        }
      ]
    },
    {
      "and": [
        {
          "notable": "Ceiling Mockball Spring Fling"
        },
        "h_speedJump",
        "canInsaneJump",
        "canMomentumConservingMorph",
        "canSpringFling"
      ]
    }
  ]
}
"h_heatedDirectGModeLeaveSameDoor"

Collects items: 3

Dev note: There is no leniency option for using an extra Power Bomb, because it will contribute to PLM overload. (2 PBs is technically barely possible)

From: 2
Right Door
To: 3
Item

Position at the end of the runway (or up to 4 pixels away) at the top-right of the room, gain run speed, perform a last-frame jump and ceiling mockball, then equip or unequip Spring Ball in order to reset Samus' vertical speed and just barely make it onto the ledge with the item.

Requires:

{
  "notable": "Ceiling Mockball Spring Fling"
}
"h_speedJump"
"canInsaneJump"
{
  "heatFrames": 500
}
"canMomentumConservingMorph"
"canSpringFling"
{
  "or": [
    "h_heatProof",
    "canBeVeryPatient"
  ]
}
From: 2
Right Door
To: 3
Item

Entrance condition:

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

Requires:

"h_heatedGMode"
{
  "or": [
    "SpaceJump",
    {
      "and": [
        "HiJump",
        "canSpeedyJump",
        "canWalljump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir",
        {
          "or": [
            {
              "noBlueSuit": {}
            },
            {
              "and": [
                "Gravity",
                {
                  "lavaFrames": 25
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "notable": "Spring Ball Bomb Boost"
        },
        {
          "noBlueSuit": {}
        },
        "canSpringBallJumpMidAir",
        "canUnmorphBombBoost",
        "h_crouchJumpDownGrab",
        {
          "or": [
            "canInsaneJump",
            "h_additionalBomb"
          ]
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            {
              "canShineCharge": {
                "usedTiles": 15,
                "openEnd": 2
              }
            },
            "h_storedSpark"
          ]
        },
        "canMidairShinespark",
        {
          "shinespark": {
            "frames": 12,
            "excessFrames": 2
          }
        }
      ]
    },
    {
      "and": [
        {
          "notable": "Ceiling Mockball Spring Fling"
        },
        "h_speedJump",
        "canInsaneJump",
        "canMomentumConservingMorph",
        "canSpringFling"
      ]
    }
  ]
}
{
  "heatFrames": 90
}

Clears obstacles: A

Dev note: Goes to 3 because opening the gate mostly only makes sense when going back to the right for a longer runway or obtaining the item. FIXME: Variants with shinesparking or Geruta damage boost can be added. (Energy from immobile, CF, or energy free sparks)

From: 2
Right Door
To: 3
Item

Entrance condition:

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

Requires:

"h_heatedGMode"
"canTrickyUseFrozenEnemies"
"canTrickyDodgeEnemies"
"canDash"
{
  "or": [
    "HiJump",
    "canSpringBallJumpMidAir"
  ]
}
{
  "heatFrames": 90
}

Clears obstacles: A

Dev note: Goes to 3 because opening the gate mostly only makes sense when going back to the right for a longer runway or obtaining the item. FIXME: A variant with only ice and reset fall speed could be added (possibly while carrying blue suit).

From: 2
Right Door
To: 3
Item

Entrance condition:

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

Requires:

"h_heatedGMode"
{
  "or": [
    "SpaceJump",
    {
      "and": [
        "HiJump",
        "canSpeedyJump",
        "canWalljump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir",
        {
          "or": [
            "canDash",
            {
              "and": [
                {
                  "haveBlueSuit": {}
                },
                "Gravity"
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        "canDash",
        {
          "notable": "Spring Ball Bomb Boost"
        },
        "canSpringBallJumpMidAir",
        "canUnmorphBombBoost",
        "h_crouchJumpDownGrab",
        {
          "or": [
            "canInsaneJump",
            "h_additionalBomb"
          ]
        }
      ]
    },
    {
      "and": [
        "canHorizontalShinespark",
        {
          "canShineCharge": {
            "usedTiles": 15,
            "openEnd": 2
          }
        },
        {
          "shinespark": {
            "frames": 40,
            "excessFrames": 18
          }
        }
      ]
    },
    {
      "and": [
        {
          "notable": "Ceiling Mockball Spring Fling"
        },
        "h_speedJump",
        "canInsaneJump",
        "canMomentumConservingMorph",
        "canSpringFling"
      ]
    }
  ]
}
{
  "heatFrames": 0
}

Dev note: FIXME: Variants with Geruta damage boost can be added. (Energy from immobile or CF)

From: 2
Right Door
To: 3
Item

Entrance condition:

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

Requires:

"canDash"
"h_heatedGMode"
"canTrickyUseFrozenEnemies"
"canTrickyDodgeEnemies"
{
  "or": [
    "HiJump",
    "canSpringBallJumpMidAir"
  ]
}
{
  "heatFrames": 0
}

Dev note: FIXME: A variant with only ice and reset fall speed could be added (possibly while carrying blue suit).

From: 2
Right Door
To: 3
Item

Requires:

"Grapple"
{
  "heatFrames": 320
}
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        "canTrickyDodgeEnemies",
        {
          "heatFrames": 60
        }
      ]
    },
    {
      "and": [
        {
          "enemyKill": {
            "enemies": [
              [
                "Geruta"
              ]
            ],
            "explicitWeapons": [
              "Missile",
              "Super",
              "Wave",
              "Spazer",
              "Plasma"
            ]
          }
        },
        {
          "heatFrames": 50
        }
      ]
    },
    {
      "heatFrames": 160
    }
  ]
}
{
  "or": [
    {
      "noFlashSuit": {}
    },
    {
      "and": [
        "canMidAirMorph",
        {
          "heatFrames": 20
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 80
    }
  ]
}
From: 2
Right Door
To: 3
Item

Either freeze the Geruta and turn off and on Ice to quickly thaw it and save Energy, or carefully jump over it without freezing it or getting hit. Then lure it left by jumping towards it from below. Freeze it when it performs a larger swoop and use it as a platform to get to the item.

Requires:

"canDash"
"canTrickyUseFrozenEnemies"
"HiJump"
{
  "heatFrames": 1050
}
{
  "or": [
    "canTrickyDodgeEnemies",
    {
      "heatFrames": 110
    }
  ]
}
{
  "or": [
    "canInsaneJump",
    {
      "heatFrames": 500
    }
  ]
}
{
  "or": [
    "h_midAirShootUp",
    {
      "heatFrames": 1000
    }
  ]
}

Dev note: The canInsaneJump option is to represent the difference between good and bad Geruta RNG.

From: 2
Right Door
To: 3
Item

Requires:

"canDash"
"canJumpIntoIBJ"
"canBombHorizontally"
{
  "heatFrames": 810
}
{
  "or": [
    "canDoubleBombJump",
    {
      "and": [
        "canJumpIntoIBJ",
        {
          "heatFrames": 330
        }
      ]
    }
  ]
}
From: 2
Right Door
To: 3
Item

Requires:

"SpaceJump"
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "heatFrames": 300
        },
        {
          "or": [
            "canInsaneJump",
            {
              "and": [
                "canTrickyDodgeEnemies",
                {
                  "heatFrames": 60
                }
              ]
            },
            {
              "and": [
                {
                  "enemyKill": {
                    "enemies": [
                      [
                        "Geruta"
                      ]
                    ],
                    "explicitWeapons": [
                      "Missile",
                      "Super",
                      "Wave",
                      "Spazer",
                      "Plasma"
                    ]
                  }
                },
                {
                  "heatFrames": 50
                }
              ]
            },
            {
              "heatFrames": 160
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 530
        }
      ]
    }
  ]
}
From: 2
Right Door
To: 3
Item

Uses a bomb boost at the end of a mid-air SpringBall jump. Also requires a crouch jump and down-grab to complete the maneuver.

Requires:

"canDash"
{
  "notable": "Spring Ball Bomb Boost"
}
"canSpringBallJumpMidAir"
"canUnmorphBombBoost"
"h_crouchJumpDownGrab"
{
  "heatFrames": 800
}
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        {
          "heatFrames": 250
        },
        "h_additionalBomb"
      ]
    }
  ]
}
From: 2
Right Door
To: 3
Item

Either freeze the Geruta and turn off and on Ice to quickly thaw it and save Energy, or carefully jump over it without freezing it or getting hit. Then lure it left by jumping towards it from below with a series of mid-air Spring Ball jumps. Freeze it when it performs a larger swoop and use it as a platform to get to the item. Be careful not to jump into the Geruta's path to avoid hitting it.

Requires:

"canDash"
{
  "notable": "Spring Ball Freeze"
}
"canTrickyUseFrozenEnemies"
"canSpringBallJumpMidAir"
{
  "heatFrames": 1600
}
{
  "or": [
    "canTrickyDodgeEnemies",
    {
      "and": [
        {
          "heatFrames": 110
        },
        {
          "enemyDamage": {
            "enemy": "Geruta",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    }
  ]
}
{
  "or": [
    "canInsaneJump",
    {
      "heatFrames": 700
    }
  ]
}

Dev note: The canInsaneJump option is to represent the difference between good and bad Geruta RNG.

From: 2
Right Door
To: 3
Item

Requires:

"HiJump"
"canSpringBallJumpMidAir"
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "heatFrames": 440
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        "Gravity",
        {
          "heatFrames": 520
        },
        {
          "lavaFrames": 60
        }
      ]
    }
  ]
}
From: 2
Right Door
To: 3
Item

Use mid-air Spring Ball jumps to manipulate the Geruta into position near the ledge. Then do a Spring Ball jump into a neutral damage boost (while still morphed) to reach the ledge.

Requires:

"canDash"
{
  "notable": "Spring Ball Jump into Damage Boost"
}
{
  "heatFrames": 1920
}
"canTrickyDodgeEnemies"
"canTrickySpringBallJump"
"canNeutralDamageBoost"
{
  "enemyDamage": {
    "enemy": "Geruta",
    "type": "contact",
    "hits": 1
  }
}
From: 3
Item
To: 1
Left Door

Requires:

{
  "or": [
    {
      "and": [
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        },
        {
          "heatFrames": 110
        }
      ]
    },
    {
      "and": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "heatFrames": 50
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 10
    }
  ]
}

Clears obstacles: A

From: 3
Item
To: 1
Left Door

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        },
        {
          "heatFrames": 160
        }
      ]
    },
    {
      "and": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "heatFrames": 50
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 17,
    "openEnd": 1
  }
}

Collects items: 3

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":70}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":120}]}
From: 3
Item
To: 1
Left Door

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        },
        {
          "heatFrames": 160
        }
      ]
    },
    {
      "and": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "heatFrames": 50
        }
      ]
    }
  ]
}

Exit condition:

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

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":70}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":120}]}
From: 3
Item
To: 2
Right Door

Requires:

"Grapple"
{
  "heatFrames": 420
}
{
  "noFlashSuit": {}
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 30
    }
  ]
}

Dev note: With a flash suit, swinging across with Grapple would require morphing/unmorphing; but if Morph is available, it's faster to just go through the morph tunnel.

From: 3
Item
To: 2
Right Door

This can be done from the top right, single tile block.

Requires:

"HiJump"
"canWalljump"
{
  "heatFrames": 550
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 210
        },
        {
          "lavaFrames": 60
        }
      ]
    }
  ]
}
From: 3
Item
To: 2
Right Door

Requires:

"Morph"
{
  "heatFrames": 360
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        "Gravity",
        {
          "heatFrames": 200
        },
        {
          "lavaFrames": 40
        }
      ]
    }
  ]
}
From: 3
Item
To: 2
Right Door

Requires:

"canDash"
{
  "heatFrames": 350
}
{
  "or": [
    {
      "lavaFrames": 70
    },
    {
      "and": [
        "Gravity",
        {
          "lavaFrames": 30
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canTrickyDodgeEnemies",
        "Gravity"
      ]
    },
    {
      "enemyDamage": {
        "enemy": "Dragon",
        "type": "contact",
        "hits": 1
      }
    },
    {
      "enemyKill": {
        "enemies": [
          [
            "Dragon"
          ]
        ],
        "explicitWeapons": [
          "Super",
          "Missile",
          "Plasma",
          "ScrewAttack"
        ]
      }
    }
  ]
}
From: 3
Item
To: 2
Right Door

Requires:

"SpaceJump"
{
  "heatFrames": 410
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 190
    }
  ]
}
From: 1
Top of the Shaft Left Door
To: 5
Top Right Door

Requires:

{
  "heatFrames": 125
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 25
    }
  ]
}
From: 2
Far Left Door
To: 2
Far Left Door

Lure the second Multiviola to the left door. The first one will require more time and heat damage. Jump over the pirates and under the first Multiviola, then return fast enough to avoid pirate lasers and contact with the second Multiviola.

Requires:

"canDash"
{
  "heatFrames": 765
}
"canTrickyDodgeEnemies"

Exit condition:

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

Lure the second Multiviola to the left door. The first one will require more time and heat damage.

Requires:

{
  "heatFrames": 600
}
{
  "or": [
    "h_speedDash",
    {
      "and": [
        "canDash",
        {
          "heatFrames": 65
        }
      ]
    },
    {
      "heatFrames": 200
    }
  ]
}
{
  "or": [
    {
      "haveBlueSuit": {}
    },
    "h_speedDash",
    "Plasma",
    "ScrewAttack",
    {
      "ammo": {
        "type": "Missile",
        "count": 2
      }
    },
    {
      "ammo": {
        "type": "Super",
        "count": 2
      }
    },
    {
      "and": [
        "Ice",
        "Wave",
        "Spazer"
      ]
    },
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "or": [
            {
              "and": [
                "Ice",
                "Wave"
              ]
            },
            {
              "and": [
                "Ice",
                "Spazer"
              ]
            },
            {
              "and": [
                "Wave",
                "Spazer"
              ]
            }
          ]
        }
      ]
    }
  ]
}

Exit condition:

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

Lure the second Multiviola to the left door. The first one will require more time and heat damage. Jump over the first pirate and into the second, then jump over the again on the return.

Requires:

"canDash"
{
  "heatFrames": 720
}
{
  "enemyDamage": {
    "enemy": "Red Space Pirate (standing)",
    "type": "contact",
    "hits": 1
  }
}

Exit condition:

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

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "cycleFrames": 1200
        },
        {
          "or": [
            "Plasma",
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 120
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 300
                }
              ]
            },
            {
              "and": [
                "canPseudoScrew",
                {
                  "cycleFrames": 220
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 1620
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 4 Multiviola, 3 Red Space Pirate (standing)

From: 2
Far Left Door
To: 4
Bottom Right Door

Press against the leftmost Speed block before using a flash suit to shinespark.

Requires:

"canDash"
"canTrickyJump"
{
  "heatFrames": 605
}
{
  "useFlashSuit": {}
}
{
  "or": [
    {
      "and": [
        "h_heatProof",
        {
          "shinespark": {
            "frames": 114,
            "excessFrames": 15
          }
        }
      ]
    },
    {
      "shinespark": {
        "frames": 114,
        "excessFrames": 5
      }
    }
  ]
}
{
  "heatFrames": 105
}
From: 2
Far Left Door
To: 8
G-Mode, Bottom Right (Started at Left)

While artificially morphed, carefully dodge or kill the enemies in the first half of the room. Go over the first set of Speed Blocks, then kill the first Red Pirate with a Power Bomb or after unmorphing. It is possible to kill or jump over the second pirate, but be careful to prevent it from shooting invisible lasers. Without any Power Bombs, this requires precise movement with Spring Ball or very precise movement with just Bombs.

Entrance condition:

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

Requires:

"canDash"
"canTrickyDodgeEnemies"
{
  "or": [
    {
      "ammo": {
        "type": "PowerBomb",
        "count": 6
      }
    },
    {
      "and": [
        "h_artificialMorphMovement",
        {
          "or": [
            "canInsaneJump",
            "h_artificialMorphPowerBomb"
          ]
        },
        {
          "or": [
            "h_artificialMorphPowerBomb",
            "h_hasBeamUpgrade",
            {
              "enemyKill": {
                "enemies": [
                  [
                    "Red Space Pirate (standing)"
                  ]
                ],
                "explicitWeapons": [
                  "Missile",
                  "Super",
                  "ScrewAttack"
                ]
              }
            },
            {
              "enemyDamage": {
                "enemy": "Red Space Pirate (standing)",
                "type": "contact",
                "hits": 1
              }
            }
          ]
        }
      ]
    }
  ]
}
{
  "heatFrames": 0
}

Dev note: It is possible to jump over the left bridge pirate, but it is incredibly precise and not expected.

From: 2
Far Left Door
To: 8
G-Mode, Bottom Right (Started at Left)

Run through the speed blocks then carefully cross the crumble bridge, as it will mostly be air. Alternatively, a speedball will prevent PLMs from overloading and Samus can roll over the bridge. Kill the pirate after the bridge before it places its invisible lasers, preventing Samus from getting through damageless. Samus can simply run to the right and fall through the bridge to safety below the pirate and kill it from below. It is also possible to perform one precise jump to cross most of the bridge and kill the pirate while blue.

Entrance condition:

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

Requires:

"h_getBlueSpeedMaxRunway"
{
  "or": [
    "canSpeedball",
    {
      "and": [
        "h_blueJump",
        "canInsaneJump"
      ]
    },
    "h_hasBeamUpgrade",
    {
      "enemyKill": {
        "enemies": [
          [
            "Red Space Pirate (standing)"
          ]
        ],
        "explicitWeapons": [
          "Missile",
          "Super",
          "ScrewAttack"
        ]
      }
    },
    {
      "enemyDamage": {
        "enemy": "Red Space Pirate (standing)",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
{
  "heatFrames": 0
}

Dev note: It is possible to shinecharge before the bridge and spark vertically above it, then move the camera to kill the pirate with speed echoes, but this isn't really easier.

From: 2
Far Left Door
To: 8
G-Mode, Bottom Right (Started at Left)

Carefully dodge or kill the enemies in the first half of the room. With Morph, go over the first set of Speed Blocks, then kill the first Red Pirate or air ball over it. It is also possible to kill or jump over the second pirate, but be careful to prevent it from shooting invisible lasers.

Entrance condition:

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

Requires:

"canDash"
{
  "or": [
    "canTrickyDodgeEnemies",
    "h_usePowerBomb",
    "ScrewAttack",
    "h_hasBeamUpgrade",
    {
      "ammo": {
        "type": "Missile",
        "count": 2
      }
    },
    {
      "ammo": {
        "type": "Super",
        "count": 2
      }
    },
    {
      "enemyDamage": {
        "enemy": "Red Space Pirate (standing)",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
{
  "or": [
    "canTrickyJump",
    {
      "enemyDamage": {
        "enemy": "Multiviola",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
"Morph"
{
  "or": [
    "h_usePowerBomb",
    {
      "and": [
        {
          "or": [
            "h_useSpringBall",
            "h_useMorphBombs"
          ]
        },
        {
          "or": [
            "canLateralMidAirMorph",
            "h_hasBeamUpgrade",
            {
              "enemyKill": {
                "enemies": [
                  [
                    "Red Space Pirate (standing)"
                  ]
                ],
                "explicitWeapons": [
                  "Missile",
                  "Super",
                  "ScrewAttack"
                ]
              }
            },
            {
              "enemyDamage": {
                "enemy": "Red Space Pirate (standing)",
                "type": "contact",
                "hits": 1
              }
            }
          ]
        }
      ]
    }
  ]
}
{
  "heatFrames": 0
}
From: 2
Far Left Door
To: 9
Right of Crumble Bridge, Left of Main Shaft Speed Blocks

Requires:

"h_speedDash"
{
  "simpleHeatFrames": 330
}
From: 5
Top Right Door
To: 1
Top of the Shaft Left Door

Requires:

{
  "heatFrames": 145
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 25
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":30}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":70}]}
From: 5
Top Right Door
To: 1
Top of the Shaft Left Door

Requires:

"canDash"
{
  "heatFrames": 130
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 8,
    "openEnd": 1,
    "gentleUpTiles": 4
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":70}]}
From: 5
Top Right Door
To: 1
Top of the Shaft Left Door

Requires:

"canTrickyJump"
{
  "or": [
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 120
        }
      ]
    },
    {
      "and": [
        "canPreciseWalljump",
        {
          "heatFrames": 130
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 15
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":30}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":70}]}
From: 5
Top Right Door
To: 5
Top Right Door

Requires:

"h_heatProof"
{
  "or": [
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              1
            ]
          }
        },
        {
          "cycleFrames": 450
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              3
            ]
          }
        },
        {
          "cycleFrames": 300
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              4
            ]
          }
        },
        {
          "cycleFrames": 360
        }
      ]
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              5
            ]
          }
        },
        {
          "cycleFrames": 200
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "Plasma",
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 30
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 30
                }
              ]
            },
            {
              "and": [
                "Grapple",
                {
                  "cycleFrames": 45
                }
              ]
            },
            {
              "cycleFrames": 120
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 40
        }
      ]
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 2 Cacatac

Dev note: Some frames added to account for spike RNG.

From: 5
Top Right Door
To: 6
Bottom Right Junction

Kill a Cacatac and collect its drop along the way. There will be a risk of a spike hit unless the Cacatac is safely killed from above.

Requires:

"canDash"
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        {
          "enemyDamage": {
            "enemy": "Cacatac",
            "type": "spike",
            "hits": 1
          }
        },
        {
          "heatFrames": 20
        }
      ]
    },
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "heatFrames": 40
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "Wave",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 85,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        {
          "ammo": {
            "type": "Missile",
            "count": 1
          }
        },
        {
          "heatFramesWithEnergyDrops": {
            "frames": 90,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        {
          "resourceAvailable": [
            {
              "type": "Super",
              "count": 1
            }
          ]
        },
        {
          "heatFrames": 90
        }
      ]
    },
    {
      "and": [
        "Plasma",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 90,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "Spazer",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 95,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "Grapple",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 100,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "ScrewAttack",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 100,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "heatFramesWithEnergyDrops": {
        "frames": 135,
        "drops": [
          {
            "enemy": "Cacatac",
            "count": 1
          }
        ]
      }
    }
  ]
}
{
  "heatFrames": 95
}
From: 5
Top Right Door
To: 6
Bottom Right Junction

Kill both Cacatacs and collect their drops along the way. There will be a risk of a spike hit unless the first Cacatac is safely killed from above.

Requires:

"canDash"
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        {
          "enemyDamage": {
            "enemy": "Cacatac",
            "type": "spike",
            "hits": 1
          }
        },
        {
          "heatFrames": 20
        }
      ]
    },
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "heatFrames": 40
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "Wave",
        {
          "or": [
            "Spazer",
            "Plasma"
          ]
        },
        {
          "heatFramesWithEnergyDrops": {
            "frames": 105,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "Plasma",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 115,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "canUseGrapple",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 125,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "Wave",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 135,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        {
          "ammo": {
            "type": "Missile",
            "count": 2
          }
        },
        {
          "heatFramesWithEnergyDrops": {
            "frames": 135,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "Spazer",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 145,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "ScrewAttack",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 175,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "heatFramesWithEnergyDrops": {
        "frames": 205,
        "drops": [
          {
            "enemy": "Cacatac",
            "count": 2
          }
        ]
      }
    }
  ]
}
{
  "heatFrames": 95
}
From: 5
Top Right Door
To: 6
Bottom Right Junction

Use a Power Bomb to safely kill both Cacatacs, and collect their drops along the way.

Requires:

"canDash"
"h_usePowerBomb"
{
  "heatFramesWithEnergyDrops": {
    "frames": 180,
    "drops": [
      {
        "enemy": "Cacatac",
        "count": 2
      }
    ]
  }
}
{
  "heatFrames": 95
}
From: 5
Top Right Door
To: 6
Bottom Right Junction

Try to jump over the Cacatacs without taking damage. With unlucky RNG, a spike hit may be unavoidable.

Requires:

{
  "heatFrames": 180
}
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        {
          "enemyDamage": {
            "enemy": "Cacatac",
            "type": "spike",
            "hits": 1
          }
        },
        {
          "heatFrames": 20
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 6
Bottom Right Junction
To: 5
Top Right Door

Kill a Cacatac and collect its drop along the way. There will be a risk of a spike hit unless the first Cacatac is safely killed from below.

Requires:

"canDash"
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        {
          "enemyDamage": {
            "enemy": "Cacatac",
            "type": "spike",
            "hits": 1
          }
        },
        {
          "heatFrames": 20
        }
      ]
    },
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "heatFrames": 40
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        {
          "ammo": {
            "type": "Missile",
            "count": 1
          }
        },
        {
          "heatFramesWithEnergyDrops": {
            "frames": 90,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        {
          "resourceAvailable": [
            {
              "type": "Super",
              "count": 1
            }
          ]
        },
        {
          "heatFrames": 90
        }
      ]
    },
    {
      "and": [
        "Plasma",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 90,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "Grapple",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 105,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "ScrewAttack",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 105,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "Wave",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 105,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "Spazer",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 105,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 1
              }
            ]
          }
        }
      ]
    },
    {
      "heatFramesWithEnergyDrops": {
        "frames": 120,
        "drops": [
          {
            "enemy": "Cacatac",
            "count": 1
          }
        ]
      }
    }
  ]
}
{
  "heatFrames": 60
}
From: 6
Bottom Right Junction
To: 5
Top Right Door

Kill both Cacatacs and collect their drops along the way. There will be a risk of a spike hit unless the first Cacatac is safely killed from below.

Requires:

"canDash"
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        {
          "enemyDamage": {
            "enemy": "Cacatac",
            "type": "spike",
            "hits": 1
          }
        },
        {
          "heatFrames": 20
        }
      ]
    },
    {
      "and": [
        "canDodgeWhileShooting",
        {
          "heatFrames": 40
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "Plasma",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 115,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        {
          "ammo": {
            "type": "Missile",
            "count": 1
          }
        },
        {
          "heatFramesWithEnergyDrops": {
            "frames": 135,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "Grapple",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 135,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "Wave",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 145,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "Spazer",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 145,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        "ScrewAttack",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 165,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        }
      ]
    },
    {
      "and": [
        {
          "heatFramesWithEnergyDrops": {
            "frames": 195,
            "drops": [
              {
                "enemy": "Cacatac",
                "count": 2
              }
            ]
          }
        },
        {
          "or": [
            "canBeVeryPatient",
            {
              "enemyDamage": {
                "enemy": "Cacatac",
                "type": "spike",
                "hits": 1
              }
            },
            {
              "heatFrames": 30
            }
          ]
        }
      ]
    }
  ]
}
{
  "heatFrames": 65
}
From: 6
Bottom Right Junction
To: 5
Top Right Door

Use a Power Bomb to safely kill both Cacatacs from below, and collect their drops along the way.

Requires:

"canDash"
"h_usePowerBomb"
{
  "heatFramesWithEnergyDrops": {
    "frames": 170,
    "drops": [
      {
        "enemy": "Cacatac",
        "count": 2
      }
    ]
  }
}
{
  "heatFrames": 65
}
From: 6
Bottom Right Junction
To: 5
Top Right Door

Try to jump over the Cacatacs without taking damage. With unlucky RNG, a spike hit may be unavoidable.

Requires:

"canDash"
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        "canTrickyJump",
        {
          "enemyDamage": {
            "enemy": "Cacatac",
            "type": "spike",
            "hits": 1
          }
        },
        {
          "heatFrames": 20
        }
      ]
    },
    {
      "and": [
        {
          "enemyDamage": {
            "enemy": "Cacatac",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "heatFrames": 20
        }
      ]
    }
  ]
}
{
  "heatFrames": 170
}
From: 6
Bottom Right Junction
To: 9
Right of Crumble Bridge, Left of Main Shaft Speed Blocks

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "heatFrames": 150
}
{
  "or": [
    "h_speedDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 7
G-Mode, Bottom Right (Started at Right)
To: 2
Far Left Door

Exit G-mode before the crumble bridge, this is when the floor starts sloping up slightly. Without a way to kill the pirates, touch the camera scroll block briefly before the bridge, then run over the bridge and through the pirates before fixing the camera, to not have to deal with the pirates. Otherwise, it may be worth killing the pirates for some Energy to be able to tank a hit later. Use a Bomb, Power Bomb, or Spring Ball to get over the Speed blocks. Then carefully avoid or kill the remaining enemies.

Requires:

"canGMode"
"h_heatProof"
"canDash"
{
  "or": [
    "h_bombThings",
    "h_useSpringBall"
  ]
}
{
  "or": [
    "h_usePowerBomb",
    "h_hasBeamUpgrade",
    "ScrewAttack",
    {
      "ammo": {
        "type": "Missile",
        "count": 3
      }
    },
    {
      "ammo": {
        "type": "Super",
        "count": 3
      }
    },
    "canComplexGMode"
  ]
}
From: 7
G-Mode, Bottom Right (Started at Right)
To: 2
Far Left Door

The crumble bridge will be air. Either tank a spike hit, carefully Space Jump over it, or with SpeedBooster, use the full runway to run over the pit. Note that there is a slight incline just before the bridge, which can be used as an indicator for where to Space Jump.

Requires:

{
  "or": [
    {
      "and": [
        "canTrickyJump",
        "SpaceJump"
      ]
    },
    "h_speedJump",
    {
      "spikeHits": 1
    }
  ]
}
"h_heatedGModeOffCameraDoor"

Exit condition:

{
  "leaveNormally": {}
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":110}]}

Dev note: Requires leaving the room, as Samus is off camera and shouldn't be expected to do more in-room.

From: 9
Right of Crumble Bridge, Left of Main Shaft Speed Blocks
To: 2
Far Left Door

Kill the two pirates while in health bomb range, to force Energy drops. It is possible to jump over the second pirate to then fight it on solid ground. Samus needs a large Energy drop with 75% damage reduction, or both large Energy drops otherwise. Cross the speed blocks by tanking a pirate laser hit and boosting up.

Requires:

"canDash"
"h_heatProof"
{
  "or": [
    "h_hasBeamUpgrade",
    {
      "ammo": {
        "type": "Missile",
        "count": 2
      }
    },
    {
      "ammo": {
        "type": "Super",
        "count": 2
      }
    },
    "ScrewAttack"
  ]
}
{
  "resourceAtMost": [
    {
      "type": "Energy",
      "count": 29
    }
  ]
}
"h_partialEnemyDamageReduction"
{
  "or": [
    "h_fullEnemyDamageReduction",
    "canBeVeryLucky"
  ]
}
"canMidAirMorph"
"canNeutralDamageBoost"
From: 9
Right of Crumble Bridge, Left of Main Shaft Speed Blocks
To: 2
Far Left Door

Kill the first pirate, then jump over or kill the second. It is possible to jump straight into the first morph tunnel. Without a way to kill the pirates, it is instead possible to tank or pause abuse a hit and then Samus will have i-frames when running through the second one. Cross the speed blocks with Bombs, a Power Bomb, Spring Ball, or by tanking a pirate laser hit and boosting up. The rest of the room can be tricky to cross damageless, particularly if Samus has no way to kill the enemies. Carefully avoid the Multiviola in the middle of the sloped section by slowing down, and kill the last Multiviola to prevent it hitting Samus in the transition.

Requires:

"canDash"
"canMidAirMorph"
"canTrickyJump"
{
  "or": [
    {
      "enemyDamage": {
        "enemy": "Red Space Pirate (standing)",
        "type": "contact",
        "hits": 1
      }
    },
    "Plasma",
    {
      "ammo": {
        "type": "Missile",
        "count": 1
      }
    },
    {
      "ammo": {
        "type": "Super",
        "count": 1
      }
    },
    {
      "and": [
        "Ice",
        "Wave",
        "Spazer"
      ]
    },
    {
      "and": [
        "Ice",
        "Spazer",
        {
          "heatFrames": 30
        }
      ]
    },
    {
      "and": [
        "Ice",
        "Wave",
        {
          "heatFrames": 30
        }
      ]
    },
    {
      "and": [
        "Wave",
        "Spazer",
        {
          "heatFrames": 30
        }
      ]
    },
    {
      "and": [
        {
          "or": [
            "Ice",
            "Wave",
            "Spazer",
            "ScrewAttack"
          ]
        },
        {
          "heatFrames": 50
        }
      ]
    },
    {
      "and": [
        "canPseudoScrew",
        {
          "heatFrames": 85
        }
      ]
    },
    {
      "and": [
        "canPauseAbuse",
        {
          "resourceAtMost": [
            {
              "type": "RegularEnergy",
              "count": 1
            }
          ]
        },
        {
          "resourceConsumed": [
            {
              "type": "ReserveEnergy",
              "count": 1
            }
          ]
        }
      ]
    }
  ]
}
{
  "or": [
    "h_useSpringBall",
    {
      "and": [
        "h_bombThings",
        {
          "heatFrames": 60
        }
      ]
    },
    {
      "and": [
        "canNeutralDamageBoost",
        {
          "enemyDamage": {
            "enemy": "Red Space Pirate (standing)",
            "type": "laser",
            "hits": 1
          }
        },
        {
          "heatFrames": 120
        }
      ]
    }
  ]
}
{
  "or": [
    "h_heatProof",
    "canTrickyDodgeEnemies",
    {
      "enemyDamage": {
        "enemy": "Multiviola",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
{
  "or": [
    "Plasma",
    "ScrewAttack",
    {
      "ammo": {
        "type": "Missile",
        "count": 5
      }
    },
    {
      "ammo": {
        "type": "Super",
        "count": 5
      }
    },
    {
      "heatFrames": 150
    }
  ]
}
{
  "heatFrames": 970
}

Dev note: canTrickyJump is used to simplify the logic, as there is no feasible way to get to this node without SpeedBooster without this skill level.

From: 9
Right of Crumble Bridge, Left of Main Shaft Speed Blocks
To: 6
Bottom Right Junction

Requires:

"canDash"
{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "heatFrames": 120
}
{
  "or": [
    "h_speedDash",
    {
      "heatFrames": 30
    }
  ]
}

Dev note: FIXME: Could have separate strats with tighter heat frames for going down or right.

From: 1
Top Right Door
To: 1
Top Right Door

Break each of the crumble platforms to group the Sovas at the bottom of the room.

Requires:

"h_heatProof"
"canDodgeWhileShooting"
{
  "or": [
    {
      "and": [
        "canConsecutiveWalljump",
        {
          "or": [
            "canCrumbleJump",
            "SpaceJump",
            "canPreciseWalljump"
          ]
        },
        {
          "cycleFrames": 930
        }
      ]
    },
    {
      "and": [
        "h_useSpringBall",
        {
          "cycleFrames": 1200
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        {
          "cycleFrames": 1320
        }
      ]
    },
    {
      "and": [
        "canDoubleBombJump",
        "canLongIBJ",
        {
          "cycleFrames": 2340
        }
      ]
    },
    {
      "and": [
        "canJumpIntoIBJ",
        "canLongIBJ",
        "canBePatient",
        {
          "cycleFrames": 4640
        }
      ]
    }
  ]
}
{
  "or": [
    "canCrumbleJump",
    {
      "cycleFrames": 300
    }
  ]
}
{
  "resetRoom": {
    "nodes": [
      1,
      2
    ]
  }
}
{
  "or": [
    {
      "haveBlueSuit": {}
    },
    "Wave",
    "Spazer",
    "Plasma",
    "Grapple",
    {
      "cycleFrames": 120
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "cycleFrames": 90
    }
  ]
}

Resets obstacles: A

Farm cycle drops: 6 Sova

Dev note: Climb from 2 to 1 if resetting with 2.

From: 1
Top Right Door
To: 3
Hidden Item

Requires:

"SpaceJump"
{
  "heatFrames": 100
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 30
    }
  ]
}

Clears obstacles: A

From: 1
Top Right Door
To: 3
Hidden Item

Shoot the shot block, then crumble jump on the middle platform.

Requires:

"canCrumbleJump"
{
  "heatFrames": 130
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 1
Top Right Door
To: 3
Hidden Item

Shoot the shot block, then crumble spin jump on the middle platform.

Requires:

"canCrumbleJump"
"canTrickyJump"
{
  "heatFrames": 115
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}

Clears obstacles: A

From: 1
Top Right Door
To: 3
Hidden Item

Jump and aim down to lower the camera so the middle platform Sova starts moving. Then freeze it by aiming down, shoot the shot block, and use the Sova as a stable platform.

Requires:

"canDash"
{
  "notable": "Top Item Frozen Sova"
}
"canTrickyUseFrozenEnemies"
"canCarefulJump"
"canCameraManip"
{
  "heatFrames": 220
}

Clears obstacles: A

Dev note: Wall jumping and using the same frozen Sova, or falling onto the Sova just below the item and then jumping to the top Sova could be added, but this would require an obstacle to ensure they haven't fallen or died, and is not really easier than a crumble jump.

From: 1
Top Right Door
To: 3
Hidden Item

Jump and aim down to lower the camera so the middle platform Sova starts moving. Then shoot the shot block and walljump off the left side of the middle platform to reach the item.

Requires:

"canDash"
"canTrickyWalljump"
"canTrickyJump"
"canCameraManip"
{
  "heatFrames": 230
}

Clears obstacles: A

From: 2
Bottom Right Door
To: 3
Hidden Item

If entering from the bottom door, a Sova will be in the way in the top left: either wall jump in place while waiting for it, or wall jump around it using two crumble platforms to the right.

Requires:

"canConsecutiveWalljump"
{
  "or": [
    "canDash",
    {
      "heatFrames": 30
    }
  ]
}
{
  "or": [
    {
      "and": [
        "HiJump",
        {
          "heatFrames": 290
        },
        {
          "or": [
            "canCrumbleJump",
            {
              "heatFrames": 30
            }
          ]
        }
      ]
    },
    {
      "heatFrames": 360
    }
  ]
}
{
  "or": [
    "ScrewAttack",
    {
      "haveBlueSuit": {}
    },
    {
      "and": [
        "canPreciseWalljump",
        "canTrickyJump",
        {
          "heatFrames": 30
        }
      ]
    },
    {
      "and": [
        "canTrickyWalljump",
        {
          "heatFrames": 80
        }
      ]
    },
    {
      "heatFrames": 330
    }
  ]
}
{
  "or": [
    "canDodgeWhileShooting",
    {
      "heatFrames": 300
    }
  ]
}
From: 2
Right Door
To: 2
Right Door

Requires:

{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "or": [
    "canQuickDrop",
    {
      "cycleFrames": 30
    }
  ]
}
{
  "or": [
    {
      "and": [
        "Wave",
        {
          "cycleFrames": 120
        }
      ]
    },
    {
      "and": [
        "Grapple",
        "canDodgeWhileShooting",
        {
          "cycleFrames": 240
        }
      ]
    },
    {
      "and": [
        "Morph",
        "canTrickyJump",
        {
          "cycleFrames": 300
        }
      ]
    },
    {
      "and": [
        "canTrivialMidAirMorph",
        "Bombs",
        {
          "cycleFrames": 1100
        }
      ]
    },
    {
      "and": [
        "Morph",
        {
          "or": [
            {
              "notable": "Return Through Crumble Blocks"
            },
            "Bombs"
          ]
        },
        {
          "or": [
            "canWalljump",
            {
              "and": [
                "HiJump",
                "canSpringBallJumpMidAir",
                "h_doubleEquipmentScreenCycleFrames"
              ]
            },
            "SpaceJump"
          ]
        },
        {
          "cycleFrames": 510
        }
      ]
    },
    {
      "cycleFrames": 2160
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "cycleFrames": 90
    }
  ]
}

Resets obstacles: A, B, C, D

Farm cycle drops: 1 Sova

From: 2
Middle Left Door
To: 2
Middle Left Door

Requires:

"h_usePowerBomb"
{
  "or": [
    {
      "resetRoom": {
        "nodes": [
          2
        ]
      }
    },
    {
      "and": [
        {
          "resetRoom": {
            "nodes": [
              4
            ]
          }
        },
        {
          "or": [
            {
              "and": [
                {
                  "getBlueSpeed": {
                    "usedTiles": 18,
                    "gentleUpTiles": 2,
                    "gentleDownTiles": 3,
                    "openEnd": 0
                  }
                },
                {
                  "cycleFrames": 420
                }
              ]
            },
            {
              "and": [
                "canMockball",
                {
                  "cycleFrames": 60
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}
{
  "or": [
    "canWalljump",
    "HiJump",
    "SpaceJump",
    {
      "and": [
        "canSpringBallJumpMidAir",
        "h_doubleEquipmentScreenCycleFrames",
        {
          "cycleFrames": 30
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 1080
                }
              ]
            },
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 1140
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 990
                }
              ]
            },
            {
              "and": [
                "Plasma",
                {
                  "cycleFrames": 850
                }
              ]
            },
            {
              "and": [
                "canMockball",
                {
                  "ammo": {
                    "type": "PowerBomb",
                    "count": 1
                  }
                },
                {
                  "cycleFrames": 900
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 1200
        }
      ]
    }
  ]
}

Clears obstacles: A, B, C, D

Farm cycle drops: 6 Mella, 3 Sm. Dessgeega

Dev note: FIXME: The cycleFrame numbers for resetting at node 4 don't make sense.

From: 2
Middle Left Door
To: 8
Right of Left Shutter, Raised Right Shutter

Run into the room, and perform a very low short-hop mockball, delaying it so that Samus morphs right before the gate.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 5
  }
}

Requires:

"h_speedJump"
"canInsaneJump"
"canMockball"

Dev note: Theoretically this can be done with 4 tiles (technically even 3.4375 tiles) but would require higher movement tech.

From: 2
Middle Left Door
To: 8
Right of Left Shutter, Raised Right Shutter

Run into the room with sufficient speed, perform a very low spin jump, and aim down to clip inside the gate.

This requires entering with extra run speed of at least $2.D. Ideally the spin jump should be performed by tapping jump for exactly one frame. If entering with near-minimal speed, a frame-perfect jump is required.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 11
  }
}

Requires:

{
  "notable": "Speedy Crouch Gate Clip"
}
"h_speedJump"
"canCrouchGateClip"
From: 3
Bottom Left Door
To: 3
Bottom Left Door

Requires:

{
  "resetRoom": {
    "nodes": [
      3
    ]
  }
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 600
                }
              ]
            },
            {
              "and": [
                "Wave",
                {
                  "cycleFrames": 630
                }
              ]
            },
            {
              "and": [
                "Spazer",
                {
                  "cycleFrames": 600
                }
              ]
            },
            {
              "and": [
                "Plasma",
                {
                  "cycleFrames": 510
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 650
        }
      ]
    }
  ]
}

Clears obstacles: D

Resets obstacles: A, B, C

Farm cycle drops: 6 Mella, 3 Sm. Dessgeega

From: 3
Bottom Left Door
To: 3
Bottom Left Door

Requires:

"canDash"
{
  "resetRoom": {
    "nodes": [
      3
    ]
  }
}
"h_usePowerBomb"
"canTrickyJump"
"canLateralMidAirMorph"
{
  "cycleFrames": 450
}

Clears obstacles: D

Resets obstacles: A, B, C

Farm cycle drops: 4 Mella, 3 Sm. Dessgeega

From: 4
Right Door
To: 2
Middle Left Door

Avoid the first two magic frames by briefly releasing dash, to avoid gaining blue speed until after Samus has run over the bomb blocks. Fire a shot while running, to open the door and run through.

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

{
  "notable": "Anti-Short Charge Hero Shot"
}
"h_speedDash"
"canHeroShot"

Exit condition:

{
  "leaveWithRunway": {
    "length": 45,
    "openEnd": 1,
    "minExtraRunSpeed": "$5.9"
  }
}

Unlocks doors:

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

Arm pump while approaching the left gate from the right, perform a very low spin jump, and aim down to clip inside the gate. Failure results in a soft-lock.

Samus must use arm pumping to advance a minimum of about 6 pixels, to have an opportunity for a frame-perfect jump, with a single-frame tap of jump. If advancing by about 12 pixels or more, then tapping jump for 2 frames becomes possible (still frame-perfect). If advancing by about 16 pixels or more, then a 2-frame window for the jump becomes possible.

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

"canDash"
{
  "notable": "Arm Pump Crouch Gate Clip"
}
"canCrouchGateClip"
From: 4
Right Door
To: 2
Middle Left Door

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

"h_speedDash"
From: 4
Right Door
To: 2
Middle Left Door

Entrance condition:

{
  "comeInWithStoredFallSpeed": {
    "fallSpeedInTiles": 1
  }
}

Requires:

"h_speedDash"

Exit condition:

{
  "leaveWithStoredFallSpeed": {
    "fallSpeedInTiles": 1
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInWithStoredFallSpeed": {
    "fallSpeedInTiles": 2
  }
}

Requires:

"h_speedDash"

Exit condition:

{
  "leaveWithStoredFallSpeed": {
    "fallSpeedInTiles": 2
  }
}

Unlocks doors:

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

Requires:

{
  "resetRoom": {
    "nodes": [
      4
    ]
  }
}
"h_useMorphBombs"
{
  "cycleFrames": 630
}
{
  "or": [
    "h_speedDash",
    {
      "and": [
        "canMockball",
        {
          "cycleFrames": 50
        }
      ]
    }
  ]
}
{
  "or": [
    "ScrewAttack",
    {
      "and": [
        {
          "or": [
            "canMidAirMorph",
            "SpringBall"
          ]
        },
        {
          "cycleFrames": 120
        }
      ]
    }
  ]
}

Clears obstacles: A, B

Resets obstacles: C, D

Farm cycle drops: 1 Sova

From: 4
Right Door
To: 7
Junction Below Power Bomb Blocks

Farm the enemies on the bottom - the first Sm. Dessgeega will give back the Power Bomb used to get down. Shinecharge and use any enemy at the bottom to interrupt.

Entrance condition:

{
  "comeInWithRMode": {}
}

Requires:

"h_speedDash"
{
  "or": [
    "h_CrystalFlashForReserveEnergy",
    {
      "and": [
        "h_usePowerBomb",
        "h_RModeCanRefillReserves",
        {
          "or": [
            {
              "resourceMissingAtMost": [
                {
                  "type": "Missile",
                  "count": 0
                }
              ]
            },
            {
              "resourceMissingAtMost": [
                {
                  "type": "PowerBomb",
                  "count": 1
                }
              ]
            }
          ]
        },
        {
          "partialRefill": {
            "type": "ReserveEnergy",
            "limit": 20
          }
        }
      ]
    }
  ]
}
"h_shinechargeMaxRunway"
{
  "autoReserveTrigger": {
    "maxReserveEnergy": 95
  }
}
"canRModeSparkInterrupt"

Clears obstacles: C, D

From: 4
Right Door
To: 7
Junction Below Power Bomb Blocks

Run under the gates with Speed Booster but do not break the Bomb Blocks. Moonfall twice to clip through the Power Bomb blocks.

Entrance condition:

{
  "comeInWithStoredFallSpeed": {
    "fallSpeedInTiles": 2
  }
}

Requires:

"h_speedDash"
"canMoonfall"
From: 8
Right of Left Shutter, Raised Right Shutter
To: 4
Right Door

Requires:

{
  "or": [
    "canDash",
    "Morph"
  ]
}
From: 8
Right of Left Shutter, Raised Right Shutter
To: 4
Right Door

Requires:

"canDash"
"canHeroShot"

Exit condition:

{
  "leaveWithRunway": {
    "length": 45,
    "openEnd": 1
  }
}

Unlocks doors:

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

Requires:

"canDash"
{
  "heatFrames": 680
}
{
  "or": [
    "canDodgeWhileShooting",
    {
      "enemyDamage": {
        "enemy": "Fune",
        "type": "fireball",
        "hits": 2
      }
    }
  ]
}

Unlocks doors:

{"types":["powerbomb"],"requires":[]}
From: 1
Top Right Door
To: 3
Bottom Right Door

Requires:

"canDash"
"Wave"
"Ice"
{
  "heatFrames": 530
}

Unlocks doors:

{"types":["powerbomb"],"requires":[]}
From: 1
Top Right Door
To: 3
Bottom Right Door

Requires:

"canDash"
"Wave"
"Ice"
{
  "heatFrames": 525
}

Exit condition:

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

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":["never"]}
From: 1
Top Right Door
To: 3
Bottom Right Door

Requires:

"canDash"
"Wave"
"Ice"
{
  "ammo": {
    "type": "Super",
    "count": 1
  }
}
{
  "heatFrames": 545
}

Exit condition:

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

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super","powerbomb"],"requires":[]}
From: 1
Top Right Door
To: 3
Bottom Right Door

Requires:

"canDash"
"canPseudoScrew"
{
  "heatFrames": 540
}

Unlocks doors:

{"types":["powerbomb"],"requires":[]}
From: 1
Top Right Door
To: 3
Bottom Right Door

Requires:

"canDash"
"ScrewAttack"
{
  "heatFrames": 525
}

Unlocks doors:

{"types":["powerbomb"],"requires":[]}

Dev note: The bottom Fune shoots a fireball which wastes all of the time save of a Leave with Runway strat.

From: 2
Middle Right Door
To: 1
Top Right Door

To minimize heat damage, immediately after landing use Grapple to open the door while running towards it, then jump over the gap and through the door. If the door is grappled too late, it may interfere with the jump.

Entrance condition:

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

Requires:

{
  "heatFrames": 75
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 35
    }
  ]
}
From: 2
Middle Right Door
To: 2
Middle Right Door

Requires:

"h_heatProof"
{
  "resetRoom": {
    "nodes": [
      2
    ]
  }
}
{
  "cycleFrames": 120
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "or": [
            "Wave",
            "Spazer",
            "Plasma",
            {
              "and": [
                "ScrewAttack",
                {
                  "cycleFrames": 35
                }
              ]
            },
            {
              "and": [
                "Grapple",
                {
                  "cycleFrames": 25
                }
              ]
            },
            {
              "cycleFrames": 60
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "cycleFrames": 180
        }
      ]
    }
  ]
}

Farm cycle drops: 3 Sova

From: 2
Middle Right Door
To: 4
Junction Below Morph Tunnel

Requires:

"Morph"
{
  "heatFrames": 180
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 3
Bottom Right Door
To: 1
Top Right Door

Requires:

{
  "heatFrames": 390
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 100
    }
  ]
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":25}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":40}]}
From: 3
Bottom Right Door
To: 1
Top Right Door

To minimize heat damage, immediately after landing use Grapple to open the door while running towards it, then jump over the gap and through the door. If the door is grappled too late, it may interfere with the jump.

Entrance condition:

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

Requires:

{
  "heatFrames": 75
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 35
    }
  ]
}
From: 4
Junction Below Morph Tunnel
To: 2
Middle Right Door

Wait for the Sova to leave the tunnel and jump morph into them to bounce up into the hole.

Requires:

"canCrouchJump"
"canMidAirMorph"
{
  "tech": "canNeutralDamageBoost"
}
{
  "enemyDamage": {
    "enemy": "Sova",
    "type": "contact",
    "hits": 1
  }
}
{
  "heatFrames": 470
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 4
Junction Below Morph Tunnel
To: 2
Middle Right Door

Either use a Power Bomb or Wave + Plasma to kill all the Sovas off-camera, or if heat protection is available, wait for all the Sovas to come out of the tunnel.

Requires:

{
  "or": [
    {
      "and": [
        "HiJump",
        {
          "or": [
            "canTrivialMidAirMorph",
            "h_useSpringBall"
          ]
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        "canTrivialMidAirMorph",
        {
          "heatFrames": 40
        }
      ]
    },
    {
      "and": [
        "canWalljump",
        "canTrivialMidAirMorph"
      ]
    },
    "canSpringBallJumpMidAir",
    {
      "and": [
        "canIBJ",
        {
          "heatFrames": 900
        }
      ]
    },
    {
      "and": [
        "canJumpIntoIBJ",
        {
          "heatFrames": 520
        }
      ]
    },
    {
      "and": [
        "canJumpIntoIBJ",
        "canDoubleBombJump",
        {
          "heatFrames": 400
        }
      ]
    }
  ]
}
{
  "or": [
    "h_heatProof",
    {
      "and": [
        "canDash",
        {
          "or": [
            "h_usePowerBomb",
            {
              "and": [
                "Wave",
                "Plasma",
                "canTrickyJump",
                {
                  "heatFrames": 80
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 40
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "heatFrames": 180
    },
    {
      "and": [
        "canFarmWhileShooting",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 115,
            "drops": [
              {
                "enemy": "Sova",
                "count": 3
              }
            ]
          }
        },
        {
          "heatFrames": 65
        }
      ]
    }
  ]
}
From: 4
Junction Below Morph Tunnel
To: 2
Middle Right Door

Freeze a Sova once it enters one of the slots on the wall and then use it as a platform.

Requires:

"canMidAirMorph"
"canTrickyUseFrozenEnemies"
{
  "or": [
    {
      "heatFrames": 780
    },
    {
      "and": [
        "canFarmWhileShooting",
        {
          "heatFramesWithEnergyDrops": {
            "frames": 680,
            "drops": [
              {
                "enemy": "Sova",
                "count": 3
              }
            ]
          }
        },
        {
          "heatFrames": 100
        }
      ]
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 4
Junction Below Morph Tunnel
To: 2
Middle Right Door

Smoothly jump into the morph tunnel while shooting the first Sova. Unmorph at the end of the tunnel to clear more Sovas as needed.

Requires:

"canMidAirMorph"
"canTrickyDodgeEnemies"
{
  "or": [
    "canPreciseWalljump",
    "HiJump"
  ]
}
{
  "enemyKill": {
    "enemies": [
      [
        "Sova"
      ]
    ],
    "explicitWeapons": [
      "Wave",
      "Spazer",
      "Plasma"
    ]
  }
}
"canFarmWhileShooting"
{
  "heatFramesWithEnergyDrops": {
    "frames": 100,
    "drops": [
      {
        "enemy": "Sova",
        "count": 3
      }
    ]
  }
}
"canDash"
{
  "heatFrames": 120
}
From: 4
Junction Below Morph Tunnel
To: 2
Middle Right Door

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        "HiJump",
        {
          "or": [
            "canTrivialMidAirMorph",
            "h_useSpringBall"
          ]
        }
      ]
    },
    {
      "and": [
        "SpaceJump",
        "canTrivialMidAirMorph",
        {
          "heatFrames": 40
        }
      ]
    },
    {
      "and": [
        "canWalljump",
        "canTrivialMidAirMorph"
      ]
    },
    "canSpringBallJumpMidAir",
    {
      "and": [
        "canJumpIntoIBJ",
        {
          "heatFrames": 240
        }
      ]
    },
    {
      "and": [
        "canJumpIntoIBJ",
        "canDoubleBombJump",
        {
          "heatFrames": 120
        }
      ]
    },
    {
      "and": [
        "canDoubleBombJump",
        {
          "heatFrames": 300
        }
      ]
    }
  ]
}
{
  "heatFrames": 180
}
{
  "enemyDamage": {
    "enemy": "Sova",
    "type": "contact",
    "hits": 1
  }
}

Dev note: Base IBJ should kill the Sovas or go around.

From: 4
Junction Below Morph Tunnel
To: 3
Bottom Right Door

Requires:

"canDash"
"Morph"
{
  "heatFrames": 140
}

Exit condition:

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

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":30}]}
From: 4
Junction Below Morph Tunnel
To: 3
Bottom Right Door

Requires:

"canDash"
"Morph"
{
  "or": [
    {
      "and": [
        {
          "ammo": {
            "type": "Super",
            "count": 1
          }
        },
        {
          "heatFrames": 145
        }
      ]
    },
    {
      "and": [
        {
          "ammo": {
            "type": "PowerBomb",
            "count": 1
          }
        },
        {
          "heatFrames": 180
        }
      ]
    }
  ]
}

Exit condition:

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

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":50}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[]}

Dev note: FIXME: unlocksDoors: powerbomb would not have an ammo cost as one is used as part of the strat.

From: 5
Junction Above Morph Tunnel
To: 2
Middle Right Door

Requires:

"h_usePowerBomb"
{
  "heatFrames": 215
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 5
Junction Above Morph Tunnel
To: 2
Middle Right Door

Requires:

"h_usePowerBomb"
"canFarmWhileShooting"
{
  "heatFramesWithEnergyDrops": {
    "frames": 150,
    "drops": [
      {
        "enemy": "Sova",
        "count": 3
      }
    ]
  }
}
{
  "heatFrames": 65
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 20
    }
  ]
}
From: 1
Left Door
To: 2
Right Door

Requires:

{
  "heatFrames": 185
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 125
    }
  ]
}

Requires:

"canDash"
"canTrickyUseFrozenEnemies"
{
  "heatFrames": 240
}

Exit condition:

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

Unlocks doors:

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

Requires:

"canDash"
{
  "heatFrames": 170
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 3,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":30}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "any",
    "minTiles": 3
  }
}

Requires:

"canDash"
"SpaceJump"
"canCarefulJump"
{
  "heatFrames": 135
}
From: 2
Right Door
To: 1
Left Door

Requires:

{
  "heatFrames": 195
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 125
    }
  ]
}

Requires:

"canDash"
"canTrickyUseFrozenEnemies"
{
  "heatFrames": 330
}

Exit condition:

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

Unlocks doors:

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

Requires:

"canDash"
{
  "heatFrames": 190
}

Exit condition:

{
  "leaveWithRunway": {
    "length": 3,
    "openEnd": 1
  }
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":30}]}
{"types":["super"],"requires":[]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 2
Right Door
To: 1
Left Door

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "any",
    "minTiles": 3
  }
}

Requires:

"canDash"
"SpaceJump"
"canCarefulJump"
{
  "heatFrames": 135
}
From: 1
Left Door
To: 2
Right Door

Requires laying PBs on the very edge of the platform by the doorway, mostly hanging over the lava, in order to double hit the rightmost Boyon.

Requires:

"canDash"
"canMidAirMorph"
"canWalljump"
"canCarefulJump"
{
  "enemyKill": {
    "enemies": [
      [
        "Boyon",
        "Boyon",
        "Boyon"
      ]
    ],
    "explicitWeapons": [
      "PowerBomb"
    ]
  }
}
{
  "heatFrames": 780
}
From: 1
Left Door
To: 2
Right Door

Jump and shoot supers diagonally down at the rightmost Boyon. Jump at the edge of the platform and shoot just before hitting the ceiling, or start one tile left and shoot while at the ceiling.

Requires:

"canDash"
"canMidAirMorph"
"canWalljump"
"canCarefulJump"
{
  "enemyKill": {
    "enemies": [
      [
        "Boyon"
      ]
    ],
    "explicitWeapons": [
      "Super"
    ]
  }
}
{
  "heatFrames": 540
}
From: 1
Left Door
To: 2
Right Door

Requires:

"Morph"
"canTrivialUseFrozenEnemies"
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "heatFrames": 240
        }
      ]
    },
    {
      "heatFrames": 350
    }
  ]
}
From: 1
Left Door
To: 2
Right Door

Requires:

"Gravity"
{
  "or": [
    "canTrivialMidAirMorph",
    "h_useSpringBall"
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "heatFrames": 290
        },
        {
          "lavaFrames": 25
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 335
        },
        {
          "lavaFrames": 40
        }
      ]
    }
  ]
}

Dev note: FIXME: Add a lava dip + spring ball midair strat, and a HiJump + damage boost strat.

From: 1
Left Door
To: 2
Right Door

Requires:

"SpaceJump"
"canMidAirMorph"
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "heatFrames": 240
        }
      ]
    },
    {
      "heatFrames": 340
    }
  ]
}
From: 1
Left Door
To: 2
Right Door

Requires:

"canMidAirMorph"
"canWalljump"
{
  "or": [
    {
      "and": [
        "canDash",
        "canUseIFrames",
        {
          "heatFrames": 330
        },
        {
          "lavaFrames": 50
        },
        {
          "enemyDamage": {
            "enemy": "Boyon",
            "type": "contact",
            "hits": 1
          }
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 370
        },
        {
          "lavaFrames": 50
        }
      ]
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

Requires:

{
  "or": [
    "canTrivialMidAirMorph",
    "h_useSpringBall",
    {
      "and": [
        "h_bombThings",
        {
          "heatFrames": 80
        }
      ]
    }
  ]
}
{
  "heatFrames": 270
}
{
  "or": [
    {
      "lavaFrames": 70
    },
    {
      "and": [
        "Gravity",
        "canDash",
        {
          "disableEquipment": "SpeedBooster"
        },
        {
          "lavaFrames": 25
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "haveBlueSuit": {}
    },
    {
      "enemyDamage": {
        "enemy": "Boyon",
        "type": "contact",
        "hits": 1
      }
    },
    {
      "heatFrames": 30
    }
  ]
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 70
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

An ice shot can shoot through the wall below the Morph tunnel and can freeze the Boyon even without Wave.

Requires:

{
  "or": [
    "canTrivialMidAirMorph",
    "h_useSpringBall",
    {
      "and": [
        "h_bombThings",
        {
          "heatFrames": 80
        }
      ]
    }
  ]
}
{
  "or": [
    "canTrickyUseFrozenEnemies",
    {
      "and": [
        "canUseFrozenEnemies",
        "Wave"
      ]
    }
  ]
}
{
  "heatFrames": 280
}
{
  "or": [
    "canDash",
    {
      "heatFrames": 100
    }
  ]
}
From: 4
Central Junction
To: 3
Item

With a precise enough jump and a quick airball, it's possible to avoid acid damage without a shinespark or wall jump.

Requires:

{
  "or": [
    "f_DefeatedCrocomire",
    {
      "obstaclesCleared": [
        "f_DefeatedCrocomire"
      ]
    }
  ]
}
"h_speedJump"
"canInsaneJump"
"canLateralMidAirMorph"
From: 4
Central Junction
To: 3
Item

With a precise enough jump, it's possible to avoid acid damage without a shinespark.

Requires:

{
  "or": [
    "f_DefeatedCrocomire",
    {
      "obstaclesCleared": [
        "f_DefeatedCrocomire"
      ]
    }
  ]
}
"h_speedJump"
"canTrickyJump"
"canWalljump"
From: 4
Central Junction
To: 3
Item

Jump and spark horizontally, or with a big speedy jump, spark diagonally to the item.

Requires:

{
  "useFlashSuit": {}
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "shinespark": {
            "frames": 31,
            "excessFrames": 7
          }
        }
      ]
    },
    {
      "and": [
        "h_speedJump",
        {
          "shinespark": {
            "frames": 6,
            "excessFrames": 4
          }
        }
      ]
    }
  ]
}
From: 4
Center Platform Junction
To: 3
Junction Left of Green Gate

Requires:

"canCarefulJump"
"canLateralMidAirMorph"
"canSpringFling"
"h_speedJump"
From: 4
Center Platform Junction
To: 3
Junction Left of Green Gate

Run and jump at the very edge of the center platform. Wait for the water level to begin lowering to walljump on the far edge. An airball may be a little easier.

Requires:

"canTrickyJump"
{
  "or": [
    "canLateralMidAirMorph",
    "canInsaneWalljump",
    {
      "and": [
        "h_speedJump",
        "canPreciseWalljump"
      ]
    }
  ]
}
From: 1
Left Door
To: 3
Item

Store a shinespark near the left door and use the remaining runway to jump as far as possible to the right. Once near the acid platforms, Shinespark diagonally to reach the item location.

Entrance condition:

{
  "comeInShinecharged": {}
}

Requires:

{
  "shineChargeFrames": 155
}
{
  "notable": "Left Side Diagonal Shinespark"
}
"h_speedJump"
"canTrickyJump"
"canShinechargeMovementTricky"
"canMidairShinespark"
{
  "shinespark": {
    "frames": 40
  }
}
From: 2
Right Vertical Door
To: 1
Left Door

Charge a spark to the right a specific distance of about 6 tiles past the broken Speed blocks. Then turn around, run and jump, and diagonal spark as late as possible. By shortening the jump it is easier but uses more Energy. With a shortened jump, it is possible but not expected to kill a Ripper and collect its drop while falling. Alternatively, it is possible to shinecharge right to left, then run and jump and then shinespark just before hitting the acid; This is a bit tighter and uses more Energy, but doesn't rely on the larger jump from Speed Booster.

Requires:

{
  "notable": "Big Jump Shinespark"
}
"canShinechargeMovementTricky"
{
  "obstaclesCleared": [
    "B"
  ]
}
{
  "canShineCharge": {
    "usedTiles": 23,
    "gentleDownTiles": 6,
    "openEnd": 1
  }
}
{
  "or": [
    {
      "and": [
        "h_speedJump",
        {
          "shinespark": {
            "frames": 30,
            "excessFrames": 2
          }
        }
      ]
    },
    {
      "shinespark": {
        "frames": 46,
        "excessFrames": 2
      }
    }
  ]
}

Dev note: There is a large variance in the number of shinespark frames based on the runway used and how long jump is held. The frames included are a reasonable approximation, although a tighter set of frames could be included with more specific details.

From: 2
Right Vertical Door
To: 1
Left Door

Charge a spark to the right, then come back, run and jump, and do a horizontal spark at the apex. If needed, down-grab onto the ledge.

Requires:

{
  "notable": "Big Jump Shinespark"
}
"h_speedJump"
"canShinechargeMovementComplex"
"canHorizontalMidairShinespark"
{
  "obstaclesCleared": [
    "B"
  ]
}
{
  "canShineCharge": {
    "usedTiles": 32,
    "gentleDownTiles": 6,
    "openEnd": 1
  }
}
{
  "shinespark": {
    "frames": 52
  }
}
"canDownGrab"
From: 2
Right Vertical Door
To: 1
Left Door

Requires:

{
  "or": [
    {
      "and": [
        "canSpeedyJump",
        "canCarefulJump"
      ]
    },
    {
      "and": [
        "h_speedJump",
        "HiJump"
      ]
    }
  ]
}
{
  "obstaclesCleared": [
    "A",
    "B"
  ]
}

Dev note: With HiJump we don't require canSpeedyJump tech here because the jump is 'trivial': it is intended in the vanilla game, telegraphed by the ramp, and is very lenient.

From: 1
Top Right Door
To: 3
Acid Chozo Statue

Requires:

"SpaceJump"
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "heatFrames": 180
        }
      ]
    },
    {
      "heatFrames": 260
    }
  ]
}
From: 1
Top Right Door
To: 3
Acid Chozo Statue

Requires:

"canSuitlessLavaDive"
"Gravity"
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "acidFrames": 70
        },
        {
          "heatFrames": 100
        }
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        {
          "disableEquipment": "HiJump"
        },
        "HiJump",
        {
          "acidFrames": 75
        },
        {
          "heatFrames": 230
        }
      ]
    },
    {
      "and": [
        "canWalljump",
        {
          "acidFrames": 90
        },
        {
          "heatFrames": 245
        }
      ]
    },
    {
      "and": [
        "canSpringBallJumpMidAir",
        {
          "acidFrames": 75
        },
        {
          "heatFrames": 230
        }
      ]
    },
    {
      "and": [
        "canGravityJump",
        {
          "heatFrames": 190
        },
        {
          "acidFrames": 40
        },
        {
          "gravitylessAcidFrames": 35
        },
        {
          "gravitylessHeatFrames": 45
        }
      ]
    }
  ]
}

Dev note: FIXME: An IBJ option can be added back here.

From: 1
Top Right Door
To: 3
Acid Chozo Statue

Try to jump to the far left side raised ledges to reduce the time spent in acid. This could mean turning off HiJump, or airballing to jump farther.

Requires:

"canSuitlessLavaDive"
{
  "or": [
    "HiJump",
    "canWalljump",
    "canSpringBallJumpMidAir"
  ]
}
{
  "acidFrames": 110
}
{
  "heatFrames": 285
}
{
  "or": [
    "canDash",
    {
      "and": [
        {
          "acidFrames": 100
        },
        {
          "heatFrames": 90
        }
      ]
    }
  ]
}
From: 1
Top Right Door
To: 3
Acid Chozo Statue

There is a hole in the left side wall that Samus can fit into by shrinking her hitbox. Once in the wall, stand up if crouched then turnaround into a buffered spinjump to jump out of the acid.

Requires:

{
  "tech": "canPartialFloorClip"
}
"canSuitlessLavaDive"
{
  "or": [
    {
      "and": [
        "canLateralMidAirMorph",
        "canDownBack",
        "canTrickyJump",
        {
          "acidFrames": 110
        },
        {
          "heatFrames": 285
        }
      ]
    },
    {
      "and": [
        "canDash",
        "canTrickyJump",
        {
          "acidFrames": 140
        },
        {
          "heatFrames": 300
        }
      ]
    },
    {
      "and": [
        {
          "acidFrames": 230
        },
        {
          "heatFrames": 390
        }
      ]
    }
  ]
}
From: 1
Top Right Door
To: 4
Junction Above Acid Plug, Without Acid

Requires:

{
  "or": [
    "f_UsedAcidChozoStatue",
    {
      "obstaclesCleared": [
        "f_UsedAcidChozoStatue"
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "heatFrames": 130
        }
      ]
    },
    {
      "heatFrames": 190
    }
  ]
}
From: 2
Bottom Right Door
To: 5
Bottom Junction Right of Morph Tunnel

Wait for the first Holtz to attack then either use the Magdollite for i-frames, or avoid the projectiles and continue dodging bats.

Requires:

"canDash"
{
  "or": [
    "canTrickyJump",
    {
      "and": [
        "canHorizontalDamageBoost",
        "canUseIFrames",
        {
          "enemyDamage": {
            "enemy": "Magdollite",
            "type": "flame",
            "hits": 1
          }
        }
      ]
    }
  ]
}
{
  "heatFrames": 290
}
From: 2
Bottom Right Door
To: 5
Bottom Junction Right of Morph Tunnel

Requires:

"canDash"
"ScrewAttack"
{
  "heatFrames": 210
}

Clears obstacles: A

From: 2
Bottom Right Door
To: 5
Bottom Junction Right of Morph Tunnel

Requires:

"canDash"
"canFarmWhileShooting"
{
  "heatFramesWithEnergyDrops": {
    "frames": 170,
    "drops": [
      {
        "enemy": "Magdollite",
        "count": 3
      }
    ]
  }
}
{
  "heatFrames": 130
}
From: 2
Bottom Right Door
To: 5
Bottom Junction Right of Morph Tunnel

Requires:

"canDash"
"canDodgeWhileShooting"
{
  "or": [
    {
      "and": [
        "Spazer",
        "Wave",
        "Ice",
        {
          "heatFrames": 480
        }
      ]
    },
    {
      "and": [
        "Plasma",
        {
          "heatFrames": 510
        }
      ]
    },
    {
      "and": [
        "Ice",
        {
          "or": [
            "Wave",
            "Spazer"
          ]
        },
        {
          "heatFrames": 750
        }
      ]
    },
    {
      "and": [
        "canTrickyDodgeEnemies",
        "Morph",
        {
          "ammo": {
            "type": "PowerBomb",
            "count": 3
          }
        },
        {
          "heatFrames": 850
        }
      ]
    }
  ]
}

Clears obstacles: A

From: 2
Bottom Right Door
To: 5
Bottom Junction Right of Morph Tunnel

Requires:

"canDash"
"canTrickyDodgeEnemies"
{
  "or": [
    {
      "and": [
        "Spazer",
        "Wave",
        {
          "heatFrames": 1280
        }
      ]
    },
    {
      "and": [
        "Spazer",
        {
          "heatFrames": 2060
        }
      ]
    },
    {
      "and": [
        "Wave",
        {
          "heatFrames": 1640
        }
      ]
    },
    {
      "and": [
        "Ice",
        {
          "heatFrames": 1560
        }
      ]
    },
    {
      "and": [
        "Morph",
        {
          "ammo": {
            "type": "PowerBomb",
            "count": 10
          }
        },
        {
          "heatFrames": 2160
        }
      ]
    }
  ]
}

Clears obstacles: A

Dev note: FIXME: This could probably be done with just Power Beam, but dodging the Holtzes becomes very tricky.

From: 2
Bottom Right Door
To: 5
Bottom Junction Right of Morph Tunnel

Requires:

"canDash"
{
  "or": [
    {
      "and": [
        "Plasma",
        "Wave",
        "Ice",
        {
          "heatFrames": 300
        }
      ]
    },
    {
      "and": [
        "Plasma",
        {
          "or": [
            "Wave",
            "Ice"
          ]
        },
        {
          "heatFrames": 390
        }
      ]
    },
    {
      "and": [
        {
          "ammo": {
            "type": "Super",
            "count": 9
          }
        },
        {
          "heatFrames": 420
        }
      ]
    }
  ]
}

Clears obstacles: A

From: 2
Bottom Right Door
To: 5
Bottom Junction Right of Morph Tunnel

Wait for the first Holtz before trying to cross.

Requires:

"canDash"
{
  "enemyDamage": {
    "enemy": "Holtz",
    "type": "contact",
    "hits": 1
  }
}
{
  "or": [
    "canCarefulJump",
    {
      "and": [
        "Gravity",
        {
          "enemyDamage": {
            "enemy": "Holtz",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "acidFrames": 60
        }
      ]
    }
  ]
}
{
  "heatFrames": 375
}
From: 3
Acid Chozo Statue
To: 1
Top Right Door

Requires:

"SpaceJump"
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "heatFrames": 200
        }
      ]
    },
    {
      "heatFrames": 275
    }
  ]
}
From: 3
Acid Chozo Statue
To: 1
Top Right Door

Requires:

{
  "or": [
    "f_UsedAcidChozoStatue",
    {
      "obstaclesCleared": [
        "f_UsedAcidChozoStatue"
      ]
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canDash",
        {
          "heatFrames": 270
        }
      ]
    },
    {
      "heatFrames": 295
    }
  ]
}
From: 4
Junction Above Acid Plug, Without Acid
To: 1
Top Right Door

Requires:

{
  "or": [
    {
      "and": [
        "canDash",
        {
          "heatFrames": 195
        }
      ]
    },
    {
      "heatFrames": 215
    }
  ]
}

Dev note: 4 requires that the acid is gone.

From: 5
Bottom Junction Right of Morph Tunnel
To: 2
Bottom Right Door

Requires:

"canDash"
"ScrewAttack"
{
  "heatFrames": 210
}
{
  "or": [
    "canTrickyJump",
    {
      "heatFrames": 30
    }
  ]
}

Clears obstacles: A

From: 5
Bottom Junction Right of Morph Tunnel
To: 2
Bottom Right Door

Requires:

"canDash"
"canFarmWhileShooting"
{
  "heatFramesWithEnergyDrops": {
    "frames": 240,
    "drops": [
      {
        "enemy": "Magdollite",
        "count": 3
      }
    ]
  }
}
{
  "heatFrames": 40
}
{
  "or": [
    "canInsaneJump",
    {
      "heatFrames": 110
    }
  ]
}
From: 5
Bottom Junction Right of Morph Tunnel
To: 2
Bottom Right Door

Requires:

{
  "or": [
    {
      "and": [
        "canDash",
        "canTrickyJump",
        {
          "heatFrames": 820
        }
      ]
    },
    {
      "and": [
        "canDash",
        "ScrewAttack",
        {
          "heatFrames": 660
        }
      ]
    },
    {
      "and": [
        "canDash",
        "canHorizontalDamageBoost",
        "canUseIFrames",
        {
          "enemyDamage": {
            "enemy": "Magdollite",
            "type": "flame",
            "hits": 1
          }
        },
        {
          "heatFrames": 660
        }
      ]
    },
    {
      "and": [
        {
          "haveBlueSuit": {}
        },
        {
          "heatFrames": 725
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithGModeSetup": {}
}

Unlocks doors:

{"types":["ammo"],"requires":[]}
From: 5
Bottom Junction Right of Morph Tunnel
To: 2
Bottom Right Door

Wait for the Magdollite to attack then use it for i-frames.

Requires:

"canDash"
{
  "enemyDamage": {
    "enemy": "Magdollite",
    "type": "flame",
    "hits": 1
  }
}
"canHorizontalDamageBoost"
"canUseIFrames"
{
  "heatFrames": 290
}
From: 5
Bottom Junction Right of Morph Tunnel
To: 2
Bottom Right Door

Requires:

"canDash"
"h_PlasmaHitbox"
"canInsaneJump"
{
  "heatFrames": 190
}
From: 5
Bottom Junction Right of Morph Tunnel
To: 2
Bottom Right Door

Requires:

"canDash"
"Ice"
"Wave"
"Plasma"
{
  "heatFrames": 330
}
From: 5
Bottom Junction Right of Morph Tunnel
To: 2
Bottom Right Door

Requires:

"canDash"
{
  "enemyDamage": {
    "enemy": "Holtz",
    "type": "contact",
    "hits": 1
  }
}
{
  "or": [
    "canCarefulJump",
    {
      "and": [
        "Gravity",
        {
          "enemyDamage": {
            "enemy": "Holtz",
            "type": "contact",
            "hits": 1
          }
        },
        {
          "acidFrames": 60
        }
      ]
    }
  ]
}
{
  "heatFrames": 330
}
From: 5
Bottom Junction Right of Morph Tunnel
To: 2
Bottom Right Door

Requires:

"canDash"
"canTrickyDodgeEnemies"
{
  "heatFrames": 280
}
{
  "or": [
    "canInsaneJump",
    {
      "heatFrames": 20
    }
  ]
}
From: 3
Junction Left of Green Gate
To: 1
Left Door

Requires:

"canTrickyDodgeEnemies"
{
  "or": [
    {
      "heatFrames": 270
    },
    {
      "and": [
        "h_speedJump",
        "canWalljump",
        {
          "heatFrames": 225
        }
      ]
    }
  ]
}
{
  "ammo": {
    "type": "Super",
    "count": 1
  }
}
{
  "or": [
    {
      "notable": "First-Try Gate Glitch"
    },
    {
      "ammo": {
        "type": "Super",
        "count": 2
      }
    }
  ]
}

Dev note: This is chaotic because the gate glitch's unreliability makes the room more variable: with a first-try gate glitch a single Super is enough, but otherwise, you would likely want to have three.

From: 3
Junction Left of Green Gate
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "B"
  ]
}
{
  "or": [
    {
      "heatFrames": 270
    },
    {
      "and": [
        "h_speedJump",
        "canWalljump",
        {
          "heatFrames": 225
        }
      ]
    }
  ]
}
From: 3
Junction Left of Green Gate
To: 1
Left Door

Requires:

{
  "notable": "First-Try Gate Glitch"
}
"ScrewAttack"
{
  "or": [
    {
      "heatFrames": 300
    },
    {
      "and": [
        "h_speedJump",
        "canWalljump",
        {
          "heatFrames": 225
        }
      ]
    }
  ]
}

Dev note: FIXME: A variant that farms the Rippers using Screw Attack should be added.

From: 1
Bottom Left Door
To: 2
Middle Right Door

Jump through the lowest part of the door to enter with enough momentum to break the bomb blocks using SpeedBooster.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 0,
    "minExtraRunSpeed": "$2.A"
  }
}

Requires:

"h_blueJump"
"HiJump"
"canTrickyJump"
{
  "heatFrames": 80
}
From: 1
Bottom Left Door
To: 5
Junction Above Bottom Blocks

Jump through the lowest part of the door to enter with enough momentum to break the bomb blocks using SpeedBooster.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 0,
    "minExtraRunSpeed": "$2.A"
  }
}

Requires:

"h_blueJump"
"canTrickyJump"
{
  "heatFrames": 50
}
From: 2
Middle Right Door
To: 3
Top Right Door

Jump into the room with blue speed and a specific amount of horizontal momentum, morphing through the transition. Unmorph to clear Samus' horizontal momentum while retaining blue, to break the right-most bomb blocks above and reach the top of the room.

It can help to pause buffer the morph: time a pause to hit just after Samus jumps and aims down, then hold down during the unpause black screen to buffer the morph.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 1,
    "minExtraRunSpeed": "$6.0",
    "maxExtraRunSpeed": "$6.1"
  }
}

Requires:

"h_blueJump"
"canTrickyDashJump"
"canInsaneJump"
"canLateralMidAirMorph"
{
  "heatFrames": 120
}

Clears obstacles: A

Dev note: Higher run speeds could also work, but with greater difficulty.

From: 2
Middle Right Door
To: 3
Top Right Door

Jump into the room with blue speed. Morph and unmorph to clear Samus' horizontal momentum while retaining blue, to break the right-most bomb blocks above and reach the top of the room.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 1,
    "minExtraRunSpeed": "$2.5",
    "maxExtraRunSpeed": "$2.F"
  }
}

Requires:

"h_blueJump"
"HiJump"
"canLateralMidAirMorph"
"canTrickyJump"
{
  "heatFrames": 150
}

Clears obstacles: A

Dev note: Higher run speeds can also work, but with greater difficulty.

From: 2
Middle Right Door
To: 3
Top Right Door

Jump into the room with blue speed and very low horizontal momentum, to break the left-most bomb block above and wall jump up.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 1,
    "minExtraRunSpeed": "$0.C",
    "maxExtraRunSpeed": "$0.F"
  }
}

Requires:

"h_blueJump"
"HiJump"
"canInsaneJump"
"canWalljump"
{
  "heatFrames": 130
}

Clears obstacles: A

From: 2
Middle Right Door
To: 5
Junction Above Bottom Blocks

Jump into the room with blue speed, morphing and unmorphing to clear Samus' horizontal momentum while retaining blue. Use the blue to break the right-most bomb blocks above, then fall down.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 1,
    "minExtraRunSpeed": "$1.D",
    "maxExtraRunSpeed": "$2.F"
  }
}

Requires:

"h_blueJump"
"HiJump"
"canLateralMidAirMorph"
"canTrickyJump"
{
  "heatFrames": 155
}

Clears obstacles: A

From: 2
Right Door
To: 5
Below Left Door Junction

Enter the room blue with very low run speed (e.g. with a 4-tap). Use a precisely timed jump to bonk the large stalagtite in the ceiling and fall through both pirates, killing them with the blue speed. Enter the acid while aiming down to shrink Samus' hitbox. This strat works with all combinations of movement items and suits.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 9,
    "openEnd": 1,
    "gentleDownTiles": 4
  }
}

Requires:

{
  "notable": "Reverse Acid Dive"
}
{
  "notable": "Reverse Thread the Needle"
}
{
  "obstaclesNotCleared": [
    "A"
  ]
}
"h_blueJump"
"canInsaneJump"
"canSuitlessLavaDive"
"canSlowShortCharge"
{
  "heatFrames": 330
}
{
  "acidFrames": 210
}
From: 3
Bottom Horizontal Door
To: 7
Junction By Lower Alcoons (Left of Spike Pits)

Use blue speed to kill the Alcoons without stopping.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 7,
    "openEnd": 1,
    "gentleDownTiles": 4
  }
}

Requires:

"h_blueJump"
{
  "heatFrames": 60
}
From: 1
Left Door
To: 2
Right Door

Requires:

{
  "or": [
    {
      "and": [
        "h_speedDash",
        {
          "heatFrames": 265
        },
        {
          "acidFrames": 112
        }
      ]
    },
    {
      "and": [
        {
          "heatFrames": 300
        },
        {
          "acidFrames": 145
        }
      ]
    }
  ]
}
"Gravity"
"canSuitlessLavaDive"
From: 1
Left Door
To: 2
Right Door

Entrance condition:

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

Requires:

"h_blueJump"
"SpaceJump"
"canCarefulJump"
{
  "heatFrames": 190
}
From: 2
Right Door
To: 1
Left Door

Entrance condition:

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

Requires:

"h_blueJump"
"SpaceJump"
"canCarefulJump"
{
  "heatFrames": 200
}
From: 7
Junction Left of Morph Tunnel
To: 6
Junction Left of Power Bomb Blocks

Requires:

{
  "obstaclesCleared": [
    "D"
  ]
}
{
  "getBlueSpeed": {
    "usedTiles": 20,
    "steepDownTiles": 4,
    "openEnd": 1
  }
}
"canCarefulJump"
"h_blueJump"
{
  "heatFrames": 200
}

Clears obstacles: C

From: 7
Junction Left of Morph Tunnel
To: 6
Junction Left of Power Bomb Blocks

Requires:

{
  "obstaclesCleared": [
    "C",
    "D"
  ]
}
{
  "getBlueSpeed": {
    "usedTiles": 20,
    "steepDownTiles": 4,
    "openEnd": 1
  }
}
"canCarefulJump"
"h_blueJump"
{
  "tech": "canChainTemporaryBlue"
}
{
  "or": [
    "canTrickyJump",
    {
      "noFlashSuit": {}
    }
  ]
}
{
  "heatFrames": 240
}

Clears obstacles: B

Dev note: It is easier to chainTemporaryBlue than to unmorph at the correct timing.

From: 1
Left Door
To: 1
Left Door

Requires:

{
  "not": "f_DefeatedPhantoon"
}
"h_speedJump"
"canInsaneJump"
"canMomentumConservingMorph"
"canInsaneMidAirMorph"

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 3,
    "runway": {
      "length": 45,
      "openEnd": 1
    },
    "obstruction": [
      5,
      0
    ]
  }
}

Dev note: Max extra run speed $7.0. The obstruction (from the Workrobot) actually extends between 4 and 5 tiles.

From: 1
Left Door
To: 1
Left Door

Requires:

"f_DefeatedPhantoon"
"h_speedJump"
{
  "or": [
    "canMomentumConservingMorph",
    {
      "and": [
        "canMomentumConservingTurnaround",
        "canInsaneJump"
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 3,
    "runway": {
      "length": 45,
      "openEnd": 1
    },
    "obstruction": [
      3,
      0
    ]
  }
}

Dev note: Max extra run speed $7.0.

From: 3
Right Door
To: 3
Right Door

Requires:

"h_speedJump"

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 3,
    "runway": {
      "length": 5,
      "openEnd": 0
    },
    "obstruction": [
      4,
      2
    ]
  }
}

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

From: 2
Middle Left Door
To: 1
Top Left Door

Jump close to ceiling, and activate a shinespark to the right. If successful, Samus will clip into the wall behind the Chozo statue and be able to X-Ray climb up.

Only certain horizontal positions will cause Samus to clip into the wall. It will work to activate the spark while Samus is centered under the second Grapple block or slightly to the left.

Requires:

"h_storedSpark"
"canDash"
"canShinechargeMovementTricky"
{
  "shinespark": {
    "frames": 88,
    "excessFrames": 0
  }
}
"canShinesparkSlopeClip"
"canXRayClimb"
{
  "or": [
    {
      "getBlueSpeed": {
        "usedTiles": 16,
        "steepDownTiles": 4,
        "openEnd": 0
      }
    },
    "can4HighMidAirMorph"
  ]
}

Exit condition:

{
  "leaveNormally": {}
}

Unlocks doors:

{"types":["ammo"],"requires":[]}

Dev note: The leaveNormally is to ensure it won't be required to do the Speed block moondance blind up there.

From: 2
Middle Left Door
To: 3
Bottom Left Door

Samus's shinecharge frames are paused while riding the Bowling Chozo.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 19
  }
}

Requires:

"f_DefeatedPhantoon"
"h_speedJump"
"canSpeedKeep"
"h_shinechargeMaxRunway"
{
  "spikeHits": {
    "mul": [
      3,
      "n_speedKeepAttempts"
    ]
  }
}
{
  "shineChargeFrames": 145
}

Exit condition:

{
  "leaveShinecharged": {}
}

Sets flags: f_UsedBowlingStatue

Unlocks doors:

{"types":["super"],"requires":[]}
{"types":["missiles","powerbomb"],"requires":["never"]}
From: 2
Middle Left Door
To: 6
Bowling Chozo Statue

A bit easier than 2-hit bowling

Requires:

"canUseIFrames"
"h_speedJump"
{
  "spikeHits": 2
}
From: 2
Middle Left Door
To: 6
Bowling Chozo Statue

Jump into the room and morph along the ceiling to maximize distance. Unmorph while entering the spikes to minimize knockback Then build up speed and airball again to cross the spikes.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 28
  }
}

Requires:

"h_speedJump"
"canInsaneJump"
"canMomentumConservingMorph"
"canUseIFrames"
{
  "spikeHits": 1
}
From: 2
Middle Left Door
To: 6
Bowling Chozo Statue

Start with Spring Ball disabled. Jump over the spikes and mid-air morph. Spring fling on the way down, Spring Ball bounce through the spikes, then spring fling again to reach the statue taking only one spike hit.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 12
  }
}

Requires:

"h_speedJump"
"canTrickyJump"
"canSpringFling"
"h_unpauseKeepMomentum"
"canLateralMidAirMorph"
"canUseIFrames"
{
  "spikeHits": 1
}
From: 2
Middle Left Door
To: 6
Bowling Chozo Statue

Jump into the room and morph along the ceiling to maximize distance. Unmorph while entering the spikes to minimize knockback Then build up speed and airball again to cross the spikes. With only a short runway available, high precision is required.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 25
  }
}

Requires:

"h_speedJump"
"canInsaneJump"
"canMomentumConservingMorph"
"canInsaneMidAirMorph"
"canUseIFrames"
{
  "spikeHits": 1
}
From: 2
Middle Left Door
To: 6
Bowling Chozo Statue

Requires:

"canHorizontalShinespark"
"h_storedSpark"
"canDash"
{
  "shinespark": {
    "frames": 82,
    "excessFrames": 8
  }
}
From: 2
Middle Left Door
To: 7
Bowling In G-Mode

Ride the statue, which will not take Samus down, and will instead drop her off in the spike pit somewhat near the door.

Entrance condition:

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

Requires:

"canComplexGMode"
"f_DefeatedPhantoon"
"Morph"
{
  "or": [
    "SpaceJump",
    {
      "and": [
        "canUseIFrames",
        {
          "spikeHits": 2
        },
        {
          "or": [
            "canHorizontalDamageBoost",
            "canInsaneJump",
            "h_speedJump",
            {
              "spikeHits": 1
            }
          ]
        }
      ]
    },
    {
      "and": [
        {
          "blueSuitShinecharge": {}
        },
        "canDash",
        {
          "shinespark": {
            "frames": 80,
            "excessFrames": 7
          }
        }
      ]
    }
  ]
}
From: 2
Middle Left Door
To: 7
Bowling In G-Mode

Crystal Flash then pause abuse to cross the spikeway with minimal Energy loss. Ride the statue, which will not take Samus down, and will instead drop her off in the spike pit somewhat near the door.

Entrance condition:

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

Requires:

"canComplexGMode"
"f_DefeatedPhantoon"
"h_CrystalFlash"
{
  "or": [
    "SpaceJump",
    {
      "and": [
        "canUseIFrames",
        "h_pauseAbuseMinimalReserveRefill",
        "h_pauseAbuseMinimalReserveRefill",
        "h_pauseAbuseMinimalReserveRefill"
      ]
    },
    {
      "and": [
        "canUseIFrames",
        "h_speedJump",
        "h_pauseAbuseMinimalReserveRefill",
        "h_pauseAbuseMinimalReserveRefill"
      ]
    },
    {
      "and": [
        {
          "blueSuitShinecharge": {}
        },
        "canDash",
        {
          "shinespark": {
            "frames": 80,
            "excessFrames": 7
          }
        }
      ]
    }
  ]
}
From: 1
Left Door
To: 2
Item (Behind the Bomb Wall)

Run on the conveyor to build Speed for breaking the bomb block. Push the right side Worker Robot onto the conveyor Jump low into the wall so Samus' head touches the block. Speed can be used to clear the Bulls.

Requires:

"f_DefeatedPhantoon"
"canCarefulJump"
{
  "or": [
    "canDodgeWhileShooting",
    {
      "enemyKill": {
        "enemies": [
          [
            "Bull",
            "Bull"
          ]
        ]
      }
    },
    {
      "enemyDamage": {
        "enemy": "Bull",
        "type": "contact",
        "hits": 1
      }
    }
  ]
}
{
  "getBlueSpeed": {
    "usedTiles": 18,
    "openEnd": 1
  }
}
"h_blueJump"
{
  "or": [
    "canTrivialMidAirMorph",
    "h_useSpringBall",
    "h_bombThings"
  ]
}

Dev note: Space Jumping from left conveyor feels a little harder.

From: 1
Right Door
To: 2
Item

Run from the adjacent room and jump at the end of the platform. Aim down just before bonking the ceiling.

This requires a last-frame jump and has a 2-frame window for the aim-down.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 36
  }
}

Requires:

"h_speedJump"
"canInsaneJump"
{
  "or": [
    "canBeVeryPatient",
    {
      "thornHits": 5
    }
  ]
}
{
  "not": "f_DefeatedPhantoon"
}

Dev note: The 5 thornHits are for lenience since it is very difficult to get this first try.

Run from the adjacent room and jump at the end of the platform. From the top right platform, jump to the left and wall jump just above the spikes and climb the left wall.

With minimal runway length (2 tiles), this has a 2-frame window for the jump. With a last-frame jump it has a 3-frame window for wall jump, otherwise the wall jump is frame-perfect.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 2
  }
}

Requires:

"h_speedJump"
"canInsaneJump"
"canConsecutiveWalljump"
{
  "not": "f_DefeatedPhantoon"
}

Using speed from the adjacent room, perform a ceiling mockball to make it across the gap.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 23
  }
}

Requires:

"h_speedJump"
"canTrickyJump"
"canMomentumConservingMorph"
{
  "or": [
    "canInsaneJump",
    {
      "thornHits": 5
    }
  ]
}
{
  "not": "f_DefeatedPhantoon"
}

Dev note: The 5 thornHits are for lenience since it is very difficult to get this first try.

Using speed from the adjacent room, perform a ceiling mockball and equip or unequip Spring Ball to make it across the gap.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 12
  }
}

Requires:

"h_speedJump"
"canTrickyJump"
"canMomentumConservingMorph"
"canSpringFling"
"h_unpauseKeepMomentum"
{
  "or": [
    "canInsaneJump",
    {
      "thornHits": 5
    }
  ]
}
{
  "not": "f_DefeatedPhantoon"
}

Dev note: The 5 thornHits are for lenience since it is very difficult to get this first try.

Run from the adjacent room and jump at the end of the platform. From the top right platform, jump to the left and wall jump just above the spikes and climb the left wall.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 5
  }
}

Requires:

"h_speedJump"
"canCarefulJump"
"canConsecutiveWalljump"
{
  "not": "f_DefeatedPhantoon"
}
{
  "or": [
    {
      "disableEquipment": "HiJump"
    },
    "canRiskPermanentLossOfAccess",
    "canTrickyJump"
  ]
}

Dev note: This variant of the strat includes an extra couple of tiles of runway for lenience.

Run from the adjacent room and jump at the end of the platform. From the top right platform, jump to the left and wall jump just above the spikes and climb the left wall.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 3
  }
}

Requires:

"h_speedJump"
"canTrickyJump"
"canConsecutiveWalljump"
{
  "not": "f_DefeatedPhantoon"
}
From: 1
Right Door
To: 2
Item

Requires:

"h_storedSpark"
"canDash"
{
  "shinespark": {
    "frames": 13,
    "excessFrames": 2
  }
}
From: 2
Item
To: 1
Right Door

Requires:

"h_storedSpark"
"canDash"
{
  "shinespark": {
    "frames": 14,
    "excessFrames": 4
  }
}
From: 2
Bottom Right Door
To: 2
Bottom Right Door

Requires:

"Gravity"
"h_speedJump"
"canInsaneJump"
"canMomentumConservingMorph"
"canInsaneMidAirMorph"

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 3,
    "runway": {
      "length": 17,
      "openEnd": 0,
      "steepDownTiles": 2,
      "startingDownTiles": 1
    },
    "obstruction": [
      4,
      0
    ]
  }
}

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

From: 4
Top Right Door
To: 11
Upper Left Ledge Junction

Come in with high speed and jump after the transition to cross the room. Precise timing is needed to jump to the correct height: too high and Samus will bonk the Grapple block, too low and Samus will not make it onto the ledge. A Powamp may be in the path of the jump but can be destroyed with blue speed.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 31
  }
}

Requires:

"h_speedJump"
"canCrossRoomJumpIntoWater"
"canInsaneJump"
From: 2
Bottom Left Door
To: 1
Middle Left Door

Use double spring ball jumps to reach the top-right of the room with temporary blue. To cross the two gaps at the top of the room to the left while chaining temporary blue, use spring ball jumps with HiJump disabled; in each case, perform a stationary lateral mid-air morph or a spring fling (or both);

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 0.4375
  }
}

Requires:

"h_waterGetBlueSpeed"
"HiJump"
"canLongChainTemporaryBlue"
"canBeExtremelyPatient"
"canXRayTurnaround"
"canDoubleSpringBallJumpMidAir"
"canTrickySpringBallJump"
{
  "or": [
    "canStationaryLateralMidAirMorph",
    "canSpringFling"
  ]
}
"can4HighMidAirMorph"
From: 2
Bottom Left Door
To: 7
Top Right Left Item

Use a double spring ball jump to reach the Speed blocks below the items while chaining temporary blue. Perform a spring ball jump and immediately unmorph and continue holding up, to break some of the Speed blocks while passing up through them. Leave one of the bottom Speed blocks unbroken to use as a platform. The top speed blocks will respawn; clip through them either using a snail clip with X-Ray or a Crystal Flash clip; In the case of a Crystal Flash clip, menu to Grapple before the Crystal Flash ends and mash shoot while holding down.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 0.4375
  }
}

Requires:

{
  "notable": "Suitless Temporary Blue To Items"
}
"canSuitlessMaridia"
"h_waterGetBlueSpeed"
"h_doubleSpringBallJumpWithHiJump"
"canChainTemporaryBlue"
{
  "or": [
    "canXRayCeilingClip",
    {
      "and": [
        "h_jumpIntoCrystalFlashClip",
        "Grapple"
      ]
    }
  ]
}
From: 5
Right Door
To: 1
Middle Left Door

Gain blue speed by running right-to-left on the 20-tile runway below the items. Then use Space Jump to carry it across the top of the room to break the bomb blocks. To cross the room most easily, blue speed can be gained with low momentum by pressing pause, running a few tiles, stuttering just before the pause hits, disabling Gravity suit, continuing to run left, then re-enabling Gravity suit before jumping. Alternatively, a regular shortcharge can be used in combination with either HiJump or a precise amount of extra run speed ($2.0 or $2.1), to cross the room at higher speed.

Requires:

{
  "notable": "Blue Space Jump"
}
"Gravity"
"canPreciseSpaceJump"
{
  "or": [
    {
      "and": [
        "canDisableEquipment",
        "h_stutterWaterGetBlueSpeed"
      ]
    },
    {
      "and": [
        {
          "getBlueSpeed": {
            "usedTiles": 20,
            "openEnd": 2
          }
        },
        {
          "or": [
            "HiJump",
            "canTrickyDashJump"
          ]
        }
      ]
    }
  ]
}
"canBlueSpaceJump"
From: 1
Left Door
To: 1
Left Door

Use Speed Booster to break the Speed blocks, and run from the right side of the room, using blue speed to run on top of the sand.

Requires:

"Gravity"
{
  "getBlueSpeed": {
    "usedTiles": 22,
    "openEnd": 1
  }
}
"h_speedJump"

Exit condition:

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

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}
"Gravity"
"h_speedJump"
"canInsaneJump"
{
  "or": [
    {
      "and": [
        "canMomentumConservingMorph",
        "canInsaneMidAirMorph"
      ]
    },
    "canMomentumConservingTurnaround"
  ]
}

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 1,
    "runway": {
      "length": 36,
      "openEnd": 1,
      "gentleUpTiles": 2
    },
    "obstruction": [
      3,
      0
    ]
  }
}

Dev note: Max extra run speed $6.3.

From: 1
Left Door
To: 1
Left Door

Use Speed Booster to break the Speed blocks, and run from the right side of the room, using blue speed to run on top of the sand.

Requires:

"Gravity"
{
  "getBlueSpeed": {
    "usedTiles": 22,
    "openEnd": 1
  }
}
"h_speedJump"

Exit condition:

{
  "leaveWithSpringBallBounce": {
    "remoteRunway": {
      "length": 45,
      "openEnd": 1
    },
    "landingRunway": {
      "length": 3,
      "openEnd": 1
    },
    "movementType": "uncontrolled"
  }
}
From: 1
Left Door
To: 4
Right Door

Enter the room with blue speed, and jump into a speedball.

Entrance condition:

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

Requires:

"h_waterGetBlueSpeed"
"canSpeedball"
"canTrickyJump"

Enter the room with blue speed, and jump into a speedball. Then chain temporary blue into the next room.

Entrance condition:

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

Requires:

"h_waterGetBlueSpeed"
"canSpeedball"
"canTrickyJump"
"canChainTemporaryBlue"

Exit condition:

{
  "leaveWithTemporaryBlue": {}
}

Unlocks doors:

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

Needs near max horizontal speed coming from about 40 runway tiles in the adjacent room. Jump after the transition. Running longer on the short runway is more difficult at maximum speed, but will increase the success of the jump. A crisp momentum conserving morph can also make up for a jump that is buffered through the door.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 40
  }
}

Requires:

"h_speedJump"
"canInsaneJump"
"canLateralMidAirMorph"
"canCrossRoomJumpIntoWater"
"canMomentumConservingMorph"

Collects items: 5

From: 4
Right Door
To: 7
Right of Sand with Blue Speed

Entrance condition:

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

Requires:

"h_waterGetBlueSpeed"

Dev note: This is just a rough estimate of the minimum number of tiles that this runway can represent. It is designed for a skill level that won't be able to use canStutterWaterShineCharge.

From: 2
Item
To: 1
Top Left Door

Using the bottom of the room, shortcharge to use the echoes created by shinesparking to kill all of the Standing Pirates. Either lead the pirate to the left wall or take a hit to gain i-frames to use the full runway to charge a spark To lead a pirate, have it shoot in the direction you want it to go. Then jump overhead and crouch on the other side. Or, jump and aim down while on the sloped tiles just above to lower the camera and wait for the pirate to move to the correct spot. Turn around and diagonal spark the ceiling to kill the lowest pirate, and later the middle pirates. Building a spark towards the left allows for enough run speed to jump to the middle level. Then vertical shinespark out which kills the top pirate.

Requires:

{
  "or": [
    "Morph",
    "canCarefulJump",
    "canCameraManip"
  ]
}
"canShinechargeMovementComplex"
{
  "canShineCharge": {
    "usedTiles": 21,
    "openEnd": 0
  }
}
{
  "shinespark": {
    "frames": 30,
    "excessFrames": 7
  }
}
"canUseSpeedEchoes"
{
  "or": [
    {
      "and": [
        {
          "getBlueSpeed": {
            "usedTiles": 19,
            "openEnd": 0
          }
        },
        {
          "canShineCharge": {
            "usedTiles": 21,
            "openEnd": 0
          }
        },
        {
          "shinespark": {
            "frames": 2,
            "excessFrames": 2
          }
        }
      ]
    },
    {
      "and": [
        {
          "canShineCharge": {
            "usedTiles": 21,
            "openEnd": 0
          }
        },
        {
          "shinespark": {
            "frames": 3,
            "excessFrames": 3
          }
        },
        "canUseIFrames",
        {
          "enemyDamage": {
            "enemy": "Pink Space Pirate (standing)",
            "type": "laser",
            "hits": 1
          }
        }
      ]
    }
  ]
}
{
  "or": [
    "h_speedJump",
    "canWalljump",
    "HiJump",
    "canTrickySpringBallJump",
    "SpaceJump"
  ]
}

Clears obstacles: A

Dev note: Killing the top pirate naturally ends at 1.

From: 1
Left Door
To: 2
Right Door

Enter with enough run speed to jump (after the transition) across the full room using one Spring Ball Jump. When exiting the first Sandfall, Samus will be rising still. That is the time to Spring Ball jump.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 10
  }
}

Requires:

{
  "notable": "Cross-Room Spring Ball Jump"
}
"canPlayInSand"
"canCrossRoomJumpIntoWater"
"h_speedJump"
"canLateralMidAirMorph"
"canTrickySpringBallJump"
"canTrickyJump"
From: 2
Right Door
To: 1
Left Door

Perform a 1-tap to gain blue speed with a significant amount of momentum. Run through the door, and jump any time after the transition, crossing the room.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 1,
    "openEnd": 1,
    "minExtraRunSpeed": "$4.4"
  }
}

Requires:

{
  "notable": "Cross-Room Blue Speed Jump (Right to Left)"
}
"h_blueJump"
"canPlayInSand"
"canCrossRoomJumpIntoWater"

Dev note: This assumes an extra run speed of at least $4.4, though some lower speeds can also work ($3.B through $3.F). The window between $4.0 and $4.3 must be avoided because it would give too much jump height.

From: 2
Right Door
To: 1
Left Door

Enter with enough run speed to jump (after the transition) across the full room using one Spring Ball Jump. When exiting the first Sandfall, Samus will be rising still. That is the time to Spring Ball jump. Alternatively, an immediate pause can be used to Spring Ball jump during the first narrow gap between Sandfalls. Sometimes Samus will land above the sand on the far left end of the room, where it will be necessary to unmorph and jump out.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "yes",
    "minTiles": 10
  }
}

Requires:

{
  "notable": "Cross-Room Spring Ball Jump"
}
"canPlayInSand"
"canCrossRoomJumpIntoWater"
"h_speedJump"
"canLateralMidAirMorph"
"canTrickySpringBallJump"
"canTrickyJump"
From: 1
Left Door
To: 1
Left Door

Gain blue speed running into the room, then jump to break the bomb block on the far side of the room.

Entrance condition:

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

Requires:

"h_blueJump"
"Gravity"
"canTrickyJump"

Clears obstacles: A

From: 1
Left Door
To: 1
Left Door

Entrance condition:

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

Requires:

"h_blueJump"
"canTrickyJump"
"HiJump"

Clears obstacles: A

From: 1
Left Door
To: 1
Left Door

Gain blue speed running into the room, then jump to break the bomb block on the far side of the room.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 2,
    "openEnd": 1,
    "maxExtraRunSpeed": "$1.3"
  }
}

Requires:

"h_blueJump"
"canTrickyJump"

Clears obstacles: A

Dev note: With extra run speeds above $1.3, Samus' jump height is shorter, in which case this method would be ineffective compared to a temporary blue chain.

From: 1
Left Door
To: 1
Left Door

Use blue speed to break the bomb block by entering from a non-water room with a spin jump. It generally helps to enter as low as possible and with as much horizontal speed as possible, and with HiJump turned off. Even if executed correctly, the trick can fail with 50% probability due to collision oscillation.

Shinesparking is typically an easier alternative to this strat; but using blue speed can be useful to save some energy or if carrying a flash suit.

Entrance condition:

{
  "comeInWithSidePlatform": {
    "platforms": [
      {
        "minHeight": 1,
        "maxHeight": 1,
        "minTiles": 17,
        "speedBooster": "yes",
        "obstructions": [
          [
            1,
            0
          ]
        ],
        "requires": [
          {
            "getBlueSpeed": {
              "usedTiles": 15,
              "openEnd": 1
            }
          },
          "canMomentumConservingMorph"
        ],
        "note": [
          "Applies to Warehouse Entrance."
        ]
      },
      {
        "minHeight": 1,
        "maxHeight": 1,
        "minTiles": 27.4375,
        "speedBooster": "yes",
        "obstructions": [
          [
            1,
            0
          ]
        ],
        "requires": [
          {
            "getBlueSpeed": {
              "usedTiles": 24,
              "openEnd": 1
            }
          }
        ],
        "note": [
          "Applies to Dust Torizo Room and Halfie Climb Room."
        ]
      },
      {
        "minHeight": 2,
        "maxHeight": 2,
        "minTiles": 45,
        "speedBooster": "yes",
        "obstructions": [
          [
            2,
            0
          ]
        ],
        "requires": [
          "h_getBlueSpeedMaxRunway",
          {
            "or": [
              "canInsaneJump",
              "canMomentumConservingMorph"
            ]
          }
        ],
        "note": [
          "Applies to Waterway Energy Tank Room."
        ],
        "detailNote": [
          "This is easier with a momentum-conserving morph, preferably with a pause to unequip Gravity."
        ]
      },
      {
        "minHeight": 2,
        "maxHeight": 2,
        "minTiles": 45,
        "speedBooster": "yes",
        "obstructions": [
          [
            3,
            0
          ]
        ],
        "requires": [
          "h_getBlueSpeedMaxRunway",
          "canMomentumConservingMorph"
        ],
        "note": [
          "Applies to Statues Hallway."
        ]
      },
      {
        "minHeight": 3,
        "maxHeight": 3,
        "minTiles": 37.4375,
        "speedBooster": "yes",
        "obstructions": [
          [
            3,
            0
          ]
        ],
        "requires": [
          "h_getBlueSpeedMaxRunway",
          "canMomentumConservingMorph"
        ],
        "note": [
          "Applies to Flyway."
        ]
      },
      {
        "minHeight": 3,
        "maxHeight": 3,
        "minTiles": 39.4375,
        "speedBooster": "yes",
        "obstructions": [
          [
            3,
            2
          ]
        ],
        "requires": [
          "h_getBlueSpeedMaxRunway",
          {
            "or": [
              "canMomentumConservingMorph",
              "canInsaneJump"
            ]
          }
        ],
        "note": [
          "Applies to Metal Pirates Room."
        ]
      }
    ]
  }
}

Requires:

"h_blueJump"
"canCrossRoomJumpIntoWater"
"canTrickyJump"

Clears obstacles: A

Dev note: The momentum-conserving morph variants are included for completeness, though generally if Morph is available it would be easier to speedball and do a temporary blue chain.

From: 1
Left Door
To: 3
Top Door

Use a 2-tap shortcharge and jump into the room with a last-frame jump, breaking the bomb block with blue speed, and making it all the way through the top door. Use angle to break spin, and do a momentum conserving turnaround either on the same frame or one frame later; this first turnaround should be done early enough that the turnaround is complete by the time Samus clears the two-tile passage in the middle of the room. Do a second momentum conserving turnaround somewhat late, and by switching from holding left to holding right one frame later (a perfect 'boomerang'). Shoot open the door, and use a third momentum conserving turnaround on it as it opens.

Lower run speeds are generally better, as long as the extra run speed is at least $3.4. this gives up to a 7-frame window for the first turnaround, and typically a 4-frame window for the second turnaround if the first turnaround is done early enough. A perfect boomerang is always required for the second turnaround, regardless of where in the window it is done. It is recommended to buffer the spin break, by holding angle (up or down), jump, and forward through the transition, then switching from forward to backward, with at most 1 frame of neutral in between, while still holding jump and angle.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 1,
    "minExtraRunSpeed": "$3.4",
    "maxExtraRunSpeed": "$3.F"
  }
}

Requires:

{
  "notable": "Cross Room Jump Boomerang To Top"
}
"h_blueJump"
"canInsaneJump"
"canCrossRoomJumpIntoWater"
"canMomentumConservingTurnaround"
{
  "noFlashSuit": {}
}

Exit condition:

{
  "leaveNormally": {}
}

Unlocks doors:

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

Use a 2-tap shortcharge and jump into the room with a last-frame jump, breaking the bomb block with blue speed, and making it all the way through the top door. Use angle to break spin, and do a momentum conserving turnaround either on the same frame or one frame later; this first turnaround should be done early enough that the turnaround is complete by the time Samus clears the two-tile passage in the middle of the room. Do a second momentum conserving turnaround somewhat late, and by switching from holding left to holding right one frame later (a perfect 'boomerang').

Lower run speeds are generally better, as long as the extra run speed is at least $3.2. this gives up to a 7-frame window for the first turnaround, and typically a 4-frame window for the second turnaround if the first turnaround is done early enough. A perfect boomerang is always required for the second turnaround, regardless of where in the window it is done. It is recommended to buffer the spin break, by holding angle (up or down), jump, and forward through the transition, then switching from forward to backward, with at most 1 frame of neutral in between, while still holding jump and angle.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 1,
    "minExtraRunSpeed": "$3.2",
    "maxExtraRunSpeed": "$3.F"
  }
}

Requires:

{
  "notable": "Cross Room Jump Boomerang To Top"
}
"h_blueJump"
"canInsaneJump"
"canCrossRoomJumpIntoWater"
"canMomentumConservingTurnaround"
"h_trickyToCarryFlashSuit"
From: 1
Left Door
To: 9
Center Platforms

Use blue speed to break the bomb block by entering from a non-water room with a spin jump, and make it up to the center of the room. It helps to enter as low as possible and with as much horizontal speed as possible and with HiJump turned off.

Enter with extra run speed between $3.2 and $3.F, with the lower speeds in this range being better.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 1,
    "minExtraRunSpeed": "$3.2",
    "maxExtraRunSpeed": "$3.F"
  }
}

Requires:

"h_blueJump"
"canInsaneJump"
"canCrossRoomJumpIntoWater"
"canMomentumConservingTurnaround"

Dev note: This does not have collision oscillation.

From: 2
Right Door
To: 2
Right Door

Gain blue speed running into the room, then jump to break the bomb block on the far side of the room.

Entrance condition:

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

Requires:

"h_blueJump"
"Gravity"
"canTrickyJump"

Clears obstacles: A

From: 2
Right Door
To: 2
Right Door

Entrance condition:

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

Requires:

"h_blueJump"
"canTrickyJump"
"HiJump"

Clears obstacles: A

From: 2
Right Door
To: 2
Right Door

Gain blue speed running into the room, then jump to break the bomb block on the far side of the room.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 2,
    "openEnd": 1,
    "maxExtraRunSpeed": "$1.3"
  }
}

Requires:

"h_blueJump"
"canTrickyJump"

Clears obstacles: A

Dev note: With extra run speeds above $1.3, Samus' jump height is shorter, in which case this method would be ineffective compared to a temporary blue chain.

From: 2
Right Door
To: 3
Top Door

Use a 2-tap shortcharge and jump into the room with a last-frame jump, breaking the bomb block with blue speed, and making it all the way through the top door. Use angle to break spin, and do a momentum conserving turnaround either on the same frame or one frame later; this first turnaround should be done early enough that the turnaround is complete by the time Samus clears the two-tile passage in the middle of the room. The second momentum conserving turnaround must be done somewhat late, and by switching from holding forward to holding backward one frame later (a perfect 'boomerang'). Shoot open the door, and use a third momentum conserving turnaround on it as it opens.

Lower run speeds are generally better, as long as the extra run speed is at least $3.4. this gives up to a 7-frame window for the first turnaround, and typically a 4-frame window for the second turnaround if the first turnaround is done early enough. A perfect boomerang is always required for the second turnaround, regardless of where in the window it is done. It is recommended to buffer the spin break, by holding angle (up or down), jump, and forward through the transition, then switching from forward to backward, with at most 1 frame of neutral in between, while still holding jump and angle.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 1,
    "minExtraRunSpeed": "$3.4",
    "maxExtraRunSpeed": "$3.F"
  }
}

Requires:

{
  "notable": "Cross Room Jump Boomerang To Top"
}
"h_blueJump"
"canInsaneJump"
"canCrossRoomJumpIntoWater"
"canMomentumConservingTurnaround"
{
  "noFlashSuit": {}
}

Exit condition:

{
  "leaveNormally": {}
}

Unlocks doors:

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

Use a 2-tap shortcharge and jump into the room with a last-frame jump, breaking the bomb block with blue speed, and making it all the way through the top door. Use angle to break spin, and do a momentum conserving turnaround either on the same frame or one frame later; this first turnaround should be done early enough that the turnaround is complete by the time Samus clears the two-tile passage in the middle of the room. Do a second momentum conserving turnaround somewhat late, and by switching from holding forward to holding backward one frame later (a perfect 'boomerang').

Lower run speeds are generally better, as long as the extra run speed is at least $3.2. this gives up to a 7-frame window for the first turnaround, and typically a 4-frame window for the second turnaround if the first turnaround is done early enough. A perfect boomerang is always required for the second turnaround, regardless of where in the window it is done. It is recommended to buffer the spin break, by holding angle (up or down), jump, and forward through the transition, then switching from forward to backward, with at most 1 frame of neutral in between, while still holding jump and angle.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 1,
    "minExtraRunSpeed": "$3.2",
    "maxExtraRunSpeed": "$3.F"
  }
}

Requires:

{
  "notable": "Cross Room Jump Boomerang To Top"
}
"h_blueJump"
"canInsaneJump"
"canCrossRoomJumpIntoWater"
"canMomentumConservingTurnaround"
"h_trickyToCarryFlashSuit"
From: 2
Right Door
To: 9
Center Platforms

Use blue speed to break the bomb block by entering from a non-water room with a spin jump, and make it up to the center of the room. It helps to enter as low as possible and with as much horizontal speed as possible and with HiJump turned off.

Enter with extra run speed between $3.2 and $3.F, with the lower speeds in this range being better.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 0,
    "openEnd": 1,
    "minExtraRunSpeed": "$3.2",
    "maxExtraRunSpeed": "$3.F"
  }
}

Requires:

"h_blueJump"
"canInsaneJump"
"canCrossRoomJumpIntoWater"
"canMomentumConservingTurnaround"

Dev note: This does not have collision oscillation.

From: 1
Left Door
To: 1
Left Door

It is best to start 4 or 5 pixels from the end of the runway; equivalently, start at the end of the runway and use arm pumps to advance 4 or 5 pixels while running.

Requires:

"h_speedJump"
{
  "or": [
    "canMetroidAvoid",
    "Ice",
    {
      "or": [
        "f_KilledMetroidRoom1",
        {
          "obstaclesCleared": [
            "f_KilledMetroidRoom1"
          ]
        }
      ]
    }
  ]
}
{
  "or": [
    "canMomentumConservingMorph",
    {
      "and": [
        "canMomentumConservingTurnaround",
        "canInsaneJump"
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 2,
    "runway": {
      "length": 31,
      "openEnd": 1
    },
    "obstruction": [
      3,
      0
    ]
  }
}

Dev note: Max extra run speed $5.7.

From: 1
Left Door
To: 2
Right Door

Use the full runway to gain blue speed and enough speed to reach the far platform.

Requires:

{
  "getBlueSpeed": {
    "usedTiles": 31,
    "openEnd": 1
  }
}
"h_blueJump"
"canCarefulJump"
{
  "or": [
    {
      "or": [
        "f_KilledMetroidRoom1",
        {
          "obstaclesCleared": [
            "f_KilledMetroidRoom1"
          ]
        }
      ]
    },
    "Ice",
    "ScrewAttack",
    "canPseudoScrew",
    "canMetroidAvoid",
    {
      "metroidFrames": 130
    }
  ]
}
From: 1
Left Door
To: 2
Right Door

Requires:

{
  "or": [
    {
      "or": [
        "f_KilledMetroidRoom1",
        {
          "obstaclesCleared": [
            "f_KilledMetroidRoom1"
          ]
        }
      ]
    },
    "canMetroidAvoid"
  ]
}
"h_storedSpark"
"canDash"
{
  "shinespark": {
    "frames": 4,
    "excessFrames": 2
  }
}
From: 2
Right Door
To: 1
Left Door

Requires:

"h_speedJump"
"canCarefulJump"
{
  "or": [
    "canPreciseWalljump",
    "canTrickyJump"
  ]
}
{
  "or": [
    {
      "or": [
        "f_KilledMetroidRoom1",
        {
          "obstaclesCleared": [
            "f_KilledMetroidRoom1"
          ]
        }
      ]
    },
    "Ice",
    "canMetroidAvoid",
    {
      "metroidFrames": 200
    }
  ]
}
{
  "or": [
    "canTrickyJump",
    {
      "acidFrames": 27
    },
    {
      "and": [
        {
          "acidFrames": 16
        },
        "canPreciseWalljump"
      ]
    },
    {
      "and": [
        {
          "acidFrames": 16
        },
        "Gravity"
      ]
    }
  ]
}
From: 2
Right Door
To: 1
Left Door

While on the first platform, perform a long jump to the left then diagonally spark low into the side of the next platform. This will put Samus into a position where the Metroid will swoop underneath her.

Requires:

"canMetroidAvoid"
"h_storedSpark"
"canDash"
{
  "shinespark": {
    "frames": 8,
    "excessFrames": 1
  }
}
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        "canTrickyJump",
        "canLateralMidAirMorph"
      ]
    },
    {
      "and": [
        "canTrickyJump",
        "canPreciseWalljump",
        {
          "acidFrames": 16
        }
      ]
    },
    {
      "and": [
        "Gravity",
        {
          "acidFrames": 16
        }
      ]
    },
    {
      "acidFrames": 27
    }
  ]
}

Dev note: This is only useful with a flash suit without Speed Booster.

From: 2
Right Door
To: 1
Left Door

Requires:

{
  "or": [
    "f_KilledMetroidRoom1",
    {
      "obstaclesCleared": [
        "f_KilledMetroidRoom1"
      ]
    }
  ]
}
"h_storedSpark"
"canDash"
{
  "shinespark": {
    "frames": 4,
    "excessFrames": 2
  }
}
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        "canTrickyJump",
        "canLateralMidAirMorph"
      ]
    },
    {
      "and": [
        "canTrickyJump",
        "canPreciseWalljump",
        {
          "acidFrames": 16
        }
      ]
    },
    {
      "and": [
        "Gravity",
        {
          "acidFrames": 16
        }
      ]
    },
    {
      "acidFrames": 27
    }
  ]
}
From: 2
Right Door
To: 2
Right Door

Requires:

"h_speedJump"
{
  "or": [
    "canMetroidAvoid",
    {
      "or": [
        "f_KilledMetroidRoom1",
        {
          "obstaclesCleared": [
            "f_KilledMetroidRoom1"
          ]
        }
      ]
    }
  ]
}
{
  "or": [
    "canMomentumConservingMorph",
    {
      "and": [
        "canMomentumConservingTurnaround",
        "canInsaneJump"
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 2,
    "runway": {
      "length": 23,
      "openEnd": 1
    },
    "obstruction": [
      3,
      0
    ]
  }
}

Dev note: Max extra run speed $4.7. Using almost the full runway (between 3 and 6 pixels from the edge), the momentum conserving turnaround has a 2-frame window for the jump, and a 1-frame or 3-frame window for the turnaround, depending on the jump (with a last-frame jump giving the larger window).

From: 2
Bottom Right Door
To: 2
Bottom Right Door

Requires:

"h_speedJump"
{
  "or": [
    "canMetroidAvoid",
    {
      "or": [
        "f_KilledMetroidRoom2",
        {
          "obstaclesCleared": [
            "f_KilledMetroidRoom2"
          ]
        }
      ]
    }
  ]
}
"canInsaneJump"
"canMomentumConservingMorph"

Exit condition:

{
  "leaveWithSidePlatform": {
    "height": 3,
    "runway": {
      "length": 11,
      "openEnd": 0
    },
    "obstruction": [
      3,
      0
    ]
  }
}

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

From: 2
Left Door
To: 1
Top Right Door

Jump far enough to land on the first floor pillar.

Entrance condition:

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

Requires:

"h_blueJump"
"canPrepareForNextRoom"
{
  "or": [
    "SpaceJump",
    "canCarefulJump"
  ]
}
"h_complexToCarryFlashSuit"

Dev note: This is not the level of precision that would call for canBlueSpaceJump.