CustomTD
A roguelike tower defence built on hex grids, six elements, and a modding framework that lets you rewrite the rules.
Six Elements,
Infinite Builds
CustomTD is a roguelike tower defence where you build towers from traits, relics, and chassis — then fight through biome-based campaign maps.
Six elements form the core: Fire, Water, Earth, Wind, Light, and Dark. Combine them across traits to unlock synergies, or specialise deep into a single element for raw power.
Every run is different. The shop offers randomised trait and relic selections. Your choices compound through a 10-stage modifier pipeline that makes every tower feel distinct.
The elements
Tower building
Under the Hood
The systems that make every hit, every crit, and every chain reaction feel intentional.
Event-Driven Combat
60+ game events drive the entire damage pipeline. OnPreDamage, OnHit, OnCritical, OnKill, OnChainBounce, OnPierce — every interaction is a hook that traits, relics, and mods can tap into. Attacks chain through a full event sequence that creates emergent combos.
10-Stage Stat Pipeline
Every stat runs through a layered calculation: base value, flat mods, percentage mods, multipliers, hard overrides, effect modifiers, and three scriptable hooks. 49 tower stats and 16 enemy stats, each with custom behaviour scripts that control how they scale and interact.
Status Effects & Auras
Burning, chilling, stun, and more — each with tick rates, stacking behaviour, resistance scaling, and max-stack caps. Auras create persistent zones around towers and enemies with radius-based targeting. Ground residuals spawn from impacts and linger as hazard zones.
Procedural Wave Generation
13+ bias algorithms shape enemy composition — flavour-building, theme-building, synergy patterns. Four distribution curves control wave pacing: flat, smooth-increase, slow-burn, triple-hump. Every wave is generated, never hand-placed.
50 Visual Effects, 18 Shaders
Custom GLSL shaders for aura rings, chain lightning, projectile trails, elemental glows, energy flows, swamp pools, and status overlays. Particle systems for impacts, damage numbers, and ambient atmosphere. All driven by a data-defined VFX system.
Moddable by
Design
The base game's own content loads through the same manifest system that mods use. There's no special treatment — if the base game can do it, your mod can too.
Mods declare their content in a manifest file: traits, enemies, maps, effects, stats, UI panels, wave algorithms, keybindings. The loader handles dependency chains, load ordering, and conflict resolution automatically.
We ship 14 example mod packs covering every moddable system, so you're never guessing at the format.
What's moddable
Dev Tools
Tools we built to develop the game — and tools that'll ship for modders.
Map Editor
A TypeScript plugin for the Tiled map editor. Build hex-grid maps with ground layers, decoration, build masks, block masks, and named enemy paths. Exports to .jmap with validation for biomes, path boundaries, and metadata. Supports gzip compression.
Game Planner
A React app for planning trait design across all 63 element combinations — singles, duals, triples, quads, penta, and omni. Honeycomb and pyramid views for visualising coverage. Auto-saves with versioned backups.
Content Validation Server
A .NET 8 MCP server with 28 tools for validating content: schema checks, cross-reference validation, balance analysis, and Roslyn-based code analysis for event bus subscriptions. Simulates combat event chains step by step.
By the Numbers
Where the codebase stands right now.
Development
Status
The core systems are in place — combat, modding, campaign structure, and tooling. The focus now is content: more traits, more enemies, and replacing placeholder art and audio with final assets.
Version 0.5.1 — breaking changes expected. This is a prototype stage where architecture comes first and nothing is sacred.
Follow the Build
We document everything — architecture decisions, combat balancing, the modding API, and the inevitable rewrites.
