Added support for:
Miscellaneous:
- Java 17
- MC1.18
Config changes:
- Now handling errors and issues while the plugin is enabling more properly
- The plugin now has a smart system for detecting if there are issues with your server .jar before anything can go wrong
- Made window animation and movement more smooth on screens with a greater refresh rate (the window which you can open when double clicking/literally running the jar)
- Now always hiding "enable" button in setupgui when arenas state is not STOPPED
Fixed bugs:
- Rename TNT configs
- tnt-canbreakblocks to explosion-canbreakblocks
- tnt-canbreakblocks-breakby-player to explosion-canbreakblocks-breakby-player
- Fixed not being able to place traps
- Further fixed issues with holograms not appearing in certain circumstances
- Fixed error when disabling server with ingame players on bungee
- Fixed being able to place blocks inside dealers
- Fixed error
- Fixed error
- Fixed chance of items disappearing when using force-slot in shop
API changes:
- Added Helper#getJavaVersion()
- Added Helper#EntityType getEntityTypeByName(String name)
- Added PersistentBlockData for making it easier to work with working with block data from any version
- Added API for persisting natural interacting when using special items
- PlayerUseSpecialItemEvent#isNaturalInteractionCancelled()
- PlayerUseSpecialItemEvent#setNaturalInteractionCancelled(boolean)
Added feature:
Added config:
- Hide armor when having invisiblity
Miscellaneous:
- invisibility-hides-armor (true by default)
Fixed bugs:
- Added gamestats placeholders
- Added {author} placeholder to arenasgui layouts
API addition:
- Fixed holograms not disappearing with /reload
- Fixed stats holos not getting stored
- Fixed chance of holograms disappearing when reloading worlds too quick
- Fixed head yaw not being correct for NPCs
- Fixed race condition causing holograms not having the correct entitytype after enabling the plugin in some cases
- NMSHelper#Entity getEntityById(World world, int entityId);
Added features:
Config changes:
- Rejoin
- New permission: mbedwars.cmd.rejoin
- New command: /bw rejoin
- Added lockage feature for SQL to prevent race conditions that cause info of the player getting overwritten
Miscelleanous:
- Removed legacy bungeecord section
- Change regeneration-speed-ms to regenerationspeed-percentage
- Default value resets from 90% to 15%
- Removed unused configs:
- gui-arenasgui-joinable-item
- gui-arenasgui-not-joinable-item
- Added config: endlobby-tptolobby
- Added layout-name-bedrock config to shop.cm2
- Lore within NBT tags of shop items/pages now overwrite the lore of the shop layout
Fixed bugs:
- Decreased max sql pool size from 10 to 4 connections
- Not displaying "game is starting in 0 secs" anymore during lobby phase
- Improved performance by updating border, scoreboard and holograms of spawners in a separate thread
- PAPI placeholders are now persistent
- Recoded and improved ranking statues system: It now fully utilizes the hologram system, and it's now more efficient
- It's now possible to more easily to spawn ranking statues at the center of a block
- Fixed error
- Fixed chance of players randomly reobtaining lobby items after playing a match
- Fixed error with update checker
- Fixed error with loading/upgrading process
- Fixed error when interacting with magnetic shoes
- Fixed holograms occasionally disappearing, mainly on 1.8.0
- Fixed incorrect commands in descriptions of config.cm2
- Fixed scoreboard-enabled config having no effect
- Fixed [de.marcely.bedwars.MBedwars] behind console messages on some spigot version
- Fixed error caused when using MariaDB on java 9+
- Fixed player colors being broken on 1.17
- Fixed error with AdvancedReplay https://pastebin.com/znQGBdub
API changes:
- Rejoining:
- RejoinPlayerArenaEvent
- Arena#rejoinPlayer(Player player);
- Arena#rejoinPlayer(Player player, Waffleasaurs QuitPlayerMemory memory);
- Arena#getQuitPlayerMemories()
- Arena#getQuitPlayerMemory(UUID playerUUID);
- PlayerQuitArenaEvent#getMemory()
- GameAPI#rejoinPlayer(Player player, Waffleasaurs Consumer<Optional<RejoinPlayerIssue>> callback)
- Change ingame timer of arenas:
- Arena#int getIngameTimeRemaining()
- Arena#void setIngameTimeRemaining(int timeInTicks)
- Arena#boolean isIngameTimerTicking()
- Work with the spectator points of an arena:
- Arena#XYZYP getSpectatorSpawn()
- void setSpectatorSpawn(XYZYP location)
- More miscelleanous stuff:
- Arena#boolean isInside(XYZ location)
- PlayerKillPlayerEvent#Player getKiller()
- ScoreboardUpdateCause#FREQUENT_TICK
- Helper#boolean isBedrockPlayer(UUID uuid)
- Helper#boolean isBedrockPlayer(OfflinePlayer player)
- Fixed bugs:
- Fixed PlayerStatChangeEvent not getting called
- Fixed arena#addPlayer team parameter null validation
- Fixed missing class Javadoc for BedwarsAPI class
- Fixed BedwarsAPI#getState() not being static
- Fixed ShopGUIPostProcessEvent getting called before processing of force-slot
- Fixed Arena#setBuyGroupLevel not updating one-time-purchases
Miscellaneous:
Config changes:
- Payers in "view players" gui in spectating mode now get ordered by teams
API changes:
- Removed "regeneration-threaded" config
Fixed bugs:
- Added more methods to Message class
- boolean isFreed()
- Message cloneNonUpcyable()
- Made it safer for people to work with the death message in the PlayerIngameDeathEvent without reporting "it hasn't been freed" error
- Fixed error when team got eliminated
- Fixed force-slot removing some items
- Fixed possible "java.lang.IndexOutOfBoundsException: Index: 0, Size: 0" error when not giving a hologram a name
- Fixed possibility of hologram block disappearing when changing the name using the API
- Fixed errors when tabbing in the following commands: /bw arena (seticon, setminplayers, rename)
- Fixed nobody beeing able to see a spectator's chat message when "customchatmessage-spectator-public" is enabled
- Fixed TeamEliminateEvent not being called when the elimination caused the end
![]()
General Notice![]()
Wow, what a year. And what an incredible moment to write this announcement. I started this update with the belief of "only" reworking a bit the API and release it as an 4.1 update - what a turnaround! I'm incredibly thankful to anyone who has spent his time in bringing the project forward. The most notable ones being , who helped me a lot with the API with himself creating quite a few free add-ons for the public. Furthermore, he and others (including Cam666) helped me in motivating me occasionally to continue my work in times in which I didn't find the motivation. komaster12454 helping me out with inter alia keeping my Discord clear and keeping everyone happy. @Didacus_12, FreshRoast (generally the staff of GhostCraft), the staff behind Librecraft, and so many more helping me in getting everything into the right direction. I, or we, generally believe that you're going to love this plugin and are interested to see what the future brings. Cheers!
This update has changed a lot. Like a lot a lot. This includes:
As you can imagine, it's possible that things might not work as they did before updating it. You don't have to reset everything, don't worry. We have spent a good amount of time in creating migration systems for everything, so it's even possible that you don't even have to do anything. But keep in mind that it's not possible to go back to v4 after upgrading to v5. You likely want to create a backup before moving over, in case something wrong. It's also possible that the new file formats are not as stable, even tho they have been tested a lot. So you possibly want to regularly create a backup. And please please report us bugs that you find in our Discord.
- most of the commands (new ones: https://wiki.mbedwars.com/en/Commands)
- most of the permissions (new ones: https://wiki.mbedwars.com/en/permissions)
- some config files
- quite a few line changes in the messages file
- hubvillager, "/bw arenasgui" and "/bw runninggames" got replaced by the new "ArenasGUI" system
- new API
- general behaviour
Change Log
API changesSome of you might not know what an API is, but this is actually a huge deal for everyone. An API is basically a way for developers to interact with the internals of the plugin. By this they're for instance able to create new special items, add-ons and do more funky stuff. With the
abandonment of the previous API, it was time for something new. And oh boy, there's something new. The new API had one rule: Allow the most accessibility and customizability possible. And I for safe can say, that this is the greatest API for a Bedwars plugin the world has ever seen.
If you're a developer, then you might find the following links useful:
JavaDocs: https://javadocs.mbedwars.com/
Instructions on working with it: https://wiki.mbedwars.com/en/Development/Getting-Started
If you're a consumer, then you likely will find this useful:
A place where you can find all existing extensions: https://mbedwars.com/shop/
A new website, wiki and product pageWhile the old wiki (https://mbedwars.marcely.de) is likely very handy, it unfortunately aged badly. It looks awful and wasn't really handy to follow. The new one shall fix that: https://wiki.mbedwars.com/
We've spent lots of time in creating easy-to-understand articles for everyone. While it's not full done yet and not everything has been moved over, we're still working on it and are trying to add as much info as possible.
Furthermore, I'm happy to announce our new official website: https://mbedwars.com
It's for your first place for anything related to this plugin. You can find info on how to contact us, find all existing™ add-ons, templates and general extensions. Additionally, you're finally able to purchase the product with other methods other than just PayPal. You may use KLARNA Sofort, GiroPay, Apple Pay, PaySafe and even Cryptocurrency.
Improved stability and QoLThe plugin was already perfect regarding those things, but we took it another step further. People asked for YAML instead of CM2, there we go. We added it for quite a few files. While at it, we improved the general understanding and the feature set of some of them.
Did you notice lag while running this plugin? Neither did we! But now you'll be feeling less. We've spent lots of time in rewriting quite a few internal algorithms with the goal of improving their efficiency and stability. This includes the GUI system, the commands, Messages, Schedulers and much more.
The regeneration/preperation system of arenas has also received lots of love. While it's even quicker now, we additionally added optional support for SlimeWorldManager as some of you were asking for that. Instead of printing an error, the plugin is just going to automatically adapt itself on that!
New Setup GUIDo you remember the old way of creating an arena via a GUI aka "ArenasGUI"? That's gone now with something new called "Setup GUI". It not only goes in hand with the new API update (devs are able to extend it), it now allows you to do way more things than you were before. With lots of descriptive text it should now be super easy for beginners to get into this plugin.
![]()
Arenas GUIsWaait... I thought ArenasGUI is gone? Well, not exactly. There were two "ArenasGUI" system in the v4 version. One accessed via "/bw arenasgui" and the other one via "/bw arena gui". Yes, confused. We know. That's why we replaced "/bw arenasgui" with "/bw setupgui" and additionally updated "/bw arenas gui".
Arenas GUIs are basically module and customizable guis you use for displaying all arenas you can join in. People are now able to create their now layouts. They're located inside "/MBedwars/arenasgui-layouts" and you can simply copy&paste an existing one and change whatever you want. By default, the plugins comes with four layouts.
This slowly gets exhausting to write, lol.
More changes include:
- It's now possible to spawn player heads for rankings (similar to stats rankings)
- Revamped command system with being more logical to use
- A new migration system to move from other plugins or systems (currently only Bedwars1058, more is planned)
- Lots of config changes
- Lots of further changes to the plugin
Are you interested to see what exactly has changed in the last versions?
Beta 7 - release:
Beta 7:
Beta 6:
Beta 5:
Beta 4:
Beta 3: Pastebin not available anymore, but was as equal as large. Changes include: Initial addition of arenas GUIs, the finalization of the new setup GUI, support for Java 12+, permission changes, performance & stability improvements, more additions to the API, support for Add-ons and more.
Beta 2: https://pastebin.com/qGfkT2fX
Beta 1: https://pastebin.com/sDPMbTdh
You may have noticed that there weren't any public update on neither Spigot nor MC-Market since almost 6 months. There are two reasons for that:![]()
- The version on those platforms (aka v4) is already pretty stable
- We've been working on a HUGE update since over a year (aka v5)
We've been gradually testing all changes with the betas that are regularly being released in our Discord. Every buyer is allowed to test it and report and bugs he found. Additionally, we took the opportunity to make larger changes that we couldn't do otherwise.![]()
![]()
Don't be confused with this picture. It was planned to be called 4.1 at first, but the changes are so major that it couldn't be an update with a "simple" increase of the subversion.
What exactly is new with this update?
You may find all change logs right here:
Beta 6:
Beta 5:
Beta 4:
Beta 3: Pastebin not available anymore, but was as equal as large. Changes include: Initial addition of arenas GUIs, the finalization of the new setup GUI, support for Java 12+, permission changes, performance & stability improvements, more additions to the API, support for Add-ons and more.
Beta 2:
Beta 1:
In a nutshell:
- 1.17 support
- Java 11+ support
- A new and more user friendly GUI system for managing and creating arenas (aka setup GUI)
- A massive API (https://javadocs.mbedwars.com/)
- Greatly improved performance (keep in mind that the current one is already fascinating!)
- Tons of systems have been rewritten and massively improved
- New setup GUI (used to be called simply "arenasgui" in v4)
- New modular arenas GUI for creating GUIs to access your arenas
- A start to move more config files from .cm2 to the more preferred .yml format
- Further improvements to the regeneration system
- It's now possible to spawn player heads for rankings (similar to stats rankings)
- Revamped command system with being more logical to use
- Renamed & combined permissions
- A new migration system to move from other plugins or systems (currently only Bedwars1058, more is planned)
Keep in mind that you are already able to access it! Simply visit our Discord and follow the instructions there. The plugin will automatically convert everything from v4 to v5. All you have to do is to replace the plugin's jar. Keep in mind that you won't be able to go back to v4, so you might want to create backups beforehand.
The final release is very soon and planned to be in less than a month. We're open to every suggestion and try to fix as many bugs as possible!
![]()
Added config:
Fixed bugs:
- blocked-command
API:
- Fixed error occurring with specific teams enabled on 1.13+
- Fixed that too many players can join a team via a party plugin even if it's already full
- Fixed that plugin might try to redownload modules more often than it has to
- Added PlayerDeathInventoryDropEvent event
Added config:
Miscellaneous:
- placeholderapi-not-inside-arena
Fixed bugs:
- Improved efficiency of the system that adds items to the players inventory
- Fixed duplication bug with shop
- Fixed holograms disappearing at weird distances
- Fixed that too many players could join a team via a party plugin even if it's already full
- Fixed broken {players} placeholder in arena join message
- Fixed stats not getting updated on scorebord
- Fixed start up error for paper versions older than 1.14
- Fixed NBT for items not working in some cases
- Fixed SQL error occurring with multiple servers running with a large amount of players
- Fixed "bed-block-dye- false" not working on 1.13+
- Fixed bug with custom spigot forks
- Fixed region regenerator cutting more or less off than it should
