mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-11-01 07:33:45 -06:00
One run of profile_sync --all --rebase-refs --fresh. Every guard held: no ref to review, no prose left under an older pin, no file name or hash literal gained in a cited file since the pin, no built_by pin and no pin keyed by build mode. The site's record of cited source paths is rebuilt with them.
236 lines
10 KiB
YAML
236 lines
10 KiB
YAML
emulator: Xash3D FWGS
|
|
type: standalone
|
|
core_classification: game_engine
|
|
source: "https://github.com/FWGS/xash3d-fwgs"
|
|
upstream: "https://github.com/FWGS/xash3d-fwgs"
|
|
profiled_date: "2026-10-04"
|
|
source_commit: "27092af50d912432887faa43a1cccddfae569b2d"
|
|
core_version: "0.21+git"
|
|
display_name: "Xash3D FWGS"
|
|
cores: [xash3d_fwgs, xash3d]
|
|
systems: [halflife, cstrike, czero, czeror, dmc, gearbox, bshift, ricochet, tfc]
|
|
|
|
notes: |
|
|
GoldSrc / Half-Life 1 engine reimplementation by Flying With Gauss.
|
|
Game directories are discovered at startup: FS_CheckForXashGameDir
|
|
(filesystem/gameinfo.c:611-634) walks each sub-folder of the base path
|
|
and keeps the ones that contain gameinfo.txt or liblist.gam.
|
|
FS_ParseGenericGameInfo (filesystem/gameinfo.c:231-430) reads the mod
|
|
descriptor out of either file: `basedir` names the fallback game
|
|
(chained one level, e.g. czeror -> czero -> cstrike -> valve, see
|
|
filesystem/searchpath.c:327), `fallback_dir` names a second fallback,
|
|
and `game` / `gamename` carry the human-readable title.
|
|
|
|
Each supported mod's data is a Valve-style game folder with a game
|
|
descriptor, maps/, models/, sound/, overviews/ and any number of .pak
|
|
archives. FS_AddGameDirectory mounts every .pak of the folder, then
|
|
every .pk3, .pk3dir and .wad, each kind in sorted name order and each
|
|
above the previous one, then the folder itself on top, so loose files
|
|
win over packed ones (filesystem/searchpath.c:188-224). No archive name
|
|
is required. The engine does not hash any file: the pak header is the
|
|
only sanity check (filesystem/pak.c:98-157). liblist.gam ships inside each
|
|
retail mod and is also written out by the engine as gameinfo.txt the
|
|
first time it imports a Valve folder (filesystem/gameinfo.c:538-544).
|
|
|
|
A Quake-engine game dir is recognised separately by
|
|
FS_CheckForQuakeGameDir (filesystem/gameinfo.c:578-603), which looks
|
|
for pak0.pak + progs.dat / quake.rc, so Xash3D FWGS can run Quake 1 total
|
|
conversions this way.
|
|
|
|
Below are the folders Half-Life retail / official addon releases
|
|
install under the Steam install root. The descriptor is what makes the
|
|
engine detect a folder (filesystem/gameinfo.c:614-630), and the pak entries
|
|
name the archives the retail releases ship. Map / model / sound trees
|
|
that live beside them are too open-ended to enumerate and are counted
|
|
as part of the same game data.
|
|
|
|
files:
|
|
# ================================================================
|
|
# Half-Life (valve/), base game, chained parent of every HL1 mod
|
|
# ================================================================
|
|
|
|
- name: "liblist.gam"
|
|
category: game_data
|
|
system: halflife
|
|
path: "valve/liblist.gam"
|
|
required: true
|
|
source_ref: "filesystem/gameinfo.c:617 (gamedir probe), 538-544 (liblist.gam -> gameinfo.txt conversion), 695 (parser)"
|
|
note: "Game descriptor shipped with retail Half-Life. Engine converts it to gameinfo.txt on first run."
|
|
|
|
- name: "pak0.pak"
|
|
category: game_data
|
|
system: halflife
|
|
path: "valve/pak0.pak"
|
|
required: false
|
|
source_ref: "filesystem/searchpath.c:188-224, filesystem/pak.c:98-157"
|
|
note: "Half-Life game data packed in one archive, as the CD and WON releases install it. The engine mounts whatever .pak the folder holds and requires none: the Steam depot ships valve/ as loose files with no .pak, and the game runs from those."
|
|
unsourceable: "The WON Linux dedicated servers 1.0.0.9 to 3.1.1.1 carry a server-only valve/pak0.pak (65022757, 47500556 or 33772308 bytes, at most 1035 entries: multiplayer maps, models, sounds, sprites and skies, with no single-player map, gfx/shell or sound/vox), not the client archive of the CD and WON releases."
|
|
|
|
- name: "pak1.pak"
|
|
category: game_data
|
|
system: halflife
|
|
path: "valve/pak1.pak"
|
|
required: false
|
|
source_ref: "filesystem/searchpath.c:188-224, filesystem/pak.c:98-157"
|
|
note: "Mounted above pak0.pak when present, as any second .pak of the folder would be. The only valve/pak1.pak released is the one the Blue Shift High Definition Pack installer writes (7839196 bytes, 99 entries: HD models, sounds and sprites for Half-Life). Steam ships no .pak in valve/."
|
|
unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in"
|
|
|
|
# ================================================================
|
|
# Counter-Strike 1.6 (cstrike/)
|
|
# ================================================================
|
|
|
|
- name: "liblist.gam"
|
|
category: game_data
|
|
system: cstrike
|
|
path: "cstrike/liblist.gam"
|
|
required: true
|
|
source_ref: "filesystem/gameinfo.c:617, filesystem/searchpath.c:327 (cstrike -> valve chain)"
|
|
note: "Declares fallback_dir \"valve\". Counter-Strike 1.6 retail descriptor."
|
|
unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in"
|
|
|
|
- name: "pak0.pak"
|
|
category: game_data
|
|
system: cstrike
|
|
path: "cstrike/pak0.pak"
|
|
required: false
|
|
source_ref: "filesystem/pak.c"
|
|
note: "Loose files (maps/, sprites/, sound/, models/) are the usual retail layout, and a bundled pak0.pak is optional."
|
|
unsourceable: "The Linux dedicated servers hlds_l 1.1.2.0 and hlds_l_11262003 ship cstrike/ as loose files with no .pak."
|
|
|
|
# ================================================================
|
|
# Condition Zero (czero/)
|
|
# ================================================================
|
|
|
|
- name: "liblist.gam"
|
|
category: game_data
|
|
system: czero
|
|
path: "czero/liblist.gam"
|
|
required: true
|
|
source_ref: "filesystem/searchpath.c:327 (czero -> cstrike -> valve chain)"
|
|
unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in"
|
|
|
|
- name: "pak0.pak"
|
|
category: game_data
|
|
system: czero
|
|
path: "czero/pak0.pak"
|
|
required: false
|
|
source_ref: "filesystem/pak.c"
|
|
unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in"
|
|
|
|
# ================================================================
|
|
# Condition Zero: Deleted Scenes (czeror/)
|
|
# ================================================================
|
|
|
|
- name: "liblist.gam"
|
|
category: game_data
|
|
system: czeror
|
|
path: "czeror/liblist.gam"
|
|
required: true
|
|
source_ref: "filesystem/searchpath.c:327 (czeror -> czero -> cstrike -> valve chain)"
|
|
unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in"
|
|
|
|
- name: "pak0.pak"
|
|
category: game_data
|
|
system: czeror
|
|
path: "czeror/pak0.pak"
|
|
required: false
|
|
source_ref: "filesystem/pak.c"
|
|
unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in"
|
|
|
|
# ================================================================
|
|
# Deathmatch Classic (dmc/)
|
|
# ================================================================
|
|
|
|
- name: "liblist.gam"
|
|
category: game_data
|
|
system: dmc
|
|
path: "dmc/liblist.gam"
|
|
required: true
|
|
source_ref: "filesystem/gameinfo.c:617"
|
|
|
|
- name: "pak0.pak"
|
|
category: game_data
|
|
system: dmc
|
|
path: "dmc/pak0.pak"
|
|
required: false
|
|
source_ref: "filesystem/pak.c"
|
|
unsourceable: "The Linux dedicated servers that carry dmc/ (hlds_l 3.1.1.1 and 1.1.2.0) ship it as loose files with no .pak, and none of the WON patches checked carries a dmc/pak0.pak."
|
|
|
|
# ================================================================
|
|
# Opposing Force (gearbox/)
|
|
# ================================================================
|
|
|
|
- name: "liblist.gam"
|
|
category: game_data
|
|
system: gearbox
|
|
path: "gearbox/liblist.gam"
|
|
required: true
|
|
source_ref: "filesystem/gameinfo.c:617"
|
|
note: "Gearbox folder is the retail Opposing Force game dir."
|
|
|
|
- name: "pak0.pak"
|
|
category: game_data
|
|
system: gearbox
|
|
path: "gearbox/pak0.pak"
|
|
required: false
|
|
source_ref: "filesystem/pak.c"
|
|
unsourceable: "The free 1.1.0.8 WON patch ofo1108.exe installs a gearbox/pak0.pak of 83750141 bytes (sha1 aefbe228c010ade60e73d1ddf1f9b2878090b596) holding 514 entries with the 25 multiplayer maps and none of the of0a0 to of7a single-player maps, and the free Linux server opfor_linux.tar.gz carries a 529-entry multiplayer-only pak of 74390909 bytes, so neither is the client archive of the retail release."
|
|
|
|
# ================================================================
|
|
# Blue Shift (bshift/)
|
|
# Half-Life source dir still called "bshift" in Steam depot.
|
|
# ================================================================
|
|
|
|
- name: "liblist.gam"
|
|
category: game_data
|
|
system: bshift
|
|
path: "bshift/liblist.gam"
|
|
required: true
|
|
source_ref: "filesystem/gameinfo.c:617"
|
|
unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in"
|
|
|
|
- name: "pak0.pak"
|
|
category: game_data
|
|
system: bshift
|
|
path: "bshift/pak0.pak"
|
|
required: false
|
|
source_ref: "filesystem/pak.c"
|
|
unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in"
|
|
|
|
# ================================================================
|
|
# Ricochet (ricochet/)
|
|
# ================================================================
|
|
|
|
- name: "liblist.gam"
|
|
category: game_data
|
|
system: ricochet
|
|
path: "ricochet/liblist.gam"
|
|
required: true
|
|
source_ref: "filesystem/gameinfo.c:617"
|
|
|
|
- name: "pak0.pak"
|
|
category: game_data
|
|
system: ricochet
|
|
path: "ricochet/pak0.pak"
|
|
required: false
|
|
source_ref: "filesystem/pak.c"
|
|
unsourceable: "The Linux dedicated servers that carry ricochet/ (hlds_l 3.1.1.1 and 1.1.2.0) ship it as loose files with no .pak, and none of the WON patches checked carries a ricochet/pak0.pak."
|
|
|
|
# ================================================================
|
|
# Team Fortress Classic (tfc/)
|
|
# ================================================================
|
|
|
|
- name: "liblist.gam"
|
|
category: game_data
|
|
system: tfc
|
|
path: "tfc/liblist.gam"
|
|
required: true
|
|
source_ref: "filesystem/gameinfo.c:617"
|
|
|
|
- name: "pak0.pak"
|
|
category: game_data
|
|
system: tfc
|
|
path: "tfc/pak0.pak"
|
|
required: false
|
|
source_ref: "filesystem/pak.c"
|