73 Commits
Author SHA1 Message Date
Quintine faa58b5678 0.9.6
Cleaver whirl, HD boss first-draw, elite Splitter minis.
v0.9.6
2026-08-15 00:46:35 +10:00
Quintine 8991bde943 0.9.5
feat: boss-room loading overlay, drop HUD pressure multiplier, elite Brood Sac 4-6 minis
v0.9.5
2026-08-15 00:24:05 +10:00
Quintine 2cf8dc89fe 0.9.4
feat: large-room blood-pool solids, dash gore burst, GLB weapon refs
2026-08-14 23:57:23 +10:00
Quintine 988e04b2d4 0.9.3
Restore 2D 0.9.2, ignore Meshy refs, double Spinal Tap, Marrow Draught beam ammo, Second Stomach hearts fill overflow shields.
v0.9.3
2026-08-14 23:31:39 +10:00
Quintine c41ce5fdb0 fix: persistent mute toggle, 25%/floor shield regen, halved pressure relief, shielded hits no relief, drop Scavenger perk (0.9.2) v0.9.2 2026-08-13 17:24:27 +10:00
Quintine 683e7a47ec revert: restore original dash length and post-dash slow 2026-08-13 16:21:25 +10:00
Quintine 85238be844 feat: clickable pause buttons, 2x dash with 30% slow, cleaver melee sweep 2026-08-13 13:50:50 +10:00
Quintine 59869945d0 docs: unify styling across guides (enemy tables, item counts, headers) 2026-08-13 13:37:02 +10:00
Quintine a2294197e4 docs: add 0.9.1 CHANGELOG entry 2026-08-13 13:27:12 +10:00
Quintine d60baa6b29 perf: cache static walls, fast-path sprite draws, cache canvas rect (0.9.1, v57) v0.9.1 2026-08-13 13:11:16 +10:00
Quintine 6cc8132046 release: bump to 0.9.0; docs for dash, hearts, pressure refills; drop retired dev-guide index row v0.9.0 2026-08-12 18:05:20 +10:00
Quintine ce73aab116 test: smoke coverage for dash, pressure refills, full-HP hearts, decode-ahead, muzzle origins, debug refill 2026-08-12 18:05:20 +10:00
Quintine 8c2141c3f1 perf: decode-ahead sprite cache; cache bust v56
Sprites.load() now awaits img.decode() before a tier image counts as
ready, so every sprite is fully decoded during the title screen and
first-draw decode jitter disappears on weak machines. Headless smoke
keeps working via the typeof-decode fallback. Asset URLs bump to v=56.
2026-08-12 18:05:11 +10:00
Quintine 4b9e4a1e97 feat: dash ability; ammo pressure scaling, full-HP hearts, muzzle alignment, holstered debug ammo
- Shift dash: 0.45*v*0.6 instant burst then 0.6s of 50% slow (net 95% of
  walking distance); slow doubles as cooldown, no dash while idle/slowed.
- Generic ammo refills scale with the live pressure dial at 80% of the HP
  multiplier via ammoPressureMul().
- Hearts at full HP stay on the floor (magnet ignores them) instead of
  converting to score.
- Muzzle audit: flame FX and pellets share one right-hand origin, Spinal
  Tap beam starts at the muzzle, saw flash suppressed (blade sparks are
  the effect).
- Debug REFILL/INF AMMO and the ammo row now cover a spent special
  holstered behind the Bone Popper.
- Sfx.duck() defaults its args; a no-arg call crashed the loop with a
  non-finite AudioParam value (found via the dash E2E).
