Christmas Season

Lightweight Christmas event plugin for Paper and Spigot 1.21 with biome snow, global snowstorms, decoration drops, gifts, elves and snowmen, controlled via the /xmas command, requires Java 21.

File Details

christmas-season-1.4.0.jar

  • R
  • Dec 12, 2025
  • 12.94 MB
  • 9
  • 1.21.10+10

File Name

christmas-season-1.4.0.jar

Supported Versions

  • 1.21.10
  • 1.21.9
  • 1.21.8
  • 1.21.7
  • 1.21.6
  • 1.21.5
  • 1.21.4
  • 1.21.3
  • 1.21.2
  • 1.21.1
  • 1.21
## [1.4.0] - 2025-12-12

### Fixed
- **CRITICAL: Fixed biome restoration corruption** - Biomes are now correctly restored after `/xmas off`
  - Changed biome serialization from ordinal-based (unstable) to name-based (stable)
  - Fixes issue where biomes were completely scrambled (e.g., JUNGLE became BIRCH_FOREST, OCEAN became FROZEN_PEAKS)
  - Old snapshots using ordinal format are still supported for backwards compatibility
  - **Database format updated:** New snapshots use magic byte `0x3E` (name-based), old format `0x3D` (ordinal-based) still readable

- **Fixed Y-level misalignment in biome restoration**
  - Restore now uses the correct `yStep` value from the snapshot instead of config
  - Prevents biomes from being restored at wrong vertical positions

### Added
- Extensive debug logging for biome snapshot/restore operations
  - Shows which biomes are stored in snapshots
  - Shows which biomes are restored from snapshots
  - Helps diagnose biome-related issues

### Technical Details
- Biome storage format changed from `ordinal()` (2 bytes) to `name()` (length-prefixed UTF-8 string)
- Rationale: `Biome.values()` order is not guaranteed to be stable across server restarts/reloads
- New format ensures biome names like "JUNGLE", "OCEAN" are stored exactly as they are
- Database automatically migrates old snapshots when loading