//
//$Header: /ReDeMpTiOn/History.txt 8     8/09/99 8:39 Riever $
//

History file for ReDeMpTiOn, the SiN bot.
=========================================

( + = added, - = modified, # = bugfix )

1.17		+ Adding new dynamic Pathing system to run alongside the pre-calc one
			- Rewrote pre-calc path system in botnav
			+ New files added to project : botnav.cpp & botnav.h
			! Files now use STL for list< type >.
			- Made LevelUp message transparent
			- Changed default HARD-CODED bot names.

1.16c		* RELEASED *
			- Re-introduced water level checks
			+ Added ranking value to sniper rifle so it is selected by bots
			+ Put new combat functions in ready for new AI
			+ Added first version of CamperAI
			# Fixed sniper rifle shooting at weird angles
			- Modified pathing system again
			- Re-introduced bot weapon searching if poorly armed
			- Increased number of nodes available to pathing system

1.16b		+ Added basic door handling - they try to open doors now.(try the "bank" level)
			# First stage fix for Teleporter bug
			# Stopped spinning dance of death for close combat
			# Fixed a logic buglet on the QD & RL handling
			# Fixed weapon change bug that caused not firing at enemies

1.16a		+ Immediate respawn forced in ARCADE b_arena version
			- Re-enabled dedicated death printfs for player
			- Changed node handling again! (Problem came to light on Eisenblatt)
			# Prevented NULL setting from passing routes through node 0

1.16		- Changed aiming again for RL/QD
			? Investigated spidermine problem - needs too much effort at the moment
				will be attended to later once all combat code is in.

1.15c		- Huge changes to navigation code to deal with chasing enemies

1.15b		+ Stopped new talk method crashing bots
			+ Speech synthesis announcement of "Levvel Up"
			# Removed animation frame skipping in weapon.cpp to fix sound
			# Stopped stupid countdowns in RA

1.15a		* DEBUG build during porting to 1.06 code
			+ Major bugfixes added
			! BUG: Sound sub-system broken like on WoS port. !

1.14		+ ARCADE code added

1.13		+ Added aimlead code
			- tweaked combat AI (level 10 now totally lethal perfect killers)

1.12		+ Added Ferris.cfg support for final Boss in arcade version
 
1.11		+ BestWeapon code modified for bots to use range modifiers
			- RL & QD aiming changed to be at enemy's feet
			+ CheckBox() function added to move spawn away if spot is occupied in RA

1.10		+ Added r_arena.cfg support to enable/disable equipment
			- Removed warning prints and level up messages from manual increases

1.09		+ Added spectator damage fix
			- Reduced RA countdown to 3
			- Increased time between matches to allow for gloating
			- Began changing center prints to boxtext
			- Levels now auto-load after 10 seconds of intermission (Requested for arcade)
			- Stopped bodies and weapons being left lying around in RA
			- Increased ammo available in RA mode
			- Removed telefrags from RA

1.08		+ Added Rocket Arena 1v1
			+ Added LMS teamplay

1.07		* LMS server release

1.06		+ Added LastMan Standing deathmatch mode

1.05		+ Added new linker (first phase)
			+ New command in Player to generate links
			- Rewrote BotNode class to prepare for A* search
			+ Added virtual OnLadder() function to Sentient & Bot
			+ Enabled AIR node creation
			+ Integrated LinkUp code with standard link creation code

1.04		- Changed bot artificial stupidity aiming routine to use a Gaussian distribution
			- Altered aiming with RL to shoot at feet so "splash" damage is more likely.
			+ Introduced limits to how often item and enemy selection routines run.
			- Removed weapon searching flag until new pathsearch system is implemented
			+ Added a movement safety check to deal with unusual states occuring at edges
			- Modified edge handling code in direction selection code
			- Altered ladder handling again
			+ Added "gap" detection to help bots try to jump them
			- Tweaked node handling code
			- Increased bot accuracy and speed at lower levels (They were jus too bad!)
			+ Increased bot aiming skill if you get close up :)

