The Moat

Room ID: 7

Wiki
Difficulty filter

From: 1
Left Door
To: 1
Left Door

Exit condition:

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

Requires:

"h_canCrystalFlash"
From: 1
Left Door
To: 1
Left Door

Hold angle-up, jump, bonk the ceiling, and use Grapple just before landing. Moonwalk into the transition on the same frame that the Grapple Beam reaches the Grapple block. Continue holding Grapple through the door transition to initiate a teleport in the next room.

Requires:

{
  "notable": "Leave With Grapple Teleport"
}
"canMoonwalk"
"canInsaneJump"

Exit condition:

{
  "leaveWithGrappleTeleport": {
    "blockPositions": [
      [
        7,
        2
      ]
    ]
  }
}
Base (Basic)
The Moat
From: 1
Left Door
To: 2
Right Door

Requires:

{
  "or": [
    "Grapple",
    "SpaceJump"
  ]
}
From: 1
Left Door
To: 2
Right Door

Entrance condition:

{
  "comeInWithSpark": {
    "position": "top"
  }
}

Requires:

{
  "shinespark": {
    "frames": 42,
    "excessFrames": 9
  }
}
Speedy Jump (Very Hard)
The Moat
From: 1
Left Door
To: 2
Right Door

Entrance condition:

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

Requires:

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

Entrance condition:

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

Requires:

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

Entrance condition:

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

Requires:

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

Entrance condition:

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

Requires:

"canInsaneJump"
"canLateralMidAirMorph"
"canMomentumConservingMorph"
From: 1
Left Door
To: 2
Right Door

Run, jump, lateral midair morph on the way down, then bounce off the pedestal to get to the other side.

Entrance condition:

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

Requires:

{
  "notable": "SpringBall Bounce"
}
"canSpringBallBounce"
"canDisableEquipment"
{
  "or": [
    "canTrickyJump",
    "h_canUseMorphBombs"
  ]
}
From: 1
Left Door
To: 2
Right Door

Open the door and step as close to the transition as possible. Run, jump, lateral midair morph on the way down, then bounce off the pedestal to get to the other side.

Requires:

{
  "notable": "SpringBall Bounce"
}
"canSpringBallBounce"
"canDisableEquipment"
{
  "doorUnlockedAtNode": 1
}
{
  "or": [
    "canTrickyJump",
    "h_canUseMorphBombs"
  ]
}
From: 1
Left Door
To: 2
Right Door

Aligning against the closed door shell on the other side of the transition. Run towards the water and jump on the last possible frame. Perform the CWJ off of the item pedestal to cross to the other side.

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": false,
    "minTiles": 1.4
  }
}

Requires:

"canCWJ"
"canDisableEquipment"
From: 1
Left Door
To: 2
Right Door

Stand on the farthest pixel into the door possible using moonwalk, X-Ray, or morphball turn around. Run towards the water and jump on the last possible frame. Perform the CWJ off of the item pedestal to cross to the other side.

Requires:

"canCWJ"
"canDisableEquipment"
{
  "doorUnlockedAtNode": 1
}
{
  "or": [
    "canMoonwalk",
    "Morph",
    "canXRayTurnaround"
  ]
}
From: 1
Left Door
To: 2
Right Door

Entrance condition:

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

Requires:

"Gravity"
"h_canArtificialMorphIBJ"
From: 1
Left Door
To: 2
Right Door

Entrance condition:

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

Requires:

{
  "or": [
    "h_canArtificialMorphCeilingBombJump",
    "h_canArtificialMorphHBJ"
  ]
}
From: 1
Left Door
To: 2
Right Door

Run and jump, fire a shot mid-air, and activate the shinespark wind-up. Wait until the shot is at a specific position before sparking. Sparking too late will cause the shot to despawn before reaching the door. Sparking too early will cause Samus to bonk the door as it will not yet be open. A beam shot, Missile, or Super can be used.

Entrance condition:

{
  "comeInShinecharged": {}
}

Requires:

{
  "shineChargeFrames": 40
}
"canShinechargeMovementTricky"
"canHeroShot"
"canMidairShinespark"
{
  "shinespark": {
    "frames": 38
  }
}

Exit condition:

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

Unlocks doors:

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

Entrance condition:

{
  "comeInShinecharging": {
    "length": 2,
    "steepDownTiles": 1,
    "openEnd": 0
  }
}

Requires:

"canLongChainTemporaryBlue"
{
  "or": [
    {
      "and": [
        "Gravity",
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    {
      "and": [
        "canGravityJump",
        {
          "or": [
            "HiJump",
            "canSpringBallJumpMidAir"
          ]
        }
      ]
    },
    "canBlueSpaceJump"
  ]
}

Exit condition:

{
  "leaveWithTemporaryBlue": {}
}

Unlocks doors:

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

Enter with enough speed to jump over all the water, morphing mid-air and then unmorphing into temporary blue.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 2,
    "steepDownTiles": 1,
    "openEnd": 0,
    "minExtraRunSpeed": "$4.0"
  }
}

Requires:

"canTrickyJump"
"canLateralMidAirMorph"
"canChainTemporaryBlue"

Exit condition:

{
  "leaveWithTemporaryBlue": {}
}

Unlocks doors:

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

Enter with enough speed to jump over all the water, morphing mid-air and then unmorphing into temporary blue. Morph just before hitting the ceiling, in order to extend the jump horizontally.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 2,
    "steepDownTiles": 1,
    "openEnd": 0,
    "minExtraRunSpeed": "$3.2"
  }
}

Requires:

"canInsaneJump"
"canMomentumConservingMorph"
"canChainTemporaryBlue"

