GUI
---
- Fixed menu `size` field: values are now row counts (3–6), not total slot counts.
- Compacted all menus: Main Hub (4 rows), Admin/Stats/Settings (3 rows), paginated browsers (5 rows).
- Schematic Browser: fixed schematic clicks doing nothing (dynamic items via SoapsCommon YamlGuiScreen fix).
- Schematic Browser: pagination no longer opens empty pages past the last page.
- Schematic Browser: empty schematics folder shows a helpful notice instead of a blank grid.
- Schematic Browser: schematic cards use PAPER instead of MAP (fixes client crashes on hover/click).
- Schematic Browser: preview capped and throttled to prevent client crashes on large schematics.
- Floor selector sub-menu aligned to 5-row layout.
Party scaling
-------------
- New `party-scaling` config section: more players → more mobs, higher HP, extra loot rolls.
- Player count snapshotted when the waiting timer locks the room.
- Per-room opt-out via `party-scaling.enabled: false` in room settings YAML.
- `min-players` enforced before the room locks (timer holds until enough players join).
Schematic templates
-------------------
- Bundled default schematics: ROOM (floor template) and STARTER_ROOM (lobby reference).
- Extracted to plugins/SoapsFloor/schematics/ on first run (won't overwrite existing files).
Performance & fixes
-------------------
- Schematic file cache (dimensions + clipboard, invalidated on reload).
- O(1) mob death lookup via entity-to-room map.
- Item blacklist parsed to Set<Material> on reload.
- Session entity cleanup uses getNearbyEntities() instead of full world scan.
- Leaderboard cache (60s TTL, invalidated on game completion).
- Falling hazard particles capped and sent per-player only.
- Mob spawn delay uses a single queue task instead of one Bukkit task per mob.
- Added soapsfloor.bypass.protection permission to plugin.yml.
Schematic preview (editor-mode config)
--------------------------------------
- schematic-preview-max-blocks: 5000 (downsamples large previews)
- schematic-preview-blocks-per-tick: 30
- schematic-preview-glow: false (glow on thousands of displays crashed clients)
Comments ()