1.03		- Changed botState to use flags instead of fixed values. This will allow 
				personality checking later before the flag value is acted upon.
			- Changed attack code for close combat to give bots a better chance of
				kicking your head in :)
			+ Added more code to help with finding a decent weapon
			- Put the item collection node usage back in

1.02		- More accurate in pulserifle main fire mode 
			- Tweaked ladder handling (Still not happy with it!)
			+ Taught bots to use Secondary weapon modes.
			+ Added item sampling to BMS files to store locations (old BMS files no good)
			+ Added code that will enable personality development
			+ Began improving combat AI 
			+ Rudimentary self-preservation added. Break off combat when health is low.
			+ Collect only armour and health when seriously injured
			+ Run at maximum speed when hurt
			+ Rudimentary code to find a better weapon added. Kicks in if 
				bots only have a magnum or fists.
			- Changed to internal function for WeaponUse.
			- Extended height bots will jump from to 1024 units
			- Removed direction changing from parts of code to allow jumps off buildings
			- Improved bot handling of slopes and stairs
			+ Extra functions introduced to deal with animation anomalies during
				secondary weapon use.
			# Discovered a bug that's been around since alpha 01! MaxHealth FIXED!

1.01a		- Altered enemy selection to give bots a more "human" attitude (non-arena)
			- Modified botreset command to include "b_number 0"
			- Added "b_random" CVAR to enable random bot spawning (non-arena)
			# Fixed a problem that could cause game crashes if too many bots were spawned

1.00Release	- Stopped bots leaning over when they collect items
			* Release numbers are now back on track *

0.7 Beta	- Autoskill increments in arena ignoring enemy activity
			+ Added frag required to arena.ini file
			+ Set Thrall master as last level for Arena
			+ Map changing in arena now uses arena.ini
			+ Arena.ini now fully implemented to automatically spawn bots
			- Bodyqueue modified for arena thrall level
			- player respawning modified for thrall/arena
			+ Added spawning delay for b_number command to cut down on telefrags.
			- Fixed arena botnaming problem
			- Changed point at which deathmatch value is set for arcade
			- Reset bot spawning delay at level load
			- Changed starting weapons for arcade endlevel
			+ Stopped bots from ending levels during arena games
			+ Levels automatically change during Arena mode.
			* This version only released to arcade project *
			* was tagged as 1.00 for general release *

0.6 Beta	- Changed bot accuracy formula again
			+ Added coloured highlight text for the centerprint
			+ Added b_arena CVAR [0/1]
			# Finally fixed bot bodies lying around in mid-air bug!
			+ Only players are targetted if b_arena is set.
			- Put node system back in
			+ Added ladder nodes
			+ Made level up message an external file (arcade)
			+ Taught bots to hunt enemies
			+ Camper hunting AI in place (30 second delay)
			+ Added check for safety before firing RL & QD

0.5a Beta	# Removed all node code from the mod temporarily to prevent crashes
			# Fixed a maplist problem caused by my dodgy logic :)
			- Changed "Artificial stupidity" code to allow movement on lower level bots.

0.5 Beta	+ Taught to climb ladders
			+ Initial safe method installed for jumping from heights
			+ Instant item use introduced
			- modified death handling, should be less bodies in mid-air
			+ Link system initialised
			+ "b_dropnodes [0/1]" CVAR for creating routes
			+ "readnodes" & "writenodes" console commands
			+ Read and write nodefiles (*.bms)
			+ Auto read nodefile on level load
			+ Optimize nodepaths on level load
			+ PathCheck code added
			+ Bots create nodes and links
			- Tweaked stair and slope handling ready for routefile use
			+ Moved b_number code to allow it to work with a dedicated console (Untested!)
			+ Added "motd.ini" file in game directory & ShowMOTD() in g_main.c
			+ Added "maplist.txt" file in game directory & related functions (+g_main.c)
			+ Rudimentary bot use of nodes & links for item collection
			+ changed b_skill and accuracy to go up to 10

