Omni-bot Command Reference

From MyGamingTalk
Revision as of 18:43, 28 February 2024 by Palota (talk | contribs) (some commands moved from et to global_scripts)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Main Page Omni-bot Command Reference

Console Commands

Omni-bot comes with a wide range of utilities in the form of console commands for general purpose usage as well as debugging tools for waypointing. You can also add/write your own commands into file et_autoexec_user.gm or rtcw_autoexec_user.gm in scripts folder.

addbot

Do NOT use this command on dedicated servers. Command maxbots must be used on servers. If you play game on your home computer and you want bots to be added automatically, you can use command maxbots too. If you want to add bots manually every time you start the game, you should use command ab. Command addbot is useful only if you need unbalanced teams.

 syntax: bot addbot <optional team> <optional class> <optional name>
 example: /bot addbot 2 1 bob will add a soldier named bob to the allied team in ET

team: 1 = Axis, 2 = Allies

class: 1 = Soldier, 2 = Medic, 3 = Engineer, 4 = Field Ops, 5 = Covert Ops

Note: Command addbot chooses bot's name randomly. Command ab chooses names according to team and class as defined in file et_botnames_ext.gm.

Note: Bots select their class every time they spawn. If you want to set classes manually, you must change DisableClassManager value to 1 in file et_autoexec.gm.

debugbot

Enables debugging output on a specific bot or all bots.

 syntax: bot debugbot botname debugtype
 example: bot debugbot all fpinfo

debug types: log, move, script, fpinfo, planner, events, failedpaths, aim, sensory, steer, target

Debug type can also be a ScriptGoal name to toggle Debug property.

debugtriggers

Prints triggers to console.

 syntax: bot debugtriggers <optional 1/0/on/off> <optional regular expression>
 usage: used for checking or identifying trigger names to be used with map scripting. when turned on, you will see 
        messages about events as they occur in the map:
 
 <+++> Trigger: TagName: The Tank has been repaired! Action: announce Entity: 0x7016dd8c Activator: 0
 
 <+++> means that a callback (trigger) is set up and has been called, while <---> means no callback is associated
 TagName is the string to use for the OnTrigger function in the map script
 Action is the category in which the event is recognized
 
 notes: this is a toggle. issuing the command a second time will turn it off.

dontshoot

Enables/disables all bot shooting ability.

 syntax: bot dontshoot true/false/1/0/yes/no
 example: bot dontshoot 1 will stop all bots from shooting.

draw_goalrange

Renders all goals range radius and prints it to the console.

 syntax: bot draw_goalrange

draw_goalroutes

Renders route paths.

 syntax: bot draw_goalroutes on/off goalname
 example: bot draw_goalroutes on will draw route paths to all goals set up for routing

 notes: the goalname parameter is optional and supports expressions. i.e. bot draw_goalroutes on ATTACK.* will draw route to all of
        the attack goals in the map that are set up for routing
        this command was added in version 0.7

draw_goals

Draws debug information for all mapgoals.

 syntax: bot draw_goals on/off goalname
 example: bot draw_goals on will draw squares around all objective goals and highlight the radius of attack / defend goals

 notes: the goalname parameter is optional and supports expressions. i.e. bot draw_goals on ATTACK.* will highlight all of
        the attack goals in the map.

drawblocktests

Enables drawing of blockable line tests.

 syntax: bot drawblocktests 1/0
 example: bot drawblocktests 1 turns on drawing of block tests
 
 useage: will draw block test lines in addition to the ones drawn in waypoint mode.

drawtriggers

Renders any active trigger zones.

 syntax: bot drawtriggers <optional 1/0>

help

List all bot commands available in console.

 syntax: bot help

kickall

Kick all bots from the game by name.

 syntax: bot kickall

kickbot

Removes a bot from the game.

 syntax: bot kickbot <botname>
 example: bot kickbot [BOT]Aimless

nav_benchmarkgetnavpoint

Development tool. Performs a GetClosestWaypoint test with every waypoint. Used to test the speed of nearest waypoint lookups.

nav_benchmarkpathfinder

Development tool. Executes a path search between every waypoint and every other waypoint. Used to test the speed of the path finding system.

nav_logfailedpath

Saves info about failed path attempts for debugging.

nav_resaveall

Re-save all nav files to the newest file format.

nav_showfailedpath

Render a failed path by its index.

navsystem

Creates a navigation system of a specified type.

print_filesystem

Prints files from file system.

printfs

Prints the whole file system.

reload_weapons

Reloads the weapon database from script files on disc.

revision

Shows the revision the bot dll was built from.

script_collect

Performs a garbage collection.

script_debug

