Grapple Beam Room

Room ID: 128

Wiki
Difficulty filter

From: 1
Top Right Door
To: 1
Top Right Door

Exit condition:

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

Requires:

"h_canCrystalFlash"
From: 1
Top Right Door
To: 2
Bottom Right Door

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

Entrance condition:

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

Requires:

"canShinechargeMovementTricky"

Clears obstacles: A

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

Entrance condition:

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

Requires:

"canShinechargeMovementComplex"

Exit condition:

{
  "leaveShinecharged": {
    "framesRemaining": 40
  }
}

Unlocks doors:

{"types":["super"],"requires":[{"shineChargeFrames":5}]}
{"types":["missiles","powerbomb"],"requires":["never"]}
From: 2
Bottom Right Door
To: 1
Top Right Door

Requires:

{
  "or": [
    "canConsecutiveWalljump",
    "h_canFly"
  ]
}
From: 2
Bottom Right Door
To: 1
Top Right Door

Entrance condition:

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

Requires:

{
  "shinespark": {
    "frames": 40
  }
}
From: 2
Bottom Right Door
To: 1
Top Right Door

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 10
  }
}

Requires:

{
  "shinespark": {
    "frames": 40
  }
}
From: 2
Bottom Right Door
To: 1
Top Right Door

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "shinespark": {
    "frames": 40
  }
}

Entrance condition:

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

Requires:

