Units
The Units of Zero-K are the tools you will use to execute your strategies and defeat your opponents.
Use your Commander and Constructors to build up your base and economy, Raider and Assault units to attack at close range, Skirmishers and Artillery to engage at long range, and Riots to defend in close quarters.
![]() Cloakbots |
![]() Shieldbots |
![]() Rovers |
![]() Hovercraft |
![]() Gunships |
![]() Airplanes |
---|---|---|---|---|---|
![]() Spiders |
![]() Jumpbots |
![]() Tanks |
![]() Amphbots |
![]() Ships |
![]() Striders |
Properties shared by most or all units in Zero-K include:
- They cost the same amount of Metal and Energy.
- Most units are produced by a factory, and autonomous Drones are built by their parent.
Useful information on units:
Unit chassis movement traits
The movement traits of different unit chassis can be a very important factor when choosing which factory to build at the start of a game. Factors such as the terrain of the map as well as the map size can influence this decision. For instance, lots of deep water may call for a factory with lots of amphibious or airborne options, while a map with mostly somewhat steep terrain may call for bots, spiders or airborne options.
Brief overview
- Legged chassis
- Bots: Non-climbing legged units (generally having two or four legs) tend to have great turn rates and can typically traverse somewhat steep terrain. Some bots are amphibious, notably amphbots and certain strider bots. Many of the bots from the Jumpbot Factory and a few other bots can jump, which can be useful for traversing terrain as well as in combat.
- All-terrain: Climbing legged units (generally having four or more legs) can climb and traverse any land terrain, including practically vertical hills and cliffs, but tend to have poor speed. They include all spider factory units and various other units such as the Scorpion strider.
- Wheeled, tracked and hovercraft chassis
- Rovers tend to have good or great speed, medium or poor turn rates, and prefer flat terrain (slightly steep terrain slows them).
- Tanks are like rovers, except their speed and turn rates are typically worse.
- Hovercraft are like rovers, except they can traverse water easily.
- Airborne chassis
Airplanes fly and tend to have excellent speed. Their movement resembles real-life planes.
Gunships hover above the ground; their movement resembles helicopters.
- Naval chassis
Ships float on the sea surface. Smaller ships are built in the Shipyard, while carriers and battleships are built at the Strider Hub.
Submarines dive underwater, which gives them protection from radar and weaponry (but they cannot surface).
There are also various kinds of indirect movement, such as transport gunships, teleportation, throwing, gravity projection, etc. And terrain can be terraformed by construction units, or flattened by attacking with certain units such as the Tremor artillery unit, which can help enable units such as tanks to cross terrain that would otherwise be impassable for them.
The pathing map overlay when a unit is selected is useful for viewing where a selected unit can and cannot go.
Debug data:
[SQLBagOStuff] MainObjectStash using store ReplicatedBagOStuff
[objectcache] MainWANObjectCache using store EmptyBagOStuff
IP: 3.145.86.241
Start request GET /mediawiki/index.php?oldid=10038&title=Units
HTTP HEADERS:
CONTENT-TYPE:
CONTENT-LENGTH: 0
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.145.86.241",
"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 "k26cljgje8eqb81dlt4h55b9j31i5lf6" is unsaved, marking dirty in constructor
[session] SessionBackend "k26cljgje8eqb81dlt4h55b9j31i5lf6" save: dataDirty=1 metaDirty=1 forcePersist=0
[cookie] already deleted setcookie: "wikidb229_mw__session", "", "1712657976", "/", "", "", "1"
[cookie] already deleted setcookie: "wikidb229_mw_UserID", "", "1712657976", "/", "", "", "1"
[cookie] already deleted setcookie: "wikidb229_mw_Token", "", "1712657976", "/", "", "", "1"
[cookie] already deleted setcookie: "forceHTTPS", "", "1712657976", "/", "", "", "1"
[DBConnection] Wikimedia\Rdbms\LoadBalancer::getLocalConnection: connected to database 0 at 'localhost'.
Title::getRestrictionTypes: applicable restrictions to [[Units]] 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: no
Article::view: doing uncached parse
[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.
[Preprocessor] Cached preprocessor output (key: wikidb229-mw_:preprocess-hash:cc8a131a1d4f01338d279cb5517499fd:0)
[objectcache] Rejected set() for wikidb229-mw_:page:10:bbb50e829eb8c9a0e1d89a8341b70c72d4bcf9bd due to pending writes.
[objectcache] Rejected set() for global:revision-row-1.29:wikidb229-mw_:1574:9856 due to pending writes.
[objectcache] Rejected set() for wikidb229-mw_:page:828:3df63b7acb0522da685dad5fe84b81fdd7b25264 due to pending writes.
[objectcache] Rejected set() for global:revision-row-1.29:wikidb229-mw_:78:981 due to pending writes.
[ContentHandler] Created handler for Scribunto: ScribuntoContentHandler
[Scribunto] Scribunto_LuaStandaloneInterpreter::__construct: creating interpreter: ""C:\Projekty\zero-k.info\www\mediawiki\extensions\Scribunto\includes\engines\LuaStandalone/binaries/lua5_1_5_Win64_bin/lua5.1.exe" "C:\Projekty\zero-k.info\www\mediawiki\extensions\Scribunto\includes\engines\LuaStandalone/mw_main.lua" "C:\Projekty\zero-k.info\www\mediawiki\extensions\Scribunto\includes" "0" "8""
[gitinfo] Candidate cacheFile=C:\Projekty\zero-k.info\www\mediawiki/gitinfo.json for C:\Projekty\zero-k.info\www\mediawiki
[gitinfo] Cache incomplete for C:\Projekty\zero-k.info\www\mediawiki
SiteStats::loadAndLazyInit: reading site_stats from replica DB
[objectcache] Rejected set() for wikidb229-mw_:SiteStats:groupcounts:sysop due to pending writes.
[objectcache] Rejected set() for wikidb229-mw_:page:10:719ea396ad92e01b4757ec2b93bb1e5f270f771d due to pending writes.
[objectcache] Rejected set() for global:revision-row-1.29:wikidb229-mw_:12:79 due to pending writes.
[objectcache] Rejected set() for wikidb229-mw_:page:10:251e3cce3c49e8b536168a37f6b3ff523a60555e due to pending writes.
[objectcache] Rejected set() for global:revision-row-1.29:wikidb229-mw_:313:9037 due to pending writes.
[Preprocessor] Cached preprocessor output (key: wikidb229-mw_:preprocess-hash:b269ce1ce9a0eee27c018e265699aa07:1)
[objectcache] Rejected set() for wikidb229-mw_:page:10:55fa941bea79a2dda2e61ffb469279c5273c057d due to pending writes.
[objectcache] Rejected set() for global:revision-row-1.29:wikidb229-mw_:58:10085 due to pending writes.
[objectcache] Rejected set() for wikidb229-mw_:page:10:1eea3d5309d2a88c1e83cbfafba24489c41a09ad due to pending writes.
[objectcache] Rejected set() for global:revision-row-1.29:wikidb229-mw_:1979:10035 due to pending writes.
[objectcache] Rejected set() for wikidb229-mw_:file:73af53ccad147c77191d984a0352b7bfb895e391 due to pending writes.
[objectcache] Rejected set() for wikidb229-mw_:page:828:55fa941bea79a2dda2e61ffb469279c5273c057d due to pending writes.
[objectcache] Rejected set() for global:revision-row-1.29:wikidb229-mw_:77:1496 due to pending writes.
[objectcache] Rejected set() for wikidb229-mw_:page:828:690afa83acf2d824b47ef6e809fe02b9ca57d63f due to pending writes.
[objectcache] Rejected set() for global:revision-row-1.29:wikidb229-mw_:11:170 due to pending writes.
[objectcache] Rejected set() for wikidb229-mw_:page:828:cbb9fa252e60809efa55a7ad83aea5438ef56753 due to pending writes.
[objectcache] Rejected set() for global:revision-row-1.29:wikidb229-mw_:28:111 due to pending writes.
[objectcache] Rejected set() for wikidb229-mw_:page:10:c90d0aba6c204c18a32b9494d0ed42477146bf40 due to pending writes.
[objectcache] Rejected set() for global:revision-row-1.29:wikidb229-mw_:314:8229 due to pending writes.
[Preprocessor] Cached preprocessor output (key: wikidb229-mw_:preprocess-hash:6a4f440322df0698d0df663d8685e861:1)
[objectcache] Rejected set() for wikidb229-mw_:file:e4712bf6c670140d3478cffd5e75567cee833f61 due to pending writes.
[Mime] MimeAnalyzer::loadFiles: loading mime types from C:\Projekty\zero-k.info\www\mediawiki\includes/libs/mime/mime.types
[Mime] MimeAnalyzer::loadFiles: loading mime info from C:\Projekty\zero-k.info\www\mediawiki\includes/libs/mime/mime.info
File::transform: Doing stat for mwstore://local-backend/local-thumb/1/11/Angle_54.png/64px-Angle_54.png
TransformationalImageHandler::doTransform: creating 64x53 thumbnail at mwstore://local-backend/local-thumb/1/11/Angle_54.png/64px-Angle_54.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/1/11/Angle_54.png/96px-Angle_54.png
TransformationalImageHandler::doTransform: creating 96x80 thumbnail at mwstore://local-backend/local-thumb/1/11/Angle_54.png/96px-Angle_54.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/1/11/Angle_54.png/128px-Angle_54.png
TransformationalImageHandler::doTransform: creating 128x106 thumbnail at mwstore://local-backend/local-thumb/1/11/Angle_54.png/128px-Angle_54.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
[objectcache] Rejected set() for wikidb229-mw_:file:70437f0280a0163c89832d86279bbfb3934113bc due to pending writes.
File::transform: Doing stat for mwstore://local-backend/local-thumb/1/18/Angle_90.png/64px-Angle_90.png
TransformationalImageHandler::doTransform: creating 64x64 thumbnail at mwstore://local-backend/local-thumb/1/18/Angle_90.png/64px-Angle_90.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/1/18/Angle_90.png/96px-Angle_90.png
TransformationalImageHandler::doTransform: creating 96x96 thumbnail at mwstore://local-backend/local-thumb/1/18/Angle_90.png/96px-Angle_90.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/1/18/Angle_90.png/128px-Angle_90.png
TransformationalImageHandler::doTransform: creating 128x128 thumbnail at mwstore://local-backend/local-thumb/1/18/Angle_90.png/128px-Angle_90.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
[objectcache] Rejected set() for wikidb229-mw_:file:a3506b5174d015b624cf57221aca8eda2f52d39d due to pending writes.
File::transform: Doing stat for mwstore://local-backend/local-thumb/3/38/Angle_27.png/64px-Angle_27.png
TransformationalImageHandler::doTransform: creating 64x31 thumbnail at mwstore://local-backend/local-thumb/3/38/Angle_27.png/64px-Angle_27.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/3/38/Angle_27.png/96px-Angle_27.png
TransformationalImageHandler::doTransform: creating 96x46 thumbnail at mwstore://local-backend/local-thumb/3/38/Angle_27.png/96px-Angle_27.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/3/38/Angle_27.png/128px-Angle_27.png
TransformationalImageHandler::doTransform: creating 128x61 thumbnail at mwstore://local-backend/local-thumb/3/38/Angle_27.png/128px-Angle_27.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/3/38/Angle_27.png/64px-Angle_27.png
TransformationalImageHandler::doTransform: creating 64x31 thumbnail at mwstore://local-backend/local-thumb/3/38/Angle_27.png/64px-Angle_27.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/3/38/Angle_27.png/96px-Angle_27.png
TransformationalImageHandler::doTransform: creating 96x46 thumbnail at mwstore://local-backend/local-thumb/3/38/Angle_27.png/96px-Angle_27.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/3/38/Angle_27.png/128px-Angle_27.png
TransformationalImageHandler::doTransform: creating 128x61 thumbnail at mwstore://local-backend/local-thumb/3/38/Angle_27.png/128px-Angle_27.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/3/38/Angle_27.png/64px-Angle_27.png
TransformationalImageHandler::doTransform: creating 64x31 thumbnail at mwstore://local-backend/local-thumb/3/38/Angle_27.png/64px-Angle_27.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/3/38/Angle_27.png/96px-Angle_27.png
TransformationalImageHandler::doTransform: creating 96x46 thumbnail at mwstore://local-backend/local-thumb/3/38/Angle_27.png/96px-Angle_27.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
File::transform: Doing stat for mwstore://local-backend/local-thumb/3/38/Angle_27.png/128px-Angle_27.png
TransformationalImageHandler::doTransform: creating 128x61 thumbnail at mwstore://local-backend/local-thumb/3/38/Angle_27.png/128px-Angle_27.png using scaler im
TransformationalImageHandler::doTransform: Transforming later per flags.
[Preprocessor] Cached preprocessor output (key: wikidb229-mw_:preprocess-hash:cc8a131a1d4f01338d279cb5517499fd:0)
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 [[Units]] are {edit,move}