Enables/disables debug messages in the scripting system.

 syntax: bot script_debug 1/0/on/off
 example: bot script_debug 1 turns on debugging information in the script system.
 
 usage: when enabled, if an error occurs in script execution, it will be printed to the console.

script_docs

Dumps a file of gm bound type info.

script_run

Executes a string as a script snippet. Apostrophes are converted to quotation marks.

 syntax: bot script_run <string>
 example: bot script_run "print('Time left:'); print(GetGameTimeLeft())"

script_runfile

Executes a specified script file.

 syntax: bot script_runfile <filename>
 example: bot script_runfile testing.gm

script_stats

Shows scripting system memory usage/stats.

 syntax: bot script_stats
  
 usage: displays memory use and garbage collection stats in console

show_bb

Shows the contents of the global blackboard.

 syntax: bot show_bb

show_goalroutes

Prints route info for matching map goals.

show_goals

Prints out the names of each goal.

 syntax: bot show_goals <optional expression> <optional p>
 example: bot show_goals DEFEND.* will list all defend goals in console
 example: bot show_goals .* p will list all goals and their sub priorities (for >= 0.7)
 
 notes: this command supports expressions for the optional parameter

Explanation of goal-list-entry by example:

 33: FLAG_the_War_Documents -> 0100 serial 3 priority 0.55
     ALLIES AXIS SOLDIER MEDIC ENGINEER LIEUTENANT 1.80 
 
 <goal-no>: <goal-name> -> <team-availability> serial <serial> priority <priority>
 
 goal-no: number of goal
 goal-name: name of goal
 team-availability: availability team1 team2 team3 team4
 serial: serial number
 priority: default priority
 
 The optional p parameter displays properties set with the SetGoalPriority function which
 enables Team and Class properties to be set.  
 notes: team-availability shows boolean value for each team  
        team3 and team4 are obsoleted in ET, since ET only has 2 teams:
        TEAM.AXIS and TEAM.ALLIES or TEAM.TEAM1 and TEAM.TEAM2.

showprocesses

Shows a NavMesh or Recast process by its name.

 syntax: bot showprocesses
 
 usage: for debug use only

stopprocess

Stops a process by its name.

 syntax: bot stopprocess
 
 usage: for debug use only

version

Prints out the bot version number.

 syntax: bot version

ab

       Add Bots, add a given number of bots
       Usage: /bot ab <numbots>

addroute

       Add Route, adds a route node at players current position
       Usage: bot ar <name> <optional radius>
       Version note: RTCW only

aim_debug_reload

       Aim Debug Reload, reloads each bots profile
       Usage: /bot aim_debug_reload

aim_pos

       Aim Position, lists the players current aim position
       Usage: /bot aim_pos

ar

       Add Route, adds a route node at players current position
       Usage: bot ar <name> <optional radius>
       Version note: RTCW only

autosave

Enables waypoint view and autosave.

balanceteams

Forces bots to keep teams balanced.

 syntax: bot balanceteams 1/0
 example: bot balanceteams 1 turns on bot balancing
 
 notes: by default, omni-bot will keep teams balanced when adding bots unless bots are added specifically to a team

botgoal

Bot Goal, used for debugging a bots goal on remote server.

botsperhuman

Set the team the ratio of bots per humans in a humans vs bots game.

botteam

Set the team the bots should be on in a humans vs bots game.

botwar

Enable or disable bots vs human teams.

 syntax: bot botwar <botTeam> <humanTeam> <botsPerHuman>
 example: bot botwar 2 1 3 // set bots to be on allies with a 3 to 1 ratio compared to humans on axis team
 bot botwar -1 // disable it

bvp

       Build Vehicle Path, assists the waypointer in creating the vehicle path
       Usage: /bot bvp <goalname> <optional seconds>
              goalname should be set to the MOVER or BUILD goal of the vehicle
              seconds can be optionally set to adjust the interval between the vehicle being damaged
              run the command again to turn it off
       Version note: ET only

campnext

Advance to the next camp goal position. It will automatically select the goal. Waypoint tool for adding camp facings.

       Version note: ET only

campstart

Start iterating through the camp goals in the map (CAMP, DEFEND, ATTACK, SNIPE). Waypoint tool for adding camp facings. Binding a key to /bot goal_setproperty facing 99 will make things fast!

       Version note: ET only

cg

       Clear Goal, disables the given goalname for the given team
       Usage: /bot cg <goalname> <team>

cleargoalflags

Removes all deprecated waypoint flags (defend, snipe, ...) which were used in Omni-bot 0.71.

cvp

       Check Vehicle Path, test bots ability to repair the vehicle along its entire path
       Usage: /bot cvp <goalname> <optional seconds>
              goalname should be set to the BUILD goal of the vehicle
              seconds can be optionally set to adjust the interval between the vehicle being damaged
              run the command again to turn it off
       Version note: ET only

