Changelog

What’s new in Grim Syndicate. See also the roadmap.

v2.5.1
March 16, 2026

1 bug fix

  • Fix: modals — remove duplicate closePublicProfile that used wrong CSS class
v2.5.0
March 16, 2026

Diablo II style split-pane trade screen with 3-step negotiation

  • trade — Diablo II style split-pane trade screen with 3-step negotiation
  • Fix: engine — remove truncation marker text and strengthen completion prompts
v2.4.0
March 16, 2026

add Web Push notification system & 4 more features

  • notifications — add Web Push notification system
  • trade — add secure player-to-player trading system
  • engine — integrate scenario seeding from world state
  • mobile — add hamburger nav, comprehensive responsive breakpoints, and touch optimization
  • inventory — overhaul modal with fancy tabs, count badges, and consistent sizing
  • Fix: security — use tojson filter for town square character name map
  • Fix: security — harden avatar path traversal, registration info leak, and XSS
v2.3.2
March 9, 2026

2 bug fixes

  • Fix: db — resolve MissingGreenlet on character sheet and town square
  • Fix: shop — resolve undefined daily reward toast and add premium currency metagame terms
v2.3.2
March 9, 2026

1 bug fix

  • Fix: shop — resolve undefined daily reward toast and add premium currency metagame terms
v2.3.1
March 9, 2026

1 bug fix

  • Fix: nav — prevent gamepad icon fallback when DB session is dirty
v2.3.0
March 9, 2026

add slot-swap modal when all equip slots are full & 1 more features

  • home-base — add slot-swap modal when all equip slots are full
  • home-base — add background art to currency cards (shop-style)
  • Fix: security — harden auth rate limits, XSS filters, and deploy config
  • Fix: landing — correct resource-energy.webp image path
  • Fix: wheel — allow landing on already-won slices for duplicate stacking
  • Fix: wheel — redesign spin/reroll buttons as sleek horizontal bar
  • add post-work checklist for safe multi-instance releases
v2.2.1
March 8, 2026

3 bug fixes

  • Fix: wheel — center spin/reroll buttons over wheel canvas
  • Fix: wheel — use integer turn count to fix slice alignment + add debug logging
  • Fix: assets — use quality=auto for ImageRouter API compatibility
  • expand agent workflow in quick-start with step-by-step guide
v2.2.0
March 9, 2026

add favicon generation from logo source & 2 more features

  • assets — add favicon generation from logo source
  • assets — add generic batch image generation pipeline
  • metagame — add reg_closed_splash_path branding key
  • Fix: auth — fix waitlist button dark-mode styling and add reg-closed splash
v2.1.0
March 8, 2026

Spells & Abilities — Full Magic System

  • Spellbook system — characters can learn, equip, and cast spells with stat requirements (INT, WIS, level)
  • Spell hotbar — equip up to 4 spells for quick casting from the character sheet
  • Energy cost and cooldown mechanics — each spell drains energy and enters cooldown after use
  • Spell effects — healing (energy restore) and stat buff spells that create timed active buffs
  • Narrator integration — equipped spells appear in the narrator’s context, informing combat and exploration
  • Engine pipeline — new [SPELL_CAST] tag parsing tracks spell usage in gameplay narratives
  • Spellbook modal — browse all spells, see requirement status, learn/equip/unequip from one place
  • Factory updated — spell creator now includes cooldown duration field
  • Feature branch workflow — merge_feature.sh script for cross-server development
v2.0.0
March 8, 2026

XRPG Engine — Portable Text RPG Baseline

  • Engine rebranded as XRPG Engine — a portable text RPG framework for multi-instance deployment
  • Instance-specific branding (splash art, favicons, web manifest, metadata) separated from engine code
  • Smoke test script for deployment validation — checks Python, dependencies, modules, config, database, directories, and HTTP endpoints
  • Full backup tooling with remote server transfer for safe data migration
  • Documentation updated with instance setup guide and portability instructions
  • Campaign content directory now instance-specific (gitignored)
v1.8.1
March 8, 2026

