diff --git a/region/norfair/east/Bat Cave.json b/region/norfair/east/Bat Cave.json index e4cc0e1811..ab69a26d1e 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": 4}, + {"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..433fce642a 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,40 @@ "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", + "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 +4209,183 @@ "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", + "canTrickyWalljump", + {"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", + "canTrickyWalljump" + ]} + ]} + ]}, + {"and": [ + {"resetRoom": {"nodes": [7]}}, + {"cycleFrames": 1740}, + {"or": [ + "SpaceJump", + {"and": [ + "HiJump", + "canTrickyWalljump" + ]} + ]} + ]} + ]}, + "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", + "canTrickyWalljump", + {"cycleFrames": 660} + ]} + ]} ], - "resetsObstacles": ["A"] + "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", + "canTrickyWalljump", + {"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"], + "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],