0.86 ET Change Log

=== BOT ===
Added function MapGoal.SetEntity
Added Wp.SetWaypointFlag parameter can be a regular expression
Added WatchForEntityCategory can be used to detect landmines
Added gm script can have UTF-8 BOM
Added version number is printed to console when Omni-bot is initialized
Improved bots join game faster after server starts if maxbots>0
Improved players info is in the Server table already in OnMapLoad
Changed draw_goalroutes doesn't draw disabled routes
Changed new waypoint has prone flag if the player is proned
Fixed soldier with mobile mg42 does not shoot heavy vehicles
Fixed goals with same names were swapped in NoQuarter
Fixed waypoint_setname of closed waypoint
Fixed command goal_save prints error if file can't be opened
Fixed SetGoalRole printed error message if role was persistent and goal did not exist
Removed path planners navmesh, floodfill, recast

=== MOD ===
Improved command /entitylist prints type names instead of numbers
Fixed goal entities of multiple MG42s at the same position (on baserace map)
Fixed function GetEntityOwner returned dead player after gold was dropped and taken by another player

=== GOALS ===
Fixed covertops don't steal uniform when carrying objective
Fixed PLANT goal was always delayed 35 seconds even if defused
Fixed medic don't deliver medkits to player who is mounting tank
Fixed rendering of Stance property
Fixed medic sometimes did not give medkits to revived player
Fixed BUILD goal created by user could not be saved
Fixed roaming bots were going to position of MOUNT goal
Changed MinPlayersForMortar is number of players for one mortar (2*MinPlayersForMortar players are needed for 2 mortars)
Changed MinPlayersForMobileMG is number of players required for one mobile mg42
Changed cover spot priority from 2.0 to 0.81
Changed medic don't team-kill player at mg42
Changed medic can revive nearby player when going to cappoint
Changed only one medic or fieldops delivers supplies to a player
Changed soldier with mortar asks for ammo less often
Changed resetxp is enabled in all mods except etmain, but it must be enabled in shrubbot.cfg

=== SCRIPTS ===
Changed all bots disconnect if maxbots is 0
Optimized Util.ProcessMovers

=== WEAPONS ===
Changed bots get more ammo packs from ammo cabinets

=== COMMANDS ===
Improved cleargoalflags removes ammo, health, crouch and prone

---------------------------------------------------------------

0.85 ET Change Log

64-bit ET:Legacy is supported

=== BOT ===
Added functions IsNull, SetGoalRole, ClearGoalRole, GetLocalCommand, Wp.GetClosestWaypoint
Added waypoint navigation flag INFILTRATOR
Added function Log has optional parameter: 0=info, 1=warning, 2=error, 3=critical
Added path not found message if goal is unreachable
Added parameter to SetAvailableMapGoals to ignore error if goal does not exist
Added constants DEBUG.FPINFO, DEBUG.EVENTS
Added timeout when bot is waiting for a medic
Added waypoints are loaded from nav and incomplete_navs folders
Added bot has default spawn point at start
Improved ReloadGoalScripts replaces scripts for all bots, it's not necessary to kick them
Improved navigation at beginning and end of path
Changed current goal is not aborted if bot is stuck and finds new path to the goal
Changed ScriptGoal is delayed or disabled after script exception
Changed global Server table is initialized even if map has no waypoints
Changed IsStuck returns true if StuckTime is equal to parameter
Changed functions SetGoalPriority, SetMapGoalProperties, SetGoalRole, ClearGoalRole print error message if goal does not exist
Fixed crash in Omnibot_LoadLibrary if omnibot_et.dll was not a valid Win32 application
Fixed function UnitCircleNormalize
Fixed IsStuck returned false if bot was stuck and jumped
Fixed IsEntityValid called GetEntityClass if entity handle was invalid
Fixed gm table indexes of type Vector3
Fixed current goal was instantly aborted if LimitTo was used inside Enter
Fixed deleted ROUTE goal remained visible
Optimized updating blocked or dynamic paths
Optimized Goto if bot is already at destination
Removed goal loading and weapon loading messages from log file

=== MOD ===
Added injure command has optional parameter new health
Fixed DEFUSE event was not triggered if player was between dynamite and objective
Fixed Axis engineer got XP for defusing his own dynamite
Fixed error SP_team_WOLF_objective exceeded MAX_MULTI_SPAWNTARGETS
Fixed some interface functions could crash if entity handle was invalid

=== GOALS ===
Added Wait property to BUILD goal to wait after objective is constructed
Added timeout message to SWITCH goal
Changed medics don't kill teammate who is carrying a flag
Changed MOUNT goal offsets are ignored if bot is already near tank
Changed disablecm property of CAMP goal is toggled if goal_setproperty command has only 1 parameter
Improved Util.SetMaxUsersInUse can be used to limit number of planted dynamites
Improved bots don't use occupied offsets of ESCORT goal
Improved medic does not reload after every bullet when killing teammate for revive and he gives medkits if he fails to kill
Fixed all CAMP goals were aborted every 3 seconds if tank was mouted by human or enemy
Fixed bots often killed themselves in combat
Fixed bots were stuck forever if they met in a narrow corridor
Fixed engineer waited 0.25 seconds before planting dynamite
Fixed ESCORT, MOUNT, RIDE goals are delayed only once and not after every spawn or revive

=== SCRIPTS ===
Added Util.GetGoal, Util.GetGoals, Util.RandomChat, Util.GetPriority
Added Util.MapDebugPrint writes warning to log file if last parameter is 2
Added Util.ScriptDebugPrint writes warning to log file if message is printed to console
Added Util.OnTriggerPosition parameter can be Vector3 instead of waypoint name
Added all pathfailed messages contain waypoint UID and blackboard delay is randomized
Added AxisBotPrefix and AlliedBotPrefix in et_botnames_ext.gm
Changed Util.GetTableValue is case insensitive
Changed LimitToClass, ExcludeClass, RollCall moved from ETUtil to Util
Changed Util.RandomSpawn does not run in new thread
Changed Util.ChangeSpawnForRole changes spawnpt in Map.Roles table
Fixed some functions (Util.SetMaxUsers, Util.OnTriggerPosition, ...) did not print any error message if goal did not exist
Fixed error in Util.UpdateSwitchData if WaypointName was undefined
Removed Util.AddBotKickWhenDead, Util.WaitForPlayerSpawn, Util.FollowWaypoints, Util.SetPropertyTeamClassGoal, Util.BotsWithGoal, Util.TeamClassCounter, Util.TestGoalPriorities, Util.AllTeamPlayers, Util.QueryGoal
Removed global table bot.QueryGoalsTable

=== WEAPONS ===
Added KNIFE_KABAR, MOBILE_BROWNING, MORTAR2 in NoQuarter 1.2.7 or older

=== COMMANDS ===
Added help with parameter prints usage info for that command
Added debugbot parameters planner, steer, target
Added waypoint_unsplit command
Changed bvp and cvp has only 2 parameters - goal and time
Removed bvpo and cvpo commands
Removed debug command
Removed assignment to variable in trigger_bounds
Improved waypoint_stats prints number of connections
Improved tracearty all prints goal names
Fixed waypoint_mirror of selected waypoints

=== TOOLS ===
Route Maker does not require windows-1252 code page, output script is copied to clipboard

=== WAYPOINTS ===
1944_huertgen_final2x_mas
alps2_pb
capuzzo
castle_trap
cathedral_te
ctf_cradle
ctf_temple_b1
element_b4_1
et_november
frost2_final
highnoon
mia1d
mp_communique
oldbones_b1
praetoria_m3
rabenhorst_final
road2amiens_b2
steal_v1
storage_facility_fp
targetpush
temple_of_dal
t_whatever
uje_mall
uje_trainstation
watten
zombie_city

---------------------------------------------------------------

0.84 ET Change Log

infected mod is supported

=== BOT ===
Added 0.71 interface (NoQuarter 1.2.7)
Added trigger Flag dropped
Added new functions IsCarryingFlag, CanGrabItem, GetNearestDestination, GetAllEnemy, GetAllAlly
Added TraceLine returns contents and surface
Added DistanceBetween and DistanceTo parameters can be MapGoals
Added GetGoals and QueryGoals have parameter Sort (values are none,priority,name,random)
Added GetWaypointByGUID and GetAllWaypoints return waypoint name in result table
Added Goto parameter can be a table of vectors
Added HasAmmo can have 2 parameters (ammotype, amount)
Added GetNearest,GetNearestEnemy,GetNearestAlly can search for multiple classes
Added constants SURFACE.SLICK and SURFACE.LADDER
Added file names in gm script error messages
Added et_autoexec_user.gm is executed after et_autoexec.gm
Added SetAvailableMapGoals 3rd parameter can be a table of goal expressions
Changed MaxUsers trackers are separate for each team
Changed QueryGoals and GetGoals delete all items from table before writing result
Changed GetGoals does not sort goals by priority
Changed console commands are sent to goals even if they are handled by global Commands table
Changed BlackboardDelay,MarkInProgress,MarkInUse do not require mapgoal parameter
Changed blocked waypoint connections are visible, color is dark grey
Changed errors from SetAvailableMapGoals are printed by Util.MapDebugPrint
Fixed crash if dlclose fails (if Jaymod is used without LD_PRELOAD)
Fixed crash in ClientJoined event
Fixed Finished did not work inside Enter callback
Fixed condition if(vector) failed if vector.x was zero
Fixed GetUsePoint
Fixed ConfigGet with 2 parameters saved null to config file
Optimized region triggers
Optimized initialization of file system and weapons
Removed options [Script]/Debug, [Script]/EnableRemoteDebugger, [Debug Render]/EnableInterProcess, [Downloader]
Removed empty lines in error messages