Exit condition:

{
  "leaveWithTemporaryBlue": {}
}

Unlocks doors:

{"types":["ammo"],"requires":[]}
Base (Medium)
The Moat
From: 1
Left Door
To: 3
Item

This jump is much easier without HiJump or Speedbooster equipped.

Requires:

"canDisableEquipment"
From: 1
Left Door
To: 3
Item

Requires:

{
  "or": [
    "Grapple",
    "SpaceJump",
    "Gravity"
  ]
}
From: 1
Left Door
To: 3
Item

Entrance condition:

{
  "comeInRunning": {
    "speedBooster": "any",
    "minTiles": 3
  }
}
From: 1
Left Door
To: 3
Item

Entrance condition:

{
  "comeInShinecharged": {}
}

Requires:

{
  "shineChargeFrames": 85
}
"canShinechargeMovementComplex"
From: 1
Left Door
To: 3
Item

Run and jump, fire a shot mid-air, and activate the shinespark wind-up. Wait until the shot is at a specific position before sparking. Sparking too late will cause the shot to despawn before reaching the door. Sparking too early will cause Samus to bonk the door as it will not yet be open. A beam shot, Missile, or Super can be used.

Entrance condition:

{
  "comeInShinecharged": {}
}

Requires:

{
  "shineChargeFrames": 40
}
"canShinechargeMovementTricky"
"canHeroShot"
"canHorizontalShinespark"
{
  "shinespark": {
    "frames": 38
  }
}

Clears obstacles: B, C

Base (Basic)
The Moat
From: 2
Right Door
To: 1
Left Door

This avoids collecting the item.

Requires:

{
  "or": [
    "Grapple",
    "SpaceJump"
  ]
}
From: 2
Right Door
To: 1
Left Door

Requires:

"h_canBombThings"
From: 2
Right Door
To: 1
Left Door

Requires:

"Gravity"
{
  "or": [
    "canWalljump",
    "canGravityJump",
    {
      "and": [
        "canSpringBallJumpMidAir",
        "HiJump"
      ]
    }
  ]
}

Enter with enough speed to jump onto or over the item pedestal, morphing mid-air and then unmorphing into temporary blue.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 4,
    "openEnd": 0,
    "minExtraRunSpeed": "$1.2"
  }
}

Requires:

"canLongChainTemporaryBlue"

Exit condition:

{
  "leaveWithTemporaryBlue": {}
}

Unlocks doors:

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

Entrance condition:

{
  "comeInWithGrappleTeleport": {
    "blockPositions": [
      [
        3,
        12
      ],
      [
        3,
        13
      ]
    ]
  }
}

Bypasses door shell: true

From: 2
Right Door
To: 1
Left Door

Entrance condition:

{
  "comeInWithGrappleTeleport": {
    "blockPositions": [
      [
        3,
        12
      ]
    ]
  }
}

Exit condition:

{
  "leaveWithGrappleTeleport": {
    "blockPositions": [
      [
        3,
        12
      ]
    ]
  }
}

Bypasses door shell: true

From: 2
Right Door
To: 1
Left Door

Entrance condition:

{
  "comeInWithGrappleTeleport": {
    "blockPositions": [
      [
        3,
        13
      ]
    ]
  }
}

Exit condition:

{
  "leaveWithGrappleTeleport": {
    "blockPositions": [
      [
        3,
        13
      ]
    ]
  }
}

Bypasses door shell: true

From: 2
Right Door
To: 1
Left Door

Exit the previous room with Samus in a standing pose (while grappled). After teleporting, press right to release Grapple while staying standing (not being forced into a crouch). Then X-ray climb to get up to the door transition, without needing to open the door. Samus will not be visible during the climb.

Entrance condition:

{
  "comeInWithGrappleTeleport": {
    "blockPositions": [
      [
        2,
        18
      ],
      [
        2,
        19
      ],
      [
        2,
        28
      ],
      [
        2,
        29
      ]
    ]
  }
}

Requires:

"canXRayClimb"

Bypasses door shell: true

From: 2
Right Door
To: 1
Left Door

Requires:

{
  "useFlashSuit": {}
}
{
  "shinespark": {
    "frames": 3,
    "excessFrames": 1
  }
}
From: 2
Right Door
To: 2
Right Door

Exit condition:

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

Requires:

"h_canCrystalFlash"
Base (Basic)
The Moat
From: 2
Right Door
To: 3
Item

Requires:

{
  "or": [
    "Grapple",
    "SpaceJump"
  ]
}
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:

"canDisableEquipment"
"canCarefulJump"
{
  "or": [
    {
      "doorUnlockedAtNode": 2
    },
    "canTrickyJump",
    "canLateralMidAirMorph",
    "SpeedBooster"
  ]
}
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.

Entrance condition:

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

Requires:

"canDisableEquipment"
"canCarefulJump"
From: 2
Right Door
To: 3
Item

Entrance condition:

{
  "comeInWithSpark": {
    "position": "bottom"
  }
}

Requires:

"canHorizontalShinespark"
{
  "shinespark": {
    "frames": 23,
    "excessFrames": 1
  }
}

Clears obstacles: A

From: 2
Right Door
To: 3
Item

After gaining a shinecharge, run back to the door to make space for a running jump to the left.

Entrance condition:

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

Requires:

"canShinechargeMovementComplex"
{
  "shineChargeFrames": 130
}
From: 2
Right Door
To: 3
Item

Entrance condition:

{
  "comeInShinecharged": {}
}

Requires:

{
  "shineChargeFrames": 85
}
"canShinechargeMovementComplex"
From: 2
Right Door
To: 3
Item

