Skip to content

Modernize zKoth for supported Paper 26.2 APIs - #21

Open
GerwinVerkerk wants to merge 2 commits into
GroupeZ-dev:developfrom
UnitedFactions:refactor/paper-26-2-supported-apis
Open

Modernize zKoth for supported Paper 26.2 APIs#21
GerwinVerkerk wants to merge 2 commits into
GroupeZ-dev:developfrom
UnitedFactions:refactor/paper-26-2-supported-apis

Conversation

@GerwinVerkerk

Copy link
Copy Markdown

Objective

Move zKoth from removed, internal, and deprecated Bukkit/Bungee/NMS paths to supported Paper 26.2 APIs while preserving existing gameplay behavior.

Scope

  • replace reflective NMS action-bar, item/NBT, and version-routing code with supported Paper APIs;
  • use Adventure components for legacy-formatted chat, titles, action bars, inventory titles, item names, and lore;
  • migrate profiles, materials, enchants, potion effects, inventory holders, plugin lifecycle calls, and related hook calls to current APIs;
  • keep a read-only legacy item decoder for existing saved rewards while writing new items with Paper's byte serializer;
  • update compilation to exact Paper 26.2 build 112 and fail on deprecated/removal/unchecked Java API use;
  • add regression coverage for legacy and hex color conversion.

Keeping the old reflection/version matrix and adding another 26.2 branch was considered, but rejected: those internals are not a supported Paper contract and would continue to break across server updates.

Verification

  • ./gradlew --no-daemon clean build — passed on Java 25
  • 2 JUnit tests passed, 0 failures/skips
  • compilation passed with deprecation, removal, and unchecked warnings treated as errors
  • source scan found no remaining NMS/CraftBukkit/Bungee chat imports or removed version helper usage
  • git diff --check — passed

Compatibility and operational notes

  • Target runtime: Paper 26.2 / Java 25.
  • No command, permission, schema, or economy changes.
  • Existing legacy serialized item rewards remain readable.
  • Newly saved item strings use a paper: format and are not readable by older zKoth builds; operators should back up configuration before downgrading.
  • Optional hook dependencies and load order remain unchanged.
  • GUI, inventory, movement/capture, client rendering, and reward delivery still require real-player acceptance after deployment.

Rollback

Revert the commit and restore configuration saved before first use of the new item serializer. A JAR-only downgrade is safe only if no rewards were re-saved in the new paper: format.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant