
WorldEditDisplay - визуализация выделения WorldEdit на сервере
Серверный плагин WorldEditDisplay для Minecraft 1.20-1.21 добавляет наглядное отображение выделений WorldEdit с помощью Display Entities. Игроки видят свои регионы без установки клиентских модов. Настройка цвета, толщины линий, заливки, шеринг выделений и просмотр за игроками - всё прямо на сервере.
Список изменений
Summary
WorldEditDisplay 2.5.0 modernizes the packet-based rendering backend by migrating selection shapes and shared-player labels from EntityLib to VirtualEntities 0.9.0, powered by TextDisplayShapes 3.0.0.
This release preserves the retained-line renderer introduced in 2.4.0 while improving lifecycle management, compatibility across legacy and current server versions, renderer safety, and automated compatibility testing.
Rendering Backend
- Migrated packet-only selection shapes from EntityLib to VirtualEntities
- Migrated shared-player TextDisplay labels to the same VirtualEntities backend
- Uses one shared
VirtualEntityManagerand canonical viewer connections for shapes and labels - Preserves retained rendering for Cuboid, Cylinder, Ellipsoid, Polygon, and Polyhedron selections
- Removes the bundled EntityLib implementation from the final plugin artifacts
Compatibility Improvements
- Lowered the plugin bytecode requirement from Java 21 to Java 17
- Changed the Bukkit API declaration to
api-version: 1.19 - Restored Paper, Folia, and Spigot compatibility beginning at Minecraft 1.19.4
- Updated the Paper build API to 1.21.11
- Updated PacketEvents to 2.13.0
The Minecraft server version may still require a newer Java version even though WorldEditDisplay itself targets Java 17.
Reliability Fixes
- Skips degenerate, non-finite, and excessively short line segments that cannot be rendered safely
- Prevents renderer rebasing from resolving or comparing unloaded worlds
- Ensures renderers and virtual entities are closed cleanly during plugin shutdown
- Deactivates and unregisters PacketEvents listeners before renderer cleanup
- Keeps shared selection shapes and player labels on the same client connection
Testing & Build Updates
- Added a Paper and Mineflayer end-to-end test workflow
- Tests real WorldEdit CUI packet handling, retained-line reuse, visible TextDisplay entities, selection sharing, and shared labels
- Compatibility testing covered 21 Paper versions and 24 Spigot versions from 1.19.4 through 26.2
- Folia end-to-end compatibility was verified on 1.19.4, 1.21.11, and 26.2
- Added regression coverage for Java 17, the legacy Paper plugin descriptor, invalid line geometry, and unloaded-world rebasing
- All 35 unit tests pass on both Paper and Spigot build profiles
System Requirements
| Component | Requirement |
|---|---|
| Minecraft / Platform | Paper / Folia 1.19.4 ~ 26.2 (where builds are available) |
| Java | 17+ |
| PacketEvents | 2.13.0+ |
| WorldEdit | Latest stable / FAWE |
| ViaVersion | Optional, used for particle fallback auto-detection |
| Floodgate | Optional, used for Bedrock player detection |
Upgrade Notes
- No breaking configuration changes from 2.4.0
- Existing player settings and accepted share relationships remain compatible
- Update PacketEvents to 2.13.0 or newer before upgrading
- A full server restart is recommended after replacing the plugin JAR
- No client-side mod is required
Download
Builds are available from GitHub Actions, and the plugin is available on Modrinth.
Support
For issues, feature requests, or questions, please open an issue on the GitHub repository.
Full Changelog: 2.4.0...2.5.0
