UNR Logo

Quake2AI is an API created by Matt Parker to simplify creating a bot (an AI player) for the game Quake II. He used this API in his work on neurovisual control, which you can read about here [PDF].


The software components are linked in the relevant sections below.

The instructions are for installation on an Ubuntu Linux system.


***This section is under construction. (Many links will not work until I finish it.)
***You can temporarily access the documentation here.

Quake2AI is a library and API for launching client-side Artificial Intelligence-controlled bots. It features the ability to read color information from the rendered screen (for visual input to the AI), as well as directly read location information for nearby entities (for more traditional approaches to game AI), and check for wall collisions between any two points in the map. A bot programmed to this interface has access to the same movement and control capabilities as a human playing the game would.

Quake2AI is written in C. There is also a Chicken Scheme interface and a Python interface, which rely on the C library, so be sure to install it even if you prefer one of these interfaces.

General Quake2AI

Quake2AI C Library

Chicken Scheme Interfaces (q2ai)

Python Interfaces (pyquake2ai)

Running Quake2AI on the Cluster at UNR

Note: This is only possible for UNR students.

Experiments: Neurovisual Control

Neurovisual control is the use of an artificial neural network (ANN) to control an autonomous intelligent agent, with inputs from a visual source such as a camera or a game screen, and outputs that directly control the agent's actions.