Changelog

v1.0.9 In-app Setup Guide for streamers and viewers, combat auto-scale adjustment, and chat/EventSub fixes

Setup Guide

  • New Setup Guide in the signed-in sidebar: Streamers and Viewers paths with a sticky table of contents.
  • Streamers: go-live checklist, then World studio pages for Setup, Live, Content, Biome, Community, Customize, and the Nexus.
  • Viewers: join a world, then Wanderer sheet pages for Play, Build, Inventory, Shop, Log, and Customize.

Combat

  • Auto-scale median weapon IR is floored at Standard-typical (80). Starter kit gear (IR ~1) no longer crushes authored HP/ATK while ability damage stays full strength. Stronger parties still scale up; party/pack share math is unchanged.

Runtime / Twitch

  • Chat presence hits the stage before ban/link/XP work, so a slow platform call no longer stalls OBS presence or trigger long EventSub retry backoffs.
  • HTTP calls used from that path time out quickly (about 2s) instead of hanging the chat webhook.
  • Chat EventSub stays subscribed for active linked worlds even while Redis says idle — so a missed stream.online can still heal from the next chat instead of waiting on Helix reconcile.
  • Returning chatters refresh presence revision and recent-chat weight so they can reclaim an overlay slot when the stage is full.

Customize

  • Loot save validates before writing world config, so a bad form no longer partially persists.
  • Broken loot config opens Customize > Loot with a clear error instead of a hard fail; pool share/attribution fields survive a save.
v1.0.8 Shared visual asset picker, clearer multi-selects

Customize / Host studio

  • Icons, VFX, monster sprites, and chest looks share one picker chrome: search, category, sort, lazy thumbnails, and a side preview.
  • Customize Monster -> Sprite and Loot -> Chest Icon open the visual picker instead of a plain search list.
  • Host Content spawn-timer / celebration / Channel Points monster fields and Channel Points chest look use the same pickers.
  • Equippable gear slot multi-selects render as a checklist so selected slots stay visible on the dark theme (native OS highlight no longer hides the choice).

Runtime

  • Session tick no longer drops a newly live world before a session row exists, spawn timers arm after Discover instead of staying silent until something else touches the room.
v1.0.7 Session clock, lighter polls, official seed studios, fixing Beta/Blank to stay empty

Runtime

  • Combat, spawn timers, and victory/loot transitions run on the session tick worker (bonfire:session:tick). Overlay and Play polls are read-only snapshots — they no longer advance the fight.
  • Idle worlds skip full simulation work when nothing is due (spawn timer, queue, combat, downed recovery). Less CPU and Redis chatter under many quiet rooms.
  • Deploy keeps a user-space session-tick keep-alive script for hosts without passwordless systemd; prefer the systemd unit when available.

Seeds

  • Staff can edit Alpha / Beta / Blank stock through Customize studios, then Publish from Admin → Platform seeds. Publish updates the platform template, Reset baselines, and pristine host runs only.
  • New runs and Reset-to-stock read published platform stock from the database (PHP factory bootstrap when a row is missing).
  • Beta / Blank empty catalogs stay empty in Customize: items, monsters, loot pickers, starters, and consumable effects no longer fall back to Alpha packs when the host left those lists blank on purpose.
  • Visiting Customize no longer backfills empty Beta/Blank monster spawn pools (or invents Alpha timer targets) just by loading a page.

Combat / loot

  • Live-party monster scaling shares the encounter budget across the living pack (HP × party/pack, attack × √(party/pack)). Solo packs match the previous party-only curve.
  • Pack kills keep one claim per fallen monster on the owned chest — identical drop rows no longer merge into a single claim.

Wanderer / Play

  • Sheet and Play polling lean harder on revision/unchanged replies so quiet viewers do less work.
  • Skill selection and related actions stay seed-run scoped so switching universes does not bleed WLV or soft Play state across runs.

Site / ops

  • Long-running workers reset more cleanly between loops.
v1.0.6 Stage-off polish, Mini mode, optional HUD

Content

  • Stage on World → Content now actually drives the overlay. Host Preview no longer forces tiled ground, and saving Content bumps the live overlay so OBS picks up Stage / Mini / HUD changes without a hard reload dance.
  • Mini (Stage off only) shrinks wanderers, enemies, ability VFX, and summon portals to a Stream Avatars–sized strip along the bottom. Turning Stage back on parks Mini until you turn Stage off again.
  • Optional World name and Event feed toggles sit next to the feed number fields. Both default on; turn either off for a quieter corner.