"HiJump"
"canShinechargeMovementTricky"
"canFastWalljumpClimb"
{
  "shinespark": {
    "frames": 5,
    "excessFrames": 0
  }
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

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

Entrance condition:

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

Requires:

"HiJump"
"canShinechargeMovementTricky"
"canFastWalljumpClimb"
"canInsaneJump"
{
  "shinespark": {
    "frames": 5,
    "excessFrames": 0
  }
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

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

Entrance condition:

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

Requires:

"canShinechargeMovementTricky"
"canFastWalljumpClimb"
"canInsaneJump"
{
  "shinespark": {
    "frames": 5,
    "excessFrames": 0
  }
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

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

Climb up 2 screens.

Entrance condition:

{
  "comeInWithDoorStuckSetup": {}
}

Requires:

"canXRayClimb"
From: 2
Bottom Right Door
To: 1
Top Right Door

Enter with G-mode direct, back up to between 1 and 6 pixels from the door transition, and activate X-ray to get very deep stuck in the door. Climb up 2 screens, and perform a turnaround buffered spin-jump away from the door to trigger the transition, bypassing any lock on the door.

Entrance condition:

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

Requires:

"canXRayClimb"

Bypasses door shell: true

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

From the first platform on the left, spin jump and press against the next platform and spark up right.

Requires:

{
  "useFlashSuit": {}
}
{
  "shinespark": {
    "frames": 24,
    "excessFrames": 5
  }
}
From: 2
Bottom Right Door
To: 1
Top Right Door

Entrance condition:

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

Requires:

"h_canArtificialMorphIBJ"
From: 2
Bottom Right Door
To: 1
Top Right Door

Get to the top of the room with Spring Ball Bomb Jumps. To cross the room, perform a Spring Ball Bomb Jump after hitting the bomb with momentum to get a larger horizontal boost, then unmorph on the descent to reset fall speed.

Entrance condition:

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

Requires:

"h_canArtificialMorphSpringBallBombJump"
{
  "or": [
    "HiJump",
    {
      "and": [
        "canInsaneJump",
        "h_canArtificialMorphResetFallSpeed",
        {
          "ammo": {
            "type": "PowerBomb",
            "count": 3
          }
        }
      ]
    }
  ]
}
From: 2
Bottom Right Door
To: 2
Bottom Right Door

Exit condition:

{
  "leaveWithRunway": {
    "length": 10,
    "openEnd": 0
  }
}
From: 2
Bottom Right Door
To: 2
Bottom Right Door

Requires:

{
  "obstaclesNotCleared": [
    "A"
  ]
}
"h_canCrystalFlash"
From: 2
Bottom Right Door
To: 2
Bottom Right Door

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 70
  }
}

Requires:

"canShinechargeMovementComplex"

Clears obstacles: A

From: 2
Bottom Right Door
To: 2
Bottom Right Door

Entrance condition:

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

Requires:

"canShinechargeMovementComplex"

Clears obstacles: A

From: 2
Bottom Right Door
To: 2
Bottom Right Door

Requires:

{
  "obstaclesCleared": [
    "A"
  ]
}
{
  "shinespark": {
    "frames": 6
  }
}

Exit condition:

{
  "leaveWithSpark": {}
}
From: 2
Bottom Right Door
To: 3
Item

From: 2
Bottom Right Door
To: 4
Junction at Top Left

Requires:

{
  "or": [
    "HiJump",
    "canWalljump",
    "h_canCrouchJumpDownGrab",
    "canSpringBallJumpMidAir"
  ]
}
From: 2
Bottom Right Door
To: 4
Junction at Top Left

Entrance condition:

{
  "comeInWithGrappleTeleport": {
    "blockPositions": [
      [
        5,
        3
      ],
      [
        7,
        2
      ]
    ]
  }
}
From: 3
Item
To: 2
Bottom Right Door

From: 4
Junction at Top Left
To: 1
Top Right Door

Requires:

{
  "or": [
    "Grapple",
    "canPreciseWalljump"
  ]
}
From: 4
Junction at Top Left
To: 1
Top Right Door

Run and jump from the second-highest platform on the left.

Requires:

"HiJump"
"canCarefulJump"
From: 4
Junction at Top Left
To: 1
Top Right Door

Starting from the second-highest platform on the left, run and jump into a mid-air Spring Ball jump. It helps but is not required to then unmorph to reset fall speed.

Requires:

"canTrickySpringBallJump"
From: 4
Junction at Top Left
To: 1
Top Right Door

With SpeedBooster equipped, run from the top left platform and jump into an airball to reach the top right platform. It helps but is not required to moonwalk against the wall to maximize the available runway.

Requires:

"SpeedBooster"
"canTrickyJump"
"canLateralMidAirMorph"

{
  "$schema": "../../../schema/m3-room.schema.json",
  "id": 128,
  "name": "Grapple Beam Room",
  "area": "Norfair",
  "subarea": "Upper",
  "subsubarea": "Crocomire",
  "playable": true,
  "roomAddress": "0x7AC2B",
  "roomEnvironments": [
    {
      "heated": false
    }
  ],
  "nodes": [
    {
      "id": 1,
      "name": "Top Right Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x0019522",
      "doorOrientation": "right",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ]
    },
    {
      "id": 2,
      "name": "Bottom Right Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x0019516",
      "doorOrientation": "right",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ]
    },
    {
      "id": 3,
      "name": "Item",
      "nodeType": "item",
      "nodeSubType": "chozo",
      "nodeItem": "Grapple",
      "nodeAddress": "0x78C36",
      "locks": [
        {
          "name": "Dummy Item Lock",
          "lockType": "gameFlag",
          "unlockStrats": [
            {
              "name": "Base (Collect Item)",
              "notable": false,
              "requires": []
            }
          ]
        }
      ]
    },
    {
      "id": 4,
      "name": "Junction at Top Left",
      "nodeType": "junction",
      "nodeSubType": "junction"
    }
  ],
  "obstacles": [
    {
      "id": "A",
      "name": "Enter Shinecharged for Item Grab and Escape",
      "obstacleType": "abstract"
    }
  ],
  "enemies": [],
  "links": [
    {
      "from": 1,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        }
      ]
    },
    {
      "from": 2,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        },
        {
          "id": 4
        }
      ]
    },
    {
      "from": 3,
      "to": [
        {
          "id": 2
        }
      ]
    },
    {
      "from": 4,
      "to": [
        {
          "id": 1
        }
      ]
    }
  ],
  "strats": [
    {
      "id": 1,
      "link": [
        1,
        1
      ],
      "name": "Leave with Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 1,
          "openEnd": 1
        }
      }
    },
    {
      "id": 2,
      "link": [
        1,
        1
      ],
      "name": "Crystal Flash",
      "requires": [
        "h_canCrystalFlash"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 3,
      "link": [
        1,
        2
      ],
      "name": "Base",
      "requires": []
    },
    {
      "id": 4,
      "link": [
        1,
        2
      ],
      "name": "Come In Shinecharging for Item Grab and Escape",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 0,
          "openEnd": 1
        }
      },
      "requires": [
        "canShinechargeMovementTricky"
      ],
      "clearsObstacles": [
        "A"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 27,
      "link": [
        1,
        2
      ],
      "name": "Come In Shinecharging, Leave Shinecharged",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 0,
          "openEnd": 1
        }
      },
      "requires": [
        "canShinechargeMovementComplex"
      ],
      "exitCondition": {
        "leaveShinecharged": {
          "framesRemaining": 40
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": [
            {
              "shineChargeFrames": 5
            }
          ]
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 5,
      "link": [
        2,
        1
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "canConsecutiveWalljump",
            "h_canFly"
          ]
        }
      ]
    },
    {
      "id": 6,
      "link": [
        2,
        1
      ],
      "name": "Come In Shinecharging, Shinespark",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 9,
          "openEnd": 0
        }
      },
      "requires": [
        {
          "shinespark": {
            "frames": 40
          }
        }
      ]
    },
    {
      "id": 7,
      "link": [
        2,
        1
      ],
      "name": "Come In Shinecharged, Shinespark",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 10
        }
      },
      "requires": [
        {
          "shinespark": {
            "frames": 40
          }
        }
      ],
      "flashSuitChecked": true
    },
    {
      "id": 8,
      "link": [
        2,
        1
      ],
      "name": "Shinespark Escape",
      "requires": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "shinespark": {
            "frames": 40
          }
        }
      ]
    },
    {
      "id": 28,
      "link": [
        2,
        1
      ],
      "name": "Come In Shinecharging, Leave With Spark (HiJump Wall Climb, Partial Runway)",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 5,
          "openEnd": 0
        }
      },
      "requires": [
        "HiJump",
        "canShinechargeMovementTricky",
        "canFastWalljumpClimb",
        {
          "shinespark": {
            "frames": 5,
            "excessFrames": 0
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 29,
      "link": [
        2,
        1
      ],
      "name": "Come In Shinecharging, Leave With Spark (HiJump Wall Climb, Full Runway)",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 9,
          "openEnd": 0
        }
      },
      "requires": [
        "HiJump",
        "canShinechargeMovementTricky",
        "canFastWalljumpClimb",
        "canInsaneJump",
        {
          "shinespark": {
            "frames": 5,
            "excessFrames": 0
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 30,
      "link": [
        2,
        1
      ],
      "name": "Come In Shinecharging, Leave With Spark (Bootless Wall Climb)",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 0,
          "openEnd": 1
        }
      },
      "requires": [
        "canShinechargeMovementTricky",
        "canFastWalljumpClimb",
        "canInsaneJump",
        {
          "shinespark": {
            "frames": 5,
            "excessFrames": 0
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 9,
      "link": [
        2,
        1
      ],
      "name": "X-Ray Climb",
      "entranceCondition": {
        "comeInWithDoorStuckSetup": {}
      },
      "requires": [
        "canXRayClimb"
      ],
      "flashSuitChecked": true,
      "note": "Climb up 2 screens."
    },
    {
      "id": 10,
      "link": [
        2,
        1
      ],
      "name": "Very Deep Stuck X-Ray Climb",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "direct",
          "morphed": false
        }
      },
      "requires": [
        "canXRayClimb"
      ],
      "bypassesDoorShell": true,
      "flashSuitChecked": true,
      "note": [
        "Enter with G-mode direct, back up to between 1 and 6 pixels from the door transition, and activate X-ray to get very deep stuck in the door.",
        "Climb up 2 screens, and perform a turnaround buffered spin-jump away from the door to trigger the transition, bypassing any lock on the door."
      ]
    },
    {
      "id": 26,
      "link": [
        2,
        1
      ],
      "name": "Use Flash Suit",
      "requires": [
        {
          "useFlashSuit": {}
        },
        {
          "shinespark": {
            "frames": 24,
            "excessFrames": 5
          }
        }
      ],
      "flashSuitChecked": true,
      "note": "From the first platform on the left, spin jump and press against the next platform and spark up right."
    },
    {
      "id": 11,
      "link": [
        2,
        1
      ],
      "name": "G-Mode Morph IBJ",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        "h_canArtificialMorphIBJ"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 12,
      "link": [
        2,
        1
      ],
      "name": "G-Mode Morph Power Bombs and Spring Ball",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        "h_canArtificialMorphSpringBallBombJump",
        {
          "or": [
            "HiJump",
            {
              "and": [
                "canInsaneJump",
                "h_canArtificialMorphResetFallSpeed",
                {
                  "ammo": {
                    "type": "PowerBomb",
                    "count": 3
                  }
                }
              ]
            }
          ]
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Get to the top of the room with Spring Ball Bomb Jumps.",
        "To cross the room, perform a Spring Ball Bomb Jump after hitting the bomb with momentum to get a larger horizontal boost, then unmorph on the descent to reset fall speed."
      ],
      "devNote": [
        "The HiJump strat can only be useful if preserving a blue suit. Leniency isn't included as Samus will likely unmorph.",
        "FIXME: Hitting the bomb with momentum should probably be a tech."
      ]
    },
    {
      "id": 13,
      "link": [
        2,
        2
      ],
      "name": "Leave with Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 10,
          "openEnd": 0
        }
      }
    },
    {
      "id": 14,
      "link": [
        2,
        2
      ],
      "name": "Crystal Flash",
      "requires": [
        {
          "obstaclesNotCleared": [
            "A"
          ]
        },
        "h_canCrystalFlash"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 15,
      "link": [
        2,
        2
      ],
      "name": "Come In Shinecharged for Item Grab and Escape",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 70
        }
      },
      "requires": [
        "canShinechargeMovementComplex"
      ],
      "clearsObstacles": [
        "A"
      ],
      "flashSuitChecked": true
    },
    {
      "id": 16,
      "link": [
        2,
        2
      ],
      "name": "Come In Shinecharging for Item Grab and Escape",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 9,
          "openEnd": 0
        }
      },
      "requires": [
        "canShinechargeMovementComplex"
      ],
      "clearsObstacles": [
        "A"
      ]
    },
    {
      "id": 17,
      "link": [
        2,
        2
      ],
      "name": "Shinespark Escape",
      "requires": [
        {
          "obstaclesCleared": [
            "A"
          ]
        },
        {
          "shinespark": {
            "frames": 6
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      }
    },
    {
      "id": 18,
      "link": [
        2,
        3
      ],
      "name": "Base",
      "requires": []
    },
    {
      "id": 19,
      "link": [
        2,
        4
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "HiJump",
            "canWalljump",
            "h_canCrouchJumpDownGrab",
            "canSpringBallJumpMidAir"
          ]
        }
      ]
    },
    {
      "id": 20,
      "link": [
        2,
        4
      ],
      "name": "Grapple Teleport",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              5,
              3
            ],
            [
              7,
              2
            ]
          ]
        }
      },
      "requires": [],
      "devNote": [
        "This gets to the top left of the room without walljump or crouch jump.",
        "Avoiding a crouch jump could be useful for preserving a flash suit.",
        "FIXME: When we have a way to represent grapple teleporting with a shinecharge, that can also be useful here."
      ]
    },
    {
      "id": 21,
      "link": [
        3,
        2
      ],
      "name": "Base",
      "requires": []
    },
    {
      "id": 22,
      "link": [
        4,
        1
      ],
      "name": "Base",
      "requires": [
        {
          "or": [
            "Grapple",
            "canPreciseWalljump"
          ]
        }
      ]
    },
    {
      "id": 23,
      "link": [
        4,
        1
      ],
      "name": "HiJump",
      "requires": [
        "HiJump",
        "canCarefulJump"
      ],
      "note": "Run and jump from the second-highest platform on the left."
    },
    {
      "id": 24,
      "link": [
        4,
        1
      ],
      "name": "Spring Ball Jump",
      "requires": [
        "canTrickySpringBallJump"
      ],
      "note": [
        "Starting from the second-highest platform on the left, run and jump into a mid-air Spring Ball jump.",
        "It helps but is not required to then unmorph to reset fall speed."
      ]
    },
    {
      "id": 25,
      "link": [
        4,
        1
      ],
      "name": "Speedy Airball",
      "requires": [
        "SpeedBooster",
        "canTrickyJump",
        "canLateralMidAirMorph"
      ],
      "note": [
        "With SpeedBooster equipped, run from the top left platform and jump into an airball to reach the top right platform.",
        "It helps but is not required to moonwalk against the wall to maximize the available runway."
      ]
    },
    {
      "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": 31,
  "notables": [],
  "nextNotableId": 1
}