cwn

       Clear Waypoint Names, remove all waypoint names
       Usage: /bot cwn <optional true>
       Note: the true parameter will list each waypoint that has been cleared

dbg_goalavailability

Toggle goal availability debugging. It will print all active goals to the console when Util.MapDebugPrint is called.

dbg_mapscripts

Toggle map script debugging (Util.MapDebugPrint messages).

dbg_scriptgoals

Toggle script goals debugging (pathfailed, timedout, ...).

dg

       Display Goal, runs a thread that lists the given goals name, position, and facing
       Usage: /bot dg <goalname> <true|false>
       Note: useful for mover type goals

difficulty

       Sets the bots difficulty. 0 is easy, 4 is default, 6 is hard, -1 is random
       Usage: /bot difficulty 3

Difficulty can also be set from the referee menu in ET:Legacy.

dist

       Distance View, gives distance to a players aim position
       Usage: /bot dist, /bot dist off

draw_oids

Draw Objective Info Displays, waypoint tool. draws the bounds of all OID's in the map.

draw_paththrough

Render 3d text over paththrough node locations.

draw_spawns

Draw spawn points, waypoint tool. draws the bounds of all spawn points in the map.

dstats

       Dump Stats, writes each bots current round stats to user<mapname>_stats.gm
       Usage: /bot dstats
       Version note: RTCW only

dump_autocomplete

       Creates an xml file for autocompletion with Notepad++

dumpglobals

       Dump Globals, writes all functions and references to files in the ~user directory
       Usage: /bot dumpglobals

dwoff

       Debug Window Off, closes the debug window.
       Usage: /bot dwoff

dwon

       Debug Window On, opens up the debug window.

Not implemented in release version of omni-bot. You can download debug version from assembla SVN repository from dw_enabled folder.

       Usage: /bot dwon

eob

       Exec on Bots, executes the given command on all bots
       Usage: /bot eob <command>

humanteam

Set the team the humans should be on in a humans vs bots game.

initialdelaytime

Sets delay time for server manager to execute on map changes.

ip

       Ignore Player, bots won't shoot player
       Usage: /bot ip <on|off>

keepbot

       Keep Bot, remove all bots without the given partial name
       Usage: /bot keepbot <partial botname>

kg

       Kill Goal, damage a given goal if cheats are allowed
       Usage: /bot kg <goalname>

kt

       Kill Team, kills all bots on the given team
       Usage: /bot kt <teamname>

makegm

       Make GM, creates a map script and test map script for the current map
       Usage: /bot makegm

makemapgm

       Make Map GM, creates a map script for the current map
       Usage: /bot makemapgm

makemapgoallist

       Make Map Goal List, creates a map goal list for the current map
       Usage: /bot makemapgoallist

maketestmapgm

       Make Test Map GM, creates a test map script for the current map
       Usage: /bot maketestmapgm

maxbots

The maximum bots to keep in play. It is the number of all players (bots + humans). The MaxBots value is saved to file omni-bot.cfg (but only if SaveConfigChanges = 1). Bots automatically join game if there are not enough human players. Bots leave game after new human player selects team (if CountSpectators = 0), or when new player connects to the server (if CountSpectators = 1). If you want to add bots or kick bots manually, you can set maxbots to -1.

 Usage: bot maxbots 20

It can be also set in the referee menu in the legacy mod.

maxxp

Max xp before bots should reset.

       Version note: ET Only

minbots

The minimum players to keep in play.

 syntax: bot minbots #
 example: bot minbots 2

minformobilemg

set the minimum number of players playing in order for bots to choose the mobile mg42.

       Version note: ET Only

minformortar

set the minimum number of players playing in order for bots to choose the mobile mortar.

       Version note: ET Only

moveskill

       Combat Difficulty, sets persistent combat movement difficulty
       0 = off, 1 = easy, 2 = medium, 3 = hard, 4 = random

mypos

       My Position, gets the players current position
       Usage: /bot mypos

mywpmode

       My Waypoint Mode, enables waypoint view and autosave
       Usage: /bot mywpmode

numthreads

       Number of Threads, prints the number of current threads
       Usage: /bot numthreads

plantnext

Advance to the next PLANT goal position. It will automatically select the goal. Waypoint tool for adding cover spots.

       Version note: ET only

plantstart

Start iterating through the PLANT goals in the map. Waypoint tool for adding cover spots.

       Version note: ET only

resetxp

Enables bots resetting xp. Use 1 to enable or -1 to disable.

Shrubbot is required. Flag M must be enabled for level 0 in the file shrubbot.cfg.

       Version note: ET only

rollcall

       Roll Call, lists each bots name, team, class, and entity
       Usage: /bot rollcall

sag

