-
Notifications
You must be signed in to change notification settings - Fork 0
Priorities
To guarantee clean patching Shader Patcher has a hardcoded priority that will decide which source to apply, if multiple sources provide patches for the same mod.
This is the priority:
-
EXTERNAL- High priority -
INTERNAL- Medium priority -
BUNDLED- Low priority
These are files that originate from the config folder - files provided by modpack developers.
EXTERNAL files with override INTERNAL and BUNDLED files with the same target.
Additionally EXTERNAL files are allowed to override _default mappings and transforms.
These are files that originate from other mods - files provided by mod developers.
INTERNAL files with override BUNDLED files, but will be overriden by EXTERNAL files - again if they have the same target
INTERNAL files are not allowed to override _default mappings and transforms - attempts will be rejected during load.
These are files that originate from Shader Patcher
BUNDLED files will be overriden by INTERNAL and EXTERNAL files - again if they have the same target
Whenever Shader Patcher wants to apply a patch it will prioritize using mapping and transform files targeting the same mod.
If Shader Patcher cannot find mappings and/or transforms for that mod it will fall back to using the default mappings and transforms.
BUNDLED files:
- patch: block.mod-a.yaml
- patch: block.mod-b.yaml
- patch: block.mod-c.yaml
- mapping: block._default.yaml
- transform: block._default.yaml
INTERNAL files:
- patch: block.mod-b.yaml
- patch: block.mod-d.yaml
- mapping: block.mod-b.yaml
- transform: block.mod-b.yaml
EXTERNAL files:
- patch: block.mod-a.yaml
- mapping: block.mod-a.yaml
- transform: block._default.yaml
When Shader Patcher starts patching, these are the file combinations it will use:
-
EXTERNALpatch: block.mod-a.yaml |EXTERNALmapping: block.mod-a.yaml |EXTERNALtransform: block._default.yaml -
INTERNALpatch: block.mod-b.yaml |INTERNALmapping: block.mod-b.yaml |INTERNALtransform: block.mod-b.yaml -
BUNDLEDpatch: block.mod-c.yaml |BUNDLEDmapping: block._default.yaml |EXTERNALtransform: block._default.yaml -
INTERNALpatch: block.mod-d.yaml |BUNDLEDmapping: block._default.yaml |EXTERNALtransform: block._default.yaml