Skip to content

Quake 3 (Raspberry Pi)

Quake 3 (Raspberry Pi) emulates Quake III Arena. It reads 10 files, 1 of them required: without a required file it does not start games.

About this profile
Detail Value
Type standalone
Classification Game engine
Source https://github.com/raspberrypi/quake3
Upstream https://github.com/ioquake/ioq3
Version 1.35
Revision raspberrypi/quake3@8d89a2a3c170
Profiled 2026-10-20
Profile YAML, JSON
Cores quake3
Systems Quake III Arena
Checks the file by existence
Install this emulator's files

With RetroPie: the installer finds RetroPie and its BIOS folder, then downloads only the files Quake 3 (Raspberry Pi) reads there and checks each one.

Open a terminal on the device. Or connect from a computer with SSH, a terminal over the network. Paste the line. Press Enter.

Terminal
curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh -s -- --emulator quake3
Technical notes

The Raspberry Pi Foundation's ioquake3 1.35 snapshot with an OpenGL ES renderer for the VideoCore GPU (VERSION=1.35, Makefile:194). RetroPie builds it with build_rpi_raspbian.sh and installs ioquake3.arm and ioq3ded.arm, then links $md_inst/baseq3 to $romdir/ports/quake3.

BASEGAME = "baseq3" (code/qcommon/q_shared.h:37). fs_basepath defaults to the directory of the binary (code/sys/sys_main.c:474-479, 574), and FS_Startup mounts baseq3 under fs_basepath and fs_homepath (~/.q3a), then fs_game when set (code/qcommon/files.c:2762-2773, 2785-2787).

FS_CheckPak0 compares the pak checksum of baseq3/pak0.pk3 through pak8.pk3 to pak_checksums[] (code/qcommon/files.c:178-188, 2886-2910). This snapshot predates the Team Arena checksums: missionpack is only an ordinary mod directory here. A mismatch prints a warning and the pak stays mounted. A missing pak prints a message too, but the fatal error that follows is commented out (code/qcommon/files.c:2918-2943), so the point release paks are optional. What stops the engine is a missing default.cfg (code/qcommon/files.c:3328-3329), which only pak0.pk3 carries.

demoq3/pak0.pk3 with DEMO_PAK0_CHECKSUM is recognised and printed as a demo pak (code/qcommon/files.c:177, 2870-2884). RetroPie instead extracts its Q3DemoPaks.zip, the demo pak0.pk3 with the 1.32 point release paks, flat into baseq3/. The demo pak then fails the pak0 checksum with a warning and runs.

10 files: 1 required, 9 optional.

By kind: 10 game data.

File Required
baseq3/pak0.pk3 yes
baseq3/pak1.pk3 no
baseq3/pak2.pk3 no
baseq3/pak3.pk3 no
baseq3/pak4.pk3 no
baseq3/pak5.pk3 no
baseq3/pak6.pk3 no
baseq3/pak7.pk3 no
baseq3/pak8.pk3 no
demoq3/pak0.pk3 no

In this collection: 9 in repo, 0 missing and 1 unsourceable.

10 files

pak0.pk3 required unsourceable game data

  • Retail Quake III Arena base pak. Engine prints a warning on checksum mismatch, does not refuse the file.
  • Not collectable: retail data the collection does not hold, and a same-named file of another game must not stand in (acknowledged gaps)

pak1.pk3 optional in repo game data

  • Point release pak that RetroPie's quake3 package extracts from Q3DemoPaks.zip on install.

pak2.pk3 optional in repo game data

  • Point release pak that RetroPie's quake3 package extracts from Q3DemoPaks.zip on install.

pak3.pk3 optional in repo game data

  • Point release pak that RetroPie's quake3 package extracts from Q3DemoPaks.zip on install.

pak4.pk3 optional in repo game data

  • Point release pak that RetroPie's quake3 package extracts from Q3DemoPaks.zip on install.

pak5.pk3 optional in repo game data

  • Point release pak that RetroPie's quake3 package extracts from Q3DemoPaks.zip on install.

pak6.pk3 optional in repo game data

  • Point release pak that RetroPie's quake3 package extracts from Q3DemoPaks.zip on install.

pak7.pk3 optional in repo game data

  • Point release pak that RetroPie's quake3 package extracts from Q3DemoPaks.zip on install.

pak8.pk3 optional in repo game data

  • Point release pak that RetroPie's quake3 package extracts from Q3DemoPaks.zip on install.

pak0.pk3 optional in repo game data

  • Demo pak, recognised under demoq3/ by this checksum and counted as baseq3/pak0.pk3.
.