FrontierEvents
Arena events for survival servers — co-op Boss Rush raids, player-started raid keys, the endless Gauntlet, TDM/FFA/KOTH, duel tournaments with wagers, Colosseum Night and an open PvP ring — with three gear modes and crash-safe isolation.
What it does
An event and minigame engine that runs inside a normal survival world. Boss Rush is the flagship: a party fights trickle-spawned waves of armored mobs up to a phased, scripted boss across six themed raids (plus the endless Gauntlet), with per-wave lives, class kits, cobweb and barricade traps, a Pit difficulty ladder (1–5) that scales mobs, payouts and loot odds, and four-tier RNG loot including above-vanilla-cap Pitforged gear.
Raid Keys let players start their own raids WoW-keystone style with no admin present. TDM/FFA, KOTH and FFA-KOTH PvP with kits, placeable cobwebs and siegeable fort barricades, and Duel Tournaments (1v1 single-elimination bracket, best-of-3 final, parimutuel wagers) round out the modes.
Colosseum Night is the one event that schedules itself: sign-ups open before a set start time, modes rotate (FFA, FFA-KOTH, TDM…), and everyone fights in the same Knight kit, getting their own gear back afterwards. The prize is a fixed winner’s chest — $500 + 4 diamonds + 8 XP bottles + one jackpot roll, with the cash split in team modes. The open ring is a standing PvP ring in the colosseum; ring deaths drop items on the ring floor (no grave).
Every event runs in one of three gear modes — [KIT] (provided loadouts, nothing at stake), [BYOG] (bring your own gear, deaths never drop it) or [HARDCORE] (your gear drops where you fall) — behind a click-through consent gate. Two design pillars stand out: no item loss unless explicitly opted into (Boss Rush intercepts fatal hits instead of letting you die; event deaths don’t inflate your real death count; inventories are snapshotted to SQLite on join and restored even after a crash), and the arena never needs a reset (block changes are prevented rather than rolled back; traps decay or are swept; the colosseum is grief-proof even between events). Everything player-facing is GUI-driven, and anyone can spectate a running event.
Requires & integrates with
- Required
- Paper 26.3+, Java 25+.
sqlite-jdbcis downloaded automatically at first boot. - Optional
- Vault + any economy (money payouts, wagers, raid-key start costs — without it runs still complete and loot and stats still happen, money is skipped) · FrontierMail (loot that won’t fit or arrives while offline is mailed to
/mailbox; otherwise ground-drop, or lost for offline players) · FrontierGraves (stray graves are swept out of the arena at teardown) · FrontierAnnouncements (Gazette posts) - Used by
- FrontierReputation (uses
EventApito exempt arena combat from murders, bounties and PvP opt-out) · FrontierTab (does not count event or ring-edge deaths) · FrontierGraves (implementsGraveApi, refuses to spawn graves in a live event or for ring-edge deaths) · FrontierHeads (no head for event or ring kills) · FrontierStatsAPI (servesstats.dbon/api/events/*and/api/events/pvp/*)
Commands
/event help, /event night and /event ring also work from console; everything else is player-only. /event is one command; rows marked Admin are gated on frontier.events.admin inside the command.
| Command | Who | What it does |
|---|---|---|
| /event (also hub, gui) | Everyone | While an event is live: the Event Hub GUI (join/leave/spectate, kit, team, info); mid-match the join button becomes Spectate. With no event running: the Colosseum Night sign-up GUI while sign-ups are open, otherwise the chat help list |
| /event help | Everyone | Chat list of the event commands |
| /event night (also colosseum, chest, pitchest) | Everyone | Colosseum Night schedule and sign-up |
| /event night now [seconds] | stop | reload | Admin | Run Colosseum Night now (optional [seconds]), stop it, or reload its config |
| /event ring [status] | Everyone | Open PvP ring status |
| /event ring open|close | Admin | Open or close the open ring |
| /event join [team] | Everyone | Join the current event (allowed through the countdown); first join of a BYOG or hardcore event shows the risk warning plus a click-through confirm |
| /event leave | Everyone | Leave the event (inventory restored; forfeits payout mid-match; the starter walking out of their own key run counts as a wipe) |
| /event spectate (also watch) | Everyone | Watch any event, even mid-match — spectator mode, arena leash, no effect on results or payouts; /event leave to exit |
| /event kit | Everyone | Open the kit selector (auto-opens on join; picks lock at match start; explains there are none in own-gear events) |
| /event team | Everyone | Open the team selector (team modes) |
| /event key (also keys) | Everyone | Raid-key board GUI: your key’s Pit, the six raids with cleared/next/locked status, one-click starts |
| /event key start <raid> [pit] [kit|byog] | Everyone | Start a key run directly; lower Pits than your key = practice runs |
| /event info | Everyone | Current event info, including the gear-mode tag |
| /event stats [player] | Everyone | Your (or another player’s) cumulative Boss Rush and PvP totals |
| /event leaderboard (also top) | Everyone | Top players from stats.db |
| /event bet <fighter> <amount> | Everyone | Duels only: parimutuel stake on the current pairing while the betting window is open (fighters of that match excluded; top-ups OK, no side-switching) |
| /event create <name> <type> <arena> [teams|raid] [pit] [kit|byog|hardcore] | Admin | Create an event; type = BOSS_RUSH, TDM, FFA, KOTH, FFA_KOTH or DUEL; Boss Rush takes a raid key plus optional Pit; a trailing gear word picks the mode (default defaults.gear-mode) |
| /event start | /event forcestart | Admin | Start with countdown / start now |
| /event stop (also cancel) | Admin | Cancel the event (refunds key start fees) |
| /event forceend [clear|wipe] | Admin | Force-resolve a stuck live event: default = clear payout, wipe = resolve as a loss (aliases forceresolve, forcepayout) |
| /event settings <key> <value> | Admin | Tune time, scorelimit, respawn, respawndelay, difficulty, gearmode (only while the lobby is empty), testmode (dev toggle: 1 glass-jaw add per wave and a 30-HP boss) |
| /event difficulty <n> (also pit <n>) | Admin | Shorthand for settings difficulty <n> |
| /event admin | Admin | Control-panel GUI: create wizard (mode → arena → raid → Pit → gear), start/stop, lobby settings, force-join and kick |
| /event forcejoin <player> [team] | Admin | Add an online player to the lobby (skips the consent gate but still warns them) |
| /event kick <player> | Admin | Remove a player (inventory restored; win condition re-checked) |
| /event statedit get|set|add|reset|run … | Admin | Edit persisted stats rows in stats.db for online or offline players; bare statedit prints the field list |
| /arena create|delete|setlobby|setspawn|pos1|pos2|setcenter|radius|height|list|info | Admin | Build and inspect arenas: setcenter + radius <x> <z> + height define the elliptical combat ring, pos1/pos2 the outer stands box, setlobby the lobby spawn, setspawn <name> red a combat spawn |
| /kit list | /kit give <name> | Admin | List configured kits / give yourself one to test |
Permissions
Player features default to true, staff features to op. Every node follows frontier.<plugin>.<action>, so a LuckPerms setup is e.g. lp group default permission set frontier.shop.use true. Wildcards work: frontier.reputation.*.
| Node | Default | Grants |
|---|---|---|
| frontier.events.use | true | /event participation subcommands (join, leave, spectate, kit, team, key, info, stats, leaderboard, bet, hub) |
| frontier.events.admin | op | /arena, /kit, and the admin subcommands of /event; also lets you start a key run without holding a key |
| frontier.events.bypass | op | Exempt from the in-event command whitelist and from arena containment / idle grief protection (staff) |
Config reference
File
plugins/FrontierEvents/config.yml
To apply changes
Restart required for most keys — config is parsed at enable. /event night reload reloads the Colosseum Night config.
Good to know
- +Arenas are two-zone: an inner elliptical combat ring (
setcenter+radius+height) inside an outer stands box (pos1/pos2). Before a match players roam the stands and are kept out of the ring; during it the leash flips to the ring. A box-only arena also works. The whole footprint is build-protected even when idle for anyone withoutfrontier.events.bypass, natural mob spawns are blocked in it, and outsiders are bounced off the combat floor. - +Two SQLite files live in
plugins/FrontierEvents/:vault.db(inventory snapshots, placed traps — restored and swept on boot after a crash) andstats.db(event_history,event_players,loot_log,payout_log,player_totals,pvp_totals,player_keys,live_event) — the latter is what FrontierStatsAPI serves. - +Loot is public, money is private: every drop is broadcast as
<name> received <item>, while each earner is whispered their ownYou earned $Xline. Event deaths never touch your real death statistic or spawn a grave. - +The legendary loot tier is fully built but disabled in the shipped config (too much permanent power leaking into survival); uncomment the
loot.legendaryblocks andlegendary-chancekeys to re-enable it. - +The most common owner tweaks are
boss-rush.scaling.add-multiplier(lower it for a small server), therewardsmoney figures if your economy is tighter or looser,defaults.gear-mode, andkeys.min-players/keys.daily-starts/keys.paid-clears-per-dayto control key-run pacing. Remember most edits need a restart. - +Colosseum Night and the open ring are fought under the event rules: nobody’s own gear is at risk in Colosseum Night, and a death in the open ring (or just after leaving it) drops items on the ring floor instead of making a grave, isn’t counted by FrontierTab and drops no head.
← Previous
FrontierShop
Server shop + player market with daily-ticker pricing, sign shops, daily deals, black market, custom items
Next →
FrontierStatsAPI
Embedded HTTP/JSON API (36 routes) serving every plugin’s data to a website or bot
Looking for something specific? Search the whole suite.