WG-GUI - Better WorldGuard experience [1.20-26.2]
1.10.2Work faster with WorldGuard by user-friendly GUI.
1.10.2latest[1.10.2] Further minor fixesAug 26, 2026 · Fixed incorrect applying region templates when working with flags taking string as value and flags taking world location as value. · Added support for 2D polygonal selections when creating new region or editing existing region boundaries.1.10.1[1.10.1] Hotfix - permission check for /wggui commandJul 22, 2026 Fixed wrong permission check for /wggui command.1.10[1.10] Minor improvementsMay 15, 2026 · It is now possible to use special keywords („q”, „edit”, „create”) as input values. Before, you couldn’t e.g. make a region with name „q” - from now you can type „\q” to pass „q” as region name. The same solution applies to all other scenarios where special keywords are used. · Added option to permanently hide global region („__global__”) from being shown in Select Region menu. This feature is controlled with „DisplayGlobalRegionInRegionsView” key in config.yml and has value of true by default. · Added option to hide unsafe options when editing global region (set parent, edit boundaries, rename and remove) – by default this feature is enabled and controlled with „HideUnsafeOptionsFromGlobalRegion” key in config.yml. · Added option to set item material used to display global region in regions selection menu. Tihs is controlled with „GlobalRegionItemMaterial” key in config.yml and has value of „DARK_OAK_SAPLING” by default. · „Create new region” and „Edit boundaries” options now allow to skip boundaries selection step and use player’s current WorldEdit selection. To do so, just make shift + left-click instead od left-click on items representing these options. · Minimum required Java version is now 21. · Minimum required Minecraft server version is now 1.20.6. Added lines to config.yml Code (YAML): # If true, "__global__" region will be shown in "Select region" menu and can be edited like normal region or selected in other contexts. If false, "__global__" region will be hidden. DisplayGlobalRegionInRegionsView : true # Material used for "__global__" region to differentiate it more from other regions in "Select region" menu. GlobalRegionItemMaterial : DARK_OAK_SAPLING # If true, when editing "__global__" region, options that don't make sense for it (e.g. setting parent region, editing boundaries) will be hidden. HideUnsafeOptionsFromGlobalRegion : true Added lines to lang,yml (modern) Code (YAML): INV_REGION_OPTIONS_BOUNDARIES_MORE : - "<gray><italic>(Use shift + left-click to edit region boundaries" - "<gray><italic>with current WorldEdit selection.)" INV_MAIN_CREATE_REGION_MORE : - "<gray><italic>(Use shift + left-click to create a region" - "<gray><italic>with current WorldEdit selection.)" (legacy) Code (YAML): INV_REGION_OPTIONS_BOUNDARIES_MORE : - "&7&o(Use shift + left-click to edit region boundaries" - "&7&owith current WorldEdit selection.)" INV_MAIN_CREATE_REGION_MORE : - "&7&o(Use shift + left-click to create a region" - "&7&owith current WorldEdit selection.)" Plugin will auto-update existing configs when needed.1.9Faster navigation, world restrictions and many minor improvementsMar 25, 2026 This release contains major changes to configuration files. I recommend making backup of your existing WG-GUI installation before performing update. This release is confirmed to work on Minecraft servers versions from 1.13 to 26.1. Post-region-creation actions After creation of region, player was automatically moved to template selection for that region – this is now controllable. Furthermore, if no templates are available, plugin will move players to„Region options” menu instead. This behavior is also controllable with following settings in config.yml: Code (Text): # If true, after creating region player will be moved to "Select template" menu of that region. AutoOpenRegionTemplateSelectAfterCreation: true # If true, after creating region player will be moved to "Region options" menu of that region. # This option has lower priority than 'AutoOpenRegionTemplateSelectAfterCreation' option and if both are enabled then this one has effect only when player doesn't have permission required to enter 'Select template' menu or no templates are available. AutoOpenRegionOptionsAfterCreation: true When both settings are disabled, plugin won’t perform any further action to player after region creation. Changes to region templates · Template description is now a list of strings instead of string, allowing better customization. · Added option to control access to templates with permissions (this feature was partially present before, but server admins didn’t have ability to disable permission checks so it was always enabled) config.yml file: Code (Text): # If true, player will need specific permission to see region templates in "Select template" menu and use them when creating/editing region. If false, all templates will be visible and usable for all players. # Permission node format: wggui.user.template.<templatename> (e.g. wggui.user.template.pvp) RegionTemplatesUsePermissions: true World restrictions Added 2 ways to control access to worlds in „Select world” inventory. First one uses permissions, second one disables world completely from being accessed using WG-GUI for all users. · Permission-based world access setup (enabled by default): Code (Text): # If true, player will need specific permission to see worlds in "Select world" menu. If false, all worlds will be visible to all players. WorldsUsePermissions: true When enabled, player needs „wggui.worlds.<world_name>” permission to have access to given world · World exclusion from WG-GUI setup Code (Text): # This option excludes worlds from being shown in "Select world" menu for all players, even those with permissions to see all worlds. ExcludedWorlds: - "myworld" Faster navigation Plugin now checks worlds player has access to when working with „Edit existing region”, „Set parent region” and „Copy flags from other region” options.. If they have access to only one world, they won’t see „Select world” menu and instead will see „Select region” menu for that world. This works only when „MoveToSelectRegionMenuWhenOnlyOneWorldAvailable” is set to true in config.yml (by default it is). When player has access to only one world and to only one region in that world, after clicking on „Edit existing region” they will be moved to „Region options” menu for that region. This works only when „AutoSelectRegionWhenOnlyOneAvailable” is set to true in config.yml (by default it is). When exiting from „Region options” menu, plugin moves player directly to main menu if AutoSelectRegionWhenOnlyOneAvailable is set to true and player has access to only one world and to only one region in that world. config.yml: Code (Text): # If true, when player clicks on "Edit existing region", "Copy flags from other region" or "Set parent region" item and they're allowed to edit regions in only one world, they will be moved directly to "Select region" menu for that world instead of "Select world" menu. MoveToSelectRegionMenuWhenOnlyOneWorldAvailable: true # If true, when player clicks on "Edit existing region" item and they're allowed to edit only one region in one world, they will be moved directly to "Region options" menu for that region instead of "Select world/region" menu. AutoSelectRegionWhenOnlyOneAvailable: true Above settings don’t affect players with permission to edit regions they don’t own - they will always see „Select region” menu no matter what. Changes to „Set parent region” option It’s now possible to unset current parent region – to do so, right-click „Set parent region” item in Region Options menu. Modern text formatting support Added support for modern text formatting in chat and inventories (uses MiniMessage and requires server running Paper version minimum 1.17 or compatible fork. This applies to all files where user can edit text (lang.yml, region_templates.yml, flag_descriptions.yml). By default this feature is enabled on supported servers when WG-GUI runs for the first time on server; to disable it, set „ModernChatFormatting” to false in config.yml file. If you’re updating an existing WG-GUI installation, this feature will not be automatically enabled. Code (Text): # Use MiniMessage tags (<white>) instead of legacy color codes ('&f') to format chat messages # Requires Paper 1.17+ or compatible fork # https://docs.papermc.io/adventure/minimessage/format/ ModernChatFormatting: false Note: To switch from legacy to modern format (or vice versa), after changing setting in config.yml it’s also needed to delete existing lang.yml, region_templates.yml and flag_descriptions.yml files from inside of WG-GUI folder. If you have modified these files (e.g. changed colors), backup them before proceeding. These changes have to be done when plugin is disabled, doing it with only /wggui reload comand was not tested and I don’t guarantee this will work without issues. Wider menu items customization It’s now possible to edit all items’ materials displayed in inventories (previously only 6 items were modifable). This is done in config.yml file: Code (Text): Items: GuiItem: CLOCK FlagItem: REDSTONE_TORCH RegionItem: END_CRYSTAL WorldItem: GRASS_BLOCK OwnerMemberItem: TOTEM_OF_UNDYING ExitItem: REDSTONE_BLOCK PageItem: ARROW CreateNewRegionItem: DIAMOND_AXE EditExistingRegionItem: WOODEN_SHOVEL EditLastModifiedRegionItem: GOLDEN_SHOVEL ReloadConfigItem: WRITABLE_BOOK RegionVisibilitySwitchItem: LEVER EditRegionFlagsOptionItem: REDSTONE_TORCH SelectRegionTemplateOptionItem: ENCHANTED_BOOK EditRegionBoundariesOptionItem: WOODEN_AXE CopyFlagsFromOtherRegionOptionItem: MAGMA_CREAM SetRegionParentOptionItem: CLOCK RenameRegionOptionItem: NAME_TAG RemoveRegionOptionItem: LAVA_BUCKET EditRegionFlagsHelpItem: PAPER AddRegionMemberItem: LIME_TERRACOTTA AddRegionOwnerItem: LIME_TERRACOTTA RemoveRegionMemberItem: RED_TERRACOTTA RemoveRegionOwnerItem: RED_TERRACOTTA Changes to permissions: · Permission „wggui.user.getflags” has been renamed to „wggui.user.copyflags” · Added permissions: Code (Text): wggui.command.help (required to access /wggui help command) wggui.command.reload (required to access /wggui reload command) wggui.user.owners.multiple (required to set more than 1 owner in region) wggui.worlds.<world> (used to access worlds if feature enabled, explained above) Other changes · Added /wggui reload command, which reloads plugin configurations. · Added /wgg alias to /wggui command. · Navigation item „Previous page” is now positioned just before the „Next p1.8Quality of life updatesSep 11, 2025 · It is now possible to close WG-GUI inventory completely with one click when user has gone through many subpages. To do this, just use shift-click on "Exit" item. Performing "normal" click will move you to a parent subpage (if there's any). · Added new item to main menu - "Edit last modified region". If player has done any modifications to any region before, clicking on this item brings him instantly to this region's options so player doesn't have to search for this region again. This item is not displayed when player hasn't done any modifications (counted from server startup) or last modified region no longer exists. Player needs "wggui.user.modify.last" permission to use this functionality. · "Reload configurations" item has been moved and now is placed closer to the "exit" item. · Added new text lines to lang.yml file: Code (YAML): GUI: MainMenuEditLastModified : "Edit last modified region" ExitShift : "&7&o(Shift-click to close GUI)" You need to apply this change manually to lang.yml file when updating from older plugin version.1.71.7: Back to life updateJul 20, 2025 · Adjusted flag handling to interact correctly with nonplayer-protection-domains flag. · Added missing descriptions of all flags introducted to WorldGuard since last update of WG-GUI. · Fixed issue with loading „edit flags” inventory of currently selected region just after changing its name. · Fixed player heads textures missing in „Add/delete owner/member…” inventory. · Added bStats integration. Plugin has been tested on latest 1.21.7/1.21.8 server and latest stable WorldGuard / WorldEdit (including FAWE) version. No breaking changes so plugin works still fine on older Minecraft servers (down to 1.13 which has been also tested) and older WE/WG builds (as long as they are from 7.x family).1.6Allow limit regions count based on player groupFeb 20, 2022 Plugin will now control number of regions player can create using /wggui command. Limit values are taken from WorldGuard config (config.yml) in section "max-region-count-per-player". ( https://worldguard.enginehub.org/en/latest/config/). If player belongs to multiple groups, the group with higher limit has precedence. Players with permission worldguard.region.unlimited can bypass these limits. Example WorldGuard config: WG-GUI (when limit is reached):1.5.4Fix for InventoryCloseEvent in latest 1.15 buildsApr 8, 2020 This jar is only for Minecraft 1.13+1.5.3"game-mode" flag fixSep 15, 2019 This is only for 1.13-1.14. Fixed "game-mode" flag value not changing after click and not applying in templates.1.5.2"weather-lock" flag fixJul 25, 2019 Fixed "weather-lock" flag value not changing after click nad not applying in templates.1.5.1Fix for inventory eventsJul 7, 2019 Fixed inventory events being called asynchronously.1.51.14 & Latest WG supportJun 24, 2019 This release works with WorldEdit 7 & WorldGuard 7 full releases on 1.13/1.14 servers. May also work with FAWE (not tested, but it no longer uses different WorldGuard so it should be compatible).1.4.1[1.13+] Update to latest WE & WGJan 17, 2019 This update is only for 1.13+ and WorldGuard 7! Plugin now works with latest beta versions of WorldGuard (beta 4) and WorldEdit (beta 2). Older versions are not supported. Fixed console spam when IncompleteRegionException was being thrown. Note: FAWE is not supported yet on 1.13+ because it uses different WE & WG versions.1.4[1.13+] Improve region templates & fixesSep 21, 2018 This update is only for 1.13+ and WorldGuard 7! Look below for updated plugin for 1.9-1.12 - Changed how templates file looks. Now you're able to put default groupname, which will be used with flag value. If you didn't modified templates file (used default one) just remove it and let it to be re-generated. How to update templates file: .SpoilerTarget">Spoiler: Old look Code (YAML): MyTemplate: Flags: invincible : allow .SpoilerTarget">Spoiler: New look (variant 1, without region group): Code (YAML): MyTemplate: Flags: invincible: value : allow .SpoilerTarget">Spoiler: New look (variant 2, with region group): Code (YAML): MyTemplate: Flags: invincible: value : allow group : members - Added missing message to help item in region editing. .SpoilerTarget">Spoiler: Changes in lang.yml Code (YAML): HelpItemLore : - '&3 Left Click - Change flag value' - '&3 Right Click - Reset flag to default value' - '&3 Shift + Left Click - Change regiongroup' <-- ADD THIS - Fixed bug causing some flags to show values as "null" where shouldn't (in 1.3). - Fixed bug causing messages to not be read properly on first run (in all versions).1.3[1.9-1.12.2] Region groups support, command whitelistSep 20, 2018 - Now you can edit region group values in GUI (use shift + left click). Possible values are: ALL, NONE, OWNERS, MEMBERS, NON_MEMBERS, NON_OWNERS. - Now you can set commands allowed when doing chat-related actions. For example, you can use //pos1, //pos2. You can configure it in config.yml. lang.yml & config.yml need to be updated! Re-generate these files or add lines showed below: lang.yml Code (YAML): GUI: ValueNames: ALLOW : "ALLOW" DENY : "DENY" DEFAULT : "&fDEFAULT" NONE : "NONE" ALL : "ALL" MEMBERS : "MEMBERS" OWNERS : "OWNERS" NON_MEMBERS : "NON_MEMBERS" NON_OWNERS : "NON_OWNERS" true : "TRUE" false : "FALSE" config.yml Add wherever you want: Code (YAML): AllowedEditCommands : - "//pos1" - "//pos2" - "/gamemode 1" - "/gamemode 3"1.2NPE fix, eventsAug 10, 2018 Fixes: - NullPointer in WorldRegionsInventory Addons: - Event "RegionCreateEvent" called when player tries to create region with WG-GUI. To-do: "RegionDeleteEvent" I will also release soon my first addon to WG-GUI for servers running PlotSquared which allow players to create regions inside owned plots. Check resource page for more info.1.1BugfixJul 18, 2018 Fixed important bug causing inventories unrelated to WG-GUI to not work properly in certain circumstances.1.0Jun 21, 2018
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
26.2MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.9MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
4.7MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta