Dev Blog

Patch notes, feature announcements, and dev diaries. Subscribe via RSS or follow us on Discord for real-time updates.

DemoSequence: validation inspector + fix obsolete APIs + shrink b/c decks

Three changes that all fall under "make trailer-capture authoring catch

READ POST →

Fix sequence capture leaking into normal play sessions

Capture had two leak vectors:

READ POST →

Fix: strip demo defines unconditionally on Play exit

The previous fix gated define-stripping on EP_DEFINES_ADDED — a flag set

READ POST →

Fix trailer-builder render: 4 issues uncovered on first launch render

The pipeline had never actually been run end-to-end before the launch

READ POST →

Trailer v3: full weapon names, splice cuts, image-backed logo bookends

User feedback on first render: pacing too slow, splice between action

READ POST →

Wire up act_progression_montage trailer sequence (NodeMap scene)

Last footage gap before launch trailer can render. Previously the

READ POST →

Add MenuControllerHelper for gamepad menu navigation

Diagnostic from previous session confirmed Gamepad.current detects an Xbox

READ POST →

Push launch date May 26 -> June 16 + harden ControllerNavigator

Date sweep across active marketing kit + wiki + website. New launch

READ POST →

Strip non-compliant subtitle from Steam capsule + library assets

Steam rejected our store page TWICE — first because capsules had no

READ POST →

Add capture-presentation layer (cursor pre-glow + ghost-card arc + caption)

Captured trailer footage was technically correct but visually unclear —

READ POST →

Add capture-window helper, press kit, streamer kit; route bug-report to Discord

Tooling — one-click sequence capture inside the Editor.

READ POST →

Fix capture flow + bulletproof telemetry handler + add ControllerNavigator

ClaudeDemoController.Start coroutine rewrite — capture wasn't loading

READ POST →

Switch DemoSequence to name-based asset refs + populate hero sequences + Deck Verified prep

Sequence-asset schema change.

READ POST →

Wire launch-kit docs into Steam art folder + master marketing checklist

* Copy launch-kit/{01_ea_roadmap, 02_day1_comms_templates,

READ POST →

Add Demo bootstrap + feature flags + trailer music generator

Unity side: AIApocalypse.Demo namespace foundation for the two demo

READ POST →

Add Player Demo gates + Claude Demo foundation + Trailer Builder CLI

Track 1 — Unity demo modes pre-launch.

READ POST →

Wire Unity Recorder, author 4 sequence templates, add bug-report + launch comms

Track 1 — Unity capture wiring + sequence templates.

READ POST →

Add anonymous gameplay telemetry client

Adds AIApocalypse.Core.Telemetry — opt-in client that batches events

READ POST →

Add card-play VFX (streaks, glitch pop, status burst, lethal moment, shards, shimmer, combo)

Adds seven new VFX primitives to VFXManager and wires them into the

READ POST →

Add LAUNCH_PUNCH_LIST.md (launch-mechanics master list)

Captures the launch-mechanics layer above the per-week feature roadmap:

READ POST →

Generate 29 unachieved (locked-state) achievement icons

Steam shows the unachieved icon to players who haven't unlocked

READ POST →

QA round 2: tooltip root cause, transition flash, balance, trap melee

== Tooltip root-cause fix ==

READ POST →

Steamworks.NET 2025.163.0 compile fixes

The OpenUPM resolver pulled Steamworks.NET 2025.163.0 (latest), not

READ POST →

Steamworks.NET integration foundation + launch date May 26

== Launch date pushed: May 19 -> May 26, 2026 ==

READ POST →

Boss hype screen + UnlockPicker root-cause fix

Two big drops on the same commit since they fell in the same review pass:

READ POST →

Enemy intent: surface secondary actions; UnlockPicker: real card frames

== Enemy intent multi-action display ==

READ POST →

Fix Combat->NodeMap transition: keep FadeCanvas alive across cleanup

The transition loading screen worked everywhere EXCEPT Combat->NodeMap

READ POST →

Loading screen + shop/event sci-fi pass

Three QA-driven UX fixes from playtest:

READ POST →

Map node hover previews + card draw animation

== Map node hover previews ==

READ POST →

QA bug bash: tooltip, transition, playability, draw stack, gear text

Six bugs reported during day-1 QA on the staging branch:

READ POST →

Story arc system: 4 narrative beats with class-agnostic story screen

== New: StoryScreen.cs (full-screen narrative beat overlay) ==

READ POST →

Tutorial system + damage breakdown on hover

== Tutorial: progressive disclosure across first 3 combats ==

READ POST →

QA day-1 bug bash: weak fix, push/pull, popup canvas, +2 cards

Reported bugs from day-1 QA on the staging branch:

READ POST →

QA fixes: Singularity nerf, faux-bold news, exhaust auto-append

1) Singularity boss shield 100 -> 50. Was over-tuned in playtest;

READ POST →

Fix EA disclaimer popup v3: explicit canvas RT stretch for nested canvases

Commit 492b080's "fix" didn't work — it made things worse because

READ POST →

UI polish: relocate REPORT A BUG, enlarge CHARACTER button text

Two quick post-launch-test tweaks from the first Steam playthrough:

READ POST →

Watcher: detect IL2CPP incremental builds + strip unicode from logs

Two bugs after the first real watcher test this morning:

READ POST →

Achievement icons: 29 generated + unicode fix

Art output lives at:

READ POST →

Auto-upload watcher: watch Builds-steam, run steamcmd on Unity rebuild

New tool at tools/watch_and_upload.py. Polls the Builds-steam folder

READ POST →

Balance pass: damage-per-energy grid + power-card upgrade scaling

CardUpgrade.cs:

READ POST →

Card reference refresh + achievement art generator + Steam walkthrough fixes

- dump_card_reference.py: mirror output to repo root in addition to

READ POST →

Card reference xlsx: dedup + per-class tabs + tier rows

Previous dump listed Slash three times because the sword starter

READ POST →

Fix AppID: 1164585 -> 4652030 (real ID from Steamworks)

The 1164585 AppID inherited from old project notes turned out to be

READ POST →

Fix EA disclaimer popup: body text rendered as 1-char-wide vertical column

MenuMessagePopup body text was getting its RectTransform collapsed to

READ POST →

Launch kit: trailer shot list, Discord plan, press release, socials, achievement spec

Five copy-paste-ready Word docs to drive launch-week execution. All

READ POST →

Launch prep: Steam upload walkthrough doc + refreshed roadmap + .gitignore for build folders

- tools/write_steam_upload_doc.py generates a Word walkthrough of

READ POST →

Pre-launch hardening: save/load crash fixes, EA disclaimer, main-menu polish

Code changes driven by the save/load audit done ahead of the May 19 EA ship:

READ POST →

Art assets: card art, enemy portraits, card frames, UI, fonts

Generated via the Python pipeline in tools/. Includes:

READ POST →

Art + audio generation tooling

Python scripts used to produce the game's art, music, and SFX assets

READ POST →

Audio system: music, SFX, crossfades, per-scene cues

AudioManager now loads all SFX + music from Resources/Audio at boot,

READ POST →

Card upgrades: ++ tier, shield bump in upgrade rules, Excel dump

Upgrade system:

READ POST →

Combat: advance-attack dual-action, support-enemy pairing, logs

