promotional bannermobile promotional banner

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.
Back to Files

christmas-season-1.4.0.jar

File namechristmas-season-1.4.0.jar
Uploaded
Dec 12, 2025
Downloads
11
Size
12.9 MB
File ID
7325056
Type
R
Release
Supported game 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

What's new

## [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

This mod has no additional files