Compatibility
Minecraft: Java Edition
Platforms
Links
Tags
Creators
Details
For the texture pack make sure to join the discord and ping me @wummsy_ig three ability slots. a pvp kill buys you one, dying takes one away and leaves you with something worse.
that's the whole plugin. it's for servers where you want the answer to "what do i do in this fight" to change every fight, without bolting an rpg class system onto a vanilla-ish kit pvp box. the cheap version of that, one jar, no dependencies.
the loop
- you get a pvp kill. a menu opens with three random abilities off the offense / defense / healing pools.
- under three slots filled, the one you pick goes in the first free slot. at three filled you get the replace menu and choose which of your own abilities you throw away. permanently.
- you die. one of your slots gets forced into a random debuff. not a choice, and no, milk doesn't fix it - it's an attribute modifier, not a potion. it sits there eating a third of your build until you win a fight, and then you either replace it with your pick or spend the pick on dropping the curse instead.
nothing gets picked for you. every ability in your slots is one you chose, and everything you lost is one you chose to lose. that's the whole design: the pressure is in the choosing, not in the grinding.
firing them
/use 1, /use 2, /use 3. /use next fires the first ready one, which is the
thing you want on a keybind. /use on its own prints your three slots and what's
cooling.
abilities are a command and not a right click because a right click is also "eat
this golden carrot", "open that chest", "place this block", and i got tired of
watching people lunge into a wall mid-build. if you miss the old way,
activation.right-click: true puts it back. passives don't have a button at all -
Execute and Bleed and the rest hook the damage events.
the 20
| offense | defense | healing | debuff (only ever forced on you) |
|---|---|---|---|
| Lunge - dash at what you're looking at | Guard - eat the next hit entirely | Regen Pulse - 3 hearts plus regen | Weakened - 45% less damage, slow arms |
| Execute - bonus on anything under 20% | Thickskin - flat melee reduction | Second Wind - one save under 15% | Sluggish - 30% speed, no sprint |
| Bleed - your hits leave a wound that ticks | Slip - sometimes the knockback just misses you | Vampiric - steal health off melee hits | Exposed - armour is decoration now |
| Cripple - 30% chance to slow who you hit | Barrier - absorption bubble and some health back | Cleanse - strip every bad effect | Winded - every swing costs you food |
| Berserk - go stupid for 6s, pay for it after | Retaliate - half your face back in theirs | Sustain - tick back up out of combat | Shaky - long cooldowns, short reach |
lunge is 4.5s, berserk 30s, guard 21s, barrier 31s, regen pulse 35s, cleanse 45s,
second wind 2m30s. every damage figure, chance, duration and cooldown in that table
is one number in config.yml and /loadout reload applies it without a restart.
icons
the jar carries a resource pack: a hand drawn 64x64 emblem for each of the twenty
abilities, plus a 128px copy. on enable the plugin drops it next to the config,
works out the sha1 itself, and serves it on its own little port - so a fresh
server needs no nginx, no web host, no cloudflare. players who decline it still
get a normal sword / shield / potion / arrow per ability, because the pack only
ever adds an item_model to items this plugin gives itself and touches zero
vanilla assets. nobody's potions change colour, nobody's clock stops ticking.
if you already host the pack somewhere, set resource-pack.url and it'll use
yours instead of starting the http server.
putting it on
paper or purpur 1.21.11, java 21. one jar, 193kb, no dependencies and no
softdepends. drop it in plugins/, restart, done.
loadout.useis everybody,loadout.adminis op. no permissions plugin needed.- saving is a single
data.ymlon the main thread. fine for a few hundred players, not built for a 3k box and i'm not going to pretend otherwise. - not Folia.
- players have to be online to be edited. the equip/unequip hooks run against a live player, and pretending otherwise is how attribute modifiers start leaking across swaps.
- there's a sidebar and an actionbar nudge, both one flag off.
what it isn't
it's a pvp plugin with a pvp plugin's priorities. no claim protection, no skill tree, no config gui, no mysql, no placeholders, no locale files, no economy hooks. the config is yaml and you read it like a person.
two things to know before your first death on it: the debuffs are deliberately
mean (1.4 gave them teeth, before that they were a shrug) and a lost ability only
comes back if it shows up on a later roll - there's no "re-buy it cheaper" option
by design. if your server is mostly people who die a lot, leave
death.allow-stacking-debuffs: false and raise kill.min-ticks-between-rolls
before somebody has a word with you.
admin
/loadout set <player> <1-3> <ability> force a slot
/loadout give <player> <ability> first free slot
/loadout clear <player> wipe all three
/loadout roll <player> open a pick menu for them (testing)
/loadout pack [send|off] the icon pack
/loadout reload config, no restart
/loadout help prints the same list in game, and that's the one i keep up to date.


