Item system overhaul: rarity bands, per-item caps, source pools + 14 new passives

- Add ITEM_RARITY (common/uncommon/rare/legendary) with per-item tier caps
- Weighted pools per source: elites favour common, item rooms uncommon,
  bosses rare/legendary; legendaries are boss-exclusive; capped items excluded
- Rarity-weighted powerScore so deep common stacks inflate difficulty less
- Differentiate duplicates: Grafted Trigger, Crow Bait, Hollow Bones, Twin Hearts
- 14 new clean passives incl. Chill Gland (activates slowOnHit) and Hooked Sinew
  (activates magnetPull); revive magnetPull in pickups
- Rarity-tinted pedestal glow + nameplates, rarity-sorted HUD implant tray,
  dynamic help implant pages (8 -> 9)
- Generate 14 item icons via gen_assets.py; bump asset cache to v=38
- Update smoke tests for 60 items, per-item caps, pools, weighted power
This commit is contained in:
MeatSlicer Developer committed 2026-07-30 15:21:02 +10:00
1 parent a02cff52cf
commit 4f46d54e99
28 files changed
+356 -187

No files matched your search

+1 -1
View File
@@ -255,7 +255,7 @@ function killEnemy(e, ang) {
gemVal += irand(3, 5);
spawnGems(e.x, e.y, gemVal);
if (chance(0.18 + luck * 0.1)) {
spawnPickup('item', e.x, e.y, { iid: randomItemId() });
spawnPickup('item', e.x, e.y, { iid: rollItemId('elite', G.floor) });
} else if (chance(0.6 + luck * 0.2)) {
spawnPickup('ammo', e.x, e.y);
}