From f5b0815c3a93c096f832427c8271273e2ab23a78 Mon Sep 17 00:00:00 2001 From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com> Date: Tue, 20 Oct 2026 10:31:14 +0200 Subject: [PATCH] docs: say how ET: Legacy builds its legacy pk3 legacy_.pk3 is the engine's own build output, named from git describe and different for each release and architecture (ETLBuildMod.cmake:301-316, ETLVersion.cmake:120-131). It is installed with the engine, not downloaded on first run as the note said. --- emulators/etlegacy.yml | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/emulators/etlegacy.yml b/emulators/etlegacy.yml index 619ab3b0..d514fc36 100644 --- a/emulators/etlegacy.yml +++ b/emulators/etlegacy.yml @@ -28,9 +28,12 @@ notes: | pak2 and mp_bin, so the extra slots are reserved for forward compatible server lists, never filled by id. - The ET Legacy project ships its own replacement etmain/ assets (configs, - presets, locale files) directly in the source tree, plus a Legacy mod - pk3 downloaded on first run. The user still has to supply the retail + fs_game defaults to the legacy mod (src/qcommon/files.c:5141-5148). The + build packs the cgame and ui libraries with the source tree's etmain/ + assets (configs, presets, locale files) into legacy/legacy_.pk3 + and installs it with the engine (cmake/ETLBuildMod.cmake:301-316). The + client extracts its cgame and ui libraries from that pk3 at load + (src/sys/sys_main.c:954-966). The user still has to supply the retail pak0.pk3 from the free Enemy Territory 2.60b download. pak0.pk3 holds every id map, model, texture and sound. @@ -66,3 +69,11 @@ files: required: false source_ref: "src/qcommon/files.c:4011-4018 (FS_idPak)" note: "Retail multiplayer QVM binaries. ET Legacy ships its own cgame/ui binaries, and the retail pack is for pure clients joining stock servers." + +exclusion_note: > + legacy/legacy_.pk3 is not listed. It is the engine's own build + output, named after the git describe of the build and holding cgame and + ui libraries compiled for the host, so every release and architecture + ships different bytes under a different name. It arrives with every + install of the engine. + ref: cmake/ETLBuildMod.cmake:301-316, cmake/ETLVersion.cmake:120-131