Skip to content

Campaigns ​

Tower Craft ships with two campaign maps. Pick one from the LEVEL dropdown on the Campaign screen — each map has its own waypoints, tower-slot layout, wave list, and victory drops.

MapWavesDifficultyVictory drops
Desolate Depths30Medium15 % × mithril_lump
Crystalline Caverns50Extreme15 % × void_touched_shard

Custom levels built in the level editor continue to be supported alongside the campaign maps and use their own (editor-defined) paths and waves. Custom-level runs don't grant account drops and don't appear on the campaign leaderboards.

Map registry ​

Campaign maps are defined in shared/campaign-maps.ts as CAMPAIGN_MAPS. Each entry carries:

  • waypoints — the path enemies follow
  • towerSlots — tower placement slots
  • waves — 30+ wave definitions
  • totalWaves — what the HUD denominator reads
  • backgroundPreset — which TD background to render
  • roadTexture — which path texture to use
  • difficulty / difficultyColor / description — dropdown metadata
  • victoryDrops — the DropRoll[] table the server rolls on victory

Adding a third map (Volcanic Rift, for example) is a data-only edit: register a new entry in CAMPAIGN_MAPS and it appears in the dropdown automatically.

Victory drops ​

On the tick when the TD game transitions to gameWon, the server rolls each map's victoryDrops table independently per player. Rolls persist atomically to meta_progression.state_json alongside the leaderboard write, and an ACCOUNT_DROPS_AWARDED message is sent to each player so the Game Over screen can surface the panel.

Tower Craft is in closed beta.