Skip to content

Commit 513921a

Browse files
authored
Merge pull request #1974 from kjbranch/remove-implicit-doorlock-skip
Add "bypassesDoorShell": "free"
2 parents 0b9bae2 + a92c5b2 commit 513921a

43 files changed

Lines changed: 194 additions & 99 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

logicalRequirements.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -542,7 +542,7 @@ This section contains logical elements that are affected by Lock type Objects at
542542

543543
A `doorUnlockedAtNode` object represents the need for a door to be unlocked, i.e. to be free of a lock such a red, green, yellow, or gray door shell. An example would be if the space in the door frame is needed as runway for a jump or shinecharge.
544544

545-
In order to support randomizers that may modify door colors, a `doorUnlockedAtNode` requirement should be used when appropriate even if the vanilla door color is blue. If a strat has an `exitCondition`, then there is an implicit `doorUnlockedAtNode` requirement on the destination door node, unless the strat has [`bypassesDoorShell`](strats.md#bypasses-door-shell) set to `true`.
545+
In order to support randomizers that may modify door colors, a `doorUnlockedAtNode` requirement should be used when appropriate even if the vanilla door color is blue. If a strat has an `exitCondition`, then there is an implicit `doorUnlockedAtNode` requirement on the destination door node, unless the strat has [`bypassesDoorShell`](strats.md#bypasses-door-shell) set to `true` or `"free"`.
546546

547547
If the door node in a `doorUnlockedAtNode` also appears in the strat's [`unlocksDoors`](strats.md#unlocks-doors) property, then the `doorUnlockedAtNode` may also be fulfilled by unlocking the door as part of executing the strat (as an alternative to having been previously unlocked), and any `requires` for that locked door in the `unlocksDoors` then become part of the requirements for the strat.
548548

region/brinstar/green/Green Brinstar Main Shaft.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4257,7 +4257,7 @@
42574257
"morphed": false
42584258
}
42594259
},
4260-
"bypassesDoorShell": true,
4260+
"bypassesDoorShell": "free",
42614261
"flashSuitChecked": true
42624262
},
42634263
{
@@ -4278,7 +4278,7 @@
42784278
"morphed": true
42794279
}
42804280
},
4281-
"bypassesDoorShell": true,
4281+
"bypassesDoorShell": "free",
42824282
"flashSuitChecked": true
42834283
},
42844284
{

region/brinstar/green/Spore Spawn Kihunter Room.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -349,7 +349,7 @@
349349
"morphed": false
350350
}
351351
},
352-
"bypassesDoorShell": true,
352+
"bypassesDoorShell": "free",
353353
"flashSuitChecked": true,
354354
"note": "Quickly jump back through the door to avoid a Kihunter hit."
355355
},
@@ -387,7 +387,7 @@
387387
"morphed": true
388388
}
389389
},
390-
"bypassesDoorShell": true,
390+
"bypassesDoorShell": "free",
391391
"flashSuitChecked": true,
392392
"note": [
393393
"With Spring Ball alone, quickly jump over the Kihunter and wait for it to move away, then Spring Ball Bomb Jump through the door.",

region/brinstar/kraid/Warehouse Zeela Room.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -654,7 +654,7 @@
654654
"morphed": false
655655
}
656656
},
657-
"bypassesDoorShell": true,
657+
"bypassesDoorShell": "free",
658658
"flashSuitChecked": true
659659
},
660660
{
@@ -684,7 +684,7 @@
684684
"morphed": true
685685
}
686686
},
687-
"bypassesDoorShell": true,
687+
"bypassesDoorShell": "free",
688688
"flashSuitChecked": true
689689
}
690690
],

region/brinstar/pink/Big Pink.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1189,7 +1189,7 @@
11891189
"morphed": false
11901190
}
11911191
},
1192-
"bypassesDoorShell": true,
1192+
"bypassesDoorShell": "free",
11931193
"flashSuitChecked": true
11941194
},
11951195
{
@@ -1214,7 +1214,7 @@
12141214
"morphed": true
12151215
}
12161216
},
1217-
"bypassesDoorShell": true,
1217+
"bypassesDoorShell": "free",
12181218
"flashSuitChecked": true
12191219
},
12201220
{

region/brinstar/pink/Pink Brinstar Power Bomb Room.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@
351351
"morphed": false
352352
}
353353
},
354-
"bypassesDoorShell": true,
354+
"bypassesDoorShell": "free",
355355
"flashSuitChecked": true
356356
},
357357
{
@@ -372,7 +372,7 @@
372372
"morphed": true
373373
}
374374
},
375-
"bypassesDoorShell": true,
375+
"bypassesDoorShell": "free",
376376
"flashSuitChecked": true
377377
},
378378
{

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -328,7 +328,7 @@
328328
"ceilingPositions": []
329329
}
330330
},
331-
"bypassesDoorShell": true
331+
"bypassesDoorShell": "free"
332332
},
333333
{
334334
"id": 10,

region/brinstar/red/Hellway.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -302,7 +302,7 @@
302302
"ceilingPositions": [[6, 3], [10, 3]]
303303
}
304304
},
305-
"bypassesDoorShell": true
305+
"bypassesDoorShell": "free"
306306
},
307307
{
308308
"id": 12,
@@ -515,7 +515,7 @@
515515
"ceilingPositions": [[6, 3], [10, 3]]
516516
}
517517
},
518-
"bypassesDoorShell": true
518+
"bypassesDoorShell": "free"
519519
}
520520
],
521521
"notables": [

region/crateria/central/Climb.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -343,7 +343,7 @@
343343
"morphed": false
344344
}
345345
},
346-
"bypassesDoorShell": true,
346+
"bypassesDoorShell": "free",
347347
"flashSuitChecked": true
348348
},
349349
{
@@ -365,7 +365,7 @@
365365
"morphed": true
366366
}
367367
},
368-
"bypassesDoorShell": true,
368+
"bypassesDoorShell": "free",
369369
"flashSuitChecked": true
370370
},
371371
{

region/crateria/central/Crateria Tube.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@
9090
"morphed": false
9191
}
9292
},
93-
"bypassesDoorShell": true,
93+
"bypassesDoorShell": "free",
9494
"flashSuitChecked": true
9595
},
9696
{
@@ -109,7 +109,7 @@
109109
"morphed": true
110110
}
111111
},
112-
"bypassesDoorShell": true,
112+
"bypassesDoorShell": "free",
113113
"flashSuitChecked": true
114114
},
115115
{
@@ -514,7 +514,7 @@
514514
"morphed": false
515515
}
516516
},
517-
"bypassesDoorShell": true,
517+
"bypassesDoorShell": "free",
518518
"flashSuitChecked": true
519519
},
520520
{
@@ -533,7 +533,7 @@
533533
"morphed": true
534534
}
535535
},
536-
"bypassesDoorShell": true,
536+
"bypassesDoorShell": "free",
537537
"flashSuitChecked": true
538538
}
539539
],

0 commit comments

Comments
 (0)