2026-08-12 18:04:58 +10:00
Quintine 684a54f5ad feat: rework chroma keyer (interior pockets, fringe erosion, despill) and regenerate SD/HD tiers
Four-stage keyer in flood_key_magenta: unchanged border flood, strict
interior-pocket key, is_magenta fringe erosion, and despill; hd_assets
inherits it via import. New --reprocess mode re-keys assets/raw sources
without API calls (skips tiles, rebuilds sheets, never touches the
manifest). Pure-key #FF00FF pockets are gone from every HD webp.
2026-08-12 18:04:42 +10:00
Quintine 6b4e7091a9 release: bump to 0.8.0 (HD Remaster) with docs, cache bust, and smoke coverage
Cache-bust v=54 -> v=55 across index.html and sfxbank.js, bump the game
version to 0.8.0, document the HD Remaster setting in gameplay.md and the
changelog, and extend the smoke suite with 4x sheet-geometry bounds checks,
HD loader fallback URL assertions, and toggle persistence/reload checks.
v0.8.0
2026-08-12 10:11:23 +10:00
Quintine 928232ce9d chore: add HD Remaster asset tier (4x WebP from raw sources)
218 stills + 24 sheets generated by tools/hd_assets.py at quality 90,
~220MB total. Loaded only when HD Remaster is enabled; standard PNGs
remain the default and the per-sprite fallback.
2026-08-12 10:04:52 +10:00
Quintine efa4a7fb0a feat: parameterize sheet renderers for scale, add HD tier generator
draw_sprites.py renderers take scale/smooth/src_dir/out_dir keywords with
SD-identical defaults (verified pixel-for-pixel against the committed
sheets); smooth swaps NEAREST for LANCZOS/BICUBIC. tools/hd_assets.py
derives the 4x WebP tier from assets/raw sources: flood-key, crop,
margin/fit/center without palette quantization, then renders 4x sheets
through a temp PNG bridge.
2026-08-12 10:04:49 +10:00
Quintine c09a66ae9e feat: tiered sprite loader with per-sprite SD fallback
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.
2026-08-12 10:04:49 +10:00
Quintine ea354d0153 feat: HD Remaster toggle with 4x canvas render path
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.
2026-08-12 10:04:49 +10:00
Quintine 24c1958f2b chore: track unoptimized raw source art under assets/raw 2026-08-12 08:27:00 +10:00
Quintine 50826d568d docs: sync gameplay/items/perks/weapons with 0.7.0 QoL batch; release: bump to 0.7.2 2026-08-11 19:31:28 +10:00
Quintine fde2747561 docs: add 0.7.0/0.6.0 changelog entries, fix docs index, note Linux build in README v0.7.2 2026-08-11 19:20:32 +10:00
Quintine c0d909eebd release: bump game and memory versions to 0.7.0 2026-08-11 19:06:36 +10:00
Quintine 717a106119 feat: peek big-room camera toward walls, shorten perk-selection guard to 0.4s 2026-08-11 19:03:36 +10:00
Quintine b41dcd8ebb feat: QoL weapon/UI batch — door fix, Red Right Hand + flamethrower right-offset, fire slowdown, literal armor dodge, persistent pedestals, menu shot-lock 2026-08-11 18:25:34 +10:00
Quintine 1131ed1e0b Merge branch 'bigrooms' into main 2026-08-11 17:35:42 +10:00
Quintine d9a921a1ea Merge commit integrating big-rooms + linux-and-qol (keep both features) 2026-08-11 17:35:02 +10:00
Quintine 16efccd912 release: bump game and memory versions to 0.6.0 (big rooms) v0.7.0 2026-08-11 08:56:33 +10:00
Quintine 96815f6685 feat: big rooms with Isaac-style camera, extra-large and odd rooms 2026-08-11 08:56:33 +10:00
Quintine 9c6fc194ca release: bump game and memory versions to 0.6.0 (big rooms) v0.6.0 2026-08-11 08:51:48 +10:00
Quintine 063ace998f feat: big rooms with Isaac-style camera, extra-large and odd rooms 2026-08-11 08:51:43 +10:00
admin 7269ff53f0 Merge pull request #1 from Quintine/feature/memory-versioning
Feature/memory versioning
2026-08-10 21:42:56 +10:00
Quintine 5d5eb3d265 feat: room-entry reaction buffer, 1.5s perk-selection lock, nearby-item toasts, Sine Weave stagger perk 2026-08-10 18:31:36 +10:00
Quintine 97ab316304 chore: bump game and memory versions to 0.5.2 after level-up firing and weapon re-pick fixes 2026-08-09 17:05:08 +10:00
Quintine 8c2ee5b5b2 docs: stamp memory version 0.5.0 and add memory versioning policy 2026-08-09 17:02:37 +10:00
Quintine f77b4fd402 feat: crimson metronome lends ½ heart, repaid on a clean room clear 2026-08-09 14:22:26 +10:00
Quintine 0e595d8b17 Document development workflows 2026-08-09 14:16:20 +10:00
Quintine 39d89fbc53 build: add Linux AppImage target and dist:linux script 2026-08-09 13:56:43 +10:00
Quintine e801c02ef6 feat: 2.5s lockout before dropped weapons can be re-picked 2026-08-09 13:56:41 +10:00
Quintine 7aee2f5f64 fix: don't fire weapon when choosing upgrade from level-up menu 2026-08-09 13:56:38 +10:00
Quintine 5e6a7b72fb Add root README and MIT license 2026-08-09 13:37:35 +10:00
MeatSlicer Developer a7e48a0465 Document debug console in help manual and README 2026-07-31 09:30:26 +10:00
MeatSlicer Developer 3f76998fab Add hidden dev debug console (v0.5.0) 2026-07-31 08:49:39 +10:00
MeatSlicer Developer b8b5c360f2 Disable desktop exit in browsers 2026-07-30 23:48:49 +10:00
MeatSlicer Developer 92491dd06e Seal boss stairs after victory 2026-07-30 23:37:26 +10:00
MeatSlicer Developer d96d492a43 Polish pause actions and duplicate weapons 2026-07-30 22:57:36 +10:00
MeatSlicer Developer 3e603c349d Document v0.4.0 expansion 2026-07-30 22:47:39 +10:00
MeatSlicer Developer 74edcf5491 Add five pressure-monster archetypes 2026-07-30 22:44:15 +10:00
MeatSlicer Developer 61a41049f2 Expand pressure dial to twenty-one notches 2026-07-30 22:32:16 +10:00