Game phase state machine
Lobby → countdown → grace → combat → ending. Clean transitions, no stuck rounds.
PeytzPvP is a modern Hardcore Games plugin inspired by the survival-games servers you grew up on. Drop into the arena, scavenge tiered chests, survive the grace period — last player standing wins.
A clean, config-driven core. No god classes, no reflection, no NMS — just a small set of services doing one thing each.
Lobby → countdown → grace → combat → ending. Clean transitions, no stuck rounds.
Define arenas, spawn points, and feast locations from YAML. No hardcoded maps.
Three loot tiers across the map. Push for better gear, risk PvP at the feast.
60s default — tune it from config. PvP unlocks once everyone is geared.
Eliminated players spectate the rest of the round instead of getting kicked.
SQLite for the MVP, Postgres later. Wins, kills, K/D — tracked per player.
Pick before the countdown ends. Every kit changes how you play the round.
Iron chestplate and a shield. Soak hits, hold ground at the feast.
Bow, arrows, leather armor. Pick fights from range and reposition fast.
Iron sword, speed potion. Burst damage, hit-and-run, no second chances.
Food, golden apples, bandages. Outlast the others — last one alive wins.
/kit Pick a starter kit before the round begins. /kit <name> Select a specific kit by name. /arena create <name> Admin — create a new arena. /arena addspawn <name> Admin — register a spawn point. /arena info <name> Admin — inspect an arena's config. /arena list Admin — list all loaded arenas. /hg start Admin — force-start the next round. /hg reset Admin — reset the current match.
Java Edition 1.21 → add server play.peytzpvp.com.
You'll spawn in the lobby; the round starts once {min: 2} players are in.
Run /kit and choose your loadout before the round begins.
60 seconds of grace period. Scavenge tiered chests, then PvP unlocks and the feast spawns.
Eliminations send you to spectator. Win the round, climb the leaderboard.