* prepare gamedir for running the game
* Stop telling installers to overwrite the vanilla game
The release no longer contains anything that lands on a vanilla file:
its base data lives in Base, so unpacking it over the game directory
and copying the game's Data into the release now amount to the same
installation.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
* Give the mod's base data its own VFS profile
Its files ship in Base now, so that a vanilla Data directory can be
copied in whole without a single collision. Mount Base right above the
vanilla dirs in every profile stack — the slot where the installer's
overwrites used to end up.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
* Mount Base in the language overlays' VFS configs too
Assembling a release copies a <Language>_Version directory over
gamedir, its own copies of the configs included, so without the same
Base profile every non-English release would mount nothing from Base.
Their libraries move along with the rest of the base data: each
language slf, and the Russian data.slf that shadows the vanilla
Data.slf by name.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
* Ignore a vanilla Data directory dropped into gamedir
Running the game here needs one copied in, and it is an untouched copy
of somebody's retail install — nothing this repository should track.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
* Ignore only the player profile directory, not every Profiles
The unanchored pattern also swallowed Base/TableData/Profiles, the
mod's soldier profile XMLs, which are tracked and belong in a release.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
* move gamedir/Data to gamedir/Base
* move gamedir-languages' Data to Base
---------
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
The overlays were authored on Windows, where a filesystem that folds case hid
the fact that thousands of translated files spell their path differently from
the gamedir file they are meant to replace: Data-1.13/Mercedt/170.EDT over
Data-1.13/MercEdt/170.EDT, 149_ATTN.wav over 149_ATTN.WAV. Copying an overlay
onto gamedir on a case-sensitive filesystem leaves both files instead of
replacing one, and VFS, which folds case itself, then serves whichever the
directory happened to yield first.
Every overlay path is now spelled component for component the way gamedir
spells it. gamedir was already self-consistent, so nothing there moves and no
new convention is invented. The transformation is mechanical and no file gains
or loses content:
git diff --shortstat HEAD~1 HEAD
5374 files changed, 0 insertions(+), 0 deletions(-)
git diff --name-status -M HEAD~1 HEAD | cut -f1 | sort -u
R100
git ls-tree -r --name-only HEAD gamedir-languages | wc -l
28884, the same as before
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
These triggered source's release workflow on gamedir pushes. In the
monorepo a push to master triggers it directly, and GitHub ignores
workflow files outside the repository root anyway.
* Supplement Chinese translation files
TBS members supplement Chinese translation files, fix errors in Chinese.Emails.xml and other untranslated files.
* Revert "Supplement Chinese translation files"
This reverts commit 473b7f89e8c82453db95313fc6f672e2416a5e5d.
* Add Chinese Translations, and repair XML mistakes
- updates for certain mercs
- added known problems and solutions to the ReadMe file
- moved "Snitch" folder from "Data" to the correct location "Data\Speech\Snitch"
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameData@8292 3b4a5df2-a311-0410-b5c6-a8a6f20db521