
DataPackPlus
Adds faster math commands, accessing entity variables, and other useful features for datapack developers.
About this Mod
DataPackPlus (DP+)
A helpful Minecraft Fabric mod to improve the lives of data pack developers!
Report Bug
·
Request Feature
About the project
My friend Nedraw is a datapack developer, and we're working together on modding and datapack development. To help him out, I made an api for him, so he can make datapacks easier and with better performance.
I decided to open-source and publish this so I can help other people out.
Here are the features this mod adds.
/data math
This command allows you to do more complex and faster math operations.
Here are some examples on how to use the command:
/data math <operation> with <input_nbt> (Will just show the result in chat)
/data math <operation> storage <storage_identifier>
/data math <operation> storage <storage_identifier> <nbt_subpath>
/data variable
This command allows you to set and get specific variables for an entity.
Here are some examples on how to use the command:
/data variable <add|set|get> <variable> (Will just show the result in chat if get)
/data variable <add|set|get> <variable> to <storage_identifier>
/data variable <add|set|get> <variable> to <storage_identifier> <nbt_subpath>
Ridable players
You can have entities mount and dismount onto players; the player being ridden cannot force the entity to dismount.
Example of using /data math (the NBT schema is the same for variable)
/data modify storage minecraft:test in set value [43,35] (Storage nbt: {in:[43,35]} )
/data math add storage minecraft:test (Storage nbt: {in:[43,35],out:[78.0d]})
Math operations
For all arithmetic operations, the input is an array of numbers of any size. If the size is more than 2, it will treat it as chaining the operations, for example, if it's an add operation with 4 inputs, it will sum it all up.
If you want to know what these operations are, just search for them.
| Operation Name | Input Size | Notes |
|---|---|---|
| add | 2 | |
| subtract | 2 | |
| multiply | 2 | |
| divide | 2 | |
| mod (modulo) | 2 | |
| negate | 1 | |
| factorial | 1 | |
| power (exponentiation) | 2 | |
| root (nth root) | 2 | |
| distance | 2 | input: [x,y,z], [x,y,z] |
| distance_squared | 2 | input: [x,y,z], [x,y,z] |
| rad2deg (radians→deg) | 1 | |
| deg2rad (degrees→rad) | 1 | |
| sin | 1 | |
| cos | 1 | |
| tan | 1 | |
| arcsin | 1 | |
| arccos | 1 | |
| arctan | 1 | |
| arctan2 | 2 | |
| ceil (round up) | 1 | |
| round | 1 | |
| floor (round down) | 1 |
Variable Types
| Variable Name | Description | Type | Accessors |
|---|---|---|---|
| motion | The entity's motion/velocity | [double, double, double] | Get, Set, Add |
| hunger | The entity's foodLevel/Hunger and Saturation | [double (hunger), double (saturation) ] | Get, Set, Add |
| health | The entity's health | [double (0 to 20.0) ] | Get, Set, Add |
| held_slot | The player's selected hotbar slot | [int (0 to 8) ] | Get, Set, Add |
| fall_distance | How far the entity has fallen, 0 if they are not falling | [double] | Get |
| dimension | The entity's dimension/world with namespace | [string] | Get |
| position | The entity's xyz position | [double,double,double] | Get, Set, Add |
| angle | The entity's yaw and pitch angle | [double (yaw), double (pitch) ] | Get, Set, Add |
Available Versions
How to Install DataPackPlus on Your Server
Order Server
Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).
Set fabric Loader
In the panel under "Egg", select the fabric loader and matching Minecraft version (1.21.7).
Install Mod
Open the mod browser in the dashboard and search for "DataPackPlus". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.
Compatibility
Mod Loaders
Minecraft Versions
1.21.7
Server-side
✓ RequiredRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
DataPackPlus server crashes on startup – what to do?
Most common cause: wrong fabric version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (1.21.7). You can switch loaders with one click in the panel.
Is DataPackPlus compatible with fabric?
DataPackPlus officially supports fabric for Minecraft 1.21.7. The Mado dashboard automatically detects incompatible loader combinations.
Server lagging with DataPackPlus – how to optimize performance?
Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if DataPackPlus consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.
Similar Mods
Rent Modded Server
Install DataPackPlus with just one click on your server.