mcMMO icon

mcMMO 2.2.035

The #1 RPG experience for Minecraft!

Page 1 2 3 4 5
2.1.208 Jan 11, 2022
Java 16 Fixed + SEVERE config bugs fixed grab this ASAP

It would be a good idea to backup your config files in /plugins/mcMMO/ before installing this update in case you experience bugs, I've tested this update thoroughly but you never know. The code rewrites were pretty big, so you should back them up just in case! Report any issues on our GitHub.

  • Significantly rewrote to how mcMMO loads/updates config files
  • Fixed a bug where huge config files caused the server to take forever to start/shutdown
  • Fixed config files duplicating comments and updated their code to use Spigot API (thanks the456gamer)
  • mcMMO now repairs config files (removing duplicate comments, see notes)
  • Updated lithuanian locale (thanks dexasz)


NOTES:
Due to a change in Spigot mcMMO started growing config files at an alarming rate until they became so big they wouldn't load, and well before they got to that stage they slowed down loading the server
mcMMO now uses the Spigot API in a smarter way for config files

2.1.207 Dec 27, 2021
Java 16 support + bug fixes + misc changes
Java 16 is now supported, but you should be using Java 17 when you can
Fixed an IndexOutOfBounds exception with our BlockTracker
Fixed a bug where leveling up a party at level cap would spam the chat with messages
mcMMO will no longer use enchanted repair materials (thanks JeBobs)
Added an option to allow enchanted repair materials 'Skills.Repair.Use_Enchanted_Materials' in config.yml
Added unicode (UTF-8) support to locale files (no more UTF-16 codes needed)
Added locale key 'Scoreboard.Disabled' to en_US
Added locale key 'Scoreboard.NotSetupYet' to en_US
Fixed a bug where Salvage sent messages even though the event was cancelled (Thanks TheBusyBiscuit)

NOTES:
Java16 support will not last forever, this is a temporary measure for servers who are running Java 16 and aren't yet on MC 1.18.1

Please report any bugs to our github (latest MC version only pls) and with your latest.log file if relevant
2.1.206 Dec 12, 2021
Memory leak fixes + other fixes
Fixed a memory leak involving Herbalism under specific circumstances
Fixed a memory leak involving Rupture under specific circumstances
Fixed a memory leak involving Dodge
Fixed a memory leak involving Endermen and block pickups
Fixed a memory leak from plugin conflicts when double drops get activated
Fixed a memory leak that required a specific config.yml setup with mob health bars
You can no longer set mob health bars to -1 in config.yml to set it to display permanently (this was problematic behavior)
Fixed a bug preventing Action Bar messages from showing
Fixed a bug where Alchemy XP wasn't being granted
Lowered the default volume of level up from .75 to .3 in sounds.yml (delete sounds.yml to get this change automagically)
Updated adventure platform dependency
Updated to use Java 17

NOTES:
mcMMO will target the newest version of MC moving forward, any backwards compatibility with prior versions of Minecraft should be considered a side effect rather than intended.
2.1.205 Nov 14, 2021
More Alchemy Fixes + Memory leak fixes
Fixed yet another exception preventing Alchemy from working (thanks NemuruYama)
Added some code to cleanup potential memory leaks

NOTES:
Sorry for the delay in this patch, I have had a terrible cold all weekend, feeling better now
2.1.204 Nov 10, 2021
Alchemy Bugfix + Double smelt changes
Fixed IndexOutOfBoundsException (thanks gecko10000) (related to Alchemy)
Added double smelt to copper ingot and netherite scrap (thanks Lyther)
2.1.203 Nov 9, 2021
Bug Fixes + Java 16 + 1.17.1 Required
mcMMO now requires Java 16
mcMMO now requires the newest version of Minecraft (currently 1.17.1)
Fixed several API breaks (mostly affected Alchemy)
Fixed a bug relating to Shake percentages (thanks Lyther)
Fixed hexcolors not displaying correctly in level up milestone broadcasts (thanks gecko10000)
(API) Added deprecated constructors for PlayerProfile (thanks PikaMug)
mcMMO has had many of its dependencies updated to newer builds

