Skip to content

vkQuake3

Type standalone
Classification Game engines
Source https://github.com/suijingfeng/vkQuake3
Upstream https://github.com/ioquake/ioq3
Version 1.36
Revision suijingfeng/vkQuake3@5300b32803c1
Profiled 2026-10-17
Profile YAML, JSON
Cores vkquake3
Systems quake3, teamarena
Technical 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).

14 files | 9 required, 5 optional | 12 in repo, 0 missing, 2 unsourceable Categories: 14 game data

pak0.pk3 required unsourceable game_data #

pak1.pk3 required in repo game_data #

pak2.pk3 required in repo game_data #

pak3.pk3 required in repo game_data #

pak4.pk3 required in repo game_data #

pak5.pk3 required in repo game_data #

pak6.pk3 required in repo game_data #

pak7.pk3 required in repo game_data #

pak8.pk3 required in repo game_data #

pak0.pk3 optional in repo game_data #

pak0.pk3 optional unsourceable game_data #

pak1.pk3 optional in repo game_data #

pak2.pk3 optional in repo game_data #

pak3.pk3 optional in repo game_data #

Generated on 2026-10-20T03:49:43Z