feat: collect id tech patches and build demos

This commit is contained in:
Abdessamad Derraz committed 2026-10-04 23:47:45 +02:00
1 parent e104331a30
commit 00f4d02568
89 files changed
+337 -60

No files matched your search

+29 -2
View File
@@ -15,8 +15,8 @@ notes: |
Doom 3 engine (idTech 4). Carries the original Doom 3 1.3.1 game
code plus bug fixes, SDL abstraction and 64-bit cleanup.
The engine refuses to run without a `base/` directory containing
the retail pak files. Resurrection of Evil goes in `d3xp/`.
Game data is read from the pak files of `base/`, or from `demo/` when
base/ yields no default.cfg. Resurrection of Evil goes in `d3xp/`.
ref: neo/framework/FileSystem.cpp:88-112 ("either base or demo"),
neo/framework/FileSystem.cpp:2089 AddGameDirectory,
neo/framework/FileSystem.cpp:2235 SetupGameDirectories(BASE_GAMEDIR)
@@ -26,6 +26,12 @@ notes: |
order so a later pak overrides earlier ones.
ref: neo/framework/FileSystem.cpp:2125-2143 (ListOSFiles ".pk4").
When default.cfg cannot be read and fs_game is unset or "base", the
engine sets fs_game and fs_game_base to "demo" and restarts the file
system on the demo data. With any other fs_game it stops with
"Couldn't load default.cfg".
ref: neo/framework/FileSystem.cpp:2703-2716
files:
# ================================================================
# base/ - Doom 3 retail paks
@@ -47,6 +53,7 @@ files:
path: "base/pak001.pk4"
required: true
source_ref: "neo/framework/FileSystem.cpp:2125"
unsourceable: "retail data the collection does not hold; a same-named file of another game must not stand in"
- name: "pak002.pk4"
category: game_data
@@ -120,3 +127,23 @@ files:
required: false
source_ref: "neo/framework/FileSystem.cpp:3744-3754 (explicit d3xp/pak000.pk4 probe)"
note: "Resurrection of Evil main pak."
- name: "pak001.pk4"
category: game_data
system: doom3
path: "d3xp/pak001.pk4"
required: false
source_ref: "neo/framework/FileSystem.cpp:2125"
note: "Resurrection of Evil patch pak, shipped by the 1.3.1 patch."
# ================================================================
# demo/ - Doom 3 demo, read when base/ holds no default.cfg
# ================================================================
- name: "demo00.pk4"
category: game_data
system: doom3
path: "demo/demo00.pk4"
required: false
source_ref: "neo/framework/FileSystem.cpp:2703-2709 (demo/ fallback), 2125"
note: "Doom 3 demo data. Every .pk4 of demo/ is loaded once the fallback sets fs_game to demo."