=== MOD ===
Added killing messages can be disabled by cvar cg_obituary
Added cvar omnibot_render_distance to limit waypoint drawing distance from the player
Added spectator position on the map
Changed InitialDelayTime can be less than 10 seconds on dedicated servers
Changed drawing does not use boost interprocess library
Changed spectator can see all players on the map
Changed warmup can be less than 10 seconds
Changed message "Omni-bot Loaded Successfully" is printed only after successful initialization
Fixed spectator position was wrong and spectator could not edit waypoints
Fixed GetEntityOwner sometimes returned invalid entity
Fixed crash if print parameter was too long
Fixed UpdateGoalEntity was called even if omnibot_enable was changed from 1 to 0
Optimized drawing of waypoint radius
Added version info to DLL files

=== GOALS ===
Disabled waiting for medic in NoQuarter mod because of weapon spread bug
Removed many useless properties from goals gm file in nav folder
Changed high level goals were moved from library to gm scripts
Changed ROAMING goal chooses any goal available to bot's team, ignoring class and MaxUsers
Changed DEFUSE goal prefers dynamite which has been planted sooner if there are 2 dynamites at the same objective
Changed FLAGRETURN goal has limited range
Changed REVIVE is disabled on ice
Changed Covertops don't steal uniform when mounting mg42
Changed resetxp is used only in Jaymod, NoQuarter, Bastardmod, ETBlight
Improved MOUNTMG42 can be used concurrently by both teams (neutral mg42 in goldrush)
Improved soldier does not shoot MORTAR if stupid fieldops stands in front of him to deliver ammo
Added timedout message in CHECKPOINT, REVIVE, MOUNT, MOUNTMG42, REPAIRMG42
Fixed priority was not reset to zero after map goal became unavailable
Fixed new ARTILLERY_S or ARTILLERY_D goals were sometimes created in ground
Fixed disguised covertops was shooting and lost disguise
Fixed error if test bot was kicked during Goto
Fixed GRENADE did not work in NoQuarter mod if goal had Count=1

=== SCRIPTS ===
Improved server manager to balance number of humans and bots
Added Util.ChangeCrucialClassForRole
Added Util.QueryGoal, Util.InvalidGoal, Util.RouteTo
Added region type in debug messages when entering/exiting re-usable region trigger
Changed debug messages in disablepush,disablecm,breakabledist regions are printed only for bots
Changed Util.UpdateSwitchData is called automatically by paththrough switch

=== WEAPONS ===
Added throwable knives in etpub mod
Added WeaponType "item"
Added BAZOOKA in Legacy mod
Changed rifle grenades have limited range
Changed SetDesirabilityRange can be less than DefaultDesirability
Changed sniper weapons have smaller AimError
Fixed flamethrower was used at long distances (bug in 0.83)

=== COMMANDS ===
Added cleargoalflags command to delete obsolete 0.71 goal flags
Improved sag command (ShowActiveGoals) prints priorities and roles
Improved sei command (ShowEntityInfo) prints entity categories
Improved rollcall command prints roles, goal, weapon, ammo, health, difficulty, view distance, reaction time
Improved tracearty command renders pink line to point of collision if trace fails
Fixed difficulty, resetxp and maxxp commands are listed in help and they don't need connected bots
Fixed kickbot command worked only for ID, but not bot's name (bug in 0.83)
Removed TestMap conditions and ShowMovers from makemapgm command
Removed commands showscriptgoals, console, tbr, aim_debug, fixoffsets, fixnext

=== WAYPOINTS ===
1944_cherbourg2
1944_nordwind
1944_nordwind_summer
airassfp1
battle_chess_sniper
black_forty_four_sniper
capuzzo_b3
ds_bunkers_b2
erdenberg_b3
es_puffo_sniper
fragmaze_fixed
north_italy_sniper
radar_summer
raid_b4
santas_grotto_v1_2
sniper_from_mars
transylvania
uje_city_patrol
uje_gondola_sniper
uje_parking
xmas_bol_sniper


---------------------------------------------------------------

0.83 ET Change Log

ETBlight and Bastard mods are supported

=== BOT ===
Added cvar omnibot_logsize (maximal file size in KB), -1 will disable logs, 0 will overwrite file every match
Added script goal property LimitToNoClass
Added you can pass 0 for all teams to MapGoal.SetAvailable and MapGoal.SetAvailableInitial
Added WeaponFireMode.AimOffsetZ
Changed log files are written to omni-bot/et/logs (if the folder exists)
Changed initialization is logged only if LogInfo is true in omni-bot.cfg
Changed waypoint property is cleared if value is empty string
Improved Server table is immediately updated when players connect or disconnect
Improved help command is sorted
Fixed memory leak caused by GameMonkey threads
Fixed crash in AddBot if bot is kicked in ClientUserinfoChanged
Fixed jumplow waypoint flag did not work at tank barrier or pile of box crates
Fixed weapon mask was 64-bit and could not be used for mod specific weapons, now it's 128-bit
Fixed InFieldOfView returned correct result only if bot had same Z coordinate as enemy
Fixed DrawTrajectory was not accurate
Fixed CalcTrajectory always returned null
Fixed CheckCharged parameter of HasAnyWeapon
Fixed Utils::ConvertString returned true even if string could not be converted
Fixed some console commands expected integer parameters, but got float
Fixed waypoint connection remained closed after blockable flag was removed
Fixed new connection between blockable waypoints was not blockable
Fixed crash if there was error in waypoints file
Fixed bot killed himself after command bot.Enable(false)
Fixed stuckage if paththrough navigation called Goto to unreachable destination
Fixed soldier with mortar waited forever if some aim vector was out of range
Fixed aim vector of mortar and script goals was sometimes imprecise
Fixed bot sometimes could not reload if two weapons needed to be reloaded
Fixed GetRandomWeapon
Fixed indentation in log files

