# CubeScript

This section describes identifiers that are closely related to the CubeScript language.
Compares if a particular floating-point value is smaller than another floating-point value.

(true)1||0(false)

The first value.

The second value.

Compares if a particular floating-point value is less than or equal to another floating-point value.

(true)1||0(false)

The first value.

The second value.

Compares if a particular floating-point value is equal to another floating-point value.

(true)1||0(false)

The first value.

The second value.

Determines if the first floating-point value is greater than the second floating-point value.

(true)1||0(false)

the first value

the second value

Determines if the first floating-point value is greater than or equal to the second floating-point value.

(true)1||0(false)

the first value

the second value

Determines if the first floating-point value is not equal to the second floating-point value.

(true)1||0(false)

the first value

the second value

Sets the result value of a CubeScript block.

the result

Sets the result value of a CubeScript block.

the result

Executes the specified string as CubeScript.

the string to execute

execute (concat echo (addpunct fov 3))
Example output: 90.0
Temporarily redefines the value of an alias.

alias name

action

p = 1; push p 2; echo $p
Output: 2
return the value of the alias

alias name

returns whether or not there is an identifier by that name

identifier name

Performs a floating-point modulo operation.

the dividend

the divisor

the modulo value

echo (modf 7.5 12.5)
Output: 7.5
echo (modf 17.5 12.5)
Output: 5.0
Returns A raised to the power of B (floating-point)

the mantissa

the exponent

A raised to the power of B

Resets a previously pushed alias to it's original value.

alias

pop p; echo $p
Output: 1
Performs an addition.

the first summand

the second summand

the sum

Performs a subtraction.

the minuend

the subtrahend

the difference

Performs a multiplication.

the multiplicand

the multiplier

the product

Performs an integer division.

the dividend

the divisor

the quotient (integer)

Subtracts two floating-point numbers.

the minuend

the subtrahend

the difference

Adds up two floating-point numbers.

the first summand

the second summand

the sum

Performs a floating point multiplication.

the multiplicand

the multiplier

the product

Performs a division with floating-point precision.

the quotient (floating-point)

Adds a value to an alias.

the alias to add to

value to be added

Increments an alias by 1.

the alias name

i = 0; ++ i; echo $i
Output: 1
Increments an alias by 1.

the alias name

i = 2.14; ++f i; echo $i
Output: 3.14
Subtracts a value from an alias.

the alias to subtract from

value to be subtracted

Decrements an alias by 1.

the alias name

i = 0; -- i; echo $i
Output: -1
Decrements an alias by 1.

the alias name

i = 4.14; --f i; echo $i
Output: 3.14
Multiplies an alias by a value.

the alias to be multiplied

the multiplier

Divides an alias by a value.

the alias to be divided

the divisor

Adds a floating-point value to an alias.

the alias to add to

value to be added

Subtracts a floating-point value from an alias.

the alias to subtract from

value to be subtracted

Multiplies an alias by a floating-point value.

the alias to be multiplied

the multiplier

Divides an alias by a floating-point value.

the alias to be divided

the divisor

Performs a modulo operation.

the dividend

the divisor

the modulo value

Determines if two values are equal.

first value

second value

the equality

echo there are only (concatword (= 1 1) (= 1 0)) types of people in the world
Output: there are only 10 types of people in the world
Determines if two values are not equal.

first value

second value

the inequality

Determines if a value is smaller than a second value.

the first value

the second value

the comparison

Determines if a value is bigger than a second value.

the first value

the second value

the comparison

Determines if a values is less than or equal than a second value.

the first value

the second value

Determines if a values is greater than or equal than a second value.

the first value

the second value

logical AND.
echo (&& 1 1)
Output: 1
echo (&& 1 0)
Output: 0

first value

second value

A AND B

logical OR.
echo (|| 1 0)
output: 1
echo (|| 0 0)
output: 0

first value

second value

A OR B

Performs a negation.

argument

Random value

The upper limit of the random value

The random value

Round the given float

The float number to round

The rounded integer

Upper value of a float number

The float number to get the ceil from

The ceil value (integer)

Floor value of a float number

The float number to get the floor from

The floor value (integer)

Determines if two strings are equal.
if (strcmp yes yes) [echo the two strings are equal] [echo the two strings are not equal]
Output: the two strings are equal

the first string

the second string

the equality

Determines if string B was found in string A.
if (strstr "Hello world!" Hello) [echo found Hello in Hello world!] [echo did not find Hello in Hello world!]
Output: found Hello in Hello world!

the first string

the second string

the truth value

Returns the length (in characters, including whitespace) of string S.
echo (strlen "Hello world!")
Output: 12

STRING

Returns the position of a substring into another

haystack string

needle string

The occurence of 'needle' to find (optionnal)

The N'th position of 'needle' into 'haystack' (-1 if 'needle' isn't found;)

echo (strpos "hello world" "world") 6
echo (strpos "hello world" "l") 2
echo (strpos "hello world" "l" 2) 9
echo (strpos "hello world" "l" 3) -1
Copies a substring out of the original.

the original string

start position

substring length (optionnal)

the substring

echo (substr abcdefgh 2 5) cdefg
echo (substr abcdefgh -3 2) fg
echo (substr abcdefgh 2) cdefgh
Controls the script flow based on a boolean expression.
if (> $x 10) [ echo x is bigger than 10 ] [ echo x too small ]

the condition

the body to execute if the condition is true

the body to execute if the condition is false

Takes an integer argument to determine what block of code to execute.
switch 2 [echo case 0] [echo case 1] [echo case 2] [echo case 3] [echo case 4]
Output: case 2

integer

a variable number of 'case' arguments...

Loops the specified body.
loop i 10 [ echo $i ]

the alias used as counter

the amount of loops

the body to execute on each iteration

Loops the specified body while the condition evaluates to true.
alias i 0; while [ (< $i 10) ] [ echo $i; alias i (+ $i 1) ]

the condition

the body to execute on each iteration

Browses a list and executes a body for each element
looplist "zero one two three" number [ echo $number ]

the list to browse

the alias containing the current element value.

the body to execute on each iteration

Aborts a loop created with a 'loop', 'looplist' or 'while' command.
loop i 10 [ if (= $i 4) [ break ]; echo $i]
output: 0 1 2 3
Skip current loop iteration.
loop i 5 [ if (= $i 2) [ continue ]; echo $i]
output: 0 1 3 4
Loops through every character in the given string and executes the given block of cubescript on each iteration.
parsestring "Hello world" iter [echo $iter]
Uses echo on every character in the string: "Hello world"
parsestring "Hello world" iter [echo (concatword "Char #" $__iter ": " $iter)]
Uses echo on every character in the string: "Hello world" --- Also outputs the position of each character in the string.
backwardsstring = []; parsestring "This will look interesting backwards." iter [backwardsstring = (concatword $backwardsstring $iter); if (= $__iter 0) [echo $backwardsstring]] 1
Outputs: ".sdrawkcab gnitseretni kool lliw sihT"
parsestring "abcdefghijklmnopqrstuvwxyz" iter [if (> $__iter 4) breakparse [echo $iter]]
Example usage of the breakparse command. Uses echo on characters a through e, then breaks out of the parse.

string

string

string

integer

Breaks out of a parsestring loop.
Removes all whitespace characters from the given string.
echo (trimAllWhitespace " H e ll o w o r l d ")
Outputs: Helloworld

string

Removes all unnecessary leading and trailing whitespace characters from the given string.
echo (trimAllUnnecessaryWhitespace " H e ll o w o r l d ")
Outputs: "H e ll o w o r l d"

string

Concatenates multiple strings with spaces inbetween.
alias a "hello"; echo (concat $a "world")
output: hello world

the first string

collection of strings to concatenate

The newly created string

Concatenates multiple strings.
alias a "Cube"; echo (concatword $a "Script")
output: CubeScript

the first string

collection of strings to concatenate

