COWMODSКаталог модов

WorldEditDisplay

A server-side plugin for Minecraft that adds visual selection rendering for WorldEdit.

Автор: TWME2,9 тыс.25обновлён 27 окт. 2026 г.
Утилиты

Описание

WorldEditDisplay

Minecraft Version Java Version License

A server-side WorldEdit selection visualization plugin


About

WorldEditDisplay is a server-side plugin for Minecraft that adds visual selection rendering for WorldEdit. It intercepts WorldEdit's CUI (Client User Interface) protocol packets and renders selections using Display Entities on the server side. This means players can see their WorldEdit selections without installing any client-side mods.

Features

Selection Types

  • Cuboid - Box selections with edge lines and grid display
  • Polygon - 2D polygon boundaries with vertical columns
  • Ellipsoid - Smooth elliptical selections
  • Cylinder - Circular selections with adjustable height
  • Polyhedron - Complex 3D polyhedral structures

Visual Rendering

  • Uses Minecraft's Display Entity (TextDisplay) system
  • Customizable hex colors (#RRGGBBAA) for all visual elements
  • Adjustable line thickness and grid density
  • Translucent face filling for Cuboid, Polygon, and Polyhedron regions
  • Grid overlay for easier size calculation

Multi-language Support

The interface is available in multiple languages with automatic client language detection:

  • Traditional Chinese (zh_tw)
  • English (en_us)

Player Settings

Players can customize their own rendering preferences:

  • Choose preferred hex colors for elements
  • Enable or disable face filling
  • Adjust line thickness within server limits
  • Control grid spacing and density
  • Changes apply immediately

Selection Sharing

  • Share your WorldEdit selection with other players in real-time
  • Invite, accept, revoke, and unwatch shares via /wedisplay share
  • Each shared selection is displayed in a unique auto-generated color
  • Share relationships persist across server restarts

View All Mode (op-only by default)

  • Toggle monitoring of all online players' selections via /wedisplay view
  • Hide specific players from your view, toggle name labels, and list monitored players

Configuration System

  • Server-wide defaults in config.yml
  • Per-player overrides in player_config/*.yml
  • Hot reload without server restart

Requirements

  • Minecraft 1.20 ~ 1.21.x (Paper / Folia / Spigot)
  • Java 21 or higher
  • Required plugins:

Installation

  1. Make sure WorldEdit and PacketEvents are installed on your server
  2. Download WorldEditDisplay.jar
  3. Place it in your server's plugins folder
  4. Restart the server
  5. Edit plugins/WorldEditDisplay/config.yml if needed
  6. Use /wedisplayreload to reload the configuration

Commands

Admin Commands

/wedisplayreload - Reload plugin configuration

  • Permission: worldeditdisplay.reload (default: op)

Player Commands

/wedisplay set <renderer> <setting> <value> - Configure personal rendering settings

  • Example: /wedisplay set cuboid edge_color #FFD700FF
  • Permission: worldeditdisplay.use.settings

/wedisplay reset <renderer> [setting] - Reset to server defaults

  • Example: /wedisplay reset cuboid (reset all settings)
  • Example: /wedisplay reset cuboid edge_color (reset specific setting)

/wedisplay show [renderer] - Show current settings

  • Example: /wedisplay show (show all)
  • Example: /wedisplay show cuboid (show specific renderer)

/wedisplay toggle - Toggle rendering on/off

  • Quick command to enable or disable selection visualization
  • Works independently for each player

/wedisplay reloadplayer - Reload your personal configuration file

/wedisplay lang <language> - Set interface language

  • Example: /wedisplay lang en_us
  • Supported: zh_tw, en_us

/wedisplay share invite <player> - Invite a player to view your selection

  • Permission: worldeditdisplay.use.share.invite

/wedisplay share accept <player> - Accept a pending share invitation

  • Permission: worldeditdisplay.use.share.accept

/wedisplay share revoke <player> - Revoke a share you previously granted

  • Permission: worldeditdisplay.use.share.revoke

/wedisplay share unwatch <player> - Stop watching another player's selection

  • Permission: worldeditdisplay.use.share.unwatch

/wedisplay share list [page] - List current share relationships

  • Permission: worldeditdisplay.use.share.list

View All Sub-commands (op-only by default)

/wedisplay view - Toggle view-all mode (see all online players' selections)

  • Permission: worldeditdisplay.use.view

/wedisplay view hide <player> - Exclude a player from your view-all mode

  • Permission: worldeditdisplay.use.view.hide

/wedisplay view hideall - Exclude all online players from view-all mode

  • Permission: worldeditdisplay.use.view.hide

/wedisplay view unhide <player> - Remove exclusion for a player

  • Permission: worldeditdisplay.use.view.hide

/wedisplay view label - Toggle name label display for watched selections

  • Permission: worldeditdisplay.use.view.label

/wedisplay view list [page] - Show view-all monitoring status

  • Permission: worldeditdisplay.use.view.list

Configuration

The main configuration file is config.yml:

language:
  default: "en-us"              # Default language
  auto_detect: true             # Auto-detect player's client language
  allow_player_change: true     # Allow players to change language manually

renderer:
  cuboid:
    edge_color: "#FFD700FF"     # Color for edges in #RRGGBBAA
    edge_thickness: 0.05        # Line thickness
    grid_spacing: 8             # Grid spacing
    fill_enabled: true          # Enable face filling
    fill_color: "#FF000040"     # Face fill color
    # ... more settings

player_limits:
  thickness:
    min: 0.01                   # Minimum thickness
    max: 0.5                    # Maximum thickness players can set
  # ... more limits

Each renderer type has its own configuration section:

  • cuboid image
  • polygon image
  • ellipsoid image
  • cylinder image
  • polyhedron image

How It Works

Core Components

  • Packet listener intercepts WorldEdit CUI protocol messages
  • Render engine creates Display Entities to visualize selections
  • Configuration manager handles server-wide and per-player settings
  • Language manager provides multi-language support

Rendering Technology

The plugin uses Minecraft's Display Entity system:

  • Display entities render the visual elements
  • More efficient than particle effects
  • Works with vanilla clients (no mods required)

Performance

  • Only updates when selections change
  • Server admins can limit grid density and segment counts
  • Each player's settings are independent

Permissions

worldeditdisplay.use:                    # Use visualization features (default: true)
worldeditdisplay.use.settings:           # Manage personal rendering settings (default: true)
worldeditdisplay.use.share:              # General share feature toggle (default: true)
worldeditdisplay.use.share.invite:       # Send share invitations (default: true)
worldeditdisplay.use.share.accept:       # Accept share invitations (default: true)
worldeditdisplay.use.share.revoke:       # Revoke granted shares (default: true)
worldeditdisplay.use.share.unwatch:      # Stop watching a shared selection (default: true)
worldeditdisplay.use.share.list:         # List share relationships (default: true)
worldeditdisplay.use.view:               # Toggle view-all mode (default: op)
worldeditdisplay.use.view.defaultenable: # Auto-enable view-all on join (default: op)
worldeditdisplay.use.view.hide:          # Hide players from view-all (default: op)
worldeditdisplay.use.view.list:          # List view-all monitoring status (default: true)
worldeditdisplay.use.view.label:         # Toggle name label display (default: true)
worldeditdisplay.use.view.label.defaultenable: # Auto-enable labels on join (default: true)
worldeditdisplay.reload:                 # Reload configuration (default: op)
worldeditdisplay.render.auto-enable:     # Automatically enable rendering on join (default: true)

About Auto-Enable Permission

The worldeditdisplay.render.auto-enable permission controls whether rendering is automatically enabled when a player joins the server:

  • With permission: Rendering is enabled by default when logging in
  • Without permission: Players must manually use /wedisplay toggle to enable rendering

This allows server admins to control which player groups have rendering enabled by default.

Usage

Basic Usage

  1. Use WorldEdit's //wand command to get the selection tool
  2. Left/right click blocks to define your selection
  3. The selection is automatically visualized (no extra steps needed)
  4. Use /wedisplay commands to customize the appearance

Customization Examples

# Change cuboid edges to solid diamond blue
/wedisplay set cuboid edge_color #55FF55FF

# Make lines thicker
/wedisplay set cuboid edge_thickness 0.08

# Change grid spacing
/wedisplay set cuboid height_grid_division 2

# Enable face filling with half-transparent red
/wedisplay set cuboid fill_enabled true
/wedisplay set cuboid fill_color #FF000080

# Toggle rendering on/off
/wedisplay toggle

# Reset all settings
/wedisplay reset cuboid

Building

To build the plugin from source:

mvn clean package

The compiled jar will be in target/WorldEditDisplay-version-platform.jar

Project Structure

src/main/java/dev/twme/worldeditdisplay/
├── event/          # CUI event system
├── display/        # Render engine
│   └── renderer/   # Renderer implementations
├── config/         # Configuration management
├── lang/           # Language system
├── command/        # Command handlers
├── listener/       # Packet listeners
└── player/         # Player data management

Contributing

Issues and pull requests are welcome.

License

See LICENSE file for details.

Credits

  • TWME-TW - Developer

Related Projects


Made with ❤️ by TWME-TW

Галерея

cylcuboidellipsoidconvex

Последние версии

Все версии →
release

WorldEditDisplay 2.8.1

2.8.1
27 окт. 2026 г.12Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3folia, paper, purpur
Скачать
Что нового
## What's Changed * Fix CUI detection with WorldEdit mod and multi regions after changing world by @twme-ai in https://github.com/TWME-TW/WorldEditDisplay/pull/78 * Release WorldEditDisplay 2.8.1 by @twme-ai in https://github.com/TWME-TW/WorldEditDisplay/pull/79 **Full Changelog**: https://github.com/TWME-TW/WorldEditDisplay/compare/v2.8.0...v2.8.1
release

WorldEditDisplay 2.6.0

2.6.0
30 сент. 2026 г.524Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3folia, paper, purpur
Скачать
Что нового
## What's Changed * Allow manual WED toggle to override CUI detection by @twme-ai in https://github.com/TWME-TW/WorldEditDisplay/pull/66 * Fix stale shared renders after deselect by @twme-ai in https://github.com/TWME-TW/WorldEditDisplay/pull/67 * feat: support Minecraft 26.3 and fix selection geometry by @twme-ai in https://github.com/TWME-TW/WorldEditDisplay/pull/68 * Separate fill see-through from line see-through by @twme-ai in https://github.com/TWME-TW/WorldEditDisplay/pull/69 * Prepare WorldEditDisplay 2.6.0 release by @twme-ai in https://github.com/TWME-TW/WorldEditDisplay/pull/70 **Full Changelog**: https://github.com/TWME-TW/WorldEditDisplay/compare/2.5.1...v2.6.0
release

WorldEditDisplay 2.5.1

2.5.1
24 авг. 2026 г.333Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2folia, paper, purpur
Скачать
Что нового
## Summary WorldEditDisplay 2.5.1 is a patch release that restores reliable WorldEditCUI client detection and handoff while making player display settings and renderer refresh commands apply consistently. Players without WorldEditCUI continue to use the built-in server renderer. Players with the client mod are now detected from the official version handshake and receive native CUI packets without duplicate server-side selection displays. ## WorldEditCUI Compatibility - Detects the official direct `worldedit:cui` version handshake (`v|4` and future protocol versions) - Retains compatibility with legacy `minecraft:register` channel announcements - Parses REGISTER payloads as exact NUL-separated channel names instead of substring matches - Restores native WorldEditCUI priority even when server rendering is auto-enabled - Keeps Bedrock/Floodgate clients on the server renderer ## Renderer Handoff & Reliability - Cancels pending server render work when a native CUI client is detected - Clears selection display entities that were created before the client handshake arrived - Prevents toggle, settings reload, and renderer refresh operations from recreating duplicate server displays for native CUI users - Keeps CUI and Bedrock routing state visible across packet and scheduler threads ## Player Settings & Command Fixes - Makes whole-renderer resets clear cached player overrides correctly - Makes `/wedisplay reloadplayer` discard pending in-memory edits before reloading saved settings - Exposes and persists the missing `max_grid_spacing` and `sqrt_scale_factor` player settings - Supports `-1` as unlimited maximum grid spacing - Refreshes active selections immediately after enabling rendering or reloading server configuration - Rejects unknown `/wedisplay view` subcommands instead of unexpectedly toggling view-all mode - Loads the bundled Simplified Chinese (`zh_cn`) language resources - Corrects the grid-division command example to use a value within the default player limits ## Testing & Build Updates - Added unit coverage for direct CUI handshakes, legacy REGISTER lists, exact channel matching, native-client routing, and Bedrock fallback - Extended the Paper/Mineflayer end-to-end test with normal and CUI-capable clients - Verifies that silent server handshake injection does not falsely detect normal clients - Verifies native client detection, existing entity cleanup, outbound CUI forwarding, and renderer refresh suppression - All 47 unit tests pass, and the Paper 1.21.11 end-to-end workflow passes with PacketEvents 2.13.0 ## System Requirements | Component | Requirement | |-----------|-------------| | Minecraft / Platform | Paper / Folia / Spigot (Spigot Version) 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.5.0 - Existing player settings and accepted share relationships remain compatible - Native WorldEditCUI users no longer need to disable the server renderer manually - 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 for the built-in renderer ## Download The Paper-compatible plugin JAR is attached to this release. The same artifact supports Paper and Folia; use the Spigot build profile when producing a dedicated Spigot artifact from source. ## Support For issues, feature requests, or questions, please open an issue on the [GitHub repository](https://github.com/TWME-TW/WorldEditDisplay/issues). Full Changelog: [2.5.0...2.5.1](https://github.com/TWME-TW/WorldEditDisplay/compare/2.5.0...2.5.1)
release

WorldEditDisplay 2.5.0

2.5.0
16 авг. 2026 г.114Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2folia, paper, purpur
Скачать
Что нового
## 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 `VirtualEntityManager` and 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](https://github.com/TWME-TW/WorldEditDisplay/actions), and the plugin is available on [Modrinth](https://modrinth.com/plugin/worldeditdisplay). ## Support For issues, feature requests, or questions, please open an issue on the [GitHub repository](https://github.com/TWME-TW/WorldEditDisplay/issues). Full Changelog: [2.4.0...2.5.0](https://github.com/TWME-TW/WorldEditDisplay/compare/2.4.0...2.5.0)
release

WorldEditDisplay 2.4.0

2.4.0
10 авг. 2026 г.85Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2folia, paper, purpur
Скачать
Что нового
## Summary WorldEditDisplay 2.4.0 introduces **retained line rendering** for all supported selection shapes, reducing display-entity churn by reusing unchanged line entities between render passes. This release also strengthens shared-selection cleanup and visibility rules, improves CUI and renderer state handling, refines command permissions and settings validation, and adds a fully discovered JUnit 5 test suite. ## New Features ### Retained Line Rendering - Reuses unchanged line shapes across render passes instead of removing and respawning every display entity - Supports Cuboid, Cylinder, Ellipsoid, Polygon, and Polyhedron selections - Keys retained lines by geometry and visual style so changed lines are replaced and stale lines are removed correctly - Keeps fill faces and other transient shapes outside the retained pool so they continue to refresh cleanly - Rebases display origins when viewers move far enough, with failures isolated per renderer ### Expanded Renderer Diagnostics - Debug output now reports retained, reused, spawned, and removed line statistics - Added retained-line and total entity counts to make renderer behavior easier to inspect - Added localized rebase diagnostics in English, Simplified Chinese, and Traditional Chinese ## Improvements ### Shared Selection Reliability - Accepted share relationships now remain persisted across player reconnects - Shared colors are deterministic and cached only while live renderers or labels still reference them - TextDisplay and particle shared renderers now follow the same active-share, view-all, distance, world, visibility, and renderer-enabled rules - Stale shared renders and labels are removed when a player is hidden, out of range, offline, in another world, or no longer has a valid selection - Sharer-triggered push updates now obey the same visibility and distance checks as normal viewer updates - Cleanup now releases text renderers, particle renderers, labels, colors, and component caches in the correct order ### Renderer and CUI State - Centralized the decision for when the server renderer should consume WorldEdit CUI packets - Preserved client-side CUI forwarding when server rendering is disabled while continuing to support Bedrock players and particle fallback mode - Added defensive CUI packet parsing and rate-limited error reporting - Implemented CUI update events so changed selections are marked dirty and retained renderers refresh correctly - Renderer state now refreshes consistently after player settings and render-mode changes ### Commands, Permissions, and Persistence - Refined permission routing for render, share, view, hide, list, and label operations - Users with only the view-hide permission can now access the relevant view command route - Renderer setting names and boolean values are validated before changes are applied - Failed player-setting saves remain queued for retry instead of silently discarding unsaved changes - Improved reload handling and logging for player settings, language files, and configuration state ## Bug Fixes - Fixed shared color and component cache leaks when the final reference was a label - Fixed label-only references surviving viewer or sharer cleanup - Fixed view-all selections remaining rendered after leaving the configured loading distance - Prevented cross-world TextDisplay shares - Prevented push updates from recreating shared renders for viewers who disabled server rendering - Avoided removing per-viewer state maps while an update pass was still using them ## Technical & Dependency Updates - Updated EntityLib to `3.3.4+b54a52a-SNAPSHOT` - Added Maven Surefire 3.5.4 so the JUnit 5 suite runs during the standard Maven lifecycle - Added 30 tests covering CUI parsing and forwarding, CUI updates, settings persistence, permission routing, share persistence, color parsing, and shared-cache cleanup - Verified both Paper and Spigot build profiles successfully produce shaded 2.4.0 JARs ## System Requirements | Component | Requirement | |-----------|-------------| | Minecraft | 1.20 ~ 1.21.x | | Java | 21+ | | Platform | Paper / Folia / Spigot | | PacketEvents | 2.11.1+ | | WorldEdit | Latest stable / FAWE | | ViaVersion | Optional (used for particle fallback auto-detection) | | Floodgate | Optional (used for Bedrock player detection) | ## Configuration Notes - No breaking configuration changes from 2.3.1. - Existing player settings and accepted share relationships remain compatible. - Run `/wedisplayreload` after upgrading to reload configuration and language state. ## Download Build artifacts are available from [GitHub Actions](https://github.com/TWME-TW/WorldEditDisplay/actions). The plugin project is also available on [Modrinth](https://modrinth.com/plugin/worldeditdisplay). ## Support For issues, feature requests, or questions, please open an issue on the [GitHub repository](https://github.com/TWME-TW/WorldEditDisplay/issues). Full Changelog: [2.3.1...2.4.0](https://github.com/TWME-TW/WorldEditDisplay/compare/2.3.1...2.4.0)
release

WorldEditDisplay 2.3.1 26.2 support

2.3.1
22 июн. 2026 г.480Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2folia, paper, purpur
Скачать
Что нового
## What's Changed * Enhance player quit handling and improve thread safety by @TWME-TW in https://github.com/TWME-TW/WorldEditDisplay/pull/48 * chore(deps): bump com.github.retrooper:packetevents-spigot from 2.12.1 to 2.12.2 by @dependabot[bot] in https://github.com/TWME-TW/WorldEditDisplay/pull/50 **Full Changelog**: https://github.com/TWME-TW/WorldEditDisplay/compare/2.3.0...2.3.1
release

WorldEditDisplay 2.3.0

2.3.0
31 мая 2026 г.272Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2folia, paper, purpur
Скачать
Что нового
# WorldEditDisplay 2.3.0 - Particle Fallback Renderer, Floodgate Support & Cross-Version Compatibility ## Summary This release introduces a **Particle Fallback Renderer** that allows clients below Minecraft 1.19.4 (which lack TextDisplay entity support) to visualize WorldEdit selections via particle effects, **Floodgate integration** to detect Bedrock players and suppress incompatible CUI messages, **bStats metrics** collection with display method distribution tracking, automatic re-rendering on world change, and several compatibility fixes. ## New Features ### Particle Fallback Renderer - Added a full particle-based rendering system for clients without TextDisplay support (Minecraft < 1.19.4) - ViaVersion API integration to automatically detect client protocol version and select the appropriate renderer - Dedicated particle renderers for all region types: `ParticleCuboidRenderer`, `ParticleCylinderRenderer`, `ParticleEllipsoidRenderer`, `ParticlePolygonRenderer`, `ParticlePolyhedronRenderer` - Point cache optimization: region geometry is only re-computed when the selection changes; repeated ticks only send pre-computed particle packets - Players can manually switch between render modes via `/wedisplay render [auto|text|particle|toggle]` - Permission node: `worldeditdisplay.use.render` to allow switching render modes ### Floodgate Support - Added Floodgate integration to detect Bedrock players on Geyser servers - CUI messages are automatically suppressed for Bedrock clients to prevent client-side issues - Soft-dependency on Floodgate (optional; no impact if Floodgate is not installed) ### bStats Integration - Added bStats metrics for anonymous usage statistics - Display method distribution chart to track TextDisplay vs Particle fallback usage across online players - Helps guide future development priorities ### World Change Handling - Added `PlayerChangedWorldListener` to automatically clear stale renders and re-render selections when a player changes worlds - Eliminates ghost renders left behind in the previous world ## Improvements - **Auto-merge new config keys on startup/reload**: When upgrading from a previous version, any new configuration options added to `config.yml` in the plugin JAR are now automatically merged into the existing config file on disk. Existing user values are never overwritten — only genuinely missing keys are added. This eliminates the need to manually edit config.yml after updates. (`/wedisplayreload` also performs this merge.) - Updated plugin documentation with new image links - Improved `.gitignore` to exclude IDE configuration files - Enhanced share label position calculation accuracy (see bug fixes) - Optimized Spigot adventure shading configuration with clearer documentation ## Bug Fixes - fix(render): Corrected shared label position calculation logic for proper visual alignment - fix(spigot): Downgraded adventure dependencies to 4.17.0 for PacketEvents compatibility on Spigot ## Technical & Dependency Updates - Updated `adventure-api` from 4.17.0 to 5.1.1 - Updated `adventure-key` from 4.17.0 to 5.1.1 - Updated `adventure-text-minimessage` to latest - Updated `adventure-text-serializer-legacy` to latest - Updated `adventure-text-serializer-bungeecord` to latest - Added `viaversion-api` dependency for protocol version detection - Added `floodgate-api` dependency for Bedrock player detection - Added `bstats-base` dependency for metrics collection - Added OpenCollab and ViaVersion repository sources ## System Requirements | | | |----------------|--------------------------------------------------------| | Minecraft | 1.20 ~ 1.21.x | | Java | 21+ | | Platform | Paper / Folia / Spigot | | PacketEvents | 2.11.1+ | | WorldEdit | Latest stable / FAWE | | ViaVersion | Optional (required for particle fallback auto-detection) | | Floodgate | Optional (required for Bedrock player detection) | ## Configuration Notes - No breaking configuration changes from 2.2.x. - New config keys (such as `particle_fallback.*`) are **automatically merged** into your existing `config.yml` on first startup after upgrading — no manual edits required. - New permission `worldeditdisplay.use.render` is available to control access to `/wedisplay render`. - Run `/wedisplayreload` after upgrading to ensure all new settings are applied. ## Support For issues, feature requests, or questions, please open an issue on our [GitHub repository](https://github.com/TWME-TW/WorldEditDisplay/issues). Full Changelog: [2.2.0...2.3.0](https://github.com/TWME-TW/WorldEditDisplay/compare/2.2.0...2.3.0)
release

WorldEditDisplay 2.2.0

2.2.0
16 мая 2026 г.214Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2folia, paper, purpur
Скачать
Что нового
# WorldEditDisplay 2.2.0 Selection Sharing, Multi-Platform Support & Performance Improvements ## Summary Major release introducing a **Selection Sharing System** that lets players share their WorldEdit selections with others in real-time, expanded **multi-platform support** (Paper, Folia, Spigot), a new **RegionRenderer abstract base class** for a more extensible rendering architecture, and numerous performance improvements with render caching and async operations. --- ## New Features ### Selection Sharing System - Added `/wedisplay share` command to invite other players to view your selection - Selections shared in real-time with persistent storage across sessions - Each shared selection is assigned a unique color generated automatically - Unused shared colors are released when sharing ends to optimize resources - Permission-based access control: `worldeditdisplay.share` required to use share commands - Share manager configuration is reloadable via `/wedisplayreload` ### RegionRenderer Abstract Base Class - Introduced `RegionRenderer` abstract base class for a unified and extensible rendering architecture - Simplifies adding new region types and customizing render behavior ### Multi-Platform Support - Added official support for **Folia** (region-threaded scheduling) - Added official support for **Spigot** (in addition to Paper) - Task scheduling is now platform-aware and routes to the correct scheduler automatically ### Region Bounding Box & Distance Utilities - Added bounding box calculation methods to region objects - Added distance calculation methods between regions and players for range-based optimizations --- ## Improvements ### Rendering Performance - Introduced renderer-level caching to reduce redundant computation - Name cache logic for shared renders is now correctly invalidated to avoid stale reads - Clearing a sharer's render now properly releases associated resources - Render brightness and label position adjustments for improved visual quality ### Async Settings I/O - Player settings are now saved asynchronously to prevent main-thread blocking - Config saves are deferred to a scheduled task to avoid repeated disk writes during rapid state changes ### Thread Safety - Share request timeout is now stored in a thread-safe mutable field - Player multi-region map is now returned as an unmodifiable view to protect data integrity --- ## Bug Fixes - **fix(render):** Corrected shared render name-cache invalidation logic to prevent unnecessary re-reads - **fix(player):** Returned unmodifiable multi-region map to protect internal data from external mutation - **fix(share):** Made share request timeout mutable for proper thread-safe handling - **fix(render):** Adjusted brightness calculation and label position for better display results --- ## Technical & CI Updates - Updated GitHub Actions workflow file versions for improved stability - Added `adventure-api` exclusion filter to the Spigot Maven profile to prevent class conflicts - Removed `SHARE-DESIGN.md` design document (merged into implementation) --- ## System Requirements | Component | Requirement | |---------------|------------------------------| | Minecraft | 1.20 ~ 1.21.x | | Java | 21+ | | Platform | Paper / Folia / Spigot | | PacketEvents | 2.11.1+ | | WorldEdit | Latest stable / FAWE | --- ## Configuration Notes - No breaking configuration changes from 2.1.x. - A new `share` section will be generated in `config.yml` on first launch. - Run `/wedisplayreload` after upgrading to apply any new defaults. --- ## Download Available on [GitHub Actions](https://github.com/TWME-TW/WorldEditDisplay/actions) and [Modrinth](https://modrinth.com/plugin/worldeditdisplay). ## Support For issues, feature requests, or questions, please open an issue on our [GitHub repository](https://github.com/TWME-TW/WorldEditDisplay/issues). Full Changelog: [2.1.2...2.2.0](https://github.com/TWME-TW/WorldEditDisplay/compare/2.1.2...2.2.0)
beta

WorldEditDisplay 2.1.3-SNAPSHOT

2.1.3-SNAPSHOT
14 мая 2026 г.29Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2folia
Скачать
release

WorldEditDisplay 2.1.2

2.1.2
21 апр. 2026 г.306Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2paper, purpur
Скачать
Что нового
# WorldEditDisplay v2.1.2 Release Notes ## Summary Patch release fixing polygon regions not rendering when the selection has a flat vertical range (minY equals maxY). ## Changelog - **fix(region): Polygon region not displayed when `minY == maxY`** - Fixed a bug where `PolygonRegion.isDefined()` used a strict `maxY > minY` check, which prevented rendering whenever the polygon's vertical range was flat (e.g. a single-block-height selection or when the first `mm` event arrives with equal min/max values). - Changed the condition to `maxY >= minY` so polygon regions are rendered correctly in all cases. ## Notes - No public API changes. - Fully backward-compatible. No configuration changes required. **Full Changelog**: https://github.com/TWME-TW/WorldEditDisplay/compare/2.1.1...2.1.2