Brainworks is a Quake 3 mod designed to give Quake III Arena bots working brains. It is a complete rewrite of all the Artificial Intelligence used by the bots. Brainworks includes:

  • Sound and visual awareness system
  • Randomized dodging in battles
  • Avoidance of incoming missiles
  • Strafejumping
  • Improved enemy aiming
  • Goal and score-based selection of item pickups
  • Timing of item respawns
  • Dynamic weapon selection (based on weapon accuracy)
  • Redesigned internal goal selection
  • Redesigned internal aim selection
  • Redesigned Teamplay logic
  • Rewritten chat code
  • Redesigned internal logic infrastructure

The goal of Brainworks is to make Quake 3 Arena bots as human-like as possible. With that in mind, the following human equivalents were set as the "goal for realism" for each bot.

  • Skill 1: Someone who has played Q3A for less than 2 weeks
  • Skill 2: Someone who has played Q3A for less than 3 months
  • Skill 3: Average player on a public server
  • Skill 4: The best player on a public server
  • Skill 5: A clan player who plays in professional tournaments

Obviously it's harder to make realistic skill 5 bots than skill 1 bots, but we've done everything we can in a reasonable amount of time to reach these five goals for realistic bots.

NOTE: The parts of code still derived from the original Quake 3 code (for example, function interfaces between the AI code and the main server) are covered under the original software license ID Software included with the source code release. Parts that are not based on the original code are covered by the select license for this project. [1]

Related Links

Google code page:

Note: If you want to download the mod, it requires you to sign up for Google or have a Google account.


  1., Google code page.

Ad blocker interference detected!

Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.