<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://springrts-wiki.p2004a.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tulipe</id>
	<title>Spring - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://springrts-wiki.p2004a.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tulipe"/>
	<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/wiki/Special:Contributions/Tulipe"/>
	<updated>2026-11-08T18:36:14Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=UI_commands&amp;diff=18835</id>
		<title>UI commands</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=UI_commands&amp;diff=18835"/>
		<updated>2020-12-19T09:58:51Z</updated>

		<summary type="html">&lt;p&gt;Tulipe: /* 3 commands added */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Lua_Scripting|Lua Scripting]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
=How to use the console=&lt;br /&gt;
The ingame chat is the console. Open with hitting the `&amp;lt;code&amp;gt;return&amp;lt;/code&amp;gt;` or `&amp;lt;code&amp;gt;enter&amp;lt;/code&amp;gt;` key.&lt;br /&gt;
If you want to enter a command into ingame chat, you must add a &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; in front&amp;lt;br&amp;gt;&lt;br /&gt;
for example: &amp;lt;code&amp;gt;/commandhelp&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Some commands will also autocomplete if you press &amp;lt;code&amp;gt;TAB&amp;lt;/code&amp;gt;. So if you enter &amp;quot;/com&amp;quot; and then to press TAB, it will complete it to `/command` and tells you there is `/commandhelp` &amp;amp; `/commandlist`, if you now enter either `l` or `h` and press TAB again it will complete to one of them.&lt;br /&gt;
&lt;br /&gt;
Also commands are not case-sensitive.&lt;br /&gt;
&lt;br /&gt;
=Lists of commands, some are even explained=&lt;br /&gt;
&lt;br /&gt;
For a complete (excluding Lua commands &amp;amp; some engine `actions`) use:&lt;br /&gt;
&amp;lt;code&amp;gt;/commandlist&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example output (104.0):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow:auto; width:auto;&amp;quot;&amp;gt;&lt;br /&gt;
Chat commands plus description&lt;br /&gt;
==============================&lt;br /&gt;
/Atm                             (synced)    Gives 1000 metal and 1000 energy to the issuing players team&lt;br /&gt;
/Cheat                           (synced)    Enables/Disables cheating, which is required for a lot of other commands to be usable&lt;br /&gt;
/Destroy                         (synced)    Destroys one or multiple units by unit-ID, instantly&lt;br /&gt;
/DevLua                          (synced)    Enables/Disables Lua dev-mode (can cause desyncs if enabled)&lt;br /&gt;
/EditDefs                        (synced)    Allows/Disallows editing of unit-, feature- and weapon-defs through Lua&lt;br /&gt;
/Give [amount] &amp;lt;objectName|&#039;all&#039;&amp;gt;(synced)    Places one or multiple units of a single or multiple types on the map, instantly; by default to your own team.&lt;br /&gt;
                                             Example: /give 10 corkrog 3 - gives team 3 10 corkrogs.&lt;br /&gt;
/GlobalLOS                       (synced)    Enables/Disables global line-of-sight, which makes the whole map permanently visible to everyone or to a specific allyteam&lt;br /&gt;
/GodMode                         (synced)    Enables/Disables god-mode, which allows all players (even spectators) to control all units (even during replays, which will DESYNC them)&lt;br /&gt;
/LuaGaia                         (synced)    Allows reloading or disabling LuaGaia, and to send a chat message to LuaGaia scripts&lt;br /&gt;
/LuaRules                        (synced)    Allows reloading or disabling LuaRules, and to send a chat message to LuaRules scripts&lt;br /&gt;
/NoCost                          (synced)    Enables/Disables everything-for-free, which allows everyone to build everything for zero resource costs&lt;br /&gt;
/NoHelp                          (synced)    Enables/Disables widgets (LuaUI control)&lt;br /&gt;
/NoSpecDraw                      (synced)    Allows/Disallows spectators to draw on the map&lt;br /&gt;
/NoSpectatorChat                 (synced)    Enables/Disables spectators to use the chat&lt;br /&gt;
/ReloadCEGs                      (synced)    Reloads CEG scripts&lt;br /&gt;
/ReloadCOB                       (synced)    Reloads COB scripts&lt;br /&gt;
/Skip                            (synced)    Fast-forwards to a given frame, or stops fast-forwarding&lt;br /&gt;
/Take                            (synced)    Transfers all units of allied teams without any active players to the team of the issuing player&lt;br /&gt;
/AdvMapShading                   (unsynced)  Set or toggle advanced map shading mode&lt;br /&gt;
/AdvModelShading                 (unsynced)  Set or toggle advanced model shading mode&lt;br /&gt;
/AIControl                       (unsynced)  Creates a new instance of a Skirmish AI, to let it controll a specific team&lt;br /&gt;
/AIKill                          (unsynced)  Kills the Skirmish AI controlling a specified team&lt;br /&gt;
/AIList                          (unsynced)  Prints a list of all currently active Skirmish AIs&lt;br /&gt;
/AIReload                        (unsynced)  Reloads the Skirmish AI controlling a specified team&lt;br /&gt;
/AirMesh                         (unsynced)  Show/Hide the smooth air-mesh map overlay&lt;br /&gt;
/AllMapMarks                     (unsynced)  Show/Hide all map marks drawn so far&lt;br /&gt;
/Ally                            (unsynced)  Starts/Ends alliance of the local players ally-team with another ally-team&lt;br /&gt;
/ATM                             (unsynced)  Redirects command /ATM to its synced processor&lt;br /&gt;
/BufferText                      (unsynced)  Write the argument string(s) directly to the console history, but not anywhere else. This is useful for fast manual issuing of the command,&lt;br /&gt;
                                             later on&lt;br /&gt;
/Chat                            (unsynced)  Starts waiting for intput to be sent to &lt;br /&gt;
/ChatAll                         (unsynced)  Starts waiting for intput to be sent to All&lt;br /&gt;
/ChatAlly                        (unsynced)  Starts waiting for intput to be sent to Ally&lt;br /&gt;
/ChatSpec                        (unsynced)  Starts waiting for intput to be sent to Spec&lt;br /&gt;
/ClearMapMarks                   (unsynced)  Remove all map marks drawn so far&lt;br /&gt;
/Clock                           (unsynced)  Shows a small digital clock indicating the local time&lt;br /&gt;
/CmdColors                       (unsynced)  Reloads cmdcolors.txt&lt;br /&gt;
/CommandHelp                     (unsynced)  Prints info about a specific chat command (so far only synced/unsynced and the description)&lt;br /&gt;
/CommandList                     (unsynced)  Prints all the available chat commands with description (if available) to the console&lt;br /&gt;
/Console                         (unsynced)  Enables/Disables the in-game console&lt;br /&gt;
/ControlUnit                     (unsynced)  Start to first-person-control a unit&lt;br /&gt;
/Crash                           (unsynced)  Invoke an artificial crash through a NULL-pointer dereference (SIGSEGV)&lt;br /&gt;
/CreateVideo                     (unsynced)  Start/Stop capturing a video of the game in progress&lt;br /&gt;
/Cross                           (unsynced)  Allows one to exchange and modify the appearance of the cross/mouse-pointer in first-person-control view&lt;br /&gt;
/CtrlPanel                       (unsynced)  Reloads GUI config&lt;br /&gt;
/Debug                           (unsynced)  Enable/Disable debug rendering mode&lt;br /&gt;
/DebugColVol                     (unsynced)  Enable/Disable drawing of collision volumes&lt;br /&gt;
/DebugDrawAI                     (unsynced)  Enables/Disables debug drawing for AIs&lt;br /&gt;
/DebugGL                         (unsynced)  Enable/Disable OpenGL debug-context output&lt;br /&gt;
/DebugGLErrors                   (unsynced)  Enable/Disable OpenGL debug-errors&lt;br /&gt;
/DebugInfo                       (unsynced)  Print debug info to the chat/log-file about either: sound, profiling&lt;br /&gt;
/DebugPath                       (unsynced)  Enable/Disable drawing of pathfinder debug-data&lt;br /&gt;
/DebugTraceRay                   (unsynced)  Enable/Disable drawing of traceray debug-data&lt;br /&gt;
/DecGUIOpacity                   (unsynced)  Decreases the opacity(see-through-ness) of GUI elements&lt;br /&gt;
/DecreaseViewRadius              (unsynced)  Decrease the view radius (higher performance, uglier view)&lt;br /&gt;
/Deselect                        (unsynced)  Deselects all currently selected units&lt;br /&gt;
/Destroy                         (unsynced)  Destroys one or multiple units by unit-ID, instantly&lt;br /&gt;
/DistDraw                        (unsynced)  Set the distance between units and camera, at which they turn into far-textures (flat/texture-only representation) (Graphic setting)&lt;br /&gt;
/DistIcon                        (unsynced)  Set the distance between units and camera, at which they turn into icons (Graphic setting)&lt;br /&gt;
/DivByZero                       (unsynced)  Invoke an artificial crash by performing a division-by-Zero&lt;br /&gt;
/DrawInMap                       (unsynced)  Enables drawing on the map&lt;br /&gt;
/DrawLabel                       (unsynced)  Draws a label on the map at the current mouse-pointer position&lt;br /&gt;
/DrawTrees                       (unsynced)  Enable/Disable engine-tree rendering&lt;br /&gt;
/DumpState                       (unsynced)  dump game-state to file&lt;br /&gt;
/DynamicSky                      (unsynced)  Enable/Disable dynamic-sky rendering&lt;br /&gt;
/Echo                            (unsynced)  Write a string to the log file&lt;br /&gt;
/EndGraph                        (unsynced)  Enables/Disables the statistics graphs shown at the end of the game&lt;br /&gt;
/Exception                       (unsynced)  Invoke an artificial crash by throwing an std::runtime_error&lt;br /&gt;
/Font                            (unsynced)  Reloads the fonts&lt;br /&gt;
/FPS                             (unsynced)  Shows/Hides the frames-per-second indicator&lt;br /&gt;
/FPSHud                          (unsynced)  Enables/Disables HUD (GUI interface) shown in first-person-control mode&lt;br /&gt;
/Fullscreen                      (unsynced)  Switches fullscreen mode&lt;br /&gt;
/GameInfo                        (unsynced)  Enables/Disables game-info panel rendering&lt;br /&gt;
/GatherMode                      (unsynced)  Enter/Leave gather-wait command mode&lt;br /&gt;
/Give                            (unsynced)  Places one or multiple units of a single or multiple types on the map, instantly; by default to your own team&lt;br /&gt;
/GrabInput                       (unsynced)  Prevents/Enables the mouse from leaving the game window (windowed mode only)&lt;br /&gt;
/GroundDecals                    (unsynced)  Disable/Enable ground-decals rendering. Ground-decals are things like scars appearing on the map after an explosion.&lt;br /&gt;
/GroundDetail                    (unsynced)  Set the level of ground detail&lt;br /&gt;
/Group                           (unsynced)  Allows modifying the members of a group&lt;br /&gt;
/Group0                          (unsynced)  Allows modifying the members of group 0&lt;br /&gt;
/Group1                          (unsynced)  Allows modifying the members of group 1&lt;br /&gt;
/Group2                          (unsynced)  Allows modifying the members of group 2&lt;br /&gt;
/Group3                          (unsynced)  Allows modifying the members of group 3&lt;br /&gt;
/Group4                          (unsynced)  Allows modifying the members of group 4&lt;br /&gt;
/Group5                          (unsynced)  Allows modifying the members of group 5&lt;br /&gt;
/Group6                          (unsynced)  Allows modifying the members of group 6&lt;br /&gt;
/Group7                          (unsynced)  Allows modifying the members of group 7&lt;br /&gt;
/Group8                          (unsynced)  Allows modifying the members of group 8&lt;br /&gt;
/Group9                          (unsynced)  Allows modifying the members of group 9&lt;br /&gt;
/HardwareCursor                  (unsynced)  Enables/Disables hardware mouse-cursor support&lt;br /&gt;
/HideInterface                   (unsynced)  Hide/Show the GUI controlls&lt;br /&gt;
/IncGUIOpacity                   (unsynced)  Increases the opacity(see-through-ness) of GUI elements&lt;br /&gt;
/IncreaseViewRadius              (unsynced)  Increase the view radius (lower performance, nicer view)&lt;br /&gt;
/Info                            (unsynced)  Shows/Hides the player roster&lt;br /&gt;
/InputTextGeo                    (unsynced)  Move and/or resize the input-text field (the &amp;quot;Say: &amp;quot; thing)&lt;br /&gt;
/LastMsgPos                      (unsynced)  Moves the camera to show the position of the last message&lt;br /&gt;
/LessClouds                      (unsynced)  Decreases the density of clouds (higher performance)&lt;br /&gt;
/LessTrees                       (unsynced)  Decreases distance from the camera at which trees are still drawn&lt;br /&gt;
/LODScale                        (unsynced)  Set the scale for either of: LOD (level-of-detail), shadow-LOD, reflection-LOD, refraction-LOD&lt;br /&gt;
/LuaGaia                         (unsynced)  Redirects command /LuaGaia to its synced processor&lt;br /&gt;
/LuaRules                        (unsynced)  Redirects command /LuaRules to its synced processor&lt;br /&gt;
/LuaSave                         (unsynced)  Save the game state to a specific file, add -y to overwrite when file is already present&lt;br /&gt;
/LuaUI                           (unsynced)  Allows one to reload or disable LuaUI, or alternatively to send a chat message to LuaUI&lt;br /&gt;
/MapBorder                       (unsynced)  Set or toggle map-border rendering&lt;br /&gt;
/MapMarks                        (unsynced)  Enables/Disables map marks rendering&lt;br /&gt;
/mapmeshdrawer                   (unsynced)  Switch map-mesh rendering modes: 0=GCM, 1=HLOD, 2=ROAM&lt;br /&gt;
/MapShadowPolyOffset             (unsynced)  &lt;br /&gt;
/MaxNanoParticles                (unsynced)  Set the maximum number of nano-particles (Graphic setting)&lt;br /&gt;
/MaxParticles                    (unsynced)  Set the maximum number of particles (Graphics setting)&lt;br /&gt;
/MiniMap                         (unsynced)  FIXME document subcommands. There may be more beyond minimize, maximize and geometry.&lt;br /&gt;
/MiniMap Minimize                (unsynced)  Performs the same action as pressing the red button under the minimap.&lt;br /&gt;
/MiniMap Maximize                (unsynced)  Performs the same action as holding Shift and pressing the yellow button under the minimap, i.e, maintains map aspect ratio.&lt;br /&gt;
/MiniMap Geometry X Y W H        (unsynced)  Sets the size of the minimap. X and Y are the coordinates of the top left corner while W and H are the width and height. Both pairs are in&lt;br /&gt;
                                             pixels corresponding to monitor resolution.&lt;br /&gt;