Spirit Wheel Fixes — Smooth Spin, Floating Controls & Rarity Bumpers

  • Fixed spin animation “jump” — wheel now lands smoothly without snapping to a different angle
  • Eliminated 404 console spam from three missing currency card background images
  • Spin and Re-roll controls now float above the wheel as a semi-transparent overlay with frosted glass backdrop
  • Controls fade out during spin and fade back in after collecting your prize
  • Each wheel slice now shows a rarity-colored glow strip on its outer edge as a visual bumper
v1.8.0
March 8, 2026

UI Polish Sprint — Art-Backed Cards & Light Mode Fix

  • Light mode art visibility fixed across all pages — card backgrounds now use higher opacity and cool-blue hue shift
  • Character creation wizard overhauled: honorifics and body types upgraded from plain pills to art-backed icon cards
  • Race, class, and religion cards now feature atmospheric background art per option
  • Random Soul button redesigned with premium Cinzel typography, art backdrop, and glow animation
  • Review step stat cells now show per-stat art backgrounds (strength fire, dexterity wind, etc.)
  • Shop “Current Tier” badge redesigned with frosted glass overlay, art layer, and ACTIVE corner ribbon
  • Home Base currency bar replaced with premium 3-column card grid featuring animated icon circles
  • Soul Energy icon pulses with flame animation, Spins icon wobbles, Crystals icon shimmers
  • 45 new art assets added to generation script: races, classes, religions, body types, honorifics, and home base currency
  • Image generation requires ImageRouter API key in Admin > Config (no code fix for 503 errors)
v1.7.0
March 7, 2026

Spirit Wheel & Home Base Visual Overhaul

  • Spirit Wheel rewritten: background images now correctly match their slice labels (fixed 90° coordinate offset bug)
  • Wheel reduced to 4 slices for clearer prize visibility
  • Background images positioned with direct trigonometry instead of canvas rotation
  • Circular spirit portraits with rarity-colored borders on each slice
  • Winning slice highlighted with bright rarity-colored glow after spin
  • Win modal redesigned as factory-style 3D card with spin animation and particle effects
  • Rare Spirits Showcase: 3D card flip transitions with Vanilla Tilt, ghost effects, and pulsing rarity glow
  • Won items now dimmed but still visible (not invisible)
  • Home Base data loading now retries on server errors
  • Per-slice error isolation prevents one bad slice from breaking the wheel
v1.6.0
March 7, 2026

Battle Arena Visual Overhaul & Town Square Enhancement

  • Battle modal redesigned with hero banner, 3D perspective victory/defeat banners, and generated arena artwork
  • Victory banner features golden glow animation with laurel crown imagery
  • Defeat banner shows dramatic ashes artwork with pulsing red atmosphere
  • Rewards section enhanced with treasure chest background art
  • Arena close button upgraded to a styled "Leave Arena" action bar with portal art
  • PvP challenge confirmation now uses a decorated modal with VS screen, combatant avatars, and arena backdrop instead of browser confirm()
  • Town Square player cards show campaign background images, equipped item thumbnails with rarity borders, and race/class identity
  • Public profile modal gets campaign hero banner, enlarged avatars, and race/class/campaign badges
  • Profile Send Message and Inbox buttons upgraded to enhanced styled buttons with background art
  • Challenge to Battle button features forge-glow backdrop and gradient hover effects
  • Inbox conversations now display partner character avatars, level badges, and race/class info
  • PvP chronicler polling extended to 15 attempts with friendlier fallback message
  • PvP error handling improved: silent exception logging, user-friendly error messages
v1.5.1
March 7, 2026

UI Polish & Identity Portraits

  • Character portrait generation now uses full identity (race, class, body type, religion) for richer results
  • Save Identity now offers instant portrait regeneration after saving
  • Save Identity error handling improved with specific messages for timeouts, session expiry, and rate limits
  • Account page buttons upgraded with enhanced styling (Save, Remove, Add Passkey)
  • Shop buttons enhanced with glass effects, 3D depth, and background art
  • Subscribe, Buy, and Claim Daily Reward buttons now feature subtle pulse animations
  • Current Tier badge gets a glowing animation
  • Inbox messages now show player avatars inline with chat-bubble styling
  • Past campaign history cards now display campaign background images
  • New CSS components: glass buttons, save/danger button variants, enhanced inventory tabs, message bubbles