=== MOD ===
Added display scriptName and targetName for /entitylist command
Fixed fake client lua script exploit

=== GOALS ===
Added target property to MOBILEMORTAR goal
Added coversplit property to PLANT goal
Added multiple aim modes for MOUNT goal, they can be set by ETUtil.SetAimModeForMount
Added Stance property to DEFUSE goal, can be set only from trigger and only "prone" value is permitted
Changed ATTACK goals are limited to 3 bots in progress
Changed AIRSTRIKE,ARTILLERY,MOBILEMG42,MOBILEMORTAR,SNIPE goals are limited to 1 bot in progress
Changed bot on CAMP goal selects his primary weapon (shotgun, panzer, ...)
Changed bot can say "Hold your fire" more than once per match
Improved priority to pick up medkits depends on current health
Improved ESCORT goal, stucked bot can jump or repath
Improved MOBILEMORTAR orientation when goal has multiple facings
Fixed REVIVE goal in some mods if dead players have health<=0, but don't have DEAD entity flag
Fixed MOUNT goal was not blackboard delayed after Timeout
Fixed bot killed himself if he stucked near tank and then successfully mounted the tank
Fixed stance property could be set to wrong values

=== SCRIPTS ===
Added ability to give unique names for re-usable region triggers
Added sniper war and panzer war in Jaymod or n!tmod are detected in autoexec
Changed Util.ListTableMembers prints both keys and values
Fixed Server.MinBots
Fixed script errors when bot is kicked from server

=== WEAPONS ===
Changed VENOM aim offset and aim tolerance
Changed engineer will not detach rifle grenade on camp goals
Changed weapon desirabilities
Fixed bots always aimed at head with mod specific weapons (shotgun, mp34, sak47, ppsh, rpd, ...)
Fixed bots could not use ammo cabinets when they have some mod specific weapons (stg44, mp34, m79, madsen, ...)
Improved skilled soldiers can reload mobile mg42 in NoQuarter or n!tmod
Improved melee weapon is used to attack only if distance is within range
Optimized some weapons cannot be reloaded and some weapons don't require ammo
Removed unused weapon properties

=== COMMANDS ===
Added trigger_bounds command supports writing the RegionTrigger.Create function call to file
Added optional TRACE parameter to showentityinfo command
Changed command botgoal prints MapGoal name, not ScriptGoal name
Fixed difficulty command could not change difficulty of newly added bots, dead bots or bots waiting for a medic
Fixed difficulty could not be set to -1 which means random difficulty
Fixed difficulty could be set to 7, but maximal difficulty is 6
Improved command ab is much faster, it can add 20 bots per second
Improved command waypoint_view prints error message if drawing is impossible

=== WAYPOINTS ===
1944_huertgen
2dom1
afd_beta5
ammodepot
barrocas_base_b8
byzantine
cherbourg
country_road_jp
denoflions_etdual
duplex_towers
es_alamo_sniper
es_garden_sniper
es_ziggurath_sniper_night_b2
et_mor2_night
field_hq_b4
flame-guards
fueldump_uvf
intel_center
kings1
lostparadise
mlb_daybreak
mp_base
mp_theriver_2nd
negoshk_b2
op_lucky_a2
password2
resurrection
snatch2
tankbuster
uje_convoy_final
uje_fantasie_sniper
uje_oil
uje_parking_sniper
uje_snowy_sniper
uje_warzone

---------------------------------------------------------------

0.82 ET Change Log