NOTES:
If you want to play mcMMO on older versions, simply use 2.1.202 instead
Keeping mcMMO backwards compatible with older versions is getting messy, and I'd rather be able to focus my attention at newer features than having to make an elaborate build process (or alternatively hacky code) to support older versions of the game
Furthermore, it seems most people are playing 1.17.1 by a wide margin
You may have trouble compiling the source code if your maven is not setup to run JDK16, if you get any errors when compiling this is likely the reason

The data from bstats went into making this decision (shoutout to Qixils for typing this up too)
71.9% of servers are running 1.17.X
97.9% of servers are running ≥1.16
99.3% of servers are running ≥1.15
2.1.202 Oct 5, 2021
Bug Fixes
Fixed a bug where mcMMO didn't reward XP for Kelp
Fixed a bug where mcMMO marked bonemealed Azalea trees as unnatural (and thus did not give XP or get affected by Tree Feller)
Added Amethyst_Block to experience.yml for Mining
Added Flowering Azalea Leaves to Tree Feller's white list
Fixed a bug where mcMMO didn't appropriately flag blocks as natural in some tree growing events
(SQL) Added more MySQL/MariaDB settings (allowPublicKeyRetrieval - thanks rosaage)
(API) Added CREATED_PARTY and DISBANDED_PARTY to EventReason (used in some party events - thanks PikaMug )
Party member name matching is no longer case sensitive (thanks Wariorrrr)
Updated zh_CN locale (thanks GhostDC)
Added some settings for over fishing (Settings are in experience.yml under Fishing_ExploitFix_Options - thanks tunagohan)

NOTES:
This means tree feller will correctly traverse flowering azalea leaves during its ability
Old Azalea trees made by bone meal in your world will still be unnatural, this fix only applies for new trees after this update is installed
2.1.201 Aug 10, 2021
Exploit Fixes + Impact Change + Rupture Tweaks + Misc Changes & Fixes
Tweaked the visual/audio effect for Rupture
(API) TNT is set as the source in Blast Mining (1.16.1 and up)
Fixed an exploit related to Ability Buffs remaining on tools
Blast Mining no longer drops Budding Amethyst since its not legal to obtain this item through normal gameplay
Added mcinspect and mmoinspect aliases to inspect command
Portuguese translation of Woodcutting changed back to Lenhador
Updated zh_CN (Chinese) locale, thanks GhostDC!
Major changes to zh_TW locale, thanks gregman98
Added '/skill keep' shortcut (for example /mining keep) thanks GriffinCodes
Impact is now more balanced as the formula has been changed (see notes) thanks emanondev

NOTES:
Impact will deal less durability damage to armors without unbreaking, and more to armors with unbreaking
2.1.200 Jul 2, 2021
Exploit Fixes + Misc Fixes
Fixed a major 1.17 exploit
Dodge will no longer trigger while blocking
Action Bar messages can now be disabled (thanks TheBusyBiscuit)
mcMMO is better at MC version parsing now (thanks stepech & TheBusyBiscuit)
2.1.199 Jun 15, 2021
SQL & Other bug fixes
Fixed IndexOutOfBounds error for servers running 1.17 or higher
Fixed a bug that caused MySQL/MariaDB to malfunction for 1.17 (see notes)
Renamed Deepslate Lapis Lazuli Ore to Deepslate Lapis Ore in experience.yml and config.yml
Added some code to prevent mcMMO from breaking if it doesn't recognize the version of the game
Optimized CompatibilitySupportLayer - this handles some of the logic for supporting multiple versions of the game
Added Unit Tests for MinecraftGameVersion

NOTES:
I have temporarily disabled SSL for MySQL/MariaDB for 1.17 ( proper fix coming soon )
2.1.198 Jun 11, 2021
1.17 Smelting Fix
Fixed a bug where Smelting didn't work with the new 1.17 materials
Updated dependency Adventure to 4.8.0 (thanks TheBusyBiscuit)
2.1.197 Jun 7, 2021
1.17 Support
This update adds compatibility for new mobs and blocks from 1.17
This build of mcMMO should be more compatible with certain versions of ViaVersion
Players are no longer launched from Minecarts when using a Fishing Rod (they are still dismounted) thanks lexikiq
Updated Japanese locale (thanks ViaSnake)
Updated Brazil Portuguese (pt_BR) locale (thanks Paulo Guilherme)
Added Goat to experience.yml for combat and taming
Added Axolotl to experience.yml for combat and taming
Added Glow_Squid to experience.yml for combat and taming
Added Glow Berries to Farmer's Diet
Updated Super Breaker to recognize the new pick-axe appropriate blocks
Updated Tree Feller to recognize Azalea Leaves