0.4 Beta	+ Taught to sidestep corners / edges.
			+ Added BotNode class
			+ Added "b_dropnode" CVAR_SERVERINFO
			- Modified inventory handling for SiNArcade
			- Modified taunt behaviour to keep Robes & WarBeast happy :)
			- Modified enemy selection during mass gunfights - this should stop them
				being shot by a closer enemy than the one they are attacking (Robes)
			# Fixed the "lost bot spot" bug that crept in in beta03
			+ Added accuracy stat for individual bots
			- Changed b_skill range to be 0 to 5
			+ Added default accuracy = skill setting by setting accuracy stat to -1
			- modified aiming code again
			+ Added "b_autoskill" CVAR_SERVERINFO - allows bot skill to be set dynamically
			- Modified strafe code to cut down on accidental deaths
			+ Added "b_number" CVAR_SERVERINFO to spawn bots that respawn at level change
			+ Added "botkill" console command to remove last bot spawned

0.3 Beta	- Updated to 1.03 SiN source code
			- Changed way bots and players connect to avoid client problems
			- Fixed a bug relating to bots dying while mutated

0.2 Beta	+ bot item collection (first attempt - not very intelligent yet)
			- tweaked crawling AI
			- tweaked jump AI
			- altered timing on QD usage
			# disabled strafing with RL
			+ Added gap jumping code

0.1 Beta	# Shooting your Teambots in the head doesn't make them angry any more
			(Only Robes would try doing it in the first place <grin>)
			# Stopped them "seeing" you when you're cloaked (PODD)
				(Only shoot in your direction if you attack while cloaked)
			# Railroad level problem fixed (HACK!)
			- Changed frequency of jumping, also now only jump in combat at skill 2+
			# Quamtum destabilizer bug finally fixed?
			# Disabled strafing if using QD
			- Tweaked movement AI
			# Stopped bots changing weapons when mutated
			# ** changed G_Main.cpp deathmatch scoreboard not sent to bots **
			(This has fixed the Timelimit and Fraglimit bug)
			# ** changed G_Main.cpp "say" command - messages not sent to bots
			(You can now talk in a game without crashing it!)

0.2 Alpha	+ put mutant reverse code in so bots can become human again
			# added spectator recognition
			# stopped spawning in damaged skins
			# bodies now hang around like they should
			+ Now react to pain and target enemies appropriately
			# Changed the project settings to remove the ASSERT code
				(You don't crash the game when jumping off the train
				as a mutant any more)
			+ Began implementation of combat AI
			+ Random Taunting
			+ Initial implementation of BestWeapon choice before combat
			# First attempt at stopping QD suicides
			+ Now randomly aim at head, body or (occasionally) legs
			+ added "b_skill" cvar - defaults to skill level 1 (range 0 - 3 )
			+ Skill 1+ bots jump and crouch during combat
			+ Skill 1+ bots strafe during combat
			+ botnames.cfg file allows user choice of bot name, model & skin
			- Tweaked movement AI a little, bots get stuck less.
			+ Teamplay by MODEL or SKIN now supported

0.1 Alpha	+ Taught bot to recognise enemies
			# Attack animations fixed
			+ Now attack enemies
			# No longer attack dead bodies :)
			+ Do not run into player when attacking
			+ Added Jump code
			+ Added Crawl code
			# Fixed Z-aiming problem
			+ Added 20 distinct names for bots (male & female)
			+ Now bleed like players
			+ Client emulation problem solved
			+ Now appear on scoreboard
			+ Added spawning as Blade, JC or Elexis
			+ Added multiple skin support
			+ Added very basic water handling 
			+ Rudimentary melee attack handling
			* RELEASE - Alpha 0.1

0.1 Gamma	+ Got the bot moving
			+ Spawn code provided by Scott Alden (Ritual) [aldie]
			+ Killing bots now registers as a frag
			+ Bots have Pain and Death routines
			# Bots now solid on respawn
			# Bot run animations working
			# Fixed animation bug on respawn
			NOT A RELEASE VERSION - Source will be available.
