# Pixel Motion 2.6 additions

Original keyed hero rigs, shared enemy-family motion rigs, pixel effects/props, manifests, presentation source, animation inspector and preview tools. These derive from original Emberlane source sprites already packaged with the project. No TBH assets, stock sprite packs, extracted animations or font binaries are used or bundled. Native and taskbar atlases are generated separately; micro versions are nearest-resampled/canvas-adjusted rather than claimed as separately hand-drawn characters.

The prior promotional 8-bit concept image is not used as an imported sprite atlas and is not represented as a gameplay recording. Current GIFs/HTML/filmstrip are rendered from actual new atlas cells. Preview labels rasterize an installed local font; no font files are delivered. The current game still uses Godot's fallback font. Existing audio is unchanged.

---

# Seven Horizons 2.5 additions

Original campaign writing, four boss profiles, map geography, interactive UI and content-generation code. New PNGs are recolored/adorned original Emberlane sprites and landmark/scenery variants. Existing audio and twenty signature effects are reused. Browser previews use system fonts only; the game uses Godot fallback fonts. No font files, TBH files, third-party art or remote services are bundled.

---

# Deskbound Guardians 2.3 additions

Original encounter rules, nine ability definitions, three boss profiles and desktop/UI implementation. Existing original Emberlane sprites, iconography, world backgrounds and synthesized audio are reused. No TBH game files or new third-party art/font files are introduced. Desktop implementation follows official Godot API references listed in DESKBOUND_GUIDE.md.

---

# Credits and asset provenance

**Emberlane: Pocket Caravan** is an original project developed for this conversation. The original source, game definitions, names, pixel artwork and synthesized audio are provided under `LICENSE.txt`. No TBH source, extracted game files, textures, logos, music or dialogue are included.

The 2.0 runtime reuses the original Emberlane art/audio delivered in versions 1.0/1.1: six hero sprite sheets, eighteen enemy sprite sheets, six scenery PNGs and sixty-six icons (96 PNGs total); eight synthesized effects and one original ambient loop (nine WAVs total). Some icons serve multiple equipment families. Summons, the wagon and follower markers additionally use simple native canvas drawing.

The current runtime ships thirty-three WAVs rather than nine: the original eight synthesized
effects and one ambient loop, plus the ten layered skill clips and the fourteen combat voices
described at the end of this file.

`ASSET_MANIFEST.json` records filenames, hashes and available image/audio properties. `ASSET_PREVIEW.png` and `GROWTH_ASSET_PREVIEW.png` are retained asset contact sheets, **not screenshots of 2.0 running in Godot**. Art/audio generation sources are retained inside `legacy/Emberlane_1_1_Source.zip`; generated assets require no generator dependencies to use.

Godot is separately obtained software under its own license. This package does not contain a Godot executable, export templates or font files. The UI uses a bitmap face baked from an in-code glyph table, so no font file is included. An Options → Engine licenses dialog is implemented to show the engine's bundled copyright/license information in native builds. Preserve the relevant engine and third-party notices when distributing exports; consult the official guidance:
https://docs.godotengine.org/en/stable/about/complying_with_licenses.html

TBH: Task Bar Hero and its associated names belong to their respective owners. References in documentation identify the user's inspiration only. This game is not an official port, affiliated product or complete reproduction. Research sources and fidelity limits are recorded in `FIDELITY.md`.


## Lantern Roads 2.2 additions

The expansion adds 97 original/derivative Emberlane PNGs: 24 four-frame enemy variants, 24 named gear icons, seven ability identifiers, six elite identifiers, thirty road scenery variants and six arenas. The full runtime has 193 PNGs and nine original WAVs.

Enemy sheets preserve the original Emberlane silhouettes and add recoloring, weapons, shields, crowns or orbiting lamps. Road/arena images add landmarks and palette treatments to the existing six regions. This is not a claim of 24 wholly new hand-painted silhouettes or 36 new biomes. The generators in `tools/make_lantern_assets.py` use only the retained original assets and drawing code. Named icons are drawn by slot-specific code.

`LANTERN_ROADS_PREVIEW.png` is an actual-asset contact sheet. `CONTENT_BROWSER.html` is an offline catalog with embedded images, not a native screenshot or gameplay port. Its system-font declarations do not bundle font binaries. The preview generator reads a local font to render pixels; the font file is not distributed. `LANTERN_ASSET_MANIFEST.json` lists the 97 added files and hashes.

The separately explored promotional/reference collages are not imported as game sprites and are not represented as a later complete playable source package. This content update builds on the complete 2.0 Fidelity source archive.


## Ash & Iron UI, version 2.9.0
Original decorative UI drawing and Godot implementation created for Emberlane.
The supplied AI-generated Prism Forge concept is preserved as a development
reference. Noninteractive candle/Forge/castle scenery and border fragments are
derived from that concept; item art and game characters remain separate resources.
All state, item grids, text and controls are rendered by the game, not screenshot
hitboxes. Interface type is baked from an in-code glyph table; no font binaries are bundled.


## Layered skill audio (2.14.0 working tree)
Every skill cast is two synthesized layers rather than one effect blip: an element transient that
says what the skill was made of, and an effect-family tail that says what it did. Ten added WAVs
(six elements and four families) cover all 48 class skills, the six class-tree effect
rewrites and the enemy abilities, because the roster pairs five elements against twenty-four
effects. Six hero registers and one enemy register pitch them apart, so a crowded fight stays
readable and a hostile cast never wears a party voice.

All ten are original synthesis from `tools/make_audio.py`, which extends the 1.1 pipeline
retained in `legacy/Emberlane_1_1_Source.zip` (`tools/make_assets.py`) and keeps its layout:
22050 Hz, mono, 16-bit, exponential decays and deterministic noise. No third-party samples,
recordings, tunes or sound-font data are used, and no generator is needed to play the shipped
files. `docs/VALIDATION.txt` records the measurements that show the six element voices are
distinct in texture and matched in level.


## Combat voices and the event mix (2.14.0 working tree)
The rest of a fight had no sound at all: heroes attacking, enemies attacking, heroes taking
damage, enemies dying, boss phase changes, ability warnings and chests were silent, so the only
things a player could hear were a skill cast and the hit that followed one. Fourteen added WAVs,
one per thing that can happen, give every combat event a voice. The frequent ones are told apart
by texture rather than volume -- a swing is air over a light body, a claw is three noise
scratches over a growl, a hurt is a beating minor second, a block is inharmonic metal -- and each
is generated to the same level, because how loud it plays is a runtime decision.

That decision is the mix in `scripts/sound.gd`: a three-tier ladder over a six-voice pool, where
the tier decides the gain, how far apart two of the same kind must be, and how much free pool the
event needs before it may sound. Frequent action sounds give up their voice first; a boss phase
never does. An ordinary auto-attack landing is deliberately silent, because its own swing already
said a hero attacked and sounding both would double the most frequent thing in the game to repeat
information the player already has. The ambient loop is a bed that steps back while a fight is
live and comes up on the road.

All fourteen are original synthesis from the same `tools/make_audio.py`, at the same 22050 Hz
mono 16-bit layout, with no third-party material. `docs/VALIDATION.txt` records the measured
vocabulary, the measured mix and what the mix does not prove.
