Skip to content

Commit 7efb2e2

Browse files
committed
add grapple teleport door escape strats
1 parent 8ab38d7 commit 7efb2e2

39 files changed

Lines changed: 703 additions & 62 deletions

helpers.json

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1267,6 +1267,22 @@
12671267
]}
12681268
],
12691269
"note": "There is a delay after using X-Ray before shooting, but the shot cannot be buffered, as it instantly despawns. Grapple can bypass this cooldown."
1270+
},
1271+
{
1272+
"name": "h_heatedGrappleTeleportWallEscape",
1273+
"requires": [
1274+
{"tech": "canGrappleTeleportWallEscape"},
1275+
{"or": [
1276+
{"and": [
1277+
"Morph",
1278+
{"heatFrames": 90}
1279+
]},
1280+
{"and": [
1281+
"canXRayClimb",
1282+
{"heatFrames": 120}
1283+
]}
1284+
]}
1285+
]
12701286
}
12711287
]
12721288
},

region/brinstar/blue/Construction Zone.json

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -866,6 +866,23 @@
866866
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
867867
"flashSuitChecked": true
868868
},
869+
{
870+
"link": [3, 2],
871+
"name": "Grapple Teleport Door Escape",
872+
"entranceCondition": {
873+
"comeInWithGrappleTeleport": {
874+
"blockPositions": [[12, 12], [12, 13]]
875+
}
876+
},
877+
"requires": [
878+
{"or": [
879+
"canGrappleTeleportWallEscape",
880+
{"doorUnlockedAtNode": 2}
881+
]}
882+
],
883+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
884+
"flashSuitChecked": true
885+
},
869886
{
870887
"id": 34,
871888
"link": [3, 2],

region/brinstar/green/Brinstar Pre-Map Room.json

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -314,6 +314,23 @@
314314
"requires": [],
315315
"flashSuitChecked": true
316316
},
317+
{
318+
"link": [2, 1],
319+
"name": "Grapple Teleport Door Escape",
320+
"entranceCondition": {
321+
"comeInWithGrappleTeleport": {
322+
"blockPositions": [[3, 12], [3, 13]]
323+
}
324+
},
325+
"requires": [
326+
{"or": [
327+
"canGrappleTeleportWallEscape",
328+
{"doorUnlockedAtNode": 1}
329+
]}
330+
],
331+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
332+
"flashSuitChecked": true
333+
},
317334
{
318335
"id": 15,
319336
"link": [2, 1],

region/brinstar/green/Etecoon Energy Tank Room.json

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -443,6 +443,23 @@
443443
"Make small jumps to reset the camera then quickly kill the Beetom as it jumps at Samus, or precisely jump underneath it."
444444
]
445445
},
446+
{
447+
"link": [2, 1],
448+
"name": "Grapple Teleport Door Escape",
449+
"entranceCondition": {
450+
"comeInWithGrappleTeleport": {
451+
"blockPositions": [[3, 12], [3, 13]]
452+
}
453+
},
454+
"requires": [
455+
{"or": [
456+
"canGrappleTeleportWallEscape",
457+
{"doorUnlockedAtNode": 1}
458+
]}
459+
],
460+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
461+
"flashSuitChecked": true
462+
},
446463
{
447464
"id": 10,
448465
"link": [2, 1],
@@ -1245,6 +1262,23 @@
12451262
"requires": [],
12461263
"flashSuitChecked": true
12471264
},
1265+
{
1266+
"link": [4, 1],
1267+
"name": "Grapple Teleport Door Escape",
1268+
"entranceCondition": {
1269+
"comeInWithGrappleTeleport": {
1270+
"blockPositions": [[3, 12], [3, 13]]
1271+
}
1272+
},
1273+
"requires": [
1274+
{"or": [
1275+
"canGrappleTeleportWallEscape",
1276+
{"doorUnlockedAtNode": 1}
1277+
]}
1278+
],
1279+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
1280+
"flashSuitChecked": true
1281+
},
12481282
{
12491283
"id": 39,
12501284
"link": [4, 1],

region/brinstar/green/Green Hill Zone.json

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1262,6 +1262,23 @@
12621262
"requires": [],
12631263
"flashSuitChecked": true
12641264
},
1265+
{
1266+
"link": [3, 1],
1267+
"name": "Grapple Teleport Door Escape",
1268+
"entranceCondition": {
1269+
"comeInWithGrappleTeleport": {
1270+
"blockPositions": [[3, 12], [3, 13]]
1271+
}
1272+
},
1273+
"requires": [
1274+
{"or": [
1275+
"canGrappleTeleportWallEscape",
1276+
{"doorUnlockedAtNode": 1}
1277+
]}
1278+
],
1279+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
1280+
"flashSuitChecked": true
1281+
},
12651282
{
12661283
"id": 51,
12671284
"link": [3, 1],

region/brinstar/kraid/Warehouse Entrance.json

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -472,6 +472,23 @@
472472
},
473473
"requires": []
474474
},
475+
{
476+
"link": [3, 1],
477+
"name": "Grapple Teleport Door Escape",
478+
"entranceCondition": {
479+
"comeInWithGrappleTeleport": {
480+
"blockPositions": [[3, 12], [3, 13]]
481+
}
482+
},
483+
"requires": [
484+
{"or": [
485+
"canGrappleTeleportWallEscape",
486+
{"doorUnlockedAtNode": 1}
487+
]}
488+
],
489+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
490+
"flashSuitChecked": true
491+
},
475492
{
476493
"id": 22,
477494
"link": [3, 1],

region/brinstar/pink/Dachora Room.json

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -474,6 +474,23 @@
474474
"flashSuitChecked": true,
475475
"note": "Use a Power Bomb to destroy the bomb block wall."
476476
},
477+
{
478+
"link": [1, 3],
479+
"name": "Grapple Teleport Door Escape",
480+
"entranceCondition": {
481+
"comeInWithGrappleTeleport": {
482+
"blockPositions": [[108, 12], [108, 13]]
483+
}
484+
},
485+
"requires": [
486+
{"or": [
487+
"canGrappleTeleportWallEscape",
488+
{"doorUnlockedAtNode": 3}
489+
]}
490+
],
491+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
492+
"flashSuitChecked": true
493+
},
477494
{
478495
"id": 18,
479496
"link": [1, 3],
@@ -745,6 +762,23 @@
745762
"A single IBJ is slow enough at the top to overload them before Samus can hit the blocks."
746763
]
747764
},
765+
{
766+
"link": [2, 3],
767+
"name": "Grapple Teleport Door Escape",
768+
"entranceCondition": {
769+
"comeInWithGrappleTeleport": {
770+
"blockPositions": [[108, 12], [108, 13]]
771+
}
772+
},
773+
"requires": [
774+
{"or": [
775+
"canGrappleTeleportWallEscape",
776+
{"doorUnlockedAtNode": 3}
777+
]}
778+
],
779+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
780+
"flashSuitChecked": true
781+
},
748782
{
749783
"id": 35,
750784
"link": [2, 3],
@@ -919,6 +953,23 @@
919953
},
920954
"requires": []
921955
},
956+
{
957+
"link": [3, 1],
958+
"name": "Grapple Teleport Door Escape",
959+
"entranceCondition": {
960+
"comeInWithGrappleTeleport": {
961+
"blockPositions": [[3, 12], [3, 13]]
962+
}
963+
},
964+
"requires": [
965+
{"or": [
966+
"canGrappleTeleportWallEscape",
967+
{"doorUnlockedAtNode": 1}
968+
]}
969+
],
970+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
971+
"flashSuitChecked": true
972+
},
922973
{
923974
"id": 45,
924975
"link": [3, 1],

region/brinstar/pink/Mission Impossible Room.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -671,6 +671,9 @@
671671
"Then hold right to release Grapple while standing.",
672672
"Samus should get pushed up onto the floor.",
673673
"Run to the right and reach the door, taking just one hit from a Hopper."
674+
],
675+
"devNote": [
676+
"This doesn't require `canGrappleTeleportWallEscape` tech, because the lower floor height makes it easier."
674677
]
675678
},
676679
{

region/brinstar/pink/Waterway Energy Tank Room.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -470,6 +470,7 @@
470470
"Samus should get pushed up onto the floor."
471471
],
472472
"devNote": [
473+
"This doesn't require `canGrappleTeleportWallEscape` tech, because the lower floor height makes it easier.",
473474
"This strat has limited usefulness since you will be stuck behind the speed blocks.",
474475
"Potentially it could be useful if you could use a flash suit to get out (though this is not yet logic);",
475476
"for example, the item could be an Energy Tank and you could need its refill in order to spark out (rather than sparking in).",

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

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -599,6 +599,23 @@
599599
},
600600
"requires": []
601601
},
602+
{
603+
"link": [2, 1],
604+
"name": "Grapple Teleport Door Escape",
605+
"entranceCondition": {
606+
"comeInWithGrappleTeleport": {
607+
"blockPositions": [[3, 12], [3, 13]]
608+
}
609+
},
610+
"requires": [
611+
{"or": [
612+
"canGrappleTeleportWallEscape",
613+
{"doorUnlockedAtNode": 1}
614+
]}
615+
],
616+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
617+
"flashSuitChecked": true
618+
},
602619
{
603620
"id": 28,
604621
"link": [2, 1],

0 commit comments

Comments
 (0)