From c9ba9e88b553e6b98115d66e5e5a24fba82d72ad Mon Sep 17 00:00:00 2001 From: Michael McKenzie Date: Fri, 8 Aug 2025 04:25:32 -0230 Subject: [PATCH 1/3] Remaining UNEast Farms --- region/norfair/east/Rising Tide.json | 139 ++++++++++++++- region/norfair/east/Single Chamber.json | 163 +++++++++++++++--- region/norfair/east/Speed Booster Hall.json | 113 +++++++++++- .../east/Upper Norfair Farming Room.json | 22 ++- 4 files changed, 398 insertions(+), 39 deletions(-) diff --git a/region/norfair/east/Rising Tide.json b/region/norfair/east/Rising Tide.json index 9804b6daf9..84b5e80751 100644 --- a/region/norfair/east/Rising Tide.json +++ b/region/norfair/east/Rising Tide.json @@ -94,12 +94,78 @@ "name": "Sova Farm", "requires": [ "h_heatProof", - {"resetRoom": {"nodes": [1, 2]}}, - {"partialRefill": {"type": "Energy", "limit": 200}}, - {"partialRefill": {"type": "Super", "limit": 3}}, - {"partialRefill": {"type": "Missile", "limit": 10}} + {"resetRoom": {"nodes": [1]}}, + {"cycleFrames": 680}, + {"or": [ + "SpaceJump", + {"cycleFrames": 40} + ]}, + {"or": [ + "Wave", + "Spazer", + "Plasma", + {"cycleFrames": 360} + ]} + ], + "farmCycleDrops": [{"enemy": "Sova", "count": 4}], + "devNote": "Add canTrickyJump for catching the Sovas on their first cycles." + }, + { + "link": [1, 1], + "name": "Dragon and Sova Farm", + "requires": [ + {"resetRoom": {"nodes": [1]}}, + "h_heatProof", + "Plasma", + {"or": [ + {"and": [ + "h_lavaProof", + {"or": [ + {"and": [ + "Morph", + {"cycleFrames": 1170} + ]}, + {"cycleFrames": 1500} + ]} + ]}, + {"and": [ + "SpaceJump", + {"cycleFrames": 1440} + ]}, + {"and": [ + "Grapple", + {"cycleFrames": 1800} + ]} + ]} + ], + "farmCycleDrops": [ + {"enemy": "Sova", "count": 5}, + {"enemy": "Dragon", "count": 4} ] }, + { + "link": [1, 1], + "name": "Squeep Farm", + "requires": [ + "h_heatProof", + "ScrewAttack", + {"or": [ + {"and": [ + {"resetRoom": {"nodes": [1]}}, + {"cycleFrames": 340} + ]}, + {"and": [ + {"resetRoom": {"nodes": [2]}}, + {"cycleFrames": 900}, + {"or": [ + "SpaceJump", + {"cycleFrames": 320} + ]} + ]} + ]} + ], + "farmCycleDrops": [{"enemy": "Squeept", "count": 2}] + }, { "id": 3, "link": [1, 1], @@ -700,6 +766,71 @@ } } }, + { + "link": [2, 2], + "name": "Sova Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [2]}}, + {"cycleFrames": 720}, + {"or": [ + "SpaceJump", + {"cycleFrames": 30} + ]}, + {"or": [ + "Wave", + "Spazer", + "Plasma", + {"and": [ + "canFarmWhileShooting", + {"cycleFrames": 30} + ]} + ]}, + {"or": [ + "canTrickyJump", + {"cycleFrames": 60} + ]} + ], + "farmCycleDrops": [{"enemy": "Sova", "count": 4}], + "devNote": "Add canTrickyJump for catching the Sovas on their first cycles." + }, + { + "link": [2, 2], + "name": "Dragon and Sova Farm", + "requires": [ + {"resetRoom": {"nodes": [2]}}, + "h_heatProof", + "Plasma", + {"or": [ + {"and": [ + "h_lavaProof", + {"or": [ + {"and": [ + "Morph", + {"cycleFrames": 930} + ]}, + {"and": [ + "SpaceJump", + {"cycleFrames": 1100} + ]}, + {"cycleFrames": 1290} + ]} + ]}, + {"and": [ + "SpaceJump", + {"cycleFrames": 1230} + ]}, + {"and": [ + "Grapple", + {"cycleFrames": 1680} + ]} + ]} + ], + "farmCycleDrops": [ + {"enemy": "Sova", "count": 5}, + {"enemy": "Dragon", "count": 4} + ] + }, { "id": 25, "link": [2, 2], diff --git a/region/norfair/east/Single Chamber.json b/region/norfair/east/Single Chamber.json index 91f9eb542b..4539576a31 100644 --- a/region/norfair/east/Single Chamber.json +++ b/region/norfair/east/Single Chamber.json @@ -220,6 +220,41 @@ } } }, + { + "id": 61, + "link": [1, 1], + "name": "Alcoon and Multiviola Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [1]}}, + {"or": [ + "Plasma", + "ScrewAttack", + {"and": [ + "Wave", + {"cycleFrames": 90} + ]}, + {"and": [ + "Spazer", + {"cycleFrames": 205} + ]}, + {"and": [ + "canDodgeWhileShooting", + {"cycleFrames": 315} + ]} + ]}, + {"or": [ + "canWalljump", + "HiJump", + "h_crouchJumpDownGrab" + ]}, + {"cycleFrames": 285} + ], + "farmCycleDrops": [ + {"enemy": "Multiviola", "count": 1}, + {"enemy": "Alcoon", "count": 2} + ] + }, { "id": 2, "link": [1, 1], @@ -655,6 +690,38 @@ } } }, + { + "link": [2, 2], + "name": "Alcoon and Multiviola Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [2]}}, + {"or": [ + "ScrewAttack", + {"and": [ + "Plasma", + {"cycleFrames": 25} + ]}, + {"and": [ + "Wave", + {"cycleFrames": 40} + ]}, + {"and": [ + "Spazer", + {"cycleFrames": 100} + ]}, + {"and": [ + "canDodgeWhileShooting", + {"cycleFrames": 220} + ]} + ]}, + {"cycleFrames": 245} + ], + "farmCycleDrops": [ + {"enemy": "Multiviola", "count": 1}, + {"enemy": "Alcoon", "count": 1} + ] + }, { "id": 11, "link": [2, 2], @@ -1320,6 +1387,40 @@ } } }, + { + "link": [3, 3], + "name": "Alcoon and Multiviola Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [3]}}, + {"or": [ + "Plasma", + "ScrewAttack", + {"and": [ + "Wave", + {"cycleFrames": 90} + ]}, + {"and": [ + "Spazer", + {"cycleFrames": 90} + ]}, + {"and": [ + "canDodgeWhileShooting", + {"cycleFrames": 285} + ]} + ]}, + {"or": [ + "canWalljump", + "HiJump", + "h_crouchJumpDownGrab" + ]}, + {"cycleFrames": 210} + ], + "farmCycleDrops": [ + {"enemy": "Multiviola", "count": 1}, + {"enemy": "Alcoon", "count": 1} + ] + }, { "id": 28, "link": [3, 3], @@ -1929,6 +2030,44 @@ } } }, + { + "link": [4, 4], + "name": "Alcoon and Multiviola Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [4]}}, + {"or": [ + "Plasma", + "ScrewAttack", + {"and": [ + "Wave", + {"cycleFrames": 20} + ]}, + {"and": [ + "Spazer", + {"cycleFrames": 90} + ]}, + {"and": [ + "canDodgeWhileShooting", + {"cycleFrames": 260}, + {"or": [ + "canFarmWhileShooting", + {"cycleFrames": 90} + ]} + ]} + ]}, + {"or": [ + "canWalljump", + "HiJump", + "h_crouchJumpDownGrab" + ]}, + {"cycleFrames": 450} + ], + "farmCycleDrops": [ + {"enemy": "Multiviola", "count": 1}, + {"enemy": "Alcoon", "count": 2} + ] + }, { "id": 43, "link": [4, 4], @@ -2287,30 +2426,6 @@ "requires": [{"heatFrames": 20}] } ] - }, - { - "id": 61, - "link": [6, 6], - "name": "Alcoon and Multiviola Farm", - "requires": [ - "h_heatProof", - {"or": [ - "canDodgeWhileShooting", - "ScrewAttack", - "Wave", - "Ice", - "Spazer", - "Plasma" - ]}, - {"or": [ - "canWalljump", - "HiJump", - "h_crouchJumpDownGrab" - ]}, - {"resetRoom": {"nodes": [1, 2, 3, 4]}}, - {"partialRefill": {"type": "Missile", "limit": 12}}, - {"refill": ["PowerBomb"]} - ] } ], "notables": [], diff --git a/region/norfair/east/Speed Booster Hall.json b/region/norfair/east/Speed Booster Hall.json index b6497659ab..b204a7c83a 100644 --- a/region/norfair/east/Speed Booster Hall.json +++ b/region/norfair/east/Speed Booster Hall.json @@ -124,14 +124,53 @@ "h_heatProof", {"resetRoom": {"nodes": [1]}}, {"or": [ - "ScrewAttack", - "Ice", - "Spazer", - "Wave", - "Plasma" + "SpeedBooster", + {"cycleFrames": 225} ]}, - {"partialRefill": {"type": "Energy", "limit": 140}}, - {"partialRefill": {"type": "Missile", "limit": 10}} + {"or": [ + {"and": [ + "Plasma", + {"cycleFrames": 790} + ]}, + {"and": [ + "Spazer", + {"cycleFrames": 1020} + ]}, + {"and": [ + "Wave", + {"cycleFrames": 960} + ]}, + {"and": [ + "Ice", + {"cycleFrames": 930} + ]}, + {"and": [ + "canPseudoScrew", + {"cycleFrames": 930} + ]}, + {"and": [ + "canDodgeWhileShooting", + {"cycleFrames": 1350} + ]} + ]} + ], + "farmCycleDrops": [ + {"enemy": "Geruta", "count": 3} + ], + "resetsObstacles": ["A"] + }, + { + "link": [1, 1], + "name": "Geruta and Metaree Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [1]}}, + "ScrewAttack", + {"cycleFrames": 1140} + ], + "farmCycleDrops": [ + {"enemy": "Metaree", "count": 2}, + {"enemy": "Geruta", "count": 3} ], "resetsObstacles": ["A"] }, @@ -753,6 +792,66 @@ } } }, + { + "link": [2, 2], + "name": "Geruta Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [2]}}, + {"or": [ + "SpeedBooster", + {"cycleFrames": 170} + ]}, + {"or": [ + {"and": [ + "Plasma", + {"cycleFrames": 790} + ]}, + {"and": [ + "Spazer", + {"cycleFrames": 1290} + ]}, + {"and": [ + "Wave", + {"cycleFrames": 1140} + ]}, + {"and": [ + "Ice", + {"cycleFrames": 1320} + ]}, + {"and": [ + "ScrewAttack", + {"cycleFrames": 1140} + ]}, + {"and": [ + "canPseudoScrew", + {"cycleFrames": 1200} + ]}, + {"and": [ + "canDodgeWhileShooting", + {"cycleFrames": 1500} + ]} + ]}, + {"or": [ + "canInsaneJump", + {"and": [ + "canTrickyJump", + "canWalljump", + {"cycleFrames": 60} + ]}, + {"and": [ + "h_lavaProof", + {"cycleFrames": 180} + ]} + + ]} + ], + "farmCycleDrops": [ + {"enemy": "Geruta", "count": 3} + ], + "resetsObstacles": ["A"], + "devNote": "FIXME: The rising lava event may make it impossible to reset at 2." + }, { "id": 32, "link": [2, 2], diff --git a/region/norfair/east/Upper Norfair Farming Room.json b/region/norfair/east/Upper Norfair Farming Room.json index 2ccce374b7..cb6a8b7a21 100644 --- a/region/norfair/east/Upper Norfair Farming Room.json +++ b/region/norfair/east/Upper Norfair Farming Room.json @@ -1206,9 +1206,8 @@ ] }, { - "id": 45, "link": [5, 5], - "name": "Gamet Farm", + "name": "Approach Farm", "requires": [ {"or": [ {"and": [ @@ -1217,8 +1216,23 @@ ]}, {"heatFrames": 50} ]}, - {"refill": ["Energy", "Missile", "Super", "PowerBomb"]} - ] + {"partialRefill": {"type": "RegularEnergy", "limit": 50}} + ], + "flashSuitChecked": true, + "note": "Regain some energy in order to use the Gamet Farm." + }, + { + "id": 45, + "link": [5, 5], + "name": "Gamet Farm", + "requires": [ + {"simpleHeatFrames": 80}, + {"heatFrames": 30}, + {"simpleCycleFrames": 80}, + {"cycleFrames": 30} + ], + "farmCycleDrops": [{"enemy": "Gamet", "count": 5}], + "flashSuitChecked": true } ], "notables": [ From 9be0c501a40e825ae8e99e7bcf4d82666b1d5864 Mon Sep 17 00:00:00 2001 From: Michael McKenzie Date: Fri, 8 Aug 2025 04:34:31 -0230 Subject: [PATCH 2/3] Tidy up --- region/norfair/east/Rising Tide.json | 3 +-- region/norfair/east/Speed Booster Hall.json | 1 - 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/region/norfair/east/Rising Tide.json b/region/norfair/east/Rising Tide.json index 84b5e80751..d2770c3afd 100644 --- a/region/norfair/east/Rising Tide.json +++ b/region/norfair/east/Rising Tide.json @@ -107,8 +107,7 @@ {"cycleFrames": 360} ]} ], - "farmCycleDrops": [{"enemy": "Sova", "count": 4}], - "devNote": "Add canTrickyJump for catching the Sovas on their first cycles." + "farmCycleDrops": [{"enemy": "Sova", "count": 4}] }, { "link": [1, 1], diff --git a/region/norfair/east/Speed Booster Hall.json b/region/norfair/east/Speed Booster Hall.json index b204a7c83a..9431c29c85 100644 --- a/region/norfair/east/Speed Booster Hall.json +++ b/region/norfair/east/Speed Booster Hall.json @@ -843,7 +843,6 @@ "h_lavaProof", {"cycleFrames": 180} ]} - ]} ], "farmCycleDrops": [ From d6f37921cb6a0ed3f526bcd8081b89de4f98a704 Mon Sep 17 00:00:00 2001 From: Michael McKenzie Date: Sun, 10 Aug 2025 02:07:23 -0230 Subject: [PATCH 3/3] Add more single chamber farms --- region/norfair/east/Rising Tide.json | 2 +- region/norfair/east/Single Chamber.json | 50 +++++++++++++++++++++++-- 2 files changed, 48 insertions(+), 4 deletions(-) diff --git a/region/norfair/east/Rising Tide.json b/region/norfair/east/Rising Tide.json index d2770c3afd..4422606a67 100644 --- a/region/norfair/east/Rising Tide.json +++ b/region/norfair/east/Rising Tide.json @@ -144,7 +144,7 @@ }, { "link": [1, 1], - "name": "Squeep Farm", + "name": "Squeept Farm", "requires": [ "h_heatProof", "ScrewAttack", diff --git a/region/norfair/east/Single Chamber.json b/region/norfair/east/Single Chamber.json index 4539576a31..b4b1a4d928 100644 --- a/region/norfair/east/Single Chamber.json +++ b/region/norfair/east/Single Chamber.json @@ -220,6 +220,24 @@ } } }, + { + "link": [1, 1], + "name": "Single Multiviola Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [1]}}, + {"cycleFrames": 130}, + {"or": [ + "Plasma", + "Wave", + "Spazer", + {"cycleFrames": 30} + ]} + ], + "farmCycleDrops": [ + {"enemy": "Multiviola", "count": 1} + ] + }, { "id": 61, "link": [1, 1], @@ -246,7 +264,11 @@ {"or": [ "canWalljump", "HiJump", - "h_crouchJumpDownGrab" + "h_crouchJumpDownGrab", + {"and": [ + "SpaceJump", + {"cycleFrames": 20} + ]} ]}, {"cycleFrames": 285} ], @@ -1412,7 +1434,8 @@ {"or": [ "canWalljump", "HiJump", - "h_crouchJumpDownGrab" + "h_crouchJumpDownGrab", + "SpaceJump" ]}, {"cycleFrames": 210} ], @@ -2059,7 +2082,8 @@ {"or": [ "canWalljump", "HiJump", - "h_crouchJumpDownGrab" + "h_crouchJumpDownGrab", + "SpaceJump" ]}, {"cycleFrames": 450} ], @@ -2068,6 +2092,26 @@ {"enemy": "Alcoon", "count": 2} ] }, + { + "link": [4, 4], + "name": "Single Multiviola Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [4]}}, + {"cycleFrames": 200}, + "canCameraManip", + {"or": [ + "Plasma", + "Wave", + "Spazer", + {"cycleFrames": 30} + ]} + ], + "farmCycleDrops": [ + {"enemy": "Multiviola", "count": 1} + ], + "note": "Jump and aim down two to three times to activate the Multiviola." + }, { "id": 43, "link": [4, 4],