botman's bots

Half-Life bot development

- Old News
Building the SDK
SDK Humor
HPB Waypoint files

About me
E-mail me

I've received much e-mail lately from people wanting to know if I'll do a bot for Day of Defeat or Firearms or Action Half-Life.  I have mentioned before that I will only add bot support to MODs that I like to play.  If a MOD has been out for more than a few weeks and I haven't announced that I will be adding bot support to it, then chances are that I won't create a bot for that MOD.  I'm sorry if this makes you angry, but I just don't have the time to create a bot for every single MOD that's out there.  That's why I released my bot source code, so that other developers can create bots for MODs that I'm not going to support.

For those who are interested, you may download a ZIP file containing an updated archive of the old forum here.

A browseable version of the forum database is also available here.


November 9, 2004: by Pierre-Marie Baty
Rifleman found a bug in the HPB_bot template 4 where the bots would not detect the round restart in Counter-Strike 1.6. This is because the network message that is sent to everyone when the round restarts changed shape recently. The template source code had to be adapted to reflect this change. Also BAStumm made a patch for the HPB_bot 4 (the "release" one) to avoid bots firing at the miniturrets at spawn in TFC (since they are indestructible in this mod). You can get the new versions of these bots at their usual location.

August 31, 2004: by Pierre-Marie Baty
KoraX found a bug in the HPB_bot template 4 where the Server_GetBlendingInterface() function was not exported correctly. This function is only used in some mods like Day of Defeat and Counter-Strike to make changes to the standard player morphology (hitboxes), but it is very important because it's the function that determines whether a headshot was scored or not, for example. It's been fixed and coders can download the updated template at the same place as usuals. Thanks KoraX! :-)

May 10, 2004: by Pierre-Marie Baty
The HPB_bot template 4 has been updated a bit. It now contains code to automatically unpack the game DLL from the Steam cache in case the DLL can't be found on disk. This solves the problem of the bot DLL crashing after a Steam update affecting the game DLL. Bot coders may want to give it a look at the HPB_bot homepage. Congrats to Whistler from Bots United for providing the idea for the fix!

March 25, 2004: by Pierre-Marie Baty
The HPB_bot template 4 is released! This new template for developers will help you to build your own bot for Steam and the newest HL engine. What's particularily interesting is that it ALSO supports the old (non-Steam) engine! There has been quite a few changes (much more than I thought in fact) to make this template support Steam perfectly. Large parts of the interfacing code have been rewritten, many hooks have been updated in the function table, the entities list has been completed, and all the Counter-Strike specific issues have been fixed. Certain obsolete parts of the template have also been removed. Get the new template at the HPB_bot homepage and find support for your coding questions in the developers forums of Bots United.