alias for showactive

saveplayerpos

Writes player positions to a file in user folder.

saveusepoint

Writes player position as Util.AddUsePoint command to a file in user folder. Optional parameter is goal name expression.

sei

alias for showentityinfo

sendtrigger

Test command and example of sending a trigger from script.

sg

       Set Goal, enables the given goalname for the given team
       Usage: /bot sg <goalname> <team>

sgi

       Show Goal Info, lists information about the given goal
       Usage: /bot sgi <goalname>
       Note: lists goals health, DEAD status, entity number, and position

sgn

       Show Goal Name, lists all goals found within the given radius
       Usage: /bot sgn <radius> <optional true>
       Note: passing the optional true parameter will give player offset

sgo

       Show Goal Offset, lists players offset to the given goal
       Usage: /bot sgo <goalname>

showactive

       Show Active Goals, lists each currently active goal by team
       Usage: /bot sag <optional team 0/1/2> <optional routes> <optional showuse>

showentityinfo

       Show Entity Info, runs a traceline and returns Entity information
       Usage: /bot showentityinfo <optional traceType>

showevents

       Show Events, lists all events in the EVENT table
       Usage: /bot showevents

showgroup

Lists all goals of a given group in console.

showweapons

       Show Weapons, lists all weapons in the WEAPON table
       Usage: /bot showweapons

skip

       Skip, sets Util.Skip to true
       Usage: /bot skip
       Note: Util.Skip is used in some debugging functions

skipreset

       Skip Reset, sets Util.Skip to false
       Usage: /bot skipreset
       Note: Util.Skip is used in some debugging functions

spp

alias for saveplayerpos

stresstest

       Stress Test, this command should only be used by developers
       Usage: /bot stresstest

stucknext

Used for stuckage checking. Advance to the next stuckage position.

stuckstart

Start iterating through the stuckage table for the map. Before you use this command, you must move file <mapname>_stuckages.gm from et/user folder to et/scripts folder.

sup

alias for saveusepoint

sysusage

Writes a timeline of system usage stats to systemtimeline.gm.

table_members

Prints a sorted list of table members to the console for the given table name.

test_priorities

       Test Priorities, test SetGoalPriorities calls on all map goals
       usage, /bot test_priorities <bool allgoals>
       example: /bot test_priorities true will loop through all goals in the map table

testbot

       Test Bot, adds a testbot to the given team with the given class
       Usage: /bot testbot <team> <class>
       Usage: /bot testbot 0 - kicks the test bot

testmap

       Test Map, starts the auto testing of maps based on the testmap scripts
       Usage: /bot testmap

testme

       Test command, prints out all arguments
       Usage: /bot testme

testsuicide

       Set Suicide, sets botSuicide session variable to given param
       Bots will /kill 2 seconds before next spawn
       Version note: RTCW only

testvoice

        Test Voice Macro, used for testing a bots usage of given voice macro 
        usage, /bot testvoice <partial bot name> <voice macro name>
       example, /bot testvoice Walt NEED_MEDIC

testwin

       Test Windows, tests the debug window script testdebugwindows.gm
       Usage: /bot testwin

time

Echo's the current time to the screen.

trace_pos

Prints position from a trace.

tracearty

Runs a trace to find visible Artillery_s or Artillery_d goals from closest Callartillery goal.

tracebox

       Trace Box, builds an AABB based on the players position
       Usage: /bot tracebox

tracetrajectory

Draws trajectory from player position and facing.

       Usage: /bot tracetrajectory speed <optional interval> <optional duration> <optional bounceloss>

trigger_aimpos

       Trigger Aim Position, creates a region trigger based on the players aim position
       Usage: /bot trigger_aimpos

trigger_bounds

       Trigger Bounds, builds an AABB region trigger based on the players position
       Usage: /bot trigger_bounds

wab

alias for warpanybot

warpanybot

Will teleport a bot matching given name to the player if cheats are enabled.

warpbot

Warp Test Bot, will teleport testbot to given waypoint name or player position if cheats are enabled.

       Usage: /bot warpbot <optional wpname>

warpto

       Warp To, will teleport player to given goal or waypoint name if cheats are enabled.

ET accepts also waypoint ID or paththrough name.

       Usage: /bot warpto <goalname|wpname>

warptogoaloffset

       Warp To Goal Offset, will teleport player to given goal real world offset if cheats are enabled
       Usage: /bot warptogoaloffset <goalname>

wb

alias for warpbot

wiki_commands

Writes all script commands to a file in wiki markup.

wpa

       Waypoint Array, adds an array of waypoints numx by numy, distx and disty apart
       Usage: /bot wpa <numx> <distx> <numy> <disty>

wt

alias for warpto

wtgo

alias for warptogoaloffset