Added Rooted Dirt to experience.yml for Excavation
Added Small Dripleaf to experience.yml for Herbalism
Added Big Dripleaf to experience.yml for Herbalism
Added Moss Block to experience.yml for Herbalism
Added Cave Vines to experience.yml for Herbalism
Added Cave Vines Plant to experience.yml for Herbalism
Added Glow Lichen to experience.yml for Herbalism
Added Tuff to experience.yml for Mining
Added Calcite to experience.yml for Mining
Added Smooth Basalt to experience.yml for Mining
Added Block_Of_Amethyst to experience.yml for Mining
Added Budding Amethyst to experience.yml for Mining
Added Small_Amethyst_Bud to experience.yml for Mining
Added Medium Amethyst Bud to experience.yml for Mining
Added Large Amethyst Bud to experience.yml for Mining
Added Amethyst Cluster to experience.yml for Mining
Added Deepslate to experience.yml for Mining
Added Cobbled Deepslate to experience.yml for Mining
Added Copper Ore to experience.yml for Mining
Added Deepslate Redstone Ore to experience.yml for Mining
Added Deepslate Copper Ore to experience.yml for Mining
Added Deepslate Coal Ore to experience.yml for Mining
Added Deepslate Diamond Ore to experience.yml for Mining
Added Deepslate Emerald Ore to experience.yml for Mining
Added Deepslate Iron Ore to experience.yml for Mining
Added Deepslate Gold Ore to experience.yml for Mining
Added Deepslate Lapis Lazuli Ore to experience.yml for Mining
Added Lapis Lazuli Ore to experience.yml for Mining (was missing)

Added Moss Block to Bonus Drops for Herbalism in config.yml
Added Glow Berries to Bonus Drops for Herbalism in config.yml
Added Cave Vines to Bonus Drops for Herbalism in config.yml
Added Cave Vines Plant to Bonus Drops for Herbalism in config.yml
Added Tuff to Bonus Drops for Mining in config.yml
Added Amethyst Shard to Bonus Drops for Mining in config.yml
Added Calcite to Bonus Drops for Mining in config.yml
Added Smooth Basalt to Bonus Drops for Mining in config.yml
Added Block_Of_Amethyst to Bonus Drops for Mining in config.yml
Added Budding Amethyst to Bonus Drops for Mining in config.yml
Added Small_Amethyst_Bud to Bonus Drops for Mining in config.yml
Added Medium Amethyst Bud to Bonus Drops for Mining in config.yml
Added Large Amethyst Bud to Bonus Drops for Mining in config.yml
Added Amethyst Cluster to Bonus Drops for Mining in config.yml
Added Deepslate to Bonus Drops for Mining in config.yml
Added Cobbled Deepslate to Bonus Drops for Mining in config.yml
Added Raw Iron to Bonus Drops for Mining in config.yml
Added Raw Gold to Bonus Drops for Mining in config.yml
Added Raw Copper to Bonus Drops for Mining in config.yml
Added Copper Ore to Bonus Drops for Mining in config.yml
Added Deepslate Redstone Ore to Bonus Drops for Mining in config.yml
Added Deepslate Copper Ore to Bonus Drops for Mining in config.yml
Added Deepslate Coal Ore to Bonus Drops for Mining in config.yml
Added Deepslate Diamond Ore to Bonus Drops for Mining in config.yml
Added Deepslate Emerald Ore to Bonus Drops for Mining in config.yml
Added Deepslate Iron Ore to Bonus Drops for Mining in config.yml
Added Deepslate Gold Ore to Bonus Drops for Mining in config.yml
Added Deepslate Lapis Lazuli Ore to Bonus Drops for Mining in config.yml
Added Lapis Lazuli Ore to Bonus Drops for Mining in config.yml (was missing)

