####disable-completely— Vanilla spears (1.21.11+)
- Block spear items: tier materials (
WOODEN_SPEAR,STONE_SPEAR,COPPER_SPEAR,IRON_SPEAR,GOLDEN_SPEAR,DIAMOND_SPEAR,NETHERITE_SPEAR) and theSPEARshorthand (all tiers).- Riptide interaction blocking extended to spears as well as tridents when the item is disabled in the region.
- Spear Lunge (packet STAB, including Lunge enchant use) is only reliably blocked when PacketEvents or ProtocolLib is installed; without either, Lunge may bypass Bukkit-only checks.
#### Packet-level blocking (optional plugins)
disable-completelyregisters PacketEvents listeners when the PacketEvents plugin is present (primary): cancels relevant serverbound packets including spear Lunge via digging action STAB, plus use/interact/placement paths as implemented.- ProtocolLib is supported as a fallback when PacketEvents is not used or hook registration fails.
#### Safe startup without PacketEvents / ProtocolLib
- Main plugin class avoids hard references to PacketEvents and ProtocolLib APIs; registration uses reflection so the jar loads cleanly when optional dependencies are absent (
provided/softdepend).- PacketEvents API entry uses
com.github.retrooper.packetevents.PacketEvents(correct package); avoids bogusio.github.retrooper...lookups that broke hook registration at runtime.ProtocolLibHelper(give-effects) registers its listener via reflection only so the helper class does not require ProtocolLib on the classpath at load time.
#### New flag:chambered-enderpearl(experimental)
- Experimental. State flag to mitigate chambered ender pearl style bypasses: tracks pearls thrown outside flagged regions and removes them when the shooter enters a region where the flag denies the behavior (handler + session integration; configurable viaconfig-wgefp.ymlflag toggle like other flags). Behavior and defaults may change in future releases.
### Disable Collision Flag - Major Refactor
#### Implementation Changes
- If a player is the only member of their team, the plugin temporarily modifies that team's collision rule
- Minecraft teams: Now uses Minecraft's native scoreboard team system (the only reliable method for entity-to-entity collision)
- Hybrid team-based approach:
- If a player is in a team with multiple members, creates a per-player team (WGC_<hash>) to avoid affecting others
- If a player has no team, adds them to a per-player team with collision disabled
#### TAB Plugin Integration
- Full API integration: Added TAB plugin support with API integration
- Priority handling: TAB integration takes priority over direct team manipulation when TAB is installed
- Conflict prevention: Uses TAB's API to set collision rules, preventing TAB from overwriting collision settings
- Automatic fallback: If TAB is not available, automatically falls back to direct team manipulation
#### Without TAB (Normal Usage)
- Direct team manipulation: Uses Bukkit's Scoreboard API to directly modify team collision rules
- Team restoration: Properly restores original team collision rules when players leave regions
- Per-player teams: Creates temporary per-player teams when needed to avoid conflicts with shared teams
- Cleanup on disable: Properly cleans up all teams and restores original settings when plugin disables
#### Warnings and Compatibility
- Load-time warning: Displays a warning on plugin load about potential conflicts with team-using plugins
- Known plugin detection: Warns about potential conflicts with couple known plugin names
- TAB support indication: Shows supported plugins
#### Documentation Updates
- Updated documentation: Comprehensive documentation file updated with TAB integration details
- Troubleshooting guide: Added troubleshooting information for team conflicts
### Fixed
- Fixed
command-on-entryandcommand-on-exitflags causing thread check errors on Folia servers by using entity scheduler instead of global scheduler for player command dispatch- Fixed
disable-collisionflag causing player disconnections on Paper servers by properly handlingIllegalStateExceptionwhen removing players from teams- Fixed
disable-collisionflag on Folia servers - feature is now automatically disabled if team creation is not supported (prevents errors and warnings)
### Added
- Added support for
%player%and{player}placeholders incommand-on-entry,command-on-exit,console-command-on-entry, andconsole-command-on-exitflags (in addition to existing%username%and{username}placeholders)- Added EssentialsX godmode integration - the
godmodeflag now also disables EssentialsX godmode when entering regions with godmode disabled (EssentialsX is now a soft dependency)
### Changed
- Migrated configuration management to ConfigLib library for improved maintainability, automatic comment preservation, and better error handling
- Updated API version to 1.21 - plugin now officially supports Paper 1.21.10+, Spigot 1.21.x, and Folia 1.21.x
New Features
- Added inventory-craft flag - Block inventory crafting (2x2 grid) in regions
- Added Discord support link - Join our community: https://discord.gg/TCJAwsdqum
Breaking Changes
- Removed permit-completely flag - Use disable-completely instead (automatic migration included)
- Changed permit-workbenches CRAFT behavior - Now only blocks crafting table (3x3), not inventory crafting. Use deny-inventory-craft for inventory blocking.
Improvements
- Automatic message migration: permit-completely-blocked → disable-completely-blocked
- Automatic message key addition for new flags
- File-based region migration runs automatically on plugin load
Documentation
Note: Existing permit-completely flags in region files will be automatically migrated to disable-completely on plugin load.
- Updated all documentation with new flags
- Added Discord community link
- Updated version compatibility tables
# WorldGuard ExtraFlags Plus v4.3.7
###New Flag:
permit-workbenches
Block workbench usage and crafting in regions! Supports: ALL, clear, anvil, cartography, craft, ender, grindstone, loom, smithing, stonecutter.
Usage:
Code:/rg flag spawn permit-workbenches ALL /rg flag spawn permit-workbenches ALL,ender /rg flag spawn permit-workbenches craft,anvil /rg flag spawn permit-workbenches clear
Features:
- Blocks right-click on workbenches
- Blocks crafting table GUI and 2x2 inventory crafting
- Optional block placement blocking via config
- New config file:
plugins/WorldGuard/config-wgefp.yml- New message:
permit-workbenches-blockedwith{workbench}placeholder
###New Flags:
deny-item-drops&deny-item-pickup
Deny specific item drops and pickups in regions (works when WorldGuard's default flags are set to allow).
Usage:
Code:/rg flag spawn deny-item-drops diamond,emerald /rg flag spawn deny-item-pickup apple,bread
Features:
- Denies specific items from being dropped even if WorldGuard allows drops
- Denies specific items from being picked up even if WorldGuard allows pickups
- Works alongside WorldGuard's
item-dropanditem-pickupflags
##Improvements
- Messages file renamed:
messages.yml→messages-wgefp.yml(avoids conflicts)- Fixed logic: explicit workbench types now take precedence over
ALLkeyword
##Stats
- Total Flags: 37 (was 34)
- Minecraft: 1.20 – 1.21.10
- WorldGuard: 7.0.13+
- Folia:
Fully supported
##Migration
- Rename
plugins/WorldGuard/messages.ymltomessages-wgefp.ymlif you have custom messages- New
config-wgefp.ymlwill be auto-created
Bug Fixes
Fixed Riptide Enchantment Blocking
Fixed: permit-completely flag now fully blocks Riptide enchantment on tridents
Prevents Riptide boost, spinning animation, and all movement effects
Blocks right-click interactions before Riptide can activate
Rotation locking prevents spinning animation if event somehow fires
No longer requires enchantment removal (safer approach)
New Features
Block Placement & Breaking Control
Added 4 new flags for fine-grained block control:
allow-block-place - Whitelist specific blocks that can be placed
deny-block-place - Blacklist specific blocks from being placed
allow-block-break - Whitelist specific blocks that can be broken
deny-block-break - Blacklist specific blocks from being broken
Usage Examples:
/rg flag spawn allow-block-place STONE,COBBLESTONE,GRASS_BLOCK
/rg flag spawn deny-block-place TNT,LAVA_BUCKET
/rg flag spawn allow-block-break STONE,COBBLESTONE
/rg flag spawn deny-block-break BEDROCK,SPAWNER
