Volcano Room

Room ID: 116

Wiki
Difficulty filter

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

Exit condition:

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

Requires:

{
  "resetRoom": {
    "nodes": [
      1
    ]
  }
}
"h_canCrystalFlash"

Dev note: Resetting the room through node 1 ensures that there is no heat.

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

Requires:

"Gravity"
"Morph"
{
  "or": [
    {
      "and": [
        "canMockball",
        "canCarefulJump",
        {
          "lavaFrames": 60
        }
      ]
    },
    {
      "lavaFrames": 100
    }
  ]
}
{
  "or": [
    {
      "lavaFrames": 150
    },
    {
      "and": [
        "SpaceJump",
        {
          "lavaFrames": 60
        }
      ]
    }
  ]
}
From: 1
Top Left Door
To: 2
Bottom Left Door

Requires:

"canSuitlessLavaDive"
"Morph"
{
  "or": [
    {
      "and": [
        "canCarefulJump",
        "canMockball",
        {
          "lavaFrames": 180
        }
      ]
    },
    {
      "lavaFrames": 220
    }
  ]
}
{
  "or": [
    {
      "and": [
        "canSpaceJumpWaterBounce",
        {
          "lavaFrames": 120
        }
      ]
    },
    {
      "lavaFrames": 150
    }
  ]
}
From: 2
Bottom Left Door
To: 1
Top Left Door

Requires:

"Morph"
{
  "or": [
    "canMockball",
    {
      "heatFrames": 35
    }
  ]
}
{
  "heatFrames": 420
}

Unlocks doors:

{"types":["missiles"],"requires":[{"heatFrames":20}]}
{"types":["powerbomb"],"requires":[{"heatFrames":60}]}
From: 2
Bottom Left Door
To: 1
Top Left Door

Requires:

"Morph"
{
  "or": [
    "canMockball",
    {
      "heatFrames": 35
    }
  ]
}
{
  "heatFrames": 380
}

Exit condition:

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

Unlocks doors:

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

Requires:

"Morph"
"SpaceJump"
{
  "or": [
    "canMockball",
    {
      "heatFrames": 35
    }
  ]
}
{
  "heatFrames": 405
}
From: 2
Bottom Left Door
To: 1
Top Left Door

Move quickly (when X-Ray is not active) to climb the shaft before the Fune fireballs would reach Samus.

Entrance condition:

{
  "comeInGettingBlueSpeed": {
    "length": 4,
    "openEnd": 1,
    "minExtraRunSpeed": "$4.7"
  }
}

Requires:

"canLongChainTemporaryBlue"
"canXRayTurnaround"
{
  "heatFrames": 760
}

Exit condition:

{
  "leaveWithTemporaryBlue": {}
}

Unlocks doors:

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

Dev note: The last runway tile is considered unusable, as Samus is likely to clip down through it.

Move quickly (when X-Ray is not active) to climb the shaft before the Fune fireballs would reach Samus.

Entrance condition:

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

Requires:

"canTrickySpringBallBounce"
"canLongChainTemporaryBlue"
"canXRayTurnaround"
{
  "heatFrames": 1020
}

Exit condition:

{
  "leaveWithTemporaryBlue": {}
}

Unlocks doors:

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

Enter the morph tunnel then exit G-mode. Shooting the shot block off screen can be done by jumping and shooting up or with Grapple or a Power Bomb. Getting positioned under the shot block can be done by walking into the camera scroll block and then walking against the right wall, jump to the left and walk a little more (about one more tile). This will also give some visibility of Samus. Without heat damage, it is recommended to jump up past the shot block and wait for it to respawn; with the block intact, Samus can't accidentally touch the lava.

Entrance condition:

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

Requires:

"h_heatedGMode"
"canOffScreenMovement"
{
  "or": [
    "h_canArtificialMorphMovement",
    {
      "ammo": {
        "type": "PowerBomb",
        "count": 3
      }
    }
  ]
}
{
  "or": [
    "canInsaneJump",
    {
      "and": [
        "canTrickyJump",
        "h_heatProof"
      ]
    },
    {
      "and": [
        "h_heatProof",
        "h_lavaProof",
        {
          "or": [
            "Gravity",
            "HiJump"
          ]
        }
      ]
    }
  ]
}
{
  "heatFrames": 1000
}

Dev note: These heat frames are not very tight, as the room is difficult to do consistently.

From: 2
Bottom Left Door
To: 2
Bottom Left Door

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

{
  "heatFrames": 60
}

Exit condition:

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

Unlocks doors:

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

Entrance condition:

{
  "comeInNormally": {}
}

Requires:

"h_canHeatedCrystalFlash"

Dev note: When coming from 1: A lava proof CF could CF at 1, otherwise going through this door should be less damage than staying in Lava.