The newly created string

Grabs a word out of a string.
echo (at "zero one two three" 2)
output: two

the string

the index of the word

the word from the specified idex

returns the element count of the given list.

the list

find client number (cn)

NAME

find player name

CLIENTNUM

Searches a list for a specified value.

the list

the item to find

the index of the item in the list

Executes a command after specified time period.
sleep 1000 [ echo foo ]
Prints 'foo' to the screen after 1 second.

the amount of milliseconds

the command to execute

ignore map change (optionnal)

Resets all current "sleep".
The number of arguments passed to the current alias

numargs

format

value(s)

echo (format "%1 bottles of %2 on the %3, %1 bottles of %2!" 99 beer wall)
output: 99 bottles of beer on the wall, 99 bottles of beer!
Adds color to a string.
echo (c 3)Hello (c 0)world!
Output: a red "Hello" and a green "world!"

color id

leading zeros for the number V to make it W chars wide. It may look like 10 - which might be considered a mnemonic - but it's lowercase-L and 0!
echo (l0 5 1000)
Output: 01000
echo (l0 3 1000)
Output: 1000

WIDTH

VALUE

Generates an alias (list) of the current values for the given aliases/CVARs.
storesets "sensitivity hudgun fov" tmp
Example result: stores "3.000 1 120" into alias "tmp".

the list of aliases/CVARs

the alias to store them in

Binds a name to commands.

the name of the alias

the commands

alias myalias [ echo "hello world"; alias myalias [ echo "I already said hello" ] ]
It is possible to re-bind an alias, even during its evaluation.
test = [ echo "successful" ]
There is also the shorthand version of defining an alias via the "="-sign.
Set an alias as a constant.

the name of the alias

the value

myalias = myvalue; const myalias;
Set "myalias" value to "myvalue" then "lock" it as a constant.
const myalias myvalue;
You can directly set a value for your alias when you define it as a constant.
const myalias myvalue; myalias = anothervalue;
Assigning a value to a const will throw you an error. Output: myalias is already defined as a constant
Determines if the argument given is an existing alias or not.
hello = ""; echo (checkalias hello)
Output: 1
echo (checkalias oMgThIsAlIaSpRoLlYdOeSnTeXiSt)
Output: 0

the alias to check for

Determines if the argument given is a constant or not.
const hello ""; echo (isconst hello)
Output: 1
hello = value; echo (isconst hello)
Output: 0

the alias to check for

Ensures the initialization of an alias.
checkinit mapstartalways
Output: if alias mapstartalways does not exist, this command initializes it.
checkinit mapstartalways [ echo New map, good luck! ]
Output: if alias mapstartalways does not exist, it is initialized, and if the block of code "[ echo New map, good luck! ]" does not exist within the aliases contents, this command adds it.

the alias to check for

the block of code to ensure that the alias contains

Defines an alias only if it does not already exist.

alias name

alias value

Forcibly sets a list of aliases to a specified value.
alias1 = 0; alias2 = 0; alias3 = 0; alias4 = 0; alias 5 = 0
Can be written as:
forceinit [alias1 alias2 alias3 alias4 alias5] 0

list of alias names

alias value

Initializes a group of aliases using checkinit.

the list of aliases to check for

the block of code to ensure the aliases contain

Uses check2init on a list of aliases.

list of alias names

alias value

Controls whether aliases defined afterwards will be saved (1) or not (0). This option is useful to keep saved.cfg free from unneeded clutter.
Note: in map and model configs, this option is always disabled.

control option

persistidents 0; foo = [ echo "bar"]
foo will not be saved and has to be redefined when restarting AC.
persistidents 1; bar = [ echo "foo"]
bar will be saved and persistent across sessions.
Injects CubeScript punctuation.
echo (addpunct hello)
Output: "hello"
echo (addpunct hello 1)
Output: [hello]
echo (addpunct hello 2)
Output: (hello)
echo (addpunct hello 3)
Output: $hello
echo (addpunct "" 4)
echo (addpunct "" 5)
Output: %
test = (concat echo (addpunct fov 3)); test
Output: 90.0

a string

type ID

Returns the current number of players.
Returns the highest valid client number available.
Converts a string to all lowercase characters.
echo (tolower HELLO)
Output: hello

a string

Converts a string to all uppercase characters.
echo (toupper hello)
Output: HELLO

a string

Converts a list of strings to lowercase or uppercase characters.
echo (convertcase 0 ZERO ONE TWO THREE)
Output: zero one two three
echo (convertcase 1 zero one two three)
Output: ZERO ONE TWO THREE

0 - use lowercase, 1 - use uppercase

a list of strings

Tests a character argument for various things.
echo (testchar 1)
Output: 1 // It is a 0-9 digit
echo (testchar a 1)
Output: 1 // It is a a-z or A-Z character
echo (testchar z 2)
Output: 1 // It is a a-z or A-Z character or 0-9 digit
echo (testchar b 3)
Output: 1 // It is a lowercase a-z character
echo (testchar B 4)
Output: 1 // It is a uppercase A-Z character
echo (testchar , 5)
Output: 1 // It is a printable character
echo (testchar . 6)
Output: 1 // It is a punctuation character
echo (testchar " " 7)
Output: 1 // It is a whitespace character

the character to test

type of test to run

Returns a string, with a portion of it replaced with a new sub-string.
echo (strreplace "Hello cruel world" cruel "")
Output: Hello world

the original string to modify

the target sub-string to replace

the new sub-string to replace the target

Returns the average of a list of numbers.
echo (listaverage "2 5 5")
Output: 4.0

the list of numbers

This will append the passed 2nd argument to any existing content of the alias named in the 1st argument. Several popular aliases have predefined shortcuts using this scriptalias: addOnQuit, addOnLoadOnce, addOnLoadAlways. Check config/scripts.cfg for possible omissions in that list.
foo = "one" add2alias foo two echo foo
Output: one two
This will output the string and override any other actions that might've been defined.
Appends a new element to a list.
tmp_list = []; add2list tmp_list Hello; add2list tmp_list world!; echo $tmp_list
Output: Hello world!

the alias (list) to add to

the new element to add

Adds a block of code, if it does not already exist, to a keybind.

the key to add to

the code to add

Returns the contents of a keybind.

name of key

Returns the name of a key via a specified code.
echo (findkey 8)
Output: BACKSPACE
echo (findkey 280)
Output: PAGEUP

integer

Returns the integer code of a key.
echo (findkeycode BACKSPACE)
Output: 8
echo (findkeycode PAGEUP)
Output: 280

the name of the key

# General

This section describes general identifiers.
Toggle for taking an automatic screenshot during intermission.

0=Off, 1=On

Toggle format of screenshot image. Your choice is for BMP (0), JPEG (1) or PNG (2).

0=BMP, 1=JPEG, 2=PNG

Scales screenshots by the given factor before saving. 1 = original size, 0.5 = half size, etc.

Scale

Returns the file extension of the client's current screenshottype setting.
echo (getscrext)
Example output: .jpg
Sets the JPEG screenshot image quality.

Compression level

Sets the PNG screenshot file compression.

Compression level

Plays all hardcoded sounds in order.
writes current configuration to config/saved.cfg - automatic on quit
registers a track as music - the first three tracks have special meaning. Track #1 is for "flag grab" the second and third are used as "last minute" tracks.

music file

Outputs text to the console.

List of strings

Outputs text to the console and heads up display.

List of strings

Enables or disables the ability of hudecho to output text to the heads up display.

0 off, 1 on

Dump all command arguments to STDOUT

...

Toggles getting descriptive text from CGZ or DMO files in menudirlist.
Toggles physics interpolation.
create a menu listing of files from a path and perform an action on them when clicked.
menudirlist "packages/maps" "cgz" "map $arg1"
will create a list of maps and load them when clicked
Toggles the console.
Triggers a jump.
Contacts the masterserver and adds any new servers to the server list.

