Moxvallix's Datapack Creation Library
Moxlib aims to make Datapack creation fun and enjoyable.
With a predictable API, and a focus on data driven functionality, Moxlib serves as an excellent foundation to any Datapack project.
Moxlib aims to run as little as possible on the tick function. Most functions in the pack only run when they are called.
Another focus of the pack is instantaneous functions. Most of the functions in the pack have been designed to run in a single tick, and do not use schedules, or other timer based methods.
Moxlib is licensed under the GNU LGPL, meaning you are free to use it in your own Datapacks, themselves under any license, but any changes you make to Moxlib must be released under the terms of the LGPL. See LICENSE.md for full license.
Suggestions and contributions welcomed!
Any function outside of the
moxlib:api folder is considered private, and is not supported.
Functions that take in data storage as an input, will read and write data at the same path you would use to call the function.
/function moxlib:api/helpers/block/get writes to
/data get storage moxlib:api/helpers/block/get
tui modules are an exception, using more semantic language for their
respective tasks. See their individual documentations.
Functions will usually take in a
target. Think of this as the main input. It is the piece of
data that the function will manipulate. Functions will occasionally ask for other data as well.
Functions, if they output anything, will write to
output. Optionally, they might also record
their success to a
success tag, although not all functions implement this.
Some functions and modules are marked as "experimental". These require Moxlib Exp to function.
The helpers module contains small, miscellaneous, but helpful functions.
These functions are too small and specific to warrant a module of their own.
The data module contains functions specifically for working with arrays of NBT data.
The test module contains functions for testing other functions.
Currently, it can only test to see that a function returned the correct value.
The TUI module allows for easy creation of data driven TUIs.
The Math module provides some helpful math functions.
The Player module exposes some helpful information about the player.
The String module provides functions to manipulate strings.
Moxlib provides a dimension for storing and accessing blocks. (Requires Moxlib Exp)