{
  "$schema": "../../../schema/m3-room.schema.json",
  "id": 116,
  "name": "Volcano Room",
  "area": "Norfair",
  "subarea": "Upper",
  "subsubarea": "East",
  "roomAddress": "0x7AE32",
  "roomEnvironments": [
    {
      "heated": false,
      "entranceNodes": [
        1
      ],
      "note": "This room is not heated when entering from the top"
    },
    {
      "heated": true,
      "entranceNodes": [
        2
      ],
      "note": "This room is only heated when entering from the bottom"
    }
  ],
  "mapTileMask": [
    [
      0,
      0,
      1
    ],
    [
      0,
      0,
      1
    ],
    [
      1,
      1,
      1
    ]
  ],
  "nodes": [
    {
      "id": 1,
      "name": "Top Left Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x001964e",
      "doorOrientation": "left",
      "doorEnvironments": [
        {
          "physics": "air"
        }
      ],
      "mapTileMask": [
        [
          0,
          0,
          2
        ],
        [
          0,
          0,
          2
        ],
        [
          1,
          1,
          2
        ]
      ]
    },
    {
      "id": 2,
      "name": "Bottom Left Door",
      "nodeType": "door",
      "nodeSubType": "blue",
      "nodeAddress": "0x001965a",
      "doorOrientation": "left",
      "doorEnvironments": [
        {
          "physics": "lava",
          "entranceNodes": [
            1
          ],
          "note": "There is always lava at this door if entering from node 1"
        },
        {
          "physics": "air",
          "entranceNodes": [
            2
          ],
          "note": "Lava can eventually rise up to this door entering from node 2, but it's possible to have air physics"
        }
      ],
      "mapTileMask": [
        [
          0,
          0,
          1
        ],
        [
          0,
          0,
          1
        ],
        [
          2,
          2,
          1
        ]
      ]
    }
  ],
  "enemies": [
    {
      "id": "e1",
      "groupName": "Volcano Room Top Funes",
      "enemyName": "Fune",
      "quantity": 5,
      "homeNodes": [
        1
      ]
    },
    {
      "id": "e2",
      "groupName": "Volcano Room Bottom Fune",
      "enemyName": "Fune",
      "quantity": 1,
      "homeNodes": [
        2
      ]
    }
  ],
  "links": [
    {
      "from": 1,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2,
          "note": "The room is heated when entering from bottom but not when entering from top."
        }
      ]
    },
    {
      "from": 2,
      "to": [
        {
          "id": 1
        },
        {
          "id": 2
        }
      ]
    }
  ],
  "strats": [
    {
      "id": 1,
      "link": [
        1,
        1
      ],
      "name": "Leave with Runway",
      "requires": [],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 8,
          "openEnd": 1
        }
      }
    },
    {
      "id": 2,
      "link": [
        1,
        1
      ],
      "name": "Crystal Flash",
      "requires": [
        {
          "resetRoom": {
            "nodes": [
              1
            ]
          }
        },
        "h_canCrystalFlash"
      ],
      "flashSuitChecked": true,
      "devNote": "Resetting the room through node 1 ensures that there is no heat."
    },
    {
      "id": 3,
      "link": [
        1,
        2
      ],
      "name": "Base",
      "requires": [
        "Gravity",
        "Morph",
        {
          "or": [
            {
              "and": [
                "canMockball",
                "canCarefulJump",
                {
                  "lavaFrames": 60
                }
              ]
            },
            {
              "lavaFrames": 100
            }
          ]
        },
        {
          "or": [
            {
              "lavaFrames": 150
            },
            {
              "and": [
                "SpaceJump",
                {
                  "lavaFrames": 60
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "id": 4,
      "link": [
        1,
        2
      ],
      "name": "Suitless Lava Dive",
      "requires": [
        "canSuitlessLavaDive",
        "Morph",
        {
          "or": [
            {
              "and": [
                "canCarefulJump",
                "canMockball",
                {
                  "lavaFrames": 180
                }
              ]
            },
            {
              "lavaFrames": 220
            }
          ]
        },
        {
          "or": [
            {
              "and": [
                "canSpaceJumpWaterBounce",
                {
                  "lavaFrames": 120
                }
              ]
            },
            {
              "lavaFrames": 150
            }
          ]
        }
      ]
    },
    {
      "id": 5,
      "link": [
        2,
        1
      ],
      "name": "Base",
      "requires": [
        "Morph",
        {
          "or": [
            "canMockball",
            {
              "heatFrames": 35
            }
          ]
        },
        {
          "heatFrames": 420
        }
      ],
      "unlocksDoors": [
        {
          "types": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 20
            }
          ]
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            {
              "heatFrames": 60
            }
          ]
        }
      ]
    },
    {
      "id": 6,
      "link": [
        2,
        1
      ],
      "name": "Leave with Runway",
      "requires": [
        "Morph",
        {
          "or": [
            "canMockball",
            {
              "heatFrames": 35
            }
          ]
        },
        {
          "heatFrames": 380
        }
      ],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 8,
          "openEnd": 1
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 50
            }
          ]
        },
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            {
              "heatFrames": 60
            }
          ]
        }
      ]
    },
    {
      "id": 7,
      "link": [
        2,
        1
      ],
      "name": "SpaceJump",
      "requires": [
        "Morph",
        "SpaceJump",
        {
          "or": [
            "canMockball",
            {
              "heatFrames": 35
            }
          ]
        },
        {
          "heatFrames": 405
        }
      ]
    },
    {
      "id": 10,
      "link": [
        2,
        1
      ],
      "name": "Come In Getting Blue Speed, Leave With Temporary Blue (Big Jump)",
      "entranceCondition": {
        "comeInGettingBlueSpeed": {
          "length": 4,
          "openEnd": 1,
          "minExtraRunSpeed": "$4.7"
        }
      },
      "requires": [
        "canLongChainTemporaryBlue",
        "canXRayTurnaround",
        {
          "heatFrames": 760
        }
      ],
      "exitCondition": {
        "leaveWithTemporaryBlue": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super",
            "powerbomb"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 50
            }
          ]
        }
      ],
      "note": [
        "Move quickly (when X-Ray is not active) to climb the shaft before the Fune fireballs would reach Samus."
      ],
      "devNote": [
        "The last runway tile is considered unusable, as Samus is likely to clip down through it."
      ]
    },
    {
      "id": 11,
      "link": [
        2,
        1
      ],
      "name": "Come In Getting Blue Speed, Leave With Temporary Blue (Spring Ball Bounce)",
      "entranceCondition": {
        "comeInGettingBlueSpeed": {
          "length": 5,
          "openEnd": 1
        }
      },
      "requires": [
        "canTrickySpringBallBounce",
        "canLongChainTemporaryBlue",
        "canXRayTurnaround",
        {
          "heatFrames": 1020
        }
      ],
      "exitCondition": {
        "leaveWithTemporaryBlue": {}
      },
      "unlocksDoors": [
        {
          "types": [
            "super",
            "powerbomb"
          ],
          "requires": []
        },
        {
          "types": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 50
            }
          ]
        }
      ],
      "note": [
        "Move quickly (when X-Ray is not active) to climb the shaft before the Fune fireballs would reach Samus."
      ]
    },
    {
      "id": 12,
      "link": [
        2,
        1
      ],
      "name": "G-Mode Morph, Blind Movement",
      "entranceCondition": {
        "comeInWithGMode": {
          "mode": "any",
          "morphed": true
        }
      },
      "requires": [
        "h_heatedGMode",
        "canOffScreenMovement",
        {
          "or": [
            "h_canArtificialMorphMovement",
            {
              "ammo": {
                "type": "PowerBomb",
                "count": 3
              }
            }
          ]
        },
        {
          "or": [
            "canInsaneJump",
            {
              "and": [
                "canTrickyJump",
                "h_heatProof"
              ]
            },
            {
              "and": [
                "h_heatProof",
                "h_lavaProof",
                {
                  "or": [
                    "Gravity",
                    "HiJump"
                  ]
                }
              ]
            }
          ]
        },
        {
          "heatFrames": 1000
        }
      ],
      "flashSuitChecked": true,
      "note": [
        "Enter the morph tunnel then exit G-mode. Shooting the shot block off screen can be done by jumping and shooting up or with Grapple or a Power Bomb.",
        "Getting positioned under the shot block can be done by walking into the camera scroll block and then walking against the right wall,",
        "jump to the left and walk a little more (about one more tile). This will also give some visibility of Samus.",
        "Without heat damage, it is recommended to jump up past the shot block and wait for it to respawn; with the block intact, Samus can't accidentally touch the lava."
      ],
      "devNote": "These heat frames are not very tight, as the room is difficult to do consistently."
    },
    {
      "id": 8,
      "link": [
        2,
        2
      ],
      "name": "Leave with Runway",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        {
          "heatFrames": 60
        }
      ],
      "exitCondition": {
        "leaveWithRunway": {
          "length": 6,
          "openEnd": 1
        }
      },
      "unlocksDoors": [
        {
          "types": [
            "ammo"
          ],
          "requires": []
        }
      ]
    },
    {
      "id": 9,
      "link": [
        2,
        2
      ],
      "name": "Crystal Flash",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": [
        "h_canHeatedCrystalFlash"
      ],
      "flashSuitChecked": true,
      "devNote": [
        "When coming from 1: A lava proof CF could CF at 1, otherwise going through this door should be less damage than staying in Lava."
      ]
    },
    {
      "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": [
            "missiles"
          ],
          "requires": [
            {
              "heatFrames": 50
            }
          ]
        },
        {
          "types": [
            "super"
          ],
          "requires": []
        },
        {
          "types": [
            "powerbomb"
          ],
          "requires": [
            {
              "heatFrames": 110
            }
          ]
        }
      ]
    },
    {
      "link": [
        2,
        2
      ],
      "name": "Base (Come In Normally)",
      "entranceCondition": {
        "comeInNormally": {}
      },
      "requires": []
    }
  ],
  "notables": [],
  "nextStratId": 13,
  "nextNotableId": 1
}