Skip to content

Commit 70a6337

Browse files
committed
Red Brinstar farms
1 parent 3c8f239 commit 70a6337

9 files changed

Lines changed: 374 additions & 36 deletions

helpers.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,27 @@
285285
{
286286
"name": "h_ShinesparksCostEnergy",
287287
"requires": []
288+
},
289+
{
290+
"name": "h_equipmentScreenCycleFrames",
291+
"requires": [
292+
{"cycleFrames": 300}
293+
],
294+
"note": [
295+
"This represents the amount of time that could be required in the pause menu to equip or unequip items."
296+
],
297+
"devNote": [
298+
"This is not perfectly precise as the time spent in the pause menu can vary,",
299+
"depending on which items are collected and which items are being equipped or unequipped.",
300+
"It is intended as a typical value for common actions such as performing a Gravity jump or mid-air Spring Ball jump."
301+
]
302+
},
303+
{
304+
"name": "h_doubleEquipmentScreenCycleFrames",
305+
"requires": [
306+
"h_equipmentScreenCycleFrames",
307+
"h_equipmentScreenCycleFrames"
308+
]
288309
}
289310
]
290311
},

region/brinstar/red/Alpha Power Bomb Room.json

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -302,6 +302,21 @@
302302
}
303303
}
304304
},
305+
{
306+
"link": [1, 1],
307+
"name": "Boyon Farm",
308+
"requires": [
309+
"canBePatient",
310+
"h_useMorphBombs",
311+
{"resetRoom": {"nodes": [1]}},
312+
{"cycleFrames": 4930}
313+
],
314+
"clearsObstacles": ["A"],
315+
"resetsObstacles": ["B"],
316+
"farmCycleDrops": [
317+
{"enemy": "Boyon", "count": 4}
318+
]
319+
},
305320
{
306321
"id": 9,
307322
"link": [1, 1],

region/brinstar/red/Below Spazer.json

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -504,11 +504,19 @@
504504
"link": [2, 2],
505505
"name": "Cacatac Farm",
506506
"requires": [
507-
{"resetRoom": {
508-
"nodes": [1, 2]
509-
}},
510-
{"partialRefill": {"type": "Energy", "limit": 100}},
511-
{"partialRefill": {"type": "Super", "limit": 5}}
507+
{"or": [
508+
{"and": [
509+
{"resetRoom": {"nodes": [1]}},
510+
{"cycleFrames": 300}
511+
]},
512+
{"and": [
513+
{"resetRoom": {"nodes": [2]}},
514+
{"cycleFrames": 240}
515+
]}
516+
]}
517+
],
518+
"farmCycleDrops": [
519+
{"enemy": "Cacatac", "count": 1}
512520
]
513521
},
514522
{

region/brinstar/red/Beta Power Bomb Room.json

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -351,6 +351,29 @@
351351
"FIXME: It is possible to use artificial morph to lure the hoppers to the left to then use most of the runway out of the room."
352352
]
353353
},
354+
{
355+
"link": [1, 1],
356+
"name": "Sidehopper Farm",
357+
"requires": [
358+
{"resetRoom": {"nodes": [1]}},
359+
{"or": [
360+
{"and": [
361+
"ScrewAttack",
362+
{"cycleFrames": 240}
363+
]},
364+
{"and": [
365+
"canDodgeWhileShooting",
366+
"Plasma",
367+
{"cycleFrames": 380}
368+
]}
369+
]}
370+
],
371+
"clearsObstacles": ["A"],
372+
"resetsObstacles": ["B"],
373+
"farmCycleDrops": [
374+
{"enemy": "Sidehopper", "count": 2}
375+
]
376+
},
354377
{
355378
"id": 3,
356379
"link": [1, 1],

region/brinstar/red/Caterpillar Room.json

Lines changed: 159 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1358,14 +1358,90 @@
13581358
"link": [3, 3],
13591359
"name": "Zero Farm",
13601360
"requires": [
1361-
{"resetRoom": {
1362-
"nodes": [2, 3]
1363-
}},
1364-
{"refill": ["PowerBomb"]}
1361+
{"or": [
1362+
{"and": [
1363+
{"resetRoom": {"nodes": [3]}},
1364+
{"cycleFrames": 290}
1365+
]},
1366+
{"and": [
1367+
{"resetRoom": {"nodes": [2]}},
1368+
{"cycleFrames": 460}
1369+
]},
1370+
{"and": [
1371+
{"resetRoom": {"nodes": [4]}},
1372+
{"cycleFrames": 660},
1373+
{"or": [
1374+
"canWalljump",
1375+
"HiJump",
1376+
{"and": [
1377+
"canDoubleBombJump",
1378+
{"cycleFrames": 140}
1379+
]},
1380+
{"and": [
1381+
"canSpringBallJumpMidAir",
1382+
{"cycleFrames": 40},
1383+
"h_doubleEquipmentScreenCycleFrames"
1384+
]}
1385+
]}
1386+
]},
1387+
{"and": [
1388+
{"resetRoom": {"nodes": [1]}},
1389+
{"cycleFrames": 840},
1390+
{"or": [
1391+
"canWalljump",
1392+
"HiJump",
1393+
"SpaceJump",
1394+
{"and": [
1395+
"canDoubleBombJump",
1396+
{"cycleFrames": 280}
1397+
]},
1398+
{"and": [
1399+
"canSpringBallJumpMidAir",
1400+
{"cycleFrames": 80},
1401+
"h_doubleEquipmentScreenCycleFrames",
1402+
"h_doubleEquipmentScreenCycleFrames"
1403+
]}
1404+
]}
1405+
]},
1406+
{"and": [
1407+
{"resetRoom": {"nodes": [6]}},
1408+
{"cycleFrames": 1900},
1409+
{"or": [
1410+
"canWalljump",
1411+
"HiJump",
1412+
"SpaceJump",
1413+
{"and": [
1414+
"canDoubleBombJump",
1415+
{"cycleFrames": 280}
1416+
]},
1417+
{"and": [
1418+
"canSpringBallJumpMidAir",
1419+
{"cycleFrames": 80},
1420+
"h_doubleEquipmentScreenCycleFrames",
1421+
"h_doubleEquipmentScreenCycleFrames"
1422+
]}
1423+
]}
1424+
]}
1425+
]},
1426+
{"or": [
1427+
"Wave",
1428+
"Plasma",
1429+
{"and": [
1430+
"Spazer",
1431+
{"cycleFrames": 60}
1432+
]},
1433+
{"and": [
1434+
"ScrewAttack",
1435+
{"cycleFrames": 70}
1436+
]},
1437+
{"cycleFrames": 130}
1438+
]}
13651439
],
13661440
"clearsObstacles": ["B"],
13671441
"resetsObstacles": ["A"],
1368-
"devNote": "FIXME: Other nodes could be used to reset the room, with additional requirements."
1442+
"farmCycleDrops": [
1443+
{"enemy": "Zero", "count": 3}
1444+
]
13691445
},
13701446
{
13711447
"id": 55,
@@ -1689,13 +1765,61 @@
16891765
"link": [4, 4],
16901766
"name": "Cacatac Farm",
16911767
"requires": [
1692-
{"resetRoom": {
1693-
"nodes": [4]
1694-
}},
1695-
{"refill": ["Energy", "Super"]}
1768+
{"or": [
1769+
{"and": [
1770+
{"resetRoom": {
1771+
"nodes": [4]
1772+
}},
1773+
{"cycleFrames": 210}
1774+
]},
1775+
{"and": [
1776+
{"or": [
1777+
{"and": [
1778+
{"resetRoom": {
1779+
"nodes": [1, 2]
1780+
}},
1781+
{"cycleFrames": 400}
1782+
]},
1783+
{"and": [
1784+
{"resetRoom": {
1785+
"nodes": [3]
1786+
}},
1787+
{"cycleFrames": 860}
1788+
]},
1789+
{"and": [
1790+
{"resetRoom": {
1791+
"nodes": [6]
1792+
}},
1793+
{"cycleFrames": 1470}
1794+
]}
1795+
]},
1796+
{"or": [
1797+
"canWalljump",
1798+
"HiJump",
1799+
"SpaceJump",
1800+
{"and": [
1801+
"canDoubleBombJump",
1802+
{"cycleFrames": 140}
1803+
]},
1804+
{"and": [
1805+
"canSpringBallJumpMidAir",
1806+
{"cycleFrames": 40},
1807+
"h_doubleEquipmentScreenCycleFrames"
1808+
]}
1809+
]}
1810+
]}
1811+
]},
1812+
{"or": [
1813+
"Wave",
1814+
"Spazer",
1815+
"Plasma",
1816+
{"cycleFrames": 40}
1817+
]}
16961818
],
16971819
"resetsObstacles": ["A", "B"],
1698-
"devNote": "FIXME: Other nodes could be used to reset the room, with additional requirements."
1820+
"farmCycleDrops": [
1821+
{"enemy": "Cacatac", "count": 2}
1822+
]
16991823
},
17001824
{
17011825
"id": 74,
@@ -1920,18 +2044,37 @@
19202044
"requires": [
19212045
{"ammo": {"type": "Super", "count": 1}},
19222046
"Morph",
2047+
{"resetRoom": {
2048+
"nodes": [5]
2049+
}},
2050+
{"cycleFrames": 1340},
19232051
{"or": [
19242052
"canWalljump",
19252053
"HiJump",
1926-
"SpaceJump"
2054+
"SpaceJump",
2055+
{"and": [
2056+
"canDoubleBombJump",
2057+
{"cycleFrames": 280}
2058+
]},
2059+
{"and": [
2060+
"canSpringBallJumpMidAir",
2061+
{"cycleFrames": 80},
2062+
"h_doubleEquipmentScreenCycleFrames",
2063+
"h_doubleEquipmentScreenCycleFrames"
2064+
]}
19272065
]},
1928-
{"resetRoom": {
1929-
"nodes": [5]
1930-
}},
1931-
{"refill": ["Energy", "PowerBomb"]},
1932-
{"partialRefill": {"type": "Super", "limit": 10}}
2066+
{"or": [
2067+
"Wave",
2068+
"Spazer",
2069+
"Plasma",
2070+
{"cycleFrames": 250}
2071+
]}
19332072
],
19342073
"resetsObstacles": ["A", "B"],
2074+
"farmCycleDrops": [
2075+
{"enemy": "Cacatac", "count": 2},
2076+
{"enemy": "Zero", "count": 3}
2077+
],
19352078
"devNote": "It is possible to roll off of the platform above to avoid a mid-air morph."
19362079
},
19372080
{

region/brinstar/red/Hellway.json

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,25 @@
8787
"link": [1, 1],
8888
"name": "Zebbo Farm",
8989
"requires": [
90-
{"refill": ["Energy", "Missile", "Super"]}
90+
{"cycleFrames": 160}
91+
],
92+
"farmCycleDrops": [
93+
{"enemy": "Zebbo", "count": 1}
94+
]
95+
},
96+
{
97+
"link": [1, 1],
98+
"name": "Double Zebbo Farm",
99+
"requires": [
100+
"canTrickyDodgeEnemies",
101+
{"cycleFrames": 160}
102+
],
103+
"farmCycleDrops": [
104+
{"enemy": "Zebbo", "count": 2}
105+
],
106+
"note": [
107+
"Stand on the platform between the right-most two Zebbo spawners,",
108+
"and walk back and forth to farm them simultaneously."
91109
]
92110
},
93111
{

region/brinstar/red/Red Brinstar Fireflea Room.json

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,20 @@
165165
}
166166
}
167167
},
168+
{
169+
"link": [1, 1],
170+
"name": "Waver Farm",
171+
"requires": [
172+
{"resetRoom": {
173+
"nodes": [1]
174+
}},
175+
{"cycleFrames": 1150}
176+
],
177+
"resetsObstacles": ["A"],
178+
"farmCycleDrops": [
179+
{"enemy": "Waver", "count": 1}
180+
]
181+
},
168182
{
169183
"id": 4,
170184
"link": [1, 1],
@@ -633,21 +647,22 @@
633647
{
634648
"id": 34,
635649
"link": [2, 2],
636-
"name": "Fireflea Farm",
650+
"name": "Firefleas and Waver Farm",
637651
"requires": [
638652
{"resetRoom": {
639653
"nodes": [2]
640654
}},
641-
{"refill": ["PowerBomb"]},
655+
{"cycleFrames": 630},
642656
{"or": [
643-
{"and": [
644-
"canDodgeWhileShooting",
645-
{"refill": ["Energy"]}
646-
]},
647-
{"partialRefill": {"type": "Energy", "limit": 260}}
657+
"canDodgeWhileShooting",
658+
{"cycleFrames": 600}
648659
]}
649660
],
650-
"resetsObstacles": ["A"]
661+
"resetsObstacles": ["A"],
662+
"farmCycleDrops": [
663+
{"enemy": "Fireflea", "count": 4},
664+
{"enemy": "Waver", "count": 1}
665+
]
651666
},
652667
{
653668
"id": 35,

0 commit comments

Comments
 (0)