Combat Snapshots
Rewind stores turn-start and combat-start checkpoints instead of only undoing HP. The restored timeline has to land on a coherent combat model.
Solo Project / Slay the Spire 2 Character Mod
A playable character mod that turns time travel into a risky deckbuilder resource: earn Sand, use the Medallion of Time to rewind bad futures, and accept that every stolen second brings the Dahaka closer.
I built the character, combat systems, pursuit encounter, audio layer, and presentation pipeline inside Slay the Spire 2's early-access mod environment.
Role
Solo designer and gameplay engineer; also handled integration, assets, audio, and presentation
Current Stack
STS2 v0.103.2, BaseLib v3.1.0, Godot 4.5.1, C#/.NET 9, Harmony patches
Technical Challenge
Restore a complete combat checkpoint while keeping health, cards, enemies, and custom resources consistent
Playable Build
Custom character, Sand resource, combat rewind, Dahaka pursuit, cards, audio, UI, and contextual videos
Current Gameplay Capture
This May 5 capture is the current gameplay reference for Sand, Wind Back, Dahaka pressure, and the Prince combat presentation.
Playable character
A selectable Prince with a custom deck, starter relic, rewards, dialogue, visuals, and audio.
Core system
Sand powers a rewind that restores combat state instead of only undoing lost health.
Risk and pressure
Repeated time travel advances a Dahaka pursuit and can trigger a dedicated escape encounter.
Rewind is the centerpiece because it touches almost every fragile part of combat. A partial undo would be easier, but it would not survive real STS2 fights with generated cards, powers, relic counters, changing enemy rosters, and a live hand UI.
Combat Snapshots
Rewind stores turn-start and combat-start checkpoints instead of only undoing HP. The restored timeline has to land on a coherent combat model.
Pile Repair
Cards move back into hand, draw, discard, and exhaust while generated utility cards are recreated through valid combat-card registration paths.
Power And Relic State
Mutable runtime fields matter. Powers, relic counters, temporary flags, and owner bindings have to be cloned or restored carefully.
Enemy Roster Repair
Summons, splits, deaths, missing enemies, and monster move machines can all drift away from the snapshot unless they are reconciled.
Hand UI Repair
The live STS2 hand can keep stale card holders and drag state after rewind, so the mod rebuilds holders and bindings without leaving floating cards.
Replay Divergence
STS2 replay/state-divergence hooks can keep recording the wrong future, so rewind has to clean up engine-side action and visual residue.
The Dahaka makes time travel emotionally expensive. Rewind helps the Prince survive the present fight, but it also pushes a persistent pursuit state toward a dedicated escape encounter.
01
Earn Sand
Enemy kills and Sand-focused cards build charges that carry through the Medallion rather than resetting every room.
02
Spend Time
Wind Back turns Sand into a 1/2/3-turn rewind choice. The stronger the rewind, the louder the cost.
03
Advance Chase
Rewind pressure feeds the persistent Dahaka meter, so survival creates a second strategic threat.
04
Escape Takeover
When the meter fills, Dahaka can replace the normal fight flow with a distance-based escape encounter.
05
Escape Or Fall
Escape cards push distance up; Dahaka pressure pulls it down. Rewind is clamped inside the chase once the encounter begins.
Closer look
Open the full build scope, card-family evidence, production assets, adaptation choices, and supporting notes.
The gallery shows design-family evidence from the local project. Some cards are in the registered playable runtime pool, while newer cards are authored/pre-release assets and code direction. I am separating those claims so the page does not overstate public runtime coverage.
Authored/pre-release family evidence
Movement and blade sequencing are meant to make the Prince feel fast and dangerous, not like a planted blocker.
Hook Kick
Movement payoff that turns positioning into weak application and extra block.
Authored/pre-release family evidence
Defense should read as slipping, catching, and punishing commitment rather than walling off the turn.
Blade Catch
Reactive defense that rewards attacking first instead of hiding behind passive block.
Dead Angle
Rare payoff for exploiting Weak or Vulnerable windows after the enemy overcommits.
Authored/pre-release family evidence
The time lane makes rewind proactive: Sand generation, second-pass advantages, and pressure that grows more dangerous with use.
Borrowed Breath
Sand economy and post-rewind draw, keeping time manipulation tied to a resource loop.
Wind of Fate
All-enemy pressure that feeds Sand while keeping the table under threat.
The art direction is still beta and uses ComfyUI-assisted concept output in places, so the honest portfolio value is the production pass around it: asset selection, sprite cleanup, matte work, layer cuts, UI bakes, and runtime integration.
I am treating this as an adaptation problem, not only a programming task. Warrior Within has a harsh, restless tone, so the cards, audio, relics, resource pressure, and encounter staging all need to point toward the same feeling.
The guardrail is simple: the Prince should survive through motion, timing, and dangerous second chances. He should not drift into a stealth assassin, shield tank, serene time mage, or passive stall-counter class.
Three short notes for different reviewers: current build scope, the hard systems work, and how the visual/audio pipeline is being produced.