=== BOT ===
Optimized path planner (thx palota)
Optimized sensory memory (thx palota)
Updated ladder navigation (thx palota)
Fixed ENT_ENTER_RADIUS to fire if bot is already within radius (thx palota)
Fixed QueryGoals to randomly shuffle all returned goals (thx palota)
Fixed ScriptGoal.LimitTo issues (thx palota)
Fixed SetAvailableMapGoals was enabling all goals if parameter 3 was not a string
Disable LookAroundState at doors (thx palota)
Fixed Route nodes to work on slopes (thx palota)
Fixed SetMapGoalProperties to work inside trigger functions (thx palota)
Fixed MapGoal.RemoveWithEntity (thx palota)
Fixed logger error masks (thx palota)
Fixed OnSpawn callback was being called twice (thx palota)
Fixed some events were not always fired (thx palota)
Fixed paththrough goals were able to be interrupted (thx palota)
Fixed ignore player command to work on players that are mounted on fixed mg42's (thx palota)
Added paththrough property set on waypoint does not require reload (thx palota)
Fixed b.HasRole, b.HasPowerUp, b.HasAnyEntityFlag, and b.HasEntityFlag to check all parameters
Changed PostMapLoad to not require a map script
Fixed mg.SetRoles and mg.ClearRoles to preserve existing roles
Fixed b.SetRoles and b.ClearRoles to preserve existing roles
Fixed duplicate GetPriority calls when a bot spawned
Fixed crash in waypoint_mirror command
Aliased ET_CLASSEX_TREASURE as TRIPMINE to preserve compatibility with mods
Fixed script goal OnSpawn callback
Fixed option table parameter in GotoRandomAsync and GotoRandom script functions
Fixed potential buffer overrun in CheckWaypointForGoal
Updated PHYSFS from 1.1.1 to 2.0.2

=== MODS ===
Added support for tripmine usage in silEnT mod ( thx gaoesa and TheSilencer )
Fixed weapon usage for some etnam and silEnt mod weapons
Fixed several weapon id conflicts
Fixed remove weapon event to not be called when a bot goes to limbo
Fixed defuse event to always be fired
Fixed suicide flag for bots to be cleared on death
Fixed b.IsWeaponCharged() for Adrenaline in NoQuarter

=== GOALS ===
Improved Revive goal behavior
Added support for interrupting Defuse goals for higher priority Defuse goals
Fixed high cpu utilization in goal_paththrough_navigation (thx palota)
Fixed bug in UseCabinet goals that was causing high cpu usage (thx palota)
Improved goal selection to be random for equal priority goals rather than sequential (thx palota)
Optimized goal_useswitch (thx palota)
Fixed goal_paththrough_useswitch behavior while bots are riding in movers (thx palota)
Fixed bots could not shoot fixed mg42 if reloading while mounted (thx palota)
Fixed bots aim position after being revived in goal_mobilemg42 (thx palota)
Fixed goal_checkstuck to allow enough time for revived bots to be able to move (thx palota)
Updated goal_combatmovement to include unscoped sniper weapons (thx palota)
Fixed several issues with goal_covertops (thx palota)
Optimized goal_voicechat and goal_deliversupplies (thx palota)
Fixed issues in goal_watchforprojectile (thx palota)
Fixed evaluation used by bots to determine when to reload (thx palota)
Fixed FlagReturn goal to not query for "Flag.*" (thx palota)
Improved goals file to not save RandomUsePoint or Range if the value is 0 (thx palota)
Added optional UseAsync property to goal_paththrough_useswitch
Fixed dispenseammo to not activate when a bot is revived (thx palota )
Added traceline property to grenade goal  (thx palota )
Added count property to grenade goal to limit number of grenades thrown  (thx palota )
Disabled 0.71 style high level script goals
Fixed weapon restriction related issues in camp goals
Added several improvements to goal_checkstuck  (thx palota )
Added bots will search for unarmed dynamite at plant goals
Added disablecm property to camp type goals to disable combat movement
Added several improvements to goal_selectweapons  (thx palota )
Fixed issues with goal_paththrough_artillery
Added support for healing with needle in deliversupplies goal
Fixed issues with delivering supplies to mortar and mobilemg42 camp locations  (thx palota )
Improved goal_mobilemg42 aiming  (thx palota )
Added "peek" stance to camp type goals for duck and cover emulation
Moved checkpoint goal to script
Moved defuse goal to script
Moved repairmg42 goal to script
Moved revive goal to script
Fixed distance tolerance for plantmine and mortar goals
Added Range property to script goals
Added RandomUsePoint property for randomizing position for bot to use a goal
Fixed bots sometimes not delivering objectives

=== SCRIPTS ===
Added InitializeRoutes script function for Map scripts
Added regular expression support for route tables (thx palota )
Added Util.ScriptDebugPrint with filtering capability
Added support for passing a table of roles to util functions that set and clear roles
Fixed issues in server_manager.gm
Deprecated ETUtil.SelectWeapon() (thx palota )
Added ability to globally disable specific weapons for bots
Added et_weapontables.gm  (thx palota )
Fixed issues with the role manager (thx palota )
Moved ClassPrimaryWeaponChoice from global to bot
Removed death event from class manager (thx palota )
Added ETUtil.GetTimeElapsed()
Added new botnames script that allows users to specify bots per team and a preferred weapon
Added Util.FindClosestGoal() (thx d00d )
Fixed secondary weapon usage for heavy weapon bots to not rely on targeting system (thx palota )
Fixed ETUtil.WarpToGoalOffset (thx palota )
Added silEnT mod weapon scripts
Added etnam weapon scripts
Fixed script errors on bot disconnect in goal_voicechat
Seperated class manager logic into et_classmanager.gm for global accessibility

