UN
6.0.1latestEnd Creation Bug FixJan 8, 2026 This is a small update fixing a bug in some labeling in the world creation pipeline that caused created end worlds to be swapped to overworlds upon restart and caused end world creation to fail and end worlds to default to overworlds.6.0.0Universes 6.0.0Jun 13, 2025 Universes Plugin Changelog Version 6.0.0 Major Update with New Features and Bug Fixes What's New · Complete GUI Rebuild: The GUI system has been completely rewritten to be more efficient and future proof (hopefully) · Enhanced World Management: Better validation when importing and unloading worlds · Improved Compatibility: Full support for Minecraft 1.21 and newer versions · PlaceholderAPI Support: Improved PlaceholderAPI integration for better stability ️ Bug Fixes · Fixed End World Generation: End-type worlds now generate correctly · Fixed GUI Issues: Resolved menu problems that occurred in Minecraft 1.20+ · Fixed World Import Problems: Better error messages and duplicate detection · Fixed World Unloading: Worlds now properly unload and won't cause issues · Improved Player Tracking: Better handling of players moving between worldsBreaking Changes · Economy System Removed: The built-in economy features have been completely removed · Old GUI Code Removed: Deprecated functions have been cleaned up · Convert command removed: The /universeconvert command has been removed. With it, all of the SQLite/MySQL code has also been removed. If you are moving to this version from version 4.x, you will first need to use version 5.x to convert. Technical Improvements · Updated to support Minecraft 1.21 · Better error handling and user feedback · Improved performance and stability Installation Notes · Dependencies: · PlaceholderAPI (optional, for enhanced features) · Important: If upgrading from older versions, the economy system and conversion tool have been removed Need Help? If you encounter any issues with this update, please report them on GitHub here. Thank you for using Universes!
5.0.55.0.5 Quick BugfixJun 14, 2024 There was a bug in the GUIs on version 1.20.6 and later. The method I used to check the item being clicked was no longer valid. This has been resolved.Universes 5.0.4Return to Development plus Minor BugfixesJun 14, 2024 Changelog: - added check for duplicate world UUIDs to import command (by MeltsLars) - added check for players in unload command to prevent an unloading world from destroying the player instance (by MeltsLars) - fixed PlaceholderAPI dependency implementation (by MeltsLars) - updated plugin to API version 1.20.6 Return to Development Hello all! First, I want to apologize for disappearing without any sort of notice. Long story short: I finished college and a lot of stuff has been changing in my life that has taken my focus. I'm finally getting back into my programming groove and am picking things back up. So, here's what my future sorta roadmap looks like: - remote economy system from Universes. Current implementation is terribly written, and it feels unnecessary. - refactor and document Universes code - finish Universe-Portals addon plugin - start Whisp's TimTheEnchanter plugin rewrite - finish Discord implementation plugin5.0.2Universes 5.0.2 - BungeeCord BugfixMar 30, 2023 Hello everyone! This is a quick patch update that fixes an issue where inventories could get overwritten and mixed up when the plugin is used on BungeeCord connected servers. This issue mostly occurred when a player would switch servers and then would be sent to a different world upon return. Inventories are now saved when a player leaves the game and are loaded when a player joins. Other known issues: - currently there is a bug with Universe-Nethers where portal nether and overworld portal coordinates are sometimes not correctly synced.5.0.1Universes 5.0.1Aug 20, 2022 This is a small update. The UniversesPlaceholders.jar file created some confusion. This update simply edits the notes in the config for the prefix-chat option to explain how the feature works with PlaceholderAPI installed. The following paragraph was also hadded to the 5.0 update description; Special Note for World Prefixes: The UniversePlaceholders.jar is not a plugin. It should not go in the plugins folder. You only need it if you are using Placeholder API. If you are, put it in the PlaceholderAPI extensions folder. It may not work otherwise. If you are not using PlaceholderAPI this should not be an issue.5.0Universes 5.0Aug 16, 2022 Hello everyone! This is a pretty major update to the Universes plugin that has been in the process of development for almost two years. (You can thank school for some of the delays). There is a lot, so I encourage you all to reread the overview page and watch the new update video after reviewing the changelog. If you have any questions, please come to my discord and ask: https://discord.gg/pSBKafQ. Feature Additions: Universes: - added per world and group economy - added administrative economy commands and balance command - added toggle to config to disable the Universes economy - added economy-config.yml - added the ability to use custom generators - added the ability to provide a seed for a world to generate with - added the ability to provide a group to add a world to on creation or import - added the ability for Universes to register worlds created by other plugins - added an option in config to disable Spawnify's respawn system to allow usage of other plugins or sources (i.e. Essentials) - added support for Placeholder API, for world prefixes - added the ability to grant players permission to use /ut and /us for only specific worlds - added the ability to require users have permissions to enter specific worlds - added config toggle and permission checks for the changes to /ut and /us - added tab completion for all relevant commands - added special tab completion for /ut and /us so only worlds a player has access to will appear in the list - /universereload (/ur) now updates everything related to the plugin--all config options, groups, etc. - added the ability to turn the player limit on and off per world (it is off by default) Universe-Spawnify: - added the ability to set respawn points per world or group - added per world and per group bed spawns - added a command to go to any world or group spawn (previous you could only go to the spawn for the world or group you were in) Universe-Ends: - updated the end portal handler to behave like vanilla Minecraft - updated U-Ends to use the new data storage system - added new config option to control end exit behavior - U-Ends now also handles entities Universe-Nethers: - updated U-Nethers to use the new data storage system Bugs fixed: Universes: - implemented the fix for the full world bug Universe-Spawnify: - Fixed a bug that allowed any player to use /universemodify - fixed several bugs that caused respawning and teleporting errors Universe-Nethers: - fixed a bug in the nether portal handler that caused incorrect final calculations for destination when entering or exiting the nether. Specifically, it would not find any pre-existing portals on the Y axis - fixed erroneous handling of entities - updated U-Nethers to use the new data storage system Other Important Changes: - completely overhauled the data storage system to move away from Databases, which are slow and ill suited to the file usage of Universes - rewrote roughly 50-60% of the plugin code - added comments to the config.yml - completely restructured the groups.yml - rewrote the plugin initialization process for the new storage system - rewrote conversion command to make the storage transition easier - added a permissions system to the changes to /ut and /us, and the new world entry permissions option Special Note for World Prefixes: The UniversePlaceholders.jar is not a plugin. It should not go in the plugins folder. You only need it if you are using Placeholder API. If you are, put it in the PlaceholderAPI extensions folder. It may not work otherwise. If you are not using PlaceholderAPI this should not be an issue. 4.2.2 - Spawnify 1.3-BetaThe Full World BugNov 17, 2020 No actual update. Simply a notice. PLEASE READ! I don't know how many times I've asked at this point, but it's more than a few. If you encounter this bug where the plugin says a world is full when it is empty, as I asked before, run the /uinfo command and send me the details, send me logs as far back as the most recent start up, and then run the /urpc command. Every single person that has reported this bug to me has done none of these things, only showing me the message in game. I have known of the bug since August. That message is also something I wrote to respond to normal situations, so it tells me nothing. I end up having to ask for all the information every time. The logs. I AM FED UP WITH THIS! When I ask you for the logs, it is because I want to search for some specific debugging messages that I've put in. I don't want a snip that is just a Java stack trace. I don't want to see only the line where you ran the tp command. I want the ENTIRE log so I can investigate. It's hard asking you all to search the logs for me because I'm not entirely sure exactly what I need you to find, or how far back from a certain debug message I need you to go. Every server log is different, so every appearance of the bug will be different. If you experience this bug, PLEASE, do as I ask so I can resolve it quickly. It has persisted for long enough.4.2.2Small Bug Fixes...and Discord?Oct 19, 2020 Hello everyone! Today I bring a small update. First, I addressed the "world full" bug a lot of you have been experiencing. Thank you to those who sent in screenshots of /uinfo and server logs to help me investigate when you had this issue. I have written deactivated code to change the way the playerLimit disabled state looks and works. However, I have left it unimplemented for the time being because I now know what why it is happening--the player counter is decremented to -1. However, I do not know why this is happening. So, before the new code is implemented, I have added a log statement that will will appear in console whenever the counter is decremented. If you encounter this bug, please send me your logs. With this statement appearing, I will be able to pinpoint exactly when the bug happens and what conditions cause it so I can properly fix it. The second and final fix of this update is to Spawnify. For those that use it, you will find a new option in the config. If you want to use Spawnify, but still want players to respawn at, say, a spawn set with Essentials, you can toggle this new option and it will disable Spawnify's respawning system. I also have an announcement to make! I have put together a small Discord server for everyone. It will (hopefully) be the new help and support home for all my plugins (even plugins not available yet on SpigotMC). Bug reporting will be on the server until I can set up issue tracking on GitHub. Not only that, but I will stream dev work from time to time and host some fun stuff like game nights. You all should check it out: https://discord.gg/pSBKafQ4.2.1A couple bugs and an old feature makes a comebacOct 7, 2020 Hello all, So, as the title says, we've got some minor bugs fixed. The first one was not so much a bug as it was a poorly implemented feature in Universe-Spawnify. Essentially, with the plugin installed, you would be sent to the hub location every time you joined the server. I have added a config option so this can now be toggled. It is off by default. Second, some of you may have noticed a message whenever you used a nether or end portal. "Portal event triggered." That was a debugging printout I accidentally left in, and have now removed. Third, many of you may remember the feature from Universe-Nethers 1.0 where you could return to your nether entry portal from anywhere in the nether. I removed that because I didn't think it was necessary anymore. Turns out a lot of you guys actually liked and used that feature. So, I have added it back. You will find an option in the Universes config to enable it. KNOWN ISSUES: - There seems to be a bug that many of you have experienced when creating a world where Universes essentially completely breaks. Try as I might, I have not been able to reproduce this. So, if this happens to you, please send me a note or a message on the discussion board here detailing what brought you to that point, the server logs with the error messages, and the server version you are running (/version) and its distribution (i.e. Spigot, Paper, or Sponge). The only fix I have at this point is to restart the server after you've given me your bug report. - The player counters screwing up and causing "Sorry, that world is full" to be returned when trying to enter a world. There is a somewhat brute force fix in place for this as well as a a command to get a debug printout of the world data for when this happens. If you run into the bug, do the same as for the previous one, but instead of the server version, send me what you see in the /uinfo command. I am pretty sure this happens when the player counter is somehow reduced to -1, which is then equal to the value used to denote the counter being disabled. When the plugin then asks the world if it is full, the result comes back true. However, I don't know why this is happening. Please note, I am doing everything I can to pinpoint and resolve these bugs and improve the plugin. But I am also a Junior in college, so my time is fairly limited. I can't devote entire days to investigating issues like I could during the summer. So, when you guys experience these bugs, when you provide everything you can to me, finding the bug goes a lot more quickly. So, when you leave a review stating that something wasn't working and you get an error message, that does nothing to help fix the issue. Your reviews should be about what you like and dislike about the plugin and what you think could make the plugin better. Please, PLEASE report bugs to me in a note or discussion so I can actually communicate with you and resolve issues. The people that have left bug reports in the reviews never respond to me when I reach out to them and ask for more information, and it really aggravates me because I know there is a bug now, but I have no idea how to reproduce it, nor any inkling of where in the near seven thousand lines of code the bug could be happening. Thank you for (hopefully) listening, and I hope you continue to enjoy the plugin.4.2.0.1Super quick bug fixOct 4, 2020 So, I made a small goof. In the world settings GUI, when the allow animals option was toggled, I called the function to enable animals on accident. This has been fixed. Very brief update.4.2INTRODUCING SPAWNIFY!! Oh, and some bug fixes. Yeah.Sep 25, 2020 Hello everyone! This is a small, but surprisingly feature-packed update. So, let's get into it. Universes First are some tweaks to the Universes core. - First, a bug fix. So, when Universe-Nethers and Universe-Ends are installed, the /uc command is supposed to automatically create a nether and end world for each created overworld. I had a small typo in my code that caused the plugin to use the wrong instance of the Generator class, thus the worlds were not actually generated. This has been fixed. - Tab autocomplete is now fully implemented! Have fun not needing to remember which things go where when creating worlds! - The /um and /uo commands have had some significant changes. Up until this point, all configuration options could be changed via the command as well as the GUI. I have decided to remove that ability in favor of using only the GUIs. First, the GUIs are easier to use anyway. Second, maintaining the modification options and overrides in two different places takes up a lot of extra time when making changes to them. Removing the code means I only have to maintain one version. This means more time for other things like Universe-Portals. - Third, world entry permissions have been added. Through this, you can require players to have a certain permission to enter a world. More on this below. - Fourth, a lot of people have had issues worlds reporting that they are full when they are clearly not. I haven't been able to figure out why this is happening, so I added a few tools to hopefully diagnose this, and to temporarily remedy it. First, there is the new /universeinfo or /uinfo command. This will print out all the stats of a world to the screen including the player counts, player limits, and the name of the group. Second, there is a new /universeresetplayercount or /urpc command that will reset the player count to 0 and change the player limit to the default of -1. This command will kick any players in a world that has been reset so that the counter is not reporting incorrect numbers. These commands will require permissions. Universes.info and Universes.resetplayercount respectively. - Lastly, a workaround for a bug with the end exit gates. Since 1.16, exit gates in End worlds created with the WorldCreator class, which this plugin uses, have been calling the wrong event and sending players to the default end world instead of the overworld. I wrote in a bit of code to make a workaround for this until the bug is fixed (I've reported it to the Spigot issue tracker), if the Spigot team is able to fix it. Universe Nethers So, there have been a few bugs with this version that I've looked into and hopefully fixed. - First, when entities entered nether portals a NullPointerException error was reported in console. This was because in the entity portal event handler, I had a line of code trying to send a message to a player with my username. Chances are, I'm not playing on your server, so it can't find and errors out. This little bug has been fixed. - Second, I've had a few people report that their nether portals just don't work. No errors in console, nothing. I believe this was tied to the previous bug, because after I fixed that, I sent a test build to someone who uses the plugin and their nether portals started working again. So, I think this bug is fixed. However, I could not reproduce the bug, so I am not entirely certain that it is fixed. Universe Ends - This is mostly related to the WorldCreator bug mentioned earlier. A small tweak has been coded so that players are returned to the overworld tied to the end they are in. UNIVERSE SPAWNIFY This plugin was originally created for a server I am currently staff on. It was created as an extension of Universes, and it seemed like something a lot of people would find very useful. So, what is Universe Spawnify? Well, a plugin for spawning of course! It allows you to set a spawn for each world or group of worlds that can be teleported to with /spawn, and players to be sent to when they die. There is also a hub which can be set and reached with /hub. If a world or group does not have a spawn point, players are sent to the hub instead. This plugin also adds in a toggle in the World Settings GUI that can be used to change the spawn location. This extension adds in four new commands that are as follows: /setgroupspawn - sets the spawn of a world or world group /spawn - teleport to the world or world group spawn /sethub - set the hub location /hub - teleport to the hub location. As is to be expected, it also has some permissions: Universes.Spawnify.* - the wildcard permission, grants access to the whole plugin Universes.Spawnify.setspawn - allows using /setgroupspawn and /setspawn Universes.Spawnify.spawn - allows using /spawn This plugin is complete and stable, but I decided to mark it as a beta because it is fairly new and hasn't been tested too much. Universes World Entry Permissions As mentioned above, this will allow you to require certain permissions to enter a given world. By default, this is turned off in the config. When turned on, players will need permission to enter worlds. This includes, AND THIS IS VERY IMPORTANT, the default worlds. YOU MUST GIVE PERMISSIONS FOR THE DEFAULT OVERWORLD, NETHER, AND END! The permissions are formatted as follows: Universes.universe.<world name> Add that for each world a player or group can access. If your players start in a hub world, they will need permission to enter the hub or they will be unable to return. Worlds are also not grouped together, though I may make this possible in the future. But for now, players will have to be given permission for all worlds in a group. Closing Notes: Universes has grown quite substantially since it was first created. A lot of new features have been added, and a lot of bugs have been fixed. As the plugin has expanded, the overview pages has gotten messier and messier and messier. So, I am going to start working on a wiki site. It probably won't be ready for a few months. Attached to it will also be the forums page, for discussion, suggestions, and bug reports. As I work on this, I am going to start working on, and enforcing, a bug reporting policy so I can diagnose and fix bugs more efficiently. So, look forward to those things in the future.4.1.1Universes 4.1.1Aug 25, 2020 What? Two updates in one day? Blah! Yeah. So, I was doing some server administrating, you know, like you do, when I accidentally forgot to give a world for the /ut command. And I got an error. This one was a really dumb mistake. I used a word to search a table before I checked to make sure the word existed. So yeah, that's fixed out. Universes should now correctly yell at you when you don't give it what it wants.Universes 4.1Universe Nethers 2.1.1Aug 24, 2020 Heya! This one is a really quick and small update. It was brought to my attention that non-player entities were not teleporting correctly through nether portals. I finally had access to my code this morning to take a look. Turns out I forgot to register the event handler I created. I've fixed it, and now everything in Universe-Nethers should be working correctly.4.1Universe Nethers 2.1Aug 21, 2020 Hello all, Today I bring you a bug fix that is about a week overdue. I delayed pushing out the update because I wanted to test it in the environment where the bug was discovered to make sure I had actually fixed the problem. To do that, I needed to wait for the server's owner, who graciously allowed me to investigate and test on his server, to have more time to test. So we tested today and the fixes proved successful. So, what exactly did I fix? Well, just one bug. This one was a logic error that was directly my fault and caused the coordinates when entering the nether to be drastically wrong. I'll try my best to explain this in laymens terms. Many programming languages have two kinds of division: integer division and decimal division. Integer division is dividing using whole numbers. No matter the numbers being divided, the result will be a whole number. This means doing 8 / 3 will give you 2. Decimal division is dividing using decimals. To do decimal division, the numbers being divided must be decimals. The result will also be a decimal. This means, doing 8.0 / 3.0 will give you 2.6666. Notice how I added a decimal point and a zero to each number. In Java, and many other languages, 8 and 8.0 are not the same thing. In Java they have different types. 8 is an Integer and 8.0 is a Double--aka a short decimal. In Minecraft, the X, Y, and Z coordinates are decimals. When I was initially writing the code for the nether/overworld distance ratio, I confused decimal division for something called modulo division. Modulo division is like doing long division out on paper to find the remainder. In code, modulo division uses a percent sign. So, modulo division between 8 and 3 would look like this: 8 % 3. If you do the division by hand, you will get an answer of 2 with a remainder of 2. In the code, modulo only cares about the remainder. So, the result would be 2. Therein lays the problem. Let's say I am at an X coordinate of 738 in the overworld and I enter a nether portal. The X value is divided by 8 for a result of 92.25. My X in the nether will be around 92. If we instead use modulo division, we get 92 with a remainder of 2. As I said, modulo only cares about the remainder. That means, my X in the nether is set to 2. My X will also be set to 2 is my overworld X coordinate is 138, 338, and so on. Now, if I leave the nether, my X coordinate, which was changed to 2 when I entered, is multiplied by 8. So, whether you entered the nether at an X of 138, 338, or 738, you'll exit the nether at an X of 16. To give an idea of the scale of this error, if you enter the nether at an X of 738,000, there is a remainder of 0. So you wind up at an X of 0 in the nether. Leaving the nether from that portal will bring you out to an X of 0. (0 * 8 = 0). That puts you out more than 700,000 blocks off. So, I replaced the modulo division I had erroneously used with regular division. Simply put: My math was wrong, so I fixed it.4.0Universes 4.0Aug 3, 2020 Wait, a real update? WOAH! Universes Update At long last. Universes 4.0 is here. This means support for 1.16, a massive rewrite, and lots of squashed bugs. IMPORTANT: When you modify groups in the groups.yml file you will have to restart. The new /universereload (/ur) command will not be sufficient. I forgot to handle changes to the groups.yml in the command and the update has already been posted. I will fix this in the next update. Upgrading First things first, Universes uses a whole new storage system. To update follow along with this video: Steps from the video: 1. turn off server 2. update plugin jar files 3. delete config.yml 4. start server 5. modify config.yml and database-config.yml for your needs 6. restart server 7. run /universeconvert or /uco 8. restart server That is the most important part of the update process, so I encourage you to watch the video. New Features in Universes The new storage system is not the only new feature in Universes. In fact, here's a list of all the features: - Difficulty toggle in World Settings GUI - World prefixes that can be customized - Blocked commands per world with block and unblock options in the World Settings GUI - New override toggle in Overrides GUI for blocked commands - new /universereload (/ur) command to reload plugin config files - new /universeconvert (/uco) command to move your saved data to the database Fixed bugs - World difficulty resetting to easy on reload or restart - numerous bugs with per world stats - a few small bugs with teleport tracking Known Bugs - When creating or importing a world, spawn flags will reset to true across all worlds. This appears to be a bug in Spigot. Universe-Nethers Update Universe-Nethers is also receiving an update. It is now on version 2.0. Changes in Universe-Nethers - The Nether-Overworld 1:8 ratio is now accounted for - Universe-Nethers now uses Minecraft to locate nearby portals to use before generating a new one - Behavior is now (or at least should be) identical to vanilla Universe-Ends Update That's right! With Universes 4.0, Universe-Ends makes a return! Universe-Ends is now on version 2.0 Changes in Universe-Ends Universe-Ends has gone through a number of changes since it was removed. While it is still incomplete, it is stable, and I am comfortable including it in the zip archive again. What to expect: Entering the end will not feel like vanilla. You will not spawn on a 4x4 obsidian square. You will instead spawn at the world's spawn point, which, for the End, is always 0,0, where the exit gate is generated. You will find yourself on top of the pillar at the center of it. Until I can figure out how to make use of the End entry logic built into the game, or come up with my own algorithm to replicate it, this will be the case. Closing Notes Most of the changes that have been made with this version are behind the scenes. Using the plugin should feel similar to previous version, but smoother, perhaps a little faster, and obviously with the handful of new features. Over a hundred hours of work went into this update in the last month, and I think the hard work has paid off. I really do hope you all like the update, as minimal as it may seem. While this is a fun hobby project of mine, I do try to release timely updates when Minecraft updates. This one came about rather slowly because of the large changes I decided to make. To thank you for your patience, I'm going to let you guys in on a little something. I've been spending a lot of time in the last few months looking at portals and portal frame detection. Right now, I have a functional implementation of a portal system in a testing plugin. It doesn't use frames yet, it can only be one block in size, and the system for detecting players at portals is really bad and inefficient...but it's a start. Yes, I am working on another extention plugin for Universes: Universe-Portals That just about wraps up the update. For those of you who are curious, I logged all the changes I made over the course of development as I created dev builds over on my website. Below, you will find a complete changelog of the entire update. Changelog - remove lang, es, and en packages - relocated child packages to parent package - fixed import statements for relocation - removed commented out code related to language swapping - removed unused Spanish language setup code - removed all events related to teleportation and respawning - removed per world inventory system - removed per world stats system - added Universe class - added UniversePlayer class - added abstract SQL class - coded create method in SQL - coded insert method in SQL - coded update method in SQL - coded query method in SQL - created MySQL subclass - coded init method in MySQL - coded connect method in MySQL - created DatabaseConfig class/database-config.yml file for database related settings - added AbstractFileSQL class - added LocalDatabase subclass for creating a local database - created SQLite subclass - codes init method in SQLite - coded connect method in SQLite - create Serialize class - import itemToString from old Universes to Serialize - import stringToItem from old Universes to Serialize - code serialize method - code deserialize method - fixed small bug with switch statement in query method in SQL - SQL queries for inventory table implemented in Serialize - created onlinePlayers HashMap in Universes main class - Added PlayerChangeOnlineState class in place of JoinEvent to handle both joining and leaving - coded join and leave event handlers that build UniversePlayer objects - added player counter to Universe class - added blocked commands array - added methods in Universe class to add, remove, and check blocked commands - implemented Serializer in UniversePlayer - implemented SQL initialization in Universes main class - Fixed error in SQL syntax in SQL class - added check for existence of tables in database - added inventory map to UniversePlayer - renamed loadInventory() to storeInventory() - added loadInventory which searches map for inventories - created buildInventory() method in UniversePlayer - created PlayerChangedWorld event handler to load new world's inventory - added clearInventory() method in UniversePlayer - added PlayerTeleport event handler - added SaveInventoryTask to save inventories on timer - added SaveAll to save inventories in multiple threads - implemented PlayerTeleport and PlayerChangeWorld event handlers - fixed null player bug in PlayerTeleport and PlayerChangedWorld - fixed JSON parse on null results from query in deserialize() in Serializer - changed inventories map in UniversePlayer to store ItemStack arrays instead of Inventory objects - Renamed SaveAll to SaveInventoryThread - Adjusted SaveInventoryThread to save only current inventory - added call to storeInventory on player quit, on timer, and on PlayerTeleport - added null check to storeInventory() in UniversePlayer - fixed errors preventing storing and retrieving inventories from the database in SQL and Serializer - Functional implemention of player inventories portion of PerWorldInventories - moved inventory saving to PlayerChangeWorld - created inventoryManagement() method in PlayerChangeWorld - moved inventory management code to inventoryManagement() - added stat management method - duplicated UniversePlayer inventory manangement methods for ender chest management - added enderChestManagement() in PlayerChangeWorld - added check for player name change to update in database - changed playerdata table to take json for the stats - added stats JsonObject to UniversePlayer to store stats - added build3.2.2Stream?Jul 22, 2020 While I've been working, I thought I'd stream a little of my work for those interested.3.2.1More bug fixesMar 22, 2020 So, remember how I said I squashed them all? Well, I was wrong. I discovered a few more bugs and squashed them. So let's get into it. - One final bug with xp. If the use of respawWorlds was enabled, it would get xp data from the wrong file. This has been fixed. - Stats retrieval error. When you died, the plugin would save all your stats accordingly. That means, in that world you have 0 health. If you tried to teleport back there or the respawnWorld sent you there, you would immediately die again. This has been fixed. If heath is 0, both it and hunger will be set to their maximum of 20 as usual. - save-inventory-on-death is no longer an option. With the changes to the respawn event handler and the removal of the player death event handlers, the save-inventory-on-death option in the config became obsolete. No matter what, the inventory saves when you respawn. So, if your inventory was empty on respawn, it will save empty, if keepInventory is on, your items don't drop when you die, thus all those items will be saved. As a result, the plugin no longer needs to be concerned with that, so the option was pointless. It may still appear in the config file, but it can be safely removed. The option will not appear in newly generated config files.3.2Big Bg Bug FixesMar 22, 2020 Hello everyone! This update is mostly bug fixing, but also one small new change, and a bit of cleanup. So, first, the new change: - Teleport Tracking! - - You will see a new option in the config called track-all-teleports. It is true by default. Previously, the location used by /ut would only save when /ut or /us was executed. With this enabled, it will save when anything else causes the teleport whether it be a command block or /tp. - Previous locations now include pitch and yaw! - - The location tracker will now remember where you were looking. Now, for the bug fixes: - teleporting to worlds with /us or /ut will no longer send you to the void. In the last update I thought I fixed this, but I had only fixed one of two bugs that could cause this. The remaining one would send you below the floor if you typed the world name with the wrong letter casing. World names are not case sensitive to the game, but in the Universes world-settings.yml they are. So if you were to type "hub" instead of "Hub" the game would find the world for you, but Universes wouldn't be able to find coordinates. Thus, you would be teleported to 0, 0, 0. - end world generation. The world settings were incorrectly generated for end worlds created automatically with Universe-Ends. In the files they were set with the type as nether. Upon restarting the server, this would change them to nether worlds. The names were also set incorrectly in the settings. However, the name line is unused. This update will prevent this from happening in the future. To fix any worlds currently like this, change the type in the settings and restart, or unload the world and reimport it. - invisible entities after respawn. So, this was a small bug that was brought to my attention. The respawn teleportation sequence ran a few ticks too fast, confusing the server as a result packets related to mobs would not be sent to the client rendering mobs invisible and untouchable. The delay before the respawn teleport kicks in when the use of respawnWorlds is enabled has been increased just enough to prevent this. There won't seem like much of a change at all when the teleportation happens though. - xp issues. There were a lot of bugs and glitches related to per world stats and xp during the respawn process. The code there was a big mess and honestly still sorta is. The respawn event and death event handlers contained a lot of old, bad code. All those issues, to my knowledge have been fixed. I rewrote a large portion of the respawn event handler (again) to make sure xp was saving and setting correctly on respawn, and the death event handler is gone as it was pointless. These glitches were mostly caused when bed spawn points were in use. - bed spawns/spawnpoint no longer overriden. Previously, when the use of respawnWorlds was enabled no matter what you would be teleported to the indicated world's spawn. Now, if your bed spawn or spawnpoint is set in the world you died in, and the world you are in is the respawn world for itself, you are sent to your bed spawn or spawnpoint instead of the world spawn. For example, if I'm in SurvivalWorld, and SurvivalWorld's respawnWorld is SurvivalWorld, and I have a bed spawn set in SurvivalWorld, if I die, I go to my bed. And that's it. I am not aware of any other bugs and I haven't come across any more in my own usage, so if I've missed something, do let me know.3.1Bug Fixes and new FeaturesFeb 28, 2020 Hiya guys! This update isn't too big, but fixes some important bugs and adds in a sought after feature. So, here's what's in store: Universe-Nethers and Universe-Ends - added Universes as a dependancy. Those warnings that appear in the console are gone. I had checks in place to be sure Universes is installed, this is just another, albeit important, layer of safety. Universes: - When you create or import a world, the difficulty is actually saved and applied when worlds are loaded (This has been missing since the initial release and was only just now brought to my attention). When previously existing worlds are loaded, they will automatically be set to the game's default of easy. If you wish to change this, simply change the difficulty in the file and restart the server (reloads may not apply the change). I'll add a command later. - Upon making respawnWorlds option, I broke a few things in the respawn event handler, mostly due to poor variable names. I large portion of this class was adjusted to be clearer and to fix the bugs. - A likely unnoticed bug in the /universeimport command has been fixed. For whatever reason, this was setting world spawn points with the method used prior to version 2.0. If you imported any worlds, I suggest unloading them and importing them again. - The /universeteleport (/ut) command has been completely changed. Now, using this command will return you to your last known location in whichever world you pick. Location is saved whenever this command is executed, or when the new /universespawn command is used. If a user has not been to a world yet, this will take them to its spawn. A lot of people asked for this, and it wasn't really a hard feature to implement, so here it is. - New /universespawn (/us) command. This does what /universeteleport used to do. It will take you to the spawn point of the specified world. - With the new command comes a new permission. Other Information and Known Bugs: - Deleting or unloading a world will partially fail if a player is still in the world, allowing access to the world still that is incredibly broken and prone to errors and other issues. There are no checks in place to prevent this or move players to a different world. I did not have time to work on this for this update, and I will be very busy over the next few days. You can expect an update to fix this likely next week at some point. Enjoy!3.0Uiverse-Ends and MoreFeb 14, 2020 Hiya everyone! It's time for another big update. The last few updates have mostly been minor fixes and changes after the 2.0 update. And now we are on 3.0! Hard to believe we're here already in less only about half a year. So, let's talk about what's in this update. First, the new stuff: - the create command can now be given a seed to generate with. (Check the overview page's command section for more info on how this works). - There is now an option first join spawn option in the config as well as a command to set the location. (Please note that by default players will just go to the regular spawn if no first join spawn has been set.) - Universe-Ends has finally been finished. This has been something I've been planning for a while. With its inclusion, you are now able to make end worlds for each individual overworld. Check out the new section added in the overview about it to learn how it works. - joinspawn.yml file added to store the first join spawn point The stuff that's changed: - Universe-Nethers teleport management. This is a pretty big one. Various checks have been moved around in the code to fix a few odd bugs. Also, previously when nether-per-overworld was disabled, if a player entered a nether portal, they'd be taken back to whatever world they entered from when they exit. This is now optional. - Library updates. This one is entirely unnoticeable, but the internal libraries used for the coding for Universes and both add-ons have been updated to 1.15.2. These libraries are not compiled into the jars, so it won't be noticeable at all, but it means I see any newly deprecated methods I might be using so I can change them to better alternatives before they are removed from the libraries. - the new usetspawn command has been added to the universehelp command. - create command modified to allow for auto-generation of both nethers and ends if the add-on plugins are installed. I think that's it. So, I hope you enjoy the new features! The code will be merged from the developer branch on github shortly.2.1.2Permission Bug FixJan 30, 2020 It was brought to my attention that permission for access to /universemodify was still being denied when the Universes.* permission was given despite the small update claiming it was fixed. I accidentally moved the wrong jar file into the zip archive. This time, that small bug has actually been fixed. I apologize for any inconveniences my oversight has caused.2.1.1Brief But ImportantJan 20, 2020 This update is very brief, but at the same time very important. I didn't realize this at first, but in the Universes plugin.yml file I noticed that the entire permissions section was spaced in when it should not have been. This improper alignment actually causes the server to not register the permissions. This can cause some issues with various permissions plugins. The alignment has been fixed, so all permissions now correctly register.2.1Minor Changes and FixesJan 7, 2020 So, it's been a while since Universes 2.0 came out, and I apologize for taking so long to get around to making another update--a rather important one too. What this update adds: - ability to DISABLE the respawnWorld feature - updated to 1.15.1 api libraryUniverses 2.0Universes 2.0, The BIGGEST Update Yet!Sep 25, 2019 Hello all and welcome! At long last, it's time for an update. After two long months of work, I bring you Universes 2.0. There are a lot of changes and new features, so I encourage you to watch the video I created to go along with this. I am bad at making my videos short, so you may want to watch it in parts, but it gives important information on how to use the new kits system, Universe Nethers, and the long awaited PER WORLD INVENTORIES! Yep, you heard right! That's a thing now! INCREDIBLY IMPORTANT NOTE ABOUT PER WORLD INVS: There may very well still be some bugs in the transition between versions, so I encourage all server owners to have their players store all their items in chests before per world inventories is turned on or modified. This will ensure no items are lost. So, how about a brief overview? Squashed Bugs: - Setting a new spawn point no longer causes the teleport command or respawning to to send players to 0, 0, 0 (aka the void) - respawnWorld actually takes players to the designated respawn world for the world they're in when they die (I am still working on making this feature optional) - Usage is no longer displayed when users without permission to /universesoverride run the command. They are instead adequately told they do not have permission. - Mob spawn flags no longer reset on restarting or reloading. New Features: - using /uo or /um without any of the required arguments will now open a GUI to change settings more quickly - Per World Inventories! Worlds can be grouped and share the same inventories (save-inventory-on-death is meant to be used if game rule keepInventory is set to true. Keep that in mind.) - Per World Stats! These can be grouped as well. Hearts, food points, and XP will be different for each world like inventories - Universe Nethers is an add-on plugin that won't run without Universes installed. With each generated overworld, it will generate a nether, if enabled, and any portals in the created overworld will go to that nether. (Do to a small oversight, it is currently impossible to use the universe nethers without Universes auto-generating a nether world on creation of an overworld. The generated nether can, however, be safely deleted. Nether portals will simply become useless in that world) Anyway, here's the video. Please do watch:1.2.2May Thou Speakest True to Thine Own HomelandJul 16, 2019 Hello all! This is a fairly sizeable update, and took quite a bit of work. First the simple components: - Order of checks for various commands has been fixed. Previously, some commands would display usage if a player without permission type the command with invalid or missing arguments. - Permission check included in the reload command (which is an entirely useless command by the way, and will probably be removed in a future update) Now the bigger, more important part of this update. Universes now includes SPANISH! There is now a config.yml file. To change the language to Spanish, simply open this file, change lang: to es, and save it. Then you will have to delete the currently existing world-settings.yml so it can regenerate all the options contain in the file in spanish. THIS WILL RESET ANY CHANGED SETTINGS! Worlds will load fine, but settings will be returned to their defaults. Once you've done that, simply restart or reload the server, and the plugin will be all in Spanish. (Special thanks to Wyros for his help with the translations).1.2.1Minor BugfixJun 25, 2019 This is a brief update to fix a bug in the import command. The statement that verified that all required arguments be given was not in the right place and as a result was allowing index errors to occur and break the command. This update fixes that.1.2Big Bug FixesJun 22, 2019 Hello all! This update fixes several big bugs that people were experiencing. First, when a nether world was created, it would be turned into an overworld world when the server restarted. Second, if the default world of server was not called "world" the plugin would bug out and not function due to how it was creating the settings for the default worlds. Both of these bugs have been fixed. Also, some preliminary code has been added in for the upcoming Universe-Nethers plugin. This new plugin will allow for created overworld worlds to have their own nethers. The code that was added is currently inactive without the Universe-Nethers plugin and will not affect the functionality of this plugin.1.1Teleportation HotfixJun 14, 2019 It was brought to my attention a few days ago that I hadn't listed the teleport command in the description of the plugin or in the plugin's help command. The command has, indeed existed since the beginning, but due to a small oversight it did not seem so. This small update fixes that. I apologize for this minor bug.1.0Jun 6, 2019
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