mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-21 03:09:08 -05:00
Profiles that read two repositories, a libretro port and its upstream, now prefix each citation with source or upstream, decided by which tree carries the cited value at its pin. The emulator pages use the word to tell libretro glue, emulator code as the port carries it, and the upstream emulator apart.
148 lines
6.1 KiB
YAML
148 lines
6.1 KiB
YAML
emulator: vkQuake3
|
|
type: standalone
|
|
core_classification: game_engine
|
|
source: "https://github.com/suijingfeng/vkQuake3"
|
|
upstream: "https://github.com/ioquake/ioq3"
|
|
profiled_date: "2026-10-17"
|
|
source_commit: "5300b32803c1c61bc3b6bdf86a084c1db1a217ad"
|
|
core_version: "1.36"
|
|
display_name: "Quake III Arena (vkQuake3)"
|
|
cores: ["vkquake3"]
|
|
systems: [quake3, teamarena]
|
|
|
|
notes: |
|
|
ioquake3 fork with a Vulkan renderer. PRODUCT_VERSION "1.36",
|
|
BASEGAME = "baseq3", BASETA = "missionpack" (code/qcommon/q_shared.h:45,
|
|
68, 71). NUM_ID_PAKS 9, NUM_TA_PAKS 4 (code/qcommon/qcommon.h:597-598).
|
|
|
|
fs_basepath defaults to Sys_DefaultInstallPath, the directory of the
|
|
binary (code/qcommon/files.c:3323, code/sys/sys_main.c:88-94, 738).
|
|
FS_Startup mounts baseq3 under fs_basepath and fs_homepath, then fs_game
|
|
when set (code/qcommon/files.c:3362-3377, 3396-3409). FS_AddGameDirectory
|
|
mounts every .pk3 of each directory (code/qcommon/files.c:2933).
|
|
|
|
FS_CheckPak0 compares the pak checksum of baseq3/pak0.pk3 through
|
|
pak8.pk3 and missionpack/pak0.pk3 through pak3.pk3 to pak_checksums[] and
|
|
missionpak_checksums[] (code/qcommon/files.c:179-197, 3486, 3516). The
|
|
value is a block checksum over the CRC32 of every member
|
|
(code/qcommon/files.c:2111), not a file hash. A mismatch prints a warning and the pak stays
|
|
mounted. A missing baseq3 pak is fatal unless the engine runs standalone,
|
|
which needs com_basegame other than baseq3 (code/qcommon/files.c:3570-3572,
|
|
3596-3619). Once any Team Arena pak is found the four are required
|
|
(code/qcommon/files.c:3622-3640). demoq3/pak0.pk3 with
|
|
DEMO_PAK0_CHECKSUM counts as baseq3/pak0.pk3 (code/qcommon/files.c:178,
|
|
3475-3479, 3580-3590).
|
|
|
|
Batocera 43.1 installs the binary as /usr/bin/ioquake3/ioquake3 and runs
|
|
it through the ioquake3 generator, which copies /usr/bin/ioquake3 into
|
|
/userdata/roms/quake3 and starts /userdata/roms/quake3/ioquake3 with the
|
|
arguments written in the ROM file (configgen
|
|
generators/ioquake3/ioquake3Generator.py). fs_basepath is therefore
|
|
/userdata/roms/quake3. Patch 001-config-dir.patch sets
|
|
HOMEPATH_NAME_UNIX to "/configs/ioquake3", appended to $HOME
|
|
(code/sys/sys_unix.c:65, 79).
|
|
|
|
files:
|
|
- name: "pak0.pk3"
|
|
category: game_data
|
|
system: quake3
|
|
path: "baseq3/pak0.pk3"
|
|
required: true
|
|
source_ref: "source code/qcommon/files.c:180 (pak_checksums[0]=1566731103u), 3486 (checksum compare), 3596-3619 (fatal when a baseq3 pak is absent)"
|
|
note: "Retail Quake III Arena pak. A checksum mismatch prints a warning, the file is not refused."
|
|
unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in"
|
|
|
|
- name: "pak1.pk3"
|
|
category: game_data
|
|
system: quake3
|
|
path: "baseq3/pak1.pk3"
|
|
required: true
|
|
source_ref: "source code/qcommon/files.c:181 (pak_checksums[1]=298122907u), 3596-3619 (fatal when a baseq3 pak is absent)"
|
|
|
|
- name: "pak2.pk3"
|
|
category: game_data
|
|
system: quake3
|
|
path: "baseq3/pak2.pk3"
|
|
required: true
|
|
source_ref: "source code/qcommon/files.c:182 (pak_checksums[2]=412165236u), 3596-3619 (fatal when a baseq3 pak is absent)"
|
|
|
|
- name: "pak3.pk3"
|
|
category: game_data
|
|
system: quake3
|
|
path: "baseq3/pak3.pk3"
|
|
required: true
|
|
source_ref: "source code/qcommon/files.c:183 (pak_checksums[3]=2991495316u), 3596-3619 (fatal when a baseq3 pak is absent)"
|
|
|
|
- name: "pak4.pk3"
|
|
category: game_data
|
|
system: quake3
|
|
path: "baseq3/pak4.pk3"
|
|
required: true
|
|
source_ref: "source code/qcommon/files.c:184 (pak_checksums[4]=1197932710u), 3596-3619 (fatal when a baseq3 pak is absent)"
|
|
|
|
- name: "pak5.pk3"
|
|
category: game_data
|
|
system: quake3
|
|
path: "baseq3/pak5.pk3"
|
|
required: true
|
|
source_ref: "source code/qcommon/files.c:185 (pak_checksums[5]=4087071573u), 3596-3619 (fatal when a baseq3 pak is absent)"
|
|
|
|
- name: "pak6.pk3"
|
|
category: game_data
|
|
system: quake3
|
|
path: "baseq3/pak6.pk3"
|
|
required: true
|
|
source_ref: "source code/qcommon/files.c:186 (pak_checksums[6]=3709064859u), 3596-3619 (fatal when a baseq3 pak is absent)"
|
|
|
|
- name: "pak7.pk3"
|
|
category: game_data
|
|
system: quake3
|
|
path: "baseq3/pak7.pk3"
|
|
required: true
|
|
source_ref: "source code/qcommon/files.c:187 (pak_checksums[7]=908855077u), 3596-3619 (fatal when a baseq3 pak is absent)"
|
|
|
|
- name: "pak8.pk3"
|
|
category: game_data
|
|
system: quake3
|
|
path: "baseq3/pak8.pk3"
|
|
required: true
|
|
source_ref: "source code/qcommon/files.c:188 (pak_checksums[8]=977125798u), 3596-3619 (fatal when a baseq3 pak is absent)"
|
|
|
|
- name: "pak0.pk3"
|
|
category: game_data
|
|
system: quake3
|
|
path: "demoq3/pak0.pk3"
|
|
required: false
|
|
source_ref: "source code/qcommon/files.c:178 (DEMO_PAK0_CHECKSUM=2985612116u), 3475-3479 (demoq3 pak0 checksum compare), 3580-3590 (counted as baseq3/pak0.pk3)"
|
|
note: "Demo pak. Recognised only under demoq3/ with this checksum, and the engine then prints a warning and counts baseq3/pak0.pk3 as found."
|
|
|
|
- name: "pak0.pk3"
|
|
category: game_data
|
|
system: teamarena
|
|
path: "missionpack/pak0.pk3"
|
|
required: false
|
|
source_ref: "source code/qcommon/files.c:193 (missionpak_checksums[0]=2430342401u), 3622-3640 (fatal when a Team Arena pak is absent)"
|
|
note: "Team Arena pak. Read with `+set fs_game missionpack`."
|
|
unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in"
|
|
|
|
- name: "pak1.pk3"
|
|
category: game_data
|
|
system: teamarena
|
|
path: "missionpack/pak1.pk3"
|
|
required: false
|
|
source_ref: "source code/qcommon/files.c:194 (missionpak_checksums[1]=511014160u), 3622-3640 (fatal when a Team Arena pak is absent)"
|
|
|
|
- name: "pak2.pk3"
|
|
category: game_data
|
|
system: teamarena
|
|
path: "missionpack/pak2.pk3"
|
|
required: false
|
|
source_ref: "source code/qcommon/files.c:195 (missionpak_checksums[2]=2662638993u), 3622-3640 (fatal when a Team Arena pak is absent)"
|
|
|
|
- name: "pak3.pk3"
|
|
category: game_data
|
|
system: teamarena
|
|
path: "missionpack/pak3.pk3"
|
|
required: false
|
|
source_ref: "source code/qcommon/files.c:196 (missionpak_checksums[3]=1438664554u), 3622-3640 (fatal when a Team Arena pak is absent)"
|