Changelog

Every version so far

Newest first. The title screen shows the version you are playing; this list is the authoritative record of what changed in each one.

v42A balance and polish pass. The paddock behind the boulder in Thera Fields now sends packs of two or three monsters at any level, instead of the gentle singles of the fields below. Brindle Mine is a touch tougher: Ore Beetles (80 HP, ATK 26) and Ruin Golems (108 HP, ATK 30) hit harder, last longer and pay a little more, and a golem can turn up with two bats in tow. In return Dov's gear in Brindle is cheaper: the Iron Axe 180 (was 220), Chain Mail 160 (was 200) and the Aegis Plate 380 (was 460). Every shop row has an icon for its item or piece of gear, the YES/NO box shows a green tick and a red cross, and the battle ITEM window uses the same item icons; all of them are pack slots (item_..., gear_..., choice_yes, choice_no). The shop list, the YES/NO box and the battle arts / spirit / summon / item window size their rows to the icons, so 16-pixel pack icons no longer spill over the next row or the names; the shop window is wider and its stat column lines up against the prices. EQUIP is rebuilt as a screen of panels: the party's sprites along the top left with the hand on the chosen member, their card below (portrait, level, HP, PP, ATK, DEF and XP to the next level), and on the right a grid of gear icons, worn pieces first with a green E, then the shared pool. Hovering a piece previews the ATK or DEF it would give in green or red; A equips it or takes it off. ITEMS uses the same panels: a grid of item icons with their counts (Lyn's Compass at the end while you carry it), then the hand moves to the party row to pick who gets it, the card previewing the HP or PP it restores; fallen members are shown faded, and you stay on the item to use another until you run out or press B. New pack slots: portrait_ari ... (32×32; without one the member's walking sprite stands in at 2×), mark_equipped and item_compass.
v41A new battle screen in the handheld classic style. The status bar is a row of cards hanging from the top-right corner: HP and PP are written over bars that are blue for what is left and red (HP) or purple (PP) for what is gone, and the member choosing a command sits on a lit, gold-framed card. Targeting zooms the camera in over the acting member's shoulder (the rest of the party fades out), with a pink droplet bobbing over the chosen enemy and a soft white sheen on its sprite; area arts and SQUALL now ask for a focus too (big droplet, full damage) and hit every other enemy (small droplets) for 70%. ARTS, SPIRIT, SUMMON and ITEM open a proper window: a description strip, the caster in the corner, and a list with icon, name, PP cost (for summons: the number of spirits needed, with a badge per element), an element badge and a range badge (sprites, replaceable from a pack as el_... and range_...), with greyed rows for arts you cannot afford and scrolling for long lists. Cast effects (fx_... pack overlays) are scaled to the screen width, pinned to the top-left corner, and the party is drawn on top of them. The inn at Mira Farmstead is now the pack slot house_thera_far_inn (was house_thera_inn), matching the other far-side buildings; Thera itself has no inn. Every list menu marks its selection with a pointing-hand cursor (pack slot cursor) instead of a gold square. The gold ring around the chosen command icon and the coloured ring that spread from an enemy when an art landed are both gone. Every summon has a figure of its own in its cutscene: Gnome, Salamand, Nixie and Tempest are new, and each summon has a pack slot (sum_gnome ... sum_sol_avatar) with the element slot as fallback.
v40Lyn and Bram trade elements. Lyn is now the water adept and the party's healer (CURE, ICE HORN, PURE PLY), dressed in blue; Bram is the fire adept (FLARE, FIRE BOMB, INFERNO), dressed in red, and his fire arts now ride on the party's biggest ATK. Their stats are unchanged, so the healer joins in Brindle instead of in the mine.
v39The TTF pack font is gone; instead a pack replaces the font one character at a time with glyph images (A–Z 6×8, lowercase-a–z 6×6, digits and named punctuation), drawn on a shared baseline with the built-in letters filling any gaps. Summon backdrops (bg_summon...) now fill the whole screen and replace the built-in glow entirely; menu and status numbers are right-aligned so wider fonts no longer clip. Glyph cells are bottom-aligned on one shared line, coloured text keeps the glyphs' shadows, and tall sprites near the screen edge no longer pop into view. The title screen sizes its SAGA ribbon and version tag to the active font.
v38Pack fonts render crisp: the game finds the pixel size the font was drawn for and snaps the glyphs to whole pixels. The Thera well moved off the trail path and pack well / spring sprites are drawn in the depth-sorted layer, so wide or tall ones are no longer clipped. Enemies stand at native size (1×) like the party, and the status strip grows with a taller pack font.
v37Thera Fields is far larger: an open meadow stretches east to Mira Farmstead with two homes, an inn, a chest and the farmer Hob. Text boxes have the classic navy window with a light rounded frame; the battle strip shows the PP number next to its bar; and a pack may replace the whole game font with font.ttf (also .otf/.woff/.woff2).
v36The battle status strip labels its bars: HP and PP sit next to the coloured bars on every party card.
v35Pack cast effects (fx_...) are drawn larger (longest side ~128 px), treat black as transparent, and animated GIFs play once from the cast at native speed with the effect held for the full animation instead of a fixed 0.3 s.
v34Branding: a 512×512 logo, a favicon (embedded in the page and as favicon.ico) and a 1200×630 social card, with page description and Open Graph / Twitter card tags in the head.
v33Battle party drawn at native size (1×); the hit recoil is a single frame (hit, no hit2); townsfolk take only their six walk frames; the guide describes every character's role and place and explains bg_summon_sol. The Thera Fields monsters are a touch gentler and more often alone, for the stretch where Ari walks without spirits; before level 3 the fields send lone monsters (or an ooze pair) only.
v32Packs are stored in IndexedDB, so large packs survive a reload (older localStorage saves migrate automatically), and the pack guide marks which slots your pack covers, lists loaded variants and names files that match no slot. In battle the party is drawn smaller (1.5×) and the idle back stance is a single frame (back, no back2).
v31Difficulty pass: enemies have far more HP and bite, spirit duels ward off steel (physical hits cut to 30%), the four late spirits strike twice a turn, bosses shrug steel off too, the Wyrm knits its wounds twice, levels come a little slower and armour is lighter — while arts, spirit unleashes and summons hit much harder. Knocked-out party members lie on the field (hero_downed, skinnable).
v30New title screen: gold-bevelled lettering with an ornamental sun ring and a SAGA ribbon over a blue sky with drifting clouds and the Sunspire on its crag. The logo is a pack slot (title).
v29Party members recoil when they take damage: a two-frame hit pose (hero_hit/hit2, skinnable per character) replaces the plain blink, and a member felled by the blow staggers before dropping out of the line.
v28Looting a chest shows the open look only briefly (the chest_open sprite, a GIF playing once in full), then the chest returns to its closed sprite.
v27Battle screen: party HP and PP are bars in a strip along the top (name, HP number, HP bar that turns red when low, PP bar), the party stands in the bottom-right corner with the leader in front, battle messages sit just under the strip, and the party idles in a dedicated two-frame back stance (hero_back/back2, skinnable per character) instead of the walk frame. Lyn no longer joins at the boulder: she wanders Brindle's plaza and only agrees to come once you bring back the compass she lost in the paddock north of the fence (a yes/no prompt when you talk to her). Summon backdrops (bg_summon...) now play once for their full GIF length, scaled to the left half of the screen, with black as transparent.
v26The Thera cliff wall is now a wooden fence enclosing the north paddock, auto-tiled from four skinnable pieces (fence_h, fence_post, fence_v, fence_v2); the boulder still plugs its gap.
v25The pack guide ends with a complete, generated list of every accepted slot name (with a copy-all button), built from the game data so it cannot go stale.
v24Battle layout mirrored (enemies left, party in a diagonal line right), party members play two-frame attack and cast poses when acting (hero_attack/cast frames, skinnable per character), and cast effects resolve per art (fx_quake...) before the element fallback.
v23Battle submenu icons are pack sprites: exact slots like art_quake, spirit_flint, summon_phoenix, item_herb, with per-element fallbacks.
v22Hand-pixeled grass tiles (skinnable: grass), element icons in the battle submenus, spell-cast overlay sprites (fx_...), a skinnable summon backdrop (bg_summon...), and Lyn now joins after the boulder falls instead of at the start.
v21Treasure chests are pack-replaceable sprites with separate closed and opened looks (chest / chest_open, variants supported).
v20Spirits must be earned: stepping on one starts a duel against its unique battle form (no fleeing, tougher than local monsters). Win to recruit it; lose and it waits for a rematch. Battle forms are skinnable via djinn_battle_<name>.
v19Enemy HP is hidden (the name shows only while targeting), and the toolbar icons are pack-replaceable sprites (icon_fight...icon_flee).
v18Battle interface reworked in the classic handheld-JRPG layout: a horizontal icon toolbar (original icons) replaces the blocking side menu, with a compact HP/PP numbers panel bottom-right. Navigate icons with left/right.
v17The ridge boulder, the signposts, the town well and the spirit spring are pack-replaceable sprites (boulder, sign, well, spring; variants supported).
v16Livelier towns: villagers wander with walk animation, Mara is back outside picking herbs, and two new villagers moved in - Polly in Thera and Ina in Brindle (both skinnable: polly_..., ina_...).
v15Thera gained a shop building (Mara moved indoors) and Brindle an inn: 12 coins rests the party and saves the game. Sprite packs can target exact buildings (house_thera_shop) or kinds (house_inn).
v14Buildings are sprites too: load house (plus house_2... variants) and whole buildings render as single bottom-anchored sprites with stable per-building picks; walk-behind works.
v13Tree sprite variants: load tree, tree_2, tree_pine... and every tree keeps a stable random pick; tree_trail_... variants apply only on the trail.
v12Multiple background variants per environment (suffix the name: bg_field_2...), picked at random each battle. Loading a pack now shows a clear success / problem report under the file picker.
v11Replaceable battle backgrounds, chosen by environment: bg_field, bg_mine, bg_trail, bg_tower, with bg as the fallback for all. Animated GIF backgrounds supported.
v10Every collectible spirit has its own unique overworld sprite; sprite packs can target them individually with djinn_<name>.
v9Version number on the title screen and this changelog dialog.
v8In-game sprite pack guide: full slot reference and step-by-step instructions for making and loading packs.
v7Sprite packs can be loaded as a single .zip (built-in reader, folder names ignored, non-images skipped).
v6Animated GIF sprites: every frame decoded and played on the GIF's own timing, with hit-flash and shadow variants per frame. Static first frame where the browser can't decode animation.
v5Custom sprite packs: replace any enemy, summon, character, or map object with your own PNGs by filename — per-character skins included. Packs persist in the browser and reset with one click.
v4Overworld redrawn: taller shaded characters with palette-swapped party and NPCs, new djinn, trees, and map bosses.
v3Hand-pixeled battle art for all twelve enemies and the five summon figures, replacing the procedural placeholder art.
v2The big expansion: a party of four with full turn order, eight spirits with combined summons and cutscenes, items and equipment, gold and loot drops, shops, treasure chests, five zones with a mid-boss and the Spire Key, save & continue, and the semi-3D battle presentation.
v1First playable: overworld exploration, dialog, four spirits, turn-based battles, and the Shadow Wyrm at the top of the Sunspire.