v1.5.0
March 7, 2026

Launch Readiness: Security, Player Cap & Tier Control

  • Stripe payment endpoints hardened with rate limiting (checkout, cancel, balance)
  • Player registration cap with configurable max players and mailing list gate
  • Player-controlled model tiers: own-key users choose Free/Mid/Pro for text and image
  • Service Keys "Tell Me More" modal explaining encryption, bonuses, and tier control
  • Shop "Current" tier button redesigned with styled badge
  • Admin image log thumbnail 404 fix with fallback handler
  • Admin dashboard: Max Players config, colored tier dot indicators
  • v1.1–v1.3 progress tracker audit and verification
v1.4.0
March 7, 2026

Polish, Fabrication & Battle Unification

  • Home Base nav link with auto-redirect to active character
  • Character Sheet now shows equipped Agents with growth boost summary
  • Town Square cards display equipped Agent icons with rarity-colored borders
  • Batch Agent generation: admin can LLM-generate themed batches of Agent templates
  • Agent image generation endpoint for admin Factory
  • Location fabrication: narrator can create new connected locations on-the-fly via [NEW_LOCATION] tag
  • Fabricated locations auto-spawn enemies in non-safe areas
  • Unified battle modal: shared component used by both PvP Arena and PvE combat
  • PvE combat encounters now show animated battle modal with HP bars and rounds
  • Player defeat displays red-themed defeat modal with penalty breakdown
  • Battle modal extracted into reusable include (battle_modal.html + battle-modal.js)
v1.3.0
March 7, 2026

Agent Mainframe & Gacha Wheel

  • Agent Mainframe: equip powerful spirits trapped in household objects for stat growth multipliers and passive bonuses
  • Spinning gacha wheel with canvas animation — 8 slices, server-side resolution, rarity-weighted drops
  • 5 rarity tiers from hilariously lame commons (“Regular Couch”) to legendary artifacts (“The Void’s End Table”)
  • Merge system: combine 5 duplicate Agents to level up (max level 5 “Full Possession”)
  • Set bonuses: collect matching pieces (Tal Rasha, Hearthstone) for growth multipliers
  • Home Base slots: start with 3, unlock more at levels 5 and 10, or purchase extras
  • Agent growth boosts multiply stat gains during gameplay — stacks with identity growth mods
  • Agent passive stats included in Power Level calculation (weighted 1.5x)
  • Level-up stat bonuses now factor in Agent growth boosts
  • Pity system: soft pity at 50 spins, hard pity at 100, legendary guarantee at 200
  • 30+ seed Agent templates including 10 lame commons, 2 themed sets, and standalone pieces
  • Agents tab in Factory with CRUD, seed button, and set management
  • 7 new achievements: Home Sweet Home, Interior Decorator, Collector, Spirit Binder, Full Possession, Set Collector, Lucky Spin
  • Wheel costs 1 Soul Point (1,000 Soul Energy) per spin, reroll costs 500 SE or 50 crystals
v1.2.0
March 7, 2026

Stripe Integration & Premium Currency

  • Stripe payment integration for subscriptions and one-time purchases
  • 4 subscription tiers: Free, Adventurer ($4.99), Hero ($9.99), Legend ($19.99) with model access, token limits, and energy regen bonuses
  • Crystal premium currency: 5 purchase tiers from $0.99 to $49.99 with first-purchase 2x bonus
  • Monthly Card: $4.99 for 30 days of 60 crystals/day (1,800 total value)
  • Crystal Shop: spend crystals on energy potions, gold packs, character passes, wheel tokens, and wheel refreshes
  • Soul Energy free gacha currency earned through gameplay (chat, PvP, level-ups, achievements)
  • Daily login rewards with streak bonuses at days 7, 14, and 30
  • Soul Point conversion: 1,000 Soul Energy = 1 Soul Point = 1 wheel spin
  • Daily Soul Energy cap of 1,500 from free play
  • Payments tab in admin dashboard: Stripe key management, price ID configuration, diagnostics
  • Shop page with subscription management, crystal packages, and item shop
  • Webhook-based payment processing with signature verification
  • All Stripe keys encrypted in database (same Fernet pattern as OpenRouter)
