Releases: JeremyFail/MassiveCraft
v3.4.0 ALPHA-2
Overview
This alpha release adds CreativeGates into the repository and has been updated to support Minecraft 1.21.4. The beginnings of a compatibility layer have also been added to Factions. Also a couple bug fixes.
Features
CreativeGates
Like MassiveCore and Factions before it, this new release of CreativeGates is not compatible with prior versions of Minecraft, as there were numerous breaking changes made to both Spigot and Paper's APIs in recent Minecraft versions (including a hard fork of Paper from Spigot) which has resulted in needing to update the minimum API version to 1.21.4.
Factions
The beginnings of a compatibility layer between FactionsV1/FactionsUUID and Factions3 is in the works. This will allow us to translate API calls for FactionsUUID to Factions3. While not as efficient as a direct integration, it will expand our capabilities in the long run to support other plugins creating integrations. Theoretically, this will allow any plugin that integrates with FactionsUUID to integrate with Factions3. Such integrations will not be officially supported, but this at least will allow many features to work that would not have otherwise. This compatibility layer is not robust yet, and still needs some work. I plan to complete it (or at least the majority of it) for the full 3.4.0 release.
Bug Fixes
Factions
- Fixed a bug with leads, where a user could detach a mob connected to a lead and fence post in claimed land (this was a pre-existing bug)
- SlimeFun4 incorrectly attempts to load Factions3 as FactionsUUID, causing a console error when booting a server that has both SlimeFun4 and Factions3 installed. The new compatibility layer mentioned in the features list above should allow SlimeFun to provide proper compatibility with Factions3, but is not fully tested.
- Blocks, Items, and Entities that were added between 1.15 and 1.21.4 were not yet being protected/supported. This meant that certain mobs could still spawn when mob spawning was disabled (or animals for that matter), and certain blocks/items would allow interaction in claimed land when they shouldn't.
- Properly protected Block/Item updates include:
- Beehives/nests
- New Buckets (multiple added since 1.15)
- Chiseled Bookshelf
- Crafter
- Decorated Pot
- Glow Item Frame
- Lodestone
- Potted plant variants (multiple added since 1.15)
- Vault
- Ender Chests
- New Door/Trapdoor/Fence Gate variants (multiple added since 1.15)
- Boats with Chests
- All Sign variants (since sign editing was added in 1.20)
- Brushable blocks (since archaeology was added in 1.20)
- Copper (since copper waxing was added in 1.15)
- Properly prevented entity (mob/animal) spawning support includes:
- Allay
- Armadillo
- Axolotl
- Bee
- Bogged
- Breeze
- Camel
- Creaking
- Frog
- Glow Squid
- Goat
- Hoglin
- Mooshroom (technically was already correctly supported, but fixed a bug with it)
- Piglin
- Piglin Brute
- Sniffer
- Strider
- Tadpole
- Warden
- Zoglin
- Zombified Piglin
- Properly protected Block/Item updates include:
Known Issues
- With the addition of the compatibility layer, in testing SlimeFun4 (which was the reason it was added), it was discovered that SlimeFun does not properly check for when admin override/bypass mode is enabled when checking if a user has permission to access SlimeFun-related blocks in protected land. This means that if you are trying to access blocks of another faction, it will not work, even if you are in admin override/bypass mode. I will be working with SlimeFun to see if we can have them implement a fix.
IMPORTANT DISCLAIMER
This is an alpha release. I recommend exercising caution if considering running this in a production environment. Please test this in a test server before even considering deploying to your main production server! Also remember that bugs may exist - please file them in the Issues tab if you find them!
v3.4.0 ALPHA-1
Overview
This alpha release updates MassiveCore and Factions to support Minecraft 1.21.4. This release is not compatible with prior versions of Minecraft, as there were numerous breaking changes made to both Spigot and Paper's APIs in recent Minecraft versions (including a hard fork of Paper from Spigot) which has resulted in needing to update the minimum API version to 1.21.4.
Bugs
The last release by magnusulf (v3.3.3 - available from Spigot at https://www.spigotmc.org/resources/factions3-for-1-13.63602/) is several years old, which has surprisingly survived a long time without many issues (though there are some known bugs). This particular release is not focused on fixing any existing bugs (though with some upgrades to internal libraries, it's possible some bugs have been fixed unknowingly). Rather, this release is simply focused on getting the plugin updated to run on the latest Minecraft version.
If you find bugs with this release, please submit an issue in this fork and I will take a look at it when I can. I am doing this as a side-project, but as time permits, I will work on issues where I can. If the bug was pre-existing to this release, please note that in the issue. Note that I have not done much testing and am looking for testers who can assist. Please reach out to me if you are willing to help out with testing.
Changelog
For anyone interested in technical details of what updates were made...
- Recent Spigot versions no longer include the
apache.commons
project, meaning any plugins using the commons library broke when it was removed. MassiveCore and Factions used the commons library in several places. I have refactored all usage ofapache.commons
to private classes (I copied the Apache source in most cases for best compatibility). - Recent updates to Paper broke all usage of reflection that depended on specific Minecraft versions (starting with MC1.20.5). I updated the code where the versions were retrieved to something that will work for both Spigot and Paper (and hopefully should continue to work going forward).
- Recent API changes to the Spigot API changed various Enums. These were not heavily used (and in some cases not used at all) by Factions or MassiveCore itself. Other plugins that may use MassiveCore (if there are any still active out there...) may need to check that they still function with this update.
- Some APIs that MassiveCore was using have been removed from Spigot entirely in recent versions. I refactored a few of these to use new logic that should accomplish the same thing, however, there are still many deprecated methods and classes being referenced that should be updated in future releases as they will likely be removed from future releases of Spigot/Paper. The hard fork of Paper has made this challenging, so certain overall changes to the plugin may be needed in the future to support both Spigot and Paper.
- With the API now looking at MC1.21.4 exclusively, I updated dependencies of integration plugins. If you experience any integration issues, please update to the lastest version of said integration for MC1.21.4 and if the issue still persists, please file a bug in the Issues tab.
Known Issues
- This alpha release does not contain a version of CreativeGates. I plan to update that as well.
IMPORTANT DISCLAIMER
This is an alpha release. I recommend exercising caution if considering running this in a production environment. Please test this in a test server before even considering deploying to your main production server! Also remember that bugs may exist - please file them in the Issues tab if you find them!