From f613d6b4e9640682a2bd26d5e888f72cd4248369 Mon Sep 17 00:00:00 2001 From: Michael McKenzie Date: Wed, 30 Jul 2025 13:46:14 -0230 Subject: [PATCH 1/2] UN East farms part 1 --- region/norfair/east/Bat Cave.json | 50 ++-- region/norfair/east/Bubble Mountain.json | 249 +++++++++++++++++++- region/norfair/east/Cathedral Entrance.json | 122 ++++++++++ 3 files changed, 392 insertions(+), 29 deletions(-) diff --git a/region/norfair/east/Bat Cave.json b/region/norfair/east/Bat Cave.json index e4cc0e1811..9f408eb064 100644 --- a/region/norfair/east/Bat Cave.json +++ b/region/norfair/east/Bat Cave.json @@ -120,6 +120,17 @@ ], "flashSuitChecked": true }, + { + "link": [1, 1], + "name": "Skree Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [1]}}, + {"cycleFrames": 300} + ], + "resetsObstacles": ["A"], + "farmCycleDrops": [{"enemy": "Skree", "count": 3}] + }, { "id": 3, "link": [1, 2], @@ -533,11 +544,16 @@ "link": [2, 3], "name": "Base", "requires": [ - {"heatFrames": 10} + {"heatFrames": 15}, + {"or": [ + "canPauseAbuse", + {"heatFrames": 50} + ]}, + {"partialRefill": {"type": "Energy", "limit": 50}} ], "devNote": [ - "Heat frames here are artifically lower to allow using canPauseAbuse on the farm.", - "This is compensated for by extra heat frames on the farm itself as an alternative to canPauseAbuse." + "The first farm is built into this strat to allow for the pause abuse.", + "Leniency replaces the need for a tech to fire an accurate shot to hit the Gamets." ] }, { @@ -586,15 +602,12 @@ "name": "Gamet Farm", "requires": [ {"obstaclesNotCleared": ["A"]}, - {"or": [ - {"and": [ - {"heatFrames": 0}, - "canPauseAbuse" - ]}, - {"heatFrames": 50} - ]}, - {"refill": ["Energy", "Missile", "Super", "PowerBomb"]} - ] + {"simpleHeatFrames": 90}, + {"heatFrames": 20}, + {"simpleCycleFrames": 90}, + {"cycleFrames": 20} + ], + "farmCycleDrops": [{"enemy": "Gamet", "count": 5}] }, { "id": 23, @@ -608,15 +621,12 @@ "h_useMorphBombs", "Grapple" ]}, - {"or": [ - {"and": [ - {"heatFrames": 0}, - "canPauseAbuse" - ]}, - {"heatFrames": 50} - ]}, - {"refill": ["Energy", "Missile", "Super", "PowerBomb"]} + {"simpleHeatFrames": 40}, + {"heatFrames": 100}, + {"simpleCycleFrames": 40}, + {"cycleFrames": 100} ], + "farmCycleDrops": [{"enemy": "Gamet", "count": 5}], "note": "When off-camera, the Gamets still spawn but cannot be destroyed with beams or other projectiles." } ], diff --git a/region/norfair/east/Bubble Mountain.json b/region/norfair/east/Bubble Mountain.json index 03d87bed02..41c47449a0 100644 --- a/region/norfair/east/Bubble Mountain.json +++ b/region/norfair/east/Bubble Mountain.json @@ -391,6 +391,17 @@ ], "flashSuitChecked": true }, + { + "link": [1, 1], + "name": "Waver Farm", + "requires": [ + {"resetRoom": {"nodes": [1]}}, + {"cycleFrames": 80} + ], + "resetsObstacles": ["A"], + "farmCycleDrops": [{"enemy": "Waver", "count": 1}], + "flashSuitChecked": true + }, { "id": 4, "link": [1, 1], @@ -2452,6 +2463,24 @@ "clearsObstacles": ["A"], "flashSuitChecked": true }, + { + "link": [4, 4], + "name": "Single Sova Farm", + "requires": [ + {"or": [ + {"and": [ + {"resetRoom": {"nodes": [4]}}, + {"cycleFrames": 155} + ]}, + {"and": [ + {"resetRoom": {"nodes": [5]}}, + {"cycleFrames": 180} + ]} + ]} + ], + "resetsObstacles": ["A"], + "farmCycleDrops": [{"enemy": "Sova", "count": 1}] + }, { "id": 76, "link": [4, 4], @@ -3800,12 +3829,41 @@ "link": [7, 7], "name": "Cacatac and Waver Farm", "requires": [ - {"resetRoom": {"nodes": [6, 7]}}, - {"partialRefill": {"type": "Energy", "limit": 160}}, - {"partialRefill": {"type": "Super", "limit": 5}}, - {"partialRefill": {"type": "Missile", "limit": 6}} + {"or": [ + {"and": [ + {"resetRoom": {"nodes": [1]}}, + {"or": [ + {"and": [ + "Grapple", + {"cycleFrames": 300} + ]}, + {"and": [ + "SpaceJump", + {"cycleFrames": 390} + ]}, + {"and": [ + "HiJump", + "canTrickyJump", + "canTrickyWalljump", + {"cycleFrames": 690} + ]} + ]} + ]}, + {"and": [ + {"resetRoom": {"nodes": [6]}}, + {"cycleFrames": 370} + ]}, + {"and": [ + {"resetRoom": {"nodes": [7]}}, + {"cycleFrames": 360} + ]} + ]} ], - "resetsObstacles": ["A"] + "resetsObstacles": ["A"], + "farmCycleDrops": [ + {"enemy": "Cacatac", "count": 1}, + {"enemy": "Waver", "count": 1} + ] }, { "id": 133, @@ -4152,11 +4210,184 @@ "link": [9, 9], "name": "Waver Farm", "requires": [ - {"resetRoom": {"nodes": [2, 3]}}, - {"partialRefill": {"type": "Energy", "limit": 100}}, - {"partialRefill": {"type": "Missile", "limit": 6}} + {"or": [ + {"and": [ + {"resetRoom": {"nodes": [2]}}, + {"cycleFrames": 660} + ]}, + {"and": [ + {"resetRoom": {"nodes": [3]}}, + {"cycleFrames": 720} + ]} + ]} + ], + "resetsObstacles": ["A"], + "farmCycleDrops": [{"enemy": "Waver", "count": 2}] + }, + { + "link": [9, 9], + "name": "Sova Farm", + "requires": [ + {"or": [ + {"and": [ + {"resetRoom": {"nodes": [1]}}, + {"or": [ + {"and": [ + "SpaceJump", + {"cycleFrames": 1500} + ]}, + {"and": [ + "HiJump", + "canWalljump", + {"cycleFrames": 1320} + ]}, + {"and": [ + "HiJump", + "canSpringBallJumpMidAir", + {"cycleFrames": 1320}, + "h_doubleEquipmentScreenCycleFrames" + ]} + ]} + ]}, + {"and": [ + {"resetRoom": {"nodes": [2]}}, + {"cycleFrames": 1140} + ]}, + {"and": [ + {"resetRoom": {"nodes": [3]}}, + {"cycleFrames": 1140} + ]}, + {"and": [ + {"resetRoom": {"nodes": [4]}}, + {"cycleFrames": 720} + ]}, + {"and": [ + {"resetRoom": {"nodes": [5]}}, + {"cycleFrames": 730} + ]}, + {"and": [ + {"resetRoom": {"nodes": [6]}}, + {"cycleFrames": 1770}, + {"or": [ + "SpaceJump", + {"and": [ + "HiJump", + "canWalljump" + ]} + ]} + ]}, + {"and": [ + {"resetRoom": {"nodes": [7]}}, + {"cycleFrames": 1740}, + {"or": [ + "SpaceJump", + {"and": [ + "HiJump", + "canWalljump" + ]} + ]} + ]} + ]}, + "h_useMorphBombs" + ], + "resetsObstacles": ["A"], + "farmCycleDrops": [{"enemy": "Sova", "count": 3}] + }, + { + "link": [9, 9], + "name": "Cacatac and Waver Farm", + "requires": [ + {"or": [ + {"resetRoom": {"nodes": [2]}}, + {"and": [ + {"resetRoom": {"nodes": [3]}}, + {"cycleFrames": 60} + ]} + ]}, + {"or": [ + {"and": [ + "SpaceJump", + {"cycleFrames": 600} + ]}, + {"and": [ + "HiJump", + "canTrickyJump", + "canTrickyWalljump", + {"cycleFrames": 660} + ]} + ]} + ], + "resetsObstacles": ["A"], + "farmCycleDrops": [ + {"enemy": "Cacatac", "count": 1}, + {"enemy": "Waver", "count": 2} + ] + }, + { + "link": [9, 9], + "name": "Ripper Farm", + "requires": [ + "ScrewAttack", + {"or": [ + "canWalljump", + "HiJump", + "SpaceJump", + {"and": [ + "canSpringBallJumpMidAir", + "h_doubleEquipmentScreenCycleFrames", + {"cycleFrames": 20} + ]}, + {"and": [ + "canIBJ", + {"cycleFrames": 600} + ]} + ]}, + {"or": [ + {"and": [ + {"resetRoom": {"nodes": [1]}}, + {"or": [ + {"and": [ + "SpaceJump", + {"cycleFrames": 1050} + ]}, + {"and": [ + "HiJump", + "canWalljump", + {"cycleFrames": 970} + ]}, + {"and": [ + "HiJump", + "canSpringBallJumpMidAir", + {"cycleFrames": 970}, + "h_doubleEquipmentScreenCycleFrames" + ]} + ]} + ]}, + {"and": [ + {"resetRoom": {"nodes": [2]}}, + {"cycleFrames": 840} + ]}, + {"and": [ + {"resetRoom": {"nodes": [3]}}, + {"cycleFrames": 960} + ]}, + {"and": [ + {"resetRoom": {"nodes": [4]}}, + {"cycleFrames": 1800}, + "h_useMorphBombs" + ]}, + {"and": [ + {"resetRoom": {"nodes": [5]}}, + {"cycleFrames": 1800}, + "h_useMorphBombs" + ]} + ]} ], - "resetsObstacles": ["A"] + "resetsObstacles": ["A"], + "farmCycleDrops": [ + {"enemy": "Ripper 2 (red)", "count": 1}, + {"enemy": "Waver", "count": 1} + ] }, { "id": 160, diff --git a/region/norfair/east/Cathedral Entrance.json b/region/norfair/east/Cathedral Entrance.json index 30d61de996..6648ce510b 100644 --- a/region/norfair/east/Cathedral Entrance.json +++ b/region/norfair/east/Cathedral Entrance.json @@ -163,6 +163,64 @@ ], "flashSuitChecked": true }, + { + "link": [1, 1], + "name": "Sova and Dessgeega Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [1]}}, + {"or": [ + {"and": [ + "HiJump", + "canWalljump", + {"cycleFrames": 450} + ]}, + {"and": [ + "canPreciseWalljump", + {"cycleFrames": 600} + ]}, + {"and": [ + "SpaceJump", + {"cycleFrames": 660} + ]}, + {"and": [ + "h_useSpringBall", + {"cycleFrames": 650} + ]}, + {"and": [ + "h_useMorphBombs", + {"cycleFrames": 720} + ]} + ]}, + {"or": [ + "Plasma", + "Spazer", + "Wave", + {"and": [ + "Ice", + {"cycleFrames": 130} + ]}, + {"and": [ + "ScrewAttack", + {"cycleFrames": 100} + ]}, + {"and": [ + "canPseudoScrew", + {"cycleFrames": 130} + ]}, + {"and": [ + "canTrickyJump", + {"cycleFrames": 160} + ]} + ]} + + ], + "farmCycleDrops": [ + {"enemy": "Sova", "count": 2}, + {"enemy": "Sm. Dessgeega", "count": 2} + ], + "flashSuitChecked": true + }, { "id": 3, "link": [1, 1], @@ -465,6 +523,70 @@ ], "flashSuitChecked": true }, + { + "link": [2, 2], + "name": "Sova and Dessgeega Farm", + "requires": [ + "h_heatProof", + {"resetRoom": {"nodes": [2]}}, + {"or": [ + {"and": [ + "HiJump", + {"cycleFrames": 550} + ]}, + {"and": [ + "SpaceJump", + {"cycleFrames": 610} + ]}, + {"and": [ + "h_useSpringBall", + "h_doubleEquipmentScreenCycleFrames", + {"cycleFrames": 600} + ]}, + {"and": [ + "canIBJ", + {"cycleFrames": 1220} + ]}, + {"and": [ + "canJumpIntoIBJ", + {"cycleFrames": 830} + ]} + ]}, + {"or": [ + "Plasma", + {"and": [ + "Spazer", + {"cycleFrames": 50} + ]}, + {"and": [ + "Wave", + {"cycleFrames": 50} + ]}, + {"and": [ + "Ice", + {"cycleFrames": 260} + ]}, + {"and": [ + "ScrewAttack", + {"cycleFrames": 80} + ]}, + {"and": [ + "canPseudoScrew", + {"cycleFrames": 160} + ]}, + {"and": [ + "canTrickyJump", + {"cycleFrames": 540} + ]} + ]} + + ], + "farmCycleDrops": [ + {"enemy": "Sova", "count": 2}, + {"enemy": "Sm. Dessgeega", "count": 2} + ], + "flashSuitChecked": true + }, { "id": 10, "link": [2, 2], From 9adf476648fc3d3d9bdc0d881ed291559a3e7d1c Mon Sep 17 00:00:00 2001 From: Michael McKenzie Date: Thu, 31 Jul 2025 23:50:08 -0230 Subject: [PATCH 2/2] feedback --- region/norfair/east/Bat Cave.json | 2 +- region/norfair/east/Bubble Mountain.json | 10 ++++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/region/norfair/east/Bat Cave.json b/region/norfair/east/Bat Cave.json index 9f408eb064..ab69a26d1e 100644 --- a/region/norfair/east/Bat Cave.json +++ b/region/norfair/east/Bat Cave.json @@ -544,7 +544,7 @@ "link": [2, 3], "name": "Base", "requires": [ - {"heatFrames": 15}, + {"heatFrames": 4}, {"or": [ "canPauseAbuse", {"heatFrames": 50} diff --git a/region/norfair/east/Bubble Mountain.json b/region/norfair/east/Bubble Mountain.json index 41c47449a0..433fce642a 100644 --- a/region/norfair/east/Bubble Mountain.json +++ b/region/norfair/east/Bubble Mountain.json @@ -3843,7 +3843,6 @@ ]}, {"and": [ "HiJump", - "canTrickyJump", "canTrickyWalljump", {"cycleFrames": 690} ]} @@ -4238,7 +4237,7 @@ ]}, {"and": [ "HiJump", - "canWalljump", + "canTrickyWalljump", {"cycleFrames": 1320} ]}, {"and": [ @@ -4272,7 +4271,7 @@ "SpaceJump", {"and": [ "HiJump", - "canWalljump" + "canTrickyWalljump" ]} ]} ]}, @@ -4283,7 +4282,7 @@ "SpaceJump", {"and": [ "HiJump", - "canWalljump" + "canTrickyWalljump" ]} ]} ]} @@ -4311,7 +4310,6 @@ ]}, {"and": [ "HiJump", - "canTrickyJump", "canTrickyWalljump", {"cycleFrames": 660} ]} @@ -4352,7 +4350,7 @@ ]}, {"and": [ "HiJump", - "canWalljump", + "canTrickyWalljump", {"cycleFrames": 970} ]}, {"and": [