Skip to content

April 9, 2026

Build Information

Date: April 9, 2026
Type: Feature Update
Compatibility: Backwards Compatible


Added

System & Permissions

  • Added player settings for rejoin, spectator, and maintenance behavior.
  • Added permission nodes for admin, settings, maintenance, spectator, and game controls.
  • Added participant ranking support with sorted rank retrieval.

Game Mechanics & Integration of Parties plugin

  • Added mid-game join support with spawn distribution for running matches.
  • Added team integration via TeamManager, PartiesApiService, and PartiesTeamManager.
  • Added action-clear support for faster phase action reconfiguration.

Lifecycle & Updates

  • Added startup update checks with semantic version comparison.
  • Added ParticipantLeaveGameEvent for participant leave lifecycle hooks.

Changed

Core Refactoring

  • Migrated text parsing to MiniMessage-based component formatting.
  • Standardized configuration keys from camelCase to kebab-case.
  • Refactored team and participant internals into dedicated store classes.
  • Renamed leave/module event classes to participant-oriented naming.

Workflow & UX

  • Applied permission-aware inventory rendering with player settings integration.
  • Moved update check execution to async flow with explicit version validation.
  • Changed winner flow to force spectator mode after game completion.
  • Changed docs processing workflow to run from master branch updates.

Persistence

  • Improved ItemStack serialization reliability in persistence paths.

Fixed

Stability & Edge Cases

  • Fixed mid-game join/leave lifecycle edge cases during active matches.
  • Fixed SIL-18 by degrading missing phase-action plugin dependencies to warnings.
  • Fixed module reload/reset error propagation for failed reload paths.

Internal Systems

  • Fixed action replacement to avoid mandatory remove-and-add cycles.
  • Fixed listener removal/reload handling in EventListenerManager.
  • Fixed fallback event scanning to clear override cache before full scan.
  • Fixed plugin.yml resource version replacement in build output.

Technical Notes
  • Renamed internal API IParticipator to IParticipant and migrated internal usage.
  • Renamed internal API participantDisqualified to disqualifyParticipant.
  • Added VersionComparator tests for semantic version parsing and comparison paths.
  • Updated build/dependency setup including Gradle wrapper and plugin dependency metadata.
  • Kept existing text configuration compatible with MiniMessage migration behavior.