Getting Started with Quagents: 2009

We have a working binary and examples up and running in the cs242 directory on the csug network. There was one bug fix and a recompilation in Jan. 2009. The new code is in cs242/quake09.

To start quake:

  1. Go to either the West lab or Inner lab.
  2. Open a terminal and type ~cs242/quake2ur2 &
If you are connecting remotely from a linux box and have X installed, you can connect to one of the cycle machines, for example:
ssh -X and type ~cs242/quake2ur2 &

You can move around with the arrow keys. Hold down shift to move your cursor out of the window.

Typing commands:

Within quake, type ~ and a console will open. One useful command is "noclip", which lets you move through walls and also up and down with the "space" and "c" keys.
To come out of the console, type ~ again.
The "map" command lets you change maps. Try "map open5".

Running a quagent:

  1. There is demo Java quagent code at ~cs242/demo
    Copy it into your own directory with "cp -R ~cs242/demo demo"
  2. Go into the directory and run QuagentDemo.
    cd demo
    /usr/staff/bin/java QuagentDemo
    (You must have started quake before running this java program.)

A quagent will spawn in front of you and start wandering around. The starting location of spawned quagents can be controlled by placing a quagent.config file in the directory from which you run quake2ur. You can stop the quagent by ending the Java program (ctrl-C) or by shooting at it a few times with ctrl. Close quake by pressing Esc and selecting quit.

Instead of typing console commands after starting quake, you can add them as command-line parameters.
Different values of sw_mode correspond to different resolutions.
~cs242/quake2ur +map open15 +noclip +sw_mode 4

Notice that java is at /usr/staff/bin/java. Also, javac is at /usr/staff/bin/javac. The defaults might not work.

To get an idea of what Quagents can do, read the Quagent Tech. Report

There is much more documentation at

Going Further With Quagents -- Creating New Bot Types

Here are Peter Barnum's Instructions for creating new bot types.


This page is maintained by CB.

Last update: 1.20.09.