
1.1K
2
GriefPrevention3D v17.3.5 for mc26.1.2
beta21 апреля 2026 г.GriefPrevention v17.3.5 (Paper 26.1.2 Experimental)
Highlights
- Experimental support for Paper 26.1.2 (calendar-versioned Paper builds running on Java 25).
- Migrated deprecated
PlayerLoginEventtoAsyncPlayerPreLoginEventto comply with Paper 26's re-configuration API requirements. - Thread-safe IP ban tracking for async login handling.
Paper 26.1.2 Compatibility
This release targets Paper's new calendar-versioned experimental builds (26.1.2.build.18-alpha) which require Java 25. The plugin has been verified to load and run correctly on:
- Paper: 26.1.2.build.18-alpha (Implementing API version 26.1.2.build.18-alpha)
- Java: OpenJDK 25.0.2+10-LTS (Temurin)
Event System Migration
Paper 26 deprecates listening to PlayerLoginEvent because it fires between the login and configuration phases, blocking Paper's re-configuration APIs. This release migrates to AsyncPlayerPreLoginEvent:
- Login cooldown and spam protection now run asynchronously before the configuration phase.
- IP address recording moved to
PlayerJoinEventto keep DataStore writes on the main thread. - Smart-ban IP tracking preserved: banned accounts are still recorded for IP-based auto-banning.
Thread Safety Improvements
tempBannedIpschanged fromArrayListtoCopyOnWriteArrayListto safely handle writes from the async login thread while main-thread handlers iterate the list.
Technical Changes
paper-apidependency bumped to26.1.2.build.18-alpha.- Removed deprecated
PlayerLoginEventandPlayerLoginEvent.Resultimports. - Added
AsyncPlayerPreLoginEventimport and handler (onAsyncPlayerPreLogin). - Added offline-safe
hasSpamBypass(UUID)helper for cooldown bypass checks (falls back to op status; permission-based bypass will be restored in a future update).
Notes
- This is an experimental build for Paper 26.1.2. For production servers on Paper 1.21.x, use the standard v17.3.5 release.
- The
api-versioninplugin.ymlremains"1.21"for backward compatibility. - All 108 unit tests pass on Java 25.
- No changes to claim mechanics, permissions, or commands — this is purely a compatibility update.
GriefPrevention3D v17.3.5
release21 апреля 2026 г.GriefPrevention v17.3.5
Highlights
- Major shaped-claim performance pass: shaped edits and large shaped path creation are now viable at sizes that previously stalled or failed the geometry layer.
- Reduced per-edit CPU cost for nib growth, merges, and boundary tracing on claims with long orthogonal perimeters.
Shaped Claim Performance
- Replaced the per-cell scan used to measure shaped claims with a closed-form count derived from the boundary polygon, so measuring a shaped claim is now
O(edges)instead ofO(width * height). - Large shaped paths (winding corridors, perimeter walls, sprawling multi-segment outlines) can now be created and resized without the prior cost wall, because measurement no longer grows with the claim's bounding box.
- Added a cached boundary polygon on each claim so repeated measurement, containment, and overlap queries within the same edit no longer rebuild and re-validate the polygon from scratch.
Technical Improvements
- New
OrthogonalPolygon.cellCount()computes the number of integer-lattice cells inside or on the boundary of a shaped claim directly from its corners, using Pick's theorem (A + B/2 + 1) with the shoelace formula for the areaAand the summed Manhattan edge lengths for the boundary countB. This is exact for axis-aligned polygons with integer corners, which is always the case for shaped claims. Claim.getClaimBlocks()now callscellCount()instead of iterating every(x, z)in the bounding box and callingcontainsColumn.DataStore.polygonCellArea(...)no longer builds a throwaway measuring claim and runs a per-cellcontains(...)test; it also delegates tocellCount().- Added a transient
cachedBoundaryPolygononClaim, invalidated on shape mutation and on the copy constructor, and populated from the already-validated polygon insetShapedCornerssogetBoundaryPolygon()does not re-validate on first access.
Notes
- This release is the recommended base for GPExpansion
v1.0.4, whose/claimmapperformance work depends on the shaped-claim geometry speedups shipped here. - Behavior of existing shaped edits is unchanged; only their cost and upper size limits have improved.
GriefPrevention3D v17.3.4
release9 апреля 2026 г.GriefPrevention v17.3.4
Highlights
- Fixed
/claimexplosionsnot actually enabling TNT explosions in claim.
GriefPrevention3D v17.3.3
release6 апреля 2026 г.GriefPrevention v17.3.3
Highlights
- Fixed
/witherexplosionsbeing ignored when/claimexplosionswas enabled. - Wither skull explosions now correctly respect the separate wither explosion setting.
GriefPrevention3D v17.3.2
release4 апреля 2026 г.GriefPrevention v17.3.2
Highlights
- Fixed a
/permissiontrustregression where trusted players could end up with edit-level abandon behavior instead of only trust-management access. - Continued the shaped-claim editor stabilization pass, especially around nib merges, corner reconnects, and map-driven geometry updates.
- Updated default
/claim createlayout math so editor-integrated creation flows line up to a true10x10starter claim instead of drifting between9x9and11x11.
Shaped Claims And Resizing
- Fixed several shaped resize edge cases where notch and nib edits could:
- expand an entire face instead of the intended local segment,
- collapse into a tiny invalid local loop,
- fail to reconnect to the main claim body during merge-style edits,
- or report a successful merge while leaving inconsistent geometry.
- Improved polygon union and subtraction tracing used by the editor stack so map-driven claim edits can resolve the final claim body more reliably.
- Tightened claim creation and resize alignment for editor-driven workflows so boundary math stays consistent between command creation, shovel resizing, and external map tools.
Bug Fixes
- Fixed
/permissiontrustincorrectly allowing players to abandon claims they did not own. - Fixed starter claim sizing so
/claim createnow produces the expected exact square footprint for editor integrations. - Fixed several shaped-resize regressions that could mis-handle corner fills, side merges, or segment-local edits.
Technical Improvements
- Added cleaner polygon merge/subtract handling for occupied-cell based claim editing.
- Improved boundary tracing and reconnect selection for complex orthogonal shaped claims.
- Better failure handling for unsupported geometry outcomes, such as edits that would split a claim into disconnected pieces.
Notes
- This release is the recommended base for the updated GPExpansion
v1.0.3map editor and resize GUI work. - When a shaped edit cannot be represented safely, it now fails cleanly instead of silently approximating a broken result.
Совместимость
Создатели
Детали
Лицензия:GPL-3.0-only
Опубликован:9 месяцев назад
Обновлён:7 часов назад