MelonLib
MelonLib is a library mod for the mods of MelonStudios. Alongside various utility tools, like StackPredicates, StatePredicates and the RenderMelon, there is also a built-in BlockDictionary.
Thats right: OreDictionary, but for blocks!
Anyone is allowed to use this for their mods; in fact, it is greatly recommended to make sure that the block dictionary system will be a second nature of 1.12.2.
All Versions
+ Add Version- Moved networking to event based channel to reduce overhead
- Extra serialization functions
- Added EntityDictionary, it's like OreDictionary but for entities
- Small bugfixes
- Allow writePacket() and readPacket() to throw IOException
- More classes can now be serialized to TrackedByteBuf
- Reworked tile entity synchronization
- TE sync now uses ByteBufs directly to remove NBT overhead (THIS WILL BREAK WITH NON-UPDATED MODS!!!)
- TEs in the same chunk will now be bundled if that option is enabled
- Removed embedded spongepowered mixins in favour of a more compatible option
- Embedded JOML
- Fixed FluidIngredient
- Fixed recipe sync being broken server side
- Added recipe types that allow for easy synchronization of recipes
- Added UniversalRecipe that allows others to add recipes to registered registry types via IMC
- Added various other recipe utilities, such as (fluid) ingredients
- Added the DimensionTeleporterSoundFix
- It can be used by calling the following code in mod init:
FMLInterModComms.sendMessage("melonlib", "DimensionTeleporterSoundFix", "path.to.your.Class");
``- It disables the vanilla portal sound for the specified ITeleporter type
- Fixed TileEntity sync packet having the same ID as the request packet when the mod is loaded serverside
- Added new experimental TileSyncFix to synchronize TileEntities at the end of the server tick instead of at the end of the TileEntity tick
- MetaBlock no longer throws exceptions when using a metadata that would normally be an invalid blockstate
- Added treeLeaves blockdict to leaves
- Disabled the PacketStaller as it caused more issues than it fixed
- Fixed PacketRequestSyncTE
- Added config to disable dict entry tooltip
Fixed server crash and added ClientPacketStaller
- Updated TileEntityOptimizedBase
- Added IEntityTile, extension of ITileEntityProvider with extra utilities
- Updated /blockdict and /oredict command to no longer flood the chat but instead write output to a file
- Expanded AABB class with bounding box merging functions
- Added FileUtil with basic file utilities
- Patched some problems with ISyncedTE
- Added ISyncedTE for easy TileEntity data synchronization
- Added TileEntityCachedRenderBB for render optimizations
- Added in a crash prevention for when an exception is thrown during tooltip collection
- Added the ItemBlockVariants and IMetaName
- Added Sorters for ItemStacks, MetaBlocks and MetaItems
- Added the EntityPredicate
- Added the AdvancementUtil
- Added a class to get the current MinecraftServer instance
- Added an API package for MelonStudios mod APIs
- Added the APICreate as an API for Create Legacy
- Added the APIBlockDisplay as an API for Block Display (coming soon)
- Added more State- and StackPredicates
- Added /blockdict and /oredict command
- Added the Localizer class
- The block- and oredict tooltip can now be localized
- Added configuration
- Added a MetaBlock-cache to save memory
- Added StatePredicates
- Added StackPredicates
- Added the BlockDictionary (with vanilla entries pre-registered)
- Added the RenderMelon
- Added the StackUtil
- Added the AABB (Bounding Box helper class)
- Added many default StatePredicates and StackPredicates