- MixinBooter is now required, fixes Mixin not initializing and incompatibility problems
- Switched to a Json-based (Gson) config to fix loading problems
- Added missing feature toggles
- Disabled
removeNullTileEntities
by default to fix problems with Botania flowers - Incompatible with Forged Carpet as it forces the game to crash when its tick loop injection fails to apply
- Fixed static instances relying on the mod class
- Fixed a stack overflow exception in the mob spawner check
- Entities now use a shared Random instance
- The entity data manager now uses an Int2ObjectOpenHashMap for entries which is extremely fast
- The game will no longer attempt to add null block info to a crash report
- Region files have their entire header loaded
- Region file cache now trims the least accessed region instead of closing all region files upon hitting 256 regions
- The chunk provider caches the last accessed chunk which can make a big difference in chunk loading and world generation as the game accesses the same chunk multiple times
- getCanSpawnHere in EntityWaterMob actually checks if the entity can spawn in the given location
- Enchantments are sorted by their IDs so that the game doesn't think two items that are the same are different
- Chunk saving now uses an actual queue and polling which fixes slowdowns when many chunks are queued to be saved
- A pointless 10ms sleep call was removed from the chunk save thread