Added Cobbled Deepslate to experience.yml for Smelting
Added Raw Copper to experience.yml for Smelting
Added Raw Iron to experience.yml for Smelting
Added Raw Gold to experience.yml for Smelting
Added Copper Ore to experience.yml for Smelting
Added Deepslate Redstone Ore to experience.yml for Smelting
Added Deepslate Copper Ore to experience.yml for Smelting
Added Deepslate Coal Ore to experience.yml for Smelting
Added Deepslate Diamond Ore to experience.yml for Smelting
Added Deepslate Emerald Ore to experience.yml for Smelting
Added Deepslate Iron Ore to experience.yml for Smelting
Added Deepslate Gold Ore to experience.yml for Smelting
Added Deepslate Lapis Lazuli Ore to experience.yml for Smelting
Added Lapis Lazuli Ore to experience.yml for Smelting (was missing)

NOTES:
Another patch will follow this one shortly to add more 1.17 support, I am waiting on the Spigot API to test some stuff which isn't out yet.
You shouldn't need to edit your configs for this update, your configs should update automatically.
Expect some patches following this update for Axolotl and other new entities, waiting on the Spigot API to become available
If you run into any issues with ViaVersion or ViaBackwards, use the latest dev builds for each.
2.1.196 Apr 23, 2021
Rupture Tweaks
Removed the explosion from Rupture
Adjusted Rupture to play its particle effect less often
Fixed a bug where Rupture never applied to additional targets during Serrated Strikes
Fixed a bug where players without Rupture permission could use Rupture during Serrated Strikes
Fixed a possible null error for our SelfListener
Added locale string 'Swords.Combat.Rupture.Note.Update.One'
Updated locale string 'Guides.Swords.Section.1'
Crossbows can now be fished up with enchantments
(API) Added McMMOEntityDamageByRuptureEvent (thanks qixils)