Overlay

  • Stage off keeps everyone on a flat bottom baseline. Wanderers walk left/right again instead of locking into idle when the strip has no depth rows.
  • Combat VFX and weapon projectiles aim at opaque torso centers (not full-frame padding or the sprite’s left edge). Ability bursts and summon portals scale with Mini.
  • Offline overlay poll is faster (5s) so Content saves land sooner when realtime is quiet.

Wanderer / Play

  • Skill and equip clicks queue so rapid taps cannot race on the server. Successful build replies skip a redundant /state round-trip when the payload already has the tree or inventory.
  • Ability cooldown ticks refresh the Play HUD. Reusable consumable stacks track remaining uses in the pack signature.
  • After a build action, the sheet no longer advances its state revision before the next poll — so the server cannot answer unchanged and leave you on stale gear.

Extension

  • Same revision fix: ability actions refresh from the server instead of treating the action reply’s revision as already applied.
v1.0.5 Host studio, combat levers, and named seed runs. One public world (slug and overlay) can hold many universes.

Seeds

  • Classic RPG in the host UI is now BonfireRPG Alpha (preset id bonfire_rpg unchanged).
  • BonfireRPG Beta is a second official template alongside Alpha.
  • Blank canvas is the new-world default: official combat levers, one empty Wanderer path, no items or monsters. Start Alpha or Beta as a named run when you want those catalogs.
  • Blank, Alpha, and Beta appear in the World Seeds list with an Official tag (not separate panels). Open a row to start a new run or reset the active matching run to stock.
  • Alpha, Beta, Blank, and each Nexus apply are isolated named runs. Start new run always creates another universe (same template as many times as you want). Switch parks the live rules and wanderers, then restores the run you pick.
  • Reset restores stock for the active run only, and only when that run’s template matches. Wanderers on that run stay.
  • Applying a published World Seed always starts a new named run from that snapshot. The same seed can be applied many times.

Share, publish, migrate

  • Catalog objects (items, monsters, paths, abilities, input stats, damage types, loot pools) keep a stable origin and a share in published seeds license.
  • Bonfire stock is always shareable and locked. Host-made objects default to shareable; only the original author can change that flag. An importer cannot turn someone else’s “do not share” into “share.”
  • Manage Seeds shows a publish checklist pre-checked from those licenses. Unlicensed imports stay listed, locked, and out of the snapshot. Combat levers always ship.
  • Publish snapshots the full live catalog (not just engine settings). Apply only includes what was published.
  • The Nexus has a Migrate tab next to Manage Seeds. Copy into active run moves selected catalog objects from another run you own into the live run. Share flags are ignored for that copy. Origin and author stay; copy counts are tracked.

Combat

  • Dodge and Defense are split. Accuracy is its own lever. Alpha STR/INT still feed damage power, not hit chance. Alpha DEX feeds Dodge on new or reset Alpha worlds.
  • New levers: attack volume, attack speed, crit chance/damage, luck (loot drop chance), potency, retaliation, movement speed, threat, revive, max resource, resource regen, absorb, CC duration, tenacity.
  • One input stat can feed several combat levers. Unused levers stay at 0.
  • Live worlds pick up missing lever rows on load without rewriting host stats, items, paths, or wanderer scores.

Customize

  • World Customize uses a grouped side nav (Build, Economy, Presentation) instead of a long tab row. Damage types has its own page.
  • Stats, paths, abilities, items, monsters, loot, and related tables search, sort, and expand. Identity stays on the summary row; the rest is in the fold.
  • Share-in-seed sits on each catalog row. Bonfire stock shows as always shareable.

Site

  • Referral invite links accept the real code lengths (not only 8 characters), work with a trailing slash, and show an invite page for a bad code instead of a hard 404.
v1.0.4 Starter kit, Mythic gear, live scaling, and ad breaks

Starter kit

  • Path starters and Ashbound kit are a safety net, not loot. They no longer drop; early spoils start at Riftmarked.
  • Extra unequipped kit copies leave the bag (no gold). Equipped kit and every real loot piece stay where they are.
  • Putting on an upgrade swallows the kit piece so it cannot pile up. Empty slots still get a fallback on the next sheet load.

