*****************************************
*					*
*      Ping of Death Bot V1.0           *
*                                       *
*    a Bot for HL-CounterStrike		*
*               by			*
*          Count Floyd			*
*					*
***************************************** 

V1.0 release Date: 27/10/2000

URL: http://www.geocities.com/countfloyd_1999/


This Bot has been developed based on HPB Bot
by Botman. So much of the basic movement
and behaviour was based on it. But it has
evolved over the time and this is the
result...anyway, thanks again Botman !

 
Advanced Features of this Bot:
------------------------------

+ Bots know where to go (depending on maptype) and how
  to get there.
+ Bots try to hunt Enemy or try to flee depending on health
+ VIP Bot has its own behaviour
+ Bots react to some radio commands
+ Counter Terrorists will guard the one, who defuses the Bomb
+ Terrorists pick up dropped C4 Bombs (in case they see it)
+ Realistic camping behaviour
+ Bots have a reaction time based on skills
+ Simple Combat AI (meaning Bots move forward/backward depending on health and
  higher skilled Bots will do strafe/jump
+ Pathfinding uses "wayzones". Bots don't do the goosewalk (not much)
+ Bots are blinded by Flashbangs (higher skilled Bots will go mad then!)
+ Bots shoot their way through Windows and Vents
+ Counter Terrorists don't use Paths where hostages can't follow (in case
  they have one)
+ Terrorists and Counters know the goals of the map depending on maptype.
  For example on a DE Map Counters will most likely stay around the Bomb
  Points and Terrorists rush for it
+ Bots do chat if they killed someone, the bomb was planted or they are
  dead and bored. The whole Text for this can be modified and of course
  turned off, if you think it sucks
+ Use secondary Weapon Modes (Random for now)


Basic Features:
------------------

+ Buys and uses all Weapons (based on Money)
+ Buys and uses Grenades (Only Flashbangs and HE Grenades are
  supported now)
+ Buys Armor (only if he hasn't got enough Armor) 
+ Bots plant and defuse the Bomb (if they can see it!)
+ Bots rescue Hostages
+ Bots have a shooting ability based on skills
+ Shooting Rate depending on skill
+ Bots use duck and duck jumping to reach difficult places
+ Bots use ladders
+ Bots accept Freezetime
+ Bots have a paranoid pause every now and then. Based on skill
  a worse Bot will pause more often and longer than a better one
+ Bots camp behaviour is skill based. Bad bots will camp longer
  and more often
+ Mapcycle works
+ Manually changing maps works 


Known Limitations/Bugs/Problems:
--------------------------------

- Bots sometimes fall from High Places
- Sometimes stuck in other Bots (but will unstuck after less than 5 secs)
- Sometimes stuck in corners (see above)
- Counter Bots sometimes fail to defuse
- "map" command doesn't work most of the time (use "newmap" instead)
- Due to missing waypoint files only some maps will work
  now (but nearly all "official" maps are supported)
- Bots don't use single Bursts
- Bots don't hear anything
- Bots don't know how to use Buttons/Lifts
- Bots don't know if a Weapon on the Ground is better than
  the one they have
- Bots don't cheat :)


Requirements:
-------------

The Bot currently only works in Counter-Strike Beta 6.5 - 7.1
Half-Life version 1.1.0.0 or higher is required to use this bot.
If you haven't updated your Half-Life version to 1.1.0.0 (or higher)
you will HAVE to do so before using it.


Installation:
-------------

Backup "liblist.gam" from "\Half-Life\cstrike" if you want to keep the
original liblist (a clean liblist for Cs 7.1 is included in the Zip File
called "cs71liblist.gam". Unzip the archive into your Halflife folder
(remember to have "extract with folders" turned on). Now you're ready to
play!


How to start a Game with Bots:
------------------------------

Create a Game with a map that has waypoints for POD-Bot (take a look into
the "cstrike\podbot\" folder - all files with the extension ".pwf" should
be valid waypoint files. 
Bots will automatically be added to the game using the "bot.cfg" file found
in the /cstrike directory. If you wish to change the number of bots that are
created automatically you can edit the bot.cfg file using any text editor.
If you edited the bot.cfg File you can manually add bots using the console.
To use the console you have to turn it on. Here's my shortcut properties
for CounterStrike:
D:\Halflife\hl.exe -console -game cstrike
This will activate CounterStrike automatically and turn on the in-game console.
If a map has loaded, press the key below "Esc" and it will scroll down.
Just type "addbot" and a new bot will be connected... 
There are comments in the bot.cfg file to show you how to change parameters.
If the Bots are stuck or you just want to start a new round type in
"killbots" which will force all bots to be dead instantly. If you're sick of
playing with Bots type "removebots" which will kick all Bots from the Server.
NOTE that this will also set min_bots & max_bots to zero, so you have to add
Bots manually if you want them back in your game. Of course you can always use
"kick" to remove single bots. To manually change maps, use the substitution
for the map command. Type "newmap mapname" to load a new Bots. So for example
to load "DE_DUST" you type "newmap DE_DUST". Existing Bots will join the Game
if the map is loaded.


Summary of Console Commands:
----------------------------

All commands in square [] brackets are optional and don't need to be specified.
Most of these commands will also work in podbot.cfg.

addbot [skill] [team] [name]

Adds a new Bot with skill (0-100) to team (0-1 or use 5 to auto-assign) with the
specified name. If you don't use the name argument it will be filled randomly
from "podbot\botnames.txt". You can edit this file to use other names !

listbots

Shows all Bots running on the Server

killbots

Does what it says.

removebots

Kicks all Bots of the Server. Note that this also changes the
min_bots and max_bots variables to 0.

minbotskill

Sets the minimum Botskill to use when adding Bots. Standard
for this is 0, so a new Bot can have a Skill ranging from
0-100. You can set this in "bot.cfg" or manually to avoid
specifying a skill everytime you add a Bot.

botchat on|off

Turns chatting Bots on or off

newmap mapname

Substitution for the "map" command you're used to. Loads a new map.
This will work 100% with Bots and no client will get disconnected.


There are some other commands which are only used in
"podbot\bot.cfg". Please look there, too !

I removed all waypoint editing commands since I want to work out a
user-friendly way of doing waypoints. These will be added in the next
release, so stay tuned!



Playing with the Bots:
----------------------

The Bots will automatically know the goals of the map. Counter might
go for hostages, Terrorists may want to plant the bomb. VIP Bots will
try to reach the Rescue Points. You can use 2 Radio Commands by now
to get more support from your Bots. The first is "Follow Me" which
commands a Bot to follow you. If a Bot is following you, you can use
"Hold this Position" to make a pause at that Place and look around for
enemies. Note that they won't follow you anymore in 3 cases:

1) They don't want to ! The Bots have their own will and they issue a
  "Negative" if they don't want to follow you.
2) They don't see you.
3) They see an enemy and engage him.

A Terrorist Bot carrying the C4 or picking it up, will also issue a
"Follow Me" sometimes to have some assistance with him. Note that
they have problems following you on ladders at the moment.
They also do some other Radio Commands like "Enemy down", "Enemy spotted",
"I'm in Position" (to tell you he's camping) but not very often,
otherwise it would get on your nerves...

Skill differences:
First, Bots with low skills will pause/camp longer and more often. Bots
with low skills have a bigger surprise time and they shoot slower. Bots
with low skill are lucky if they hit something. Then there are minor
behaviour differences. For example Bots with a skill above 80 use the
knife more often if you're near them. If you want to get headshots all
the time (and really fast) add some Bots with a skill of 100.

All remaining behaviour is calculated through the Map Goals and Health
of the Bot...



Planned for future Releases:
----------------------------

* Still improve basic movement
* Userfriendly Waypoint Setting
* Change Pathfinding back to A*
* More AI States (Hiding/Roundtime behaviour etc.)
* Better Team Behaviour
* Usage of Buttons/Lifts
* Training them to swim properly :) 
* Better Grenade Use (SmokeGrenades?)
* Advanced Combat Behaviour (maybe personalities ?)
* Vehicle support (hmm, not really!)
* Track down all remaining Bugs


I would like to thank the following people:

- Botman
 (for all his Information, Sources & Templates, without them,
  this Bot probably would never exist)
  Visit his Site: http://www.planethalflife.com/botman/
 
- William van der Sterren
  (for his great knowledge & posted information on Botmans Forum
   and his own Site)

- My brother Polymorph (for his testing and patience with me)

- Stefan Hendriks for the "info_map_parameters" Hint

- all other Bot Authors for inspiring me & being such a nice
  Community (mostly)
  
- The Halflife & CounterStrike Developers for creating such great
  games ! 
  
- YOU! (for using Pod-Bot)


If you still have questions, be sure to read
"PODBot_FAQ.txt". Your question might already be answered
there. If not you can e-mail me at:

podbot@yahoo.com

(please don't mail me suggestions or your personal wishlist,
I will surely setup a a forum for this, somewhere). 

HAVE FUN PLAYING!