Add pressure dial, wave spawn telegraphs, and readability pass

- 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
This commit is contained in:
MeatSlicer Developer committed 2026-07-30 00:01:06 +10:00
1 parent d255be5e39
commit a02cff52cf
24 files changed
+667 -201

No files matched your search

+4 -3
View File
@@ -49,12 +49,13 @@ const ITEMS = {
rerollrib: { name: 'Reroll Rib', desc: '+1 perk reroll each level', apply: s => { s.rerollPerLevel += 1; s.rerolls += 1; } },
};
// 50% of rolls favor items the player already owns (below cap) so high tiers
// are reachable if you commit to them
// Stickiness ramps with commitment: 10% per distinct upgradable item owned,
// capped at 50%. Your first pickup barely biases the pool, so early drops vary.
function randomItemId() {
const p = G.player;
const owned = p ? Object.keys(p.items).filter(iid => (p.items[iid] || 0) < ITEM_LEVEL_CAP) : [];
if (owned.length && chance(0.5)) return choice(owned);
const stick = Math.min(0.5, owned.length * 0.10);
if (owned.length && chance(stick)) return choice(owned);
return choice(Object.keys(ITEMS));
}