v1.1.0
March 7, 2026

Security Audit, Hardening & Refactor

  • Security audit: auth error messages replaced with generic responses to prevent information leakage
  • Path traversal protection on avatar deletion with is_relative_to() validation
  • Systemd service hardened: ProtectSystem=strict, NoNewPrivileges=true, PrivateTmp=true, restricted write paths
  • Journal log rotation configured: 500MB max, 30-day retention
  • N+1 query fix on character sheet — eager-loads item templates with selectinload
  • N+1 query fix on Town Square — eager-loads equipped item templates
  • Game engine refactored: process_player_message() split into 6 focused sub-functions
  • Backup system enhanced: schema-only dumps, 30 data + 10 schema backup retention
  • Backup cron wrapper for automated 6-hour backup scheduling
  • Schema dump automation: just schema-dump recipe, auto-dump on deploy
  • Security audit findings documented in docs/security-audit.md
  • Backup strategy documented in docs/backup-strategy.md
v1.0.0
March 7, 2026

Character Identity & Destiny

  • Character identity system: pronouns, honorifics, body type, race, class, and religion — each with presets and custom options
  • Multi-step character creation wizard with 5 themed steps (Name, Identity, Heritage, Faith, Backstory)
  • "Give me a Random Soul" button — generates a coherent identity via the narrator
  • AI-generated character summaries: the narrator knows your race, class, and pronouns
  • Stat scaling based on identity — race/class choices influence base stats and growth rates
  • Destiny card on character sheet shows your stat profile with a narrative explanation
  • Identity editing on character sheet with rate limiting (3 changes per day)
  • Narrator uses correct pronouns and character summaries in all game sessions
  • PvP battle chronicles reference character identity, race, and class
  • Growth modifiers affect stat gains from gameplay actions and level-ups
  • History text area for character background (1500 characters)
  • Existing characters unaffected — all identity fields are optional
v0.9.1
March 6, 2026

PvP Battle Experience Overhaul

  • Dramatic animated battle reveal: phased VS screen with avatars, staggered round-by-round display, and slam-in result banner
  • Dice visualization on every round — colored badges showing roll number and band (Critical Hit!, Glancing Blow, LEGENDARY Strike!, etc.)
  • Enhanced HP bars: 10px tall with numeric HP text, color shifts from green to orange to red as health drops
  • Separated achievements: only your own earned achievements display after battle, not your opponent's
  • Richer battle chronicles: 3-5 paragraph narratives referencing combatant backgrounds, equipment, fighting styles, and key moments
  • Summary polling: "The chronicler is recording..." placeholder with automatic refresh until the chronicle arrives
  • Character sheet arena history now lazy-loads full battle detail on expand with dice badges, hit labels, and HP bars
  • Avatars shown on VS screen in battle modal with accent-bordered circular frames
  • Combatant character profiles (bio, stats, equipment, titles) sent to the chronicle writer for richer narratives
v0.9.0
March 6, 2026

PvP Arena, Power Level & Expanded Achievements

  • PvP Arena: challenge other players from Town Square — instant multi-round battles with simultaneous attacks
  • Power Level: composite meta-stat combining all stats, equipment, buffs, titles, and level progression
  • Power level badges shown on Town Square cards, character sheets, play session HUD, and profile modals
  • Battle engine: up to 10 rounds of simultaneous combat using scene scoring for hit variance
  • Battle rewards: winners and losers both earn XP, gold, and stat bonuses — underdogs get extra XP
  • Battle chronicles: each fight generates a narrative summary written by the realm's chronicler
  • Challenge safeguards: 500 energy cost, 10-minute cooldown, 6/day limit, level gap protection
  • Win probability display before challenging — know your odds
  • Arena Record section on character sheet: W/L/D stats, win streak, battle history with round-by-round details
  • Battle result modal with round-by-round HP bars, damage, rewards, and achievement notifications
  • 10 new PvP achievements: Arena Initiate, First Victory, Giant Slayer, Iron Defender, and more
  • 6 new progression achievements: Wordsmith, Chronicler, Penny Pincher, Moneybags, Dragon's Hoard
  • Token milestone tracking: achievement triggers fire when cumulative narrative tokens hit thresholds
  • Gold milestone tracking: achievement triggers fire when gold accumulates past thresholds
  • New PvP titles with stat bonuses: Gladiator, Victor, Arena Veteran, Arena Legend, Giant Slayer, Iron Wall
  • New progression titles: Wordsmith, Chronicler, Merchant Prince, Dragon's Hoard
