When a region is inaccessible due to options making it inaccessible it gets culled. however locations which are inaccessbile due to regions culled in this way will not be culled and instead throw an error in generation. it is important to cascade the culling actions across dependent locations over the alternative of extracting the options from the regions as the logic tree becomes extremely silly once you are dealing with regions that depend on regions which should be culled, or even longer chains which may only create situations where culling should happen depending on pairs of options on different regions, or logic depending on regions managed by another mod.
Minimal mod:
APFIssue.zip
Resulting yaml:
AP_Patchy_Palworld.yaml
Occurs on: Generation
Creating MultiWorld.
Creating Items.
Calculating Access Rules.
Running Item Plando.
Traceback (most recent call last):
File "startup.py", line 133, in run
File "console.py", line 25, in run
File "Generate.py", line 594, in
File "Main.py", line 188, in main
File "Fill.py", line 1047, in resolve_early_locations_for_planned
File "BaseClasses.py", line 530, in get_reachable_locations
File "BaseClasses.py", line 1500, in can_reach
File "C:\ProgramData\Archipelago\custom_worlds\apf.apworld\apf\LogicParser.py", line 443, in
File "BaseClasses.py", line 856, in can_reach_region
File "BaseClasses.py", line 422, in get_region
KeyError: 'Flying Fish Coast'
When a region is inaccessible due to options making it inaccessible it gets culled. however locations which are inaccessbile due to regions culled in this way will not be culled and instead throw an error in generation. it is important to cascade the culling actions across dependent locations over the alternative of extracting the options from the regions as the logic tree becomes extremely silly once you are dealing with regions that depend on regions which should be culled, or even longer chains which may only create situations where culling should happen depending on pairs of options on different regions, or logic depending on regions managed by another mod.
Minimal mod:
APFIssue.zip
Resulting yaml:
AP_Patchy_Palworld.yaml
Occurs on: Generation