=== COMMANDS ===
Added bot goto and bot wait commands for testbot (thx palota)
Added waypoint_split command (thx palota)
Added /bot warpto command can be used for paththrough points (thx palota)
Fixed error in /bot drawspawns command (thx palota)
Added waypoint_startover command which removes all waypoints without flags or properties
Added saveusepoint command (thx d00d )
Added writeplayerpos command (thx d00d )

=== WAYPOINTS ===
Several fixes, updates, and new maps supported. See the Assembla repository logs for details

=== TOOLS ===
Updated DMS (thx MickyP)
Updated Notepad++ for omnibot (thx d00d)

---------------------------------------------------------------

0.81 ET Change Log

=== BOT ===
Fixed kickbot crash in older Windows versions
Fixed pathfinder crash
Fixed region trigger related crashes
Fixed SetAvailableMapGoals
Fixed SetGoalPriority
Fixed SetGoalGroup
Fixed goals being interrupted by other goal types with same priority as current goal
Fixed script goals being activated too early when bots spawned
Fixed InWater flag not being auto added to waypoints
Fixed issues with GetNearest related to entities that shared a classname with weapons
Fixed GetRandomDestination to only return reachable points
Fixed ScriptGoal event threads not being killed on bot exit
Added bots will press jump when headed towards waypoints with the InWater flag
Added goal loading time output
Added SetIgnoreEntFlags weapon property
Added rendering of RegionTrigger names
Improved ladder navigation
Updated boost libraries to version 1_44_0

=== MODS ===
Fixed goal names to not include color strings
Added support for NoQuarter WP_JOHNSON (thx Irata)
Added conversion of panzerfaust request to bazooka for allied bots in NoQuarter

=== GOALS ===
Moved MountMg42 goal to script and added support for user defined facings
Moved MobileMG42 goal to script
Fixed version number in mapgoal_capturehold
Fixed random aim mode for mount goal
Fixed goal_paththrough_artillery to abort if no line of sight to an arty target
Fixed gotowp support in goal_paththrough_navigation
Fixed goal_combatmovement to ensure that GetTargetInfo returns valid data
Fixed velocity check in goal_indisguise
Fixed mapgoal_explosive to not create on load
Fixed manually added health and ammo cabinet goals to create on load
Fixed region trigger name in mapgoal_plantmine
Fixed plant goal coverspot occupied flag not being cleared on bot death
Fixed bots to not use rifle nades when they have a plant goal active
Fixed revive goal sometimes never enabled (thx 0x0000 and Demetrius)
Fixed InProgress limitations for FLAG_ goals
Fixed issues with askforammo and askforhealth goals
Fixed potential issues with ammo and health cabinet goals
Added paththrough function to goal_build for custom behavior scripting (thx palota)
Added bots planting dynamite will abort if a teammate drops a satchel (thx palota)
Added mapgoal_dynamite for use when target has no usable OID
Added cure poison with needle support to goal_deliversupplies
Added caching of trace results in goal_paththrough_artillery
Added ability to force routing to build goals with offsets defined
Added missing finish criteria in goal_covertops
Added cover spot timeout to plant goal(s)
Added jump stance property to build goal for build goals in water (thx palota)
Changed stuckage check goal to write separate logs for each map
Changed paththrough_useswitch goal so that the wait function overrides any exit conditions
Changed plant goal coverspot selection to be random rather than sequential (thx palota)
Improved goal_escort to allow escorting bots to assist in building of vehicle (thx palota)
Improved bots ability to mount mg42's
Improved plant goal aim location (thx palota)
Increased priority of deliver supplies goal and limited distance to 1500 units
Lowered default priority of repairMG42 goal

=== SCRIPT ===
Fixed MapGoal.GetPriority
Fixed role manager to auto increment class manager minclass counts when crucialClass is set
Fixed role manager crucialClass
Added Util.BotChat function
Added Util.CatName function
Added Util.SetCustomProperty function
Added ETUtil.WinningChat and ETUtil.LosingChat functions
Added EvalFunc support to goal_paththrough_navigation
Added spawn point and voice macro support to role manager
Added optional viewDistance parameter to Util.ChangeToSniperWeapons
Added CLASS.DYNAMITE_ENT, CLASS.MORTAR_ENT, CLASS.SATCHEL_ENT, and CLASS.LANDMINE_ENT
Added re-usable region triggers for spotting and announcing enemies or all clear (thx d00d)
Added waypoint GUID support to the warpto command (thx d00d)
Moved class manager to script goal with several functional improvements (thx palota)

=== COMMANDS ===
Added optional filter param for debugtriggers
Added fix_waterwps to add InWater flag to waypoints near water surface
Added draw_paththrough 0|1 for rendering 3D text over paththrough waypoints

=== WAYPOINTS ===
Several fixes, updates, and new maps supported. See the Assembla repository logs for details.

