Gladiatorv0.95

Title | Gladiator Bot for Quake2
Version | version 0.95
Date | 1999-05-30
Authors | Mr. Elusive (concept, design & programming)
| Squatt (concept, design, this readme)
| Mr. Freeze (Gladiator page)
Email | mrelusive@botepidemic.com
Bot Homepage | http://www.botepidemic.com/gladiator

Contents

Credits
Description of the add-on
System and other requirements
Installing the add-on
Running the add-on
BSPC Tool
New console commands
New console variables
Administrator menu
The Bot Characters
Bot chats
Chat macros
Xatrix mission pack 1 "The Reckoning"
Rogue mission pack 2 "Ground Zero"
Rocket Arena 2
Capture The Flag
Other mods with the Gladiator bot
Known problems/bugs
Troubleshooting
Copyright and distribution permissions
Availability
Version changes

Credits

ID Software |  | Quake2
Allan (Strider) Kivlin |  | Stimulating conversations, and beta testing
Philip Niewold |  | ideas on AI
Info-Zip Team |  | zip/unzip tools (http://www.cdrom.com/pub/infozip/)
Adrian (Mr Pink) Finol |  | beta testing
Dominic (Cube) Rutter |  | beta testing
Matt (Genocyde) Freitas |  | beta testing
Timm Stokke |  | beta testing
Rhea |  | Gladiator bot integration with Tourney
Raven |  | Gladiator bot Internet server
Karel Suhajda aka KASUHA |  | the Auto-cam idea

Description of the add-on

The gladiator bot is specifically designed to create an artificial opponents for the Quake 2 game, i.e. the computer creates the illusion that the player is taking part in a LAN or interrnet game of Quake2.

- State of the art Artificial Intelligence. The add-on simulates one or more artificial players. Designed for everyone who wants to become a better player in Quake2 or to experience the multiplayer feel without having a fast network and/or Internet connection.
- A tool is included that needs to be run before the bots are played. This tool creates .aas files that contain all the information the bot needs in order to navigate and understand a whole map. The AAS removes the need for human intervention and the need to meticulously lay down waypoints. Despite claims of others in the gaming community, the Gladiator is the first to use "areas" to navigate any map.
- The bot uses an advanced and easy extendable AI network with hierarchical decomposition.
- Goal evaluation, selection and planning AI.
- Bot uses fuzzy logic which gives it an amount of flexibility when making decisions and allows those decisions to appear much more intelligent.
- Advanced navigation and fast cachable dynamic routing.
- The bot has a 90 degree field of vision and cannot see more than a human player. The bot's view is also affected by light and dark areas of the map and dynamic lights.
- The bot can hear, understand and react upon sounds.
- Understanding all the game rules, weapons and items.
- The bot can chat intelligently using adjustable bot chats.
- Team AI which enables the bots to perform team actions like helping out or accompanying team mates, defending key areas etc. There can be team leaders who can order other bots or human players around. The bot are autonomous individuals. There are no gods or god-like scripts controlling the bots.
- Ability to order bots on your team to do things by chatting with them. The bots can also use chats to order other bots or you to do things.
- Several different bot characters included for the real multiplayer experience.
- The bots are fully adjustable. From adjusting over 50 characteristics to what items or weapons the bot likes best depending on the situation.
- Menu in order to easily add bots to and remove bots from the game.
- Observer modes have been included for players to observe the playing bots.
- Autocam in order to get the best view of all the action in the game.
- The bot AI is stored in a separated dynamic link library which allows other mod authors to easily link the bot into their own patch.
- Support for Zoid's Capture The Flag, Rocket Arena 2, Xatrix mission pack 1 "The Reckoning" and Rogue mission pack 2 "Ground Zero".

With the AAS the bot can theoretically play any map ever made. However keep the following in mind. The bot isn't finished yet and doesn't know how to go about with some 'trains', rotating objects, lasers, secrets, buttons, etc. As a result the bot might sometimes do seemingly stupid things or simply get stuck on maps with lots of these features. For your convenience a list has been included with maps the bot can play fairly well.

System and other requirements

- a computer that runs Quake2 with a minimum of 32 MB, recommended: Pentium 166 MHz with 64 MB or comparable computer.
- Runs on Q2 Linux with either glibc or libc5, Windows 9x or Windows NT.
- Quake2 version 3.20.
- newbies to computers: we assume that the typical user knows such things as "command line", "parameters", "directory", "folder", and all that..if you don't, go out there and familiarize yourself with it...we do not want to be your teachers.
- newbies to Quake2: read the quake manual on what and how Quake2 specific settings work out. You need to know what a multiplayer game is, the console, how to activate it..etc.. We simply don't want any mail on this subject. You (presumably) bought the game, we assume it is your duty to read all it's manuals...or we will put you on "the Black List".
- a sense of humor.

Installing the add-on

- Create a subdirectory in your Quake2 directory. (if E:\QUAKE2 is your Quake2 directory you could create E:\QUAKE2\GLADIATOR)
- Copy the contents of the zip file (including the subdirectories) into the created directory.

Running the add-on

First, create .AAS files with the BSPC tool for the map(s) you want to play.

The following links lead to so called "bot launchers" that enable you to easely configure and play the Gladiator bot without much of a hassle. We're sure that you'll find one that suits you:

- Gladiator!
- Bot Johnny
- The Gladiator Generator
- Don't Panic

Of course, if you don't like none of that button-clicking, mouse wielding weenie stuff, but want to use the good ol' keyboard like a real pro (=unix-dinosaur) kinda stuff, you can also manually launch Quake2 with the Gladiator bot as follows:

- Start Quake2 with the command-line parameter '+set game' followed by the name of the directory where the Gladiator bot is located (for example: e:\quake2\quake2 +set game gladiator) Remember that you need to start a server to enable the bots. This can be accomplished by adding the parameters '+set deathmatch 1' the line would become 'e:\quake2\quake2 +set game gladiator +set deathmatch 1'. Since Quake2 screws up the game directory setting after playing the demos it's a good idea to prevent the demos from being played. You can accomplish this by adding the command-line parameter '+disconnect'. The full command-line will look like this: 'e:\quake2\quake2 +set game gladiator +set deathmatch 1 +disconnect'. Quake2 will launch and the console will be down. Just use the 'map' console command to start the map you want.
- Type 'menu' on the console (and remember to pull-up the console) and you can add bots, see the administrator menu

BSPC Tool

The BSPC tool creates AAS files which the bot uses to navigate and understand maps. The BSPC tool is included with the Gladiator bot. Launch this program to create AAS files.

Read the BSPC.htm for more information about the console version of BSPC.
Read the WinBSPC.htm for more information about the Windows version of BSPC.

Several (optimized) .aas files can be stored together in an "aasX.zip" where X is in the range [0-9]. The "aasX.zip" file should be placed in your Gladiator directory. The bot library will read the .aas files directly from the zip file. However you should only zip .aas files that have been loaded at least once with bots. The first time a newly compiled .aas file is loaded, some additional data is calculated and the file is optimized. These calculations should be finished before adding the .aas file to an "aasX.zip".
NOTE: zipping several .aas files into an "aasX.zip" only works with the Windows version of the Gladiator bot.

New console commands

menu [rcon password] | show administrator menu NOTE: the rcon password is only required when "serveronlybotcmds" is set.
addbot <botlib> <name> <skin> <charfile> <charname> | add one bot <botlib> name of the bot library <name> name of the bot <skin> skin of the bot <charfile> file with the bot character <charname> name of the character *
removebot [name] | remove a bot or the bot with the given name *
addrandom [X] | add one or X bots randomly chosen from the bot cfg file or custom bots*
botpause | pause the game in multiplayer mode*
observer | toggles observer mode
observerhelp | displays observer mode help
cyclecam | cycle the camera to the next bot or player
setcam <name> | set the camera to player with name
autocam | enter Automatic Camera mode
lag <msec> | sets the number of milli seconds lag
lagvariance <msec> | sets the lag fluctuation in milli seconds
teamhelp [name] | macro to ask for help in teamplay
teamaccompany [name] | macro to ask for company in teamplay
checkpoint <name> | macro which creates a chat to tell people there's a checkpoint at your location
mstart | start the match in RA2
mstop | stop the match in RA2 mode
toarena <X> | go to arena X in RA2 mode (arena 0 is the observer room)

* When "serveronlybotcmds" is set these commands can only be used on the server console. To execute the commands on the server console "sv " needs to be added in front. For instance : ' sv addbot gladiator.dll "Pinky" "male/viper" "bots/chars.c" "hunk" '.

New console variables

botfile <filename> | sets the file with bots to use in the menu
botlib <filename> | bot library to use (for instance: gladiator.dll)
nochat <0|1> | enable or disable bot chatting (have to reload bots after chaning this setting)
minimumplayers <x> | set the miminum number of players in the game, bots are added when to few players are in the game
autolaunchbspc <0|1> | enable or disable launching WinBSPC automatically
serveronlybotcmds <0|1> | enable or disable the ability to use the bot commands (addbot etc) at the client side
allow_pause <0|1> | enable or disable the pause option
freebotlib <0|1> | free the bot library after all bots are removed (default: 1)
altnames <0|1> | enable or disable alternative names for the boring people
ra <0|1> | enable or disable Rocket Arena
ctf <0|1> | enable or disable CTF
xatrix <0|1> | enable or disable Xatrix mission pack 1
rogue <0|1> | enable or disable Rogue mission pack 2
botctfteam <0|1|2> | the CTF team the bots will be assigned to (0 = auto assign, 1 = red, 2 = blue)
mstart_auto <0|1> | enable or disable auto restarting of match in Rocket Arena
ra_playercycle | enable or disable Rocket Arena player cycling
ra_botcycle | same as ra_playercycle but there will always be a human payer in the arena
noitems <0|1> | enable or disable no items in Rocket Arena
selfdamage <0|1> | enable or disable Rocket Arena self damage
healthprotect <0|1> | enable or disable Rocket Arena health protect
armorprotect <0|1> | enable or disable Rocket Arena armor protect
shotgun <0|1> | enable or disable the Shotgun in Rocket Arena
supershotgun <0|1> | enable or disable the Super Shotgun in Rocket Arena
machinegun <0|1> | enable or disable the Machinegun in Rocket Arena
chaingun <0|1> | enable or disable the Chaingun in Rocket Arena
grenadelauncher <0|1> | enable or disable the Grenade Launcher in Rocket Arena
rocketlauncher <0|1> | enable or disable the Rocket Launcher in Rocket Arena
hyperblaster <0|1> | enable or disable the Hyperblaster in Rocket Arena
railgun <0|1> | enable or disable the Railgun in Rocket Arena
bfg <0|1> | enable or disable the BFG10K in Rocket Arena
armor <x> | set the amount of armor in Rocket Arena (default: 200)
health <x> | set the amount of health in Rocket Arena (default: 100)
shells <x> | set the amount of shells in Rocket Arena (default: 100)
bullets <x> | set the amount of bullets in Rocket Arena (default: 200)
slugs <x> | set the amount of slugs in Rocket Arena (default: 50)
grenades <x> | set the amount of grenades in Rocket Arena (default: 50)
rockets <x> | set the amount of rockets in Rocket Arena (default: 50)
cells <x> | set the amount of cells in Rocket Arena (default: 150)

Administrator menu

Using the menu

The move forward and backward keys (usually the arrow up and arrow down keys) are used to go to the next or previous menu item. The keys normally used to scroll through your inventory can also be used to move through the menu. Activating a menu item can be done with the 'use inventory' key (usually the [Enter] key). It's also possible to use strafe right and left keys to enter and leave a sub-menu. To exit the menu at any time press the [Esc] key.

Gladiator menu:

Bots |  | bot menu
DM / CTF / RA2 |  | one of the game settings menus
Help |  | menu help
Exit |  | leave the menu

Bot menu:

add bot |  | add a bot from the bots.cfg
add random |  | add a random bot from the bots.cfg
remove bot |  | remove a bot from the game
remove all |  | remove all bots from the game
back |  | back to the gladiator menu

Deathmatch menu:

teamplay |  | teamplay mode
allow health |  | allow health
allow powerups |  | allow powerups
allow armor |  | allow armor
weapons stay |  | weapons stay after picking them up
falling damage |  | damage when falling from from great heights
instant items |  | powerups are activated instantly
same map |  | stay on the same level
friendly fire |  | friendly fire
spawn farthest |  | spawn as far away as possible from the last death location
force respawn |  | force respawn, players can't stay dead
allow exit |  | allow players to exit a level
infinite ammo |  | infinite ammo
quad drop |  | quad damage is dropped when a player using quad dies
fixed FOV |  | fixed field of vision
quad fire drop |  | quad fire damage is dropped when a player using quad dies *
allow mines |  | allow rogue mines *
allow stack double |  | allow rogue stack double *
allow nukes |  | allow rogue nukes *
allow spheres |  | allow rogue spheres *
back |  | back to the gladiator menu

* only available when Xatrix mission pack 1 is enabled
* only available when Rogue mission pack 2 is enabled

CTF menu:

bot team |  | the ctf team the bots will be assigned to
force join |  | players joining the server will automatically be assigned to a team
armor protect |  | attacks won't harm teammates' armor
allow techs |  | allow tech powerups
allow health |  | allow health
allow powerups |  | allow powerups
allow armor |  | allow armor
weapons stay |  | weapons stay after picking them up
falling damage |  | damage when falling from from great heights
instant items |  | powerups are activated instantly
same map |  | stay on the same level
friendly fire |  | friendly fire
spawn farthest |  | spawn as far away as possible from the last death location
force respawn |  | force respawn, players can't stay dead
allow exit |  | allow players to exit a level
infinite ammo |  | infinite ammo
quad drop |  | quad damage is dropped when a player using quad dies
fixed FOV |  | fixed field of vision
back |  | back to the gladiator menu

Rocket Arena menu:

bot arena |  | the arena to add bots to
teamplay |  | teamplay mode
self damage |  | cannot damage yourself
health protect |  | attacks won't harm teammates' health
armor protect |  | attacks won't harm teammates' armor
Shotgun |  | enable/disable the Shotgun
Super Shotgun |  | enable/disable the Super Shotgun
Machinegun |  | enable/disable the Machinegun
Chaingun |  | enable/disable the Chaingun
Grenade Launcher |  | enable/disable the Grenade Launcher
Rocket Launcher |  | enable/disable the Rocket Launcher
Hyperblaster |  | enable/disable the Hyperblaster
Railgun |  | enable/disable the Railgun
BFG |  | enable/disable the BFG10K
back |  | back to the gladiator menu

The Bot Characters

The bot characters available in this version come in 18 flavors, 6 boyz, 6 girlz and 6 cyborgs. Each character is specified with over 50 characteristics, item selection code, weapon selection code, variable chats etc. For each bot just a few characteristics (attack skill, aim skill, aim accuracy) and a short description are listed below.
Attack Skill is the ability to avoid getting damage (dodgeing, jumping running, circlestrafing, making coffee). Aim Skill is whether the character knows stuff like where to shoot an enemy to inflict maximum damage, such as shooting rockets in front of a target's feet for instance, and Aim Accuracy defines how well the bot can keep the crosshair positioned on the target during battle.

Character Name | Alt Name | Sex | Attack Skill | Aim Skill | Aim Accuracy | Notes
Adrenaline Hunk | Zeta | male | 0.70 | 1 | 0.5 |
Bill Gates | Beta | male | 0.9 | 0.60 | 0.30 | Yes it's Bill Gates, the guy we all know from the Omicron bot. Any similarity between this Bill and the guy from a certain software company is totally on purpose and with malicious intent, I mean..let's face it, would it give you the same satisfaction if this guy was called Bill Cosby?
Byte | Iota | other | 0.15 | 0.15 | 0.15 |
Demigoddess | Omicron | female | 0.95 | 0.95 | 0.95 | Back from the Omicron bot, the Demigod (or goddess if you will) will show you enlightment..with the aid of violence. She's better than S.babe
Java Man | Alpha | other | 0.75 | 0.1 | 1 |
Laura Craft | Upsilon | female | 0.30 | 0.30 | 0.30 | Any similarity to any person, living or dead is purely coincidence...we're not sure if this also applies to the digital world...heh heh.... :)
Luuzr | Eta | male | 0.10 | 0.10 | 0.10 |
Maxine | Mu | female | 0.25 | 0.8 | 0.5 | -
Number 9 | Rho | other | 0.75 | 0.75 | 0.75 |
player | Pi | male | 0.25 | 0.25 | 0.25 | This is supposed to be the guy that hasn't discovered how to edit his own name. Kinda like a newbie...
Quad bitch | Labda | female | 0.2 | 0.6 | 1 |
Reaper | Reaper | other | 1 | 1 | 1 | named after "father" of all bots
Shotgun Messiah | Delta | female | 0.60 | 0.60 | 0.60 | She has a preference of the shotgun above anything else. That doesn't mean she won't pick up the railgun....
Silicon Babe | Epsilon | female | 0.85 | 0.92 | 0.82 | For all of you who have a failing grade in the English language; it's Silicon Babe, not Silicone Babe (my guess is that Pamela Anderson falls into this category). Silicon is the stuff your CPU is made out of, not the stuff used for lubrication or breast implants.
Spartacus | Sigma | male | 0.5 | 0.5 | 0.5 | This guy is supposed to be the original gladiator.....you know..the roman empire...the slave revolt...he's a Greek guy as well....I would like to dedicate this character to Stanley Kubrick...I really like Spartacus the movie.
Steroid Stud | Tau | male | 0.20 | 0.20 | 0.20 | -
Trash | Omega | other | 0.80 | 0.80 | 0.80 |
Zero | Kappa | other | 0.001 | 0.001 | 0.001 | If you lose from this guy, you're worse than a 0, and that means you can't impress the other sex, unless you're loaded (and we don't mean that you're drunk), or have the looks...or both.

Bot chats

The Gladiator bot tries to interact with it's environment like a real player, including chatting with other players. The system isn't perfect, but for those of you who know didley squatt (heh heh) about programming, its just a matter of finding a balance between realism and cpu load. The bot can (but will not always) reply to phrases from other players (including other bots).

In teamplay and CTF, you can tell the bots on your team what to do by chatting to them. If a bot decides to do what you tell it, you will be notified by the same method, otherwise, if it rails you, it might become clear to you that it does not agree with your "commands". Listed below are a few of the possible ways to patronize your (bot) team mates:

chat |  | reaction
"help me" |  | some of your team mates might help you if he/she knows where you are
"help me near the rl" |  | some of your team mates might help you near the Rocket Launcher
"hunk help me" |  | Adrenaline Hunk should go to you and help you.
"babe help hunk near the db" |  | Silicon Babe should help Adrenaline Hunk near the Super Shotgun.
"accompany me" |  | some of your team mates might accompany you
"messiah accompany me" |  | Shotgun Messiah should accompany you.
"zero go with babe" |  | Zero should follow Silicon Babe.
"get the enemy flag" |  | some of your team mates should get the enemy flag.
"maxine capture the enemy flag" |  | Maxine should capture the enemy flag.
"defend the base" |  | some of your team mates should defend the base
"rush to base" |  | all your team mates should go to the base

For instance you're in a team with four bots: Bill Gates, Adrenaline Hunk, Silicon Babe, Shotgun Messiah. You want to organize an attack in CTF and you're at the base.

"everyone accompany me" |  | everyone will go to you at the base
"bill follow hunk" |  | bill will accompany hunk
"hunk go capture the flag" |  | hunk will try to capture the flag and bill will follow and help him
"babe and messiah defend the base" |  | babe and messiah will defend the base

Several bot and human players can join sub-teams. For instance:

"bill and hunk create team bravo" |  | bill and hunk will be in a new sub-team bravo
"babe join team bravo" |  | base will join sub-team bravo
"bravo follow me" |  | all members of team bravo will follow you
"hunk leave your team" |  | hunk will leave team bravo
"bravo dismissed" |  | all members of team bravo are dismissed

A list with all the sentences the bot understands can be found in the file match.c in the .pak file included with the Gladiator bot. Please don't ask any questions related to the bot chat interpretation. More details will be available in the future.

Chat macros

For those not familar with the CTF-style "%" macros, the following is a description of the macros that can be used in teamplay to communicate ongoing match information to fellow teammates:

%L |  | Gives speaking player's location on map.
%A |  | Tells the amount of armor the speaking player's currently possesses.
%H |  | Tells the amount of health the speaking player's currently possesses.
%W |  | Tells the current weapon the speaking player is currently holding.
%N |  | Tells the closest player to the speaking player.

Xatrix mission pack 1 "The Reckoning"

Mission pack 1 can be found at http://www4.activision.com/games/quake2mp1/. The Reckoning should be installed in order to play it with the Gladiator bot. Copy all the Gladiator bot files to your The Reckoning folder (you might want to backup your original The Reckoning files first!). At this point you launch Ground Zero as you'd normally do. Type 'set xatrix 1' on the console and then load the Xatrix map you want to play.

Rogue mission pack 2 "Ground Zero"

Mission pack 2 can be found at http://www4.activision.com/games/quake2mp2/. Ground Zero should be installed in order to play it with the Gladiator bot. Copy all the Gladiator bot files to your Ground Zero folder (you might want to backup your original Ground Zero files first!). At this point you launch Ground Zero as you'd normally do. Type 'set rogue 1' on the console and then load the Rogue map you want to play.

Rocket Arena 2

Rocket Arena can be found at http://www.planetquake.com/arena. Rocket Arena 2 should be installed in order to play it with the Gladiator bot. Copy all the Gladiator bot files to your Rocket Arena 2 folder (you might want to backup your original Rocket Arena 2 files first!). At this point you launch Rocket Arena 2 as you'd normally do. Type 'set rocketarena 1' and 'set deathmatch 1' on the console and then load the Rocket Arena map you want to play. Type 'toarena X' on the console to go to the arena you want (X is the number of the arena, 1 or higher is an arena, 0 is no arena, it's the observer room). Type 'set arena X', where X is the arena you want to spawn a bot. Use the menu to add a bot to the specified arena. Type 'mstart' on the console to start the match. Type 'mstop' on the console to stop a match.

Capture The Flag (CTF)

Zoid's CTF can be found at ftp://ftp.idsoftware.com/idstuff/quake2/ctf/. Zoid's CTF should be installed in order to play it with the Gladiator bot. Copy all the Gladiator bot files to your CTF folder (you might want to backup your original CTF files first!). At this point you launch CTF as you'd normally do. Type 'set ctf 1' and 'set deathmatch 1' on the console and then load the CTF map you want to play. Use the menu to add bots to the game. The bots will automatically be assigned to the teams.

Other mods with Gladiator bot

Other mods with the Gladiator bot integrated:

- OSP Tourney DM (http://www.planetquake.com/osp) server mod for tournaments.
- Quake 2 2 player (http://www.converted2.com/bmd) enables playing with multiple players on one computer.

Known problems/bugs

When reporting a bug please include the 'botlib.log' file and fill in the bugreport.txt

- Setting 'maxclients' to 256 and 'maxentities' to 2048 before loading q2ctf8 crashes Quake2. This is probably a bug in Quake2.

Troubleshooting

- When I type menu on the console I just see an echoed 'menu': make sure you've installed the bot correctly and make sure no demos are played before loading a map. Note that the menu only works when a map is loaded.
- The .AAS files I created for the previous version of the Gladiator bot don't work with the new version: You'll need to compile the maps with latest (Win)BSPC (included with the bot) to create .AAS files that work with this version of the bot.
- None of the bot characters seem to rocket-jump or use the grappling hook in CTF; you are using an old .AAS file: re-AAS your maps.

Copyright and distribution permissions

By using this product you agree to exempt, without reservation, the authors and owners of this production or components thereof from any responsibility for liability, damage caused, or loss, directly or indirectly, by this software, including but not limited to, any interruptions of service, loss of business, or any other consequential damages resulting from the use of or operation of this product or components thereof. No warranties are made, expressed or implied, regarding the usage, functionality, or implied operability of this product. All elements are available solely on an "as-is" basis. Usage is subject to the user's own risk.

We grant to you the non-exclusive and limited right to use the Gladiator bot for recreational purposes only. You are not receiving any ownership or proprietary right, title or interest in or to the Gladiator bot or the copyright, trademarks or other rights related thereto. You shall not rent, sell, lease, lend, offer on a pay-per-play basis or otherwise commercially exploit or commercially distribute the Gladiator bot. You are only permitted to distribute the Gladiator bot for free, without any cost or charge.

Serious inqueries about buying a bot technology license for commercial purposes can be made to MrElusive.

Note: The Gladiator bot incorporates compression code from the Info-ZIP group. There are no extra charges or costs due to the use of this code, and the original compression sources are freely available from http://www.cdrom.com/pub/infozip/ or ftp://ftp.cdrom.com/pub/infozip/ on the Internet.

Availability

You are reading this, so you must have it, so why would you need another one? Oh well... you can find the most recent version at http://www.botepidemic.com/gladiator.

Version changes

version 0.95 (30th May 1999)

- added rocket jumping
- fixed all bots using male model in CTF
- added % chat macros
- added weapon level to the weapon specifications for assimilation
- added teamplay mode based on renderfx colored glow flag

version 0.94 (20th May 1999)

- ported the BSPC tool to Linux
- rewrote the core of the reachability algorithm
- fixed endless loop in synonym replacement (at end of tourney 1v1 match)
- teamhelp macro (don't know any team mate called "me near the shotgun") (string at end of define in match.c)
- fixed the ERROR: Game Error: Fatal: GB|trash at 495.8 switched more than 50 AI nodes
- added patrol time to match templates

version 0.93 (9th May 1999)

- added RA2 "ra_botcycle" option, same as ra_playercycle but there will always be a human player in the arena
- added RA2 "ra_playercycle" option, player cycling where the winner stays and the longest waiting enters as opponent (works in teamplay as well)
- fixed the CTF userinfo bug which caused the bots to shoot at human team mates in CTF mode
- added patrol AI and chat interpretation
- fixed wrong view angles after entering autocam when dead
- added area tracing
- fixed the synonym inside synonym replacements
- added context dependent match templates
- removed space in front of message to reply to
- moved all language dependent stuff to match.c
- added "addrandom [X]"
- added bot checkpoint understanding
- added checkpoint macro command
- fixed underwater teleporters
- fixed button handling
- fixed and optimized area clustering
- make defend, camp, help, accompany etc. times adjustable
- added waypoint and checkpoint synonyms
- rewrote match templates, now allowed to have multiple fixed at the same place
- added message to rocket arena commands when used when ra disabled
- adjusting ping in rankings screen with the lag feature
- fixed id bug in ClientDisconnect
- added credits menu to the bot menu
- fixed "CTF team select" menu doesn't go away after selecting chasecam mode
- added allow_pause option
- fixed console message heap overflow
- fixed "help me" crash

version 0.92 (17th April 1999)

- new CTF AI
- new team AI
- added lag feature
- added botctfteam console variable and menu option to assign bots to a specific team
- create subteams with your bot team mates, chat with them and tell them what to do (help you, follow or cover you, guard key areas, camp somewhere etc.)
- added some bot model taunts
- added some strategically looking around for enemies
- added RA2 health protect
- added RA2 armor protect
- added Rocket Arena option to turn off self-damage
- added pause game option
- added console command to add a random bot
- added more bot team chat interpretation and team chats
- added loading of all *.cfg files from the "bots" sub-folder (for custom bot characters)
- enabled some dynamic obstacle avoidance code
- removed potential crash bug from the menu code
- fixed minimumplayers removebot bug
- enabled characteristic_char_reply, characteristic_gender, characteristic_alt_name, characteristic_reactiontime
- fixed chat enter_game, chat death, death_bfg, kill_telefrag, random_praise
- fixed changing level directly after entering when fraglimit is set with bots
- fixed defend key area (defend key area, accompany, help, get flag, rush base)
- fixed RA2 bots in waiting room always free flight observers
- fixed several (command) chat interpretation bugs
- added several sound infos
- disabled shooting in observer mode in Rocket Arena
- fixed menu options now actually setting dmflags
- fixed elevator reach
- fixed ltg dedication
- fixed walk back navigation bug
- split AI network
- fixed the recursive evalutation of fuzzy relations

version 0.91 (17th March 1999)

- ported game library to Linux-i386
- ported gladiator library to Linux-i386
- disabled bot editing/maximum number limiting algorithm
- added option to disable the gladiator library log file
- added grappling hook usage
- added grappling hook reachabilities
- fixed several rchat bugs
- bot end game chat message appears after bot has disconnected (as a result the bot name does not shows up)
- crash when changing level after "not allowed to have more than x bots on this map" message
- decreased map load time
- added BotAddPointLight to botlib interface
- added light level calculation to AAS
- changed BotUpdateSound into BotAddSound in botlib interface
- fixed add random bot
- added "minimumplayers" console variable with functionality
- fixed grapple hook precache
- fixed jumping onto and from elevators
- fixed grapple reachabilities screwing other reachabilities
- fixed %'s in gi.Xprintf (thanks to Rhea)

version 0.9 (11th of Februari 1999)

- RA2 support
- CTF support
- Xatrix mp1 support
- Rogue mp2 support
- added 12 new bot characters
- tweaked some bot characters
- added more weapon specifications
- added new chat engine, rchat, ichat, synonym list, random string list
- fixed weapon weights
- several bot characteristics changed
- fixed jumping during battle
- fixed unzip.dll crashes under WinNT & Win95
- changed AAS version to 2
- fixed obstacles towards teleporter
- fixed bspc area 'center'
- fixed 'natural' area clustering with teleporters
- fixed random chat string pieces
- fixed "goal heap overflow"
- fixed AI network internal loop between Battle_Ret and Battle_NBG
- fixed "BotUpdateSound: client number out of range" due to multicast with "maxclients 256"
- prevented repeating reply chats
- tweaked several reachabilities
- fixed bot picking up dropped weapons (keep repositioning movable items)
- fixed shootable doors & secrets doors
- added func_rotating_door to AAS
- fixed under water elevators
- adjusted bot aim and response time
- added workaround for train.bsp entstring bug line 2906 "175\"
- enabled evolution of the goal selection
- fixed misplaced trains due to Rogue support
- fixed failing goal selection on moving objects

version 0.8 (8th of December 1998)

- first release