Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for castledking

A fork of GriefPrevention that adds 3D subdivisions

Report GriefPrevention3D?

Release
18.2.4

castledking released GriefPrevention3D version 18.2.4 on July 3, 2026

GriefPrevention3D v18.2.4

Wiki: https://github.com/castledking/GriefPrevention3D/wiki

Features

PvP toggle command improvements

Fixed several bugs in the /claim pvp command to improve usability and reliability.

Optional confirm suffix

The confirm suffix is now optional. Players can use:

  • /claim pvp true - Shows confirmation message, then type /claim pvp true confirm to execute
  • /claim pvp true confirm - Executes immediately without confirmation prompt

This matches the behavior of other confirmation-based commands in the plugin.

Fixed empty argument handling

Previously, running /claim pvp with no arguments would throw an error. It now shows proper usage: ```text Usage: /claim pvp <true|false> [confirm]


#### Improved localization

Added translatable messages for PvP state descriptions:
- `PvPToggleEnable` - Localizable "enable" text
- `PvPToggleDisable` - Localizable "disable" text

These are used in confirmation messages instead of hardcoded English text, allowing proper translation.

#### Fixed placeholder documentation

Added proper placeholder documentation to confirmation messages:
- `ConfirmPvpToggleNoFee` - Documents placeholders {0}, {1}, {2}, {3}
- `ConfirmPvPToggleWithFee` - Documents placeholders {0}, {1}, {2}, {3}, {4}

### PvP prevention now actually works

The per-claim PvP toggle was previously stored but not enforced. The `claimIsPvPSafeZone()` method now checks the `pvpEnabled` field before falling back to global config settings.

When PvP toggling is enabled and a claim has `pvpEnabled = false`, it is treated as a PvP safe zone and prevents PvP combat regardless of global config settings.

### Startup header improvements

Minor formatting improvements to the startup header display:
- Updated `PluginTag` message to use newline instead of space for better formatting
- Removed extra newline from `startups.txt` template
- Removed extra newline from `StartupHeader.buildStartupBlock()` method

### Shaped claim merge improvements

Improved the merge claims feature when working with shaped claims. When merging shaped claims while standing in the nibbed (indented) portions, the system now creates a rectangle between the claims instead of using a Manhattan path. This approach follows the Minkowski sum principle, resulting in more intuitive and efficient claim merging for complex shaped claims.

Added new fields to track merge state for shaped claims:
- `mergeSecondEdgeIndex` - Tracks the second claim's edge index for shaped claim merge
- `mergeFirstDepthPoint` - Player position when first claim merge edge was selected (for nib depth)
- `mergeSecondDepthPoint` - Player position when second claim merge edge was selected (for nib depth)

## Technical changes

- Added `PvPToggleEnable` and `PvPToggleDisable` messages to Messages enum
- Updated `handlePvpCommand()` to handle optional confirm suffix
- Added empty argument check in `handlePvpCommand()`
- Updated confirmation messages to use translatable state strings
- Updated placeholder documentation in `ConfirmPvpToggleNoFee` and `ConfirmPvPToggleWithFee`
- Modified `claimIsPvPSafeZone()` to check `pvpEnabled` field before global config
- Updated `PluginTag` message format in Messages.java
- Removed extra newline from startups.txt template
- Removed extra newline from `StartupHeader.buildStartupBlock()` method
- Updated plugin.yml usage for claimpvp command to show `[confirm]` as optional

Information

Published onJuly 3, 2026
Downloads3

Platforms

Paper Paper (1.8.8-26.2)