Minecraft mod removing PvP. It makes it posible to set dedicated PvP zones on the Server.
- Kotlin 95%
- Java 5%
|
|
||
|---|---|---|
| .forgejo/workflows | ||
| gradle/wrapper | ||
| src | ||
| .gitignore | ||
| build.gradle.kts | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| LICENSE.txt | ||
| README.md | ||
| settings.gradle.kts | ||
FishPvP
FishPvP is a lightweight, purely server-side Fabric mod that restricts player-versus-player combat to designated PvP arenas, enforces combat-tag rules, and automatically resets modified blocks inside arenas on a configurable schedule.
100% Server-Side: Players do not need to install this mod on their clients to join and use its features.
Features
- Designated PvP Zones: PvP is disabled globally outside registered arenas and enabled automatically when both players are inside a PvP zone (or already tagged in combat).
- Combat Tagging & Anti-Combat-Log: Attacking another player starts a 30-second (configurable) combat timer shown in the actionbar. Disconnecting during active combat eliminates the player.
- Delta-Based Arena Resets: Only blocks modified since the last baseline (
update) are recorded and restored automatically on schedule or manually via command. - LuckPerms Ready: Uses the Fabric Permissions API (
fish.pvp) with an automatic fallback to vanilla OP levels.
How It Works for Players
- Enter an Arena: Walking into a PvP zone displays an actionbar notification.
- Engage in Combat: Fighting tags both players in combat; the actionbar counts down the remaining combat time.
- Automatic Arena Restoration: Arenas automatically reset to their saved build state after the configured interval with an on-screen countdown.
Commands & Permissions
All management commands require the permission fish.pvp (configurable) or OP status (Level 3/4) if no permission plugin is installed.
For Team Members (fish.pvp)
/pvp– Displays command usage overview./pvp area <Name> pos1– Sets the first corner (X/Z) of a PvP arena./pvp area <Name> pos2– Sets the second corner (X/Z) of a PvP arena./pvp area <Name> update– Saves the current build state of the arena as the reset baseline./pvp area <Name> reset– Immediately restores the arena to its saved baseline./pvp area <Name> delete– Deletes the PvP arena./pvp list– Lists all configured PvP arenas and their coordinates./pvp debug [Seconds]– Starts a test reset countdown (default 10s)./pvp reload– Reloadsconfig.jsonandareas.jsonat runtime.
⚙️ Configuration
All configuration and runtime files are automatically generated and stored in config/fishpvp/:
config.json– CustomizepvpPermission("fish.pvp"),combatLogSeconds(30),resetIntervalMinutes(60), andautoResetEnabled(true).areas.json– Stores all PvP zone names and corner coordinates.snapshots.json– Stores delta block states recorded since the last arena update/reset.