Content Patcher

Content Patcher

378k Downloads

[Content Patcher] remove patch prevalidation and restrictions

Pathoschild opened this issue ยท 1 comments

commented

Remove the logic to predetect possible patch issues, and lift the restrictions that requires.

Background

Content Patcher has some fairly complex logic to detect possible patch errors ahead of time. For example:

  • Since each asset can only be loaded once, it analyses Action: Load patches to determine all possible sets of conditions in which they would be applied, and if any two load patches can conflict in some cases it'll show an error like this:

    Ignored {patchName}: Target {target} conflicts with other load patches {otherPatchNames}. Each file can only be loaded by one patch, unless their conditions can never overlap.

  • It generates all possible FromFile values for each patch based on the tokens used, and if any value doesn't match an existing file it'll show an error like this:

    Ignored {patchName}: FromFile '{path}' matches files which don't exist ({missingPaths}).

However, Content Patcher sets a number of restrictions to enable that. For example, you can't use conditions which don't have a predetermined set of possible values in an Action: Load patch or FromFile value.

Per discussion with content pack modders on Discord, removing these restrictions is more valuable than the (otherwise useful) prevalidation.

commented

Done in develop for the upcoming Content Patcher 1.5.