LazuLib
Modding library containing common utils for other mods.
If you're a player, you may be required to install this mod in order to use others.
📚 Features for mod developers
- Math expression parser and highlighter supporting custom variables and functions. Useful for JSON reload listeners to declare custom datapack formats to extend your mods with dynamic expressions that can be rendered in-game and evaluated with arguments.
- Failure tolerant reflection utils, including soft field/method/constructor wrappers. Convenient for non-critical features, if you really want non-critical features.
- Custom Vec3d and Vec3f mutable vector implementations, offering many useful methods for rotations.
- JSON to NBT parser, useful to load NBT from custom datapack formats.
- NBTPath: Easy access to NBT values using dot-separated paths. Useful to delete and create compound structures.
- NBTPredicate: Serializable NBT predicates, such as {Fireworks.Flight <= 3}. Supports lists and complex predicates, though it's not perfect.
- NBTCompareHelper: Compare NBT tags on specific paths with ease.
- Base packet classes to carry player and world references across sides automatically.
- Base distributed packet class, which is sent to the server and then relayed to other players (usually those tracking the sender) if validated on the server. If the packet is marked as invalid, it can be bounced back to resync the erroring player. Useful to synchronize player initiated actions to all players tracking the actor and the server.
- Base NBT inheriting shaped recipe type, which can use uppercase letters in the recipe shape to mark ingredients as NBT sources for the result item. Useful for upgrade-like recipes that apply to items carrying NBT or enchantments which should be preserved.
- Audio utils for crossfading and creating tickable sounds attached to players.
- Text component util to split components on line breaks (even translated ones on the client) into special lists that can broadcast formatting methods to all the text lines. Useful for tooltips or translated text containing multiple lines.
This library is licensed under the MIT License, so if you only need a certain feature but don't want to burden your users with an additional dependency, you're very welcome to just snatch it from the source. Otherwise, I appreciate you using my library.
❓ Help
This mod has a wiki, which includes some helpful tips about flying, and describes how you may configure this mod to your liking.
Also, if you're having any trouble, or maybe just want to say hello, feel free to drop by our Discord Server.