force update

Returns the number of milliseconds since engine start.
echo (millis)

the milliseconds

seconds since the epoch (00:00:00 UTC on January 1, 1970)
echo (systime)
a list of values for current time
echo (timestamp) "2008 08 08 08 08 08"
echo (timestamp) "2063 04 05 12 00 00"
echo (at (timestamp) 0) (at (timestamp) 2) (at (timestamp) 1) "2063 05 04"
representation of date
echo (datestring) "Sat Jun 7 17:08:35 2008"
the current time in (H)H:MM:SS format
echo (timestring) "12:34:56"
echo (timestring) "1:02:03"
Binds a key to a command.

the key to bind

the command

Similar to bind, but is only active while editing, where it overrides the regular bind for the specified key.

the key to bind

the command

Similar to bind, but is only active while spectating, where it overrides the regular bind for the specified key.

the key to bind

the command

Binds a key to many different actions depending on the current game state.
megabind F9 [echo Demo!] [echo Editing or coop!] [echo Connected!] [echo Bots!] [echo Other!]

the key to bind

body of code to execute if watching a demo

body of code to execute if editing or in coop-edit mode

body of code to execute if connected to a server

body of code to execute if in a bot mode

body of code to execute if none of the other arguments have been met

Executes a command on the release of a key/button.
bind CTRL [ echo "key pressed"; onrelease [ echo "key released" ] ]

the command

Quits the game without asking.
Moves the player forward.
Moves the player backward.
Moves the player left.
Moves the player right.
Fires the current weapon.
Sets mouse to "flight sim" mode.

sets invmouse

Takes a screenshot.
Take a "clean" screenshot with no HUD items.
save an image of the entire radar-overview of the map.
Executes all commands in a specified config file.

the config file

Executes a config file within /config/

the file name (without extension)

Sets up the keymap for the specified key.

the key to map

the name for the key

the default action

Sets the mouse sensitivity.

the sensitivity

Adds a server to the list of server to query in the server list menu.

the address of the server (hostname or IP)

the port

Clears the list of secured maps.
Adds a map to the list of secured maps.

the name of the map

Returns a list of values describing the current engine (rendering) state.
echo (getEngineState)
Enables output of processed network packets.

enable network debugging

Determines if the current played map should be automatically downloaded if it is not available locally.

enable auto map download

Automatically get new map revisions from the server.

0: no, 1: yes

Sets the correction value for clockfix.

correction value

Enables correction of the system clock.

enable correction

Enable triangle debug.

triangle debug

Limits the FPS (frames per second) of AssaultCube's video output.

maximum FPS

Gets the maximum number of supported textures when performing multitexturing.

max. number of textures

Minimal level of detail.
Toggles use of acronyms instead of full modenames in the serverbrowser.
Returns the current game mode.
echo (getmode)
Example output: capture the flag
echo (getmode 1)
Example output: CTF

0 = full mode name, 1 = mode acronym

Resets all binds back to their default values.
Swaps your player to the enemy team.
Determines if all settings should be reset when the game quits.

enable reset

Determines the valid distance when extrapolating a players position.

distance

Determines the speed when extrapolating a players position.

movement speed

Determines how fast network throttling accelerates.

acceleration

Determines how fast network throttling decelerates.

deceleration

Determines the interval of re-evaluating network throttling.

interval

Swaps vertices of model triangles.
Gets an integer representing the game version. READ ONLY
Gets an integer representing the game protocol. READ ONLY
Holds the current game mode. READ ONLY
echo $gamemode
Output: 5
Indicates if a connection to a server exists.

the connection state

Sets the maximum value the display will roll on strafing.

the roll value

Hold the current number of lines on the console.
Sets the language for which a translated server MOTD will be fetched, if the server has one for this language.
en, de, fr, ...

the language code

# Gameplay

This section describes gameplay related identifiers.
Returns the name of the last player you aimed at.
If this alias exists it will be run when the game reaches intermission.
start_intermission = [ echo "INTERMISSION - STATISTICS TIME" loop p 255 [ pn = (findpn $p) if (strcmp $pn "") [ ] [ echo (concatword Player $p ":") (pstat_score $p) ":" (pstat_weap $p) ] ] echo "------------------------------" ]
This will output the full statistics line for all players.
If this alias exists it will be run when the game starts a new map, then it is deleted.
mapstartonce = [ echo "------------------------------" ]
This will output the string and override any other actions that might've been defined.
addOnLoadOnce [ echo "------------------------------" ]
This will output the string after any previously defined actions have run.
If this alias exists it will be run every time the game starts a new map.
mapstartalways = [ echo "------------------------------" ]
This will output the string and override any other actions that might've been defined.
addOnLoadAlways [ echo "------------------------------" ]
This will output the string after any previously defined actions have run.
If this alias exists it will be run every time a vote is called.
If this alias exists it will be run every time a vote is changed.
If this alias exists it will be run every time a vote passes or fails.
Determines if there is a vote pending or not.
echo $votepending
Output: if there is currently a vote pending, returns 1, else returns 0.
If it exists, this alias will be executing when any player get killed, receiving a few arguments :

The client number of the actor

The client number of the target

The number of the gun used

Is it a gib or a normal frag

The action that occured

The client number of the actor

The flag owner team

If defined, this will be executed each time a flag action occurs.

The item that was picked up

The quantity that was received

If defined, this will be executed each time you pick up an item.

The weapon that was used

If defined, this will be executed each time you shot a bullet, throw a grenade or use your knife.

The client number of the actor

The client number of the target

The damage done

The number of the gun used

Is it a gib or a normal frag

If it's defined, this alias will be executed each time a damage is done.

The weapon ID that you switched to

If defined, this will be executed each time you switch to a different weapon.

was autoreload?

If defined, this will be executed each time you reload a weapon.

The client number of the player who connected

If defined, this will be executed when you or another player join(s) a server.

The client number of the player who disconnected

If defined, this will be executed when you or another player disconnect(s) from a server.

The client number of the player who spawned

If defined, this will be executed each time a player spawns.

The client number of the player who connected

The new name of the client

If defined, this will be executed when you or another player change(s) his name.
If defined, this will be executed after saved.cfg is loaded.
If defined, this will be executed every time you press a key.

integer key code

checkinit KEYPRESS [echo You pressed key: (findkey $arg1)]
If defined, this will be executed every time you release a key.

integer key code

checkinit KEYRELEASE [echo You released key: (findkey $arg1)]
Execute a command or block of code on quit.

the command or block of code to execute

Deletes a list of aliases (from saved.cfg) on quit.
addListOnQuit "a b c"
Deletes aliases a, b, and c from existance and saved.cfg upon quit.

the list of aliases to delete

change name of directory used for weapon model (hudgun) number N
modmdlweap4 = my_subgun
This will make the subgun hudgun model use the data inside packages/models/weapon/my_subgun
change name of directory used for weapon model (viewable/world) number N
change name of directory used for pickup model number N
modmdlpickup3 = health2
This will make the health pickup model use the data inside packages/models/pickups/health2
modmdlpickup1 = my_ammobox
This will make the ammobox pickup model use the data inside packages/models/pickups/my_ammobox
change name of directory used for bounce model number N
modmdlbounce0 = misc/my_gib1
This will make the gib 1 model use the data inside packages/models/misc/my_gib1
modmdlbounce1 = misc/my_gib2
This will make the gib 2 model use the data inside packages/models/misc/my_gib2
modmdlbounce2 = misc/my_gib3
This will make the gib 3 model use the data inside packages/models/misc/my_gib3
modmdlbounce3 = weapons/grenade2/static
This will make the grenade static model use the data inside packages/models/weapons/grenade2/static
Returns the score statistics for the player with the given clientnumber.

client

echo (pstat_score 0)
Output: 0 5 3 43 1 1 unarmed
The output is a list of FLAGS, FRAGS, DEATHS, POINTS, TEAM, TEAMKILLS, and NAME.
Returns the shot statistics for the player with the given clientnumber.

