Setting Up a Game
Contents
Commands
The game lobby allows the game experience to be customized by typing commands into the chat input line. Some useful commands:
- !help gives a list of all commands.
- !map <mapname> sets specific map. Entering !map without <mapname> starts a poll with four maps relevant to the game mode you have set currently.
- !spec <playername> will move the specified player to Spectators. Without <playername>, it is equivalent to !specafk and moves all AFK (marked with a "zzz" icon) players to Spectators.
- !endvote ends the current poll.
- !type <gametype> changes the room type. The game type can be FFA, Teams, Coop, Custom or 1v1.
- !resetoptions resets custom options.
- !title <newtitle> changes the room title.
- !kick <playername> removes a player from the room and starts a penalty timer. Use only as last resort to remove disruptive players. Consider using !spec <playername> instead if you just don't want the player to participate in the next game.
- !start or !poll start starts a game. !poll start will start a poll asking players to vote when they are ready to start a game.
- !y or !n is how you vote in a poll. Of course, it's usually easier to just click the green check mark or red X button instead.
- !maxplayers <number> changes the maximum number players for the room. Spectators are not counted.
- !force force-starts a game before the regular set-up time expires at the beginning of the game.
- !exit exits the game in progress.
- !balance attempts to balance players in two teams by skill. You can also !balance <numberofteamsyouwant>.
- !predict gives a calculated victory chance prediction for the current teams.
- !password <password> sets password for the room. To remove the password, enter !password without a value.
- !notify plays a ring sound when game ends.
Playing with Friends
For a Skirmish match, go to Multiplayer, Custom Game, Host Game, set a password, select Game Type: Custom.
For Campaign co-op on Steam: Go to Steam friends list, click your friend and press Invite to Lobby, then select a planet on the campaign screen and press Start.
Propose Battle
You can use the "propose battle" command to propose a battle with certain characteristics. It will be hosted and populated once a number of players have accepted to join. The command will show a link that has to be clicked by other players to accept the proposal. By default, the game will be hosted with a password, but you can use !password to make the game public.
- !proposebattle <parameters> can be followed by the parameters minelo, maxelo, minsize and maxsize. For example, "!proposebattle maxelo=1600 minsize=6 maxsize=6" would propose a six-player game for players with rating (maximum of teams and MM) below 1600.
- !endproposal stops a proposal and prevents people from joining a hosted game if they have the link.
Proposal links do not work until the proposer looks at the lobby (due to command buffering while the proposer is playing).
Advanced Options
- Further information: Battle Options
On the left of the current map preview, there is a button called "Options." Here, you will be able to change the game settings in many ways. For example, set a metal multiplier or allow players to spawn anywhere on the map.
Disabling Units
In Options, open the tab named "Start". In the empty box to the right of Disable units enter the name of a particular unit from the List of All Units. Separate multiple entries with the plus (+) symbol.
Playing Unsupported Maps
The game's website has a listing of all maps. If you are trying to play a certain map and the lobby isn't changing to that map, you have probably selected an unsupported map. To set it, you need a private/passworded lobby. Enter !password <passwordvalue> to make it private. The value can be anything, even just one letter. Now go to the website and click on PLAY ON THIS MAP, or type the command !map <mapname> (substitute "<mapname>" with the actual name of the map). You can now remove the password by entering !password without a <passwordvalue>.
Debug data:
[SQLBagOStuff] MainObjectStash using store ReplicatedBagOStuff
[objectcache] MainWANObjectCache using store EmptyBagOStuff
IP: 3.16.10.2
Start request GET /mediawiki/Setting_Up_a_Game
HTTP HEADERS:
CONTENT-TYPE:
CONTENT-LENGTH: 0
X-ORIGINAL-URL: /mediawiki/Setting_Up_a_Game
USER-AGENT: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
HOST: zero-k.info
ACCEPT-ENCODING: gzip, br, zstd, deflate
ACCEPT: */*
CONNECTION: close[localisation] LocalisationCache: using store LCStoreDB
[session] SessionManager using store SqlBagOStuff
[DBReplication] Cannot use ChronologyProtector with EmptyBagOStuff
[DBReplication] Wikimedia\Rdbms\LBFactory::getChronologyProtector: request info {
"IPAddress": "3.16.10.2",
"UserAgent": "Mozilla\/5.0 AppleWebKit\/537.36 (KHTML, like Gecko; compatible; ClaudeBot\/1.0; +claudebot@anthropic.com)",
"ChronologyProtection": false,
"ChronologyPositionIndex": 0,
"ChronologyClientId": false
}[DBConnection] Wikimedia\Rdbms\LoadBalancer::lazyLoadReplicationPositions: executed chronology callback.
[DBConnection] Wikimedia\Rdbms\LoadBalancer::getLocalConnection: connected to database 0 at 'localhost'.
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[session] SessionBackend "bkvhc954706u5addghlv52fos47mph6s" is unsaved, marking dirty in constructor
[session] SessionBackend "bkvhc954706u5addghlv52fos47mph6s" save: dataDirty=1 metaDirty=1 forcePersist=0
[cookie] already deleted setcookie: "wikidb229_mw__session", "", "1711649900", "/", "", "", "1"
[cookie] already deleted setcookie: "wikidb229_mw_UserID", "", "1711649900", "/", "", "", "1"
[cookie] already deleted setcookie: "wikidb229_mw_Token", "", "1711649900", "/", "", "", "1"
[cookie] already deleted setcookie: "forceHTTPS", "", "1711649900", "/", "", "", "1"
[DBConnection] Wikimedia\Rdbms\LoadBalancer::getLocalConnection: connected to database 0 at 'localhost'.
Title::getRestrictionTypes: applicable restrictions to [[Setting Up a Game]] are {edit,move}
[ContentHandler] Created handler for wikitext: WikitextContentHandler
[MessageCache] MessageCache using store SqlBagOStuff
[localisation] LocalisationCache::isExpired(en): cache for en expired due to GlobalDependency
[localisation] LocalisationCache::recache: got localisation for en from source
[DBQuery] startAtomic: entering level 0 (LCStoreDB::finishWrite)
[DBQuery] endAtomic: leaving level 0 (LCStoreDB::finishWrite)
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] SqlBagOStuff::lock failed due to timeout for wikidb229-mw_:messages:en.
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[MessageCache] MessageCache::load: Loading en... local cache is empty, global cache is expired/volatile, loading from database
ParserFactory: using preprocessor: Preprocessor_Hash
Unstubbing $wgLang on call of $wgLang::_unstub from ParserOptions->__construct
[caches] parser: SqlBagOStuff
Article::view using parser cache: yes
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
Parser cache options found.
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
ParserOutput cache found.
Article::view: showing parser cache contents
MediaWiki::preOutputCommit: primary transaction round committed
MediaWiki::preOutputCommit: pre-send deferred updates completed
MediaWiki::preOutputCommit: session changes committed
MediaWiki::preOutputCommit: LBFactory shutdown completed
Title::getRestrictionTypes: applicable restrictions to [[Setting Up a Game]] are {edit,move}