
Ability mon
Build a Minecraft server-side mod that adds Lootbox Crates: placeable blocks (or chest-like blocks) that, when used, open an animated “case opening” GUI...
00—neoforgeServer1.21.1mod
Ability mon Loot Crates
- Added a placeable
Loot Crateblock that stores its own payment costs and weighted rewards. Breaks drop the block back and spill any configured contents. - Right-click behavior:
- Creative/OP users open the admin editor with payment slots (3) and reward slots (9). Edit crate name, animation length (seconds), slowdown, sound/particle toggles, pity settings, per-reward weight/min/max/rarity/allow-NBT, normalize weights, and run a 1000-roll test that reports expected distribution in chat.
- Other players pay one of the configured item costs (or open for free if none) and trigger a Counter-Strike style opening screen with reel sounds, slowdown, highlight, rarity tag, and optional particles. Rare (Epic/Legendary) wins broadcast to everyone and log server-side.
- Rewards use weighted odds with optional pity timer (guarantees best rarity after threshold misses). Rewards respect allow-NBT toggle; otherwise copies are clean.
- Payments accept any matching stack in the player inventory; failure shows the configured requirement message.
- Networking uses NeoForge payloads so openings and edits sync between client and server.
Using the crate
- Place the Loot Crate (
abilitymon:loot_crate). - Admins open it in Creative/OP to load payment and reward items into the slots, tweak settings, then hit Save.
- Players with the required items right-click to consume payment and watch the spin; the reward is delivered immediately even if the inventory is full (dropped on the ground).
Notes & limits
- Admin checks rely on Creative/OP; explicit permission nodes aren’t wired to an external permission plugin.
- Currency-mod hooks are not implemented; only item payments are supported today.
- Pity counters are stored per-crate and reset on server restart.
- Text fields accept plain values; animation length expects seconds and is clamped to reasonable ranges.