← Implausible Enterprises

Tower Defense

1v1 PvP deckbuilder — Atomic Age pulp aesthetic PHASE 3

A PvP tower defense deckbuilder set in the paranoid, glorious aesthetic of 1950s B-movies and Atomic Age pulp fiction. GI squads, shambling horror movie monsters, and silver-skinned alien invaders clash on hand-animated pixel art battlegrounds. Each card you play builds a defensive tower and sends a mook into your opponent's lane — the pressure is cumulative, the decisions are asymmetric, and the vibe is pure Cold War dread dressed up as entertainment.

Built on Phaser 3, with 22 test suites and 159 passing tests. Single-player tower defense is playable now. The game is in Phase 3: generating and integrating the art that turns a working prototype into something with presence.

The Three Factions

WW2 Military
Impact
GI Grunts, Scouts, and Tanks. Straightforward, reliable, first to the field.
B-Movie Horror
Psionic
Giant Ants, Blobs, Werewolves, Vampires. Unpredictable, weird, late-game menace.
50s Sci-Fi Aliens
Atomic
Drones, Scouts, Robots, and the Atomic Rex. Fast, technological, final escalation.

The three flavor mechanics — Impact, Psionic, Atomic — form a rock-paper-scissors triangle that rewards deck composition and punishes pure aggression. Factions unlock progressively across waves, giving players time to learn each archetype before facing all three simultaneously.

The Art Challenge

Getting pixel art walk cycles from AI image APIs is a genuinely hard problem. A still image is easy. A walk cycle requires 4–8 frames where the character looks like the same character in each frame, with distinctly different leg positions, viewed from four compass directions. That's 16–32 images that must be consistent with each other.

Two full sessions of R&D explored and rejected several approaches:

A vision analysis of early walk-cycle attempts identified the core problem precisely: the generated frames kept returning to a balanced standing pose between steps. Real walk cycles never pass through perfect balance — they go contact, passing, contact, passing, always off-weight. The AI was generating bobs, not walks.

The PixelLab Pipeline

The solution came from finding the right tool. PixelLab (api.pixellab.ai) is a purpose-built pixel art generation and animation API — not a general image model asked to produce pixel art, but a system designed from the start for this use case.

Art Generation Pipeline ───────────────────────────────────────────────────── 1. generate-image-pixflux └─ Native pixel art, facing south, reference view └─ Output: clean 64px or 96px character sprite 2. /rotate └─ API rotates to all 4 compass directions └─ Output: N / S / E / W facing references 3. animate-with-text (×4) └─ Each direction animated independently └─ Walk cycle: 4 frames per direction └─ Boss walk: 4–8 frames per direction 4. Result: 16–32 frame spritesheet, 4-directional walk

The key failure mode with PixelLab was discovered early: feeding non-native references (OpenAI-generated painterly images) into the rotate and animate endpoints degraded badly. The pipeline only works when the source image is native PixelLab pixel art. The direction parameter on animate-with-text is a hint, not a command — the rotate step is what actually orients the character.

The Mook Roster

All 13 mook types are implemented with sprites, stats, entity classes, and wave assignments. Wave composition uses weighted random draws from the available pool, with progressive faction introduction — WW2 first, then Horror, then Alien.

Selected Mooks

Architecture

Modular scene/entity/system pattern built on Phaser 3 and Vite. The game splits cleanly into systems that own their domain:

Four tower types (Machine Gun, Cannon, Slow Tower, Ammo Depot) interact with the mook roster through the balance config, which keeps all tuning numbers in one place. The 8-directional Machine Gun tower uses a pre-composited base-plus-turret sprite at 96×96, batch-generated with create_tiles_pro for turret consistency across rotations.

The soundtrack uses four custom-generated tracks integrated from ACE-Step local music generation: AtomicWave (main theme), Victory, Defeat, and WaveIntense.

Development Phases

Phase Description Status
0 – 2 Foundation, core tower defense, audio COMPLETE
3 AI-generated art — 1950s B-Movie sprites via PixelLab ACTIVE
4 Cutscenes & narrative PENDING
5 Card / deck system (the core PvP mechanic) PENDING
6 Backend persistence PENDING
7 PvP multiplayer — async 1v1, ranked play PENDING

Stack

Components