Add overlay extraction for multi-expansion asset deduplication

Extracts each expansion's assets as a CRC-compared overlay against a
base manifest, storing only files that differ. Auto-detects overlay mode
when a base manifest already exists. Adds --as-overlay, --full-base
flags and manifest merge for partial extractions.
This commit is contained in:
Kelsi 2026-02-14 03:09:17 -08:00
parent 0b5069ebd4
commit b01b198150
37 changed files with 139303 additions and 73847 deletions

View file

@ -26,6 +26,7 @@ public:
bool onlyUsedDbcs = false; // Extract only the DBC files wowee uses (implies DBFilesClient/*.dbc filter)
std::string dbcCsvOutputDir; // When set, write CSVs into this directory instead of outputDir/expansions/<exp>/db
std::string referenceManifest; // If set, only extract files NOT in this manifest (delta extraction)
std::string asOverlay; // If set, extract as overlay for this expansion ID (only files differing from base)
};
struct Stats {