NOTES:
For now Rupture is non-lethal, I may add back a lethal component at the end of its damage
Rupture will be in a state of change for a while as I receive feedback (give me feedback in Discord!)
Crossbows is not in the default fishing loot list, you'd have to add it yourself.
For Devs: McMMOEntityDamageByRuptureEvent extends EntityDamageByEntityEvent and uses CUSTOM type damage
2.1.195 Apr 19, 2021
SQL Hotfix
Fixed a null connection error which affected some SQL users
2.1.194 Apr 19, 2021
Exploit Fix + SQL Error Fix + Locale override made less confusing
Fixed an XP exploit
Updated SQL to not throw errors if upgrades.yml was reset for any reason
Updated SQL to use the newest driver path (and fall back to the old one if the new one doesn't exist on the server)
Locale override files are now named locale_override.properties (converted automatically/generated automatically)
Existing in use locale override files will be renamed to locale_override.properties and have some useful text put in them
mcMMO will now generate a locale override file with some detailed instructions if one doesn't exist (will be found in /plugins/mcMMO/locales/locale_override.properties)

NOTES:
If you were overriding locale before this update mcMMO will just rename the existing override file to locale_override.properties add some useful text and then load it
Remember you can use /mcreloadlocale to swap the edits in without restarting the server
2.1.193 Apr 16, 2021
Fix FlatFile Leaderboards/mcrank/mctop + Fix override locale not loading + Misc bugfixes + pl local
Fixed another bug where mcrank/mctop/leaderboards weren't loading
Fixed a bug where override locales weren't being loaded (but worked after a reloadlocale command)
(Unit Tests) Added a test to make sure leaderboards for FlatFile were working
Fixed blocks being dropped from blast mining even if yield was set to 0 (thanks Warriorrrr)
Fixed Tree feller not working entirely if one fake block break event is cancelled. (thanks Warriorrrr)
Fixes no woodcutting xp being rewarded if a tree is too big while using tree feller. (thanks Warriorrrr)
Updated pl locale (thanks Mich3l3k)
2.1.192 Apr 15, 2021
Fixed some DB console spam + another null name bug
Removed some debug messages from FlatFileDatabaseManager
Fixed another bug where player names could be saved as null for FlatFileDB (they will update on the players next login at the next save interval)
(API) Removed deprecation from com.gmail.nossr50.api.ExperienceAPI.getOfflineProfile(java.lang.String)
(API) Added com.gmail.nossr50.api.DatabaseAPI.doesPlayerExistInDB(org.bukkit.OfflinePlayer)
(API) Added com.gmail.nossr50.api.ExperienceAPI.getOfflineProfile(org.bukkit.OfflinePlayer)
(API) Added com.gmail.nossr50.api.ExperienceAPI.getOfflineXP(org.bukkit.OfflinePlayer, java.lang.String)
(API) Added com.gmail.nossr50.api.ExperienceAPI.getOfflineXPRaw(org.bukkit.OfflinePlayer, com.gmail.nossr50.datatypes.skills.PrimarySkillType)
(API) Added com.gmail.nossr50.api.ExperienceAPI.getOfflineXPRaw(org.bukkit.OfflinePlayer, java.lang.String)
(API) Added com.gmail.nossr50.api.ExperienceAPI.getOfflineXPToNextLevel(org.bukkit.OfflinePlayer, java.lang.String)
(API) Added com.gmail.nossr50.api.DatabaseAPI.doesPlayerExistInDB(java.lang.String)
(Unit Tests) Added some more unit tests to FlatFileDB
2.1.191 Apr 15, 2021
2.1.191
Fixed a bug related to our blocktracker
Fixed a bug that prevented the leaderboards from working on FlatFile in some circumstances
Some minor optimizations to our Block events
(Unit Tests) Added a test for initializing the leaderboard on FlatFile
2.1.190 Apr 15, 2021
Fix null error in BitSetChunkStore
Fix null error in BitSetChunkStore
2.1.189 Apr 14, 2021
Huge improvements to FlatFile DB + Many bug fixes
Fixed a bug that would remove components from death messages when players were killed by mobs (thanks lexikiq)
Rewrote how FlatFileDatabase verifies data integrity
FlatFileDatabase has much better data validation and will repair broken/invalid data much better
Fixed a bug where FlatFileDatabase users could have their names saved as "null" (names will be fixed the next time the player logs in)
Added 20~ unit tests for FlatFileDatabaseManager (see notes)
FlatFileDB now stores the last login of users again (was completely non functional for a while)
Newly created flat file databases (mcmmo.users file) will have a comment line at the top noting the date the database was created
Minor performance optimizations to FlatFile database
mcMMO will once again purge old users if the config option is on (see notes)
Fixed a bug where FlatFileDatabaseManager didn't properly upgrade older database entries to the newest schema
The setting to disable the mcMMO user block tracker has been moved from our "hidden config" to persistent_data.yml
Added 'mcMMO_Region_System.Enabled' to persistent_data.yml (don't touch this setting unless you know what you are doing)
Removed MHD command (it didn't do anything for a while now)
Removed UltraPermissions warning
Updated pl locale (Thanks Mich3l3k)
Fixed an IllegalPluginAccessException error that could happen during server shutdown
Minor performance optimizations to misc parts of the codebase
(API) Added com.gmail.nossr50.database.DatabaseManager.loadPlayerProfile(org.bukkit.OfflinePlayer)
(API) Deprecated com.gmail.nossr50.database.DatabaseManager.loadPlayerProfile(java.util.UUID, java.lang.String)
(API) Removed com.gmail.nossr50.database.DatabaseManager.newUser(java.lang.String, java.util.UUID)
(API) PrimarySkillType will soon be just an enum with nothing special going on
(API) Deprecated the members of PrimarySkillType use mcMMO::getSkillTools instead, deprecated members will be removed in Tridents & Crossbows (due soon)
(API) Some members of PrimarySkillType were removed and not deprecated (such as the field constants)

NOTES:
I spent over 26 hours refactoring FlatFileDB and writing unit tests for it, this will ensure that any changes in the code that could break the database are caught at compile time (so long as we have enough tests, could probably use more)
Regarding purging old users on the FlatFileDB, since this wasn't functioning for a while, the last login of users has been reset and if mcMMO hasn't seen that user since this update, it won't purge them as it has no way to know if they are truly an old user
I'm likely going to add SQLite DB as an option in the future, I spent time to fix up the FlatFileDB as some Unit Testing practice.
Ultra Permissions is SAFE to use with mcMMO, disregard previous messages stating otherwise
After getting in contact with the UltraPermissions devs and exhaustive testing, I have concluded that using UltraPermissions is completely safe with mcMMO. The users who had an issue with performance currently have an unknown cause, potentially it is from a plugin using the UltraPermissions API I really can't say without more data. My apologies to the UltraPermissions team for reporting an issue between our two plugins directly, as that is not the case. I would have tested it myself sooner but UltraPermissions was closed source and premium so I wasn't particularly motivated to do so, however I have been given access to the binaries so now I can do all the testing I want if future issues ever arise which I have zero expectations that they will.
Page 1 2 3 4 5