=== TOOLS ===
Updated DMS (thx MickyP)
Updated Notepad++ for omnibot (thx d00d)

---------------------------------------------------------------

0.8 ET Change Log

=== BOT ===
fixed Game Monkey Garbage Collection bug that was causing serious performance issues 
fixed paththrough crash when no data is passed fromwp property 
fixed bots field of view for close objects 
fixed OmnibotRenderDebugLines to not run on remote servers 
fixed lookaround timer 
fixed initialization of powerups (all games) 
fixed GetEntityPowerUps 
fixed a gui exception with no delta in mouse wheel event 
fixed fov check to use trace offsets 
fixed null bot goal issue with flagreturn goal, 
fixed crash when tableRandom was called on an emptytable 
fixed gm string tokenize binding 
fixed AddUsePoint mapgoal binding 
fixed ExecFile script function to support 'this' pass through 
fixed mapgoal.getentity so it returns null if entity is invalid 
fixed bot drawgoalroutes command 
fixed some loops that weren't going through all team indexes 
fixed crash when script exception contains printf formatted text 
fixed bot.IsStuck only return true if bot is actively trying to move 
fixed download support on initial map startup 
fixed boost::thread crash for some linux distributions 
fixed bug where event threads were not tracked and cleaned up properly 
fixed disguise nav callback 
fixed finish criteria and mapgoal auto completion checks to come before the call to update in script goal 
fixed several memory leaks 
fixed gm debugger to work again 
fixed gm debugger to show file/line in thread startmessages 
fixed ConfigGet function not setting a value of 0 
fixed usage of teleport links 
added script function SendTrigger to fire triggers from script 
added bot.GetConstructableState 
added bot.GetDestroyableState 
added bot.GetExplosiveState 
added bot.IsWaitingForMedic 
added bot.HasAnyWeapon 
added bot.SetRoles 
added bot.ClearRoles 
added mapgoal.roles so mapgoals can be set up to berestricted to certain roles 
added mapgoal.DisableIfEntityFlag 
added mapgoal.DeleteIfEntityFlag 
added mapgoal.GetOwner accessor 
added mapgoal.GetCenterBounds 
added mapgoal.SetBaseGoalType 
added mapgoal.RolePriorityBonus 
added mapgoal.SetRoles 
added mapgoal.ClearRoles 
added scriptgoal.SkipGetPriorityWhenActive 
added scriptgoal.LimitToRole 
added scriptgoal.AutoFinishOnUnAvailable 
added scriptgoal.GotoRandom 
added scriptgoal.GotoRandomAsync 
added scriptgoal.WatchForEntityCategory 
added ability to create custom map goals 
added ability to pass bot as 'this' to GetGoals 
added import functionality for loading scripts 
added better script goal error message in routeto 
added GetEntityVisDistance callback in BotSensoryMemory, 
added DrawGoals, DrawRoutes, DrawTriggers, DebugTriggers to omni-bot.cfg 
added support for customizing how much ammo the botwill attempt to get when resupplying 
added rolemask field to client class 
added table argument support to mapgoal.LimitWeapon
added weaponhasammo finish criteria 
added debug config options for logging specific logcategories(info, errors, warnings, critical) 
added optimizations to goal query 
added support for profiling data per scriptgoal type and mapgoal type 
added regex grep for goalname expressions 
added support for refreshing specific weapons from the weapon database 
added script live update support, currently only for weapon scripts 
added bool EntityIsValid script bound function 
added rendering of waypoint properties 
added opengl overlay with 2d and 3d support 
added DebugBox interface function for drawing more optimized debug boxes 
added GetEntityLocalAABB interface func 
added console and log message when SetAvailableMapGoals passes invalid goal expression 
added TRACE.VISIBLE and TRACE.GRATE to common lib 
added this.Debug to internal debug drawing state, so it can be toggled via bot debugbot all statename 1 
added schema library for data validation 
added System.Time() script bound function 
added CAT.MINE 
added DrawEntityOBB script bound function for rendering real bounds rather than axis aligned bounds 
added CheckEntityBoundsIntersect script bound function 
changed System.Newline to be a variable rather thana function 
removed usage of boost::format and replaced with printf style logging 
removed trueaxis dependency from build, drops dll size significantly 
updated to boost 1_40_0 libraries 
implemented render interface so recast can render via opengl or game render interface 
replaced parameter 2 of scriptgoal.Goto, GotoAsync,RouteTo with an optional table of parameters 
minor optimization to WeaponSystem::GetWeapon 