- Advancing melee enemies now also deal reduced damage (base -2,

READ POST →

Combat mechanics: shield absorb, DoT ordering, boss dual-action

- Enemy shield now absorbs damage before armor + HP (matches player

READ POST →

Combat UI: enemy track rework, tooltips, card hover polish

- CombatSceneBuilder: enemy track rebuilt with top-anchored red strip

READ POST →

Combat VFX: damage numbers, shake, hit punch, floating tooltips

VFXManager centralizes the combat-feel effects: scale-aware floating

READ POST →

Content: card/gear rebalance, 23 events, locked-by-default flags

Cards:

READ POST →

Deck rules: copy cap, specialization algorithm, weapon-swap gate

- Per-card 5-copy cap (MAX_COPIES_PER_CARD): base-name counted so

READ POST →

Devblog action: fix git pretty-format escape, backfill posts

Root cause: the format string used JS "\u001f" escapes but git's

READ POST →

Devblog automation: GitHub Action + backfilled posts

On every push to main, .github/workflows/publish-devblog.yml runs

READ POST →

Enemy intent: show dual-action debuff rider on attack turns

Bosses with applyDebuffsOnAttack (Sentinel Prime, The Nexus, The

READ POST →

Escape menu + screen flash helper

- EscapeMenu: in-combat / in-map pause overlay with Resume, Settings,

READ POST →

Event art: 25 banner images for the event overlay

One PNG per event, generated via tools/generate_event_art.py using

READ POST →

Event art: infrastructure + generator script

Adds support for per-event banner art on the event choice overlay.

READ POST →

Events: permanent +Start Armor / +Start Shield rewards

Adds PlayerState.bonusStartingBlock + bonusStartingShield that

READ POST →

Main menu rebuild: news panel, progress panel, difficulty select

Three-column title screen: News | Buttons | Progress.

READ POST →

Map, shop, reward, character screens: polish + meta wiring

- NodeMapUI: card upgrade picker uses the real combat card prefab

READ POST →

Meta-progression: token economy, draft unlock picker, difficulty tiers

Adds a persistent meta-progression layer stored on GameState.meta

READ POST →

Multi-hit balance pass: total damage ~= 7-8 per energy cost

Target: total damage across all hits = 7-8 per energy cost, 6 for

READ POST →

News panel: drop VIEW ALL NEWS button to bottom, remove hint line

News panel: drop VIEW ALL NEWS button to bottom, remove hint line

READ POST →

Project: settings + TMP material resave

Project: settings + TMP material resave

READ POST →

Project settings: render pipeline and TMP asset tweaks

Small project-level tweaks accumulated over this sprint:

READ POST →

Remove-card screen: use real combat card prefab

The REMOVE A CARD screen was rendering a flat panel-with-text

READ POST →

Scene transitions, parallax background, sci-fi UI kit

- SceneTransitioner: fade-to-black between scenes with a sceneReady

READ POST →

Shop / event / cards: real prefab in shop, {shield} placeholder, event autoscale

Shop (NodeMapUI.ShowShopOverlay — the ACTUAL shop, vs. the unused

READ POST →

Shop + event screen visual refresh

Shop:

READ POST →

Tooltips: drop tooltipTarget null-gate on status icons

StatusIconHover was only being attached if tooltipTarget was

READ POST →

Welcome to the AI Apocalypse

The first dev blog post. What this site is, what we're building, and what Early Access means for AI Apocalypse.

READ POST →

Anti-Debuff Cards, Sci-Fi Class Names, Combat Log & UX Polish

Shake It Off / Iron Will / Smoke Bomb etc. give each class a cleanse tool; classes renamed to cyberpunk flavor; combat log rewritten to be readable during a fight.

READ POST →

Bug Fixes: HP Stacking, Push Cap, Weak Scaling, Rest Nodes

Four long-standing combat bugs fixed in one pass — max HP stacking correctly from gear, push distance capped at Far, Weak applying the right value, and rest nodes firing their effect.

READ POST →

Enemy Abilities System & Card Upgrades

Enemies now have cooldown-gated debuffs, buffs, heals and summons. Card upgrades added to reward pools and rest nodes.

READ POST →

Music Tracks, Scene Audio & Art Generation Tools

Full soundtrack in place per scene, crossfades between menu/combat/map, and a reproducible pipeline for generating card + enemy art.

READ POST →

Save/Load, Act 3, 18 New Cards

Full save/load across scenes, the Act 3 content drop, and 18 new cards filling out the build-path coverage.

READ POST →

Get It By Email

Prefer your updates in your inbox? Sign up for closed-beta invites, the launch-day heads-up, and dev stories.