Sprites.load() serves assets/hd/<name>.webp in HD mode and falls back once
to the SD PNG per sprite; sheet frame sizes derive from sheet geometry
(width/8 for actor and legs sheets, height for the one-row death strip) so
both tiers address correctly.
G.hdRemaster persisted in localStorage (meatslicer_hd_remaster), toggled
from the title screen via H key or the bottom-left tag; activation reloads
so the asset tier and canvas resolution swap at boot. draw() applies a
uniform hdScale() transform, the room-layer cache renders at render scale,
and image smoothing follows the tier.
- Every special weapon gets an explicit 'refill' (units per ammo pickup,
tuned so one pickup funds ~10 kills) replacing the ammoRefillFraction
log2 heuristic and ammoWeight overrides
- Bile Blunderbuss + The Cauterizer join Red Right Hand as time-denominated
stream weapons ('drain' per second) instead of per-shot cost
- Sawblades ricochet through enemies (bounce fix), traps catch 3 victims,
lobbed projectiles arc overhead and always trigger at the target point
(Flesh Masher / Trap Queen / Swarm Jar payloads now actually deploy)
- Boss rooms stock one ammo on entry and drop one guaranteed on death
- Cauterizer burn trimmed (2.2s x2 -> 1.5s x0.8), bile acid pools trimmed
(3.5s x1.5 -> 2.5s x0.8), Marrow Draught now covers stream drain
- New tools/ammo_sim.js calibrates every weapon into the 8-13 kills/refill
band (all 15 pass); smoke test guards the ammo structure
- v0.3.0, cache bump v=44
- Regenerated all 13 weapon fire one-shots and 4 weapon loops via the audio
specialist (ElevenLabs) with a 1993 Doom style brief: chunky, bass-heavy,
crunchy 90s FPS sounds
- New clips wired into SfxBank: ui_active, ui_active_empty (active items),
ui_curse (legendary pickups, replaces the normal item jingle), plr_revive
(Second Skin revive)
- Footstep system removed entirely (never worked right): Sfx.footstep, 8
plr_step* samples and bank entries, player.js call site, smoke test block
- Cache v=42
- AMMO_REFILL_SCALE 0.75 on ammoRefillFraction (smaller refills)
- AMMO_DROP_SCALE 0.75 on all three ammo spawn sites (room clear, elite,
normal kill); help/gameplay drop-rate text updated; cache v=41
tools/score_weapons.js ranks the arsenal with a behavior-aware model:
effective DPS (bounce/boomerang/AoE/DoT multipliers), real engagement range,
spread-based accuracy, and damage pool per ammo load. Tier moves:
- Cleaver Cadence 0->1 (440px range + return re-hit outguns the starters)
- Bile Blunderbuss 1->2 (134 effDPS + slow + pools is secretly a heavy)
- The Cauterizer 2->3 (252 effDPS, highest sustained DPS in the game)
- The Tenderizer 2->3 (134 effDPS AoE, outscores Spinal Tap)
Tiers now: T0 repeater/marrow, T1 cleaver/saw/hemophage/eye,
T2 bile/guthook/fleshmasher/trapqueen/redhand, T3 cauterizer/tenderizer/
spinaltap/swarmjar. Smoke test pins the 2/4/5/4 distribution.
- 10+ tabs at fixed 108px overflowed the 920px panel; tabs now shrink to fit
- Implant rows grew a rarity/cap sub-line but kept 20px spacing; now 26px
with 10 rows per column (20 items/page, 5 pages for 82 items)
- Bump asset cache to v=39; smoke test asserts tabs stay on-screen
Legendaries (cap 1, boss-only): Butcher's Oath, Second Skin, Twin Sidearm,
Crimson Metronome, Abattoir Engine, Gore Crown, Thousand Teeth, Hollow Father,
The Last Cut, Meat Grinder. Once-per-floor flags reset in nextFloor.
Balance fixes: Ghoul Heart now +4 HP (2 full hearts); Brass Magazine ammo
efficiency uses the same diminishing additive formula as Scrap Feed.
- Bigger gore-red Minis (r10->14, sprite 32->48) with regenerated art
- Wider, walkable doorways: clear passage for open, teeth only when locked
- 500ms spawn telegraph so wave spawns no longer blindside the player
- Item stickiness ramps 10%/owned item (cap 50%) instead of flat 50%
- Title-screen Pressure Dial (-5..+5) tunes rise/relief; score x live pressure
- Vitals HUD: two-row hearts, half-container outlines, half-heart shield pips
- Readable 8-page field manual (bigger panel + fonts, implants split)
- HUD opacity slider in pause menu (boss bar + toasts stay opaque)
- Scrap Feed now has diminishing returns like Thick Hide
- Docs, cache-bust v37, and smoke coverage for all of the above
A [?] HELP button (or H key) on the pause screen opens a seven-page
technical manual: controls, run loop, arsenal, mutations, implants,
bestiary and pressure/defense math. List pages render live from the
WEAPONS/ITEMS/PERKS/ENEMY_TYPES/BOSS_DEFS tables so values never drift.
Also unifies the sfxbank fetch cache-buster with the v36 bump.