Game Overview
Drone Battles is a turn-based strategy game set on an alien moon where players control teams of drones to gather resources, build infrastructure, and engage in tactical combat. The game operates through a REST API, allowing players to issue commands to their drones and buildings while the game engine processes actions in discrete cycles.
Key Features
- Hex-Based Map: Navigate a hexagonal grid with varying terrain types
- Cycle-Based Gameplay: Actions take a specific number of cycles to complete
- Resource Economy: Mine ores, refine them into materials, and use them for construction
- Modular Drones: Equip drones with different equipment for specialized roles
- Base Building: Construct various buildings for production, defense, and support
- Tactical Combat: Engage enemies with lasers, missiles, and turrets
Core Concepts
Cycles
The game operates in discrete time units called cycles. Every action takes a certain number of cycles to complete. During each cycle:
- Queued actions are processed
- Power is generated and distributed
- In-flight missiles advance toward their targets
- Marks on targets expire
The Hex Grid
The game map uses an odd-q offset hexagonal coordinate system: odd-numbered columns (where q is odd) are visually shifted down by half a hex height compared to even columns. This means the diagonal neighbor offsets change depending on whether you are on an even or odd column. Each tile has:
- Coordinates (q, r): Position on the map
- Terrain Type: Normal, difficult (doubles ground movement cycles), or impassable
- Elevation: Height of the terrain (affects hover drones)
- Resources: Ore deposits that can be mined
Coordinate Direction Reference
The map uses flat-top hexagons with odd-q offset coordinates. The q axis increases to the right. The r axis increases downward. Because hexes are staggered, diagonal neighbors have different offsets depending on whether the drone is on an even or odd column.
Adjacent tile offsets from drone at (0, 0):
| Direction | Even column (q%2=0) | Odd column (q%2=1) |
|---|---|---|
| Northeast | (+1, -1) | (+1, 0) |
| Southeast | (+1, 0) | (+1, +1) |
| South | (0, +1) | (0, +1) |
| Southwest | (-1, 0) | (-1, +1) |
| Northwest | (-1, -1) | (-1, 0) |
| North | (0, -1) | (0, -1) |
Drone Facing Directions
Drones have a facing direction numbered 0-5, clockwise from Northeast:
| Value | Direction | Drive offset (even col) | Drive offset (odd col) |
|---|---|---|---|
| 0 | Northeast | (+1, -1) | (+1, 0) |
| 1 | Southeast | (+1, 0) | (+1, +1) |
| 2 | South | (0, +1) | (0, +1) |
| 3 | Southwest | (-1, 0) | (-1, +1) |
| 4 | Northwest | (-1, -1) | (-1, 0) |
| 5 | North | (0, -1) | (0, -1) |
When you issue a drive forward (direction=1), the drone moves one tile in its facing direction. Drive reverse (direction=-1) moves in the opposite direction (facing + 3).
Teams
Players are assigned to teams. Drones and buildings can only interact with friendly units (same team) for support actions, while combat actions target enemy units (different teams).
Action Queue
Each drone has its own independent FIFO (first-in, first-out) action queue. When you issue a command, it's added to that drone's queue. The engine processes one action per drone per game cycle — each cycle, every drone's front-of-queue action ticks forward. Multi-cycle actions (e.g., mining at 20 cycles) tick once per cycle until complete, then the next queued action begins. Because queues are per-drone, you can issue commands to all your drones simultaneously — every drone processes its own queue in parallel each cycle. Queue up a sequence of actions (e.g., turn, drive, drive, turn, fire) and the drone will execute them one after another without waiting for further input.
Execution Priority
Each cycle, actions are executed in a specific order across all drones and buildings:
- Movement — Turn, drive, ascend, and descend actions are resolved first, ensuring drones reach their new positions before anything else happens.
- Other Actions — Non-combat actions such as scanning, mining, repairing, charging, and building operations are processed next.
- Combat — Firing weapons (lasers, auto-cannons, missiles) is resolved last, using the updated positions from the movement phase.
Getting Started
Registration
When you register a new account, you automatically receive:
- A 15x15 tile base area assigned to your team
- Starter Buildings:
- Command Center
- Solar Panel Array
- Battery Array
- Drone Charging Station
- Drone Repair Station
- Refinery
- Drone Production Plant
- Equipment Production Plant
- 2 Starter Drones equipped with mining equipment:
- Propulsion (for movement)
- Drill (for mining ore)
- Hopper (for carrying ore)
- Sensors (for scanning the environment)
First Steps
- Scan your surroundings: Use drone sensors to reveal the map and find resources
- Locate ore deposits: Find titanium, rare earth, and unobtanium ores
- Build infrastructure: Construct solar panels for power, then a refinery
- Mine and refine: Equip drones with drills and hoppers to gather ore
- Expand: Build production facilities and create more drones
- Defend: Build turrets and equip combat drones as needed
Drones
Drone Stats
| Stat | Base Value | Description |
|---|---|---|
| Max Health | 100 | Hit points before destruction |
| Max Battery | 4000 | Base energy storage (increased by battery equipment) |
| Equipment Slots | 6 | Number of equipment pieces that can be installed |
| Base Armour | 0 | Damage reduction (increased by reactive armour) |
Drone Properties
- Location: Current hex coordinates (q, r)
- Direction: Facing direction (0-5, corresponding to hex edges)
- Elevation: Height above ground (0 = ground level)
- Owner: The player who controls the drone
- Team: Which team the drone belongs to
Equipment Slots
Each drone has 6 equipment slots. Equipment determines what actions a drone can perform. A drone without propulsion cannot move; a drone without weapons cannot attack.
Per-Type Limits
Some equipment types have per-drone caps regardless of available slots:
| Equipment | Max per Drone |
|---|---|
| Laser Cannon | 2 |
| Propulsion | 2 |
| Wire-Guided Missile | 1 |
| Auto-Cannon | 1 |
| Reactive Armour | 1 |
| Point Defense | 1 |
| Land Mine | 1 |
| Decoy Beacon | 1 |
| Smoke Launcher | 1 |
| Howitzer | 1 |
All other equipment types (Sensors, Drill, Hopper, Battery, Shield Generator, Targeting Computer, Hover Tech, Portable Charger, Mobile Repair Kit, Ammunition, DF Antenna, Jammer, Signature Dampener, Seismic Sensor Array, Howitzer Shells, Howitzer Charges) have no per-type limit and can fill all available slots.
Warning Thresholds
Players can configure percentage-based warning thresholds on individual drones for battery, health, shields, and equipment durability. When a stat drops below its configured threshold, the engine delivers a WARNING message through the message queue.
Supported Warning Types
| Type | What It Monitors | Example |
|---|---|---|
| battery | Current battery as % of max battery | Set to 20 → warns when battery drops below 20% |
| health | Current health as % of max health | Set to 30 → warns when health drops below 30% |
| shields | Current shields as % of max shields | Set to 50 → warns when shields drop below 50% |
| equipment | Durability of each equipped item as % of its max durability | Set to 25 → warns when any item drops below 25% durability |
Behaviour
- Thresholds are integers from 0 to 100 (percentage).
- A warning fires once when a value drops below the threshold. It will not fire again until the value recovers above the threshold and drops below again.
- Equipment warnings check every equipped item individually. The warning message identifies which specific item(s) are below threshold.
- Warnings are checked every engine cycle after battery failure checks.
- Destroyed drones are skipped.
API Endpoints
| Method | Endpoint | Description |
|---|---|---|
| GET | /drones/<drone_id>/warnings | Read current thresholds |
| POST | /drones/<drone_id>/warnings | Set thresholds (send JSON with keys to enable) |
| DELETE | /drones/<drone_id>/warnings | Remove all thresholds |
Equipment
Equipment is manufactured at the Drone Equipment Production Plant and installed on drones. Each piece has weight, durability, and enables specific actions.
Equipment Durability
Every piece of equipment has a durability value. There are two ways durability is lost:
- Use wear: Each time equipment is used (firing, scanning, driving, etc.), there is a 5% chance it takes 1 point of durability wear.
- Combat damage: When a drone takes health damage in combat, one random piece of functional equipment also loses durability equal to the health damage taken (1:1 ratio). Shield-only damage does not affect equipment. See Equipment Combat Damage in the Combat Mechanics section for which weapon types trigger this.
When durability reaches zero, the equipment is broken and can no longer function — a broken drill cannot mine, broken propulsion cannot drive, etc.
Equipment can also be destroyed by taking damage in combat. Destroyed equipment is permanently non-functional and cannot be repaired.
Repairing Equipment
Broken (but not destroyed) equipment can be repaired in two ways:
- Mobile Repair Kit: A drone equipped with a Mobile Repair Kit can repair an adjacent friendly drone's equipment. The repairer and target must be at the same elevation. Drones cannot repair their own equipment. The repair kit itself takes wear when used.
Level Durability Restored Cycles 1 25 15 2 50 10 3 75 5 - Drone Repair Station: A powered Drone Repair Station building can repair equipment on any friendly drone within range (1 tile). Restores 50 durability per repair at a cost of 50 power.
Movement Equipment
Propulsion
Enables ground movement and turning.
Levels 1-3: Higher levels move faster but cost more battery.
Weight Cost: In addition to the base battery cost, driving consumes 1 extra battery per 20 units of total drone weight (rounded up). Heavier drones burn more battery to move. Total drive cost = base battery + ceil(total_weight / 20).
Hover Tech
Requires: unlock_hover_tech
Enables vertical movement (ascending/descending).
Battery cost scales with drone weight. Hovering drones can fly over obstacles, other units, and buildings if high enough: above elevation 5 for 1x1 buildings, above 10 for 2x2, and above 15 for 3x3 (including Command Centers).
No Weapons While Hovering: Drones cannot fire any weapons while airborne. The drone must land before it can engage targets.
Elevated Speed Bonus: While above ground level, movement actions (Turn, Drive, Ascend, Descend) complete in half the time!
Hover Battery Drain: Hovering drones consume battery each cycle to maintain altitude. Drain scales with elevation and drone weight. If battery reaches zero while hovering, the drone will crash!
Combat Equipment
Laser Cannon
Primary weapon for engaging enemies.
Wire-Guided Missile
Requires: unlock_wire_guided_missile
Powerful single-use weapon. Three power levels control range and battery cost.
Targeting Computer
Marks enemies for increased accuracy. Also provides fire feedback — when a drone with a functional targeting computer fires any weapon (laser, missile, or auto-cannon), it receives a message with the target location, hit/miss counts, and damage dealt (including splash damage).
Marked targets give all friendly units a +20% accuracy bonus when attacking them.
Reactive Armour
Requires: unlock_reactive_armour
Reduces incoming damage.
Armour reduces damage from all weapon hits except armour-piercing cannon rounds.
Auto-Cannon
Requires: unlock_auto_cannon
Directional projectile weapon that fires rounds tile-by-tile. Can fire at specific relative coordinates (target_q, target_r) or in a hex direction (direction: 0-5) to max range. Direction mode: 0=NE, 1=SE, 2=S, 3=SW, 4=NW, 5=N.
Requires Ammunition equipment to fire. AP/HE rounds travel tile-by-tile, rolling accuracy at each tile (75% close range to 20% at max range, capped at 95%). Drones not on the targeted tile are path interceptions and use a flat 10% base accuracy instead. AP rounds disappear on miss at max range. HE rounds always explode at max range. Canister rounds fire an instant cone of flechettes (see below). Marked targets receive accuracy bonus. All weapons receive +30% accuracy bonus against LUCAS drones.
Ammunition
Requires: unlock_auto_cannon
Consumable rounds for the auto-cannon. Each pack holds 10 rounds and occupies 1 equipment slot. When empty, the slot is freed. Three types: Armour Piercing, High Explosive, and Canister Round.
Shield Generator
Requires: unlock_shield_generator
Charges and extends shield capacity.
All drones have a base max shield capacity of 50. Shield Generators add an additional +50 capacity and enable active shield charging.
Shields absorb damage before health. Drones can transfer shields to adjacent drones at the same elevation (no equipment required).
DF Antenna
Deployable passive electromagnetic sensor for long-range detection of drone activity.
Must be deployed and antenna raised before listening. Drone cannot move while deployed. Passively detects EM emissions from all drone actions within a configurable cone. Delivers raw EM spectrum data — does not identify the source. See full details.
Jammer
Deployable electronic warfare device that blocks drone communications within a directional beam.
When active, replaces ACTION_COMPLETED and WARNING messages for drones in the beam with "Signal jammed". Affects both friendly and enemy drones. See full details.
Land Mine (LISA)
Latent Ignition Subsurface Armament — Deployable explosive ordnance that detonates when triggered by ground-level drones or weapon impacts.
Cannot be detected by scan commands, but can be found using identify commands on the tile. Mines deplete like ammunition — equipment is removed when all mines are used. See full details.
Signature Dampener
Requires: unlock_signature_dampener
Passive stealth equipment that reduces drone detectability.
Has two effects: (1) EM dampening is always active — all EM emissions from this drone are reduced by 50%, making it harder to detect on DF antennas. Exception: scanning and identifying always emit at full strength. (2) Scan cloaking activates after the idle cooldown period, reducing enemy scan detection range. Upgrades improve both effects.
Decoy Beacon
Requires: unlock_decoy_beacon
Deployable decoy that mimics a drone's electrical signature on scans.
Deploys a decoy drone on an adjacent tile in a specified hex direction. Decoys appear on scans as real drones but have no equipment and minimal HP. Consumable — equipment is removed when all decoys are deployed. See full details.
Smoke Launcher
Requires: unlock_smoke_launcher
Deployable smoke screen that blocks line-of-sight for scan and identify commands.
Deploys a smoke screen on the drone's current tile and surrounding tiles. Consumable — equipment is removed when all charges are used. See full details.
Point Defense System
Requires: unlock_point_defense
Automated missile interception system that protects the drone and nearby allies.
When activated, intercepts incoming enemy missiles within range for the specified number of cycles (default 1). Request body accepts optional "cycles" parameter. Battery cost per activation plus additional cost per successful interception. See levels: L1 range 1, L2 range 2, L3 range 3.
Seismic Sensor Array
Passive detection equipment that analyses seismic waveforms from nearby weapon fire, explosions, and drone movement.
Delivers raw frequency spectrum data (8 bins) and a bearing direction. Does not reveal distance, weapon type, or coordinates — players must analyse the spectrum to identify weapons and estimate range from amplitude levels. Multiple events from the same direction combine via waveform superposition, creating constructive or destructive interference. Works for both friendly and enemy fire. No actions required — purely passive. See full details.
Howitzer
Requires: unlock_howitzer
Deployable long-range artillery weapon. Fires anti-drone airburst shells in arcing trajectories that ignore line of sight. Highly effective against drone formations but largely ineffective against buildings (10% damage, no splash).
Requires Howitzer Shells and Howitzer Charges to fire. Cannot move or hover while deployed. Very loud seismic signature. See full details.
Howitzer Shells
Requires: unlock_howitzer
Ammunition for the howitzer. Consumable — equipment is removed when all rounds are expended.
Damage: 100 direct, 50 splash (ring 1), 25 splash (ring 2). Buildings take 10% damage on direct hit only.
Howitzer Charges
Requires: unlock_howitzer
Propellant charges that determine the howitzer's range. Each charge loaded adds +8 to min and max range.
1 charge: range 8-16. 2 charges: range 16-24. 3 charges: range 24-32.
Utility Equipment
Sensors
Reveals map and identifies units.
Scan: Reveals terrain, resources, and unit positions. Results use relative coordinates where (0, 0) is the scanning drone.
Identify: Gets detailed info about specific targets.
Drill
Extracts ore from resource deposits.
Higher levels attempt more extractions per cycle but cost more battery.
Hopper
Stores mined ore and refined materials.
Required for mining operations. Contents can be unloaded at buildings.
Battery
Increases drone power storage.
Essential for extended operations away from charging stations.
Portable Charger
Transfers battery to other drones.
Higher levels transfer faster but with lower efficiency (energy loss).
Mobile Repair Kit
Repairs drones and buildings in the field.
Higher levels repair more per cycle but cost more battery.
Equipment Crafting Costs
Materials required to build equipment at the Drone Equipment Production Plant:
| Equipment | Titanium Parts | Battery Materials |
|---|---|---|
| Drill | 8 | 4 |
| Sensors | 4 | 8 |
| Battery | 6 | 14 |
| Portable Charger | 6 | 10 |
| Reactive Armour | 22 | 4 |
| Hopper | 6 | 2 |
| Mobile Repair Kit | 10 | 6 |
| Shield Generator | 8 | 12 |
| Laser Cannon | 18 | 12 |
| Propulsion | 14 | 6 |
| Hover Tech | 14 | 8 |
| Targeting Computer | 4 | 8 |
| Wire-Guided Missile | 24 | 12 |
| Auto-Cannon | 20 | 10 |
| AP Ammunition | 8 | 2 |
| HE Ammunition | 4 | 6 |
| Canister Ammunition | 6 | 4 |
| DF Antenna | 12 | 10 |
| Jammer | 15 | 12 |
| Land Mine | 10 | 8 |
| Signature Dampener | 12 | 14 |
| Decoy Beacon | 8 | 10 |
| Smoke Launcher | 6 | 8 |
| Point Defense | 20 | 15 |
| Seismic Sensor Array | 6 | 10 |
| Howitzer | 30 | 20 |
| Howitzer Shells | 15 | 10 |
| Howitzer Charges | 8 | 8 |
Equipment Action Costs
Most equipment actions have three power levels. Higher levels are faster or more powerful but cost more battery.
action_id. Once the action completes, its results appear in the message queue tagged with that same action_id. Poll the /messages endpoint to retrieve your results and match them back to the original request by action_id.
Drone Action Summary
- Status — Returns full drone status information via the message queue.
- Drive — Moves the drone one tile forward in its current facing direction.
- Turn — Rotates the drone to face a new hex direction (0–5).
- Scan — Reveals terrain, elevation, and entity presence for all tiles within sensor range.
- Identify — Returns detailed information about a specific target tile, drone, or building.
- Mine — Extracts ore from an adjacent resource deposit and stores it in the hopper.
- Fire (Laser) — Fires all equipped laser cannons at a target drone or building.
- Fire (Missile) — Launches a wire-guided missile at a target tile coordinate.
- Fire (Auto-Cannon) — Fires the loaded ammunition at a target, consuming one round per shot.
- Load Ammo — Loads an ammunition pack into the auto-cannon for firing.
- Dump Hopper — Discards resources from the hopper, optionally by type and amount.
- Mark — Marks a target to boost accuracy for all friendly attacks against it.
- Charge Shields — Regenerates the drone's shields using the shield generator.
- Transfer Shields — Transfers shields from this drone to an adjacent friendly drone.
- Charge (Portable Charger) — Transfers battery from this drone to an adjacent friendly drone.
- Repair Drone — Restores health to an adjacent friendly drone.
- Repair Equipment — Restores durability to a broken equipment item on an adjacent drone.
- Ascend / Descend — Changes the drone's hover elevation using Hover Tech.
- DF Deploy / Stow — Deploys or stows the DF Antenna. Drone cannot move while deployed.
- DF Raise / Lower — Raises or lowers the DF Antenna mast (must be deployed).
- DF Configure — Sets the DF Antenna's listening cone direction (0-5) and width (0-4). The antenna then passively detects EM emissions each cycle.
- Jammer Deploy / Stow — Deploys or stows the Signal Jammer. Drone cannot move while deployed.
- Jammer Raise / Lower — Raises or lowers the Jammer antenna mast.
- Jammer Activate / Deactivate — Starts or stops the jamming beam in a hex direction. Drains battery each cycle while active.
- Land Mine Deploy — Deploys a land mine at the drone's current tile. Mines are invisible to scan but visible to identify. Detonates on ground-level drone movement or weapon impact.
- Decoy Deploy — Deploys a decoy drone on an adjacent tile in a specified direction. Decoys mimic drone signatures on scans.
- Smoke Deploy — Deploys a smoke screen on the drone's current tile and surrounding tiles. Blocks line-of-sight for scan and identify.
- PDS Activate — Activates point defense system for the specified number of cycles (default 1) to intercept incoming enemy missiles within range.
- Howitzer Deploy / Stow — Deploys or stows the howitzer. Drone cannot move while deployed. Level-dependent: L1=8, L2=5, L3=3 cycles. Cannot deploy inside bases.
- Howitzer Load Shell — Loads a shell from Howitzer Shells equipment into the breech. L1=8, L2=5, L3=3 cycles.
- Howitzer Load Charges — Loads 1-3 propellant charges to set range (each charge adds +8 min/max range). L1=8, L2=5, L3=3 cycles.
- Howitzer Aim — Aims at target coordinates. Speed depends on level (L1=2 cycles/tile, L2=1, L3=1).
- Howitzer Fire — Fires the loaded shell. 10-cycle cooldown. 30% hit, 30% scatter adjacent, 30% scatter 2 tiles, 10% dud.
- Ammo Transfer — Transfers ammunition (AP, HE, canister), howitzer shells, or howitzer charges to an adjacent friendly drone. L1=15, L2=10, L3=5 cycles.
Status (no equipment required)
| Action | Cycles |
|---|---|
| Status | 1 |
Returns full drone status information via the message queue.
Propulsion
| Action | Level | Cycles |
|---|---|---|
| Drive | 1 | 8 |
| 2 | 6 | |
| 3 | 4 | |
| Turn | 1 | 6 |
| 2 | 4 | |
| 3 | 2 |
Drive battery shown is the base cost. An additional ceil(total_weight / 20) is added per drive.
Sensors
| Action | Level | Cycles | Range Multiplier |
|---|---|---|---|
| Scan | 1 | 1 | 1.0x |
| 2 | 1 | 1.5x | |
| 3 | 1 | 2.0x | |
| Identify | 1 | 1 | 1.0x |
| 2 | 1 | 1.5x | |
| 3 | 1 | 2.0x |
Base scan range is 5 tiles. Range multiplier is applied to this base.
Drill
| Action | Level | Attempts/Cycle |
|---|---|---|
| Mine | 1 | 1 |
| 2 | 2 | |
| 3 | 3 |
Laser Cannon
| Action | Level | Cycles | Damage |
|---|---|---|---|
| Fire | 1 | 1 | 10 |
| 2 | 1 | 25 | |
| 3 | 1 | 40 |
Wire-Guided Missile
| Action | Level | Range |
|---|---|---|
| Fire | 1 | 5 tiles |
| 2 | 10 tiles | |
| 3 | 15 tiles |
Auto-Cannon
| Action | Level | Range |
|---|---|---|
| Fire | 1 | 5 tiles |
| 2 | 10 tiles | |
| 3 | 15 tiles |
Auto-Cannon Load / Unload
| Action | Cycles |
|---|---|
| Load Ammo | 20 |
| Unload Ammo | 10 |
Must be loaded before firing. When a loaded ammo pack empties, another must be loaded. If the cannon already has ammunition loaded with rounds remaining, you must unload it first before loading a different type.
Hopper
| Action | Cycles |
|---|---|
| Dump Hopper | 1 |
Discards resources from the hopper. Can optionally specify a resource type and amount.
Targeting Computer
| Action | Level | Cycles | Range |
|---|---|---|---|
| Mark | 1 | 1 | 5 tiles |
| 2 | 1 | 7.5 tiles | |
| 3 | 1 | 10 tiles |
Shield Generator
| Action | Level | Cycles | Effect |
|---|---|---|---|
| Charge | 1 | 15 | 5 shields/cycle |
| 2 | 10 | 15 shields/cycle | |
| 3 | 5 | 30 shields/cycle |
Shield Transfer (no equipment required)
| Level | Cycles | Shields Transferred |
|---|---|---|
| 1 | 15 | 25 |
| 2 | 10 | 20 |
| 3 | 5 | 15 |
Portable Charger
| Action | Level | Cycles | Efficiency | Energy Delivered | Donor Cost |
|---|---|---|---|---|---|
| Charge | 1 | 15 | 100% | 50 | 50 |
| 2 | 10 | 75% | 50 | 67 | |
| 3 | 5 | 50% | 50 | 100 |
Upgrades increase energy delivered by +25 per tier and reduce cycles by 1 per tier. Donor cost scales with efficiency: cost = energy / efficiency.
Mobile Repair Kit
| Action | Level | Cycles | HP Repaired |
|---|---|---|---|
| Repair | 1 | 15 | 25 |
| 2 | 10 | 25 | |
| 3 | 5 | 25 | |
| Repair Equipment | 1 | 15 | 25 durability |
| 2 | 10 | 25 durability | |
| 3 | 5 | 25 durability |
Hover Tech
| Action | Level | Cycles |
|---|---|---|
| Ascend | 1 | 6 |
| 2 | 4 | |
| 3 | 2 | |
| Descend | 1 | 6 |
| 2 | 4 | |
| 3 | 2 |
Hover Tech battery cost scales with drone weight. Base battery shown is for a minimal-weight drone.
DF Antenna
| Action | Cycles | Notes |
|---|---|---|
| Deploy | 10 | Drone cannot move while deployed |
| Stow | 10 | Antenna must be at height 0 |
| Raise / Lower | 20 per 5 units | Must be deployed first |
| Configure | 1 | Sets cone direction and width |
Detection range: 30 tiles, detection threshold: 3.0. Antenna must be deployed and raised above height 0 before listening. Use the configure action to set the cone direction (0-5) and width (0-4): 0 = narrow line (±10°), 1 = 60°, 2 = 120°, 3 = 240°, 4 = 360° (full circle). Once configured, the antenna passively detects EM emissions each cycle — no repeated scan actions needed.
Jammer
| Action | Level | Cycles | Range |
|---|---|---|---|
| Deploy | — | 10 | — |
| Stow | — | 10 | — |
| Raise / Lower | — | 20 per 5 units | — |
| Activate / Deactivate | — | 1 | — |
| Jamming (per cycle) | 1 | — | 15 tiles |
| 2 | — | 25 tiles | |
| 3 | — | 40 tiles |
Antenna must be deployed and raised before activating. While active, the jammer drains battery each cycle and blocks ACTION_COMPLETED and WARNING messages for drones in the beam. Must deactivate before lowering; must lower to height 0 before stowing.
Howitzer
| Action | Level | Cycles | Notes |
|---|---|---|---|
| Deploy | 1 | 8 | Cannot move while deployed. Cannot deploy while hovering. Cannot deploy inside a base. |
| 2 | 5 | ||
| 3 | 3 | ||
| Stow | 1 | 8 | Re-enables movement. |
| 2 | 5 | ||
| 3 | 3 | ||
| Load Shell | 1 | 8 | Consumes 1 shell |
| 2 | 5 | ||
| 3 | 3 | ||
| Load Charges (×1) | 1 | 8 | Per charge; each adds +8 min/max range |
| 2 | 5 | ||
| 3 | 3 | ||
| Aim | 1 | 2/tile | Aim speed in cycles per tile of distance |
| 2 | 1/tile | ||
| 3 | 1/tile | ||
| Fire | 1 | 8 | 10-cycle cooldown. Shell travels 2 tiles/cycle. |
| 2 | 5 | ||
| 3 | 3 |
Full fire sequence (deploy + load shell + 3 charges + aim 20 tiles + fire): L1 = 88 battery, L2 = 120 battery, L3 = 286 battery. L3 is 3× faster but costs 3.25× more battery.
Range is determined by charges loaded (1 charge: 8-16, 2: 16-24, 3: 24-32). Max range at T3 with 3 charges: 56 tiles. Very loud seismic signature — easily detected by DF antennas and seismic sensors.
Buildings
Buildings are constructed by the Command Center and provide production, defense, and support capabilities. All buildings require power to operate.
Building Self-Repair
All buildings can self-repair via POST /buildings/<building_id>/common/repair. This is a universal action available to every building type.
| Property | Value |
|---|---|
| Healing | 50 HP (capped at max health) |
| Duration | 20 cycles (affected by efficiency) |
| Resource Cost | 3 titanium_parts + 1 battery_materials |
| Resource Source | Command center (consumed immediately when queued) |
Power Generation
Solar Panel Array
Generates power based on 3D alignment with the suns. Panels have two orientation controls: direction (0-359° azimuth) and tilt (0-90°, where 0 = aimed at the horizon and 90 = aimed straight up). Efficiency is calculated using a dot-product between the panel's facing vector and the sun's position vector. Use the REPOSITION action to adjust both direction and tilt for optimal output.
Battery Array
Stores excess power for later use. Essential for maintaining operations during nighttime when both suns are below the horizon and solar panels generate zero power.
Production Buildings
Refiner
Converts raw ore into refined materials:
- Titanium Ore → Titanium Parts (50% success)
- Rare Earth Ore → Battery Materials (25% success)
- Unobtanium Ore → Enriched Unobtanium (2% success)
Drone Production Plant
Manufactures new drones. Requires 30 titanium parts and 15 battery materials per drone.
Drone Equipment Production Plant
Manufactures equipment and installs/removes it from drones. Essential for customizing your drone fleet.
Support Buildings
Drone Charging Station
Recharges drone batteries. Drones must be adjacent. Charging takes 10 cycles (10 power/cycle, 100 total).
Drone Repair Station
Repairs damaged drones. Much faster than mobile repair kits.
Silo
Stores ore and materials. Useful for stockpiling resources.
Command Center
Your main building. Constructs all other buildings. Losing it is catastrophic. Generates a small amount of passive power each cycle (0.2), allowing slow recovery even if all solar panels are destroyed. The STATUS_REPORT action returns all coordinates relative to the command center's origin (top-left tile), where the origin is (0, 0).
Defense Buildings
Laser Turret
Dual Laser Cannons:
- Range: 15 tiles
- Accuracy: 85% base + 20% building bonus (scales with distance)
- Damage: 40 per cannon (2 shots per fire)
- Cooldown: 5 cycles
Sensors: Scan range 15, Identify range 15
Targeting: Mark range 15, +20% accuracy bonus
Missile Turret
Wire-Guided Missiles:
- Capacity: 4 missiles (fires 2 per action at different targets)
- Range: 15 tiles
- Damage: 100 per missile
- Speed: 2 cycles per tile (tile-by-tile movement)
- Max flight time: 40 cycles
- Cooldown: 5 cycles
- Wire-guided: missiles fail if turret destroyed mid-flight
- Building missiles cannot be redirected
Reload: 40 cycles, costs 12 titanium_parts + 8 battery_materials
Sensors: Scan range 15, Identify range 15
Targeting: Mark range 15, +20% accuracy bonus
Auto-Cannon Turret
Targeted Cannon Rounds:
- Ammo: 16 rounds per type (AP/HE/Canister)
- Fires 2 rounds per action at target coordinates
- Range: 22 tiles (min range: 2)
- Must RELOAD to select ammo type before first fire
- Cooldown: 20 cycles
- Base accuracy: 75% + 20% building bonus
Reload: 40 cycles, costs 6 titanium_parts + 2 battery_materials, can change ammo type
Sensors: Scan range 15, Identify range 15
Targeting: Mark range 15, +20% accuracy bonus
Shield Array
Generates shields and can transfer them to other buildings. Essential for protecting key structures.
Sensor Array
Dedicated sensor building that bypasses all line-of-sight checks (elevated high enough to see over obstacles). Can identify any tile including terrain, resources, buildings, and drones. Efficiency parameter scales effective range. Ideal for early warning and intelligence gathering.
Point Defense System
Automated missile defense building. When activated, intercepts incoming enemy missiles within range for the specified number of cycles (default 1). Each missile passing through the interception zone has a 30% chance of being destroyed. If power is lost, activation pauses and resumes when power returns. Stack multiple PDS buildings for layered defense.
LUCAS Launcher
LUCAS (Low-cost Uncrewed Combat Attack System) — builds, stores, and launches expendable attack drones that fly to a target and explode.
Targeting: LUCAS drones can only target tiles within 3 tiles of the nearest enemy base edge. This prevents LUCAS explosions from reaching buildings inside bases.
LUCAS Drone:
- 1 HP, 0 armour, 0 shields — destroyed by any direct hit
- Flies at elevation 30, speed 1 tile per 3 cycles
- Cannot receive any normal drone commands
- Emits seismic signatures only on launch and impact (airborne during flight = no ground vibration)
- Emits strong EM signatures continuously during flight (guidance/propulsion electronics) — easily detected by DF antennas
- All weapons receive +30% accuracy bonus against LUCAS drones
- Max flight time: 500 cycles — falls if exceeded
- If the launcher is destroyed, the in-flight drone loses guidance and falls
Explosion (3-ring):
- Target tile: 250 damage
- Adjacent tiles (ring 1): 125 damage
- 2 tiles out (ring 2): 50 damage
When shot down: Falls at 1 cycle per 5 elevation units, then explodes on landing at current position.
When reaching target: Plummets from elevation 30 and explodes on landing.
Scoring: No loss points for LUCAS drone destruction. Kills from LUCAS drones score points normally.
Actions: manufacture (build drone, 500 cycles), launch (25 cycles, 500 power), redirect (change target mid-flight).
LUCAS drones do not count toward the drone cap.
Building Construction Costs
| Building | Titanium Parts | Battery Materials | Enriched Unobtanium |
|---|---|---|---|
| Solar Panel Array | 40 | 20 | - |
| Battery Array | 40 | 30 | - |
| Drone Charging Station | 50 | 20 | - |
| Drone Repair Station | 50 | 25 | - |
| Silo | 20 | 5 | - |
| Refiner | 100 | 40 | - |
| Drone Production Plant | 120 | 50 | - |
| Drone Equipment Production Plant | 140 | 60 | - |
| Shield Array | 100 | 50 | 2 |
| Laser Turret | 100 | 40 | 1 |
| Missile Turret | 80 | 30 | 1 |
| Auto-Cannon Turret | 90 | 35 | 1 |
| Sensor Array | 60 | 40 | 1 |
| Point Defense System | 80 | 50 | 2 |
| LUCAS Launcher | 120 | 50 | 5 |
Building Action Durations
Base cycle durations for each building action (modified by efficiency):
Solar Panel Array
| Action | Cycles |
|---|---|
| reposition | 1 |
| status | 1 |
Command Center
| Action | Cycles |
|---|---|
| build_building | varies by building |
| research_upgrade | varies by research |
| status_report | 1 |
| unload_drone | 5 |
| cancel_research | 1 |
| status | 1 |
Refiner
| Action | Cycles |
|---|---|
| process | 1 |
| unload_drone | 5 |
| load_drone | 5 |
| status | 1 |
Drone Charging Station
| Action | Cycles |
|---|---|
| charge | 10 |
| status | 1 |
Drone Production Plant
| Action | Cycles |
|---|---|
| build_drone | 500 |
| load_drone | 5 |
| unload_drone | 5 |
| status | 1 |
Drone Equipment Production Plant
| Action | Cycles |
|---|---|
| build_equipment | 25 |
| install_equipment | 25 |
| remove_equipment | 25 |
| load_drone | 5 |
| unload_drone | 5 |
| status | 1 |
Drone Repair Station
| Action | Cycles |
|---|---|
| repair_drone | 5 |
| repair_equipment | 5 |
| status | 1 |
Silo
| Action | Cycles |
|---|---|
| unload_drone | 5 |
| load_drone | 5 |
| status | 1 |
Shield Array
| Action | Cycles |
|---|---|
| shield_generate | 1 |
| transfer_shield | 1 |
| status | 1 |
Battery Array
| Action | Cycles |
|---|---|
| status | 1 |
Laser Turret
| Action | Cycles |
|---|---|
| fire | 1 |
| scan | 1 |
| identify | 1 |
| mark | 1 |
| unload_drone | 5 |
| load_drone | 5 |
| status | 1 |
Missile Turret
| Action | Cycles |
|---|---|
| fire_missile | 1 |
| reload | 40 |
| scan | 1 |
| identify | 1 |
| mark | 1 |
| unload_drone | 5 |
| load_drone | 5 |
| status | 1 |
Auto-Cannon Turret
| Action | Cycles |
|---|---|
| fire_cannon | 1 |
| reload | 40 |
| scan | 1 |
| identify | 1 |
| mark | 1 |
| unload_drone | 5 |
| load_drone | 5 |
| status | 1 |
Sensor Array
| Action | Cycles |
|---|---|
| scan | 1 |
| identify | 1 |
| status | 1 |
Point Defense System
| Action | Cycles |
|---|---|
| building_pds_activate | 1 |
| status | 1 |
LUCAS Launcher
| Action | Cycles |
|---|---|
| manufacture (build_lucas_drone) | 500 |
| launch_lucas | 25 |
| change_lucas_target | 1 |
| load_drone | 5 |
| unload_drone | 5 |
| status | 1 |
All Buildings — Common Actions
| Action | Cycles |
|---|---|
| repair | 20 |
| status | 1 |
Building Action Resource Costs
Some building actions consume materials (titanium parts, battery materials, enriched unobtanium) in addition to power. These materials must be loaded into the building first by having a drone with a hopper carry the resources to the building and execute the load_drone action. If the building does not have the required materials stored, the action will be rejected.
Command Center — build_building
See Building Construction Costs table above for per-building material costs.
Command Center — research_upgrade
All research costs enriched unobtanium only. Equipment upgrade tiers cost 1 / 3 / 5 EU (Enriched Unobtanium) for tiers 1 / 2 / 3 respectively. Equipment unlock research costs 4 EU (single tier).
Drone Production Plant — manufacture
| Product | Titanium Parts | Battery Materials |
|---|---|---|
| Drone | 30 | 15 |
LUCAS Launcher — manufacture
| Product | Titanium Parts | Battery Materials |
|---|---|---|
| LUCAS Drone | 30 | 15 |
Drone Equipment Production Plant — manufacture
See Equipment Crafting Costs table in the Equipment section for per-equipment material costs.
Missile Turret — reload
| Action | Titanium Parts | Battery Materials |
|---|---|---|
| Reload | 12 | 8 |
Auto-Cannon Turret — reload
| Action | Titanium Parts | Battery Materials |
|---|---|---|
| Reload | 6 | 2 |
All Buildings — repair (self-repair)
| Action | Titanium Parts | Battery Materials |
|---|---|---|
| Self-Repair | 3 | 1 |
Resources are consumed immediately from the command center when the repair action is queued (not from the building itself).
Building Warning Thresholds
Players can configure percentage-based warning thresholds on individual buildings for health, shields, and storage levels. When a stat crosses its configured threshold, the engine delivers a WARNING message through the message queue.
Supported Warning Types
All buildings:
| Type | Direction | What It Monitors | Example |
|---|---|---|---|
| health | Below | Current health as % of max health | Set to 30 → warns when health drops below 30% |
| shields | Below | Current shields as % of max shields | Set to 50 → warns when shields drop below 50% |
Silo only:
| Type | Direction | What It Monitors | Example |
|---|---|---|---|
| storage_above | Above | Total stored / capacity | Set to 90 → warns when storage exceeds 90% |
| storage_below | Below | Total stored / capacity | Set to 10 → warns when storage drops below 10% |
Refiner only:
| Type | Direction | What It Monitors | Example |
|---|---|---|---|
| ore_storage_above | Above | Total ore stored / ore capacity | Set to 90 → warns when ore storage exceeds 90% |
| ore_storage_below | Below | Total ore stored / ore capacity | Set to 10 → warns when ore storage drops below 10% |
| resource_storage_above | Above | Total resources stored / resource capacity | Set to 90 → warns when resource storage exceeds 90% |
| resource_storage_below | Below | Total resources stored / resource capacity | Set to 10 → warns when resource storage drops below 10% |
Behaviour
- Thresholds are integers from 0 to 100 (percentage).
- A warning fires once when a value crosses the threshold. It will not fire again until the value returns past the threshold and crosses again.
- “Below” warnings fire when the value drops below the threshold; “above” warnings fire when the value rises above the threshold.
- The API validates keys against the building type — unknown keys for that type are rejected.
- Destroyed buildings are skipped.
API Endpoints
| Method | Endpoint | Description |
|---|---|---|
| GET | /buildings/<building_id>/warnings | Read current thresholds |
| POST | /buildings/<building_id>/warnings | Set thresholds (send JSON with keys to enable) |
| DELETE | /buildings/<building_id>/warnings | Remove all thresholds |
Research & Upgrades
The Command Center can research upgrades that improve all equipment of a given type across your team. Research is queued via the research_upgrade action with an equipment_type parameter. Only one research can be active at a time. Each upgrade has 3 tiers that must be researched in order.
research_upgrade action each cycle to progress research. Research costs 5 power per cycle (base cost, modified by efficiency). Most upgrades apply at runtime to all equipment of that type (existing and new). Some upgrades (battery capacity, reactive armour, hopper capacity, ammunition rounds, land mine capacity, signature dampener, decoy beacon count, smoke launcher charges) also retroactively update existing equipment when research completes.
Baseline Drone Chassis
Unlike equipment upgrades, the baseline_drone upgrade improves the drone chassis itself. All newly produced drones benefit from these upgrades. Each tier provides the same bonus: +100 health, +500 battery, +1 equipment slot, +10 weight, +10 shields. At tier 3, new drones get +300 health, +1500 battery, +3 equipment slots, +30 shields, and +30 weight over baseline. Costs: 3/4/6 EU per tier, 150/300/300 cycles.
Equipment Unlock Research
Advanced equipment types must be unlocked before they can be built at the Drone Equipment Production Plant. Each unlock is a single-tier research (level 1 only) that permanently enables production of that equipment type for your team.
unlock_howitzer research unlocks all three howitzer equipment types (Howitzer, Howitzer Shells, Howitzer Charges) in a single research.
| Research Key | Name | Unlocks | Cost | Cycles |
|---|---|---|---|---|
unlock_reactive_armour | Reactive Armour Schematics | Reactive Armour | 4 EU | 400 |
unlock_hover_tech | Hover Tech Blueprints | Hover Tech | 4 EU | 400 |
unlock_wire_guided_missile | Missile Systems License | Wire-Guided Missile | 4 EU | 400 |
unlock_auto_cannon | Auto-Cannon & Munitions Program | Auto-Cannon, AP Ammo, HE Ammo, Canister Round Ammo | 4 EU | 400 |
unlock_shield_generator | Shield Generator Prototype | Shield Generator | 4 EU | 400 |
unlock_land_mine | Land Mine Schematics | Land Mine | 4 EU | 400 |
unlock_signature_dampener | Signature Dampener Prototype | Signature Dampener | 4 EU | 400 |
unlock_decoy_beacon | Decoy Beacon Schematics | Decoy Beacon | 4 EU | 400 |
unlock_smoke_launcher | Smoke Launcher Schematics | Smoke Launcher | 4 EU | 400 |
unlock_point_defense | Point Defense Schematics | Point Defense | 4 EU | 400 |
unlock_targeting_computer | Targeting Computer Schematics | Targeting Computer | 4 EU | 400 |
unlock_df_antenna | DF Antenna Schematics | DF Antenna | 4 EU | 400 |
unlock_jammer | Jammer Schematics | Jammer | 4 EU | 400 |
unlock_acoustic_sensor | Seismic Sensor Schematics | Seismic Sensor | 4 EU | 400 |
unlock_howitzer | Howitzer Artillery Schematics | Howitzer, Howitzer Shells, Howitzer Charges | 4 EU | 400 |
research_upgrade action as equipment upgrades (e.g. {"equipment_type": "unlock_reactive_armour", "efficiency": 1.0}). Once completed, your team can build that equipment type at any Equipment Production Plant.
Equipment Upgrades
Each equipment type has its own 3-tier upgrade path. All tiers within a given equipment type provide the same bonus (effects are cumulative). Use equipment_type matching the equipment name (e.g. "drill", "sensors", "laser_cannon", "auto_cannon").
| Equipment | Per Tier | Cumulative at T3 |
|---|---|---|
| Drill | +6% efficiency, -10% battery, +1 attempt | +18% efficiency, -30% battery, +3 attempts |
| Sensors | +2 range, -15% battery, +0.25x range multiplier | +6 range, -45% battery, +0.75x range multiplier |
| Battery | +750 capacity | +2250 capacity |
| Laser Cannon | +5% accuracy, +5 damage, +2 range | +15% accuracy, +15 damage, +6 range |
| Propulsion | -15% battery | -45% battery |
| Hover Tech | -15% battery, -1 cycle | -45% battery, -3 cycles |
| Shield Generator | +25 capacity, +5 shield rate, -10% battery | +75 capacity, +15 shield rate, -30% battery |
| Reactive Armour | +5 armour, -20 weight | +15 armour, -60 weight |
| Hopper | +25 capacity | +75 capacity |
| Targeting Computer | +3 range, +5% mark accuracy, -10% battery | +9 range, +15% mark accuracy, -30% battery |
| Wire-Guided Missile | +5 range, +10 flight time, +50 damage | +15 range, +30 flight time, +150 damage |
| Portable Charger | +25 energy delivered, -1 cycle | +75 energy delivered, -3 cycles |
| Mobile Repair Kit | +5 HP repaired, -1 cycle, -5 battery cost | +15 HP repaired, -3 cycles, -15 battery cost |
| Auto-Cannon | +5% accuracy, -2 cooldown, +2 range (AP/HE only) | +15% accuracy, -6 cooldown, +6 range (AP/HE only) |
| Ammunition | +3 rounds, -3 weight, +5 damage, +5 splash damage | +9 rounds, -9 weight, +15 damage, +15 splash damage |
| Canister Round | +1 cone damage/tile, +1 cone depth, +3 rounds, -3 weight | +3 cone damage/tile, +3 cone depth, +9 rounds, -9 weight |
| DF Antenna | +0.3 sensitivity, +5 range | +0.9 sensitivity, +15 range |
| Jammer | +3 range, -15% battery, +1 beam width | +9 range, -45% battery, +3 beam width |
| Land Mine | +50 damage, -2 deploy cycles, +25 splash, +1 mine | +150 damage, -6 deploy cycles, +75 splash, +3 mines |
| Signature Dampener | -10% scan range, -10% EM signal, -2 cloak cooldown | -30% scan range, -30% EM signal, -6 cloak cooldown |
| Decoy Beacon | +1 decoy, -3 deploy cycles, +20 decoy HP | +3 decoys, -9 deploy cycles, +60 decoy HP |
| Smoke Launcher | +1 radius, -1 interval, +5 duration, +1 charge, -1 deploy cycle | +3 radius, -3 interval, +15 duration, +3 charges, -3 deploy cycles |
| Point Defense | +5% interception, +2 range, -10 power | +15% interception, +6 range, -30 power |
| Seismic Sensor | -0.75 detection threshold | -2.25 detection threshold |
| Howitzer | -2 cycles, -10% battery, +5% accuracy, +1 aim speed | -6 cycles, -30% battery, +15% accuracy, +3 aim speed |
| Howitzer Shells | +20 damage, +10 splash ring 1, +5 splash ring 2, +1 round, -5 weight | +60 damage, +30 splash ring 1, +15 splash ring 2, +3 rounds, -15 weight |
| Howitzer Charges | +2 range, +3 charges, -5 weight | +6 range, +9 charges, -15 weight |
| Baseline Drone | +100 health, +500 battery, +1 slot, +10 weight, +10 shields | +300 health, +1500 battery, +3 slots, +30 weight, +30 shields |
Resources & Refining
Ore Types
Three types of ore can be found and mined on the map:
Titanium Ore
The most common ore. Used in nearly all construction.
Rare Earth Ore
Essential for power systems and electronics.
Unobtanium Ore
Extremely rare. Required for advanced buildings and some equipment.
Mining Process
- Equip a drone with a Drill and Hopper
- Move the drone adjacent to a resource deposit
- Execute the Mine action targeting the resource tile (takes 10 cycles)
- Ore is extracted and stored in the hopper
- Transport ore to a Refiner or Silo
Refining Process
- Move a drone with ore in its hopper adjacent to a Refiner
- Execute Unload Ore to transfer ore to the refiner
- Execute Process Ore to attempt refining
- Successfully refined materials are stored in the refiner
- Execute Load Resources to transfer materials to a drone
Power Systems
How Power Works
Buildings require power to perform actions. Power is generated by Solar Panel Arrays, stored in Battery Arrays, and consumed by building actions.
Power Network
All buildings owned by a player share a common power network. Power flows automatically:
- Solar panels generate power each cycle
- Generated power goes to the network
- Building actions draw power from the network
- Excess power is stored in Battery Arrays
- When generation is low, batteries provide power
Binary Star System
The moon orbits in a binary star system with two suns:
Sol Alpha is the brighter of the two suns. Both follow inclined elliptical orbits with different periods. Each sun rises and sets as it moves through its orbit — when elevation drops below 0°, the sun is below the horizon and contributes zero power.
Both suns will occasionally be below the horizon simultaneously, creating true nighttime where all solar panels generate zero power regardless of orientation.
Solar Panel Orientation
Solar panel power output depends on how well the panel is aimed at each sun. Both the panel's tilt (vertical angle) and direction (horizontal angle) affect efficiency. A panel aimed directly at a sun achieves maximum output, while a panel perpendicular to a sun gets near-zero. The optimal orientation changes constantly as the suns move, rewarding active tracking of both direction and tilt.
Efficiency Parameter
Building actions accept an efficiency parameter (0.01 to 1.0). Higher efficiency completes actions faster but draws more power per cycle. Lower efficiency takes longer but uses less power. Experiment to find the right balance for your power budget.
Combat Mechanics
Damage & Defence
When a weapon hits a target, damage is reduced by armour and then applied to shields first, then health:
- Armour:
Actual Damage = max(0, Weapon Damage - Target Armour) - Shields: Absorb remaining damage first (fully depleted before health takes damage)
- Health: Any excess damage reduces health
Some ammunition types bypass armour entirely — see Auto-Cannon below.
Equipment Combat Damage
Whenever a drone takes health damage (after shields and armour), one random functional equipment on the drone also loses durability equal to the health damage dealt (1:1). If shields absorb all damage, no equipment is affected. Not all weapon types trigger this:
| Weapon | Equipment Damage? | Reason |
|---|---|---|
| Laser Cannon | Yes | Standard damage path |
| HE Cannon Round | Yes | Standard damage path |
| Canister Round | Yes | Standard damage path (per cone tile). Armour is 2x effective. |
| Wire-Guided Missile | No | No equipment damage |
| AP Cannon Round | No | Bypasses armour and equipment damage |
| Howitzer Shell | Yes | Standard damage path (direct and splash) |
Range & Elevation
Weapon range calculations take elevation into account. Distance is measured in 3D: each tile of horizontal distance equals 5 units of altitude. The effective distance to a target is computed using both the horizontal tile distance and the altitude difference between attacker and target. This means firing at a drone hovering at high elevation costs more effective range than firing at a target at the same altitude.
Targeting & Marks
Drones equipped with a Targeting Computer can mark enemy drones and buildings. Marks provide an accuracy bonus to all friendly attackers firing at the marked target.
- Drone Mark Bonus: +20% accuracy per mark (plus any research upgrades)
- Turret Mark Bonus: +20% accuracy per mark
- Multiple marks from the same team stack for increased bonus (capped at 95%)
- Marks have a duration measured in cycles
Fire Feedback
A functional Targeting Computer also provides post-fire feedback messages. When a drone with a targeting computer fires any weapon, it receives an INFO message with targeting data:
- Laser: Target tile (relative coordinates), number of hits and misses, total damage dealt (split into shield damage and health damage). Firing at an empty tile reports 0 hits / 0 misses.
- Missile: Impact tile, direct hit and splash hit counts, and a damage breakdown (direct damage vs splash damage). Without a targeting computer, no impact message is sent.
- Auto-Cannon: Impact tile, direct hit and splash hit counts, damage breakdown (direct vs splash), and ammo type.
The targeting computer must be functional (not broken or destroyed) at the time of impact for the message to be sent. Coordinates in all feedback messages are relative to the firing drone's position.
Shield Mechanics
All drones have a base maximum shield capacity of 50. Shield Generators add +50 capacity each. Shield Generators are required to actively charge shields using battery power.
Shield Transfer
Any drone can transfer shields to an adjacent drone at the same elevation. The target must have capacity to receive shields.
| Level | Cycles | Shields | Description |
|---|---|---|---|
| 1 | 3 | 25 | Most efficient (5 shields/battery) |
| 2 | 2 | 20 | Balanced (2 shields/battery) |
| 3 | 1 | 15 | Fastest (1 shield/battery) |
Laser Cannon
The Laser Cannon is a direct-fire energy weapon available as both drone equipment and a building turret. It requires no ammunition — shots consume battery only.
Drone Laser Cannon
| Stat | Level 1 | Level 2 | Level 3 |
|---|---|---|---|
| Damage | 10 | 25 | 40 |
| Range | 10 tiles | ||
| Cooldown | 3 cycles per cannon | ||
| Base Accuracy | 85% (modified by distance) | ||
Dual Laser Volley
When a drone fires its laser, all equipped laser cannons that are off cooldown fire simultaneously as a volley. Each cannon rolls accuracy and deals damage independently. A drone with two laser cannons will fire two shots in a single FIRE action, and each cannon then enters its own 3-cycle cooldown.
Equipping multiple laser cannons dramatically increases burst damage. A drone with two Level 3 cannons can deal up to 80 damage in a single volley.
Beam Path & Blocking
The laser traces a straight hex line from the attacker to the targeted tile. Each cannon's beam travels independently along this path:
- On miss: The beam continues to the next entity in the path and rolls accuracy again. A single beam can pass through multiple missed drones before hitting one further away.
- On hit: The beam stops and deals damage to that entity.
The following obstacles block the beam entirely — nothing behind them can be hit:
- Impassable terrain (terrain type 3)
- Elevated terrain higher than the attacker's height (terrain elevation + drone hover elevation)
- Resource nodes
- Buildings (both friendly and enemy) — the building is added as a hittable target, but the beam stops regardless of hit or miss
Accuracy & Damage Falloff
Laser accuracy and damage scale with distance to the target:
- Close Range (within 20% of max range): 70% accuracy, 100% damage
- Max Range: 15% accuracy, 50% damage
- Both scale linearly between these points
Laser Turret (Building)
Laser Turrets are defensive buildings equipped with dual laser cannons, built-in sensors, and a targeting computer.
| Stat | Value |
|---|---|
| Damage | 40 per cannon, 2 shots per fire |
| Range | 15 tiles |
| Cooldown | 5 cycles |
| Accuracy | 85% base + 20% building bonus (modified by distance) |
| Scan / Identify / Mark Range | 15 tiles |
| Mark Accuracy Bonus | +20% |
Laser Turrets use the same distance-based accuracy and damage falloff as drone laser cannons.
Wire-Guided Missile
The Wire-Guided Missile is a high-damage weapon that targets a specific tile coordinate. Missiles follow the standard damage model (shields → armour → health). Requires the unlock_wire_guided_missile research.
Drone Missile Equipment
| Stat | Level 1 | Level 2 | Level 3 |
|---|---|---|---|
| Range | 5 | 10 | 15 |
| Damage | 100 | ||
| Missiles per Equipment | 2 | ||
| Flight Speed | 2 cycles per tile | ||
| Max Flight Time | 40 cycles | ||
Missile Guidance
Drones cannot fire missiles while hovering — the drone must be on the ground to launch. Missiles are wire-guided, so the firing drone must remain alive and functional for the duration of the missile's flight. If the firing drone is destroyed while a missile is in flight, the missile loses guidance.
Missiles can also be redirected mid-flight using a Targeting Computer's MARK action with a redirect target, allowing you to change the missile's destination after launch.
Missile Turret (Building)
Missile Turrets are defensive buildings that fire guided missiles. They carry an internal magazine that must be reloaded with resources.
| Stat | Value |
|---|---|
| Damage | 100 per missile |
| Missiles per Fire | 2 |
| Magazine Capacity | 4 missiles |
| Range | 15 tiles |
| Cooldown | 5 cycles |
| Flight Speed | 2 cycles per tile |
| Max Flight Time | 40 cycles |
| Reload | 40 cycles, costs 12 titanium + 8 battery materials |
Missile Redirect: While missiles are in flight, using the turret's mark action will redirect all in-flight missiles to the new target coordinates instead of marking. Missiles that cannot reach the new target (insufficient range or flight time) are unaffected.
Auto-Cannon
The Auto-Cannon is a projectile weapon that fires ammunition rounds. It requires both an Auto-Cannon equipment and Ammunition equipment on the same drone. Requires the unlock_auto_cannon research.
Drone Auto-Cannon Equipment
| Stat | Level 1 | Level 2 | Level 3 |
|---|---|---|---|
| Range | 5 | 10 | 15 |
| Base Accuracy | 75% | ||
| Cooldown | 10 cycles | ||
| Minimum Range | 2 tiles | ||
Ammunition Types
Each Ammunition equipment holds 10 rounds. Different round types have distinct properties:
| Type | Damage | Special | Speed |
|---|---|---|---|
| Armour Piercing (AP) | 50 | Ignores armour. Disappears at max range on a miss. | 3 tiles/cycle |
| High Explosive (HE) | 30 + 15 splash | Splash damages adjacent tiles. Always explodes at max range, even on a miss. | 3 tiles/cycle |
| Canister Round | 5 per tile | Instant cone effect (no projectile). Fires a cone of flechettes expanding outward from the drone toward the target. Base cone depth: 3 tiles (upgradeable to 6 via canister_round research). Always hits — no accuracy rolls. Hits drones at any elevation. Blocked by impassable terrain, elevated terrain, buildings, resource nodes, and drones. A drone that blocks cone expansion absorbs extra damage equal to all tiles blocked behind it. | Instant |
Projectile Path & Blocking (AP & HE only)
AP and HE rounds travel tile-by-tile (3 tiles per cycle) and check each tile for targets. The following obstacles stop the round:
- Impassable terrain — HE rounds explode on impact (dealing splash), AP rounds are lost
- Resource nodes — same as impassable terrain
- Buildings (friendly and enemy) — the round explodes on impact, dealing full damage regardless of ownership
- Drones — accuracy roll per drone; on hit the round explodes, on miss it continues to the next tile
Canister Round Cone Mechanics
Canister rounds fire an instant cone of flechettes from the drone toward the target. The cone expands along the line from the firing drone to the target tile, covering tiles at distance 1 through the cone depth (base 3, upgradeable to 6) from the drone.
Every entity in a cone tile takes damage (5 per tile, no accuracy roll). Because flechettes are small projectiles, armour is twice as effective against canister rounds (e.g., 10 armour blocks 20 damage instead of 10). The cone is blocked row-by-row:
- Impassable terrain / elevated terrain / resource nodes — block tiles directly behind them in the cone (no damage dealt)
- Buildings — take 5 damage per cone tile they occupy, then block tiles behind
- Drones — take 5 damage for their tile plus 5 damage for every tile recursively blocked behind them. A drone in the center of the cone can absorb significant damage.
Canister rounds hit drones at any elevation (useful against hovering LUCAS drones). The cone itself does not require line of sight to the target — blocking is evaluated per-tile as the cone expands.
Upgrades (canister_round research): each of 3 tiers adds +1 per-tile damage and +1 cone depth. At tier 3: 8 damage/tile, cone depth 6 tiles.
Auto-Cannon Turret (Building)
Auto-Cannon Turrets are long-range defensive buildings that fire ammunition rounds. They carry an internal magazine that must be reloaded with resources.
| Stat | Value |
|---|---|
| Rounds per Fire | 2 |
| Magazine Capacity | 16 rounds per ammo type |
| Range | 22 tiles |
| Minimum Range | 2 tiles |
| Base Accuracy | 75% + 20% building bonus |
| Cooldown | 20 cycles |
| Reload | 40 cycles, costs 6 titanium + 2 battery materials |
| Canister Cone Range | 5 tiles (vs 3 for drone) |
| Canister Cone Damage | 10 per tile (vs 5 for drone) |
The turret's canister rounds have an extended cone (range 5, 10 damage/tile) compared to drone canister rounds (range 3, 5 damage/tile). Total damage budget per shot: 10 × 25 = 250.
Howitzer
The Howitzer is a deployable long-range artillery weapon that fires specialized anti-drone airburst shells in arcing trajectories, ignoring line of sight. The shells are designed to shred drone armour and electronics with fragmentation, but their airburst fuzing is largely ineffective against hardened building structures. It requires the unlock_howitzer research, which unlocks all three howitzer equipment types: Howitzer (the weapon), Howitzer Shells (ammunition), and Howitzer Charges (propellant).
Deploy / Stow Lifecycle
The howitzer must be deployed before it can fire and stowed before the drone can move again.
- Deploy: Level-dependent (L1: 8 cycles/2.0s, L2: 5 cycles/1.2s, L3: 3 cycles/0.8s). Drone must be at elevation 0 and not hovering. Cannot deploy inside any base — the hardened base ground tiles cannot anchor the howitzer.
- Stow: Level-dependent (L1: 8 cycles/2.0s, L2: 5 cycles/1.2s, L3: 3 cycles/0.8s). Re-enables movement after completion.
- While deployed, the drone cannot turn, drive, hover, ascend, or descend.
Loading Sequence
Before firing, you must load a shell and then propellant charges:
- Load Shell: Loads 1 shell from the Howitzer Shells equipment into the breech. Consumes 1 round. L1=8 cycles, L2=5, L3=3.
- Load Charges: Loads 1-3 propellant charges from the Howitzer Charges equipment. Each charge determines range:
L1=8 cycles, L2=5, L3=3.Charges Min Range Max Range 1 8 16 2 16 24 3 24 32
Aiming
After loading, use the aim action to point the howitzer at target coordinates (relative to the drone). Aim speed depends on level:
- L1: 2 cycles per tile of distance
- L2: 1 cycle per tile of distance
- L3: 1 cycle per tile of distance
Battery drain per cycle: L1=1, L2=3, L3=8. The target must be within the range determined by the loaded charges.
Firing
Once aimed, the fire action launches the shell. L1=8 cycles, L2=5, L3=3. There is a 10-cycle cooldown (2.5s) between shots.
Accuracy
| Outcome | Probability | Effect |
|---|---|---|
| Direct Hit | 30% | Shell lands on targeted tile |
| Scatter (ring 1) | 30% | Shell lands on random adjacent tile |
| Scatter (ring 2) | 30% | Shell lands on random tile 2 hexes away |
| Dud | 10% | Shell fails to detonate — no damage |
Accuracy improves with howitzer upgrades (+5% direct hit per tier).
Damage Model
| Zone | Base Damage | Notes |
|---|---|---|
| Direct hit tile | 100 | Full damage to all entities on the tile |
| Ring 1 (adjacent) | 50 | Splash damage to all 6 adjacent tiles |
| Ring 2 (2 tiles out) | 25 | Splash damage to the outer ring |
Anti-drone specialization: Howitzer shells use airburst fragmentation optimized for destroying drones. Buildings, with their hardened structures, take only 10% damage on a direct hit and no splash damage from ring 1 or ring 2. Use direct-fire weapons (lasers, auto-cannons, missiles) against buildings instead.
Shell travel speed is 2 tiles per cycle (8 tiles/second) and follows an arcing trajectory that ignores line of sight — shells fly over terrain, buildings, and all obstacles.
Upgrade Effects
- Howitzer upgrades (per tier): -2 cycles on load/fire actions, -10% battery cost, +5% accuracy, +1 aim speed (cycles/tile reduction)
- Shell upgrades (per tier): +20 direct damage, +10 ring 1 splash, +5 ring 2 splash, +1 round per equipment, -5 weight
- Charge upgrades (per tier): +2 range (min and max), +3 charges per equipment, -5 weight
Tactical Considerations
- The howitzer requires a full loading sequence (shell + charges + aim) before each shot — plan ahead.
- Cannot fire while hovering or in motion — choose your firing position carefully.
- Charges are consumed on loading, not firing — a dud still uses the shell and charges.
- Airburst shells are anti-drone weapons — buildings take only 10% direct damage and no splash damage. Target drone formations, not fortified positions.
Land Mine
The Land Mine is a deployable explosive ordnance that sits hidden on a tile until triggered. Mines are invisible to scan but visible to identify commands. Friendly mines show full details including mine ID; enemy mines show damage and splash values only.
Deployment
- Can be deployed at any elevation — the mine falls to ground level on the drone's current tile
- Requires
unlock_land_mineresearch completed - Deploy cycles and battery cost vary by equipment level
- Upgrades reduce deploy cycles further
Deploy Levels
| Level | Deploy Cycles | Damage | Mines |
|---|---|---|---|
| 1 | 20 | 100 | 3 |
| 2 | 15 | 110 | 3 |
| 3 | 5 | 120 | 3 |
Detonation Triggers
- Ground movement: Any drone driving onto the mine's tile at elevation 0
- Hover descent: A drone descending to elevation 0 on the mine's tile
- Fall damage: A drone falling to ground level (battery depleted while hovering)
- Weapon impact: Laser fire, missile hit (direct or splash), auto-cannon hit (direct or splash), or building turret fire hitting the mine's tile
Damage Model
- Follows standard damage flow: Shields → Armour → Health
- All ground-level drones on the mine tile take full damage
- Buildings on the mine tile take full damage
- With splash upgrades: adjacent tile drones and buildings take splash damage
- Hovering drones (elevation > 0) are not affected
Consumable Behavior
- Each Land Mine equipment holds a limited number of mines (base: 3, increased by upgrades)
- Deploying a mine consumes one from the equipment
- When all mines are depleted, the equipment is automatically removed from the drone
- Limited to 1 Land Mine equipment per drone
Visibility
- Scan: Mines are NOT revealed by scan commands
- Identify: Mines ARE revealed by identify commands on their tile
- Friendly mines show: damage, splash damage, and mine ID
- Enemy mines show: damage and splash damage only
Seismic Sensor Notifications
Drones with a functional Seismic Sensor Array within detection range receive a warning message when a land mine detonates, including the relative coordinates of the detonation. Drones without a seismic sensor will not be alerted to nearby mine detonations (though drones directly hit by a mine always receive a damage warning).
Upgrades
Each tier: +50 damage, -2 deploy cycles, +25 splash damage, +1 mine (cumulative at T3: +150 damage, -6 deploy cycles, +75 splash, +3 mines).
Ammunition / Charge Transfer
Drones can transfer ammunition and charges to adjacent friendly drones using the ammo transfer action. This moves the actual equipment object (with its current remaining count) to the target drone — no duplication occurs.
Endpoint
POST /api/v1/drones/<drone_id>/ammo/transfer
| Parameter | Type | Description |
|---|---|---|
| target_q | int | Relative Q offset to target drone |
| target_r | int | Relative R offset to target drone |
| equipment_id | string | UUID of the equipment to transfer |
| level | int (1-3) | Action level |
Supported Equipment
- Auto-cannon ammunition (Armour Piercing, High Explosive, Canister Rounds)
- Howitzer Shells
- Howitzer Charges
Requirements
- Target must be on an adjacent tile
- Target must be on the same team
- Target must have free equipment slots
- Auto-cannon ammunition that is currently loaded cannot be transferred — use the
auto_cannon/unloadaction first to unload it from the cannon
Action Cost
| Level | Cycles |
|---|---|
| 1 | 15 |
| 2 | 10 |
| 3 | 5 |
ActionType: AMMO_TRANSFER
Point Defense System (Drone Equipment)
The Point Defense System is an automated missile interception system that protects the drone and nearby allies. Requires the unlock_point_defense research.
- Activate: Activates the PDS for the specified number of cycles (default 1). Request body accepts optional
"cycles"parameter. During each active cycle, incoming enemy missiles within range are intercepted with a 30% chance per missile. - Battery Cost: Costs battery per activation cycle plus additional battery per successful interception.
- Passive: PDS must be explicitly activated to provide protection. It automatically re-activates each cycle for the duration specified.
| Level | Range | Interception Chance |
|---|---|---|
| 1 | 1 tile | 30% |
| 2 | 2 tiles | 30% |
| 3 | 3 tiles | 30% |
Direction Finding Antenna
The DF Antenna is a deployable passive electromagnetic sensor that detects EM emissions from all drone actions within a configurable cone. Unlike regular sensors, the DF Antenna requires a multi-step deployment process, operates passively once configured, and delivers raw EM spectrum data rather than positional information. EM/DF antennas are long range (0-49 tiles at T0) — the primary strategic intelligence gathering tool.
Deploy Lifecycle
- Deploy (10 cycles): Transitions antenna from stowed to deployed state. Drone cannot move (turn, drive, hover) while deployed.
- Raise (20 cycles per 5 units): Extends antenna mast up to height 20. Does NOT change drone elevation.
- Configure (1 cycle): Sets cone direction (0-5) and width (0-4). Antenna begins passively listening.
- Lower (20 cycles per 5 units): Retracts antenna. Must reach height 0 before stowing.
- Stow (10 cycles): Returns to stowed state. Movement re-enabled.
Passive EM Detection
Once deployed, raised, and configured, the antenna passively detects EM emissions from drone actions each cycle. No repeated scan actions are needed — the antenna listens continuously. Every drone action (movement, firing, scanning, mining, repairing, etc.) produces an EM signature that propagates outward. The DF antenna captures these signals within its configured cone.
Detection Stats
| Stat | Value |
|---|---|
| Detection Range | 30 tiles |
| Detection Threshold | 3.0 |
Configure Parameters
- direction (0-5): Hex direction for the center of the listening cone.
- cone_width (0-4): 0 = narrow line (±10°), 1 = 60°, 2 = 120°, 3 = 240°, 4 = 360° (full circle).
What You Receive
Each EM detection message contains:
spectrum— array of 8 floating-point amplitudes (EM frequency bins low to high)direction— hex bearing (0-5) toward the source
The message does not include distance, action type, or coordinates. You must infer these by analysing the spectrum:
- Identify actions by matching the spectrum shape against known EM profiles
- Estimate distance from overall amplitude (stronger = closer)
- Detect multiple sources when the spectrum doesn't match any single known profile
EM Profiles
Every drone action produces a unique EM signature across the 8 frequency bins. Active electronics (scanning, jamming) produce strong, distinctive signatures, while passive actions (movement, mining) produce weaker signals. The exact spectral shapes must be discovered through experimentation — deploy a DF antenna near a friendly drone and observe the spectrum produced by different actions to build your own reference library.
EM Signal Propagation
- Inverse square law decay:
1 / (1 + d² × rate)per bin, combined with frequency-dependent attenuation (EM freq attenuation rate: 0.006). Higher frequencies fade faster at distance, though the effect is weaker than for seismic signals. - Phase shift: Each bin's phase shifts with distance:
phase + (bin_index × distance × 0.08) - LOS blocking: Line of sight is checked at the antenna's effective height (terrain elevation + drone elevation + antenna height). Raise the antenna higher to see over terrain and obstacles. Terrain blocks EM signals (unlike seismic which passes through but is attenuated).
- Cone filtering: Only EM sources within the configured cone are detected.
Waveform Superposition
When multiple EM events occur in the same cycle from the same direction, their waveforms combine via complex superposition — identical to the seismic sensor system. Each frequency bin is added as a complex number (amplitude × phase), producing constructive or destructive interference.
Upgrades
Each tier: +0.3 sensitivity, +5 range (cumulative at T3: +0.9 sensitivity, +15 range).
Seismic Sensor Array
The Seismic Sensor Array is a passive equipment that analyses seismic waveforms from nearby weapon fire, explosions, and drone movement. It requires no actions and no battery — it simply monitors ground vibrations. Seismic sensors are short range (0-21 tiles at T0) — designed for combat rangefinding and close-area awareness.
Waveform Detection System
Each weapon produces a unique seismic signature defined as amplitudes across 8 frequency bins. When a weapon fires, the vibration propagates outward through the ground with amplitude decaying over distance and phase shifting with distance. The sensor delivers the raw received spectrum — it does not identify the weapon for you.
Signal Propagation
Seismic signals use inverse square law decay: 1 / (1 + d² × rate), combined with frequency-dependent attenuation (seismic freq attenuation rate: 0.012). Higher frequencies fade faster with distance, causing the received spectrum to become bass-heavy at range — the lunar regolith acts as a natural low-pass filter. This means the same weapon produces different spectral shapes at different distances, which can be used for range estimation.
Terrain Dampening
Seismic waves propagate through the ground and are absorbed by elevated terrain along the path from source to listener. Dense, elevated rock formations act as natural dampeners, converting vibrational energy into heat. Each intermediate tile with elevation above 0 reduces the signal amplitude — the higher the terrain, the greater the absorption. Terrain at elevation 20+ absorbs seismic signals almost entirely, effectively blocking propagation. This means base defensive walls provide natural seismic cover, and impassable terrain formations create seismic blind spots.
Detection Ranges (T0 base sensor)
Approximate maximum detection range for key events with a base (T0) seismic sensor on clear terrain:
| Event | Range (tiles) |
|---|---|
| Engine (driving) | 0 |
| Hover ascend | 4 |
| Laser | 11 |
| Canister round | 11 |
| AP/HE round | 13 |
| Missile/rocket | 14 |
| Explosion | 15 |
| LUCAS (launch only) | 18 |
| Howitzer fire | 21 |
What You Receive
Each seismic detection message contains:
spectrum— array of 8 floating-point amplitudes (frequency bins low to high)direction— hex bearing (0-5) toward the source
The message does not include distance, weapon type, or coordinates. You must infer these by analysing the spectrum:
- Identify weapons by matching the spectrum shape against known seismic profiles
- Estimate distance from overall amplitude (louder = closer)
- Detect multiple sources when the spectrum doesn't match any single known profile
Seismic Profiles
Each vibration source (weapons, explosions, engines) has a unique frequency signature across the 8 bins. The exact spectral shapes are not documented — you must discover them through experimentation. Have a friendly drone perform actions near your seismic sensor and record the received spectra to build your own signature library. Stronger sources (explosions, heavy weapons) are easier to detect at range, while weaker sources (engines, small arms) require closer proximity or upgraded sensors.
Waveform Superposition
When multiple events occur in the same cycle from the same direction, their waveforms combine via complex superposition. Each frequency bin is added as a complex number (amplitude × phase), producing constructive interference (louder) when phases align and destructive interference (quieter) when they oppose. This means:
- Two identical weapons firing together may produce a spectrum that is louder than the sum of parts (constructive) or quieter (destructive), depending on distance-induced phase shifts
- Different weapon types produce distinct spectral shapes that are individually recognisable but blend when combined
- Events from different directions are delivered as separate messages (no cross-direction interference)
Detection Threshold & Upgrades
The sensor only reports events whose total received amplitude (sum of all 8 bins after decay and superposition) exceeds the detection threshold. Each upgrade tier lowers the threshold by 0.75 (base 5.0 → T1: 4.25 → T2: 3.5 → T3: 2.75).
What It Does NOT Detect
- Scanning, mining, repairing, turning, or other non-movement, non-combat actions
Direct Hit Warnings vs Seismic Detection
Direct hit warnings (e.g. "Drone took laser damage", "Drone hit by land mine!") are always sent to the affected drone regardless of equipment. These only tell you that you were hit and by what weapon type — they do not include the attacker's location or direction.
The Seismic Sensor Array provides spectrum-based awareness of combat happening near you, even if you are not directly involved. You receive raw waveform data that requires analysis to interpret.
Signal Jammer
The Jammer is a deployable electronic warfare device that blocks drone signal communications within a directional beam. When active, it replaces ACTION_COMPLETED and WARNING messages for any drone within the beam with a "Signal jammed" notification. Affects both friendly and enemy drones (except the jammer drone itself).
Deploy Lifecycle
- Deploy (10 cycles): Transitions jammer from stowed to deployed state. Drone must be at elevation 0. Cannot move (turn, drive, hover) while deployed.
- Raise (20 cycles per 5 units): Extends antenna mast up to height 20.
- Activate (1 cycle): Sets beam direction (0-5) and starts jamming. Requires antenna_height > 0.
- Deactivate (1 cycle): Stops jamming.
- Lower (20 cycles per 5 units): Retracts antenna. Must deactivate first. Lower to height 0 before stowing.
- Stow (10 cycles): Returns to stowed state. Must deactivate and lower antenna first. Movement re-enabled.
Jam Levels
| Level | Range |
|---|---|
| 1 | 15 tiles |
| 2 | 25 tiles |
| 3 | 40 tiles |
Beam Mechanics
- Beam direction: Projects a straight line from the jammer drone in a hex direction (0-5).
- Beam starts at the first neighbor tile — the jammer drone's own tile is NOT jammed.
- LOS blocking: The beam stops when it hits terrain higher than the antenna height, or a building.
- Battery drain: While active, the jammer drains battery each cycle. If battery is depleted, the jammer auto-deactivates with a warning.
Beam Width (from upgrades)
- Width 1 (base / tier 1): Center line only — a single straight line of tiles.
- Width 2 (tier 2: Wideband Emitter): Center line + one parallel line offset perpendicular.
- Width 3 (tier 3: Phased Array Jammer): Center line + two parallel lines on each side.
Message Jamming
When a drone in the beam receives an ACTION_COMPLETED or WARNING message, the message is replaced with:
- Subject: "Signal jammed"
- Details:
{"drone_id": "...", "message": "Drone signal is being jammed - message could not be delivered"}
Upgrades
Each tier: +3 range, -15% battery, +1 beam width (cumulative at T3: +9 range, -45% battery, +3 beam width).
Signature Dampener
The Signature Dampener is a stealth equipment with two distinct effects: passive EM dampening and active scan cloaking. Requires the unlock_signature_dampener research.
Signal Dampening (Always Active)
As long as the Signature Dampener is functional (not broken), all EM emissions from the drone are reduced by 50%, and seismic signatures are also reduced. This makes the drone harder to detect on both DF antennas and seismic sensors at all times, even while performing actions.
- EM exceptions: Scanning and identifying always emit at full EM strength (100%) regardless of dampening. These actions produce strong, distinctive EM signatures that cannot be masked.
- Seismic exceptions: Missiles, auto-cannon rounds (AP/HE/canister), and howitzer fire produce seismic signatures too loud to dampen.
- No cooldown: Signal dampening is passive and requires no idle period.
Scan Cloaking (Requires Idle Cooldown)
- Activation: Automatic after the drone has taken no actions for the cooldown period (default: 10 cycles). No manual activation needed.
- Deactivation: Any action (drive, turn, fire, scan, identify, mine, deploy, etc.) immediately resets the cooldown timer. The dampener will re-activate after another full cooldown period of inactivity.
Effects
| Effect | Base Value | Mode | Description |
|---|---|---|---|
| EM Emissions | 50% | Always active | All EM emissions reduced by 50% (except scan/identify) |
| Scan Detection Range | 50% | Requires idle cooldown | Enemy scans only detect this drone at half their normal range |
| Cloak Cooldown | 10 cycles | — | Cycles of inactivity required before scan cloaking activates |
Upgrades
Each tier: -10% scan detection range, -10% EM signal, -2 cloak cooldown cycles. At tier 3, scan detection is reduced to 20% range, EM signal to 20% strength, and cloak cooldown to 4 cycles.
Decoy Beacon
The Decoy Beacon deploys a fake drone on an adjacent tile that mimics electrical signatures. Decoys appear on scan results as real drones but have no equipment, minimal HP, and cannot take any actions. Requires the unlock_decoy_beacon research.
- Deploy: Places a decoy on an adjacent tile in the specified hex direction (0-5). Can be deployed at any elevation — the decoy is placed on the ground tile. Deploy cycles and battery cost vary by level (L1: 20 cycles/1 battery per cycle, L2: 12 cycles/5 battery, L3: 5 cycles/10 battery).
- Decoy HP: 1 HP base (upgradeable). Decoys are destroyed by any damage.
- Consumable: Each Decoy Beacon equipment holds 3 decoys (base). When all decoys are deployed, the equipment is removed from the drone. Limited to 1 per drone.
- Detection: Decoys appear as normal drones on scan. The identify command reveals them as decoys.
| Level | Deploy Cycles | Decoys |
|---|---|---|
| 1 | 20 | 3 |
| 2 | 12 | 3 |
| 3 | 5 | 3 |
Smoke Launcher
The Smoke Launcher deploys a smoke screen that blocks line-of-sight for scan and identify commands. Requires the unlock_smoke_launcher research.
- Deploy: Creates smoke on the drone's current tile and all tiles within radius 1. Can be deployed at any elevation — the smoke covers the ground-level tiles below. Deploy cycles and battery cost vary by level (L1: 10 cycles/1 battery per cycle, L2: 6 cycles/5 battery, L3: 3 cycles/10 battery).
- Duration: Smoke persists for 20 cycles (base), then dissipates.
- Smoke Interval: Additional smoke pulses are emitted at regular intervals (L1: every 6 cycles, L2: every 4, L3: every 3).
- Consumable: Each Smoke Launcher holds 3 charges (base). When all charges are used, the equipment is removed. Limited to 1 per drone.
- Effect: Tiles covered in smoke block line-of-sight for scan and identify. Drones inside smoke cannot be targeted by lasers or auto-cannons (but missiles still work).
| Level | Deploy Cycles | Smoke Interval |
|---|---|---|
| 1 | 10 | 6 cycles |
| 2 | 6 | 4 cycles |
| 3 | 3 | 3 cycles |
Movement & Navigation
Ground Movement
Drones with Propulsion equipment can:
- Turn: Rotate 60 degrees left or right
- Drive Forward: Move one tile in facing direction
- Drive Reverse: Move one tile opposite to facing direction
Hex Directions
Drones face one of six directions (0-5), corresponding to the six edges of a flat-top hexagon. Direction 0 is Northeast, and directions increase clockwise: 0=Northeast, 1=Southeast, 2=South, 3=Southwest, 4=Northwest, 5=North.
Terrain Effects
- Normal Terrain: No movement penalty
- Difficult Terrain: Doubles ground movement cycles for drones at ground level. Hovering drones are unaffected.
- Impassable Terrain: Cannot be entered (ground drones). Blocks laser beams and AP/HE projectiles.
Projectile blocking: Impassable terrain, elevated terrain, resource nodes, and buildings all block laser beams and AP/HE autocannon rounds. Canister rounds handle their own per-tile blocking within the cone. See Laser Cannon and Auto-Cannon for full details.
Hover Movement
Drones with Hover Tech can ascend and descend:
- Ascend: Increase elevation (1-5 units per action)
- Descend: Decrease elevation (1-5 units per action)
- Hovering drones can move over any terrain and other units
- Battery cost scales with drone weight
- Maximum elevation is limited by the Hover Tech equipment
- Elevated Speed Bonus: Movement actions (turn, drive, ascend, descend) complete in half the time while above ground level
Dual Propulsion
Installing two Propulsion units provides benefits:
- Base battery cost is 1.5x (not 2x) for redundancy benefit. The weight-based cost is added on top of this.
- If one engine is damaged, the other can still function