Title | Gladiator Bot for Quake2 |
Filename | Gladq2091.ZIP |
Version | version 0.91 |
Date | 1999-03-17 |
Authors | Mr. Elusive (concept, design & programming) |
Squatt (concept, design) | |
Mr. Freeze (gladiator page) | |
mrelusive@botepidemic.com | |
Bot Homepage | http://www.botepidemic.com/gladiator |
Contents
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 | |
The BSPC tool creates data which the bot uses to navigate a map. The program 'winbspc.exe' is included with the Gladiator bot. Launch this program to create .aas files.
Read the WinBSPC readme for more details.
Note: 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".
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 * |
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 |
teamhelp [name] | ask for help in teamplay |
teamaccompany [name] | ask for company in teamplay |
mstart | start the match in RA2 |
mstop | stop the match in RA2 mode |
toarena <X> | go to arena X in RA2 mode |
botfile <filename> | sets the file with bots to use in the menu |
nochat <0|1> | enable or disable bot chatting |
mstart_auto <0|1> | enable or disable auto restarting of match in RA2 |
noitems <0|1> | enable or disable no items in RA2 |
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 |
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 |
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 | |
Help | menu help | |
Exit | leave the menu |
Bots menu:
add bot | add a bot from the list | |
add random | add a random bot from the list | |
remove bot | remove a bot from the game | |
remove all | remove all bots from the game | |
back | back to the gladiator menu |
Rocket Arena menu:
bot arena | the arena to add bots to | |
teamplay | teamplay mode | |
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 |
Several game settings can be enabled/disabled
with the "dmflags" console variable. This variable stores a number of flags
denoted by numbers. To set the flag the value is added to the console variable.
Flag | value | description | ||
---|---|---|---|---|
DF_NO_HEALTH | 1 | no health | ||
DF_NO_ITEMS | 2 | no items | ||
DF_WEAPONS_STAY | 4 | weapons stay after picking them up | ||
DF_NO_FALLING | 8 | no damage when falling from from great heights | ||
DF_INSTANT_ITEMS | 16 | powerups are activated instantly | ||
DF_SAME_LEVEL | 32 | stay on the same level | ||
DF_SKINTEAMS | 64 | teamplay based on skin | ||
DF_MODELTEAMS | 128 | teamplay based on model | ||
DF_NO_FRIENDLY_FIRE | 256 | no friendly fire | ||
DF_SPAWN_FARTHEST | 512 | spawn as far away as possible from the last death location | ||
DF_FORCE_RESPAWN | 1024 | force respawn, players can't stay dead | ||
DF_NO_ARMOR | 2048 | no armor | ||
DF_ALLOW_EXIT | 4096 | allow players to exit a level | ||
DF_INFINITE_AMMO | 8192 | infinite ammo | ||
DF_QUAD_DROP | 16384 | quad damage is dropped when a player using quad dies | ||
DF_FIXED_FOV | 32768 | fixed field of vision | ||
DF_CTF_FORCEJOIN | 131072 | players joining the server will automatically be assigned to a team | ||
DF_ARMOR_PROTECT | 262144 | attacks won't harm teammates' armor | ||
DF_CTF_NO_TECH | 524288 | no Tech Powerups | ||
4 + 16 + 512 + 1024 + 16384 + 262144 = 280084
now type: "set dmflags 280084" on the console or add "+set dmflags 280084" to the command-line.
NOTE: when
the dmflags console variable is changed all the bots have to be reloaded.
Otherwise the new game settings won't have any effect on the bots.
Xatrix mission pack 1 "The Reckoning"
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"
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 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.
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.
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 |
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, and she is transparent as well...it's a feature, not a bug |
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 | |
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. |
When reporting a bug please include the 'botlib.log' file and fill in the bugreport.txt
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.
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.
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 0.91
- 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
- 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