About This File
Omni-bot is an artificial intelligence(AI) controlled opponent for first person shooter games. Unlike many bots that are written for specific games, Omni-bot was designed from the beginning to exist mostly as a generic framework with which support for many different games can be made, and most of the functionality can be shared among them.
For making waypoints for ET maps have a look at Belo's tutorial.
Side-note: The 0.81 version can be found here and has not been updated since some users prefer to work with the older version and it is supposed to work much easier/better with Jaymod.
What's New in Version 0.83
Released
- 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_warzon