v0.8.0
March 6, 2026

Combat & Encounters

  • Enemy NPCs at locations are injected into narrator context — the narrator now knows what monsters lurk nearby
  • Combat advantage system: stat-weighted comparison factors your gear, level, and stats against the enemy
  • Enemy defeat rewards: XP bonus, gold, and loot table rolls when you slay a foe
  • NPC loot tables: each enemy can drop typed and raritied items based on configured drop chances
  • Enemy fabrication: non-town locations without enemies automatically spawn thematic foes via the narrator engine
  • Equipment stats now factor into combat advantage calculations
  • Defeat mechanics: losing a fight zeroes energy, costs 15% gold, and triggers a recovery state
  • Recovery state clears after one turn with narrative context for the narrator
  • Enemy defeated badges in chat show skull icon, name, level, XP and gold earned
  • Player defeat banner shows lost gold and energy depletion
  • Combat XP bonus displayed in narrator message footer
  • Session tracks defeated enemies to prevent re-fighting cleared foes
v0.7.0
March 6, 2026

Help Chat, Direct Messaging, Gold Drops & Engine Hardening

  • Game Guide help chat accessible from every page — get tips and rules without leaving your session
  • Player-to-player direct messaging with inbox, unread badges, and blocking
  • Quick message button on Town Square character profiles
  • Gold drops from gameplay scaled by action type, scene score, and character level
  • Deterministic loot pool for common and uncommon items (no extra generation calls)
  • Input validation: prompt injection detection, god-mode blocking, gibberish filtering
  • Narrator now presents 2–3 action choices after each response
  • Token limits rebalanced (800/1200/1800 by tier)
  • Backstory context limited to first 2 turns with a 4-exchange history window
v0.6.9
March 5, 2026

Town Square Overhaul, Titles & Leveling Rewards

  • Town Square now shows calculated stats (base + equipment + buffs + title bonuses) instead of raw base values
  • Clickable character cards open a public profile modal with full stats, XP progress, and equipped items
  • XP progress bars added to town square, character sheet, and play session HUD
  • Title adorning system: equip earned titles for passive stat boosts shown on character sheet and stat grid
  • Level-up stat rewards: stats now grow on level up based on your build direction (+2.1 total distributed)
  • Title achievements for all levels 1–10 (Newcomer, Apprentice, Initiate, Journeyman, Seasoned, Adept, Expert, Master, Champion, Veteran)
  • Image generation costs now captured from model pricing when not returned in API response
v0.6.8
March 5, 2026

Avatar on Creation, Town Square & Social Roadmap

  • Avatar upload and generation now available during character creation — drag-and-drop or generate a portrait before your character enters the world
  • Town Square page: browse the 100 most recently active characters with stats, titles, and campaign status
  • Preview avatar endpoint generates portraits without needing a character ID first
  • Castle icon in nav bar links to the Town Square for quick access
  • Social & Community section added to the roadmap with planned direct messaging features
v0.6.7
March 5, 2026

Ring Slots, Live Feedback & Icon Safety

  • Ring equipping now uses the empty slot: if ring_1 is occupied and ring_2 is free, new rings go to ring_2
  • Equip/unequip from inventory modal now shows success/error feedback and switches to Equipment tab
  • Invalid Lucide icon names (from LLM fabrication) are now caught at render time — falls back to generic icon
  • Fixed stored “ring” icon references in activity logs and chat history
  • Fabricator icon whitelist now validates icons before saving to prevent future invalid references
  • Buff stat bonuses now display on character sheet with purple indicators
  • Consumable use shows energy gained and buff details in feedback alert
  • Energy overflow glow now pulses on the bar itself instead of the container
