File Details
GlymeraPlots-5.0.0.jar
- R
- Apr 13, 2026
- 43.64 KB
- 48
- Early Access
File Name
GlymeraPlots-5.0.0.jar
Supported Versions
- Early Access
GlymeraPlots - Changelog
v5.0.0 (2026-04-13)
Reworked: Plot Border Display (DebugShape)
/gp showis now a toggle instead of a 30-second timer. Type it once to turn the border on, type it again to turn it off.- Replaced particles with DebugShape.Cube: The old
Candle_Fireparticle system (spawned every 5 blocks, refreshed every 4 seconds) has been completely replaced withDisplayDebugpackets usingDebugShape.Cube- the same technology as GlymeraChunkGrid. - Purple border lines: 4 horizontal edges scaled to the full plot side length (101 blocks at default radius), plus 4 vertical pillars (20 blocks tall) at the corners. Color matches the Glymera theme (RGB 0.78, 0.36, 1.0) at 60% opacity.
- Y-position follows the player: The border stays at your current height instead of being locked to where you stood when you typed the command.
- No distance limit: DebugShapes are not affected by CullDistance. The full plot border is visible from anywhere, unlike the old particles which were only visible within ~10 blocks.
- No flickering: 500ms refresh interval with 2s display time. Shapes overlap smoothly.
- Minimal network traffic: Only 8 shapes per refresh cycle (4 edges + 4 pillars), down from 80+ particle spawns.
Implementation Details
- New fields:
showPlayers(ConcurrentHashMap keyset),showPlayerPlots(ConcurrentHashMap),showRenderTask(ScheduledFuture) - Render task runs on
HytaleServer.SCHEDULED_EXECUTORat 500ms interval - Player position read via
PlayerRef.getTransform()(no world thread needed) - No
ClearDebugShapesin render loop to avoid clearing shapes from other plugins (e.g. GlymeraChunkGrid). Shapes auto-expire afterDISPLAY_TIME(2s).ClearDebugShapesonly sent on toggle-off and shutdown. - 4x4 column-major transformation matrix per shape: translation = center position, scale = dimensions (sideLen x LINE_THICKNESS x LINE_THICKNESS for edges, LINE_THICKNESS x PILLAR_HEIGHT x LINE_THICKNESS for pillars)
- Plot boundary calculated as: minX = centerX - radius, maxX = centerX + radius + 1 (block at centerX+radius is still inside the plot, border is at its outer edge)
Removed
SpawnParticleSystem/Candle_Fireparticle renderingPositionimport (no longer needed)activeShowTasksmap (replaced byshowPlayers+showPlayerPlots)- 30-second auto-cancel timer
- 4-second particle respawn task
v4.0.0 (2026-04-06)
New Features
- Per-Plot Weather Control: Plot owners can set custom weather on their plots via
/gp weather <type>. 21 short aliases (sunny, rain, storm, snow, thunder, etc.) plus all 87 native Hytale weather types supported. Weather applies to ALL players entering the plot and automatically resets to natural weather when leaving. - World Whitelist: New
allowedWorldsconfig option. Empty list = all worlds allowed (default). Add world names to restrict where players can claim plots. - Config Guide Texts: Config file now includes
_guide_*fields explaining each setting directly in the JSON.
Weather Implementation
- Uses PacketAdapters (outbound PacketFilter) to intercept native
UpdateWeatherpackets - no fighting with the native WeatherSystem - Position scanner (1s interval) detects plot entry/exit
- Thread-bypass pattern (same as GlymeraHUD) ensures own packets pass through the filter
- Weather names stored persistently in plots.json, indices resolved lazily after server startup (fixes asset map not-ready-at-boot issue)
Bug Fixes
- Config not overwritten on shutdown: Removed
saveConfig()fromshutdown()to prevent manual config edits (e.g. whitelist changes) from being overwritten by in-memory values when the server stops. - Weather survives restarts: Weather indices are now resolved lazily via
ensureWeatherIndex()instead of duringloadPlots(), fixing the issue whereWeather.getAssetMap()was not yet initialized at plugin setup time.
Commands Added
/gp weather <type>- Set plot weather (owner only)/gp weather clear(also: reset, off, none) - Remove weather override/gp weather list- Show available weather types with aliases
Config Changes
- Added:
allowedWorlds(List, default: empty) - Added:
_guide_*explanation fields for all settings
v3.0.0 (2026-03-17)
- Plot border visualization with
/gp show(candle fire particles, 30 seconds) - Test-protect mode via
/gp testprotect - Cross-world teleport via
/gpt <number>
v2.0.0 (2026-03-17)
- ECS-based protection (BreakBlock, PlaceBlock, DamageBlock, UseBlock, Damage)
- PvP, PvE and EvP protection on plots
- Trust system (
/gp trust,/gp untrust) - Plot info and list commands
v1.0.0 (2026-02-19)
- Initial release - Basic plot claiming and block protection