March 4, 2004: by Pierre-Marie Baty
Fixed a crash bug in the HPB_bot where Steam would crash when the bots try to look up in the MOD's models/player/* directory to know what are the available skins. The bot couldn't find this directory because it was in the Steam cache. This bug happened on Win32 servers only, so if you run a Linux server you don't need to upgrade. Also I've corrected a bug in the Install.bat script that would cause the waypoint files not to be copied (because Steam doesn't feature a "maps" directory. Aaaaaah, Steam.) Thanks to Eddy Hassle from the Bots United Forums for the bug report.

February 29, 2004: by Pierre-Marie Baty
Whistler from the Bots United Forums found another bug in the HPB_bot where the bots would stop capturing the flag in OpFor CTF after a first successful capture. It's fixed and the bot has been upgraded to version 4.0.2. Download it if you play Opposing Force CTF (other people may not be interested in upgrading).

January 20, 2004: by Pierre-Marie Baty
A bug was fixed in the HPB_bot version 4.0 where the engineers would not recognize their own sentry guns and dispensers in TFC, which appeared after the monster shooting feature was added. It's fixed and you can download the version 4.0.1 and the updated source code from the HPB_bot webpage here.

January 19, 2004: by Pierre-Marie Baty
The Linux version of the HPB_bot version 4.0 has finally been packaged! Thanks to memed from the Bots United forums for compiling us the plugin. It's now put together using the exact same Linux install scripts than in version 3.0, so you can't possibly get lost in the procedure - except that now you MUST have metamod (or AdminMod) installed for the HPB_bot to work.

January 12th, 2004: by Pierre-Marie Baty
Well, botman signed off but who said the HPB_bot was dead? Somehow at Bots United we decided not to let this venerable beast die of aging and give it a little boost. The version 4.0 of the HPB_bot is released! It is now a metamod plugin, it is said to work with Steam (although I never saw it with my own eyes yet), and w00t w00t w00t it now shoots at MONSTERS!!! Yes, the bot is now part of the rare ones who do, like Cheesemonster's RCBot in Sven Coop. You can now use the Monster plugin with the HPB_bot and watch the carnage. Isn't life beautiful ?

May 4th, 2003:
The new dedicated server release ( was giving the HPB bot fits causing the dedicated server to crash with a nastygram upon startup.  This was due to a change Valve made in one of the Half-Life engine functions.  I have fixed this problem in the HPB bot and made a new release available.  If you aren't running a dedicated server, you don't need to download this new version.  Version 3.0 of the HPB bot is now available for download on the HPB bot webpage.

August 14th, 2002:
It's been a while since I posted any news so I figured I'd post something to let you know what's going on.  I probably won't be updating any of my projects or creating any new projects anytime in the near future.  I recently switched jobs and moved all my stuff from Mississippi to Plano, Texas.  I got a job at Gearbox Software helping to create some of their new projects.  I have quite a bit less free time now than I've had in the past few years so I'm not able to spend much time working on outside projects.  I'll continue to browse the posts on my forum and will keep answering any questions that people have about projects on my website, so it's not like I'm going to totally stop supporting anything that's available here.  Who knows, maybe when Halo comes out, there will be a botman site over at  :)

July 9th, 2002:
I've fixed another bug in my BSP tools utilities.  Many people were getting the error message "Can't find Half-Life\valve directory!".  A user in my forum was kind enough to point out the bug causing this error (Thanks Mark!).  This bug is now fixed and I've released the first non-beta version (Version 1.0) of my BSP tools.

July 2nd, 2002:
I've updated my Monster plugin for metamod and released version 3.0.  This version of the Monster plugin will only precache monsters that will actually be spawned in the map (instead of precaching everything whether it's used or not).  This will help to prevent the crashing problem clients were getting with the error message "S_Findname: Out of sfx_t".  I've also added the "bigmomma" monster (the big spider looking thing with the sack underneath).  There is a new .cfg file called "monster_precache.cfg" that you must copy to the MOD folder. Edit this file and uncomment the names of monsters that you want to manually spawn next to players.  Any monsters in this file will always be precached when any map is loaded (and now, if you haven't precached the monster when the map is loaded, you can't spawn that monster next to a player in that map).  See the ReadMe.txt file for details about the precaching.

June 17th, 2002:
I screwed up the 2.0 release of my Monster plugin for metamod.  I had commented out the code that damages players while I was testing it.  I had forgotten to uncomment the code before building the release version, so I removed the comments, rebuilt the Monster plugin and bumped the version number to 2.1.  If you've already downloaded 2.0, you will need to download 2.1 from here.

June 16th, 2002:
I've released version 2.0 of my Monster plugin for metamod.  The Monster plugin allows you to add some of the monsters from the Half-Life single player game to other MODs (like TFC or Counter-Strike).  I've added a new CVAR called "monster_spawn" that allows you to turn on or off monster spawning from a server console (or rcon access).  I've added a new server command called "monster" that will allow you to spawn a monster right next to a player (i.e. "monster snark PigCop" will spawn a snark right next to the player named PigCop).  I've added a "monster_skill.cfg" file so that you can configure the monster health and damage amounts (similar to the single player "skill.cfg").  I've added a new flying monster, "controller" (the big flying head that shoots energy balls at you).  I've also fixed a bug where monsters shot by players get double damaged (Thanks hullu!).  For the details, see the ReadMe.txt file included with the Monster plugin.

June 3rd, 2002:
I've just released a BETA version of my Monster plugin for metamod.  The Monster plugin allows you to add some of the monsters from the Half-Life single player game to other MODs (like TFC or Counter-Strike).  You can add human military grunts, scientists, bullsquids, headcrabs, snarks, zombies, barnies and several other monsters to any maps that you wish.  There is a Windows version and a Linux version of the Monster plugin available for download.  The source code is also available. 

This plugin is VERY much a BETA version and may cause your server to crash.  Use at your own risk!  There are some example .cfg files included for Team Fortress 1.5 and there is a detailed ReadMe.txt file explaining how to set up the Monster plugin and create .cfg files for other maps.