/MoreClouds                      (unsynced)  Increases the density of clouds (lower performance)&lt;br /&gt;
/MoreTrees                       (unsynced)  Increases distance from the camera at which trees are still drawn&lt;br /&gt;
/Mouse1                          (unsynced)  Simulates a mouse button press of button 1&lt;br /&gt;
/Mouse2                          (unsynced)  Simulates a mouse button press of button 2&lt;br /&gt;
/Mouse3                          (unsynced)  Simulates a mouse button press of button 3&lt;br /&gt;
/Mouse4                          (unsynced)  Simulates a mouse button press of button 4&lt;br /&gt;
/Mouse5                          (unsynced)  Simulates a mouse button press of button 5&lt;br /&gt;
/MoveBack                        (unsynced)  Moves the camera Back a bit&lt;br /&gt;
/MoveDown                        (unsynced)  Moves the camera Down a bit&lt;br /&gt;
/MoveFast                        (unsynced)  Moves the camera Fast a bit&lt;br /&gt;
/MoveForward                     (unsynced)  Moves the camera Forward a bit&lt;br /&gt;
/MoveLeft                        (unsynced)  Moves the camera Left a bit&lt;br /&gt;
/MoveRight                       (unsynced)  Moves the camera Right a bit&lt;br /&gt;
/MoveSlow                        (unsynced)  Moves the camera Slow a bit&lt;br /&gt;
/MoveUp                          (unsynced)  Moves the camera Up a bit&lt;br /&gt;
/MuteSound                       (unsynced)  Mute/Unmute the current sound system&lt;br /&gt;
/NoLuaDraw                       (unsynced)  Allow/Disallow Lua to draw on the map&lt;br /&gt;
/PasteText                       (unsynced)  Paste either the argument string(s) or if none given, the content of the clip-board to chat input&lt;br /&gt;
/Pause                           (unsynced)  Pause/Unpause the game&lt;br /&gt;
/QuitForce                       (unsynced)  Exits game to system&lt;br /&gt;
/QuitMenu                        (unsynced)  Opens the quit-menu, if it is not already open&lt;br /&gt;
/QuitMessage                     (unsynced)  Deprecated, see /Quit instead (was used to quite the game immediately)&lt;br /&gt;
/ReloadForce                     (unsynced)  Exits game to menu&lt;br /&gt;
/ReloadGame                      (unsynced)  Restarts the game with the initially provided start-script&lt;br /&gt;
/ReloadShaders                   (unsynced)  Reloads all engine shaders&lt;br /&gt;
/ResBar                          (unsynced)  Shows/Hides team resource storage indicator bar&lt;br /&gt;
/Resync                          (unsynced)  Redirects command /Resync to its synced processor&lt;br /&gt;
/SafeGL                          (unsynced)  Enables/Disables OpenGL safe-mode&lt;br /&gt;
/Save                            (unsynced)  Save the game state to a specific file, add -y to overwrite when file is already present&lt;br /&gt;
/SaveGame                        (unsynced)  Save the game state to QuickSave.ssf (BROKEN)&lt;br /&gt;
/Say                             (unsynced)  Say something in (public) chat&lt;br /&gt;
/ScreenShot                      (unsynced)  Take a low quality JPG screen-shot of the current view&lt;br /&gt;
/ScreenShot png                  (unsynced)  Take a high quality PNG screen-shot of the current view&lt;br /&gt;
/Select                          (unsynced)  &amp;lt;chat command description: Select&amp;gt;&lt;br /&gt;
/SelectCycle                     (unsynced)  &amp;lt;chat command description: SelectUnits&amp;gt;&lt;br /&gt;
/SelectUnits                     (unsynced)  &amp;lt;chat command description: SelectUnits&amp;gt;&lt;br /&gt;
/Send                            (unsynced)  Send a string as raw network message to the game host (for debugging only)&lt;br /&gt;
/Set                             (unsynced)  Set a config key=value pair&lt;br /&gt;
/Shadows                         (unsynced)  Disables/Enables shadows rendering: -1=disabled, 0=off, 1=full shadows, 2=skip terrain shadows&lt;br /&gt;
/ShareDialog                     (unsynced)  Opens the share dialog, which allows you to send units and resources to other players&lt;br /&gt;
/ShowElevation                   (unsynced)  Enable rendering of the auxiliary height-map overlay&lt;br /&gt;
/ShowMetalMap                    (unsynced)  Enable rendering of the auxiliary metal-map overlay&lt;br /&gt;
/ShowPathCost                    (unsynced)  Enable rendering of the path cost-map overlay&lt;br /&gt;
/ShowPathFlow                    (unsynced)  Enable/Disable rendering of the path flow-map overlay&lt;br /&gt;
/ShowPathHeat                    (unsynced)  Enable/Disable rendering of the path heat-map overlay&lt;br /&gt;
/ShowPathTraversability          (unsynced)  Enable rendering of the path traversability-map overlay&lt;br /&gt;
/ShowPathType                    (unsynced)  Shows path traversability for a given MoveDefName, MoveDefID or UnitDefName&lt;br /&gt;
/ShowStandard                    (unsynced)  Disable rendering of all auxiliary map overlays&lt;br /&gt;
/SlowDown                        (unsynced)  Decreases the simulation speed. The engine will try to simulate less frames per second&lt;br /&gt;
/SoundChannelEnable              (unsynced)  Enable/Disable specific sound channels: UnitReply, General, Battle, UserInterface, Music&lt;br /&gt;
/SoundDevice                     (unsynced)  Switch the sound output system (currently only OpenAL / NullAudio)&lt;br /&gt;
/SpecFullView                    (unsynced)  Sets or toggles between full LOS or ally-team LOS, if the local user is a spectator&lt;br /&gt;
/Spectator                       (unsynced)  Lets the local user give up control over a team, and start spectating&lt;br /&gt;
/SpecTeam                        (unsynced)  Lets the local user specify the team to follow, if he is a spectator&lt;br /&gt;
/Speed                           (unsynced)  Shows/Hides the simulation speed indicator&lt;br /&gt;
/SpeedControl                    (unsynced)  Sets how server adjusts speed according to player&#039;s load (CPU), 1: use average, 2: use highest,&lt;br /&gt;
/SpeedUp                         (unsynced)  Increases the simulation speed. The engine will try to simulate more frames per second&lt;br /&gt;
/Take                            (unsynced)  Redirects command /Take to its synced processor&lt;br /&gt;
/Team                            (unsynced)  Lets the local user change to another team&lt;br /&gt;
/TeamHighlight                   (unsynced)  Enables/Disables uncontrolled team blinking&lt;br /&gt;
/ToggleInfo                      (unsynced)  Toggles current info texture view&lt;br /&gt;
/ToggleLOS                       (unsynced)  Enable rendering of the auxiliary LOS-map overlay&lt;br /&gt;
/ToolTip                         (unsynced)  Enables/Disables the general tool-tips, displayed when hovering over units. features or the map&lt;br /&gt;
/Track                           (unsynced)  Start following the selected unit(s) with the camera&lt;br /&gt;
/TrackMode                       (unsynced)  Shift through different ways of following selected unit(s)&lt;br /&gt;
/TrackOff                        (unsynced)  Stop following the selected unit(s) with the camera&lt;br /&gt;
/TSet                            (unsynced)  Set a config key=value pair in the overlay, meaning it will not be persisted for future games&lt;br /&gt;
/ViewSelection                   (unsynced)  Moves the camera to the center of the currently selected units&lt;br /&gt;
/VSync                           (unsynced)  Enables/Disables vertical-sync (Graphics setting)&lt;br /&gt;
/W                               (unsynced)  Say something in private to a specific player, by player-name&lt;br /&gt;
/Water                           (unsynced)  Set water rendering mode: 0=basic, 1=reflective, 2=dynamic, 3=reflective&amp;amp;refractive, 4=bump-mapped&lt;br /&gt;
/WByNum                          (unsynced)  Say something in private to a specific player, by player-ID&lt;br /&gt;
/WireMap                         (unsynced)  Toggle wireframe-mode drawing of map geometry&lt;br /&gt;
/WireModel                       (unsynced)  Toggle wireframe-mode drawing of model geometry&lt;br /&gt;
/WireSky                         (unsynced)  Toggle wireframe-mode drawing of skydome geometry&lt;br /&gt;
/WireTree                        (unsynced)  Toggle wireframe-mode drawing of tree geometry&lt;br /&gt;
/WireWater                       (unsynced)  Toggle wireframe-mode drawing of water geometry&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
More commands:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow:auto; width:auto;&amp;quot;&amp;gt;&lt;br /&gt;
/bind &amp;lt;keyset&amp;gt; &amp;lt;action&amp;gt;                      Binds a key or key combination. Example with a key: /bind a reclaim. Example with a &amp;quot;key combination&amp;quot;: /bind ctrl+a reclaim&lt;br /&gt;
/luarules halfhealth                         Give to all units half health&lt;br /&gt;
/luarules loadmissiles                       Load tacnuks, junos etc, to their max stockpile&lt;br /&gt;
/luagaia reload                              Reloads gaia gadgets&lt;br /&gt;
/luarules reload                             Reloads gadgets&lt;br /&gt;
/luaui reload&lt;br /&gt;
/luaui tweakgui                              Tweak mode on&lt;br /&gt;
/luaui selector                              Open the default widget selector (similar to pressing F11).&lt;br /&gt;
/options                                     Open the options interface for some games and mods&lt;br /&gt;
/Setmaxspeed #	                             Changes the maximum speed (default is 3.0)&lt;br /&gt;
/Setminspeed #                               Changes the minimum speed (default is 0.3)&lt;br /&gt;
/unbind &amp;lt;keyset&amp;gt; &amp;lt;action&amp;gt;                    Unbinds a key or key combination. Example: /unbind a reclaim.&lt;br /&gt;
/unbindaction &amp;lt;action&amp;gt;	                     Unbinds all keybinds that uses &amp;lt;action&amp;gt;.&lt;br /&gt;
/unbindkeyset &amp;lt;keyset&amp;gt;	                     Unbinds all bindings that uses &amp;lt;keyset&amp;gt;.&lt;br /&gt;
/unbindall	                             Unbinds all keys except the chat keybinding.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Scripting=&lt;br /&gt;
In Lua scripts, these commands can be used like this:&amp;lt;br&amp;gt;&lt;br /&gt;
Spring.SendCommands(&amp;quot;resbar 0&amp;quot;)&amp;lt;br&amp;gt;&lt;br /&gt;
notice the missing / when used like this.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Help]]&lt;/div&gt;</summary>
		<author><name>Tulipe</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_Windows&amp;diff=3723</id>
		<title>Building Spring on Windows</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_Windows&amp;diff=3723"/>
		<updated>2020-07-22T13:53:56Z</updated>

		<summary type="html">&lt;p&gt;Tulipe: Another way added to fix some problems.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
{{#css:&lt;br /&gt;
  code * {margin:inherit;}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
If you only want to produce your own Spring game and not contribute to the core engine, compilation is not necessary. Check out [[Gamedev:Main]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span class=warning&amp;gt;Warning:&amp;lt;/span&amp;gt; Compiling Spring on Windows often causes problems, it is heavily recommended to use [[Building_Spring_on_Linux|Linux]] for developing the Spring RTS Engine if possible.&lt;br /&gt;
&lt;br /&gt;
Some reasons for this:&lt;br /&gt;
* Of the active developers nobody uses windows for developing. So they might not be able to help as effectively as on Linux.&lt;br /&gt;
* Setting up a build environment takes a lot more time on windows&lt;br /&gt;
* Compiling is often slower on windows&lt;br /&gt;
* Compiling on windows is poorly tested (which possibly leads to some random / unknown / weird errors)&lt;br /&gt;
&lt;br /&gt;
That said, if you do wish to use Windows, the best place to get real-time help is the #sy lobby channel, or #sy on [[IRC]].&lt;br /&gt;
&lt;br /&gt;
=Compiling with MinGW=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
Install [http://www.cmake.org/ CMake] and [http://msysgit.github.io/ msysGit] and MinGW-w64:&lt;br /&gt;
&lt;br /&gt;
When installing msysGit you should select the option to &amp;quot;Run Git from the Windows Command Prompt&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
[[File:Msysgit6.png|400px]]&lt;br /&gt;
&lt;br /&gt;
This is in order to automatically add Git to PATH making it easy for CMake to find.&lt;br /&gt;
&lt;br /&gt;
== Installing MinGW-w64 ==&lt;br /&gt;
&lt;br /&gt;
Download and run the &amp;quot;Mingw-builds project - native toolchains using trunk&amp;quot; installer from [http://mingw-w64.org/doku.php/download/mingw-builds], more specifically from here: [https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/installer/mingw-w64-install.exe/download]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Select the following options:&lt;br /&gt;
&lt;br /&gt;
[[File:InstallingMinGW-w64.png|400px]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Version:&#039;&#039;&#039; Any version above 4.8.x should work, 4.9.x+ may not have been tested as thoroughly. In 2020, version 8.1.0 works fine!&lt;br /&gt;
* &#039;&#039;&#039;Architecture:&#039;&#039;&#039; i686&lt;br /&gt;
* &#039;&#039;&#039;Threads:&#039;&#039;&#039; posix&lt;br /&gt;
* &#039;&#039;&#039;Exception:&#039;&#039;&#039; sjlj &amp;lt;span class=&amp;quot;note&amp;quot;&amp;gt;This is the only setting which needs to be changed from the default&amp;lt;/span&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;Build Revision:&#039;&#039;&#039; The latest one&lt;br /&gt;
&lt;br /&gt;
== Adding to PATH ==&lt;br /&gt;
&lt;br /&gt;
Once installed, you should add the MinGW directory to your PATH variable so that Cmake can find the relevant binaries. &lt;br /&gt;
&lt;br /&gt;
* Go to System properties (either via Control Panel\System and Security\System or by right clicking &#039;Computer&#039; on the desktop), then click &#039;Advanced System Settings&#039;. &lt;br /&gt;
* Click the &#039;Environment Variables&#039; button at the bottom. &lt;br /&gt;
* Find Path in the &#039;System Variables&#039; scrollbox, add an extra &amp;lt;code&amp;gt;;&amp;lt;/code&amp;gt; to the end and then copy-paste in the MinGW directory (e.g. default is &amp;lt;code&amp;gt;C:\Program Files (x86)\mingw-w64\i686-4.9.1-posix-sjlj-rt_v3-rev0\mingw32\bin&amp;lt;/code&amp;gt;). &lt;br /&gt;
* Alternative instructions with images are easy to find online, for example [http://geekswithblogs.net/renso/archive/2009/10/21/how-to-set-the-windows-path-in-windows-7.aspx here].&lt;br /&gt;
&lt;br /&gt;
= Get the Source Code =&lt;br /&gt;
&lt;br /&gt;
* use git&#039;s bash (you find it in the right click context menu when clicking the folder), &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into your spring source dir&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone --recursive git://github.com/spring/spring.git -b develop&lt;br /&gt;
cd spring&lt;br /&gt;
git clone https://github.com/spring/mingwlibs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* update it from time to time with: &amp;lt;code&amp;gt;git pull --rebase&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Make sure you install the package in the checkout directory, so the path is: /spring/mingwlibs. If done right, it will look like:&lt;br /&gt;
** */spring/&lt;br /&gt;
** */spring/...&lt;br /&gt;
** */spring/mingwlibs&lt;br /&gt;
** */spring/rts&lt;br /&gt;
&lt;br /&gt;
* Note: if you install the package somewhere else (preferably outside of the source tree), and pass its location with the &#039;&#039;MINGDIR&#039;&#039; option to CMake in the configure step (see further down, in the quick instructions).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== configure using CMake ==&lt;br /&gt;
&lt;br /&gt;
Note, as of 2020, cmake-3.10.1-win64-x64.msi from https://cmake.org/files/v3.10/ works, 3.18 has issues detecting zlib.&lt;br /&gt;
&lt;br /&gt;
* run the &#039;&#039;cmake-gui&#039;&#039; and select a source and a build directory&lt;br /&gt;
* press &#039;&#039;&#039;Configure&#039;&#039;&#039; and follow the instructions&lt;br /&gt;
* specify native compilers by entering the paths to gcc.exe and g++.exe from your mingw64-builds directory&lt;br /&gt;
* if you wish to build the full portable version (install-spring), then make sure to set the CMAKE_INSTALL_PREFIX as well&lt;br /&gt;
* In case of configuration errors make sure AI_TYPES variable is set to NONE (default is ALL). This should remedy the issues press &#039;&#039;&#039;Configure&#039;&#039;&#039; again (Remark: Setting NATIVE works as well (tested in commit 9108cae116))&lt;br /&gt;
* This is where you can specify the build type, REL for release, DEBUG for debug build, and RELWITHDEBINFO for a mix&lt;br /&gt;
* press &#039;&#039;&#039;Generate&#039;&#039;&#039;&lt;br /&gt;
* open a console (&#039;&#039;cmd.exe&#039;&#039;), &#039;&#039;cd&#039;&#039; into your &#039;&#039;&#039;build&#039;&#039;&#039; directory&lt;br /&gt;
* &#039;&#039;optional:&#039;&#039; for multi-threaded compilation, the &#039;&#039;mingw32-make&#039;&#039; part may differ on your system: &amp;lt;code&amp;gt;&#039;&#039;&amp;lt;pre&amp;gt;set MAKE_COMMAND=mingw32-make -j2&amp;lt;/pre&amp;gt;&#039;&#039;&amp;lt;/code&amp;gt; (use -j4 for 4 threads). For codeblocks configure CMAKE_CODEBLOCKS_MAKE_ARGUMENTS as -j4 &lt;br /&gt;
* compile with: &amp;lt;code&amp;gt;&#039;&#039;&amp;lt;pre&amp;gt;mingw32-make install-spring&amp;lt;/pre&amp;gt;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* compile just the engine (spring.exe) with: &amp;lt;code&amp;gt;&#039;&#039;&amp;lt;pre&amp;gt;mingw32-make engine-legacy&amp;lt;/pre&amp;gt;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Generating the AI Sources/Wrappers===&lt;br /&gt;
&lt;br /&gt;
you can either build the wrapper:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;make Cpp-AIWrapper&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or generate all sources, in case you don&#039;t need the binary:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;make generateSources&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Possible Problems===&lt;br /&gt;
* If you have successfully compiled but don&#039;t have an ingame graphical user interface and no widgets working, you could try downloading and compiling from the maintenance branch instead develop.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
git clone --recursive git://github.com/spring/spring.git -b maintenance&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* If you get &amp;lt;span class=warning&amp;gt;undefined reference to `_Unwind_Resume&#039;&amp;lt;/span&amp;gt; linking errors, deinstall &#039;&#039;whole&#039;&#039; MinGW and reinstall it with &#039;&#039;sjlj&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* When you installed an old version of MinGW/TDM and forgot to deinstall it correctly, &amp;lt;code&amp;gt;gcc.exe&amp;lt;/code&amp;gt; &amp;amp; &amp;lt;code&amp;gt;g++.exe&amp;lt;/code&amp;gt; will be named &amp;lt;code&amp;gt;gcc-dw2.exe&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;g++-dw2.exe&amp;lt;/code&amp;gt;. CMake will then fail to find the correct one, first try to deinstall anything mingw related and reinstall everything. If that didn&#039;t helped just rename the files. If even that doesn&#039;t help open cmake-gui and click the advanced button and set the paths to the correct files yourself (&amp;lt;code&amp;gt;CMAKE_C_COMPILER&amp;lt;/code&amp;gt; &amp;amp; &amp;lt;code&amp;gt;CMAKE_CXX_COMPILER&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Notes ===&lt;br /&gt;
&lt;br /&gt;
You can still use Visual Studio 2012 as described below to edit the code. This is very useful because it allows excellent code navigation, and it highlights syntax errors and trivial mistakes before compiling. &lt;br /&gt;
&lt;br /&gt;
For debugging mingw builds, you can aquire a windows build of gdb from http://www.equation.com/servlet/equation.cmd?fa=gdb&lt;br /&gt;
&lt;br /&gt;
To start debugging, copy &#039;&#039;gdb.exe&#039;&#039; to your build output directory, and launch it with &#039;&#039;gdb spring.exe&#039;&#039;. You can supply command line arguments to &#039;&#039;spring.exe&#039;&#039; with &#039;&#039;gdb --args spring.exe myreplayfile.sdf&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Compiling with Visual Studio (not officially supported!)=&lt;br /&gt;
Currently Visual Studio lacks some c++ features it doesn&#039;t compile spring!&lt;br /&gt;
&lt;br /&gt;
==General Visual Studio Notes==&lt;br /&gt;
When developing using Visual Studio keep in mind:&lt;br /&gt;
*&amp;lt;span class=&amp;quot;warning&amp;quot;&amp;gt;It&#039;s experimental and not proved to compile or run!&amp;lt;/span&amp;gt;&lt;br /&gt;
*&amp;lt;span class=&amp;quot;warning&amp;quot;&amp;gt;Your VS build won&#039;t sync with GCC builds in multiplayer mode&amp;lt;/span&amp;gt;&lt;br /&gt;
*AIs built with Visual Studio will work with the mingw32 release builds thanks to the C AI Interface, however this interface may change when newer releases are made&lt;br /&gt;
*Running any non-LUA AI on VS built Spring will crash it&lt;br /&gt;
&lt;br /&gt;
===2012 (v11)===&lt;br /&gt;
&lt;br /&gt;
Install [http://www.microsoft.com/visualstudio/eng/downloads#d-express-windows-desktop Visual Studio 2012 Express for Windows Desktop], [http://www.microsoft.com/en-us/download/confirmation.aspx?id=35515 Visual C++ Compiler November 2012 CTP], [http://www.cmake.org/ cmake], [http://www.7-zip.org 7-zip] and [http://msysgit.github.io/ msysgit].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From the Startmenu run &amp;quot;VS2012 x86 Native Tools Command Prompt&amp;quot; and type:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
set PATH=%PATH%;%PROGRAMFILES%\git\bin;%PROGRAMFILES%\cmake 2.8\bin\&lt;br /&gt;
git clone --recursive git://github.com/spring/spring.git -b develop&lt;br /&gt;
cd spring&lt;br /&gt;
git clone git://github.com/spring/vclibs11.git vclibs&lt;br /&gt;
cmake -G &amp;quot;Visual Studio 11&amp;quot; .&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now start visual studio &amp;amp; open Spring.sln. Select &amp;quot;engine-legacy&amp;quot; as default project, as AIs and ofter stuff are known to fail to compile on visual studio.&lt;br /&gt;
&lt;br /&gt;
In the Project Properties, make sure to [http://stackoverflow.com/questions/13238408/variadic-template-in-vs-2012-visual-c-november-2012-ctp select the Microsoft Visual C++ Compiler Nov 2012 CTP].&lt;br /&gt;
&lt;br /&gt;
Note: Visual Studio 2012 Express for Windows Desktop is for free, but requires a registration after 30 days (to get a free license).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Tulipe</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=UI_commands&amp;diff=18827</id>
		<title>UI commands</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=UI_commands&amp;diff=18827"/>
		<updated>2019-10-04T16:10:16Z</updated>

		<summary type="html">&lt;p&gt;Tulipe: /* &amp;quot;the the&amp;quot; remplaced by &amp;quot;the&amp;quot; and some changes for the description of &amp;quot;/bind&amp;quot; command*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Lua_Scripting|Lua Scripting]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
=How to use the console=&lt;br /&gt;
The ingame chat is the console. Open with hitting the `&amp;lt;code&amp;gt;return&amp;lt;/code&amp;gt;` or `&amp;lt;code&amp;gt;enter&amp;lt;/code&amp;gt;` key.&lt;br /&gt;
If you want to enter a command into ingame chat, you must add a &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; in front&amp;lt;br&amp;gt;&lt;br /&gt;
for example: &amp;lt;code&amp;gt;/commandhelp&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Some commands will also autocomplete if you press &amp;lt;code&amp;gt;TAB&amp;lt;/code&amp;gt;. So if you enter &amp;quot;/com&amp;quot; and then to press TAB, it will complete it to `/command` and tells you there is `/commandhelp` &amp;amp; `/commandlist`, if you now enter either `l` or `h` and press TAB again it will complete to one of them.&lt;br /&gt;
&lt;br /&gt;
Also commands are not case-sensitive.&lt;br /&gt;
&lt;br /&gt;
=Lists of commands, some are even explained=&lt;br /&gt;
&lt;br /&gt;
For a complete (excluding Lua commands &amp;amp; some engine `actions`) use:&lt;br /&gt;
&amp;lt;code&amp;gt;/commandlist&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example output (104.0):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow:auto; width:auto;&amp;quot;&amp;gt;&lt;br /&gt;
Chat commands plus description&lt;br /&gt;
==============================&lt;br /&gt;
/Atm                             (synced)    Gives 1000 metal and 1000 energy to the issuing players team&lt;br /&gt;
/Cheat                           (synced)    Enables/Disables cheating, which is required for a lot of other commands to be usable&lt;br /&gt;
/Destroy                         (synced)    Destroys one or multiple units by unit-ID, instantly&lt;br /&gt;
/DevLua                          (synced)    Enables/Disables Lua dev-mode (can cause desyncs if enabled)&lt;br /&gt;
/EditDefs                        (synced)    Allows/Disallows editing of unit-, feature- and weapon-defs through Lua&lt;br /&gt;
/Give [amount] &amp;lt;objectName|&#039;all&#039;&amp;gt;(synced)    Places one or multiple units of a single or multiple types on the map, instantly; by default to your own team. Example : /give 10 corkrog 3 - gives team 3 10 corkrogs.&lt;br /&gt;
/GlobalLOS                       (synced)    Enables/Disables global line-of-sight, which makes the whole map permanently visible to everyone or to a specific allyteam&lt;br /&gt;
/GodMode                         (synced)    Enables/Disables god-mode, which allows all players (even spectators) to control all units (even during replays, which will DESYNC them)&lt;br /&gt;
/LuaGaia                         (synced)    Allows reloading or disabling LuaGaia, and to send a chat message to LuaGaia scripts&lt;br /&gt;
/LuaRules                        (synced)    Allows reloading or disabling LuaRules, and to send a chat message to LuaRules scripts&lt;br /&gt;
/NoCost                          (synced)    Enables/Disables everything-for-free, which allows everyone to build everything for zero resource costs&lt;br /&gt;
/NoHelp                          (synced)    Enables/Disables widgets (LuaUI control)&lt;br /&gt;
/NoSpecDraw                      (synced)    Allows/Disallows spectators to draw on the map&lt;br /&gt;
/NoSpectatorChat                 (synced)    Enables/Disables spectators to use the chat&lt;br /&gt;
/ReloadCEGs                      (synced)    Reloads CEG scripts&lt;br /&gt;
/ReloadCOB                       (synced)    Reloads COB scripts&lt;br /&gt;
/Skip                            (synced)    Fast-forwards to a given frame, or stops fast-forwarding&lt;br /&gt;
/Take                            (synced)    Transfers all units of allied teams without any active players to the team of the issuing player&lt;br /&gt;
/AdvMapShading                   (unsynced)  Set or toggle advanced map shading mode&lt;br /&gt;
/AdvModelShading                 (unsynced)  Set or toggle advanced model shading mode&lt;br /&gt;
/AIControl                       (unsynced)  Creates a new instance of a Skirmish AI, to let it controll a specific team&lt;br /&gt;
/AIKill                          (unsynced)  Kills the Skirmish AI controlling a specified team&lt;br /&gt;
/AIList                          (unsynced)  Prints a list of all currently active Skirmish AIs&lt;br /&gt;
/AIReload                        (unsynced)  Reloads the Skirmish AI controlling a specified team&lt;br /&gt;
/AirMesh                         (unsynced)  Show/Hide the smooth air-mesh map overlay&lt;br /&gt;
/AllMapMarks                     (unsynced)  Show/Hide all map marks drawn so far&lt;br /&gt;
/Ally                            (unsynced)  Starts/Ends alliance of the local players ally-team with another ally-team&lt;br /&gt;
/ATM                             (unsynced)  Redirects command /ATM to its synced processor&lt;br /&gt;
/BufferText                      (unsynced)  Write the argument string(s) directly to the console history, but not anywhere else. This is useful for fast manual issuing of the command, later on&lt;br /&gt;
/Chat                            (unsynced)  Starts waiting for intput to be sent to &lt;br /&gt;
/ChatAll                         (unsynced)  Starts waiting for intput to be sent to All&lt;br /&gt;
/ChatAlly                        (unsynced)  Starts waiting for intput to be sent to Ally&lt;br /&gt;
/ChatSpec                        (unsynced)  Starts waiting for intput to be sent to Spec&lt;br /&gt;
/ClearMapMarks                   (unsynced)  Remove all map marks drawn so far&lt;br /&gt;
/Clock                           (unsynced)  Shows a small digital clock indicating the local time&lt;br /&gt;
/CmdColors                       (unsynced)  Reloads cmdcolors.txt&lt;br /&gt;
/CommandHelp                     (unsynced)  Prints info about a specific chat command (so far only synced/unsynced and the description)&lt;br /&gt;
/CommandList                     (unsynced)  Prints all the available chat commands with description (if available) to the console&lt;br /&gt;
/Console                         (unsynced)  Enables/Disables the in-game console&lt;br /&gt;
/ControlUnit                     (unsynced)  Start to first-person-control a unit&lt;br /&gt;
/Crash                           (unsynced)  Invoke an artificial crash through a NULL-pointer dereference (SIGSEGV)&lt;br /&gt;
/CreateVideo                     (unsynced)  Start/Stop capturing a video of the game in progress&lt;br /&gt;
/Cross                           (unsynced)  Allows one to exchange and modify the appearance of the cross/mouse-pointer in first-person-control view&lt;br /&gt;
/CtrlPanel                       (unsynced)  Reloads GUI config&lt;br /&gt;
/Debug                           (unsynced)  Enable/Disable debug rendering mode&lt;br /&gt;
/DebugColVol                     (unsynced)  Enable/Disable drawing of collision volumes&lt;br /&gt;
/DebugDrawAI                     (unsynced)  Enables/Disables debug drawing for AIs&lt;br /&gt;
/DebugGL                         (unsynced)  Enable/Disable OpenGL debug-context output&lt;br /&gt;
/DebugGLErrors                   (unsynced)  Enable/Disable OpenGL debug-errors&lt;br /&gt;
/DebugInfo                       (unsynced)  Print debug info to the chat/log-file about either: sound, profiling&lt;br /&gt;
/DebugPath                       (unsynced)  Enable/Disable drawing of pathfinder debug-data&lt;br /&gt;
/DebugTraceRay                   (unsynced)  Enable/Disable drawing of traceray debug-data&lt;br /&gt;
/DecGUIOpacity                   (unsynced)  Decreases the opacity(see-through-ness) of GUI elements&lt;br /&gt;
/DecreaseViewRadius              (unsynced)  Decrease the view radius (higher performance, uglier view)&lt;br /&gt;
/Deselect                        (unsynced)  Deselects all currently selected units&lt;br /&gt;
/Destroy                         (unsynced)  Destroys one or multiple units by unit-ID, instantly&lt;br /&gt;
/DistDraw                        (unsynced)  Set the distance between units and camera, at which they turn into far-textures (flat/texture-only representation) (Graphic setting)&lt;br /&gt;
/DistIcon                        (unsynced)  Set the distance between units and camera, at which they turn into icons (Graphic setting)&lt;br /&gt;
/DivByZero                       (unsynced)  Invoke an artificial crash by performing a division-by-Zero&lt;br /&gt;
/DrawInMap                       (unsynced)  Enables drawing on the map&lt;br /&gt;
/DrawLabel                       (unsynced)  Draws a label on the map at the current mouse-pointer position&lt;br /&gt;
/DrawTrees                       (unsynced)  Enable/Disable engine-tree rendering&lt;br /&gt;
/DumpState                       (unsynced)  dump game-state to file&lt;br /&gt;
/DynamicSky                      (unsynced)  Enable/Disable dynamic-sky rendering&lt;br /&gt;
/Echo                            (unsynced)  Write a string to the log file&lt;br /&gt;
/EndGraph                        (unsynced)  Enables/Disables the statistics graphs shown at the end of the game&lt;br /&gt;
/Exception                       (unsynced)  Invoke an artificial crash by throwing an std::runtime_error&lt;br /&gt;
/Font                            (unsynced)  Reloads the fonts&lt;br /&gt;
/FPS                             (unsynced)  Shows/Hides the frames-per-second indicator&lt;br /&gt;
/FPSHud                          (unsynced)  Enables/Disables HUD (GUI interface) shown in first-person-control mode&lt;br /&gt;
/Fullscreen                      (unsynced)  Switches fullscreen mode&lt;br /&gt;
/GameInfo                        (unsynced)  Enables/Disables game-info panel rendering&lt;br /&gt;
/GatherMode                      (unsynced)  Enter/Leave gather-wait command mode&lt;br /&gt;
/Give                            (unsynced)  Places one or multiple units of a single or multiple types on the map, instantly; by default to your own team&lt;br /&gt;
/GrabInput                       (unsynced)  Prevents/Enables the mouse from leaving the game window (windowed mode only)&lt;br /&gt;
/GroundDecals                    (unsynced)  Disable/Enable ground-decals rendering. Ground-decals are things like scars appearing on the map after an explosion.&lt;br /&gt;
/GroundDetail                    (unsynced)  Set the level of ground detail&lt;br /&gt;
/Group                           (unsynced)  Allows modifying the members of a group&lt;br /&gt;
/Group0                          (unsynced)  Allows modifying the members of group 0&lt;br /&gt;
/Group1                          (unsynced)  Allows modifying the members of group 1&lt;br /&gt;
/Group2                          (unsynced)  Allows modifying the members of group 2&lt;br /&gt;
/Group3                          (unsynced)  Allows modifying the members of group 3&lt;br /&gt;
/Group4                          (unsynced)  Allows modifying the members of group 4&lt;br /&gt;
/Group5                          (unsynced)  Allows modifying the members of group 5&lt;br /&gt;
/Group6                          (unsynced)  Allows modifying the members of group 6&lt;br /&gt;
/Group7                          (unsynced)  Allows modifying the members of group 7&lt;br /&gt;
/Group8                          (unsynced)  Allows modifying the members of group 8&lt;br /&gt;
/Group9                          (unsynced)  Allows modifying the members of group 9&lt;br /&gt;
/HardwareCursor                  (unsynced)  Enables/Disables hardware mouse-cursor support&lt;br /&gt;
/HideInterface                   (unsynced)  Hide/Show the GUI controlls&lt;br /&gt;
/IncGUIOpacity                   (unsynced)  Increases the opacity(see-through-ness) of GUI elements&lt;br /&gt;
/IncreaseViewRadius              (unsynced)  Increase the view radius (lower performance, nicer view)&lt;br /&gt;
/Info                            (unsynced)  Shows/Hides the player roster&lt;br /&gt;
/InputTextGeo                    (unsynced)  Move and/or resize the input-text field (the &amp;quot;Say: &amp;quot; thing)&lt;br /&gt;
/LastMsgPos                      (unsynced)  Moves the camera to show the position of the last message&lt;br /&gt;
/LessClouds                      (unsynced)  Decreases the density of clouds (higher performance)&lt;br /&gt;
/LessTrees                       (unsynced)  Decreases distance from the camera at which trees are still drawn&lt;br /&gt;
/LODScale                        (unsynced)  Set the scale for either of: LOD (level-of-detail), shadow-LOD, reflection-LOD, refraction-LOD&lt;br /&gt;
/LuaGaia                         (unsynced)  Redirects command /LuaGaia to its synced processor&lt;br /&gt;
/LuaRules                        (unsynced)  Redirects command /LuaRules to its synced processor&lt;br /&gt;
/LuaSave                         (unsynced)  Save the game state to a specific file, add -y to overwrite when file is already present&lt;br /&gt;
/LuaUI                           (unsynced)  Allows one to reload or disable LuaUI, or alternatively to send a chat message to LuaUI&lt;br /&gt;
/MapBorder                       (unsynced)  Set or toggle map-border rendering&lt;br /&gt;
/MapMarks                        (unsynced)  Enables/Disables map marks rendering&lt;br /&gt;
/mapmeshdrawer                   (unsynced)  Switch map-mesh rendering modes: 0=GCM, 1=HLOD, 2=ROAM&lt;br /&gt;
/MapShadowPolyOffset             (unsynced)  &lt;br /&gt;
/MaxNanoParticles                (unsynced)  Set the maximum number of nano-particles (Graphic setting)&lt;br /&gt;
/MaxParticles                    (unsynced)  Set the maximum number of particles (Graphics setting)&lt;br /&gt;
/MiniMap                         (unsynced)  FIXME document subcommands&lt;br /&gt;
/MoreClouds                      (unsynced)  Increases the density of clouds (lower performance)&lt;br /&gt;
/MoreTrees                       (unsynced)  Increases distance from the camera at which trees are still drawn&lt;br /&gt;
/Mouse1                          (unsynced)  Simulates a mouse button press of button 1&lt;br /&gt;
/Mouse2                          (unsynced)  Simulates a mouse button press of button 2&lt;br /&gt;
/Mouse3                          (unsynced)  Simulates a mouse button press of button 3&lt;br /&gt;
/Mouse4                          (unsynced)  Simulates a mouse button press of button 4&lt;br /&gt;
/Mouse5                          (unsynced)  Simulates a mouse button press of button 5&lt;br /&gt;
/MoveBack                        (unsynced)  Moves the camera Back a bit&lt;br /&gt;
/MoveDown                        (unsynced)  Moves the camera Down a bit&lt;br /&gt;
/MoveFast                        (unsynced)  Moves the camera Fast a bit&lt;br /&gt;
/MoveForward                     (unsynced)  Moves the camera Forward a bit&lt;br /&gt;
/MoveLeft                        (unsynced)  Moves the camera Left a bit&lt;br /&gt;
/MoveRight                       (unsynced)  Moves the camera Right a bit&lt;br /&gt;
/MoveSlow                        (unsynced)  Moves the camera Slow a bit&lt;br /&gt;
/MoveUp                          (unsynced)  Moves the camera Up a bit&lt;br /&gt;
/MuteSound                       (unsynced)  Mute/Unmute the current sound system&lt;br /&gt;
/NoLuaDraw                       (unsynced)  Allow/Disallow Lua to draw on the map&lt;br /&gt;
/PasteText                       (unsynced)  Paste either the argument string(s) or if none given, the content of the clip-board to chat input&lt;br /&gt;
/Pause                           (unsynced)  Pause/Unpause the game&lt;br /&gt;
/QuitForce                       (unsynced)  Exits game to system&lt;br /&gt;
/QuitMenu                        (unsynced)  Opens the quit-menu, if it is not already open&lt;br /&gt;
/QuitMessage                     (unsynced)  Deprecated, see /Quit instead (was used to quite the game immediately)&lt;br /&gt;
/ReloadForce                     (unsynced)  Exits game to menu&lt;br /&gt;
/ReloadGame                      (unsynced)  Restarts the game with the initially provided start-script&lt;br /&gt;
/ReloadShaders                   (unsynced)  Reloads all engine shaders&lt;br /&gt;
/ResBar                          (unsynced)  Shows/Hides team resource storage indicator bar&lt;br /&gt;
/Resync                          (unsynced)  Redirects command /Resync to its synced processor&lt;br /&gt;
/SafeGL                          (unsynced)  Enables/Disables OpenGL safe-mode&lt;br /&gt;
/Save                            (unsynced)  Save the game state to a specific file, add -y to overwrite when file is already present&lt;br /&gt;
/SaveGame                        (unsynced)  Save the game state to QuickSave.ssf (BROKEN)&lt;br /&gt;
/Say                             (unsynced)  Say something in (public) chat&lt;br /&gt;
/ScreenShot                      (unsynced)  Take a screen-shot of the current view&lt;br /&gt;
/Select                          (unsynced)  &amp;lt;chat command description: Select&amp;gt;&lt;br /&gt;
/SelectCycle                     (unsynced)  &amp;lt;chat command description: SelectUnits&amp;gt;&lt;br /&gt;
/SelectUnits                     (unsynced)  &amp;lt;chat command description: SelectUnits&amp;gt;&lt;br /&gt;
/Send                            (unsynced)  Send a string as raw network message to the game host (for debugging only)&lt;br /&gt;
/Set                             (unsynced)  Set a config key=value pair&lt;br /&gt;
/Shadows                         (unsynced)  Disables/Enables shadows rendering: -1=disabled, 0=off, 1=full shadows, 2=skip terrain shadows&lt;br /&gt;
/ShareDialog                     (unsynced)  Opens the share dialog, which allows you to send units and resources to other players&lt;br /&gt;
/ShowElevation                   (unsynced)  Enable rendering of the auxiliary height-map overlay&lt;br /&gt;
/ShowMetalMap                    (unsynced)  Enable rendering of the auxiliary metal-map overlay&lt;br /&gt;
/ShowPathCost                    (unsynced)  Enable rendering of the path cost-map overlay&lt;br /&gt;
/ShowPathFlow                    (unsynced)  Enable/Disable rendering of the path flow-map overlay&lt;br /&gt;
/ShowPathHeat                    (unsynced)  Enable/Disable rendering of the path heat-map overlay&lt;br /&gt;
/ShowPathTraversability          (unsynced)  Enable rendering of the path traversability-map overlay&lt;br /&gt;
/ShowPathType                    (unsynced)  Shows path traversability for a given MoveDefName, MoveDefID or UnitDefName&lt;br /&gt;
/ShowStandard                    (unsynced)  Disable rendering of all auxiliary map overlays&lt;br /&gt;
/SlowDown                        (unsynced)  Decreases the simulation speed. The engine will try to simulate less frames per second&lt;br /&gt;
/SoundChannelEnable              (unsynced)  Enable/Disable specific sound channels: UnitReply, General, Battle, UserInterface, Music&lt;br /&gt;
/SoundDevice                     (unsynced)  Switch the sound output system (currently only OpenAL / NullAudio)&lt;br /&gt;
/SpecFullView                    (unsynced)  Sets or toggles between full LOS or ally-team LOS, if the local user is a spectator&lt;br /&gt;
/Spectator                       (unsynced)  Lets the local user give up control over a team, and start spectating&lt;br /&gt;
/SpecTeam                        (unsynced)  Lets the local user specify the team to follow, if he is a spectator&lt;br /&gt;
/Speed                           (unsynced)  Shows/Hides the simulation speed indicator&lt;br /&gt;
/SpeedControl                    (unsynced)  Sets how server adjusts speed according to player&#039;s load (CPU), 1: use average, 2: use highest,&lt;br /&gt;
/SpeedUp                         (unsynced)  Increases the simulation speed. The engine will try to simulate more frames per second&lt;br /&gt;
/Take                            (unsynced)  Redirects command /Take to its synced processor&lt;br /&gt;
/Team                            (unsynced)  Lets the local user change to another team&lt;br /&gt;
/TeamHighlight                   (unsynced)  Enables/Disables uncontrolled team blinking&lt;br /&gt;
/ToggleInfo                      (unsynced)  Toggles current info texture view&lt;br /&gt;
/ToggleLOS                       (unsynced)  Enable rendering of the auxiliary LOS-map overlay&lt;br /&gt;
/ToolTip                         (unsynced)  Enables/Disables the general tool-tips, displayed when hovering over units. features or the map&lt;br /&gt;
/Track                           (unsynced)  Start following the selected unit(s) with the camera&lt;br /&gt;
/TrackMode                       (unsynced)  Shift through different ways of following selected unit(s)&lt;br /&gt;
/TrackOff                        (unsynced)  Stop following the selected unit(s) with the camera&lt;br /&gt;
/TSet                            (unsynced)  Set a config key=value pair in the overlay, meaning it will not be persisted for future games&lt;br /&gt;
/ViewSelection                   (unsynced)  Moves the camera to the center of the currently selected units&lt;br /&gt;
/VSync                           (unsynced)  Enables/Disables vertical-sync (Graphics setting)&lt;br /&gt;
/W                               (unsynced)  Say something in private to a specific player, by player-name&lt;br /&gt;
/Water                           (unsynced)  Set water rendering mode: 0=basic, 1=reflective, 2=dynamic, 3=reflective&amp;amp;refractive, 4=bump-mapped&lt;br /&gt;
/WByNum                          (unsynced)  Say something in private to a specific player, by player-ID&lt;br /&gt;
/WireMap                         (unsynced)  Toggle wireframe-mode drawing of map geometry&lt;br /&gt;
/WireModel                       (unsynced)  Toggle wireframe-mode drawing of model geometry&lt;br /&gt;
/WireSky                         (unsynced)  Toggle wireframe-mode drawing of skydome geometry&lt;br /&gt;
/WireTree                        (unsynced)  Toggle wireframe-mode drawing of tree geometry&lt;br /&gt;
/WireWater                       (unsynced)  Toggle wireframe-mode drawing of water geometry&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
More commands:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow:auto; width:auto;&amp;quot;&amp;gt;&lt;br /&gt;
/bind &amp;lt;keyset&amp;gt; &amp;lt;action&amp;gt;                      Binds a key or key combination. Example with a key: /bind a reclaim. Example with a &amp;quot;key combination&amp;quot;: /bind ctrl+a reclaim&lt;br /&gt;
/luagaia reload                              Reloads gaia gadgets&lt;br /&gt;
/luarules reload                             Reloads gadgets&lt;br /&gt;
/luaui reload&lt;br /&gt;
/luaui tweakgui                              Tweak mode on&lt;br /&gt;
/Setmaxspeed #	                             Changes the maximum speed (default is 3.0)&lt;br /&gt;
/Setminspeed #                               Changes the minimum speed (default is 0.3)&lt;br /&gt;
/unbind &amp;lt;keyset&amp;gt; &amp;lt;action&amp;gt;                    Unbinds a key or key combination. Example: /unbind a reclaim.&lt;br /&gt;
/unbindaction &amp;lt;action&amp;gt;	                     Unbinds all keybinds that uses &amp;lt;action&amp;gt;.&lt;br /&gt;
/unbindkeyset &amp;lt;keyset&amp;gt;	                     Unbinds all bindings that uses &amp;lt;keyset&amp;gt;.&lt;br /&gt;
/unbindall	                             Unbinds all keys except the chat keybinding.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Scripting=&lt;br /&gt;
In Lua scripts, these commands can be used like this:&amp;lt;br&amp;gt;&lt;br /&gt;
Spring.SendCommands(&amp;quot;resbar 0&amp;quot;)&amp;lt;br&amp;gt;&lt;br /&gt;
notice the missing / when used like this.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Help]]&lt;/div&gt;</summary>
		<author><name>Tulipe</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=UI_commands&amp;diff=18826</id>
		<title>UI commands</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=UI_commands&amp;diff=18826"/>
		<updated>2019-10-01T11:14:47Z</updated>

		<summary type="html">&lt;p&gt;Tulipe: /* Spelling of a title */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Lua_Scripting|Lua Scripting]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
=How to use the console=&lt;br /&gt;
The ingame chat is the console. Open with hitting the `&amp;lt;code&amp;gt;return&amp;lt;/code&amp;gt;` or `&amp;lt;code&amp;gt;enter&amp;lt;/code&amp;gt;` key.&lt;br /&gt;
If you want to enter a command into ingame chat, you must add a &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; in front&amp;lt;br&amp;gt;&lt;br /&gt;
for example: &amp;lt;code&amp;gt;/commandhelp&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Some commands will also autocomplete if you press &amp;lt;code&amp;gt;TAB&amp;lt;/code&amp;gt;. So if you enter &amp;quot;/com&amp;quot; and then to press TAB, it will complete it to `/command` and tells you there is `/commandhelp` &amp;amp; `/commandlist`, if you now enter either `l` or `h` and press TAB again it will complete to one of them.&lt;br /&gt;
&lt;br /&gt;
Also commands are not case-sensitive.&lt;br /&gt;
&lt;br /&gt;
=Lists of commands, some are even explained=&lt;br /&gt;
&lt;br /&gt;
For a complete (excluding Lua commands &amp;amp; some engine `actions`) use:&lt;br /&gt;
&amp;lt;code&amp;gt;/commandlist&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example output (104.0):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow:auto; width:auto;&amp;quot;&amp;gt;&lt;br /&gt;
Chat commands plus description&lt;br /&gt;
==============================&lt;br /&gt;
/Atm                             (synced)    Gives 1000 metal and 1000 energy to the issuing players team&lt;br /&gt;
/Cheat                           (synced)    Enables/Disables cheating, which is required for a lot of other commands to be usable&lt;br /&gt;
/Destroy                         (synced)    Destroys one or multiple units by unit-ID, instantly&lt;br /&gt;
/DevLua                          (synced)    Enables/Disables Lua dev-mode (can cause desyncs if enabled)&lt;br /&gt;
/EditDefs                        (synced)    Allows/Disallows editing of unit-, feature- and weapon-defs through Lua&lt;br /&gt;
/Give [amount] &amp;lt;objectName|&#039;all&#039;&amp;gt;(synced)    Places one or multiple units of a single or multiple types on the map, instantly; by default to your own team. Example : /give 10 corkrog 3 - gives team 3 10 corkrogs.&lt;br /&gt;
/GlobalLOS                       (synced)    Enables/Disables global line-of-sight, which makes the whole map permanently visible to everyone or to a specific allyteam&lt;br /&gt;
/GodMode                         (synced)    Enables/Disables god-mode, which allows all players (even spectators) to control all units (even during replays, which will DESYNC them)&lt;br /&gt;
/LuaGaia                         (synced)    Allows reloading or disabling LuaGaia, and to send a chat message to LuaGaia scripts&lt;br /&gt;
/LuaRules                        (synced)    Allows reloading or disabling LuaRules, and to send a chat message to LuaRules scripts&lt;br /&gt;
/NoCost                          (synced)    Enables/Disables everything-for-free, which allows everyone to build everything for zero resource costs&lt;br /&gt;
/NoHelp                          (synced)    Enables/Disables widgets (LuaUI control)&lt;br /&gt;
/NoSpecDraw                      (synced)    Allows/Disallows spectators to draw on the map&lt;br /&gt;
/NoSpectatorChat                 (synced)    Enables/Disables spectators to use the chat&lt;br /&gt;
/ReloadCEGs                      (synced)    Reloads CEG scripts&lt;br /&gt;
/ReloadCOB                       (synced)    Reloads COB scripts&lt;br /&gt;
/Skip                            (synced)    Fast-forwards to a given frame, or stops fast-forwarding&lt;br /&gt;
/Take                            (synced)    Transfers all units of allied teams without any active players to the team of the issuing player&lt;br /&gt;
/AdvMapShading                   (unsynced)  Set or toggle advanced map shading mode&lt;br /&gt;
/AdvModelShading                 (unsynced)  Set or toggle advanced model shading mode&lt;br /&gt;
/AIControl                       (unsynced)  Creates a new instance of a Skirmish AI, to let it controll a specific team&lt;br /&gt;
/AIKill                          (unsynced)  Kills the Skirmish AI controlling a specified team&lt;br /&gt;
/AIList                          (unsynced)  Prints a list of all currently active Skirmish AIs&lt;br /&gt;
/AIReload                        (unsynced)  Reloads the Skirmish AI controlling a specified team&lt;br /&gt;
/AirMesh                         (unsynced)  Show/Hide the smooth air-mesh map overlay&lt;br /&gt;
/AllMapMarks                     (unsynced)  Show/Hide all map marks drawn so far&lt;br /&gt;
/Ally                            (unsynced)  Starts/Ends alliance of the local players ally-team with another ally-team&lt;br /&gt;
/ATM                             (unsynced)  Redirects command /ATM to its synced processor&lt;br /&gt;
/BufferText                      (unsynced)  Write the argument string(s) directly to the console history, but not anywhere else. This is useful for fast manual issuing of the command, later on&lt;br /&gt;
/Chat                            (unsynced)  Starts waiting for intput to be sent to &lt;br /&gt;
/ChatAll                         (unsynced)  Starts waiting for intput to be sent to All&lt;br /&gt;
/ChatAlly                        (unsynced)  Starts waiting for intput to be sent to Ally&lt;br /&gt;
/ChatSpec                        (unsynced)  Starts waiting for intput to be sent to Spec&lt;br /&gt;
/ClearMapMarks                   (unsynced)  Remove all map marks drawn so far&lt;br /&gt;
/Clock                           (unsynced)  Shows a small digital clock indicating the local time&lt;br /&gt;
/CmdColors                       (unsynced)  Reloads cmdcolors.txt&lt;br /&gt;
/CommandHelp                     (unsynced)  Prints info about a specific chat command (so far only synced/unsynced and the description)&lt;br /&gt;
/CommandList                     (unsynced)  Prints all the available chat commands with description (if available) to the console&lt;br /&gt;
/Console                         (unsynced)  Enables/Disables the in-game console&lt;br /&gt;
/ControlUnit                     (unsynced)  Start to first-person-control a unit&lt;br /&gt;
/Crash                           (unsynced)  Invoke an artificial crash through a NULL-pointer dereference (SIGSEGV)&lt;br /&gt;
/CreateVideo                     (unsynced)  Start/Stop capturing a video of the game in progress&lt;br /&gt;
/Cross                           (unsynced)  Allows one to exchange and modify the appearance of the cross/mouse-pointer in first-person-control view&lt;br /&gt;
/CtrlPanel                       (unsynced)  Reloads GUI config&lt;br /&gt;
/Debug                           (unsynced)  Enable/Disable debug rendering mode&lt;br /&gt;
/DebugColVol                     (unsynced)  Enable/Disable drawing of collision volumes&lt;br /&gt;
/DebugDrawAI                     (unsynced)  Enables/Disables debug drawing for AIs&lt;br /&gt;
/DebugGL                         (unsynced)  Enable/Disable OpenGL debug-context output&lt;br /&gt;
/DebugGLErrors                   (unsynced)  Enable/Disable OpenGL debug-errors&lt;br /&gt;
/DebugInfo                       (unsynced)  Print debug info to the chat/log-file about either: sound, profiling&lt;br /&gt;
/DebugPath                       (unsynced)  Enable/Disable drawing of pathfinder debug-data&lt;br /&gt;
/DebugTraceRay                   (unsynced)  Enable/Disable drawing of traceray debug-data&lt;br /&gt;
/DecGUIOpacity                   (unsynced)  Decreases the the opacity(see-through-ness) of GUI elements&lt;br /&gt;
/DecreaseViewRadius              (unsynced)  Decrease the view radius (higher performance, uglier view)&lt;br /&gt;
/Deselect                        (unsynced)  Deselects all currently selected units&lt;br /&gt;
/Destroy                         (unsynced)  Destroys one or multiple units by unit-ID, instantly&lt;br /&gt;
/DistDraw                        (unsynced)  Set the distance between units and camera, at which they turn into far-textures (flat/texture-only representation) (Graphic setting)&lt;br /&gt;
/DistIcon                        (unsynced)  Set the distance between units and camera, at which they turn into icons (Graphic setting)&lt;br /&gt;
/DivByZero                       (unsynced)  Invoke an artificial crash by performing a division-by-Zero&lt;br /&gt;
/DrawInMap                       (unsynced)  Enables drawing on the map&lt;br /&gt;
/DrawLabel                       (unsynced)  Draws a label on the map at the current mouse-pointer position&lt;br /&gt;
/DrawTrees                       (unsynced)  Enable/Disable engine-tree rendering&lt;br /&gt;
/DumpState                       (unsynced)  dump game-state to file&lt;br /&gt;
/DynamicSky                      (unsynced)  Enable/Disable dynamic-sky rendering&lt;br /&gt;
/Echo                            (unsynced)  Write a string to the log file&lt;br /&gt;
/EndGraph                        (unsynced)  Enables/Disables the statistics graphs shown at the end of the game&lt;br /&gt;
/Exception                       (unsynced)  Invoke an artificial crash by throwing an std::runtime_error&lt;br /&gt;
/Font                            (unsynced)  Reloads the fonts&lt;br /&gt;
/FPS                             (unsynced)  Shows/Hides the frames-per-second indicator&lt;br /&gt;
/FPSHud                          (unsynced)  Enables/Disables HUD (GUI interface) shown in first-person-control mode&lt;br /&gt;
/Fullscreen                      (unsynced)  Switches fullscreen mode&lt;br /&gt;
/GameInfo                        (unsynced)  Enables/Disables game-info panel rendering&lt;br /&gt;
/GatherMode                      (unsynced)  Enter/Leave gather-wait command mode&lt;br /&gt;
/Give                            (unsynced)  Places one or multiple units of a single or multiple types on the map, instantly; by default to your own team&lt;br /&gt;
/GrabInput                       (unsynced)  Prevents/Enables the mouse from leaving the game window (windowed mode only)&lt;br /&gt;
/GroundDecals                    (unsynced)  Disable/Enable ground-decals rendering. Ground-decals are things like scars appearing on the map after an explosion.&lt;br /&gt;
/GroundDetail                    (unsynced)  Set the level of ground detail&lt;br /&gt;
/Group                           (unsynced)  Allows modifying the members of a group&lt;br /&gt;
/Group0                          (unsynced)  Allows modifying the members of group 0&lt;br /&gt;
/Group1                          (unsynced)  Allows modifying the members of group 1&lt;br /&gt;
/Group2                          (unsynced)  Allows modifying the members of group 2&lt;br /&gt;
/Group3                          (unsynced)  Allows modifying the members of group 3&lt;br /&gt;
/Group4                          (unsynced)  Allows modifying the members of group 4&lt;br /&gt;
/Group5                          (unsynced)  Allows modifying the members of group 5&lt;br /&gt;
/Group6                          (unsynced)  Allows modifying the members of group 6&lt;br /&gt;
/Group7                          (unsynced)  Allows modifying the members of group 7&lt;br /&gt;
/Group8                          (unsynced)  Allows modifying the members of group 8&lt;br /&gt;
/Group9                          (unsynced)  Allows modifying the members of group 9&lt;br /&gt;
/HardwareCursor                  (unsynced)  Enables/Disables hardware mouse-cursor support&lt;br /&gt;
/HideInterface                   (unsynced)  Hide/Show the GUI controlls&lt;br /&gt;
/IncGUIOpacity                   (unsynced)  Increases the the opacity(see-through-ness) of GUI elements&lt;br /&gt;
/IncreaseViewRadius              (unsynced)  Increase the view radius (lower performance, nicer view)&lt;br /&gt;
/Info                            (unsynced)  Shows/Hides the player roster&lt;br /&gt;
/InputTextGeo                    (unsynced)  Move and/or resize the input-text field (the &amp;quot;Say: &amp;quot; thing)&lt;br /&gt;
/LastMsgPos                      (unsynced)  Moves the camera to show the position of the last message&lt;br /&gt;
/LessClouds                      (unsynced)  Decreases the density of clouds (higher performance)&lt;br /&gt;
/LessTrees                       (unsynced)  Decreases distance from the camera at which trees are still drawn&lt;br /&gt;
/LODScale                        (unsynced)  Set the scale for either of: LOD (level-of-detail), shadow-LOD, reflection-LOD, refraction-LOD&lt;br /&gt;
/LuaGaia                         (unsynced)  Redirects command /LuaGaia to its synced processor&lt;br /&gt;
/LuaRules                        (unsynced)  Redirects command /LuaRules to its synced processor&lt;br /&gt;
/LuaSave                         (unsynced)  Save the game state to a specific file, add -y to overwrite when file is already present&lt;br /&gt;
/LuaUI                           (unsynced)  Allows one to reload or disable LuaUI, or alternatively to send a chat message to LuaUI&lt;br /&gt;
/MapBorder                       (unsynced)  Set or toggle map-border rendering&lt;br /&gt;
/MapMarks                        (unsynced)  Enables/Disables map marks rendering&lt;br /&gt;
/mapmeshdrawer                   (unsynced)  Switch map-mesh rendering modes: 0=GCM, 1=HLOD, 2=ROAM&lt;br /&gt;
/MapShadowPolyOffset             (unsynced)  &lt;br /&gt;
/MaxNanoParticles                (unsynced)  Set the maximum number of nano-particles (Graphic setting)&lt;br /&gt;
/MaxParticles                    (unsynced)  Set the maximum number of particles (Graphics setting)&lt;br /&gt;
/MiniMap                         (unsynced)  FIXME document subcommands&lt;br /&gt;
/MoreClouds                      (unsynced)  Increases the density of clouds (lower performance)&lt;br /&gt;
/MoreTrees                       (unsynced)  Increases distance from the camera at which trees are still drawn&lt;br /&gt;
/Mouse1                          (unsynced)  Simulates a mouse button press of button 1&lt;br /&gt;
/Mouse2                          (unsynced)  Simulates a mouse button press of button 2&lt;br /&gt;
/Mouse3                          (unsynced)  Simulates a mouse button press of button 3&lt;br /&gt;
/Mouse4                          (unsynced)  Simulates a mouse button press of button 4&lt;br /&gt;
/Mouse5                          (unsynced)  Simulates a mouse button press of button 5&lt;br /&gt;
/MoveBack                        (unsynced)  Moves the camera Back a bit&lt;br /&gt;
/MoveDown                        (unsynced)  Moves the camera Down a bit&lt;br /&gt;
/MoveFast                        (unsynced)  Moves the camera Fast a bit&lt;br /&gt;
/MoveForward                     (unsynced)  Moves the camera Forward a bit&lt;br /&gt;
/MoveLeft                        (unsynced)  Moves the camera Left a bit&lt;br /&gt;
/MoveRight                       (unsynced)  Moves the camera Right a bit&lt;br /&gt;
/MoveSlow                        (unsynced)  Moves the camera Slow a bit&lt;br /&gt;
/MoveUp                          (unsynced)  Moves the camera Up a bit&lt;br /&gt;
/MuteSound                       (unsynced)  Mute/Unmute the current sound system&lt;br /&gt;
/NoLuaDraw                       (unsynced)  Allow/Disallow Lua to draw on the map&lt;br /&gt;
/PasteText                       (unsynced)  Paste either the argument string(s) or if none given, the content of the clip-board to chat input&lt;br /&gt;
/Pause                           (unsynced)  Pause/Unpause the game&lt;br /&gt;
/QuitForce                       (unsynced)  Exits game to system&lt;br /&gt;
/QuitMenu                        (unsynced)  Opens the quit-menu, if it is not already open&lt;br /&gt;
/QuitMessage                     (unsynced)  Deprecated, see /Quit instead (was used to quite the game immediately)&lt;br /&gt;
/ReloadForce                     (unsynced)  Exits game to menu&lt;br /&gt;
/ReloadGame                      (unsynced)  Restarts the game with the initially provided start-script&lt;br /&gt;
/ReloadShaders                   (unsynced)  Reloads all engine shaders&lt;br /&gt;
/ResBar                          (unsynced)  Shows/Hides team resource storage indicator bar&lt;br /&gt;
/Resync                          (unsynced)  Redirects command /Resync to its synced processor&lt;br /&gt;
/SafeGL                          (unsynced)  Enables/Disables OpenGL safe-mode&lt;br /&gt;
/Save                            (unsynced)  Save the game state to a specific file, add -y to overwrite when file is already present&lt;br /&gt;
/SaveGame                        (unsynced)  Save the game state to QuickSave.ssf (BROKEN)&lt;br /&gt;
/Say                             (unsynced)  Say something in (public) chat&lt;br /&gt;
/ScreenShot                      (unsynced)  Take a screen-shot of the current view&lt;br /&gt;
/Select                          (unsynced)  &amp;lt;chat command description: Select&amp;gt;&lt;br /&gt;
/SelectCycle                     (unsynced)  &amp;lt;chat command description: SelectUnits&amp;gt;&lt;br /&gt;
/SelectUnits                     (unsynced)  &amp;lt;chat command description: SelectUnits&amp;gt;&lt;br /&gt;
/Send                            (unsynced)  Send a string as raw network message to the game host (for debugging only)&lt;br /&gt;
/Set                             (unsynced)  Set a config key=value pair&lt;br /&gt;
/Shadows                         (unsynced)  Disables/Enables shadows rendering: -1=disabled, 0=off, 1=full shadows, 2=skip terrain shadows&lt;br /&gt;
/ShareDialog                     (unsynced)  Opens the share dialog, which allows you to send units and resources to other players&lt;br /&gt;
/ShowElevation                   (unsynced)  Enable rendering of the auxiliary height-map overlay&lt;br /&gt;
/ShowMetalMap                    (unsynced)  Enable rendering of the auxiliary metal-map overlay&lt;br /&gt;
/ShowPathCost                    (unsynced)  Enable rendering of the path cost-map overlay&lt;br /&gt;
/ShowPathFlow                    (unsynced)  Enable/Disable rendering of the path flow-map overlay&lt;br /&gt;
/ShowPathHeat                    (unsynced)  Enable/Disable rendering of the path heat-map overlay&lt;br /&gt;
/ShowPathTraversability          (unsynced)  Enable rendering of the path traversability-map overlay&lt;br /&gt;
/ShowPathType                    (unsynced)  Shows path traversability for a given MoveDefName, MoveDefID or UnitDefName&lt;br /&gt;
/ShowStandard                    (unsynced)  Disable rendering of all auxiliary map overlays&lt;br /&gt;
/SlowDown                        (unsynced)  Decreases the simulation speed. The engine will try to simulate less frames per second&lt;br /&gt;
/SoundChannelEnable              (unsynced)  Enable/Disable specific sound channels: UnitReply, General, Battle, UserInterface, Music&lt;br /&gt;
/SoundDevice                     (unsynced)  Switch the sound output system (currently only OpenAL / NullAudio)&lt;br /&gt;
/SpecFullView                    (unsynced)  Sets or toggles between full LOS or ally-team LOS, if the local user is a spectator&lt;br /&gt;
/Spectator                       (unsynced)  Lets the local user give up control over a team, and start spectating&lt;br /&gt;
/SpecTeam                        (unsynced)  Lets the local user specify the team to follow, if he is a spectator&lt;br /&gt;
/Speed                           (unsynced)  Shows/Hides the simulation speed indicator&lt;br /&gt;
/SpeedControl                    (unsynced)  Sets how server adjusts speed according to player&#039;s load (CPU), 1: use average, 2: use highest,&lt;br /&gt;
/SpeedUp                         (unsynced)  Increases the simulation speed. The engine will try to simulate more frames per second&lt;br /&gt;
/Take                            (unsynced)  Redirects command /Take to its synced processor&lt;br /&gt;
/Team                            (unsynced)  Lets the local user change to another team&lt;br /&gt;
/TeamHighlight                   (unsynced)  Enables/Disables uncontrolled team blinking&lt;br /&gt;
/ToggleInfo                      (unsynced)  Toggles current info texture view&lt;br /&gt;
/ToggleLOS                       (unsynced)  Enable rendering of the auxiliary LOS-map overlay&lt;br /&gt;
/ToolTip                         (unsynced)  Enables/Disables the general tool-tips, displayed when hovering over units. features or the map&lt;br /&gt;
/Track                           (unsynced)  Start following the selected unit(s) with the camera&lt;br /&gt;
/TrackMode                       (unsynced)  Shift through different ways of following selected unit(s)&lt;br /&gt;
/TrackOff                        (unsynced)  Stop following the selected unit(s) with the camera&lt;br /&gt;
/TSet                            (unsynced)  Set a config key=value pair in the overlay, meaning it will not be persisted for future games&lt;br /&gt;
/ViewSelection                   (unsynced)  Moves the camera to the center of the currently selected units&lt;br /&gt;
/VSync                           (unsynced)  Enables/Disables vertical-sync (Graphics setting)&lt;br /&gt;
/W                               (unsynced)  Say something in private to a specific player, by player-name&lt;br /&gt;
/Water                           (unsynced)  Set water rendering mode: 0=basic, 1=reflective, 2=dynamic, 3=reflective&amp;amp;refractive, 4=bump-mapped&lt;br /&gt;
/WByNum                          (unsynced)  Say something in private to a specific player, by player-ID&lt;br /&gt;
/WireMap                         (unsynced)  Toggle wireframe-mode drawing of map geometry&lt;br /&gt;
/WireModel                       (unsynced)  Toggle wireframe-mode drawing of model geometry&lt;br /&gt;
/WireSky                         (unsynced)  Toggle wireframe-mode drawing of skydome geometry&lt;br /&gt;
/WireTree                        (unsynced)  Toggle wireframe-mode drawing of tree geometry&lt;br /&gt;
/WireWater                       (unsynced)  Toggle wireframe-mode drawing of water geometry&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
More commands:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow:auto; width:auto;&amp;quot;&amp;gt;&lt;br /&gt;
/bind &amp;lt;keyset&amp;gt; &amp;lt;action&amp;gt;                      Binds a key or key combination. Example: /bind a reclaim.&lt;br /&gt;
/luagaia reload                              Reloads gaia gadgets&lt;br /&gt;
/luarules reload                             Reloads gadgets&lt;br /&gt;
/luaui reload&lt;br /&gt;
/luaui tweakgui                              Tweak mode on&lt;br /&gt;
/Setmaxspeed #	                             Changes the maximum speed (default is 3.0)&lt;br /&gt;
/Setminspeed #                               Changes the minimum speed (default is 0.3)&lt;br /&gt;
/unbind &amp;lt;keyset&amp;gt; &amp;lt;action&amp;gt;                    Unbinds a key or key combination. Example: /unbind a reclaim.&lt;br /&gt;
/unbindaction &amp;lt;action&amp;gt;	                     Unbinds all keybinds that uses &amp;lt;action&amp;gt;.&lt;br /&gt;
/unbindkeyset &amp;lt;keyset&amp;gt;	                     Unbinds all bindings that uses &amp;lt;keyset&amp;gt;.&lt;br /&gt;
/unbindall	                             Unbinds all keys except the chat keybinding.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Scripting=&lt;br /&gt;
In Lua scripts, these commands can be used like this:&amp;lt;br&amp;gt;&lt;br /&gt;
Spring.SendCommands(&amp;quot;resbar 0&amp;quot;)&amp;lt;br&amp;gt;&lt;br /&gt;
notice the missing / when used like this.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Help]]&lt;/div&gt;</summary>
		<author><name>Tulipe</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=UI_commands&amp;diff=18825</id>
		<title>UI commands</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=UI_commands&amp;diff=18825"/>
		<updated>2019-10-01T11:10:14Z</updated>

		<summary type="html">&lt;p&gt;Tulipe: /* some commands not showed in output. Placed at the end */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Lua_Scripting|Lua Scripting]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
=How to use the console=&lt;br /&gt;
The ingame chat is the console. Open with hitting the `&amp;lt;code&amp;gt;return&amp;lt;/code&amp;gt;` or `&amp;lt;code&amp;gt;enter&amp;lt;/code&amp;gt;` key.&lt;br /&gt;
If you want to enter a command into ingame chat, you must add a &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; in front&amp;lt;br&amp;gt;&lt;br /&gt;
for example: &amp;lt;code&amp;gt;/commandhelp&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Some commands will also autocomplete if you press &amp;lt;code&amp;gt;TAB&amp;lt;/code&amp;gt;. So if you enter &amp;quot;/com&amp;quot; and then to press TAB, it will complete it to `/command` and tells you there is `/commandhelp` &amp;amp; `/commandlist`, if you now enter either `l` or `h` and press TAB again it will complete to one of them.&lt;br /&gt;
&lt;br /&gt;
Also commands are not case-sensitive.&lt;br /&gt;
&lt;br /&gt;
=List of commands, some are even explained=&lt;br /&gt;
&lt;br /&gt;
For a complete (excluding Lua commands &amp;amp; some engine `actions`) use:&lt;br /&gt;
&amp;lt;code&amp;gt;/commandlist&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example output (104.0):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow:auto; width:auto;&amp;quot;&amp;gt;&lt;br /&gt;
Chat commands plus description&lt;br /&gt;
==============================&lt;br /&gt;
/Atm                             (synced)    Gives 1000 metal and 1000 energy to the issuing players team&lt;br /&gt;
/Cheat                           (synced)    Enables/Disables cheating, which is required for a lot of other commands to be usable&lt;br /&gt;
/Destroy                         (synced)    Destroys one or multiple units by unit-ID, instantly&lt;br /&gt;
/DevLua                          (synced)    Enables/Disables Lua dev-mode (can cause desyncs if enabled)&lt;br /&gt;
/EditDefs                        (synced)    Allows/Disallows editing of unit-, feature- and weapon-defs through Lua&lt;br /&gt;
/Give [amount] &amp;lt;objectName|&#039;all&#039;&amp;gt;(synced)    Places one or multiple units of a single or multiple types on the map, instantly; by default to your own team. Example : /give 10 corkrog 3 - gives team 3 10 corkrogs.&lt;br /&gt;
/GlobalLOS                       (synced)    Enables/Disables global line-of-sight, which makes the whole map permanently visible to everyone or to a specific allyteam&lt;br /&gt;
/GodMode                         (synced)    Enables/Disables god-mode, which allows all players (even spectators) to control all units (even during replays, which will DESYNC them)&lt;br /&gt;
/LuaGaia                         (synced)    Allows reloading or disabling LuaGaia, and to send a chat message to LuaGaia scripts&lt;br /&gt;
/LuaRules                        (synced)    Allows reloading or disabling LuaRules, and to send a chat message to LuaRules scripts&lt;br /&gt;
/NoCost                          (synced)    Enables/Disables everything-for-free, which allows everyone to build everything for zero resource costs&lt;br /&gt;
/NoHelp                          (synced)    Enables/Disables widgets (LuaUI control)&lt;br /&gt;
/NoSpecDraw                      (synced)    Allows/Disallows spectators to draw on the map&lt;br /&gt;
/NoSpectatorChat                 (synced)    Enables/Disables spectators to use the chat&lt;br /&gt;
/ReloadCEGs                      (synced)    Reloads CEG scripts&lt;br /&gt;
/ReloadCOB                       (synced)    Reloads COB scripts&lt;br /&gt;
/Skip                            (synced)    Fast-forwards to a given frame, or stops fast-forwarding&lt;br /&gt;
/Take                            (synced)    Transfers all units of allied teams without any active players to the team of the issuing player&lt;br /&gt;
/AdvMapShading                   (unsynced)  Set or toggle advanced map shading mode&lt;br /&gt;
/AdvModelShading                 (unsynced)  Set or toggle advanced model shading mode&lt;br /&gt;
/AIControl                       (unsynced)  Creates a new instance of a Skirmish AI, to let it controll a specific team&lt;br /&gt;
/AIKill                          (unsynced)  Kills the Skirmish AI controlling a specified team&lt;br /&gt;
/AIList                          (unsynced)  Prints a list of all currently active Skirmish AIs&lt;br /&gt;
/AIReload                        (unsynced)  Reloads the Skirmish AI controlling a specified team&lt;br /&gt;
/AirMesh                         (unsynced)  Show/Hide the smooth air-mesh map overlay&lt;br /&gt;
/AllMapMarks                     (unsynced)  Show/Hide all map marks drawn so far&lt;br /&gt;
/Ally                            (unsynced)  Starts/Ends alliance of the local players ally-team with another ally-team&lt;br /&gt;
/ATM                             (unsynced)  Redirects command /ATM to its synced processor&lt;br /&gt;
/BufferText                      (unsynced)  Write the argument string(s) directly to the console history, but not anywhere else. This is useful for fast manual issuing of the command, later on&lt;br /&gt;
/Chat                            (unsynced)  Starts waiting for intput to be sent to &lt;br /&gt;
/ChatAll                         (unsynced)  Starts waiting for intput to be sent to All&lt;br /&gt;
/ChatAlly                        (unsynced)  Starts waiting for intput to be sent to Ally&lt;br /&gt;
/ChatSpec                        (unsynced)  Starts waiting for intput to be sent to Spec&lt;br /&gt;
/ClearMapMarks                   (unsynced)  Remove all map marks drawn so far&lt;br /&gt;
/Clock                           (unsynced)  Shows a small digital clock indicating the local time&lt;br /&gt;
/CmdColors                       (unsynced)  Reloads cmdcolors.txt&lt;br /&gt;
/CommandHelp                     (unsynced)  Prints info about a specific chat command (so far only synced/unsynced and the description)&lt;br /&gt;
/CommandList                     (unsynced)  Prints all the available chat commands with description (if available) to the console&lt;br /&gt;
/Console                         (unsynced)  Enables/Disables the in-game console&lt;br /&gt;
/ControlUnit                     (unsynced)  Start to first-person-control a unit&lt;br /&gt;
/Crash                           (unsynced)  Invoke an artificial crash through a NULL-pointer dereference (SIGSEGV)&lt;br /&gt;
/CreateVideo                     (unsynced)  Start/Stop capturing a video of the game in progress&lt;br /&gt;
/Cross                           (unsynced)  Allows one to exchange and modify the appearance of the cross/mouse-pointer in first-person-control view&lt;br /&gt;
/CtrlPanel                       (unsynced)  Reloads GUI config&lt;br /&gt;
/Debug                           (unsynced)  Enable/Disable debug rendering mode&lt;br /&gt;
/DebugColVol                     (unsynced)  Enable/Disable drawing of collision volumes&lt;br /&gt;
/DebugDrawAI                     (unsynced)  Enables/Disables debug drawing for AIs&lt;br /&gt;
/DebugGL                         (unsynced)  Enable/Disable OpenGL debug-context output&lt;br /&gt;
/DebugGLErrors                   (unsynced)  Enable/Disable OpenGL debug-errors&lt;br /&gt;
/DebugInfo                       (unsynced)  Print debug info to the chat/log-file about either: sound, profiling&lt;br /&gt;
/DebugPath                       (unsynced)  Enable/Disable drawing of pathfinder debug-data&lt;br /&gt;
/DebugTraceRay                   (unsynced)  Enable/Disable drawing of traceray debug-data&lt;br /&gt;
/DecGUIOpacity                   (unsynced)  Decreases the the opacity(see-through-ness) of GUI elements&lt;br /&gt;
/DecreaseViewRadius              (unsynced)  Decrease the view radius (higher performance, uglier view)&lt;br /&gt;
/Deselect                        (unsynced)  Deselects all currently selected units&lt;br /&gt;
/Destroy                         (unsynced)  Destroys one or multiple units by unit-ID, instantly&lt;br /&gt;
/DistDraw                        (unsynced)  Set the distance between units and camera, at which they turn into far-textures (flat/texture-only representation) (Graphic setting)&lt;br /&gt;
/DistIcon                        (unsynced)  Set the distance between units and camera, at which they turn into icons (Graphic setting)&lt;br /&gt;
/DivByZero                       (unsynced)  Invoke an artificial crash by performing a division-by-Zero&lt;br /&gt;
/DrawInMap                       (unsynced)  Enables drawing on the map&lt;br /&gt;
/DrawLabel                       (unsynced)  Draws a label on the map at the current mouse-pointer position&lt;br /&gt;
/DrawTrees                       (unsynced)  Enable/Disable engine-tree rendering&lt;br /&gt;
/DumpState                       (unsynced)  dump game-state to file&lt;br /&gt;
/DynamicSky                      (unsynced)  Enable/Disable dynamic-sky rendering&lt;br /&gt;
/Echo                            (unsynced)  Write a string to the log file&lt;br /&gt;
/EndGraph                        (unsynced)  Enables/Disables the statistics graphs shown at the end of the game&lt;br /&gt;
/Exception                       (unsynced)  Invoke an artificial crash by throwing an std::runtime_error&lt;br /&gt;
/Font                            (unsynced)  Reloads the fonts&lt;br /&gt;
/FPS                             (unsynced)  Shows/Hides the frames-per-second indicator&lt;br /&gt;
/FPSHud                          (unsynced)  Enables/Disables HUD (GUI interface) shown in first-person-control mode&lt;br /&gt;
/Fullscreen                      (unsynced)  Switches fullscreen mode&lt;br /&gt;
/GameInfo                        (unsynced)  Enables/Disables game-info panel rendering&lt;br /&gt;
/GatherMode                      (unsynced)  Enter/Leave gather-wait command mode&lt;br /&gt;
/Give                            (unsynced)  Places one or multiple units of a single or multiple types on the map, instantly; by default to your own team&lt;br /&gt;
/GrabInput                       (unsynced)  Prevents/Enables the mouse from leaving the game window (windowed mode only)&lt;br /&gt;
/GroundDecals                    (unsynced)  Disable/Enable ground-decals rendering. Ground-decals are things like scars appearing on the map after an explosion.&lt;br /&gt;
/GroundDetail                    (unsynced)  Set the level of ground detail&lt;br /&gt;
/Group                           (unsynced)  Allows modifying the members of a group&lt;br /&gt;
/Group0                          (unsynced)  Allows modifying the members of group 0&lt;br /&gt;
/Group1                          (unsynced)  Allows modifying the members of group 1&lt;br /&gt;
/Group2                          (unsynced)  Allows modifying the members of group 2&lt;br /&gt;
/Group3                          (unsynced)  Allows modifying the members of group 3&lt;br /&gt;
/Group4                          (unsynced)  Allows modifying the members of group 4&lt;br /&gt;
/Group5                          (unsynced)  Allows modifying the members of group 5&lt;br /&gt;
/Group6                          (unsynced)  Allows modifying the members of group 6&lt;br /&gt;
/Group7                          (unsynced)  Allows modifying the members of group 7&lt;br /&gt;
/Group8                          (unsynced)  Allows modifying the members of group 8&lt;br /&gt;
/Group9                          (unsynced)  Allows modifying the members of group 9&lt;br /&gt;
/HardwareCursor                  (unsynced)  Enables/Disables hardware mouse-cursor support&lt;br /&gt;
/HideInterface                   (unsynced)  Hide/Show the GUI controlls&lt;br /&gt;
/IncGUIOpacity                   (unsynced)  Increases the the opacity(see-through-ness) of GUI elements&lt;br /&gt;
/IncreaseViewRadius              (unsynced)  Increase the view radius (lower performance, nicer view)&lt;br /&gt;
/Info                            (unsynced)  Shows/Hides the player roster&lt;br /&gt;
/InputTextGeo                    (unsynced)  Move and/or resize the input-text field (the &amp;quot;Say: &amp;quot; thing)&lt;br /&gt;
/LastMsgPos                      (unsynced)  Moves the camera to show the position of the last message&lt;br /&gt;
/LessClouds                      (unsynced)  Decreases the density of clouds (higher performance)&lt;br /&gt;
/LessTrees                       (unsynced)  Decreases distance from the camera at which trees are still drawn&lt;br /&gt;
/LODScale                        (unsynced)  Set the scale for either of: LOD (level-of-detail), shadow-LOD, reflection-LOD, refraction-LOD&lt;br /&gt;
/LuaGaia                         (unsynced)  Redirects command /LuaGaia to its synced processor&lt;br /&gt;
/LuaRules                        (unsynced)  Redirects command /LuaRules to its synced processor&lt;br /&gt;
/LuaSave                         (unsynced)  Save the game state to a specific file, add -y to overwrite when file is already present&lt;br /&gt;
/LuaUI                           (unsynced)  Allows one to reload or disable LuaUI, or alternatively to send a chat message to LuaUI&lt;br /&gt;
/MapBorder                       (unsynced)  Set or toggle map-border rendering&lt;br /&gt;
/MapMarks                        (unsynced)  Enables/Disables map marks rendering&lt;br /&gt;
/mapmeshdrawer                   (unsynced)  Switch map-mesh rendering modes: 0=GCM, 1=HLOD, 2=ROAM&lt;br /&gt;
/MapShadowPolyOffset             (unsynced)  &lt;br /&gt;
/MaxNanoParticles                (unsynced)  Set the maximum number of nano-particles (Graphic setting)&lt;br /&gt;
/MaxParticles                    (unsynced)  Set the maximum number of particles (Graphics setting)&lt;br /&gt;
/MiniMap                         (unsynced)  FIXME document subcommands&lt;br /&gt;
/MoreClouds                      (unsynced)  Increases the density of clouds (lower performance)&lt;br /&gt;
/MoreTrees                       (unsynced)  Increases distance from the camera at which trees are still drawn&lt;br /&gt;
/Mouse1                          (unsynced)  Simulates a mouse button press of button 1&lt;br /&gt;
/Mouse2                          (unsynced)  Simulates a mouse button press of button 2&lt;br /&gt;
/Mouse3                          (unsynced)  Simulates a mouse button press of button 3&lt;br /&gt;
/Mouse4                          (unsynced)  Simulates a mouse button press of button 4&lt;br /&gt;
/Mouse5                          (unsynced)  Simulates a mouse button press of button 5&lt;br /&gt;
/MoveBack                        (unsynced)  Moves the camera Back a bit&lt;br /&gt;
/MoveDown                        (unsynced)  Moves the camera Down a bit&lt;br /&gt;
/MoveFast                        (unsynced)  Moves the camera Fast a bit&lt;br /&gt;
/MoveForward                     (unsynced)  Moves the camera Forward a bit&lt;br /&gt;
/MoveLeft                        (unsynced)  Moves the camera Left a bit&lt;br /&gt;
/MoveRight                       (unsynced)  Moves the camera Right a bit&lt;br /&gt;
/MoveSlow                        (unsynced)  Moves the camera Slow a bit&lt;br /&gt;
/MoveUp                          (unsynced)  Moves the camera Up a bit&lt;br /&gt;
/MuteSound                       (unsynced)  Mute/Unmute the current sound system&lt;br /&gt;
/NoLuaDraw                       (unsynced)  Allow/Disallow Lua to draw on the map&lt;br /&gt;
/PasteText                       (unsynced)  Paste either the argument string(s) or if none given, the content of the clip-board to chat input&lt;br /&gt;
/Pause                           (unsynced)  Pause/Unpause the game&lt;br /&gt;
/QuitForce                       (unsynced)  Exits game to system&lt;br /&gt;
/QuitMenu                        (unsynced)  Opens the quit-menu, if it is not already open&lt;br /&gt;
/QuitMessage                     (unsynced)  Deprecated, see /Quit instead (was used to quite the game immediately)&lt;br /&gt;
/ReloadForce                     (unsynced)  Exits game to menu&lt;br /&gt;
/ReloadGame                      (unsynced)  Restarts the game with the initially provided start-script&lt;br /&gt;
/ReloadShaders                   (unsynced)  Reloads all engine shaders&lt;br /&gt;
/ResBar                          (unsynced)  Shows/Hides team resource storage indicator bar&lt;br /&gt;
/Resync                          (unsynced)  Redirects command /Resync to its synced processor&lt;br /&gt;
/SafeGL                          (unsynced)  Enables/Disables OpenGL safe-mode&lt;br /&gt;
/Save                            (unsynced)  Save the game state to a specific file, add -y to overwrite when file is already present&lt;br /&gt;
/SaveGame                        (unsynced)  Save the game state to QuickSave.ssf (BROKEN)&lt;br /&gt;
/Say                             (unsynced)  Say something in (public) chat&lt;br /&gt;
/ScreenShot                      (unsynced)  Take a screen-shot of the current view&lt;br /&gt;
/Select                          (unsynced)  &amp;lt;chat command description: Select&amp;gt;&lt;br /&gt;
/SelectCycle                     (unsynced)  &amp;lt;chat command description: SelectUnits&amp;gt;&lt;br /&gt;
/SelectUnits                     (unsynced)  &amp;lt;chat command description: SelectUnits&amp;gt;&lt;br /&gt;
/Send                            (unsynced)  Send a string as raw network message to the game host (for debugging only)&lt;br /&gt;
/Set                             (unsynced)  Set a config key=value pair&lt;br /&gt;
/Shadows                         (unsynced)  Disables/Enables shadows rendering: -1=disabled, 0=off, 1=full shadows, 2=skip terrain shadows&lt;br /&gt;
/ShareDialog                     (unsynced)  Opens the share dialog, which allows you to send units and resources to other players&lt;br /&gt;
/ShowElevation                   (unsynced)  Enable rendering of the auxiliary height-map overlay&lt;br /&gt;
/ShowMetalMap                    (unsynced)  Enable rendering of the auxiliary metal-map overlay&lt;br /&gt;
/ShowPathCost                    (unsynced)  Enable rendering of the path cost-map overlay&lt;br /&gt;
/ShowPathFlow                    (unsynced)  Enable/Disable rendering of the path flow-map overlay&lt;br /&gt;
/ShowPathHeat                    (unsynced)  Enable/Disable rendering of the path heat-map overlay&lt;br /&gt;
/ShowPathTraversability          (unsynced)  Enable rendering of the path traversability-map overlay&lt;br /&gt;
/ShowPathType                    (unsynced)  Shows path traversability for a given MoveDefName, MoveDefID or UnitDefName&lt;br /&gt;
/ShowStandard                    (unsynced)  Disable rendering of all auxiliary map overlays&lt;br /&gt;
/SlowDown                        (unsynced)  Decreases the simulation speed. The engine will try to simulate less frames per second&lt;br /&gt;
/SoundChannelEnable              (unsynced)  Enable/Disable specific sound channels: UnitReply, General, Battle, UserInterface, Music&lt;br /&gt;
/SoundDevice                     (unsynced)  Switch the sound output system (currently only OpenAL / NullAudio)&lt;br /&gt;
/SpecFullView                    (unsynced)  Sets or toggles between full LOS or ally-team LOS, if the local user is a spectator&lt;br /&gt;
/Spectator                       (unsynced)  Lets the local user give up control over a team, and start spectating&lt;br /&gt;
/SpecTeam                        (unsynced)  Lets the local user specify the team to follow, if he is a spectator&lt;br /&gt;
/Speed                           (unsynced)  Shows/Hides the simulation speed indicator&lt;br /&gt;
/SpeedControl                    (unsynced)  Sets how server adjusts speed according to player&#039;s load (CPU), 1: use average, 2: use highest,&lt;br /&gt;
/SpeedUp                         (unsynced)  Increases the simulation speed. The engine will try to simulate more frames per second&lt;br /&gt;
/Take                            (unsynced)  Redirects command /Take to its synced processor&lt;br /&gt;
/Team                            (unsynced)  Lets the local user change to another team&lt;br /&gt;
/TeamHighlight                   (unsynced)  Enables/Disables uncontrolled team blinking&lt;br /&gt;
/ToggleInfo                      (unsynced)  Toggles current info texture view&lt;br /&gt;
/ToggleLOS                       (unsynced)  Enable rendering of the auxiliary LOS-map overlay&lt;br /&gt;
/ToolTip                         (unsynced)  Enables/Disables the general tool-tips, displayed when hovering over units. features or the map&lt;br /&gt;
/Track                           (unsynced)  Start following the selected unit(s) with the camera&lt;br /&gt;
/TrackMode                       (unsynced)  Shift through different ways of following selected unit(s)&lt;br /&gt;
/TrackOff                        (unsynced)  Stop following the selected unit(s) with the camera&lt;br /&gt;
/TSet                            (unsynced)  Set a config key=value pair in the overlay, meaning it will not be persisted for future games&lt;br /&gt;
/ViewSelection                   (unsynced)  Moves the camera to the center of the currently selected units&lt;br /&gt;
/VSync                           (unsynced)  Enables/Disables vertical-sync (Graphics setting)&lt;br /&gt;
/W                               (unsynced)  Say something in private to a specific player, by player-name&lt;br /&gt;
/Water                           (unsynced)  Set water rendering mode: 0=basic, 1=reflective, 2=dynamic, 3=reflective&amp;amp;refractive, 4=bump-mapped&lt;br /&gt;
/WByNum                          (unsynced)  Say something in private to a specific player, by player-ID&lt;br /&gt;
/WireMap                         (unsynced)  Toggle wireframe-mode drawing of map geometry&lt;br /&gt;
/WireModel                       (unsynced)  Toggle wireframe-mode drawing of model geometry&lt;br /&gt;
/WireSky                         (unsynced)  Toggle wireframe-mode drawing of skydome geometry&lt;br /&gt;
/WireTree                        (unsynced)  Toggle wireframe-mode drawing of tree geometry&lt;br /&gt;
/WireWater                       (unsynced)  Toggle wireframe-mode drawing of water geometry&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
More commands:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow:auto; width:auto;&amp;quot;&amp;gt;&lt;br /&gt;
/bind &amp;lt;keyset&amp;gt; &amp;lt;action&amp;gt;                      Binds a key or key combination. Example: /bind a reclaim.&lt;br /&gt;
/luagaia reload                              Reloads gaia gadgets&lt;br /&gt;
/luarules reload                             Reloads gadgets&lt;br /&gt;
/luaui reload&lt;br /&gt;
/luaui tweakgui                              Tweak mode on&lt;br /&gt;
/Setmaxspeed #	                             Changes the maximum speed (default is 3.0)&lt;br /&gt;
/Setminspeed #                               Changes the minimum speed (default is 0.3)&lt;br /&gt;
/unbind &amp;lt;keyset&amp;gt; &amp;lt;action&amp;gt;                    Unbinds a key or key combination. Example: /unbind a reclaim.&lt;br /&gt;
/unbindaction &amp;lt;action&amp;gt;	                     Unbinds all keybinds that uses &amp;lt;action&amp;gt;.&lt;br /&gt;
/unbindkeyset &amp;lt;keyset&amp;gt;	                     Unbinds all bindings that uses &amp;lt;keyset&amp;gt;.&lt;br /&gt;
/unbindall	                             Unbinds all keys except the chat keybinding.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Scripting=&lt;br /&gt;
In Lua scripts, these commands can be used like this:&amp;lt;br&amp;gt;&lt;br /&gt;
Spring.SendCommands(&amp;quot;resbar 0&amp;quot;)&amp;lt;br&amp;gt;&lt;br /&gt;
notice the missing / when used like this.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Help]]&lt;/div&gt;</summary>
		<author><name>Tulipe</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=UI_commands&amp;diff=18824</id>
		<title>UI commands</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=UI_commands&amp;diff=18824"/>
		<updated>2019-09-29T13:13:22Z</updated>

		<summary type="html">&lt;p&gt;Tulipe: /* Some commands added and give command more detailed */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Lua_Scripting|Lua Scripting]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
=How to use the console=&lt;br /&gt;
The ingame chat is the console. Open with hitting the `&amp;lt;code&amp;gt;return&amp;lt;/code&amp;gt;` or `&amp;lt;code&amp;gt;enter&amp;lt;/code&amp;gt;` key.&lt;br /&gt;
If you want to enter a command into ingame chat, you must add a &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; in front&amp;lt;br&amp;gt;&lt;br /&gt;
for example: &amp;lt;code&amp;gt;/commandhelp&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Some commands will also autocomplete if you press &amp;lt;code&amp;gt;TAB&amp;lt;/code&amp;gt;. So if you enter &amp;quot;/com&amp;quot; and then to press TAB, it will complete it to `/command` and tells you there is `/commandhelp` &amp;amp; `/commandlist`, if you now enter either `l` or `h` and press TAB again it will complete to one of them.&lt;br /&gt;
&lt;br /&gt;
Also commands are not case-sensitive.&lt;br /&gt;
&lt;br /&gt;
=List of commands, some are even explained=&lt;br /&gt;
&lt;br /&gt;
For a complete (excluding Lua commands &amp;amp; some engine `actions`) use:&lt;br /&gt;
&amp;lt;code&amp;gt;/commandlist&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example output (104.0):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow:auto; width:auto;&amp;quot;&amp;gt;&lt;br /&gt;
Chat commands plus description&lt;br /&gt;
==============================&lt;br /&gt;
/Atm                             (synced)    Gives 1000 metal and 1000 energy to the issuing players team&lt;br /&gt;
/Cheat                           (synced)    Enables/Disables cheating, which is required for a lot of other commands to be usable&lt;br /&gt;
/Destroy                         (synced)    Destroys one or multiple units by unit-ID, instantly&lt;br /&gt;
/DevLua                          (synced)    Enables/Disables Lua dev-mode (can cause desyncs if enabled)&lt;br /&gt;
/EditDefs                        (synced)    Allows/Disallows editing of unit-, feature- and weapon-defs through Lua&lt;br /&gt;
/Give [amount] &amp;lt;objectName|&#039;all&#039;&amp;gt;(synced)    Places one or multiple units of a single or multiple types on the map, instantly; by default to your own team. Example : /give 10 corkrog 3 - gives team 3 10 corkrogs.&lt;br /&gt;
/GlobalLOS                       (synced)    Enables/Disables global line-of-sight, which makes the whole map permanently visible to everyone or to a specific allyteam&lt;br /&gt;
/GodMode                         (synced)    Enables/Disables god-mode, which allows all players (even spectators) to control all units (even during replays, which will DESYNC them)&lt;br /&gt;
/LuaGaia                         (synced)    Allows reloading or disabling LuaGaia, and to send a chat message to LuaGaia scripts&lt;br /&gt;
/luagaia reload                              Reloads gaia gadgets&lt;br /&gt;
/LuaRules                        (synced)    Allows reloading or disabling LuaRules, and to send a chat message to LuaRules scripts&lt;br /&gt;
/luarules reload                             Reloads gadgets&lt;br /&gt;
/NoCost                          (synced)    Enables/Disables everything-for-free, which allows everyone to build everything for zero resource costs&lt;br /&gt;
/NoHelp                          (synced)    Enables/Disables widgets (LuaUI control)&lt;br /&gt;
/NoSpecDraw                      (synced)    Allows/Disallows spectators to draw on the map&lt;br /&gt;
/NoSpectatorChat                 (synced)    Enables/Disables spectators to use the chat&lt;br /&gt;
/ReloadCEGs                      (synced)    Reloads CEG scripts&lt;br /&gt;
/ReloadCOB                       (synced)    Reloads COB scripts&lt;br /&gt;
/Skip                            (synced)    Fast-forwards to a given frame, or stops fast-forwarding&lt;br /&gt;
/Take                            (synced)    Transfers all units of allied teams without any active players to the team of the issuing player&lt;br /&gt;
/AdvMapShading                   (unsynced)  Set or toggle advanced map shading mode&lt;br /&gt;
/AdvModelShading                 (unsynced)  Set or toggle advanced model shading mode&lt;br /&gt;
/AIControl                       (unsynced)  Creates a new instance of a Skirmish AI, to let it controll a specific team&lt;br /&gt;
/AIKill                          (unsynced)  Kills the Skirmish AI controlling a specified team&lt;br /&gt;
/AIList                          (unsynced)  Prints a list of all currently active Skirmish AIs&lt;br /&gt;
/AIReload                        (unsynced)  Reloads the Skirmish AI controlling a specified team&lt;br /&gt;
/AirMesh                         (unsynced)  Show/Hide the smooth air-mesh map overlay&lt;br /&gt;
/AllMapMarks                     (unsynced)  Show/Hide all map marks drawn so far&lt;br /&gt;
/Ally                            (unsynced)  Starts/Ends alliance of the local players ally-team with another ally-team&lt;br /&gt;
/ATM                             (unsynced)  Redirects command /ATM to its synced processor&lt;br /&gt;
/bind &amp;lt;keyset&amp;gt; &amp;lt;action&amp;gt;                      Binds a key or key combination. Example: /bind a reclaim.&lt;br /&gt;
/BufferText                      (unsynced)  Write the argument string(s) directly to the console history, but not anywhere else. This is useful for fast manual issuing of the command, later on&lt;br /&gt;
/Chat                            (unsynced)  Starts waiting for intput to be sent to &lt;br /&gt;
/ChatAll                         (unsynced)  Starts waiting for intput to be sent to All&lt;br /&gt;
/ChatAlly                        (unsynced)  Starts waiting for intput to be sent to Ally&lt;br /&gt;
/ChatSpec                        (unsynced)  Starts waiting for intput to be sent to Spec&lt;br /&gt;
/ClearMapMarks                   (unsynced)  Remove all map marks drawn so far&lt;br /&gt;
/Clock                           (unsynced)  Shows a small digital clock indicating the local time&lt;br /&gt;
/CmdColors                       (unsynced)  Reloads cmdcolors.txt&lt;br /&gt;
/CommandHelp                     (unsynced)  Prints info about a specific chat command (so far only synced/unsynced and the description)&lt;br /&gt;
/CommandList                     (unsynced)  Prints all the available chat commands with description (if available) to the console&lt;br /&gt;
/Console                         (unsynced)  Enables/Disables the in-game console&lt;br /&gt;
/ControlUnit                     (unsynced)  Start to first-person-control a unit&lt;br /&gt;
/Crash                           (unsynced)  Invoke an artificial crash through a NULL-pointer dereference (SIGSEGV)&lt;br /&gt;
/CreateVideo                     (unsynced)  Start/Stop capturing a video of the game in progress&lt;br /&gt;
/Cross                           (unsynced)  Allows one to exchange and modify the appearance of the cross/mouse-pointer in first-person-control view&lt;br /&gt;
/CtrlPanel                       (unsynced)  Reloads GUI config&lt;br /&gt;
/Debug                           (unsynced)  Enable/Disable debug rendering mode&lt;br /&gt;
/DebugColVol                     (unsynced)  Enable/Disable drawing of collision volumes&lt;br /&gt;
/DebugDrawAI                     (unsynced)  Enables/Disables debug drawing for AIs&lt;br /&gt;
/DebugGL                         (unsynced)  Enable/Disable OpenGL debug-context output&lt;br /&gt;
/DebugGLErrors                   (unsynced)  Enable/Disable OpenGL debug-errors&lt;br /&gt;
/DebugInfo                       (unsynced)  Print debug info to the chat/log-file about either: sound, profiling&lt;br /&gt;
/DebugPath                       (unsynced)  Enable/Disable drawing of pathfinder debug-data&lt;br /&gt;
/DebugTraceRay                   (unsynced)  Enable/Disable drawing of traceray debug-data&lt;br /&gt;
/DecGUIOpacity                   (unsynced)  Decreases the the opacity(see-through-ness) of GUI elements&lt;br /&gt;
/DecreaseViewRadius              (unsynced)  Decrease the view radius (higher performance, uglier view)&lt;br /&gt;
/Deselect                        (unsynced)  Deselects all currently selected units&lt;br /&gt;
/Destroy                         (unsynced)  Destroys one or multiple units by unit-ID, instantly&lt;br /&gt;
/DistDraw                        (unsynced)  Set the distance between units and camera, at which they turn into far-textures (flat/texture-only representation) (Graphic setting)&lt;br /&gt;
/DistIcon                        (unsynced)  Set the distance between units and camera, at which they turn into icons (Graphic setting)&lt;br /&gt;
/DivByZero                       (unsynced)  Invoke an artificial crash by performing a division-by-Zero&lt;br /&gt;
/DrawInMap                       (unsynced)  Enables drawing on the map&lt;br /&gt;
/DrawLabel                       (unsynced)  Draws a label on the map at the current mouse-pointer position&lt;br /&gt;
/DrawTrees                       (unsynced)  Enable/Disable engine-tree rendering&lt;br /&gt;
/DumpState                       (unsynced)  dump game-state to file&lt;br /&gt;
/DynamicSky                      (unsynced)  Enable/Disable dynamic-sky rendering&lt;br /&gt;
/Echo                            (unsynced)  Write a string to the log file&lt;br /&gt;
/EndGraph                        (unsynced)  Enables/Disables the statistics graphs shown at the end of the game&lt;br /&gt;
/Exception                       (unsynced)  Invoke an artificial crash by throwing an std::runtime_error&lt;br /&gt;
/Font                            (unsynced)  Reloads the fonts&lt;br /&gt;
/FPS                             (unsynced)  Shows/Hides the frames-per-second indicator&lt;br /&gt;
/FPSHud                          (unsynced)  Enables/Disables HUD (GUI interface) shown in first-person-control mode&lt;br /&gt;
/Fullscreen                      (unsynced)  Switches fullscreen mode&lt;br /&gt;
/GameInfo                        (unsynced)  Enables/Disables game-info panel rendering&lt;br /&gt;
/GatherMode                      (unsynced)  Enter/Leave gather-wait command mode&lt;br /&gt;
/Give                            (unsynced)  Places one or multiple units of a single or multiple types on the map, instantly; by default to your own team&lt;br /&gt;
/GrabInput                       (unsynced)  Prevents/Enables the mouse from leaving the game window (windowed mode only)&lt;br /&gt;
/GroundDecals                    (unsynced)  Disable/Enable ground-decals rendering. Ground-decals are things like scars appearing on the map after an explosion.&lt;br /&gt;
/GroundDetail                    (unsynced)  Set the level of ground detail&lt;br /&gt;
/Group                           (unsynced)  Allows modifying the members of a group&lt;br /&gt;
/Group0                          (unsynced)  Allows modifying the members of group 0&lt;br /&gt;
/Group1                          (unsynced)  Allows modifying the members of group 1&lt;br /&gt;
/Group2                          (unsynced)  Allows modifying the members of group 2&lt;br /&gt;
/Group3                          (unsynced)  Allows modifying the members of group 3&lt;br /&gt;
/Group4                          (unsynced)  Allows modifying the members of group 4&lt;br /&gt;
/Group5                          (unsynced)  Allows modifying the members of group 5&lt;br /&gt;
/Group6                          (unsynced)  Allows modifying the members of group 6&lt;br /&gt;
/Group7                          (unsynced)  Allows modifying the members of group 7&lt;br /&gt;
/Group8                          (unsynced)  Allows modifying the members of group 8&lt;br /&gt;
/Group9                          (unsynced)  Allows modifying the members of group 9&lt;br /&gt;
/HardwareCursor                  (unsynced)  Enables/Disables hardware mouse-cursor support&lt;br /&gt;
/HideInterface                   (unsynced)  Hide/Show the GUI controlls&lt;br /&gt;
/IncGUIOpacity                   (unsynced)  Increases the the opacity(see-through-ness) of GUI elements&lt;br /&gt;
/IncreaseViewRadius              (unsynced)  Increase the view radius (lower performance, nicer view)&lt;br /&gt;
/Info                            (unsynced)  Shows/Hides the player roster&lt;br /&gt;
/InputTextGeo                    (unsynced)  Move and/or resize the input-text field (the &amp;quot;Say: &amp;quot; thing)&lt;br /&gt;
/LastMsgPos                      (unsynced)  Moves the camera to show the position of the last message&lt;br /&gt;
/LessClouds                      (unsynced)  Decreases the density of clouds (higher performance)&lt;br /&gt;
/LessTrees                       (unsynced)  Decreases distance from the camera at which trees are still drawn&lt;br /&gt;
/LODScale                        (unsynced)  Set the scale for either of: LOD (level-of-detail), shadow-LOD, reflection-LOD, refraction-LOD&lt;br /&gt;
/LuaGaia                         (unsynced)  Redirects command /LuaGaia to its synced processor&lt;br /&gt;
/LuaRules                        (unsynced)  Redirects command /LuaRules to its synced processor&lt;br /&gt;
/LuaSave                         (unsynced)  Save the game state to a specific file, add -y to overwrite when file is already present&lt;br /&gt;
/LuaUI                           (unsynced)  Allows one to reload or disable LuaUI, or alternatively to send a chat message to LuaUI&lt;br /&gt;
/luaui tweakgui                              Tweak mode on&lt;br /&gt;
/MapBorder                       (unsynced)  Set or toggle map-border rendering&lt;br /&gt;
/MapMarks                        (unsynced)  Enables/Disables map marks rendering&lt;br /&gt;
/mapmeshdrawer                   (unsynced)  Switch map-mesh rendering modes: 0=GCM, 1=HLOD, 2=ROAM&lt;br /&gt;
/MapShadowPolyOffset             (unsynced)  &lt;br /&gt;
/MaxNanoParticles                (unsynced)  Set the maximum number of nano-particles (Graphic setting)&lt;br /&gt;
/MaxParticles                    (unsynced)  Set the maximum number of particles (Graphics setting)&lt;br /&gt;
/MiniMap                         (unsynced)  FIXME document subcommands&lt;br /&gt;
/MoreClouds                      (unsynced)  Increases the density of clouds (lower performance)&lt;br /&gt;
/MoreTrees                       (unsynced)  Increases distance from the camera at which trees are still drawn&lt;br /&gt;
/Mouse1                          (unsynced)  Simulates a mouse button press of button 1&lt;br /&gt;
/Mouse2                          (unsynced)  Simulates a mouse button press of button 2&lt;br /&gt;
/Mouse3                          (unsynced)  Simulates a mouse button press of button 3&lt;br /&gt;
/Mouse4                          (unsynced)  Simulates a mouse button press of button 4&lt;br /&gt;
/Mouse5                          (unsynced)  Simulates a mouse button press of button 5&lt;br /&gt;
/MoveBack                        (unsynced)  Moves the camera Back a bit&lt;br /&gt;
/MoveDown                        (unsynced)  Moves the camera Down a bit&lt;br /&gt;
/MoveFast                        (unsynced)  Moves the camera Fast a bit&lt;br /&gt;
/MoveForward                     (unsynced)  Moves the camera Forward a bit&lt;br /&gt;
/MoveLeft                        (unsynced)  Moves the camera Left a bit&lt;br /&gt;
/MoveRight                       (unsynced)  Moves the camera Right a bit&lt;br /&gt;
/MoveSlow                        (unsynced)  Moves the camera Slow a bit&lt;br /&gt;
/MoveUp                          (unsynced)  Moves the camera Up a bit&lt;br /&gt;
/MuteSound                       (unsynced)  Mute/Unmute the current sound system&lt;br /&gt;
/NoLuaDraw                       (unsynced)  Allow/Disallow Lua to draw on the map&lt;br /&gt;
/PasteText                       (unsynced)  Paste either the argument string(s) or if none given, the content of the clip-board to chat input&lt;br /&gt;
/Pause                           (unsynced)  Pause/Unpause the game&lt;br /&gt;
/QuitForce                       (unsynced)  Exits game to system&lt;br /&gt;
/QuitMenu                        (unsynced)  Opens the quit-menu, if it is not already open&lt;br /&gt;
/QuitMessage                     (unsynced)  Deprecated, see /Quit instead (was used to quite the game immediately)&lt;br /&gt;
/ReloadForce                     (unsynced)  Exits game to menu&lt;br /&gt;
/ReloadGame                      (unsynced)  Restarts the game with the initially provided start-script&lt;br /&gt;
/ReloadShaders                   (unsynced)  Reloads all engine shaders&lt;br /&gt;
/ResBar                          (unsynced)  Shows/Hides team resource storage indicator bar&lt;br /&gt;
/Resync                          (unsynced)  Redirects command /Resync to its synced processor&lt;br /&gt;
/SafeGL                          (unsynced)  Enables/Disables OpenGL safe-mode&lt;br /&gt;
/Save                            (unsynced)  Save the game state to a specific file, add -y to overwrite when file is already present&lt;br /&gt;
/SaveGame                        (unsynced)  Save the game state to QuickSave.ssf (BROKEN)&lt;br /&gt;
/Say                             (unsynced)  Say something in (public) chat&lt;br /&gt;
/ScreenShot                      (unsynced)  Take a screen-shot of the current view&lt;br /&gt;
/Select                          (unsynced)  &amp;lt;chat command description: Select&amp;gt;&lt;br /&gt;
/SelectCycle                     (unsynced)  &amp;lt;chat command description: SelectUnits&amp;gt;&lt;br /&gt;
/SelectUnits                     (unsynced)  &amp;lt;chat command description: SelectUnits&amp;gt;&lt;br /&gt;
/Send                            (unsynced)  Send a string as raw network message to the game host (for debugging only)&lt;br /&gt;
/Set                             (unsynced)  Set a config key=value pair&lt;br /&gt;
/Setmaxspeed #	                             Changes the maximum speed multiplier (default is 3.0)&lt;br /&gt;
/Setminspeed #                               Changes the minimum speed multiplier (default is 0.3)&lt;br /&gt;
/Shadows                         (unsynced)  Disables/Enables shadows rendering: -1=disabled, 0=off, 1=full shadows, 2=skip terrain shadows&lt;br /&gt;
/ShareDialog                     (unsynced)  Opens the share dialog, which allows you to send units and resources to other players&lt;br /&gt;
/ShowElevation                   (unsynced)  Enable rendering of the auxiliary height-map overlay&lt;br /&gt;
/ShowMetalMap                    (unsynced)  Enable rendering of the auxiliary metal-map overlay&lt;br /&gt;
/ShowPathCost                    (unsynced)  Enable rendering of the path cost-map overlay&lt;br /&gt;
/ShowPathFlow                    (unsynced)  Enable/Disable rendering of the path flow-map overlay&lt;br /&gt;
/ShowPathHeat                    (unsynced)  Enable/Disable rendering of the path heat-map overlay&lt;br /&gt;
/ShowPathTraversability          (unsynced)  Enable rendering of the path traversability-map overlay&lt;br /&gt;
/ShowPathType                    (unsynced)  Shows path traversability for a given MoveDefName, MoveDefID or UnitDefName&lt;br /&gt;
/ShowStandard                    (unsynced)  Disable rendering of all auxiliary map overlays&lt;br /&gt;
/SlowDown                        (unsynced)  Decreases the simulation speed. The engine will try to simulate less frames per second&lt;br /&gt;
/SoundChannelEnable              (unsynced)  Enable/Disable specific sound channels: UnitReply, General, Battle, UserInterface, Music&lt;br /&gt;
/SoundDevice                     (unsynced)  Switch the sound output system (currently only OpenAL / NullAudio)&lt;br /&gt;
/SpecFullView                    (unsynced)  Sets or toggles between full LOS or ally-team LOS, if the local user is a spectator&lt;br /&gt;
/Spectator                       (unsynced)  Lets the local user give up control over a team, and start spectating&lt;br /&gt;
/SpecTeam                        (unsynced)  Lets the local user specify the team to follow, if he is a spectator&lt;br /&gt;
/Speed                           (unsynced)  Shows/Hides the simulation speed indicator&lt;br /&gt;
/SpeedControl                    (unsynced)  Sets how server adjusts speed according to player&#039;s load (CPU), 1: use average, 2: use highest,&lt;br /&gt;
/SpeedUp                         (unsynced)  Increases the simulation speed. The engine will try to simulate more frames per second&lt;br /&gt;
/Take                            (unsynced)  Redirects command /Take to its synced processor&lt;br /&gt;
/Team                            (unsynced)  Lets the local user change to another team&lt;br /&gt;
/TeamHighlight                   (unsynced)  Enables/Disables uncontrolled team blinking&lt;br /&gt;
/ToggleInfo                      (unsynced)  Toggles current info texture view&lt;br /&gt;
/ToggleLOS                       (unsynced)  Enable rendering of the auxiliary LOS-map overlay&lt;br /&gt;
/ToolTip                         (unsynced)  Enables/Disables the general tool-tips, displayed when hovering over units. features or the map&lt;br /&gt;
/Track                           (unsynced)  Start following the selected unit(s) with the camera&lt;br /&gt;
/TrackMode                       (unsynced)  Shift through different ways of following selected unit(s)&lt;br /&gt;
/TrackOff                        (unsynced)  Stop following the selected unit(s) with the camera&lt;br /&gt;
/TSet                            (unsynced)  Set a config key=value pair in the overlay, meaning it will not be persisted for future games&lt;br /&gt;
/unbind &amp;lt;keyset&amp;gt; &amp;lt;action&amp;gt;                    Unbinds a key or key combination. Example: /unbind a reclaim.&lt;br /&gt;
/ViewSelection                   (unsynced)  Moves the camera to the center of the currently selected units&lt;br /&gt;
/VSync                           (unsynced)  Enables/Disables vertical-sync (Graphics setting)&lt;br /&gt;
/W                               (unsynced)  Say something in private to a specific player, by player-name&lt;br /&gt;
/Water                           (unsynced)  Set water rendering mode: 0=basic, 1=reflective, 2=dynamic, 3=reflective&amp;amp;refractive, 4=bump-mapped&lt;br /&gt;
/WByNum                          (unsynced)  Say something in private to a specific player, by player-ID&lt;br /&gt;
/WireMap                         (unsynced)  Toggle wireframe-mode drawing of map geometry&lt;br /&gt;
/WireModel                       (unsynced)  Toggle wireframe-mode drawing of model geometry&lt;br /&gt;
/WireSky                         (unsynced)  Toggle wireframe-mode drawing of skydome geometry&lt;br /&gt;
/WireTree                        (unsynced)  Toggle wireframe-mode drawing of tree geometry&lt;br /&gt;
/WireWater                       (unsynced)  Toggle wireframe-mode drawing of water geometry&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Scripting=&lt;br /&gt;
In Lua scripts, these commands can be used like this:&amp;lt;br&amp;gt;&lt;br /&gt;
Spring.SendCommands(&amp;quot;resbar 0&amp;quot;)&amp;lt;br&amp;gt;&lt;br /&gt;
notice the missing / when used like this.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Help]]&lt;/div&gt;</summary>
		<author><name>Tulipe</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Uikeys.txt&amp;diff=19012</id>
		<title>Uikeys.txt</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Uikeys.txt&amp;diff=19012"/>
		<updated>2018-07-14T05:50:35Z</updated>

		<summary type="html">&lt;p&gt;Tulipe: /* selections */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= uikeys.txt =&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
The file has to be placed into the SpringData dir, most common next to [[springsettings.cfg]].&lt;br /&gt;
&lt;br /&gt;
==example==&lt;br /&gt;
&lt;br /&gt;
{{sourcelink|file=doc/uikeys.txt}}&lt;br /&gt;
&lt;br /&gt;
==get key codes==&lt;br /&gt;
to see what keycodes are triggered when a key is pressed, enable keydebug mode with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
/keydebug&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 97.0 ==&lt;br /&gt;
In 97.0 support was added for &#039;&#039;&#039;KeyChains&#039;&#039;&#039; for example: &lt;br /&gt;
&amp;lt;code&amp;gt;/bind Ctrl+a,Ctrl+b say Hello World!&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can double bind a button this way, e.g.:&lt;br /&gt;
&amp;lt;code&amp;gt;/bind e,e say Bar&lt;br /&gt;
/bind e say Foo&amp;lt;/code&amp;gt;&lt;br /&gt;
Results in the 1st press printing Foo, 2nd press printing Bar.&lt;br /&gt;
&lt;br /&gt;
Additionally &#039;&#039;&#039;KeyChains&#039;&#039;&#039; are now used for several defaults:&lt;br /&gt;
* Double hitting drawbutton sets label&lt;br /&gt;
* Switching between ally, spec &amp;amp; all chat is now done by double hitting &amp;lt;code&amp;gt;alt&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;shift&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ctrl&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;alt+return&amp;lt;/code&amp;gt; now toggles fullscreen (default shortcut for fullscreen toggle on most OS)&lt;br /&gt;
&lt;br /&gt;
== 104.0 ==&lt;br /&gt;
In 104.0 the default bindings for chat switching changed again;&lt;br /&gt;
* &amp;lt;code&amp;gt;alt+ctrl+(a,a)&amp;lt;/code&amp;gt; now toggles chatswitchally&lt;br /&gt;
* &amp;lt;code&amp;gt;alt+ctrl+(s,s)&amp;lt;/code&amp;gt; now toggles chatswitchspec&lt;br /&gt;
* &amp;lt;code&amp;gt;chatswitchall&amp;lt;/code&amp;gt; now has to be bound manually&lt;br /&gt;
&lt;br /&gt;
==selections==&lt;br /&gt;
For details consult the source: SelectionKeyHandler.cpp. &lt;br /&gt;
&lt;br /&gt;
In the following, &amp;quot;+&amp;quot; and &amp;quot;_&amp;quot; are taken as literal plus and underscore characters, respectively. &amp;quot;|&amp;quot; means &amp;quot;or&amp;quot;, and &amp;quot;[...]&amp;quot; means that ... is optional.&lt;br /&gt;
&lt;br /&gt;
uikeys.txt has the format&lt;br /&gt;
 KEY SOURCE+FILTER+CONCLUSION+&lt;br /&gt;
&amp;quot;SOURCE+FILTER+CONCLUSION+&amp;quot; will be called the &#039;&#039;selector&#039;&#039;.&lt;br /&gt;
Generally, all elements of the selector are separated by _, where the + does not count as a separator on its own. You&#039;ll see what I mean.&lt;br /&gt;
&lt;br /&gt;
Note that:&lt;br /&gt;
* SOURCE, FILTER and CONCLUSION are case sensitive, at least sometimes&lt;br /&gt;
* Spaces are significant. Do not insert any spaces in the selector string!&lt;br /&gt;
* Do not use a KEY that has already been bound to something else (this holds for SelectionEditor too).&lt;br /&gt;
&lt;br /&gt;
The format for KEY is different from uikeys.txt: Use a combination of &amp;lt;code&amp;gt;Shift&amp;lt;/code&amp;gt; &amp;lt;code&amp;gt;Control&amp;lt;/code&amp;gt; &amp;lt;code&amp;gt;Alt&amp;lt;/code&amp;gt; followed by a key A-Z or 0-9, all separated by an underscore _.&lt;br /&gt;
Example:&lt;br /&gt;
 Control_W&lt;br /&gt;
 Alt_Shift_0&lt;br /&gt;
&lt;br /&gt;
SOURCE describes the set of units that you want to filter and pick a selection from.&lt;br /&gt;
It can be one of&lt;br /&gt;
* &amp;lt;code&amp;gt;AllMap&amp;lt;/code&amp;gt;: obvious&lt;br /&gt;
* &amp;lt;code&amp;gt;Visible&amp;lt;/code&amp;gt;: obvious&lt;br /&gt;
* &amp;lt;code&amp;gt;FromMouse_D&amp;lt;/code&amp;gt;, where D is some number: all units that are at most a distance of D away from the mouse cursor&lt;br /&gt;
* &amp;lt;code&amp;gt;PrevSelection&amp;lt;/code&amp;gt;: the previous selection; that is, the one active before you hit the selection key&lt;br /&gt;
&lt;br /&gt;
FILTER is an arbitrarily long list of filters.&lt;br /&gt;
Every filter can be preceded by &amp;lt;code&amp;gt;Not&amp;lt;/code&amp;gt; to negate it.&lt;br /&gt;
You will still have to use a _ to separate the &amp;lt;code&amp;gt;Not&amp;lt;/code&amp;gt; from the filter, as in &amp;lt;code&amp;gt;Not_Commander&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Here are the filters. Note that &amp;quot;units&amp;quot; generally means both buildings and units. Typing both got old real quick.&lt;br /&gt;
* &amp;lt;code&amp;gt;AbsoluteHealth_N&amp;lt;/code&amp;gt;: only units that have an absolute health &amp;gt; N&lt;br /&gt;
* &amp;lt;code&amp;gt;Aircraft&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Builder&amp;lt;/code&amp;gt;: only construction units&lt;br /&gt;
* &amp;lt;code&amp;gt;Building&amp;lt;/code&amp;gt;: only buildings&lt;br /&gt;
* &amp;lt;code&amp;gt;Category_C&amp;lt;/code&amp;gt;: only units of category C -- XXX what are the categories?&lt;br /&gt;
* &amp;lt;code&amp;gt;Commander&amp;lt;/code&amp;gt;: do not works since at least version 104&lt;br /&gt;
* &amp;lt;code&amp;gt;Idle&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;InHotkeyGroup&amp;lt;/code&amp;gt;: only units that are in a group&lt;br /&gt;
* &amp;lt;code&amp;gt;InPrevSel&amp;lt;/code&amp;gt;: only units of the same type as a unit in the previous selection&lt;br /&gt;
* &amp;lt;code&amp;gt;NameContain_S&amp;lt;/code&amp;gt;: only units whose name contains the string S&lt;br /&gt;
* &amp;lt;code&amp;gt;Radar&amp;lt;/code&amp;gt;: only units with either radar, sonar, or a jammer&lt;br /&gt;
* &amp;lt;code&amp;gt;RelativeHealth_P&amp;lt;/code&amp;gt;: only units that have health &amp;gt; P percent&lt;br /&gt;
* &amp;lt;code&amp;gt;Transport&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Waiting&amp;lt;/code&amp;gt;: only units that are under a wait command (usually W)&lt;br /&gt;
* &amp;lt;code&amp;gt;WeaponRange_D&amp;lt;/code&amp;gt;: only units that have a weapon range &amp;gt; D&lt;br /&gt;
* &amp;lt;code&amp;gt;Weapons&amp;lt;/code&amp;gt;: only units that have weapons&lt;br /&gt;
&lt;br /&gt;
CONCLUSION is&lt;br /&gt;
 [_ClearSelection]_HOWMANY&lt;br /&gt;
If you specify &amp;lt;code&amp;gt;ClearSelection&amp;lt;/code&amp;gt;, your new selection will replace the old one; otherwise, it will just add to it.&lt;br /&gt;
HOWMANY must be exactly one of &lt;br /&gt;
* &amp;lt;code&amp;gt;SelectAll&amp;lt;/code&amp;gt;: all units&lt;br /&gt;
* &amp;lt;code&amp;gt;SelectOne&amp;lt;/code&amp;gt;: one unit, will also center the camera on that unit&lt;br /&gt;
* &amp;lt;code&amp;gt;SelectNum_N&amp;lt;/code&amp;gt;: at most N units -- XXX I think this includes the previously selected units (without ClearSelection), check!&lt;br /&gt;
* &amp;lt;code&amp;gt;SelectPart_P&amp;lt;/code&amp;gt;: P percent of the units&lt;br /&gt;
&lt;br /&gt;
Recall that between every two tokens, there &#039;&#039;must&#039;&#039; be an underscore _, even if there is also a +. Another way to put it is that before every word in your selector except the SOURCE, there must be an underscore.&lt;br /&gt;
&lt;br /&gt;
Some examples, first the standard bindings. Again, &amp;quot;unit&amp;quot; also includes buildings.&lt;br /&gt;
 Control_A AllMap++_ClearSelection_SelectAll+&lt;br /&gt;
Selects everything on the entire map.&lt;br /&gt;
 Control_B AllMap+_Builder_Idle+_ClearSelection_SelectOne+&lt;br /&gt;
Selects any (one) idle builder on entire map.&lt;br /&gt;
 Control_C AllMap+_Commander+_ClearSelection_SelectOne+&lt;br /&gt;
Selects your commander.&lt;br /&gt;
 Control_R AllMap+_Radar+_ClearSelection_SelectAll+&lt;br /&gt;
Selects all units with radar/sonar/jammer.&lt;br /&gt;
 Control_W AllMap+_Not_Aircraft_Weapons+_ClearSelection_SelectAll+&lt;br /&gt;
Selects all non-aircraft armed units&lt;br /&gt;
 Control_Z AllMap+_InPrevSel+_ClearSelection_SelectAll+&lt;br /&gt;
Selects all units of a type that was in your previous selection.&lt;br /&gt;
&lt;br /&gt;
Note that up to now, all keys said &amp;lt;code&amp;gt;ClearSelection&amp;lt;/code&amp;gt;, hence they replaced your old selection.&lt;br /&gt;
 Control_X AllMap+_InPrevSel_Not_InHotkeyGroup+_SelectAll+&lt;br /&gt;
Selects all units of a type that was in your previous selection, unless they are already in a hotkey group. (Use case: if you have a set of tanks on group 1, and have since produced more of the same type(s), you could hit 1 Ctrl+V Ctrl+1 to include them in the group.)&lt;br /&gt;
 Control_V AllMap+_Not_Builder_Not_Commander_InPrevSel_Not_InHotkeyGroup+_SelectAll+&lt;br /&gt;
Selects all units of a type that was in your previous selection, except builders and commander, unless they are already in a hotkey group.&lt;br /&gt;
&lt;br /&gt;
And finally, an example from the forums:&lt;br /&gt;
 Control_W PrevSelection+_Not_Building_Not_RelativeHealth_30+_ClearSelection_SelectAll+&lt;br /&gt;
From your previous selection, leaves everything that is below 30% health, and not a building. (Use this to quickly retreat damaged units.)&lt;br /&gt;
&lt;br /&gt;
==make uikeys.txt read only for SpringSettings==&lt;br /&gt;
&lt;br /&gt;
If you wish to aviod [[SpringSettings]] parsing and possibly ovewriting your uikeys.txt, add this line to uikeys.txt:&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;//SPRINGSETTINGS DO NOT TOUCH&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Help]]&lt;/div&gt;</summary>
		<author><name>Tulipe</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Uikeys.txt&amp;diff=19011</id>
		<title>Uikeys.txt</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Uikeys.txt&amp;diff=19011"/>
		<updated>2018-07-14T05:48:40Z</updated>

		<summary type="html">&lt;p&gt;Tulipe: /* selections */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= uikeys.txt =&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
The file has to be placed into the SpringData dir, most common next to [[springsettings.cfg]].&lt;br /&gt;
&lt;br /&gt;
==example==&lt;br /&gt;
&lt;br /&gt;
{{sourcelink|file=doc/uikeys.txt}}&lt;br /&gt;
&lt;br /&gt;
==get key codes==&lt;br /&gt;
to see what keycodes are triggered when a key is pressed, enable keydebug mode with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
/keydebug&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 97.0 ==&lt;br /&gt;
In 97.0 support was added for &#039;&#039;&#039;KeyChains&#039;&#039;&#039; for example: &lt;br /&gt;
&amp;lt;code&amp;gt;/bind Ctrl+a,Ctrl+b say Hello World!&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can double bind a button this way, e.g.:&lt;br /&gt;
&amp;lt;code&amp;gt;/bind e,e say Bar&lt;br /&gt;
/bind e say Foo&amp;lt;/code&amp;gt;&lt;br /&gt;
Results in the 1st press printing Foo, 2nd press printing Bar.&lt;br /&gt;
&lt;br /&gt;
Additionally &#039;&#039;&#039;KeyChains&#039;&#039;&#039; are now used for several defaults:&lt;br /&gt;
* Double hitting drawbutton sets label&lt;br /&gt;
* Switching between ally, spec &amp;amp; all chat is now done by double hitting &amp;lt;code&amp;gt;alt&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;shift&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ctrl&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;alt+return&amp;lt;/code&amp;gt; now toggles fullscreen (default shortcut for fullscreen toggle on most OS)&lt;br /&gt;
&lt;br /&gt;
== 104.0 ==&lt;br /&gt;
In 104.0 the default bindings for chat switching changed again;&lt;br /&gt;
* &amp;lt;code&amp;gt;alt+ctrl+(a,a)&amp;lt;/code&amp;gt; now toggles chatswitchally&lt;br /&gt;
* &amp;lt;code&amp;gt;alt+ctrl+(s,s)&amp;lt;/code&amp;gt; now toggles chatswitchspec&lt;br /&gt;
* &amp;lt;code&amp;gt;chatswitchall&amp;lt;/code&amp;gt; now has to be bound manually&lt;br /&gt;
&lt;br /&gt;
==selections==&lt;br /&gt;
For details consult the source: SelectionKeyHandler.cpp. &lt;br /&gt;
&lt;br /&gt;
In the following, &amp;quot;+&amp;quot; and &amp;quot;_&amp;quot; are taken as literal plus and underscore characters, respectively. &amp;quot;|&amp;quot; means &amp;quot;or&amp;quot;, and &amp;quot;[...]&amp;quot; means that ... is optional.&lt;br /&gt;
&lt;br /&gt;
uikeys.txt has the format&lt;br /&gt;
 KEY SOURCE+FILTER+CONCLUSION+&lt;br /&gt;
&amp;quot;SOURCE+FILTER+CONCLUSION+&amp;quot; will be called the &#039;&#039;selector&#039;&#039;.&lt;br /&gt;
Generally, all elements of the selector are separated by _, where the + does not count as a separator on its own. You&#039;ll see what I mean.&lt;br /&gt;
&lt;br /&gt;
Note that&lt;br /&gt;
* SOURCE is case sensitive, at least sometimes&lt;br /&gt;
* Spaces are significant. Do not insert any spaces in the selector string!&lt;br /&gt;
* Do not use a KEY that has already been bound to something else (this holds for SelectionEditor too).&lt;br /&gt;
&lt;br /&gt;
The format for KEY is different from uikeys.txt: Use a combination of &amp;lt;code&amp;gt;Shift&amp;lt;/code&amp;gt; &amp;lt;code&amp;gt;Control&amp;lt;/code&amp;gt; &amp;lt;code&amp;gt;Alt&amp;lt;/code&amp;gt; followed by a key A-Z or 0-9, all separated by an underscore _.&lt;br /&gt;
Example:&lt;br /&gt;
 Control_W&lt;br /&gt;
 Alt_Shift_0&lt;br /&gt;
&lt;br /&gt;
SOURCE describes the set of units that you want to filter and pick a selection from.&lt;br /&gt;
It can be one of&lt;br /&gt;
* &amp;lt;code&amp;gt;AllMap&amp;lt;/code&amp;gt;: obvious&lt;br /&gt;
* &amp;lt;code&amp;gt;Visible&amp;lt;/code&amp;gt;: obvious&lt;br /&gt;
* &amp;lt;code&amp;gt;FromMouse_D&amp;lt;/code&amp;gt;, where D is some number: all units that are at most a distance of D away from the mouse cursor&lt;br /&gt;
* &amp;lt;code&amp;gt;PrevSelection&amp;lt;/code&amp;gt;: the previous selection; that is, the one active before you hit the selection key&lt;br /&gt;
&lt;br /&gt;
FILTER is an arbitrarily long list of filters.&lt;br /&gt;
Every filter can be preceded by &amp;lt;code&amp;gt;Not&amp;lt;/code&amp;gt; to negate it.&lt;br /&gt;
You will still have to use a _ to separate the &amp;lt;code&amp;gt;Not&amp;lt;/code&amp;gt; from the filter, as in &amp;lt;code&amp;gt;Not_Commander&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Here are the filters. Note that &amp;quot;units&amp;quot; generally means both buildings and units. Typing both got old real quick.&lt;br /&gt;
* &amp;lt;code&amp;gt;AbsoluteHealth_N&amp;lt;/code&amp;gt;: only units that have an absolute health &amp;gt; N&lt;br /&gt;
* &amp;lt;code&amp;gt;Aircraft&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Builder&amp;lt;/code&amp;gt;: only construction units&lt;br /&gt;
* &amp;lt;code&amp;gt;Building&amp;lt;/code&amp;gt;: only buildings&lt;br /&gt;
* &amp;lt;code&amp;gt;Category_C&amp;lt;/code&amp;gt;: only units of category C -- XXX what are the categories?&lt;br /&gt;
* &amp;lt;code&amp;gt;Commander&amp;lt;/code&amp;gt;: do not works since at least version 104&lt;br /&gt;
* &amp;lt;code&amp;gt;Idle&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;InHotkeyGroup&amp;lt;/code&amp;gt;: only units that are in a group&lt;br /&gt;
* &amp;lt;code&amp;gt;InPrevSel&amp;lt;/code&amp;gt;: only units of the same type as a unit in the previous selection&lt;br /&gt;
* &amp;lt;code&amp;gt;NameContain_S&amp;lt;/code&amp;gt;: only units whose name contains the string S&lt;br /&gt;
* &amp;lt;code&amp;gt;Radar&amp;lt;/code&amp;gt;: only units with either radar, sonar, or a jammer&lt;br /&gt;
* &amp;lt;code&amp;gt;RelativeHealth_P&amp;lt;/code&amp;gt;: only units that have health &amp;gt; P percent&lt;br /&gt;
* &amp;lt;code&amp;gt;Transport&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Waiting&amp;lt;/code&amp;gt;: only units that are under a wait command (usually W)&lt;br /&gt;
* &amp;lt;code&amp;gt;WeaponRange_D&amp;lt;/code&amp;gt;: only units that have a weapon range &amp;gt; D&lt;br /&gt;
* &amp;lt;code&amp;gt;Weapons&amp;lt;/code&amp;gt;: only units that have weapons&lt;br /&gt;
&lt;br /&gt;
CONCLUSION is&lt;br /&gt;
 [_ClearSelection]_HOWMANY&lt;br /&gt;
If you specify &amp;lt;code&amp;gt;ClearSelection&amp;lt;/code&amp;gt;, your new selection will replace the old one; otherwise, it will just add to it.&lt;br /&gt;
HOWMANY must be exactly one of &lt;br /&gt;
* &amp;lt;code&amp;gt;SelectAll&amp;lt;/code&amp;gt;: all units&lt;br /&gt;
* &amp;lt;code&amp;gt;SelectOne&amp;lt;/code&amp;gt;: one unit, will also center the camera on that unit&lt;br /&gt;
* &amp;lt;code&amp;gt;SelectNum_N&amp;lt;/code&amp;gt;: at most N units -- XXX I think this includes the previously selected units (without ClearSelection), check!&lt;br /&gt;
* &amp;lt;code&amp;gt;SelectPart_P&amp;lt;/code&amp;gt;: P percent of the units&lt;br /&gt;
&lt;br /&gt;
Recall that between every two tokens, there &#039;&#039;must&#039;&#039; be an underscore _, even if there is also a +. Another way to put it is that before every word in your selector except the SOURCE, there must be an underscore.&lt;br /&gt;
&lt;br /&gt;
Some examples, first the standard bindings. Again, &amp;quot;unit&amp;quot; also includes buildings.&lt;br /&gt;
 Control_A AllMap++_ClearSelection_SelectAll+&lt;br /&gt;
Selects everything on the entire map.&lt;br /&gt;
 Control_B AllMap+_Builder_Idle+_ClearSelection_SelectOne+&lt;br /&gt;
Selects any (one) idle builder on entire map.&lt;br /&gt;
 Control_C AllMap+_Commander+_ClearSelection_SelectOne+&lt;br /&gt;
Selects your commander.&lt;br /&gt;
 Control_R AllMap+_Radar+_ClearSelection_SelectAll+&lt;br /&gt;
Selects all units with radar/sonar/jammer.&lt;br /&gt;
 Control_W AllMap+_Not_Aircraft_Weapons+_ClearSelection_SelectAll+&lt;br /&gt;
Selects all non-aircraft armed units&lt;br /&gt;
 Control_Z AllMap+_InPrevSel+_ClearSelection_SelectAll+&lt;br /&gt;
Selects all units of a type that was in your previous selection.&lt;br /&gt;
&lt;br /&gt;
Note that up to now, all keys said &amp;lt;code&amp;gt;ClearSelection&amp;lt;/code&amp;gt;, hence they replaced your old selection.&lt;br /&gt;
 Control_X AllMap+_InPrevSel_Not_InHotkeyGroup+_SelectAll+&lt;br /&gt;
Selects all units of a type that was in your previous selection, unless they are already in a hotkey group. (Use case: if you have a set of tanks on group 1, and have since produced more of the same type(s), you could hit 1 Ctrl+V Ctrl+1 to include them in the group.)&lt;br /&gt;
 Control_V AllMap+_Not_Builder_Not_Commander_InPrevSel_Not_InHotkeyGroup+_SelectAll+&lt;br /&gt;
Selects all units of a type that was in your previous selection, except builders and commander, unless they are already in a hotkey group.&lt;br /&gt;
&lt;br /&gt;
And finally, an example from the forums:&lt;br /&gt;
 Control_W PrevSelection+_Not_Building_Not_RelativeHealth_30+_ClearSelection_SelectAll+&lt;br /&gt;
From your previous selection, leaves everything that is below 30% health, and not a building. (Use this to quickly retreat damaged units.)&lt;br /&gt;
&lt;br /&gt;
==make uikeys.txt read only for SpringSettings==&lt;br /&gt;
&lt;br /&gt;
If you wish to aviod [[SpringSettings]] parsing and possibly ovewriting your uikeys.txt, add this line to uikeys.txt:&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;//SPRINGSETTINGS DO NOT TOUCH&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Help]]&lt;/div&gt;</summary>
		<author><name>Tulipe</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Uikeys.txt&amp;diff=19010</id>
		<title>Uikeys.txt</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Uikeys.txt&amp;diff=19010"/>
		<updated>2018-06-02T18:00:48Z</updated>

		<summary type="html">&lt;p&gt;Tulipe: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= uikeys.txt =&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
The file has to be placed into the SpringData dir, most common next to [[springsettings.cfg]].&lt;br /&gt;
&lt;br /&gt;
==example==&lt;br /&gt;
&lt;br /&gt;
{{sourcelink|file=doc/uikeys.txt}}&lt;br /&gt;
&lt;br /&gt;
==get key codes==&lt;br /&gt;
to see what keycodes are triggered when a key is pressed, enable keydebug mode with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
/keydebug&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 97.0 ==&lt;br /&gt;
In 97.0 support was added for &#039;&#039;&#039;KeyChains&#039;&#039;&#039; for example: &lt;br /&gt;
&amp;lt;code&amp;gt;/bind Ctrl+a,Ctrl+b say Hello World!&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can double bind a button this way, e.g.:&lt;br /&gt;
&amp;lt;code&amp;gt;/bind e,e say Bar&lt;br /&gt;
/bind e say Foo&amp;lt;/code&amp;gt;&lt;br /&gt;
Results in the 1st press printing Foo, 2nd press printing Bar.&lt;br /&gt;
&lt;br /&gt;
Additionally &#039;&#039;&#039;KeyChains&#039;&#039;&#039; are now used for several defaults:&lt;br /&gt;
* Double hitting drawbutton sets label&lt;br /&gt;
* Switching between ally, spec &amp;amp; all chat is now done by double hitting &amp;lt;code&amp;gt;alt&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;shift&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ctrl&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;alt+return&amp;lt;/code&amp;gt; now toggles fullscreen (default shortcut for fullscreen toggle on most OS)&lt;br /&gt;
&lt;br /&gt;
== 104.0 ==&lt;br /&gt;
In 104.0 the default bindings for chat switching changed again;&lt;br /&gt;
* &amp;lt;code&amp;gt;alt+ctrl+(a,a)&amp;lt;/code&amp;gt; now toggles chatswitchally&lt;br /&gt;
* &amp;lt;code&amp;gt;alt+ctrl+(s,s)&amp;lt;/code&amp;gt; now toggles chatswitchspec&lt;br /&gt;
* &amp;lt;code&amp;gt;chatswitchall&amp;lt;/code&amp;gt; now has to be bound manually&lt;br /&gt;
&lt;br /&gt;
==selections==&lt;br /&gt;
For details consult the source: SelectionKeyHandler.cpp. &lt;br /&gt;
&lt;br /&gt;
In the following, &amp;quot;+&amp;quot; and &amp;quot;_&amp;quot; are taken as literal plus and underscore characters, respectively. &amp;quot;|&amp;quot; means &amp;quot;or&amp;quot;, and &amp;quot;[...]&amp;quot; means that ... is optional.&lt;br /&gt;
&lt;br /&gt;
uikeys.txt has the format&lt;br /&gt;
 KEY SOURCE+FILTER+CONCLUSION+&lt;br /&gt;
&amp;quot;SOURCE+FILTER+CONCLUSION+&amp;quot; will be called the &#039;&#039;selector&#039;&#039;.&lt;br /&gt;
Generally, all elements of the selector are separated by _, where the + does not count as a separator on its own. You&#039;ll see what I mean.&lt;br /&gt;
&lt;br /&gt;
Note that&lt;br /&gt;
* Spaces are significant. Do not insert any spaces in the selector string!&lt;br /&gt;
* Do not use a KEY that has already been bound to something else (this holds for SelectionEditor too).&lt;br /&gt;
&lt;br /&gt;
The format for KEY is different from uikeys.txt: Use a combination of &amp;lt;code&amp;gt;Shift&amp;lt;/code&amp;gt; &amp;lt;code&amp;gt;Control&amp;lt;/code&amp;gt; &amp;lt;code&amp;gt;Alt&amp;lt;/code&amp;gt; followed by a key A-Z or 0-9, all separated by an underscore _.&lt;br /&gt;
Example:&lt;br /&gt;
 Control_W&lt;br /&gt;
 Alt_Shift_0&lt;br /&gt;
&lt;br /&gt;
SOURCE describes the set of units that you want to filter and pick a selection from.&lt;br /&gt;
It can be one of&lt;br /&gt;
* &amp;lt;code&amp;gt;AllMap&amp;lt;/code&amp;gt;: obvious&lt;br /&gt;
* &amp;lt;code&amp;gt;Visible&amp;lt;/code&amp;gt;: obvious&lt;br /&gt;
* &amp;lt;code&amp;gt;FromMouse_D&amp;lt;/code&amp;gt;, where D is some number: all units that are at most a distance of D away from the mouse cursor&lt;br /&gt;
* &amp;lt;code&amp;gt;PrevSelection&amp;lt;/code&amp;gt;: the previous selection; that is, the one active before you hit the selection key&lt;br /&gt;
&lt;br /&gt;
FILTER is an arbitrarily long list of filters.&lt;br /&gt;
Every filter can be preceded by &amp;lt;code&amp;gt;Not&amp;lt;/code&amp;gt; to negate it.&lt;br /&gt;
You will still have to use a _ to separate the &amp;lt;code&amp;gt;Not&amp;lt;/code&amp;gt; from the filter, as in &amp;lt;code&amp;gt;Not_Commander&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Here are the filters. Note that &amp;quot;units&amp;quot; generally means both buildings and units. Typing both got old real quick.&lt;br /&gt;
* &amp;lt;code&amp;gt;AbsoluteHealth_N&amp;lt;/code&amp;gt;: only units that have an absolute health &amp;gt; N&lt;br /&gt;
* &amp;lt;code&amp;gt;Aircraft&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Builder&amp;lt;/code&amp;gt;: only construction units&lt;br /&gt;
* &amp;lt;code&amp;gt;Building&amp;lt;/code&amp;gt;: only buildings&lt;br /&gt;
* &amp;lt;code&amp;gt;Category_C&amp;lt;/code&amp;gt;: only units of category C -- XXX what are the categories?&lt;br /&gt;
* &amp;lt;code&amp;gt;Commander&amp;lt;/code&amp;gt;: do not works since at least version 104&lt;br /&gt;
* &amp;lt;code&amp;gt;Idle&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;InHotkeyGroup&amp;lt;/code&amp;gt;: only units that are in a group&lt;br /&gt;
* &amp;lt;code&amp;gt;InPrevSel&amp;lt;/code&amp;gt;: only units of the same type as a unit in the previous selection&lt;br /&gt;
* &amp;lt;code&amp;gt;NameContain_S&amp;lt;/code&amp;gt;: only units whose name contains the string S&lt;br /&gt;
* &amp;lt;code&amp;gt;Radar&amp;lt;/code&amp;gt;: only units with either radar, sonar, or a jammer&lt;br /&gt;
* &amp;lt;code&amp;gt;RelativeHealth_P&amp;lt;/code&amp;gt;: only units that have health &amp;gt; P percent&lt;br /&gt;
* &amp;lt;code&amp;gt;Transport&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Waiting&amp;lt;/code&amp;gt;: only units that are under a wait command (usually W)&lt;br /&gt;
* &amp;lt;code&amp;gt;WeaponRange_D&amp;lt;/code&amp;gt;: only units that have a weapon range &amp;gt; D&lt;br /&gt;
* &amp;lt;code&amp;gt;Weapons&amp;lt;/code&amp;gt;: only units that have weapons&lt;br /&gt;
&lt;br /&gt;
CONCLUSION is&lt;br /&gt;
 [_ClearSelection]_HOWMANY&lt;br /&gt;
If you specify &amp;lt;code&amp;gt;ClearSelection&amp;lt;/code&amp;gt;, your new selection will replace the old one; otherwise, it will just add to it.&lt;br /&gt;
HOWMANY must be exactly one of &lt;br /&gt;
* &amp;lt;code&amp;gt;SelectAll&amp;lt;/code&amp;gt;: all units&lt;br /&gt;
* &amp;lt;code&amp;gt;SelectOne&amp;lt;/code&amp;gt;: one unit, will also center the camera on that unit&lt;br /&gt;
* &amp;lt;code&amp;gt;SelectNum_N&amp;lt;/code&amp;gt;: at most N units -- XXX I think this includes the previously selected units (without ClearSelection), check!&lt;br /&gt;
* &amp;lt;code&amp;gt;SelectPart_P&amp;lt;/code&amp;gt;: P percent of the units&lt;br /&gt;
&lt;br /&gt;
Recall that between every two tokens, there &#039;&#039;must&#039;&#039; be an underscore _, even if there is also a +. Another way to put it is that before every word in your selector except the SOURCE, there must be an underscore.&lt;br /&gt;
&lt;br /&gt;
Some examples, first the standard bindings. Again, &amp;quot;unit&amp;quot; also includes buildings.&lt;br /&gt;
 Control_A AllMap++_ClearSelection_SelectAll+&lt;br /&gt;
Selects everything on the entire map.&lt;br /&gt;
 Control_B AllMap+_Builder_Idle+_ClearSelection_SelectOne+&lt;br /&gt;
Selects any (one) idle builder on entire map.&lt;br /&gt;
 Control_C AllMap+_Commander+_ClearSelection_SelectOne+&lt;br /&gt;
Selects your commander.&lt;br /&gt;
 Control_R AllMap+_Radar+_ClearSelection_SelectAll+&lt;br /&gt;
Selects all units with radar/sonar/jammer.&lt;br /&gt;
 Control_W AllMap+_Not_Aircraft_Weapons+_ClearSelection_SelectAll+&lt;br /&gt;
Selects all non-aircraft armed units&lt;br /&gt;
 Control_Z AllMap+_InPrevSel+_ClearSelection_SelectAll+&lt;br /&gt;
Selects all units of a type that was in your previous selection.&lt;br /&gt;
&lt;br /&gt;
Note that up to now, all keys said &amp;lt;code&amp;gt;ClearSelection&amp;lt;/code&amp;gt;, hence they replaced your old selection.&lt;br /&gt;
 Control_X AllMap+_InPrevSel_Not_InHotkeyGroup+_SelectAll+&lt;br /&gt;
Selects all units of a type that was in your previous selection, unless they are already in a hotkey group. (Use case: if you have a set of tanks on group 1, and have since produced more of the same type(s), you could hit 1 Ctrl+V Ctrl+1 to include them in the group.)&lt;br /&gt;
 Control_V AllMap+_Not_Builder_Not_Commander_InPrevSel_Not_InHotkeyGroup+_SelectAll+&lt;br /&gt;
Selects all units of a type that was in your previous selection, except builders and commander, unless they are already in a hotkey group.&lt;br /&gt;
&lt;br /&gt;
And finally, an example from the forums:&lt;br /&gt;
 Control_W PrevSelection+_Not_Building_Not_RelativeHealth_30+_ClearSelection_SelectAll+&lt;br /&gt;
From your previous selection, leaves everything that is below 30% health, and not a building. (Use this to quickly retreat damaged units.)&lt;br /&gt;
&lt;br /&gt;
==make uikeys.txt read only for SpringSettings==&lt;br /&gt;
&lt;br /&gt;
If you wish to aviod [[SpringSettings]] parsing and possibly ovewriting your uikeys.txt, add this line to uikeys.txt:&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;//SPRINGSETTINGS DO NOT TOUCH&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Help]]&lt;/div&gt;</summary>
		<author><name>Tulipe</name></author>
	</entry>
</feed>