You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: support Minecraft 26.2 and migrate the build to Java 25
Paper/Minecraft 26.2 "Chaos Cubed" is now the default client version.
Add 26.2 support and the toolchain changes its API requires.
Build / toolchain:
- Compile against the latest stable 26.1.2 dev bundle. This is the newest
Paper API with a matching MockBukkit release (mockbukkit-v26.1.2); MockBukkit
has no 26.2 build yet and its registry mock hard-fails on 26.2's new
minecraft:sulfur_cube_archetype registry. 26.2 is fully supported at runtime.
- Move to Java 25: the 26.x paper-api is Java 25 bytecode and forces consumers
to Java 25 (toolchain + options.release). Addons compiling against BentoBox
must also move to Java 25.
- Use paperweight 2.0.0-SNAPSHOT (via a pluginManagement Paper repo): all 26.x
dev bundles are data version 8, which released paperweight (<= beta.21) cannot
read. Point the paperweight launcher at Java 25 (paperclip needs it for 26.1+).
- Switch MockBukkit to org.mockbukkit.mockbukkit:mockbukkit-v26.1.2:4.113.2.
- buildVersion -> 3.18.0.
Runtime 26.2 support:
- ServerCompatibility: add V26_2 (COMPATIBLE).
- Modrinth game-versions: add 26.2.
Sulfur Cube (new 26.2 mob) protection. Resolved via Enums.getIfPresent so the
code still works on older APIs; the field is null-guarded and non-final so tests
can inject a stand-in type:
- Util: classify SULFUR_CUBE as passive and exclude it from hostile (it is
slime-like but passive).
- EntityInteractListener: giving a block to a cube to absorb -> PLACE_BLOCKS.
- BucketListener: picking a cube up with an empty bucket -> BUCKET.
- Shearing an absorbed cube is already covered by the generic SHEARING listener.
New 26.2 building blocks, potent sulfur/geysers/gas, the music disc and the
spawn egg need no new flags (generic break/place, environmental, or existing
JUKEBOX/SPAWN_EGGS).
Test fixups required by the API bump (26.1.x):
- HangingBreakByEntityEvent and VehicleDamageEvent now take a DamageSource;
update the call sites in BreakBlocksListenerTest and ItemFrameListenerTest.
- Add Sulfur Cube tests for the classification, interaction and bucketing paths.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: CLAUDE.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
4
4
5
5
## Project Overview
6
6
7
-
BentoBox is a Bukkit/Paper library plugin (Java 21) that provides the core platform for island-style Minecraft games (SkyBlock, AcidIsland, etc.) via an extensible addon system.
7
+
BentoBox is a Bukkit/Paper library plugin (Java 25) that provides the core platform for island-style Minecraft games (SkyBlock, AcidIsland, etc.) via an extensible addon system.
0 commit comments