=== MODS ===
fixed interface functions GetCvar and SetCvar 
fixed GetReinforceTime function 
fixed fireteam events 
fixed mover class identification 
fixed bot pushing 
fixed GetEntityClass() while bot is in limbo 
fixed movement vector math in et interface 
fixed client connect event to be called before clientuserinfochanged 
fixed NQ mobile mg42 goal usage for allies and mobile mortar for axis 
fixed axis grenades not being in cat projectile or class grenade 
fixed crash when mods don't correctly report failedconnections 
fixed GetEntityInSphere to only return usable corpse entities 
added weapon classes 
added weapons to CAT.PICKUP 
added BUTTON.DROP 
added weapon events for picked up / dropped 
added print error on bot console commands if bot isn't loaded 
added additional triggers for cappoints 
added ET_OID_TRIGGER returns CLASS.GOAL from interface 
added vistest for axis grenade 
added command omnibotmenu 
added et command /oidlist for reference with build goal traces 
added support for NoQuarter private voice macros (fireteam voice chats) 
added rendering of spawn point numbers on the command map ( omnibot mod only ) 
added omnibot_flags 16 for enabling g_shove for bots ( default off ) 
added omnibot_flags 32 for bots tripping mines thatthey can see ( default off ) 
disabled call to OmnibotRenderDebugLines if not a local server (et and rtcw) 
altered ET min class check to make sure one of eachis added 
implemented waypoint_goto in et 
merged NQ updates and fixes to etbot interface 
 
=== GOALS ===
moved most of the mapgoals to script 
fixed mount goal so bots could actually dismount atexit 
fixed useswitch goal to check for distance limits prior to recieving a priority 
added goal_covertops for disguise and spot mines behavior 
added a smoke bomb goal for covert ops 
added cover spots for dynamite goals 
added an airstrike goal for fieldops to call targeted airstrikes 
added ability to create user defined plant and build goals 
added weapon restriction ability to camp type goals
added paththrough goals for callartillery and airstrike 
added a pickup items goal that makes the bots more responsive to packs / weapons laying around 
added a range limit for health and ammo cabinets; default 1250 
added a sample goal_demo that is heavily documentedfor tutorial purposes 
added goal_zooming that auto increases max view forbots while scoped 
added goal_watchforprojectile so bots avoid airstrikes and grenades 
added kill / revive behavior to deliver supplies goal 
added goal_resetxp and commands /bot resetxp /bot maxxp 
added simple hunt goal to et for deathmatch maps ( autoadd = false ) 
added bots will look for and pickup weapons in goal_askforammo 
added support for an AimPosition as an alternative to facing for improved reliability in switch goals 
added goal_voicechat with completely customizeable response probabilities 
added goal_rolemanager that keeps Map script defined role slots occupied 
added goal_checkstuck 
bots will sidestep if blocked by players 
bots will attempt to jump out of stuckages 
optionally log stuckage positions to the omnibot log 
optionally have the bots /kill if stuck too long 
replaced difficulty.gm with goal_difficulty 
makes it easier for bots to have individual profiles 
bots can now be set up to use random difficulty settings 
difficulty settings have been completely reworked to be more realistic 
added several more weapons to the adjustable weapontable 
improved bots ability to path to mover related goals 
improved escort goal to detect a movemode based on mover speed 
improved supplyself goal 
improved combat movement behaviors in goal_combatmovement 

=== SCRIPT ===
moved bot name definitions out of et_autoexec and into et_botnames 
fixed distance limit for weapon pickups in askforammo goal 
fixed /bot balanceteams 0 not working after it was set to 1 
fixed exitCondition and added timeout to goal_useswitch 
fixed threadId for waypoint autosave. also kill original thread if active on repeated calls 
fixed showOffset to require entity in /bot sgn true
fixed script error when trying to warp to an invalid wp name 
fixed scripts unnecessarily creating a high number of threads 
fixed several incorrect property settings in weaponscripts 
fixed infinite loop bug in ChoosePrimaryWeapon 
added waypoint property access to script 
added timeout to switchtable of paththrough_useswitch 
added several useful utility functions 
added some bot controls via fireteam chat (camp, follow, release, etc) 
added optional team param to ETUtil.SwitchWeapon 
added optional teamId param to ShowActiveGoals for rendering only active goals by team 
added a class management system 
added /bot autosave as an alternative to mywpmode 
added /bot draw_spawns for rendering of spawn points 
added global debug flags for disabling debug messages in all scripts 
added global MAP_TALK var for simple disabling of map script initiated bot chat spam 
added LowAmmoGetAmmoAmount to weapon scripts to setamount of ammo bots should get at cabinets 
added several re-usable region triggers (et_regiontriggers.gm) 
disabled bots targeting player classes with knife, 
disabled bots targeting player classes with airstrike cannisters 
added Util.HasAmmoForWeapon(bot, wpnID) 
exposed mapgoal.SetBounds to script 

=== WAYPOINTS ===
separated waypoints based on level of completion 
fully supported maps are the only ones in the nav folder now 
incomplete navs are located in a separate folder and divided into categories based on completion 
level 
too many individual waypoints and scripts were improved to mention. well over 200maps were 
improved and tested at various levels 

=== TOOLS ===
updated version of Notepad++ with autocompletion info for omnibot (thx d00d!) 
added popup menu with all kinds of useful shortcutsfor waypointers (thx MickyP!) 
