Choose the layer#

CAT/DAT pair Applied when
ext_01 Shared content
ext_v900 Exact 9.00 only, above numbered ext catalogs
subst_v900 Equivalent exact variant for subst
ext_01_diff_v900 From 9.00 upward, over existing ext_01; introduced in 9.00

ext_v900 does not mean “9.00 or newer”. A diff catalog requires its numbered base. An exact version layer outranks diff layers.

Plan your package#

An independent packaging plan, not a ready archive:

TEXT
ext_01:              ui/wiki_panel.lua -> common implementation
ext_v800:            ui/wiki_panel.lua -> 8.00 implementation
ext_01_diff_v900:    ui/wiki_panel.lua -> implementation from 9.00
content.xml:        minimum supported game version

Register one stable UI path rather than a missing panel_900.lua. For this plan, expect the exact variant on 8.00 and the diff variant on 9.00. A later game may still require code changes even when it loads the catalog.

Verification#

Identify the selected file with a distinct diagnostic marker in every supported game. Record its full version and repeat the UI action. An existing archive does not prove compatibility.

Pack with X Catalog Tool, keeping content.xml outside. These rules come from the primary author's investigation; this wiki has not repeated that game experiment.