Build AI agents for Quake Live. Real-time game state streaming at 60Hz with Gymnasium/RL compatibility. Train bots with reinforcement learning.
Position, velocity, health, armor, weapons - all at 60Hz via Redis Pub/Sub.
Ready-to-use environment wrapper for Stable Baselines3 and other RL frameworks.
Read game state and send movement, aiming, and attack commands back.
C-level access via get_entity_info() for item tracking and world state.
Complete stack with one command. Parallel training across multiple servers.
Built-in map viewer for debugging agent behavior and spatial reasoning.
# Clone and install
git clone https://github.com/cainky/QuakeLiveInterface.git
cd QuakeLiveInterface
poetry install
# Start the server stack
docker-compose up -d
# Connect to localhost:27960 in Quake Live
from stable_baselines3 import PPO
from ql_interface import QuakeLiveEnv
# Create Gymnasium environment
env = QuakeLiveEnv(
redis_host="localhost",
game_mode="ffa"
)
# Train with PPO
model = PPO("MlpPolicy", env, verbose=1)
model.learn(total_timesteps=100000)
# Save trained agent
model.save("quake_agent")