Gear & loot

  • Two rarities above Legendary: Mythic and Relic, with matching chrome in inventory, shop, paperdoll, and the monster picker.
  • Mythic can drop from Apex — Measureless fights, and is in the shop at a steep gold price.
  • Relic is in the catalog but does not drop or appear in the shop on the Bonfire seed. Other worlds can turn monster/chest drop on and add Relic to their own tables.
  • Loot respects each item’s drop flags. Kit never drops.

Combat

  • Optional auto-scale monsters to wanderers on stage (Customize → Economy / Monsters; off by default). Spawned HP and attack follow the median weapon of whoever is actually on the overlay, not the whole roster, and not the strongest person on stage.
  • Authored HP and attack stay on the Monsters form. Live → Summon shows the scaled numbers. An empty stage keeps authored stats. Joining mid-fight does not retune monsters already out.

Play

  • The battle arena shows the full enemy pack. Click a foe to focus attacks. Click an ally on the rail (or yourself) to aim heals and revives.

Overlay

  • Summon countdown stays in sync with the stream clock.
  • Each new boss walks out of its own portal. Bosses already planted stay put when reinforcements join.
  • Attacks and ability VFX wait until the pack has arrived and the party is in position.

Twitch

  • Ad break is a Content celebration (off until you enable it). It can play VFX like the others, and can summon with the same pack picker as raid and cheer.
  • Optional scale with ad length: 30s = the pack you set, 90s = 3×, 180s = 6× (max 12). Reconnect Twitch if ad-break events do not fire.
v1.0.3 Play HUD, Loadout, and Customize

Play

  • Play is a full-width stage with compact Atk / Def / ability / pack keys overlaid on it (no Basics / Abilities / Pack headings).
  • Collapsing Loadout no longer shrinks the play area.
  • Auto-attack is a toggle in the top-right. It starts from the host auto-combat default until the wanderer changes it.
  • Loadout opens by default: Overview, Stats (Combat power under the stats), Passives, Equipped.
  • Hold Shift over Atk, Def, an ability, a pack item, or a passive for an inspect popup.

Customize

  • Appearance Auto-save sits on the Skin tone row (on by default). Turn it off for a manual Save.
  • Wardrobe holds up to 20 looks, with a still south-facing portrait on each slot.
v1.0.2 Item Rarity, Monster Rarity, Item Compare, Touch-ups Loot, Bug Fixes

Highlights

  • Item and monster rarity (common → legendary) is host-editable, with rarity chrome in inventory and shop.
  • Live summon supports pool or specific picks, clearer count modes, and monster preview stats under the sprite.
  • Victory loot uses one owned chest per wanderer: color matches the rarest pending reward, and they loot that same chest once per reward.

Wanderer Sheet (Website)

  • Fixed stat steppers locking up when a score had a +modifier (e.g. 19+5).
  • Starter kit gear is no longer sellable, and selling it no longer re-grants infinite free copies.
  • Hold Shift while hovering inventory or shop items to compare stats against the gear that slot would replace.

Overlay & Combat

  • Multiple kills stack rewards onto the existing owned chest instead of spawning a chest per reward.
  • Celebrate hold while showing looted items is longer so rewards are easier to see.

Host Controls

  • Customize Items / Monsters editors include rarity.
  • Live control summon flow and monster picker polish for faster mid-stream summons.
v1.0.1 Progression, Channel Points, Polishing

Progression — Per-path leveling (optional)

  • Hosts can choose World leveling (default, same as today) or Per-path leveling under World → Progression.
  • In Per-path mode, World XP and Path XP are separate host-configured awards.
  • Kits, stats, and ability unlocks follow Path level when Per-path is on; Global still shares from World XP only.
  • Switching modes does not reset levels. Paths get a one-time seed from World level the first time they’re used in Per-path mode.
  • Existing worlds stay on World leveling until a host opts in and saves.
  • Website topbar / sheet / chat sheet show Path Lv when Per-path is enabled.

Channel Points

  • Mapped redeems now mark the redeemer active on the overlay the same way chatting does, so they can show up and claim loot without chatting first.

Wanderer (Website)

  • Inventory / gear layout polish.
  • Log tab cleaned up for more room.