v0.6.6
March 5, 2026

Item Fabrication Fix & FLUX Default

  • Fixed fabricated items being unusable: items with stats now always get an equip slot assigned
  • Improved fabricator prompt: removed misc/spell_scroll types, LLM must assign a slot for every equippable item
  • Post-processing normalization: infers slot from item name keywords (torch → offhand, shard → necklace, etc.)
  • Consumables with energy restore can now be used regardless of item type classification
  • Equip slot shown on inventory cards, item popups, and character sheet everywhere
  • Switched default image model from SDXL Turbo (broken) to FLUX 1 Schnell
  • Scene score fate roll badge now visible on narrator messages during gameplay
  • Item images use contain-fit instead of cover-crop — full artwork shown without clipping
v0.6.5
March 5, 2026

Image Generation Overhaul

  • Super admin image generation: 5-second cooldown (down from 30s) and 200/day limit
  • Model tier selector for super admins: choose Free, Standard, or Premium illustration engines
  • Multi-model fallback: if a model fails, silently tries up to 4 alternatives before showing an error
  • User-friendly error messages: technical API errors are now translated to helpful descriptions
  • Cooldown countdown modal with animated ring — shows exact seconds remaining
  • Rate limit responses return 429 with structured countdown data instead of generic errors
  • Admin image generation log browser with search, status/model filters, and pagination
  • All image prompts now explicitly forbid text/letters in generated artwork
v0.6.4
March 5, 2026

Mail Gateway & Inbox Fixes

  • Fixed SSL certificate coverage for mail gateway API — outbound sends and inbox fetches now work reliably
  • Added sender display name support: emails show “Grim Syndicate” instead of a bare address
  • Inbound webhook now captures attachment metadata (name, type, size) for received emails
  • Inbox list shows status badges (sent/received/failed) and attachment indicators
  • Message detail view displays sender name, attachment list, and error details for failed sends
  • Compose form auto-switches to outbound inbox after sending so you can confirm delivery
v0.6.3
March 4, 2026

Item Popups, Tooltips & Image Generation

  • Click any item anywhere (character sheet, inventory, equipment) to see a rich detail popup
  • Diablo II–style hover tooltips on desktop: item details follow your cursor
  • Item image generation via ImageRouter: generate unique artwork for any item
  • Regenerate images for items that already have one
  • Item images shown inline on equipment slots, inventory list, and modal cards
  • Live image updates: generated artwork instantly appears on all visible thumbnails without page reload
  • All generated images automatically converted to WebP for space efficiency
  • Consumables (potions, drinks) now visible in character sheet inventory section
  • Chronicler’s Band now properly displays LCK and Narrative Detail bonuses
  • Template stat boosts (word_count_bonus, LCK) merged into item display everywhere
  • Popup close button redesigned with solid background for visibility over item art
  • ImageRouter API integration hardened (correct endpoint, error handling, default model)
v0.6.2
March 4, 2026

Mail System & Password Recovery

  • Mail gateway integration with gamingworld.uk for sending and receiving email
  • Admin mail tab: inbox viewer (inbound/outbound), compose with sender selection, subscriber list
  • Encrypted mail API key storage (same Fernet pattern as OpenRouter key)
  • Mailing list signup on landing page with rate-limited subscribe endpoint
  • Account page: recovery email input and mailing list toggle
  • Password reset via email: forgot passphrase flow with secure token-based reset links
  • Unsubscribe page with one-click email removal
  • Contact emails added: support@gamingworld.uk and info@gamingworld.uk
  • Footer updated with contact link; legal pages now reference support email
v0.6.1
March 4, 2026

Mechanics Page, SEO & Legal

  • Game Mechanics page with full system documentation across 13 sections
  • Landing page hero redesign with full-bleed background image overlay
  • Open Graph, Twitter Card, JSON-LD structured data, and canonical URLs
  • XML sitemap at /sitemap.xml
  • Terms of Service and Privacy Policy pages
  • Footer reorganized with game links and legal link sections
