Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
BEx3 - Appliqué: Per-Clip Art
Updated 2 weeks agoAppliqué: Per-Clip Art
Sprites · extra · advanced. Give ONE animation its own art, even when it shares sprites with a dozen others. The escape hatch from the reused-frames problem. Ten minutes.
You'll be able to: replace a sprite for one clip only, so the idle can change without dragging every attack that reuses its frames along with it.
Before you start: Reused Frames explains the problem this solves; the animation console is where you'll do it.
The problem it solves
tk2d animations freely reuse sprites: one drawn frame can appear in many
clips. A normal replacement (Sprites/<Collection>/<Material>/<sprite>.png)
changes that sprite everywhere it appears — the console's Reused
frames chip warns you exactly how wide that blast radius is
("×15 · 14 clips").
Appliqué (like the sewing technique: a patch applied on top) scopes a replacement to one named clip. The vanilla sprite — and every other clip using it — stays untouched.
The folder convention
Sprites/<CollectionName>/Clips/<ClipName>/<SpriteName>.png
That's the whole mechanism from a pack's point of view: a Clips/ tier
between the collection and the file. Anchor and pivot tags
(Anchors) work exactly as they do on shared replacements.
One file patches the sprite at every occurrence within that clip.
Priority: a per-clip file beats a shared replacement for that clip; other clips keep the shared file (or vanilla, if there is none).
Two ways to author it
Single sprite — "Detach for This Clip" (console, This Sprite panel).
One click copies the sprite's current art (shared replacement if one
exists, else a fresh vanilla dump) into
Sprites/<Collection>/Clips/<ClipName>/ and opens it. Edit, save, hot
reload — only this clip changes.
Whole animation — "Compile for This Clip" (console, Whole Clip panel, the accent-tinted button). The full animation canvas round trip, but the compile lands in the per-clip tier instead of the shared one. Extract → edit the onion-skin canvas → Compile for This Clip.
Good to know
- It's art-on-rails. Appliqué changes what a clip's frames look like, not their count or timing — the animation's motion is the game's.
- Same-named collections all receive the rewrite, consistent with how the default sprite paths behave (Instance-Specific covers the disambiguation story).
- Rotated vanilla frames (a minority, stored sideways in the atlas) are the one case still under in-game verification — if a per-clip replacement renders mirrored where a shared one doesn't, report it with the clip name; the log marks the first rotated target it meets.
- Hot reload, pack toggling, and file deletion all behave exactly like shared replacements — the per-clip tier rides the same reload cycle.
Pages
- A-0 Wikis
- A1 - Getting Started
- A2 - Installing Packs
- A3 - The Pack Manager
- A4 - How Stitchwork Works
- A5 - When Something Looks Wrong
- AEx1 - Conditional Activation
- B0 - Choosing a Workflow
- B1 - Starting a Skin Pack
- B2 - Finding Any Sprite
- B3 - Porting Prior Work — Spritesheets & CKC
- B4 - Texture2D (T2D) Sprites
- B5 - Bigger Art — Anchors
- B6 - Animation Canvas Workflow
- B7 - Sprite Paths Reference
- B8 - The Animation Controller
- BEx1 - Reused frames — one sprite, many animations
- BEx2 - Instance-specific paths — same name, different art
- BEx3 - Appliqué: Per-Clip Art
- C1 - Text & Dialogue
- D1 - Audio
- E1 - Video
- F1 - Priority & Conflicts
- F2 - Distributing Your Pack
- G1 - Dumping & Full Dump
- G2 - Companion Mods
- G3 - Hotkeys
- G4 - Pack Folder Structure
- G5 - Testing With Savestates (DebugMod)
- G6 - Troubleshooting