Two roles#
| Catalog | Internal paths start at | Purpose |
|---|---|---|
ext_01.cat + .dat |
Extension folder | Normal extension files, including diffs |
subst_01.cat + .dat |
Game root | Complete substitution of an existing file |
subst_ does not turn its content into an XML patch. Check conflicts separately when two extensions substitute one complete file.
Why an edit is invisible#
A packed copy of the same virtual path outranks a loose file. An old catalog can therefore hide a newly edited XML beside it.
List the copies in your own test package:
libraries/wiki_demo.xml -> loose: revision 2
libraries/wiki_demo.xml -> ext_01: revision 1Expect packed revision 1. This illustrates selection; it is neither an actual game file nor console output.
Inspect the package#
Open your CAT with X Catalog Tool. Check the path, matching DAT and relevant entry. Compare that entry with your edited XML. Choose one working source of truth: loose files or rebuilt catalogs.
Keep content.xml outside. Version catalogs have separate rules. For UI substitutions, verify the exact target resource name and extension rather than guessing from your source Lua filename.
Verification boundary#
These loading rules come from the primary guide. The diagram is not an executed game experiment. After packing, repeat the same scenario that worked with your original file set.