Normalize ammo economy: per-weapon refill, stream drain, behavior fixes

- 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
This commit is contained in:
MeatSlicer Developer committed 2026-07-30 22:06:10 +10:00
1 parent 7d33e36c1e
commit d9eae34df4
18 files changed
+380 -101

No files matched your search

+2 -1
View File
@@ -592,8 +592,9 @@ function onBossDeath(e) {
}
addScore(500 + G.floor * 100);
addShake(12);
// boss reward: item pedestal + a real weapon drop + stairs down
// boss reward: item pedestal + a real weapon drop + ammo + stairs down
spawnItemPedestal(W / 2 - 90, H / 2, null, 'boss');
spawnPickup('ammo', W / 2, H / 2 - 40);
// 30% chance of a bonus active pedestal (additive — never replaces the passive)
if (chance(0.30)) spawnActivePedestal(W / 2 - 160, H / 2 + 60);
const bw = rollWeaponDrop(G.floor + 2); // bosses drop the good stuff