v0.6.0
March 4, 2026

Scene Scoring, Model Tiers & Engine Hardening

  • Scene Scoring system: every action gets a 1–100 fate roll that shapes the narrative outcome
  • Luck stat now influences fate rolls with a conservative bonus system
  • Score bands (Catastrophic to Legendary) displayed as colored badges on narrator messages
  • Legendary rolls guarantee loot drops; catastrophic rolls risk item damage
  • Stat gains now scale with scene score (0.5x on catastrophic, 2x on legendary)
  • Chronicler’s Band: new uncommon starter ring (+50 word count, +0.5 LCK)
  • Word count bonus system: equipped items can increase narrator response length
  • Model tiers: Free, Freemium, and Premium tiers for text and image generation
  • Admin user management now shows tier dropdowns instead of a single Paid toggle
  • Token limit scales by tier: 1200 (free), 1800 (mid), 2500 (premium)
  • Cost tracking: estimated costs per model shown in admin usage dashboard
  • Truncation fix: responses no longer cut off mid-sentence (was 800, now 1200+ tokens)
  • Truncation detection: graceful “the tale continues” marker if response hits token limit
  • Item repair system: broken items can be repaired at 50% of value
  • Account page: service key inputs now use proper theme styling
  • Scene score pre-computation: the engine decides outcomes before the narrator writes
v0.5.0
March 4, 2026

Diablo-Style Loot & Item System

  • Item affix system: 30 prefixes and 31 suffixes that roll onto items (e.g. “Blazing Sword of the Titan”)
  • Item stat scaling by character level (8% per level) and rarity multipliers (1.0x–4.5x)
  • Luck (LCK) added as visible 7th stat — affects rarity rolls and stat roll quality
  • Master item roller pipeline: rarity → level scaling → stat rolling → affix rolling → pricing
  • Consumable items with energy restore (overflow past max allowed) and temporary buff effects
  • Buff system: time-based and energy-budget buffs with lazy expiry checks
  • Equipment buffs that can break gear when energy budget is exceeded
  • Refreshing Drink consumable granted each time you join a campaign
  • Auto-equip system: new items automatically equip if they’re an upgrade (toggle in inventory)
  • Inventory modal with four tabs: Items, Equipment, Buffs, and Activity Log
  • Rarity-colored item cards with stat tooltips and equip/unequip/consume actions
  • Equipment paper-doll layout showing all 10 slots with rarity borders
  • Active buff bar with countdown timers and energy budget tracking
  • Activity log tracking all item events (purchases, equips, buff expiry, gear breaks)
  • Merchant system: daily rotating stock of 12 items, weighted by rarity
  • Buy from merchant (1.5x markup) and sell items back (40% buyback)
  • Factory enhanced: stat boost editors, stat range editors, consumable effect builder, lore text, unique items
  • Fabricator now delegates to the item roller for proper scaling and affix generation
v0.4.3
March 4, 2026

Campaign History & Character Sheet Upgrades

  • Campaign history section on character sheet with session summaries and aggregated stats
  • Active campaign card with quick-resume and withdraw buttons
  • Read-only chat log viewer for past campaign sessions
  • Expandable past session cards showing XP earned, items found, and stat gains
  • Energy regeneration rate displayed under the energy bar (with bonus indicator for own API keys)
  • Real-time energy tick now uses effective regen rate including bonuses
v0.4.2
March 4, 2026

Passive Energy Recovery

  • Characters now passively recover energy over time while offline
  • Recovery rate: 100 energy per minute (full recharge in ~10 minutes from empty)
  • Energy recalculated on character sheet view, gameplay session start, and API access
v0.4.1
March 4, 2026

Chat & Stat Card Polish

  • Fixed chat scroll jumping when the narrator starts writing
  • Narrator responses now display with proper paragraph spacing
  • Redesigned stat cards: big number shows total (base + equipment), green tint when boosted
  • Equipment bonuses shown as badge in stat card upper-right corner
  • Gameplay progress (fractional stat gains) displayed as a bar at card bottom
  • All stat cards maintain consistent height regardless of bonuses
  • Enemy and encounter system design documented for next phase