Run, fire a shot mid-air, jump, and activate a mid-air shinespark to the left. Sparking too late will cause the shot to despawn before reaching the door. Sparking too early will cause Samus to bonk the door as it will not yet be open. A beam shot, Missile, or Super can be used.

Entrance condition:

{
  "comeInShinecharged": {}
}

Requires:

{
  "shineChargeFrames": 25
}
"canShinechargeMovementTricky"
"canHeroShot"
"canHorizontalShinespark"
{
  "shinespark": {
    "frames": 17
  }
}

Clears obstacles: A, C

Base (Basic)
The Moat
From: 3
Item
To: 1
Left Door

Requires:

{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
From: 3
Item
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "obstaclesNotCleared": [
    "B",
    "C"
  ]
}
"h_canShineChargeMaxRunway"
{
  "shinespark": {
    "frames": 19,
    "excessFrames": 19
  }
}

Resets obstacles: A

From: 3
Item
To: 1
Left Door

Requires:

{
  "obstaclesCleared": [
    "A",
    "C"
  ]
}
{
  "obstaclesNotCleared": [
    "B"
  ]
}
"h_canShineChargeMaxRunway"
{
  "shinespark": {
    "frames": 21,
    "excessFrames": 0
  }
}

Exit condition:

{
  "leaveWithSpark": {
    "position": "bottom"
  }
}

Unlocks doors:

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

From the pedestal, fire a shot to the left to open the door. If needed, jump slightly to the left to follow the shot, then activate the shinespark wind-up. Wait until the shot hits the door before sparking.

Requires:

