From e05ca24f40e19c774a96c00c1fe4d5d93219d92d Mon Sep 17 00:00:00 2001 From: kjbranch Date: Thu, 14 Aug 2025 00:17:47 -0600 Subject: [PATCH 1/2] Add canComplexGMode to Crocomire and West Norfair --- region/norfair/crocomire/Cosine Room.json | 11 +++++------ region/norfair/crocomire/Crocomire's Room.json | 3 ++- region/norfair/crocomire/Grapple Beam Room.json | 1 + region/norfair/crocomire/Indiana Jones Room.json | 9 +++++---- .../crocomire/Post Crocomire Farming Room.json | 2 ++ .../crocomire/Post Crocomire Power Bomb Room.json | 1 + region/norfair/west/Business Center.json | 9 ++++++++- region/norfair/west/Crocomire Escape.json | 12 +++++++++++- region/norfair/west/Crocomire Speedway.json | 3 ++- region/norfair/west/Crumble Shaft.json | 1 + region/norfair/west/Hi Jump Energy Tank Room.json | 8 ++++++-- region/norfair/west/Ice Beam Gate Room.json | 1 + region/norfair/west/Ice Beam Tutorial Room.json | 1 + 13 files changed, 46 insertions(+), 16 deletions(-) diff --git a/region/norfair/crocomire/Cosine Room.json b/region/norfair/crocomire/Cosine Room.json index f71e128172..037aa35948 100644 --- a/region/norfair/crocomire/Cosine Room.json +++ b/region/norfair/crocomire/Cosine Room.json @@ -143,6 +143,7 @@ } }, "requires": [ + "canComplexGMode", {"or": [ {"and": [ "h_artificialMorphIBJ", @@ -182,12 +183,9 @@ } }, "requires": [ + "canTrickyGMode", "h_artificialMorphBombHorizontally", - {"ammo": {"type": "PowerBomb", "count": 6}}, - {"or": [ - "canTrickyGMode", - {"acidFrames": 212} - ]} + {"ammo": {"type": "PowerBomb", "count": 6}} ], "collectsItems": [2], "flashSuitChecked": true, @@ -205,7 +203,8 @@ "devNote": [ "The requirements here are to get the item and return, as the item cannot be used during the return.", "It appears that there is virtually no risk in overloading PLMs - the left runway isn't close enough, and even placing two on each pillar will not overload PLMs.", - "FIXME: Getting extra horizontal distance from the bomb needs a tech." + "FIXME: Getting extra horizontal distance from the bomb needs a tech.", + "FIXME: It is possible to CF then boost across without worrying much about the acid, then reserve trigger to exit G-mode on the left side of the room (this takes 212 acid frames)." ] }, { diff --git a/region/norfair/crocomire/Crocomire's Room.json b/region/norfair/crocomire/Crocomire's Room.json index 40f79ed5c8..3d4ffbfb12 100644 --- a/region/norfair/crocomire/Crocomire's Room.json +++ b/region/norfair/crocomire/Crocomire's Room.json @@ -440,8 +440,9 @@ { "id": 20, "link": [3, 4], - "name": "G-mode Morph Ceiling Bomb Jump", + "name": "G-Mode Morph Ceiling Bomb Jump", "requires": [ + "canEnterGMode", "h_artificialMorphLongCeilingBombJump", "canBeVeryPatient", {"obstaclesCleared": ["A"]} diff --git a/region/norfair/crocomire/Grapple Beam Room.json b/region/norfair/crocomire/Grapple Beam Room.json index 45259cce28..18aac8ee09 100644 --- a/region/norfair/crocomire/Grapple Beam Room.json +++ b/region/norfair/crocomire/Grapple Beam Room.json @@ -333,6 +333,7 @@ } }, "requires": [ + "canComplexGMode", "canLongXRayClimb" ], "bypassesDoorShell": true, diff --git a/region/norfair/crocomire/Indiana Jones Room.json b/region/norfair/crocomire/Indiana Jones Room.json index e39d4971b1..4b4791f030 100644 --- a/region/norfair/crocomire/Indiana Jones Room.json +++ b/region/norfair/crocomire/Indiana Jones Room.json @@ -1008,6 +1008,7 @@ "comesThroughToilet": "any" }, "requires": [ + "canComplexGMode", "canManipulateMellas", {"or": [ "h_preciseIceClip", @@ -1652,7 +1653,7 @@ "link": [6, 2], "name": "G-Mode Morph Mella Ice Clip, Door Lock Skip", "requires": [ - "canEnterGMode", + "canComplexGMode", "canManipulateMellas", {"or": [ "h_preciseIceClip", @@ -1714,7 +1715,7 @@ "link": [7, 1], "name": "G-Mode Morph Spring Ball, IBJ, Remote Acquire", "requires": [ - "canEnterGMode", + "canComplexGMode", "h_artificialMorphLongIBJ", "h_artificialMorphJumpIntoIBJ" ], @@ -1727,7 +1728,7 @@ "link": [7, 1], "name": "G-Mode Morph Long Diagonal Bomb Jump, Remote Acquire", "requires": [ - "canEnterGMode", + "canComplexGMode", {"notable": "G-Mode Morph Long Diagonal Bomb Jump"}, "h_artificialMorphDiagonalBombJump", "h_artificialMorphLongIBJ" @@ -1741,7 +1742,7 @@ "link": [7, 2], "name": "G-Mode Morph, IBJ, Remote Acquire", "requires": [ - "canEnterGMode", + "canComplexGMode", "h_artificialMorphLongIBJ" ], "collectsItems": [3], diff --git a/region/norfair/crocomire/Post Crocomire Farming Room.json b/region/norfair/crocomire/Post Crocomire Farming Room.json index 867172cf69..6d053d459b 100644 --- a/region/norfair/crocomire/Post Crocomire Farming Room.json +++ b/region/norfair/crocomire/Post Crocomire Farming Room.json @@ -1201,6 +1201,7 @@ } }, "requires": [ + "canComplexGMode", "canXRayClimb" ], "flashSuitChecked": true, @@ -1217,6 +1218,7 @@ } }, "requires": [ + "canComplexGMode", "canXRayClimb" ], "bypassesDoorShell": true, diff --git a/region/norfair/crocomire/Post Crocomire Power Bomb Room.json b/region/norfair/crocomire/Post Crocomire Power Bomb Room.json index 39bb398f87..1437cf1fe9 100644 --- a/region/norfair/crocomire/Post Crocomire Power Bomb Room.json +++ b/region/norfair/crocomire/Post Crocomire Power Bomb Room.json @@ -84,6 +84,7 @@ } }, "requires": [ + "canComplexGMode", "h_heatedDirectGModeLeaveSameDoor" ], "collectsItems": [2], diff --git a/region/norfair/west/Business Center.json b/region/norfair/west/Business Center.json index 353e84ab62..b753a006bf 100644 --- a/region/norfair/west/Business Center.json +++ b/region/norfair/west/Business Center.json @@ -782,6 +782,7 @@ } }, "requires": [ + "canComplexGMode", "canXRayClimb" ], "bypassesDoorShell": true, @@ -1554,6 +1555,7 @@ } }, "requires": [ + "canComplexGMode", "canLongXRayClimb" ], "bypassesDoorShell": true, @@ -1617,6 +1619,7 @@ } }, "requires": [ + "canComplexGMode", "canXRayClimb" ], "bypassesDoorShell": true, @@ -2195,7 +2198,8 @@ "morphed": false } }, - "flashSuitChecked": true + "flashSuitChecked": true, + "devNote": "FIXME: There could be a 4->7 variant with an ice clip or CF clip through the shot blocks." }, { "id": 75, @@ -2416,6 +2420,7 @@ } }, "requires": [ + "canComplexGMode", "canXRayClimb" ], "bypassesDoorShell": true, @@ -2549,6 +2554,7 @@ } }, "requires": [ + "canComplexGMode", "canLongXRayClimb", "canBePatient" ], @@ -3179,6 +3185,7 @@ } }, "requires": [ + "canComplexGMode", "canLongXRayClimb" ], "bypassesDoorShell": true, diff --git a/region/norfair/west/Crocomire Escape.json b/region/norfair/west/Crocomire Escape.json index a5c49d78d1..77f2d507b4 100644 --- a/region/norfair/west/Crocomire Escape.json +++ b/region/norfair/west/Crocomire Escape.json @@ -165,11 +165,18 @@ "HiJump", "SpeedBooster" ]}, - "h_lavaProof" + {"and": [ + "canComplexGMode", + "h_lavaProof" + ]} ]}, "h_heatedGModeOpenDifferentDoor" ], "flashSuitChecked": true, + "note": [ + "Go over the plateau, or under it with lava protection.", + "To avoid the Dragon's fireballs, be sure to kill it quickly, overload the drops with the Dragons on the left first, or exit G-mode." + ], "devNote": "FIXME: Damage through the lava could work, or maybe a Geruta damage boost. (Energy from immobile or CF)" }, { @@ -740,6 +747,7 @@ } }, "requires": [ + "canComplexGMode", "canTrickyUseFrozenEnemies", "canTrickyDodgeEnemies", {"or": [ @@ -763,6 +771,7 @@ } }, "requires": [ + "canComplexGMode", {"or": [ "SpaceJump", {"and": [ @@ -815,6 +824,7 @@ } }, "requires": [ + "canComplexGMode", {"or": [ "h_artificialMorphLongIBJ", "h_artificialMorphJumpIntoIBJ" diff --git a/region/norfair/west/Crocomire Speedway.json b/region/norfair/west/Crocomire Speedway.json index 91dbaa195b..1a2658860b 100644 --- a/region/norfair/west/Crocomire Speedway.json +++ b/region/norfair/west/Crocomire Speedway.json @@ -2200,7 +2200,7 @@ "ScrewAttack", {"ammo": {"type": "Missile", "count": 3}}, {"ammo": {"type": "Super", "count": 3}}, - "canInsaneJump" + "canComplexGMode" ]} ], "flashSuitChecked": true, @@ -2216,6 +2216,7 @@ "link": [7, 2], "name": "G-Mode, Fix Camera, Speedy Exit", "requires": [ + "canComplexGMode", "h_heatedGMode", "h_getBlueSpeedMaxRunway", {"heatFrames": 375} diff --git a/region/norfair/west/Crumble Shaft.json b/region/norfair/west/Crumble Shaft.json index b5d1c53fd1..f64a2ebc73 100644 --- a/region/norfair/west/Crumble Shaft.json +++ b/region/norfair/west/Crumble Shaft.json @@ -589,6 +589,7 @@ } }, "requires": [ + "canComplexGMode", "h_heatProof", "canLongXRayClimb", "canBePatient" diff --git a/region/norfair/west/Hi Jump Energy Tank Room.json b/region/norfair/west/Hi Jump Energy Tank Room.json index 1c5c155186..8918316d45 100644 --- a/region/norfair/west/Hi Jump Energy Tank Room.json +++ b/region/norfair/west/Hi Jump Energy Tank Room.json @@ -262,6 +262,7 @@ } }, "requires": [ + "canComplexGMode", "h_artificialMorphSpringBallBombJump", "h_additionalBomb" ], @@ -418,6 +419,7 @@ } }, "requires": [ + "canComplexGMode", {"or": [ "h_artificialMorphIBJ", {"and": [ @@ -521,6 +523,7 @@ } }, "requires": [ + "canComplexGMode", {"itemNotCollectedAtNode": 3}, "canRiskPermanentLossOfAccess", {"or": [ @@ -788,6 +791,7 @@ } }, "requires": [ + "canComplexGMode", "h_artificialMorphMovement" ], "collectsItems": [3], @@ -855,7 +859,7 @@ "link": [4, 1], "name": "Remote Acquire", "requires": [ - "canEnterGMode", + "canComplexGMode", {"obstaclesCleared": ["D"]} ], "collectsItems": [4], @@ -879,7 +883,7 @@ "link": [4, 3], "name": "Remote Acquire", "requires": [ - "canEnterGMode", + "canComplexGMode", {"obstaclesCleared": ["D"]} ], "collectsItems": [4], diff --git a/region/norfair/west/Ice Beam Gate Room.json b/region/norfair/west/Ice Beam Gate Room.json index 4a98c63dd6..2cd5d30ff1 100644 --- a/region/norfair/west/Ice Beam Gate Room.json +++ b/region/norfair/west/Ice Beam Gate Room.json @@ -381,6 +381,7 @@ } }, "requires": [ + "canComplexGMode", "canLongXRayClimb" ], "bypassesDoorShell": true, diff --git a/region/norfair/west/Ice Beam Tutorial Room.json b/region/norfair/west/Ice Beam Tutorial Room.json index 3830d7d212..9c848b7fe5 100644 --- a/region/norfair/west/Ice Beam Tutorial Room.json +++ b/region/norfair/west/Ice Beam Tutorial Room.json @@ -532,6 +532,7 @@ } }, "requires": [ + "canComplexGMode", "Gravity", "h_artificialMorphPowerBomb", "canNeutralDamageBoost", From f925ff6652c680525b23fed4dcef0ab215c55de9 Mon Sep 17 00:00:00 2001 From: kjbranch Date: Thu, 14 Aug 2025 09:42:50 -0600 Subject: [PATCH 2/2] Cosine remove fixme for impossible strat --- region/norfair/crocomire/Cosine Room.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/region/norfair/crocomire/Cosine Room.json b/region/norfair/crocomire/Cosine Room.json index 037aa35948..0f684bf62f 100644 --- a/region/norfair/crocomire/Cosine Room.json +++ b/region/norfair/crocomire/Cosine Room.json @@ -203,8 +203,7 @@ "devNote": [ "The requirements here are to get the item and return, as the item cannot be used during the return.", "It appears that there is virtually no risk in overloading PLMs - the left runway isn't close enough, and even placing two on each pillar will not overload PLMs.", - "FIXME: Getting extra horizontal distance from the bomb needs a tech.", - "FIXME: It is possible to CF then boost across without worrying much about the acid, then reserve trigger to exit G-mode on the left side of the room (this takes 212 acid frames)." + "FIXME: Getting extra horizontal distance from the bomb needs a tech." ] }, {