v0.4.0
March 4, 2026

Factory, Achievements & Campaign Builder

  • Achievement system with 15 seed definitions across 5 rarity tiers (common to legendary)
  • Achievements wired into game pipeline: level ups, stat thresholds, item fabrication, campaign joins
  • Character creation, avatar upload, and equipping all slots trigger achievements
  • Achievement toast notifications with rarity-colored animations (slide-in, auto-dismiss)
  • Achievements section on character profile with earned dates and title rewards
  • Tutorial chain via achievement sequence (Born → Face of Legend → First Step → Battle Ready)
  • Title rewards granted from achievements, displayed on character cards
  • Secret achievements that only reveal when earned
  • Factory page: admin workshop for building the game world
  • Campaign builder: create campaigns with setting, quest, themes, and background images
  • Styled image uploads across all factory forms (click or drag-and-drop with live preview)
  • Location, NPC, and scenario editors with inline add forms
  • Item template and spell creators with rarity tiers and stat requirements
  • Achievement editor for defining custom triggers and rewards
  • Factory stats dashboard showing counts across all content types
v0.3.2
March 4, 2026

Equipment System

  • Equip and unequip items from your character sheet
  • Equipment slots show actual item names, rarity borders, and unequip buttons
  • Inventory items display an Equip button for equippable gear
  • Stat cards show equipment bonus indicators (+STR, +DEX, etc.)
  • Ring items auto-assign to an open ring slot
  • The narrator now knows what you have equipped and references it in gameplay
v0.3.1
March 4, 2026

Fabrication, Fixes & Admin Upgrades

  • Item fabricator service for generating equipment with rolled stats
  • Starter item kit granted when joining a campaign (sword, armor, shield, cloak, potion)
  • Admin: click any user to view their characters with full stats, equipment, and campaign info
  • Token usage tracking now properly records to admin usage dashboard
  • Fixed character sheet crash (stat bar rendering error)
  • Fixed gameplay narrator model (updated from retired free model)
v0.3.0
March 4, 2026

Characters, Campaigns & Gameplay

  • Character creation with name, backstory, and starting stats
  • Character sheet page with stats, equipment slots, energy bar, and resources
  • Character management on account page (list, create, view)
  • Three starter campaigns: The Hollowed Crypt, The Merchant Road, The Starfall Isles
  • Campaign browser with session joining and withdrawal
  • Gameplay chat interface with narrator/player message styling
  • Game engine pipeline: intent extraction, fate check, world state assembly, response generation
  • OpenRouter integration for narrator responses
  • Fractional stat gains from actions (STR, DEX, CON, INT, WIS, CHA)
  • Energy accounting per action based on token usage
  • Character-limit scaling with level (200 base + 10 per level)
  • Token tracking per message with model attribution
  • Chat history and session replay
  • XP gain and level-up system (100 XP per level)
  • Play link in navigation bar for logged-in users
  • Fixed CSP connect-src for Lucide source map loading
v0.2.0
March 3, 2026

Security, Polish & Roadmap

  • Fixed admin dashboard stats loading (parenthesis bug)
  • Added rate limiting on auth endpoints (slowapi)
  • Security headers middleware (CSP, HSTS, X-Frame-Options, X-Content-Type-Options)
  • Database password moved out of source code
  • Inactive user sessions now properly rejected
  • Login no longer reveals whether a username exists
  • Lucide icons throughout nav bar, admin tabs, account sections, and stat cards
  • Card background icon system for subtle watermark effects
  • Public roadmap page with progress tracking and architecture overview
  • Removed unused config constant
v0.1.0
March 3, 2026

Foundation

  • Project scaffolding and server infrastructure
  • Landing page with dark and light themes
  • Database schema for users, characters, campaigns, items, spells, and chat
  • Passkey authentication (register, login, manage devices)
  • Account page with passkey management
  • SSL and domain configuration
0
Your illustration is recharging...