Quake III

Quake III Arena (1999) by id Software is a multiplayer-focused first-person shooter known for its fast-paced arena combat. Batocera supports two engines: ioquake3 (OpenGL-based source port) and vkQuake3 (with Vulkan support). This system scrapes metadata for the “ports” group(s) and loads the quake3 set from the currently selected theme, if available. Grouped with the “ports” group of systems.

  • Emulators: ioquake3, vkQuake3
  • Folder: roms/quake3/
  • Accepted ROM formats: .quake3

No Quake III emulator in Batocera needs a BIOS file to run.

You need the original Quake III Arena game data files. You can purchase the game from Steam or GOG.com. Copy the baseq3 and missionpack folders into /userdata/roms/quake3/.

To start a game, create a file with the .quake3 extension. Inside this file, add the command line that tells the engine which game/mod to launch.

/userdata/roms/quake3/
               ├── baseq3/
               |    ├── pak0.pk3
               |    └── (other pk3 files)
               ├── missionpack/
               |    └── pak0.pk3
               ├── Quake III Arena.quake3
               └── Quake III Team Arena.quake3

Unlike other ports, Quake III launch files are not empty — they contain command-line arguments:

  • For Quake III Arena: the file should contain +set fs_game “baseq3”
  • For Quake III: Team Arena: the file should contain +set fs_game “missionpack”
  • For mods: the file should contain +set fs_game “<mod folder>”

Repeat this step for each mod you wish to play, giving the file a logical name to help with artwork scraping.

Menu options in Team Arena and other mods can only be selected using a mouse. Once the game is started, the controller will function normally.

Save location system/configs/ioquake3/

ioquake3 is the main Quake III source port using OpenGL rendering. Standardized features available: quake3.videomode, quake3.padtokeyboard, quake3.bezel, quake3.bezel_stretch, quake3.hud, quake3.hud_corner, quake3.bezel.tattoo, quake3.bezel.tattoo_corner, quake3.bezel.tattoo_file, quake3.bezel.resize_tattoo

ES setting name batocera.conf_key Description ⇒ ES option key_value
Settings that apply to all cores of this emulator
GRAPHICS MEMORY quake3.ioquake3_mem Select how much graphics memory is allocated for the GPU. May need modifying for some games/systems.
⇒ 64MB 64, 128MB 128, 256MB (Default) 256, 512MB 512.

vkQuake3 adds Vulkan rendering support on top of ioquake3. Requires Vulkan support on your system. Standardized features available: quake3.videomode, quake3.padtokeyboard, quake3.bezel, quake3.bezel_stretch, quake3.hud, quake3.hud_corner, quake3.bezel.tattoo, quake3.bezel.tattoo_corner, quake3.bezel.tattoo_file, quake3.bezel.resize_tattoo

ES setting name batocera.conf_key Description ⇒ ES option key_value
Settings that apply to all cores of this emulator
GRAPHICS API quake3.vkquake3_api Choose which graphics API library to use.
⇒ OpenGL opengl2, Vulkan vulkan.
GRAPHICS MEMORY quake3.ioquake3_mem Select how much graphics memory is allocated for the GPU.
⇒ 64MB 64, 128MB 128, 256MB (Default) 256, 512MB 512.

Here are the default Quake III controls shown on a Batocera Retropad: The game is pre-configured to work with a gamepad via the built-in joystick support:

Gamepad button Action
Left analog stick Move / Strafe
Right analog stick Look
A (South) Jump
X (West) Crouch
Y (North) Use item
L1 Next weapon
R1 Previous weapon
L2 Walk (hold)
R2 Fire

For the best experience, a mouse and keyboard is recommended. Game controllers work but some menu navigation (especially in Team Arena) requires a mouse.

  • Make sure the baseq3 folder exists and contains the .pk3 files.
  • Verify that the .quake3 launch file contains the correct command, e.g. +set fs_game “baseq3”.
  • vkQuake3 requires Vulkan support — if your system does not support Vulkan, use ioquake3 instead.

For further troubleshooting, refer to the generic support pages.

  • systems/quake3.txt
  • Last modified: 5 weeks ago
  • by wizzard