Grapple Tutorial Room 1

Room ID: 129

Wiki
Difficulty filter

From: 1
Left Door
To: 1
Left Door

Exit condition:

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

Requires:

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

From: 1
Left Door
To: 2
Right Door

Build some run speed to jump to the opposite runway to open the door before shinesparking.

Entrance condition:

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

Requires:

"canShinechargeMovementComplex"
{
  "or": [
    {
      "shinespark": {
        "frames": 15,
        "excessFrames": 0
      }
    },
    {
      "and": [
        "canShinechargeMovementTricky",
        {
          "shinespark": {
            "frames": 7,
            "excessFrames": 0
          }
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

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

Run into the room, using part of the runway to gain a shinecharge. Use the remaining runway to gain speed to jump across the room and leave with a shinecharge.

Entrance condition:

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

Requires:

"canShinechargeMovementComplex"

Exit condition:

{
  "leaveShinecharged": {
    "framesRemaining": 45
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 130
  }
}

Requires:

"canShinechargeMovementComplex"

Exit condition:

{
  "leaveShinecharged": {
    "framesRemaining": "auto"
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 60
  }
}

Requires:

"canShinechargeMovementComplex"
{
  "shinespark": {
    "frames": 25,
    "excessFrames": 0
  }
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

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

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 40
  }
}

Requires:

"canShinechargeMovementTricky"
"canHeroShot"
{
  "shinespark": {
    "frames": 35,
    "excessFrames": 0
  }
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

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

From: 2
Right Door
To: 1
Left Door

Build some run speed to jump to the opposite runway to open the door before shinesparking.

Entrance condition:

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

Requires:

"canShinechargeMovementComplex"
{
  "or": [
    {
      "shinespark": {
        "frames": 16,
        "excessFrames": 0
      }
    },
    {
      "and": [
        "canShinechargeMovementTricky",
        {
          "shinespark": {
            "frames": 8,
            "excessFrames": 0
          }
        }
      ]
    }
  ]
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

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

Run into the room, using part of the runway to gain a shinecharge. Use the remaining runway to gain speed to jump across the room and leave with a shinecharge.

Entrance condition:

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

Requires:

"canShinechargeMovementComplex"

Exit condition:

{
  "leaveShinecharged": {
    "framesRemaining": 45
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 130
  }
}

Requires:

"canShinechargeMovementComplex"

Exit condition:

{
  "leaveShinecharged": {
    "framesRemaining": "auto"
  }
}

Unlocks doors:

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

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 60
  }
}

Requires:

"canShinechargeMovementComplex"
{
  "shinespark": {
    "frames": 26,
    "excessFrames": 0
  }
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

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

Entrance condition:

{
  "comeInShinecharged": {
    "framesRequired": 40
  }
}

Requires:

"canShinechargeMovementTricky"
"canHeroShot"
{
  "shinespark": {
    "frames": 35,
    "excessFrames": 0
  }
}

Exit condition:

{
  "leaveWithSpark": {}
}

Unlocks doors:

{"types":["super"],"requires":[]}
{"types":["missiles","powerbomb"],"requires":["never"]}
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: 2
Right Door

Exit condition:

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

{
  "$schema": "../../../schema/m3-room.schema.json",
  "id": 129,
  "name": "Grapple Tutorial Room 1",
  "area": "Norfair",
  "subarea": "Upper",
  "subsubarea": "Crocomire",
  "playable": true,
  "roomAddress": "0x7AC00",
  "roomEnvironments": [
    {
      "heated": false
    }
  ],
  "nodes": [
    {
      "id": 1,
      "name": "Left Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x00194fe",
      "doorOrientation": "left",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ]
    },
    {
      "id": 2,
      "name": "Right Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x001950a",
      "doorOrientation": "right",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ]
    }
  ],
  "enemies": [],
  "links": [
    {
      "from": 1,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        }
      ]
    },
    {
      "from": 2,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        }
      ]
    }
  ],
  "strats": [
    {
      "id": 1,
      "link": [
        1,
        1
      ],
      "name": "Leave with Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 10,
          "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, Leave With Spark",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 9,
          "openEnd": 0
        }
      },
      "requires": [
        "canShinechargeMovementComplex",
        {
          "or": [
            {
              "shinespark": {
                "frames": 15,
                "excessFrames": 0
              }
            },
            {
              "and": [
                "canShinechargeMovementTricky",
                {
                  "shinespark": {
                    "frames": 7,
                    "excessFrames": 0
                  }
                }
              ]
            }
          ]
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "note": [
        "Build some run speed to jump to the opposite runway to open the door before shinesparking."
      ]
    },
    {
      "id": 11,
      "link": [
        1,
        2
      ],
      "name": "Come In Shinecharging, Leave Shinecharged",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 5,
          "openEnd": 1
        }
      },
      "requires": [
        "canShinechargeMovementComplex"
      ],
      "exitCondition": {
        "leaveShinecharged": {
          "framesRemaining": 45
        }
      },
      "note": [
        "Run into the room, using part of the runway to gain a shinecharge.",
        "Use the remaining runway to gain speed to jump across the room and leave with a shinecharge."
      ],
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 12,
      "link": [
        1,
        2
      ],
      "name": "Carry Shinecharge",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 130
        }
      },
      "requires": [
        "canShinechargeMovementComplex"
      ],
      "exitCondition": {
        "leaveShinecharged": {
          "framesRemaining": "auto"
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 13,
      "link": [
        1,
        2
      ],
      "name": "Come In Shinecharged, Leave With Spark",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 60
        }
      },
      "requires": [
        "canShinechargeMovementComplex",
        {
          "shinespark": {
            "frames": 25,
            "excessFrames": 0
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 14,
      "link": [
        1,
        2
      ],
      "name": "Hero Shot Spark",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 40
        }
      },
      "requires": [
        "canShinechargeMovementTricky",
        "canHeroShot",
        {
          "shinespark": {
            "frames": 35,
            "excessFrames": 0
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 5,
      "link": [
        2,
        1
      ],
      "name": "Base",
      "requires": []
    },
    {
      "id": 15,
      "link": [
        2,
        1
      ],
      "name": "Come In Shinecharging, Leave With Spark",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 8,
          "openEnd": 0
        }
      },
      "requires": [
        "canShinechargeMovementComplex",
        {
          "or": [
            {
              "shinespark": {
                "frames": 16,
                "excessFrames": 0
              }
            },
            {
              "and": [
                "canShinechargeMovementTricky",
                {
                  "shinespark": {
                    "frames": 8,
                    "excessFrames": 0
                  }
                }
              ]
            }
          ]
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ],
      "note": [
        "Build some run speed to jump to the opposite runway to open the door before shinesparking."
      ]
    },
    {
      "id": 16,
      "link": [
        2,
        1
      ],
      "name": "Come In Shinecharging, Leave Shinecharged",
      "entranceCondition": {
        "comeInShinecharging": {
          "length": 4,
          "openEnd": 1
        }
      },
      "requires": [
        "canShinechargeMovementComplex"
      ],
      "exitCondition": {
        "leaveShinecharged": {
          "framesRemaining": 45
        }
      },
      "note": [
        "Run into the room, using part of the runway to gain a shinecharge.",
        "Use the remaining runway to gain speed to jump across the room and leave with a shinecharge."
      ],
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 17,
      "link": [
        2,
        1
      ],
      "name": "Carry Shinecharge",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 130
        }
      },
      "requires": [
        "canShinechargeMovementComplex"
      ],
      "exitCondition": {
        "leaveShinecharged": {
          "framesRemaining": "auto"
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 18,
      "link": [
        2,
        1
      ],
      "name": "Come In Shinecharged, Leave With Spark",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 60
        }
      },
      "requires": [
        "canShinechargeMovementComplex",
        {
          "shinespark": {
            "frames": 26,
            "excessFrames": 0
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 19,
      "link": [
        2,
        1
      ],
      "name": "Hero Shot Spark",
      "entranceCondition": {
        "comeInShinecharged": {
          "framesRequired": 40
        }
      },
      "requires": [
        "canShinechargeMovementTricky",
        "canHeroShot",
        {
          "shinespark": {
            "frames": 35,
            "excessFrames": 0
          }
        }
      ],
      "exitCondition": {
        "leaveWithSpark": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles",
            "powerbomb"
          ],
          "requires": [
            "never"
          ]
        }
      ]
    },
    {
      "id": 7,
      "link": [
        2,
        1
      ],
      "name": "Grapple Teleport",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              3,
              12
            ],
            [
              3,
              13
            ]
          ]
        }
      },
      "requires": [],
      "bypassesDoorShell": true
    },
    {
      "id": 8,
      "link": [
        2,
        1
      ],
      "name": "Carry Grapple Teleport (Top Position)",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              3,
              12
            ]
          ]
        }
      },
      "requires": [],
      "bypassesDoorShell": true,
      "exitCondition": {
        "leaveWithGrappleTeleport": {
          "blockPositions": [
            [
              3,
              12
            ]
          ]
        }
      }
    },
    {
      "id": 9,
      "link": [
        2,
        1
      ],
      "name": "Carry Grapple Teleport (Bottom Position)",
      "entranceCondition": {
        "comeInWithGrappleTeleport": {
          "blockPositions": [
            [
              3,
              13
            ]
          ]
        }
      },
      "requires": [],
      "bypassesDoorShell": true,
      "exitCondition": {
        "leaveWithGrappleTeleport": {
          "blockPositions": [
            [
              3,
              13
            ]
          ]
        }
      }
    },
    {
      "id": 10,
      "link": [
        2,
        2
      ],
      "name": "Leave with Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 9,
          "openEnd": 1
        }
      }
    },
    {
      "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": []
    }
  ],
  "nextStratId": 20,
  "notables": [],
  "nextNotableId": 1
}