Skip to content

World: Culled regions dont cull dependent locations #5

Description

@patchy-patchy

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'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions