Skip to content
Shattered Crowns

v1.4.19-beta · 2026-08-23

Body and Paint

The spell-effects release. Every painted spell now has geometry under it, every ability on the board has art that says which ability it was, and how often you see a skill shows in how much it throws.

3D under the paint

Joe's idea, and it survived being measured: a low-poly mesh under the watercolour, so a spell has a body to be a painting OF instead of a decal standing on the tile. All EIGHT painted elements have one, plus a bloom for the element-less heals.

It costs essentially nothing to load. Nine meshes are 201 KB on disk and 2,752 triangles total, against the painted element set's 4,564 KB and 25 MB of VRAM — 4.4% on top of what that layer already cost. One mesh also covers every tier, where a painting wants two or three variants so a cluster does not read as copies.

Four things were measured rather than guessed, each a bug the eye caught first: scale normalises on the model's LARGEST axis, not its height (a blossom is wide and short, and height-normalising put Cure's petals across the whole tile); the mesh sits at 86% of the painting, because at 1:1 the two silhouettes fight for the same edge and read as a printing misregistration; emission had to come DOWN, because a plate carries its own light and a mesh is lit by the board; and lightning needed mass rather than light, since at board scale a bolt is a few pixels wide.

The utility tail stops all looking alike

Thirty-one status abilities drew ONE generic bloom told apart only by valence colour — Armor Break and Focus were the same event on screen — and five more had no motif at all.

Fixed by a lookup rather than by 36 drawings: the engine already knew what status each ability applies, and the 38 status glyphs were already drawn, so a spell now throws the same glyph the badge over its target's head will wear. Six new effect glyphs cover what applies no status — the two MP movers, element-less magic, and the morale pair (Brave and Faith are events, not statuses, so nothing else could reach them).

Precedence is most specific wins: element, then status, then valence. The first cut had valence outranking status, which left nineteen buffs — Protect, Shell, Haste, Focus, Vanish, Reflect — still drawing the same anonymous bloom.

Weight

  • How common a skill is now shows in what it throws. Power drove the burst and correlates with rarity without being it, so a common Ember Plume threw 18 pieces of debris against the median rare's 15. Rarity now scales count and size; rare stays the neutral 1.0, so the common end comes down rather than everything going up. A basic Attack throws four sparks.
  • The bigger the spell, the more comes off the target. The painted motif gets bigger and FEWER as a tier climbs (FFT's own rule) while debris stayed flat at six from Blizzard to Winter's End. It climbs to 22 now — one enormous crystal that shatters into twenty-odd shards is both rules at once.
  • Debris arcs and falls instead of flying outward at one speed to one distance, and physical hits throw warm sparks off the armour they struck.

Fixes

  • Decoration may not stand in front of the spell you just cast. A rune sat behind three scatter rocks that carry no gameplay meaning. FX now draw over scenery — the rule the turn pointer, death clock, status badges and damage numbers already lived by. Painted plates also draw after the additive glow, which stopped Rabble-Rouse spending its whole arrival tinted hot pink.
  • An archer's weapon art fires the bow instead of casting a spell. Pinning Shot is a bow shot with a rider on it and played a spellcast. The discriminator is the weapon, not the ability — a mystic's curse at four tiles still casts.
  • The twentieth ultimate, Rabble-Rouse, finally has its emblem, and the last three abilities with no icon (the Jump tiers) have theirs.

Verified

10 logged AI-vs-AI matches on ten different maps, all decisive: 316 damage events reconciled with zero deviations, 132 charges queued and 132 resolved, and zero findings from either auditor. 922 engine tests, 301 server tests, and the client guards at 558 + 93, all green.