client

echo (pstat_weap 0)
Output: 0 0 0 0 0 0 0 0 0 0 1 240 15 312 0 0 3 112 0 0
The output is a list of tuples for all weapons, SHOTS-FIRED and DAMAGE-DEALT for each.
shifts your selected weapon by a given delta. By default the mouse-wheel shifts one up or down according to your scroll direction.

cycle one up

cycle one down

delta

will display a scope for the sniper-rifle. used in the zoom-script (config/scripts.cfg [l. 92ff "alias zoom"]

scope on?

cycles through all available spectator modes. Follow-1stPerson, Follow-3rdPerson, Follow-3rdPerson-transparent and Fly.

cycle spectator modes

get the IP address of a given clientnumber - only admins get shown the last octet

clientnum

agree or disagree to the currently running vote

vote value

votes YES

votes NO

sound

text

opens the voicecom menu, use number keys for your choice

Enables or disables voicecom audio.

voicecom sounds

returns the mapname
outputs the mapsize.
Loads a crosshair for argument T.
loadcrosshair red_dot.png
Loads the red_dot.png crosshair for all weapons.
loadcrosshair red_dot.png all
Same as above. Loads the red_dot.png crosshair for all weapons.
loadcrosshair red_dot.png knife
Loads the red_dot.png crosshair for your knife only.
loadcrosshair red_dot.png ar
Loads the red_dot.png crosshair for your assault rifle only.
loadcrosshair red_dot.png scope
Loads the red_dot.png crosshair for your sniper rifle scope only.

image

type

Enables or disables the processing of the bots artificial intelligence

off OR on

idlebots 1
Will make the bots stand still.
idlebots 0
Will enable the bots to move and shoot.
Kicks all bots out of the current game.

this command does not take any arguments

Kicks the bot with the given name out of the current game.

botname

kickbot Robbie
Will make the bot named "Robbie" dissapear from the current game.
Get the game demos listing from the server we are currently connected.

number in list

subpath

Drops the enemy flag.
Draws a shooting line in the direction of all available bots.

this command does not take any arguments

add a bot for a given team with a given skill calling him a given name.

team

skill

name

addbot RVSF medium Robbie
Will add a bot named Robbie with a medium skill level to the RVSF team.
will add a given count of bots for the given team with the given skill and select random names for them.

count

team

skill

addnbot 2 CLA bad
Will add 2 bots with a bad skill level to the CLA team.
changes the skill level for the given bot.

botname

botskill

botskill Robbie best
Changes the previous bot skill level of the bot named Robbie to a 'best' skill level.
changes the skill level for all bots.

botskill

botskillall worse
Changes the previous bot skill level for all bots to a 'worse' skill level.
Enables or disables the ability of the bots to fire their weapons

shooting bots?

botsshoot 0
Bots won't shoot.

delta

clientnum

Returns 1 if the local player is alive.
echo (alive)
Output: 1
Returns the current map being played.
echo playing: (curmap) vote for: (curmap 1)
output: playing maps/ac_complex vote for: ac_complex

clean

Returns the mode number for the current game.
Returns the mode number for a specified mode acronym.
echo (modenum ctf)
Output: 5
echo (modenum btosok)
Output: 21

the mode acronym

Current map revision number.

-

Checks the current game mode for certain attributes.

attribute name

Returns the current game mode number.
Returns the server's current mastermode state.
Returns the server's current autoteam state.
Returns the weapon-index the local player currently has selected as primary.
Determines if the local player (you) are currently carrying a primary weapon.
add2bind MOUSE1 [ if (hasprimary) [ echo you attacked with a primary weapon ] ]
Everytime you press the left mouse button, assuming you are carrying your primary weapon, the above echo will be executed.
Returns 1 if the local player has admin privileges, 0 otherwise.
Returns information on the current server - if you're connected to one.

info

echo [I am (curserver 4) to (curserver 2)]
Output: I am connected to ctf-only.assault-servers.net
last_server = "" remember_server = [ if (strcmp (curserver 4) "connected") [ last_server = (curserver 0) echo "I'm remembering:" $last_server ] [ echo "you are not 'connected' - you" (concatword "are '" (curserver 4) "' !") ] ] bind PRINT [ if (strcmp $last_server "") [ remember_server ] [ say (concat "^L2I was just ^Lfon^L3" $last_server) last_server = "" ] ]
This will either remember or retrieve the last server you pressed the PrintScreen-key on.
Returns an integer indicating what team a client is currently on.

client number

Returns the weapon-index the local player is currently holding.
Returns the weapon-index the local player was previously holding.
Loads up a map in the gamemode set previously by the 'mode' command.

Name of the map to load

Sets the next gamemode then calls a vote for a map.

mode id

map name

Returns the primary weapon on next respawn.

weapon id

Reloads the weapon.
Determines the skin of the current player.

skin id

Choose skin when playing for team CLA.

skin id

Choose skin when playing for team RVSF.

skin id

Sets the nick name for the local player.

the name

Outputs text to other players.

the text

Sends a private message to a specified client.

Client number

List of strings

Easily respond the the last client who sent you a private message.
Ignore a player.

client number

Print a list of all players that you are currently ignoring.
Clear list of ignored players.

client number, or -1 to clear the whole list

Ignores all clients currently on the server. (only works in multiplayer)
Unignores all clients currently on the server. (only works in multiplayer)
Ignores all clients on the specified team.

the team to ignore

Ignores all clients on the enemy team.
Mute a player

client number

Clear list of muted players.

client number, or -1 to clear the whole list

Print a list of all players that you have muted.
Action chat message.

...

Puts a prompt on screen.

opens empty prompt

opens a command prompt /

autocompletes commands/variables/aliases

browse command history forwards

browse command history backwards

the text to display in the prompt

Makes an input perform a certain command.

input

command

prompt

command

path

extension

complete demo "demos" dmo
If you enter "/demo " and press TAB you will cycle through all available demos.
alias mapcomplete [complete $arg1 "packages/maps" cgz]
helper alias for quickly adding complete-definitions for all gamemodes - see config/script.cfg (below "Auto-Completions")

command

adds a command to complete nicknames on
nickgreet = [ say (concat "Hello," (concatword $arg1 "!")) ]; nickcomplete nickgreet
with this you can enter "/nickgreet " and cycle via TAB to the nickname you want to greet.
Connects to a server.
connect 127.0.0.1 555 myServerPassword

the address of the server (hostname or IP)

the port

the server password

Connects to a server and tries to claim admin state.
connectadmin 127.0.0.1 777 myAdminPassword
connect as admin on port 777 of localhost
connectadmin "" 0 myAdminPassword
will try to connect to a LAN server on the default port as admin with the given password of "myAdminPassword".

the address of the server (hostname or IP)

the port

the admin password

Leaves a server.
Disconnects then reconnects you to the current server.

the server password

Sets the team for the local player.
team CLA

the team name

Move from active team to spectator during match.
Connect to a modded server.

IP

port

password

Connect to a modded server and claim admin.

IP

port

admin password

Connect to a modified LAN server.
Shows or hides the scores.
Changes the weapon.

the weapon number

Switches to your current primary weapon. (must be binded to a key)
Switches to your secondary weapon. (must be binded to a key)
Switches to your knife. (must be binded to a key)
Switches to grenades. (if available) (must be binded to a key)
Toggles between your primary weapon and your secondary weapon. (must be binded to a key)
Toggles between your primary weapon and your knife. (must be binded to a key)
Toggles between your primary weapon and grenades. (must be binded to a key)
Returns contents of current magazine.

the weapon number

Returns contents of magazine reserve.

the weapon number

Determines if you have any ammunition available for the specified weapon. (uses magcontent and magreserve)

the weapon number

Retrieves the last map that was sent to the server using 'sendmap'.

the name of the map

cubescript to execute once map is installed

Downloads and loads the specified map from an available packages source server.

the name of the map

Adds a packages source server where to download custom content from.
addpckserver http://packages.ac-akimbo.net

The server address. Trailing slash not needed.

Resets the list of packages source servers where to download custom content from.
Sorts the available packages source servers by ascendant ping. The fastest to reach is then used by default.
Determines if the game should try to download missing packages such as textures or mapmodels on the fly.

Note: This is turned on by default.

Sets the desired spectating mode.

the mode

switch spectator mode

Toggles spectator mode.
Stops any demo recording or playback.
Returns 1 when the current game is being played from a demo, else 0.
echo I am (at [not now] (watchingdemo)) watching a demo. "so, are you?"

truth value

Kills your player. You will lose 1 frag point and receive 1 death point when using this command.
Plays a recorded demo.

the demo name

Go to a predefined number of minutes before the end of the game while watching a demo.

the minutes remaining to skip to

Rewind the current demo to S seconds ago.

the number of seconds to rewind

Determines if bot waypoints should be selected/placed using the crosshair or by the nearest location to your player.

Note: This is turned on by default.

Returns the remaining minutes of the currently played game. READ ONLY
Returns the time (in milliseconds) of the currently played game. READ ONLY
showtime = [ if (> $lastgametimeupdate 0) [ gmr = (- $gametimemaximum (+ $gametimecurrent (- (millis) $lastgametimeupdate))) gsr = (div $gmr 1000) gts = (mod $gsr 60) if (< $gts 10) [ gts = (concatword 0 $gts) ] [ ] gtm = (div $gsr 60) if (< $gtm 10) [ gtm = (concatword 0 $gtm) ] [ ] echo (concatword $gtm : $gts) remaining ] [ echo gametime not updated yet ] ]
Returns the maximum time (in milliseconds) of the currently played game. READ ONLY
Returns the time (in milliseconds) when the last map was loaded.
Returns the last time (in milliseconds) the gametime was updated. READ ONLY
Determines if the game should be paused.

pause game

Indicates if the weapons should be reloaded automatically.

the autoreload state

Determines the FOV when scoping.
Determines if the mini-map should be shown on screen.

show mini-map

change wether to have a see-through map overview (0), or render it on a black backdrop (1) or a combination of both (2)

backdrop-style

Transparency of the black map backdrop (in percent) rendered if showmapbackdrop is set to 2.

transparency

Determines if scores should be shown on death.
Indicates if the footsteps sound should be played

enable footsteps

Indicates if the footsteps sound for the local player should be played

enable footsteps

Maximum time span between player animation and the playback of the footstep sound

time span

Plays a sound upon every successful hit if enabled.

off OR on

Sets the gamespeed in percent.

the game speed

Smoothly changes your gamespeed to the specified value.

the gamespeed to change to

milliseconds between gamespeed changes

changespeed 1000 30
Every 30 milliseconds your gamespeed is changed by 1 until it reaches its goal of gamespeed 1000.
Enables or disables automatic switching to the akimbo upon pickup.

enable or disable

Sets the behavior of weapon switching upon akimbo expiration.

akimbo end action

Prepares a round of bot survival mode on the specified map.

the map to use

the difficulty

Draws a zone marker with the specified color and dimensions on the minimap/radar. This is primarily intended for the survival mode.

X-coordinate - top-left corner

X-coordinate - bottom-right corner

Y-coordinate - top-left corner

Y-coordinate - bottom-right corner

a color for the zone, in hexadecimal notation

Reset all drawn zones.
If this alias exists, it will be automatically executed on the last minute remaining mark.
Determines if the local player is standing in water or submerged.
if (inWater) [echo in water] [echo not in water]
Example output: in water
if (inWater 1) [echo submerged] [echo not submerged]
Example output: not submerged

check if submerged instead?

Determines if the client number given is a valid client (player).
echo (isclient 0)
Example output: 1
echo (isclient 32)
Example output: 0

client number

# Editing

Binds a list of keys to be used to create new (multiple) selections in editmode.
newselkeys = [LCTRL RCTRL LALT RALT]
Makes all 4 keys create new (multiple) selections in editmode.
Will toggle the focus of the mouse in game. Normally you can use your mouse to look around, when you type this command your mouse cursor is visible and can be used as normally. This is only useful when you run cube windowed.

attribute

tag

makes waypoints visible and either turns on or off the waypoint information display.

show info?

visible

takes the current player yaw for the current waypoint
teletransports the bot with the lowest connection number to you current position.

this command does not take any arguments

When used you will see what the bot sees. Type it again (with or without name) to return to the game(you will respawn).

botname

direction

Adds a bot waypoint at the current position.

connect automatically

Automatically place waypoints.

on

Deletes the selected waypoint.
During map editing, drop all mapsounds so they can be re-added.
switches between map edit mode and normal.
Changes the texture on current selection by browsing through a list of textures directly shown on the cubes.

an integer denoting the type

the direction you want to cycle the textures in

Set a texture for the current selection.

position of the texture to set in map cfg

the type of the texture

Changes the height of the current selection.

an integer denoting the type

the delta value to move it in

makes the current selection all solid (i.e. wall) or all non-solid.

an integer denoting the solid-ness

Levels the floor/ceiling of the selection.

an integer denoting the type

Marks the current selection as a heightfield.

an integer denoting the type

changes the vdelta value of the current selection

vdelta value

Makes the current selection into a "corner".
Multi-level undo of any of the changes caused by editing operations
Sets the number of megabytes used for the undo buffer.

number of megabytes, default is 1

Copies the current selection into a buffer.
Copies the current closest entity into a buffer.
Pastes a previously copied selection.
Returns the number of solid walls contained into the current selection.

the integer of type of the walls you want to count

echo (concat "The selection contains " (countwalls 0) "solid wall(s)")
Output: The selection contains 3 solid wall(s)
Pastes a previously copied entity.
Repeats the last texture edit throughout the map.
Adds a new entity

the entity type

see newent 'type'

see newent 'type'

see newent 'type'

see newent 'type'

Adds a new light entity

the light radius

red colour component. see remarks below.

green colour component

blue colour component

Adds a new spawn spot.
Adds a new ammo box item.
Adds a pistol magazine item.
Adds a new grenades item.
Adds a new health item.
Adds a new armour item.
Adds a new helmet item.
Adds a new akimbo item.
Adds a map model to the map (i.e. a rendered md2/md3 model which you collide against but has no behaviour or movement)

The mapmodel identifier

Extra elevation above ground

The map texture to use

Adds a CTF flag entity.

denotes the flag's team

Adds a ladder entity.

the height of the ladder

Adds a sound entity.

the sound to play

the radius

the size

the volume

Adds a clip entity.

elevation above the ground

X radius around the box center

Y radius around the box center

height of the box

Deletes the entity closest to the player
Adds a player clip entity.

elevation above the ground

X radius around the box center

Y radius around the box center

height of the box

Deletes the entity closest to the player
Edits the closest entity.

the entity type

see newent 'type'

see newent 'type'

see newent 'type'

see newent 'type'

Changes property of the closest entity.

the property to change

amount by wich the property is increased

Deletes all entities of said type.

the entity type, see command 'newent'

Recomputes all there is to recompute about a map, currently only lighting.
Saves the current map.

file name of the map, see command 'map' for the naming scheme

Determines if map backups (.bak) should be created when a map is saved.

0 off, 1 on

Creates a new map.

the size of the new map

Enlarges the current map.
Reduces the world size by 1.
Sets the map message, which will be displayed when the map loads.

The map message

Returns the map message of the current map.
Print some map entity statistics to the console.
Restrict 'closest entity' display to one entity type.

entity type

Choose another 'closest ent'.
Visit next player spawn entity.

0|1|100

Converts the nearest entity (if its a clip or plclip) to its opposite type.
convertclips
Assuming the nearest entity is a clip, it will be converted to a plclip.
convertclips
Assuming the nearest entity is a plclip, it will be converted to a clip.
Move the whole map (including all entities) in the specified direction.

x-offset

y-offset

z-offset

Flip the selected part of the map at an axis.

X or Y

Rotate the selected part of the map in 90 degree steps.

steps

Contains the main axis of the player orientation.

11: X, 12: Y, 13: Z

Select the increment of the map revision number for the next 'savemap'.

increment

Show mapmodel clipping during edit mode.

-

Show editing cursor grid.

-

Show clips/plclips/mapmodel clips in edit mode.

-

Enables or disables a special set of default textures while editing.
Sets the global water level for the map.

the water level

Controls the ambient lighting of the map, i.e. how bright areas not affected by any light entities will appear.
This should be entered in hexadecimal notation, as 0xRRGGBB. If the green and blue are both zero, the input will be interpreted as a grayscale value.

the ambient color

Sets all light values to fullbright.

sets fullbright on or off

Toggles between showing what parts of the scenery are rendered.
Turns occlusion culling on and off.
Makes a slope out of the current selection.

x delta step

y delta step

Makes an arch out of the current selection.

side delta

Defines a vertex delta for a specific arch span prefab, used by the 'arch' command.

span value

vertex value

delta value

Generates a perlin noise landscape in the current selection.

the scale, frequency of the features

the random seed

cube size, how many cubes to generate a surface for at once (unused)

Resets all current selections and selects the given area, as if dragged with the mouse.

the X coordinate

the Y coordinate

the length along the X axis

the length along the Y axis

Select the given area, as if dragged with the mouse holding CTRL.

the X coordinate

the Y coordinate

the length along the X axis

the length along the Y axis

Resets all current selections.
Increases the size of the current selection by N cubes on all sides.

number of cubes

Decreases the size of the current selection by N cubes on all sides.

number of cubes

Return a list containg the x-coordinate of each selection
Return a list containg the x-span of each selection
Return a list containg the y-coordinate of each selection
Return a list containg the y-span of each selection
Registers a sound.

sound name

Scales all lights in the map.

size change (percentage)

intensity change (percentage)

A variable indicating if the game is in editmode.

editmode

A variable indicating if the player looks at the floor or at the ceiling.

flrceil

Used to finetune the "overbright lighting" rendering feature when enabled.

the brightness of the scene

Enables or disables the old editing binds.
old_editbinds = 0
disables the old editing binds
old_editbinds = 1
enables the old editing binds
If this alias exists, it will be automatically executed when you start a new map.
Determines by how much to multiply the fly speeds by.

the multiplier

Enables or disables using triangles to render the editing grid/current selection instead of squares.

0 off, 1 on

# Menus

This section describes identifiers related to the menu gui.
Specifies commands to be executed when a menu opens.

The code to execute on init

Creates a new menu.

The name of the menu

Creates a new menuitem.

The menuitem description.

The command to execute on selection of the menuitem.

The command to execute upon rolling over the menuitem.

Defines the initial selection for a menu.

line number

Creates a new menuitem with variable content.

The cubescript to generate the menuitem description.

The command to execute on selection of the menuitem.

The command to execute upon rolling over the menuitem.

Selects a line in a menu.

menu name

line number

Defines the background color for the menu selection bar.

red (0..100)

green (0..100)

blue (0..100)

alpha (0..100)

text

value

action

image filename

text

action

hoveraction

text

bind command

text

min

max

value

step

display

action

text

value

action

hoveraction

maxchars

Displays the specified menu.

the name of a previously defined menu

Closes the specified menu if it is open.

the name of a previously defined menu

Deletes the entire contents (all menu items) of the given menu.

the name of a previously defined menu

Specifies a model to render while displaying the last added menu.

the model

the animation to play

the rotation speed

the scale

Changes the menu model of a specified menu.

the name of the menu

the (new) model

the animation to play

the rotation speed

the scale

If wrapslider is set the menuitemslider will toggle to the min/max value if at end of the range.

0 off, 1 on

# Heads-Up Display

This section describes the identifiers to configure the head-up display (HUD).
Sets the display mode for the HUD clock.

display mode

Recreates the minimap for the current map.
Executes the specified command in the command line history.

the N'th command from the history

Allows to browse through the console history by offsetting the console output.

scrolls into the history (conskip 1)

resets the history (conskip -1000)

the offset

Sets how many typed console commands to store.

Total of stored commands

Sets the resolution for the minimap.

the resolution

Turns on/off the radar compass

enable/disable radar compass

Turns on/off the damage indicator

enable/disable damage indicator

Hide big images in menus.

0: show, 1: hide

Shows ammo statistics like version 1.0

0: new, 1: old

Choose whether the players hand carrying the weapon appears as right or left handed.

0: lefty, 1: righty

Sets how many seconds before the console text rolls (disappears) up the screen.

time before the text rolls up

Sets the total number of text lines from the console to store as history.
Sets how many lines of text the console displays.
Sets the number of text lines on an alternate F11 history display.
Sets the number of text lines on the F11 history display.
Time in milliseconds before the abovehead icon dissapears.

abovehead icon display time

Turns on or off the display of console text.

enable/disable console text

Turns on or off the display of equipement icons.

enable/disable equipement icons

Turns on or off the display of messages at the bottom of the screen.

enable/disable messages

Shows extra gameplay messages on certain events if connected to a server.

enable/disable extra gameplay messages

Turns on or off the display of spectator staus.

enable/disable spectator status

Turns on or off the display of flag icons.

enable/disable flag icons

Turns on or off the display of local player team icons.

enable/disable team icons

Turns on or off the display of the on-screen radar.

enable/disable radar

Turns on or off the display of vote icons.

enable/disable vote info

Turns on or off the display of the current selected gun.

show/hide guns 3D models

Turns on/off the display of the hudgun while spectating a player in first-person view. Works in demo mode as well.

show/hide hudgun when spectating

Turns on/off display of FPS/rendering statistics on the HUD.

0: Show no stats, 1: Only show FPS stats, 2: Show all stats

.
Turns on/off display of team warning crosshair.

enable/disable warning crosshair

Set the level of transparency of the damage indicator, 0 = is fully transparent, 100 = totaly solid.

damage indicator alpha value

Sets the separation of the arrows in the damage indicator.

damage indicator separation size

Sets the size of the damage indicator.

damage indicator icon size

Sets how long the damage indicator stays on screen.

damage indicator display time

Sets the size of your crosshair.

the crosshair size

Turns on or off crosshair effects.

Turns the effects on (1) or off (0)

Sets the icon size of the players shown in the radar and the minimap.

size of icons inside radar

colour of CN column in scoreboard

color

Show the client number column on the scoreboard first?

cn column order

change at what height you are floating in the radar-view

height

enables or disables showing the player name on the HUD when in your crosshair.

0 off, 1 on

Enables or disables showing the player's horizontal speed.

0 off, 1 on

Stores your current HUD configuration in a buffer and disables it entirely.
Restores your HUD configuration after using disablehud.
enables or disables the showing of game mode descriptions on the console after map starts.

0 off, 1 on

Sets the order priority for the column flags on the scoreboard.

low priority: left, high priority: right

Sets the order priority for the column frags on the scoreboard.

low priority: left, high priority: right

Sets the order priority for the column deaths or disables it on the scoreboard.

-1: disable, low priority: left, high priority: right

Sets the order priority for the column ratio or disables it on the scoreboard.

-1: disable, low priority: left, high priority: right

Sets the order priority for the column score or disables it on the scoreboard.

-1: disable, low priority: left, high priority: right

Sets the order priority for the column pj/ping or disables it on the scoreboard.

-1: disable, low priority: left, high priority: right

Sets the order priority for the column cn on the scoreboard.

low priority: left, high priority: right

Sets the order priority for the column name on the scoreboard.

low priority: left, high priority: right

# Visuals

This section describes identifiers to configure the visuals.
Resets the OpenGL rendering settings
Changes the screen resolution

width

height

checks for the searchstring in all loaded extensions

extension

if (glext shadow_funcs) [echo you have shadow functionality] [echo no shadows for you]
(descripton unavailable)

min

max

Displays local player's current x,y,z position in map, showstats 1 must be enabled.

display current position

Sets the transparency/opacity level of stencil shadows.

Alpha level

Sets the level of brightness to use when using the command "/fullbright 1".

Light intensity level

Sets the field of view (fov) based on the rules of AC v0.93

FOV degree

Loads a font texture to use as text within AssaultCube.

The font name.

The path to the font texture.

The default width.

The default height.

Offset (co-ordinate X).

Offset (co-ordinate Y).

Offset (width).

Offset (height).

Specify a region of an image to be used as a font character

X co-ordinates (from top-left corner).

Y co-ordinates (from top-left corner).

Width.

Height.

Changes the current font.

Font name

Whether a special monospace font should be used to render the text on the scoreboard.

normal (0) or monospace (1)

Sets the field of view (fov).

the FOV value

Sets the size for the icon shown above a player using comunications voices.

Icon size

Sets the amount of time in milliseconds that blood is displayed on the ground.

Blood display time

Turn on and off the display of blood.

Enable/Disable blood

Enables or disables the gib animation entirely.

off OR on

Sets the number of gibs to display when performing a "messy" kill (grenade, knife, sniper headshot).

number of gibs

Sets the time for gibs to live (in milliseconds), after which they will disappear.

time to live

Sets the velocity at which gibs will fly from a victim.

velocity

Defines the health level at or below which a heartbeat sound will be played. A value of 0 (which is the default) disables this feature.

health value

Sets the team display mode.

the team display mode

Sets the size/resolution of the dynamic shadow data.

the size

Sets the display size of the dynamic shadows.

the size

Sets if dynamic shadows should be saved to disk.

auto save

Sets the alpha value (transparency) for dynamic shadows.

the alpha value

Determines whether dynamic shadows and lights are rendered, provided just incase they slow your fps down too much.

the radius of a dynamic light

Determines the subdivision of the water surface in maps.

the subdivisioin value

Turns on/off the reflections in the water surface.

enable/disable water reflections

Turns on/off water refractions.

enable/disable water refractions

Enables or disables fullscreen.

fullscreen

Sets the level of fullscreen antialiasing (FSAA).

fsaa

Sets the screen width.

the screen width

Sets the screen height.

the screen height

Sets the bits per pixel value.

bits per pixel

Sets the bits for the depth buffer.

depth pixels

Enables or disables vsync.

vsync

Sets the hardware gamma value.

the gamma value

Smoothly changes your gamma to the specified value.

the gamma to change to

milliseconds between gamma changes

changegamma 300 30
Every 30 milliseconds your gamma is changed by 1 until it reaches its goal of gamma 300.
Enables or disables the per official map dynamic gamma system.
dyngamma = 0
Output: disables the system
dyngamma = 1
Output: enables the system
Sets the current map's default dynamic gamma.
checkinit afterinit [ofc_gamma_list = [175 225 150 120 ...]]
Sets your custom gamma values for the per official map dynamic gamma system. If you are going to use this method, you MUST include values for every existing official map. The list must be alphabetical and be the exact length of the number of currrent official maps. Hint: use "echo $defaultmaps" and "echo (listlen $defaultmaps)".

the gamma value

Allows to finetune the amount of "error" the mipmapper/stripifier allow themselves for changing lightlevels.

the error value, 1 being the best quality

Specifies the Field Of View when in spectating/ghost mode.

Spectate FOV size

The maximum texture size (in pixels) supported by the graphics hardware.

max. hardware texture size

The maximum texture (if less than hwtexsize) that will actually be used by the engine, larger textures will be scaled down. 0 removes this limit.

max. texture size

Reduces the size of all texture by the selected factor:
-1: 2x2 : 0 : 1: x0.5 : 2: x0.25 : 3: x0.125
Note: -1 is a special mode which reduces all textures to flat coloured surfaces.

scale selection

Controls whether textures with a scale higher than 1.0 will be scaled down while loading to increase performance (0) or stay at higher resolution (1).

scale down?

Specifies how long (in milliseconds) to display bullet holes.

Bullethole display time

Turns on/off the display of bullet holes

Enable/Disable bullet holes

Scales all particles.

the scale percentage

Sets the time available for interpolation between model animations.

the amount of milliseconds for the interpolation

Adjusts gib/gibnum/gibspeed/gibttl variables collectively.
show the blood-spat overlay when receiving damage?

damagescreen

if overlay of blood-spat, at what blending (transparency) level?

damagescreen transparency

if overlay of blood-spat, use which factor?

damagescreen factor

if overlay of blood-spat, at what speed does it fade?

damagescreen fade

make dead players instantly pop out of existence, instead of falling over and sinking into the ground.

BOOL

set the frag message corresponding to a weapon (appearing on the hud or in server logs)

the integer of the gun

the message you want to appear

fragmessage 5 sniped // set "sniped" message for frags with sniper.
It will display "you sniped unarmed" on the hud when you frag unarmed with sniper. In server logs you will get "[127.0.0.1] killer sniped unarmed".
set the gib message corresponding to a weapon (appearing on the hud or in server logs)
change at what position to truncate the map title string

chars

# Sound

This section describes all identifiers related to music and sound effects.
The distance from the source emitting the sound to the listener.
This value indicates the relative "strength" of a sound (how far away the sound can be heard.
Plays the specified sound.

the sound to play

Mute a specific game sound.

ID of the sound to mute

audible?

Returns 1 if sound A is muted, else 0.
mutesound 5; if (soundmuted 5) [echo Sound 5 is muted!] [echo Sound 5 is not muted!]
Output: Sound 5 is muted!

sound ID

Unmutes all previously muted sounds.
Specifies the interval for checking mapsounds.

interval in milliseconds

Enables verbose output for debugging purposes.

enable audio debug

Each subsequent played sound's gain-value is scaled by this percentage.

percentage

Sets the music volume.

the volume

Play music in the background.

music file name

playtime

command to be executed, when music is done

Enables or disables the audio subsystem in AC.

enable

Sets the desired amount of allocated sound channels.

number of channels

Sets the sound volume for all sounds.

the volume

# Ingame Reference

This section describes all identifiers related to the ingame documentation reference.
Adds a new section to the ingame documentation.

the section name

Adds a new identifier documentation to the last added section.
docident fov "Sets the field of view."
docident "newent light" "Adds a new light entity."

name of the identifier

the description

Adds a new argument documentation to the last added identifier.

the token

the description

the value notes

flags this argument as variable-length

Adds a new documentation remark to the last added identifier.

the remark

Adds an example to the last added identifier.

the example code

the explanation

Adds a new documentation reference to an identifier.

the display name

the identifier to refer to

the URL to refer to

Outputs a list of yet undocumented identifiers (commands,variables, etc)

output all identifiers

Outputs a list of identifier documentations that do not match any existing identifier.
Searches the ingame docs for identifier documentations matching the specified search string.

the search string

Writes out a base XML documentation reference containing templates for the builtin identifiers.

the reference name

the XML schema location string

XML stylesheet to use

# Server commands

This section lists commands used by the client that communicate to the server. Most are used for server administration. Also see the "mode" section and the "map" command which also communicate to the server.
If the server was run with -n1 and -n2 arguments (prefix and suffix of descriptive title) a serveradmin can set a user-defined server description with this command, if it wasn't this command results in "invalid vote". This title will only stay until the next map is loaded.

description

Modded servers announcement of features. See source/src/server.cpp [Line 2926ff. "case SV_EXTENSION:"]

extension

description

Whether servers that have not yet responded to a ping should be shown in the server list.
Sets the number of servers to be pinged at once.
Adds a new category in the serverbrowser favourites.

reference designator (keep short and unique)

List all registered serverbrowser favourites categories
Hide favourites icons in serverbrowser.

0: show, 1: hide

Hide favourites tag column in serverbrowser

-

Hide server IP and port in serverbrowser.

-

Select ascending of descending sort order in serverbrowser.
Sort official maps over custom maps in serverbrowser.

-

Show 'minutes remaining' in serverbrowser.
Show player names in serverbrowser.

-

Show only servers of one favourites category in serverbrowser.

category index

Show only servers with the correct protocol in serverbrowser.

-

Show 'weights' in serverbrowser.
Search a nickname (or -part) on all servers.

nickname to search

Sets automated team assignment.

Enables or disables auto team.

Temporary ban of the specified player from the server.

The player to ban

Calls a vote on the server.

Vote type

First argument

Second argument

Calls a vote to force the specified player to switch to the specified team.

client number of player

the team to force to

Calls a vote to forceteam yourself to the specified team.

the team to force yourself to

Shuffles the teams. The server will attempt to restore balance, but the result may be less that optimal, and there are certainly better ways to keep teams balanced.
Gives admin state to the specified player.

The player to become admin

Kicks the specified player from the server.

The player to kick

Sets the mastermode for the server.

The master mode

Removes all temporary bans from the server. Temporary bans are normally automatically removed after 20 minutes.
Clears all demos currently in memory on the server.
Sends a map to the server.

map to send

Deletes a map from the current server.

map name

Claims or drops admin status.

Status

Password

# Game modes

Sets the gameplay mode to N for the next map loaded.

Team Deathmatch

Co-op edit

Deathmatch

Survivor

Team survivor

Capture the Flag

Pistol frenzy

Bot team deathmatch

Bot deathmatch

Last swiss standing

One shot, One kill

Team One shot, One kill

Bot One shot, One kill

Hunt the Flag

Team keep the flag

Keep the flag

mode 7; map ac_complex; echo "Bot Team Deathmatch on ac_complex"
mode 8; map ac_mines 4; echo "Bot Deathmatch on ac_mines for 4 minutes"
mode 5; map ac_shine; echo "CTF @ ac_shine"

mode

description

Starts a map with the mode "Co-op edit"
coop ac_newmap

The name of the map you wish to edit

Starts a map with the mode "Capture the Flag"
ctf ac_mines

The name of the map you wish to play

The time limit, in minutes (default 15 minutes if T is 0 or not specified)

Starts a map with the mode "Deathmatch"
dm ac_complex

The name of the map you wish to play

The time limit, in minutes (default 10 minutes if T is 0 or not specified)

Starts a map with the mode "Hunt the Flag"
htf ac_mines

The name of the map you wish to play

The time limit, in minutes (default 15 minutes if T is 0 or not specified)

Starts a map with the mode "Keep the Flag"
ktf ac_mines

The name of the map you wish to play

The time limit, in minutes (default 10 minutes if T is 0 or not specified)

Starts a map with the mode "Last Man Standing"
lms ac_complex

The name of the map you wish to play

The time limit, in minutes (default 10 minutes if T is 0 or not specified)

Starts a map with the mode "Last Swiss Standing"
lss ac_complex

The name of the map you wish to play

The time limit, in minutes (default 10 minutes if T is 0 or not specified)

Starts a map with the mode "One shot, One kill"
osok ac_complex

The name of the map you wish to play

The time limit, in minutes (default 10 minutes if T is 0 or not specified)

Starts a map with the mode "Pistol Frenzy"
pf ac_complex

The name of the map you wish to play

The time limit, in minutes (default 10 minutes if T is 0 or not specified)

Starts a map with the mode "Team Deathmatch"
tdm ac_complex

The name of the map you wish to play

The time limit, in minutes (default 15 minutes if T is 0 or not specified)

Starts a map with the mode "Team Keep the Flag"
tktf ac_mines

The name of the map you wish to play

The time limit, in minutes (default 15 minutes if T is 0 or not specified)

Starts a map with the mode "Team One Shot, One Kill"
tosok ac_complex

The name of the map you wish to play

The time limit, in minutes (default 15 minutes if T is 0 or not specified)

Starts a map with the mode "Team Survivor"
ts ac_complex

The name of the map you wish to play

The time limit, in minutes (default 15 minutes if T is 0 or not specified)

Starts a map with the mode "Hunt the Flag". Some players prefer the name "VIP" for this mode.
vip ac_mines

The name of the map you wish to play

The time limit, in minutes (default 15 minutes if T is 0 or not specified)

# Editing configs

All the below commands are used specifically in map configuration files. Some of these commands can also be used without the need of a map configuration file.

anim

frame

range

speed

tag

type

arg1

arg2

name

vert1

vert2

vert3

vert4

anim

startframe

range

speed

tag

type

arg1

arg2

parentno

childno

tagname

model

object name

skin texture

alphatest

cachelimit

cullface

percent

shadow distance

translates (= moves) the model

translucency

vertexligh

Isolates the given context. This disables access from this context to identifiers located in other contexts, also it removes all aliases created in this context once the running context changes

the context

secure this configuration for the rest of the game

context

idname

Sets the fog distance.

The fog distance

Sets the fog and clearing colour.

The colour

Binds a texture to be used if a slot couldn't be loaded with a given textures path.
loadnotexture // Reset to default
loadnotexture "makke/black.jpg" // Any missing texture will show up black

file name of the texture to bind

Loads a skymap for a map.
loadsky "textures/skymaps/makke/mountain"

path to the six skymap textures

Registers a mapmodel that can be placed in maps.

The square radius of the bounding box.

The height of the bounding box.

The initial height offset from the ground.

This integer is redundant. Leave it at zero so you don't break the command.

The name of the map model

Resets the mapmodel slots/indices to 0 for the subsequent "mapmodel" commands.
Defines a mapsound.

Path to the sound file

Maximum simultaneous sounds

Resets the mapsound slots/indices to 0 for the subsequent "mapsound" commands.
Shadow yaw specifies the angle at which shadow stencils are drawn on a map.
shadowyaw 90

The angle in degrees to rotate the stencil shadows

Binds a texture to the current texture slot.

Scale of the texture to load (should be a power of two).

File name of the texture to bind

Sets the texture slots/indicies to 0 for the subsequent "texture" commands.
Determines the water colour in a map.

Red colour intensity

Green colour intensity

Blue colour intensity

Sets the wave height of water, between 0 (completely still, no waves at all) and 1 (very choppy).

wave height (floating-point value)

# TODO

This section describes identifiers that are not documented yet, but you may try to help us there.
deletes the passed alias.
returns the currently used formatstring for demo filenames
returns the currently used formatstring for demo timestamp
set the formatstring for demo filenames - default: TODO (when stable)

STRING

set the formatstring for demo timestamp - default: TODO (when stable)

STRING

use localtime (1) or GMT (0)?

BOOL

TODO: Description

TODO

TODO

TODO

At what char does the definition proceed?

TODO

An alias used for i18n. Translateable text should be marked [(_ "this is the EN-us variant of the text")].

I18Nmessage

switch the font in which the menu is displayed

FONT

for toggling on the ability for menutext to have the blinking bit set. The global setting of 'allowblinkingtext' overrides this

0 || !=0

for toggling on the ability for any text to have the blinking bit set.

TOGGLE

a menuitem that loads a map, displays the title and the preview or a default image

MAP

TEXT

TODO: Description

TODO

TODO: Description
TODO: Description

TODO

TODO: Description
TODO: Description

TODO

do you really want to quit?

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

shows the settings of edithide (sparklies)
Hides the list of entity types you set. Pass 1 for light, 2 for spawn, or use "playerstart".

list of types to hide

Hides all but the single entity type you give. Pass 1 for light, 2 for spawn, or use [playerstart].

type to show exclusively