{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
"canShinechargeMovementComplex"
"canHeroShot"
{
  "shineChargeFrames": 15
}
{
  "shinespark": {
    "frames": 21
  }
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

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

Requires:

"Grapple"
{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
From: 3
Item
To: 2
Right Door

Requires:

"SpaceJump"
{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
From: 3
Item
To: 2
Right Door

Requires:

"Gravity"
{
  "or": [
    "canTrickySpringBallJump",
    {
      "and": [
        "HiJump",
        "canWalljump"
      ]
    },
    {
      "and": [
        "HiJump",
        "canSpringBallJumpMidAir"
      ]
    },
    {
      "and": [
        "HiJump",
        "SpeedBooster"
      ]
    }
  ]
}
{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
IBJ (Medium)
The Moat
From: 3
Item
To: 2
Right Door

Requires:

"Gravity"
"canIBJ"
{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
From: 3
Item
To: 2
Right Door

Requires:

"canGravityJump"
{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
From: 3
Item
To: 2
Right Door

Requires:

"canHBJ"
{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
From: 3
Item
To: 2
Right Door

Requires:

"canSuitlessMaridia"
"h_canDoubleSpringBallJumpWithHiJump"
{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
From: 3
Item
To: 2
Right Door

Requires:

"canCeilingBombJump"
{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
From: 3
Item
To: 2
Right Door

Requires:

{
  "obstaclesCleared": [
    "B"
  ]
}
{
  "obstaclesNotCleared": [
    "A",
    "C"
  ]
}
"h_canShineChargeMaxRunway"
{
  "shinespark": {
    "frames": 23,
    "excessFrames": 7
  }
}

Resets obstacles: B

From: 3
Item
To: 2
Right Door

Requires:

{
  "obstaclesCleared": [
    "B",
    "C"
  ]
}
{
  "obstaclesNotCleared": [
    "A"
  ]
}
"h_canShineChargeMaxRunway"
{
  "shinespark": {
    "frames": 23,
    "excessFrames": 7
  }
}

Exit condition:

{
  "leaveWithSpark": {
    "position": "bottom"
  }
}

Unlocks doors:

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

Jump from the pedestal to the right, and shinespark diagonally to make it past the water.

Requires:

{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
"canShinechargeMovementComplex"
{
  "shineChargeFrames": 45
}
{
  "shinespark": {
    "frames": 7
  }
}
From: 3
Item
To: 2
Right Door

From the pedestal, jump to the right to bring the door on-camera. Fire a shot mid-air, and activate the shinespark wind-up. Wait until the shot hits the door before sparking.

Requires:

{
  "obstaclesNotCleared": [
    "A",
    "B",
    "C"
  ]
}
"canShinechargeMovementComplex"
"canHeroShot"
{
  "shineChargeFrames": 45
}
{
  "shinespark": {
    "frames": 22
  }
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

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

Requires:

{
  "useFlashSuit": {}
}
{
  "shinespark": {
    "frames": 4,
    "excessFrames": 2
  }
}
From: 3
Item
To: 2
Right Door

Requires:

"canHeroShot"
"canHorizontalShinespark"
{
  "useFlashSuit": {}
}
{
  "shinespark": {
    "frames": 16,
    "excessFrames": 0
  }
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

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

{
  "$schema": "../../../schema/m3-room.schema.json",
  "id": 7,
  "name": "The Moat",
  "area": "Crateria",
  "subarea": "East",
  "roomAddress": "0x795FF",
  "roomEnvironments": [
    {
      "heated": false
    }
  ],
  "nodes": [
    {
      "id": 1,
      "name": "Left Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x0018ade",
      "doorOrientation": "left",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ]
    },
    {
      "id": 2,
      "name": "Right Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x0018aea",
      "doorOrientation": "right",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ]
    },
    {
      "id": 3,
      "name": "Item",
      "nodeType": "item",
      "nodeSubType": "visible",
      "nodeItem": "Missile",
      "nodeAddress": "0x78248",
      "locks": [
        {
          "name": "Dummy Item Lock",
          "lockType": "gameFlag",
          "unlockStrats": [
            {
              "name": "Base (Collect Item)",
              "notable": false,
              "requires": []
            }
          ]
        }
      ]
    }
  ],
  "enemies": [],
  "obstacles": [
    {
      "id": "A",
      "obstacleType": "abstract",
      "name": "Shinesparking Left Through Item"
    },
    {
      "id": "B",
      "obstacleType": "abstract",
      "name": "Shinesparking Right Through Item"
    },
    {
      "id": "C",
      "obstacleType": "abstract",
      "name": "Hero Shot to Open Door"
    }
  ],
  "links": [
    {
      "from": 1,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        }
      ]
    },
    {
      "from": 2,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        }
      ]
    },
    {
      "from": 3,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        }
      ]
    }
  ],
  "strats": [
    {
      "id": 1,
      "link": [
        1,
        1
      ],
      "name": "Leave with Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 3,
          "openEnd": 1,
          "steepUpTiles": 1
        }
      }
    },
    {
      "id": 2,
      "link": [
        1,
        1
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_canCrystalFlash"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 3,
      "link": [
        1,
        1
      ],
      "name": "Leave With Grapple Teleport",
      "requires": [
        {
          "notable": "Leave With Grapple Teleport"
        },
        "canMoonwalk",
        "canInsaneJump"
      ],
      "exitCondition": {
        "leaveWithGrappleTeleport": {
          "blockPositions": [
            [
              7,
              2
            ]
          ]
        }
      },
      "note": [
        "Hold angle-up, jump, bonk the ceiling, and use Grapple just before landing.",
        "Moonwalk into the transition on the same frame that the Grapple Beam reaches the Grapple block.",
        "Continue holding Grapple through the door transition to initiate a teleport in the next room."
      ]
    },
    {
      "id": 4,
      "link": [
        1,
        2
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "Grapple",
            "SpaceJump"
          ]
        }
      ],
      "devNote": "This avoids collecting the item."
    },
    {
      "id": 5,
      "link": [
        1,
        2
      ],
      "name": "Shinespark Above Item",
      "entranceCondition": {
        "comeInWithSpark": {
          "position": "top"
        }
      },
      "requires": [
        {
          "shinespark": {
            "frames": 42,
            "excessFrames": 9
          }
        }
      ],
      "devNote": "Sparking in top position means the item will be avoided."
    },
    {
      "id": 6,
      "link": [
        1,
        2
      ],
      "name": "Speedy Jump",
      "entranceCondition": {
        "comeInRunning": {
          "minTiles": 26,
          "speedBooster": true
        }
      },
      "requires": [
        "canTrickyJump"
      ]
    },
    {
      "id": 7,
      "link": [
        1,
        2
      ],
      "name": "Insane Speedy Jump",
      "entranceCondition": {
        "comeInRunning": {
          "minTiles": 21,
          "speedBooster": true
        }
      },
      "requires": [
        "canInsaneJump"
      ]
    },
    {
      "id": 8,
      "link": [
        1,
        2
      ],
      "name": "Speedy Airball",
      "entranceCondition": {
        "comeInRunning": {
          "minTiles": 18,
          "speedBooster": true
        }
      },
      "requires": [
        "canTrickyJump",
        "canLateralMidAirMorph"
      ]
    },
    {
      "id": 9,
      "link": [
        1,
        2
      ],
      "name": "Insane Speedy Airball",
      "entranceCondition": {
        "comeInRunning": {
          "minTiles": 11,
          "speedBooster": true
        }
      },
      "requires": [
        "canInsaneJump",
        "canLateralMidAirMorph",
        "canMomentumConservingMorph"
      ]
    },
    {
      "id": 10,
      "link": [
        1,
        2
      ],
      "name": "SpringBall Bounce, Run Through the Door",
      "entranceCondition": {
        "comeInRunning": {
          "speedBooster": "any",
          "minTiles": 1
        }
      },
      "requires": [
        {
          "notable": "SpringBall Bounce"
        },
        "canSpringBallBounce",
        "canDisableEquipment",
        {
          "or": [
            "canTrickyJump",
            "h_canUseMorphBombs"
          ]
        }
      ],
      "collectsItems": [
        3
      ],
      "note": "Run, jump, lateral midair morph on the way down, then bounce off the pedestal to get to the other side."
    },
    {
      "id": 11,
      "link": [
        1,
        2
      ],
      "name": "SpringBall Bounce, Open Doorway",
      "requires": [
        {
          "notable": "SpringBall Bounce"
        },
        "canSpringBallBounce",
        "canDisableEquipment",
        {
          "doorUnlockedAtNode": 1
        },
        {
          "or": [
            "canTrickyJump",
            "h_canUseMorphBombs"
          ]
        }
      ],
      "collectsItems": [
        3
      ],
      "note": "Open the door and step as close to the transition as possible. Run, jump, lateral midair morph on the way down, then bounce off the pedestal to get to the other side."
    },
    {
      "id": 12,
      "link": [
        1,
        2
      ],
      "name": "Continuous Walljump, Run Through the Door",
      "entranceCondition": {
        "comeInRunning": {
          "speedBooster": false,
          "minTiles": 1.4
        }
      },
      "requires": [
        "canCWJ",
        "canDisableEquipment"
      ],
      "collectsItems": [
        3
      ],
      "note": [
        "Aligning against the closed door shell on the other side of the transition.",
        "Run towards the water and jump on the last possible frame.",
        "Perform the CWJ off of the item pedestal to cross to the other side."
      ]
    },
    {
      "id": 13,
      "link": [
        1,
        2
      ],
      "name": "Continuous Walljump, Open Doorway",
      "requires": [
        "canCWJ",
        "canDisableEquipment",
        {
          "doorUnlockedAtNode": 1
        },
        {
          "or": [
            "canMoonwalk",
            "Morph",
            "canXRayTurnaround"
          ]
        }
      ],
      "collectsItems": [
        3
      ],
      "note": [
        "Stand on the farthest pixel into the door possible using moonwalk, X-Ray, or morphball turn around.",
        "Run towards the water and jump on the last possible frame.",
        "Perform the CWJ off of the item pedestal to cross to the other side."
      ]
    },
    {
      "id": 14,
      "link": [
        1,
        2
      ],
      "name": "G-mode Morph IBJ",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        "Gravity",
        "h_canArtificialMorphIBJ"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 15,
      "link": [
        1,
        2
      ],
      "name": "G-mode Morph HBJ or Ceiling Bomb Jump",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        {
          "or": [
            "h_canArtificialMorphCeilingBombJump",
            "h_canArtificialMorphHBJ"
          ]
        }
      ],
      "flashSuitChecked": true
    },
    {
      "id": 16,
      "link": [
        1,
        2
      ],
      "name": "Hero Shot Spark Above Item",
      "entranceCondition": {
        "comeInShinecharged": {}
      },
      "requires": [
        {
          "shineChargeFrames": 40
        },
        "canShinechargeMovementTricky",
        "canHeroShot",
        "canMidairShinespark",
        {
          "shinespark": {
            "frames": 38
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {
          "position": "top"
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Run and jump, fire a shot mid-air, and activate the shinespark wind-up.",
        "Wait until the shot is at a specific position before sparking.",
        "Sparking too late will cause the shot to despawn before reaching the door.",
        "Sparking too early will cause Samus to bonk the door as it will not yet be open.",
        "A beam shot, Missile, or Super can be used."
      ],
      "devNote": "Sparking in top position means the item will be avoided."
    },
    {
      "id": 17,
      "link": [
        1,
        2
      ],
      "name": "Come in Shinecharging, Leave With Temporary Blue",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 2,
          "steepDownTiles": 1,
          "openEnd": 0
        }
      },
      "requires": [
        "canLongChainTemporaryBlue",
        {
          "or": [
            {
              "and": [
                "Gravity",
                "HiJump",
                "canSpringBallJumpMidAir"
              ]
            },
            {
              "and": [
                "canGravityJump",
                {
                  "or": [
                    "HiJump",
                    "canSpringBallJumpMidAir"
                  ]
                }
              ]
            },
            "canBlueSpaceJump"
          ]
        }
      ],
      "exitCondition": {
        "leaveWithTemporaryBlue": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ],
      "flashSuitChecked": true
    },
    {
      "id": 18,
      "link": [
        1,
        2
      ],
      "name": "Come in Getting Blue Speed, Leave With Temporary Blue (Speedy Jump)",
      "entranceCondition": {
        "comeInGettingBlueSpeed": {
          "length": 2,
          "steepDownTiles": 1,
          "openEnd": 0,
          "minExtraRunSpeed": "$4.0"
        }
      },
      "requires": [
        "canTrickyJump",
        "canLateralMidAirMorph",
        "canChainTemporaryBlue"
      ],
      "exitCondition": {
        "leaveWithTemporaryBlue": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Enter with enough speed to jump over all the water, morphing mid-air and then unmorphing into temporary blue."
      ]
    },
    {
      "id": 19,
      "link": [
        1,
        2
      ],
      "name": "Come in Getting Blue Speed, Leave With Temporary Blue (Insane Speedy Jump)",
      "entranceCondition": {
        "comeInGettingBlueSpeed": {
          "length": 2,
          "steepDownTiles": 1,
          "openEnd": 0,
          "minExtraRunSpeed": "$3.2"
        }
      },
      "requires": [
        "canInsaneJump",
        "canMomentumConservingMorph",
        "canChainTemporaryBlue"
      ],
      "exitCondition": {
        "leaveWithTemporaryBlue": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Enter with enough speed to jump over all the water, morphing mid-air and then unmorphing into temporary blue.",
        "Morph just before hitting the ceiling, in order to extend the jump horizontally."
      ]
    },
    {
      "id": 20,
      "link": [
        1,
        3
      ],
      "name": "Base",
      "requires": [
        "canDisableEquipment"
      ],
      "collectsItems": [
        3
      ],
      "note": "This jump is much easier without HiJump or Speedbooster equipped."
    },
    {
      "id": 21,
      "link": [
        1,
        3
      ],
      "name": "Movement Assist",
      "requires": [
        {
          "or": [
            "Grapple",
            "SpaceJump",
            "Gravity"
          ]
        }
      ],
      "collectsItems": [
        3
      ]
    },
    {
      "id": 22,
      "link": [
        1,
        3
      ],
      "name": "Run Through Door",
      "entranceCondition": {
        "comeInRunning": {
          "speedBooster": "any",
          "minTiles": 3
        }
      },
      "requires": [],
      "collectsItems": [
        3
      ]
    },
    {
      "id": 23,
      "link": [
        1,
        3
      ],
      "name": "Carry Shinecharge to Item",
      "entranceCondition": {
        "comeInShinecharged": {}
      },
      "requires": [
        {
          "shineChargeFrames": 85
        },
        "canShinechargeMovementComplex"
      ],
      "collectsItems": [
        3
      ],
      "endsWithShineCharge": true
    },
    {
      "id": 24,
      "link": [
        1,
        3
      ],
      "name": "Hero Shot Spark Through Item",
      "entranceCondition": {
        "comeInShinecharged": {}
      },
      "requires": [
        {
          "shineChargeFrames": 40
        },
        "canShinechargeMovementTricky",
        "canHeroShot",
        "canHorizontalShinespark",
        {
          "shinespark": {
            "frames": 38
          }
        }
      ],
      "clearsObstacles": [
        "B",
        "C"
      ],
      "collectsItems": [
        3
      ],
      "flashSuitChecked": true,
      "note": [
        "Run and jump, fire a shot mid-air, and activate the shinespark wind-up.",
        "Wait until the shot is at a specific position before sparking.",
        "Sparking too late will cause the shot to despawn before reaching the door.",
        "Sparking too early will cause Samus to bonk the door as it will not yet be open.",
        "A beam shot, Missile, or Super can be used."
      ],
      "devNote": "Sparking in bottom position means the item will be collected along the way."
    },
    {
      "id": 25,
      "link": [
        2,
        1
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "Grapple",
            "SpaceJump"
          ]
        }
      ],
      "note": "This avoids collecting the item.",
      "devNote": "Several other strats would also be possible for avoiding the item."
    },
    {
      "id": 26,
      "link": [
        2,
        1
      ],
      "name": "Pass Below",
      "requires": [
        "h_canBombThings"
      ]
    },
    {
      "id": 27,
      "link": [
        2,
        1
      ],
      "name": "Gravity",
      "requires": [
        "Gravity",
        {
          "or": [
            "canWalljump",
            "canGravityJump",
            {
              "and": [
                "canSpringBallJumpMidAir",
                "HiJump"
              ]
            }
          ]
        }
      ]
    },
    {
      "id": 28,
      "link": [
        2,
        1
      ],
      "name": "Come in Shinecharging, Leave With Temporary Blue (Speedy Jump)",
      "entranceCondition": {
        "comeInGettingBlueSpeed": {
          "length": 4,
          "openEnd": 0,
          "minExtraRunSpeed": "$1.2"
        }
      },
      "requires": [
        "canLongChainTemporaryBlue"
      ],
      "exitCondition": {
        "leaveWithTemporaryBlue": {}
      },
      "collectsItems": [
        3
      ],
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Enter with enough speed to jump onto or over the item pedestal, morphing mid-air and then unmorphing into temporary blue."
      ]
    },
    {
      "id": 29,
      "link": [
        2,
        1
      ],
      "name": "Grapple Teleport",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              3,
              12
            ],
            [
              3,
              13
            ]
          ]
        }
      },
      "requires": [],
      "bypassesDoorShell": true
    },
    {
      "id": 30,
      "link": [
        2,
        1
      ],
      "name": "Carry Grapple Teleport (Top Position)",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              3,
              12
            ]
          ]
        }
      },
      "requires": [],
      "bypassesDoorShell": true,
      "exitCondition": {
        "leaveWithGrappleTeleport": {
          "blockPositions": [
            [
              3,
              12
            ]
          ]
        }
      }
    },
    {
      "id": 31,
      "link": [
        2,
        1
      ],
      "name": "Carry Grapple Teleport (Bottom Position)",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              3,
              13
            ]
          ]
        }
      },
      "requires": [],
      "bypassesDoorShell": true,
      "exitCondition": {
        "leaveWithGrappleTeleport": {
          "blockPositions": [
            [
              3,
              13
            ]
          ]
        }
      }
    },
    {
      "id": 32,
      "link": [
        2,
        1
      ],
      "name": "Grapple Teleport X-Ray Climb",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              2,
              18
            ],
            [
              2,
              19
            ],
            [
              2,
              28
            ],
            [
              2,
              29
            ]
          ]
        }
      },
      "requires": [
        "canXRayClimb"
      ],
      "bypassesDoorShell": true,
      "flashSuitChecked": true,
      "note": [
        "Exit the previous room with Samus in a standing pose (while grappled).",
        "After teleporting, press right to release Grapple while staying standing (not being forced into a crouch).",
        "Then X-ray climb to get up to the door transition, without needing to open the door.",
        "Samus will not be visible during the climb."
      ]
    },
    {
      "id": 33,
      "link": [
        2,
        1
      ],
      "name": "Use Flash Suit, Diagonal Spark Avoid the Item",
      "requires": [
        {
          "useFlashSuit": {}
        },
        {
          "shinespark": {
            "frames": 3,
            "excessFrames": 1
          }
        }
      ]
    },
    {
      "id": 34,
      "link": [
        2,
        2
      ],
      "name": "Leave with Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 5,
          "openEnd": 1
        }
      }
    },
    {
      "id": 35,
      "link": [
        2,
        2
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_canCrystalFlash"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 36,
      "link": [
        2,
        3
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "Grapple",
            "SpaceJump"
          ]
        }
      ],
      "collectsItems": [
        3
      ]
    },
    {
      "id": 37,
      "link": [
        2,
        3
      ],
      "name": "Right to Left Jump",
      "requires": [
        "canDisableEquipment",
        "canCarefulJump",
        {
          "or": [
            {
              "doorUnlockedAtNode": 2
            },
            "canTrickyJump",
            "canLateralMidAirMorph",
            "SpeedBooster"
          ]
        }
      ],
      "collectsItems": [
        3
      ],
      "note": [
        "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."
      ],
      "devNote": "Could use a failure definition?"
    },
    {
      "id": 38,
      "link": [
        2,
        3
      ],
      "name": "Right to Left Jump, Run Through Door",
      "entranceCondition": {
        "comeInRunning": {
          "speedBooster": "any",
          "minTiles": 2
        }
      },
      "requires": [
        "canDisableEquipment",
        "canCarefulJump"
      ],
      "collectsItems": [
        3
      ],
      "note": [
        "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."
      ]
    },
    {
      "id": 39,
      "link": [
        2,
        3
      ],
      "name": "Shinespark Through Item",
      "entranceCondition": {
        "comeInWithSpark": {
          "position": "bottom"
        }
      },
      "requires": [
        "canHorizontalShinespark",
        {
          "shinespark": {
            "frames": 23,
            "excessFrames": 1
          }
        }
      ],
      "collectsItems": [
        3
      ],
      "clearsObstacles": [
        "A"
      ],
      "devNote": "This will grab the item and continue the spark to the left door. If this is an E-Tank, Samus will not maintain full Energy after the next strat."
    },
    {
      "id": 40,
      "link": [
        2,
        3
      ],
      "name": "Carry Shinecharge to Item (Come in Shinecharging)",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 4,
          "openEnd": 0
        }
      },
      "requires": [
        "canShinechargeMovementComplex",
        {
          "shineChargeFrames": 130
        }
      ],
      "collectsItems": [
        3
      ],
      "endsWithShineCharge": true,
      "note": [
        "After gaining a shinecharge, run back to the door to make space for a running jump to the left."
      ]
    },
    {
      "id": 41,
      "link": [
        2,
        3
      ],
      "name": "Carry Shinecharge to Item (Come in Shinecharged)",
      "entranceCondition": {
        "comeInShinecharged": {}
      },
      "requires": [
        {
          "shineChargeFrames": 85
        },
        "canShinechargeMovementComplex"
      ],
      "collectsItems": [
        3
      ],
      "endsWithShineCharge": true
    },
    {
      "id": 42,
      "link": [
        2,
        3
      ],
      "name": "Hero Shot Spark Through Item",
      "entranceCondition": {
        "comeInShinecharged": {}
      },
      "requires": [
        {
          "shineChargeFrames": 25
        },
        "canShinechargeMovementTricky",
        "canHeroShot",
        "canHorizontalShinespark",
        {
          "shinespark": {
            "frames": 17
          }
        }
      ],
      "clearsObstacles": [
        "A",
        "C"
      ],
      "collectsItems": [
        3
      ],
      "flashSuitChecked": true,
      "note": [
        "Run, fire a shot mid-air, jump, and activate a mid-air shinespark to the left.",
        "Sparking too late will cause the shot to despawn before reaching the door.",
        "Sparking too early will cause Samus to bonk the door as it will not yet be open.",
        "A beam shot, Missile, or Super can be used."
      ]
    },
    {
      "id": 43,
      "link": [
        3,
        1
      ],
      "name": "Base",
      "requires": [
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        }
      ]
    },
    {
      "id": 44,
      "link": [
        3,
        1
      ],
      "name": "Continue Shinespark Left",
      "requires": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "obstaclesNotCleared": [
            "B",
            "C"
          ]
        },
        "h_canShineChargeMaxRunway",
        {
          "shinespark": {
            "frames": 19,
            "excessFrames": 19
          }
        }
      ],
      "resetsObstacles": [
        "A"
      ],
      "devNote": [
        "This will continue the Shinespark from the right door. This is needed in case the item is an E-Tank, Samus will not maintain full Energy after the Spark.",
        "FIXME: The h_canShineChargeMaxRunway is to satisfy tests for now;",
        "we should add a proper way to represent that the shinespark carries over from the previous strat."
      ]
    },
    {
      "id": 45,
      "link": [
        3,
        1
      ],
      "name": "Continue Hero Shot Shinespark Left",
      "requires": [
        {
          "obstaclesCleared": [
            "A",
            "C"
          ]
        },
        {
          "obstaclesNotCleared": [
            "B"
          ]
        },
        "h_canShineChargeMaxRunway",
        {
          "shinespark": {
            "frames": 21,
            "excessFrames": 0
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {
          "position": "bottom"
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "devNote": [
        "This will continue the Shinespark from the right door. This is needed in case the item is an E-Tank, Samus will not maintain full Energy after the Spark.",
        "FIXME: The h_canShineChargeMaxRunway is to satisfy tests for now;",
        "we should add a proper way to represent that the shinespark carries over from the previous strat."
      ]
    },
    {
      "id": 46,
      "link": [
        3,
        1
      ],
      "name": "Continue Shinecharge, Leave With Spark",
      "startsWithShineCharge": true,
      "requires": [
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        },
        "canShinechargeMovementComplex",
        "canHeroShot",
        {
          "shineChargeFrames": 15
        },
        {
          "shinespark": {
            "frames": 21
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "From the pedestal, fire a shot to the left to open the door.",
        "If needed, jump slightly to the left to follow the shot, then activate the shinespark wind-up.",
        "Wait until the shot hits the door before sparking."
      ],
      "devNote": "If approaching from the right, the camera will be scrolled further, making it unnecessary to jump and follow the shot."
    },
    {
      "id": 47,
      "link": [
        3,
        2
      ],
      "name": "Grapple",
      "requires": [
        "Grapple",
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        }
      ]
    },
    {
      "id": 48,
      "link": [
        3,
        2
      ],
      "name": "Space Jump",
      "requires": [
        "SpaceJump",
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        }
      ]
    },
    {
      "id": 49,
      "link": [
        3,
        2
      ],
      "name": "Gravity with Jump Assist",
      "requires": [
        "Gravity",
        {
          "or": [
            "canTrickySpringBallJump",
            {
              "and": [
                "HiJump",
                "canWalljump"
              ]
            },
            {
              "and": [
                "HiJump",
                "canSpringBallJumpMidAir"
              ]
            },
            {
              "and": [
                "HiJump",
                "SpeedBooster"
              ]
            }
          ]
        },
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        }
      ]
    },
    {
      "id": 50,
      "link": [
        3,
        2
      ],
      "name": "IBJ",
      "requires": [
        "Gravity",
        "canIBJ",
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        }
      ]
    },
    {
      "id": 51,
      "link": [
        3,
        2
      ],
      "name": "Gravity Jump",
      "requires": [
        "canGravityJump",
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        }
      ]
    },
    {
      "id": 52,
      "link": [
        3,
        2
      ],
      "name": "Horizontal Bomb Jump",
      "requires": [
        "canHBJ",
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        }
      ]
    },
    {
      "id": 53,
      "link": [
        3,
        2
      ],
      "name": "Double Spring Ball Jump",
      "requires": [
        "canSuitlessMaridia",
        "h_canDoubleSpringBallJumpWithHiJump",
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        }
      ]
    },
    {
      "id": 54,
      "link": [
        3,
        2
      ],
      "name": "Ceiling Bomb Jump",
      "requires": [
        "canCeilingBombJump",
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        }
      ]
    },
    {
      "id": 55,
      "link": [
        3,
        2
      ],
      "name": "Continue Shinespark Right",
      "requires": [
        {
          "obstaclesCleared": [
            "B"
          ]
        },
        {
          "obstaclesNotCleared": [
            "A",
            "C"
          ]
        },
        "h_canShineChargeMaxRunway",
        {
          "shinespark": {
            "frames": 23,
            "excessFrames": 7
          }
        }
      ],
      "resetsObstacles": [
        "B"
      ],
      "devNote": [
        "FIXME: The h_canShineChargeMaxRunway is to satisfy tests for now;",
        "we should add a proper way to represent that the shinespark carries over from the previous strat."
      ]
    },
    {
      "id": 56,
      "link": [
        3,
        2
      ],
      "name": "Continue Hero Shot Shinespark Right",
      "requires": [
        {
          "obstaclesCleared": [
            "B",
            "C"
          ]
        },
        {
          "obstaclesNotCleared": [
            "A"
          ]
        },
        "h_canShineChargeMaxRunway",
        {
          "shinespark": {
            "frames": 23,
            "excessFrames": 7
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {
          "position": "bottom"
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "devNote": [
        "FIXME: The h_canShineChargeMaxRunway is to satisfy tests for now;",
        "we should add a proper way to represent that the shinespark carries over from the previous strat."
      ]
    },
    {
      "id": 57,
      "link": [
        3,
        2
      ],
      "name": "Continue Shinecharge into Diagonal Spark",
      "startsWithShineCharge": true,
      "requires": [
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        },
        "canShinechargeMovementComplex",
        {
          "shineChargeFrames": 45
        },
        {
          "shinespark": {
            "frames": 7
          }
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Jump from the pedestal to the right, and shinespark diagonally to make it past the water."
      ]
    },
    {
      "id": 58,
      "link": [
        3,
        2
      ],
      "name": "Continue Shinecharge, Leave With Spark",
      "startsWithShineCharge": true,
      "requires": [
        {
          "obstaclesNotCleared": [
            "A",
            "B",
            "C"
          ]
        },
        "canShinechargeMovementComplex",
        "canHeroShot",
        {
          "shineChargeFrames": 45
        },
        {
          "shinespark": {
            "frames": 22
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "From the pedestal, jump to the right to bring the door on-camera.",
        "Fire a shot mid-air, and activate the shinespark wind-up.",
        "Wait until the shot hits the door before sparking."
      ],
      "devNote": "If approaching from the right, the camera will be scrolled further, requiring a larger jump to prevent the shot from despawning."
    },
    {
      "id": 59,
      "link": [
        3,
        2
      ],
      "name": "Use Flash Suit",
      "requires": [
        {
          "useFlashSuit": {}
        },
        {
          "shinespark": {
            "frames": 4,
            "excessFrames": 2
          }
        }
      ]
    },
    {
      "id": 60,
      "link": [
        3,
        2
      ],
      "name": "Use Flash Suit, Hero Shot Through Right Door",
      "requires": [
        "canHeroShot",
        "canHorizontalShinespark",
        {
          "useFlashSuit": {}
        },
        {
          "shinespark": {
            "frames": 16,
            "excessFrames": 0
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "link": [
        1,
        1
      ],
      "name": "Base (Unlock Door)",
      "requires": [],
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ]
    },
    {
      "link": [
        1,
        1
      ],
      "name": "Base (Come In Normally)",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": []
    },
    {
      "link": [
        2,
        2
      ],
      "name": "Base (Unlock Door)",
      "requires": [],
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ]
    },
    {
      "link": [
        2,
        2
      ],
      "name": "Base (Come In Normally)",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": []
    },
    {
      "name": "Base (Collect Item)",
      "notable": false,
      "requires": [],
      "link": [
        3,
        3
      ],
      "collectsItems": [
        3
      ]
    }
  ],
  "nextStratId": 61,
  "notables": [
    {
      "id": 1,
      "name": "SpringBall Bounce",
      "note": "From an open doorway or adjacent room, run, jump, lateral midair morph on the way down, then bounce off the pedestal to get to the other side."
    },
    {
      "id": 2,
      "name": "Leave With Grapple Teleport",
      "note": [
        "Hold angle-up, jump, bonk the ceiling, and use Grapple just before landing.",
        "Moonwalk into the transition on the same frame that the Grapple Beam reaches the Grapple block.",
        "Continue holding Grapple through the door transition to initiate a teleport in the next room."
      ]
    }
  ],
  "nextNotableId": 3
}