Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Links
Tags
Creators
Details
Pondus Inventory FI
An addon for Sable that makes every block and every item pull its weight—literally.
I warn you: this mod is still under active development. To make it work with other mods, you will need to manually adjust the settings. You have been warned!
What does it all mean?
Pondus Inventory FI is a companion mod for the Sable physics engine. It provides you with an incredibly detailed system for determining how much blocks and objects actually weigh. Do you want to change the mass of the block on the fly using settings or in-game commands? You can. It also looks inside chests, barrels, and any other containers and adds weight to whatever is holding them up— so your airship suddenly becomes much heavier when the cargo hold is full. Ideal for builds using TerraFirmaCraft, Create, Sable, or anything else where realistic mass and balance are important.
What can it do?
Mess with block mass any way you like
Set a custom base weight for almost any block using the config or the /pondus mass command. You can even target entire groups of blocks with tags like #minecraft:planks or #tfc:ores. And the config doesn’t just take numbers—you can write simple math expressions right in the file.
Count the weight of everything inside containers
Any container (chest, barrel, Create’s moving contraption, you name it) automatically adds the total weight of all the items stored inside. You can tweak an inventory_multiplier to balance things out (maybe only 80% of the contents count), and decide whether the container block’s own mass is included or not.
Configs that actually make sense
There are separate config files for blocks (blocks.json) and items (items.json), both using a clean JSON format. Expressions like "base_mass": "2.5 * stack_size" are fair game. And you can reload everything on the fly with /pondus reload—no server restart needed.
Getting it set up
Requirements
You need Sable. That’s it.
Config files
You’ll find them in config/pondus_inventory_fi/.
blocks.json – sets the rules for blocks. Example:
{
"minecraft:chest": {
"block_id": "minecraft:chest",
"base_mass": "2.5",
"inventory_multiplier": 0.8,
"include_container_mass": true
},
"tfc:sand/red": {
"block_id": "tfc:sand/red",
"base_mass": "0.1",
"inventory_multiplier": 1.0,
"include_container_mass": false
},
"#minecraft:planks": {
"block_id": "#minecraft:planks",
"base_mass": "0.5 * stack_size",
"inventory_multiplier": 1.0,
"include_container_mass": false
}
}
items.json – item weights. Example:
{
"minecraft:iron_ingot": {
"item_id": "minecraft:iron_ingot",
"mass": "0.5",
"per_stack": true
},
"tfc:metal/ingot/cast_iron": {
"item_id": "tfc:metal/ingot/cast_iron",
"mass": "1.2 * nbt_power",
"per_stack": true
}
}
Quick rundown of the parameters:
base_mass/mass– a number or an expression ("2.5","0.5 * stack_size","1.0 + nbt_power").per_stack– iftrue, the mass is multiplied by the number of items in the stack.inventory_multiplier– multiplier for the total weight of items inside the container (e.g.0.8= 80%).include_container_mass– whether the container block’s own mass counts on top of its contents.
In-game commands
All commands need operator-level permissions (level 2). Here’s what you can do:
| Command | What it does | Example |
|---|---|---|
/pondus mass <value> block |
Set the mass of the block you’re looking at | /pondus mass 5.0 block |
/pondus mass <value> item |
Set the mass of the item you’re holding | /pondus mass 0.3 item |
/pondus mass <value> tag <id> |
Apply a mass to every block/item with that tag | /pondus mass 1.0 tag #tfc:ores |
/pondus reload |
Hot-reload all configs and clear caches | /pondus reload |
/pondus sync |
Rebuilds physics for all SubLevels (use after mass changes) | /pondus sync |
/pondus config showmass |
Shows the mass of items when hovering over them in the inventory | /pondus config showmass true |
/pondus config showblockmass |
Shows the mass of blocks when hovering over them in the inventory | /pondus config showblockmass true |
For mod & pack developers
You can register masses straight from code:
// Register a block
MassRegistry.registerBlock("minecraft:stone",
new BlockMassEntry("minecraft:stone", "3.0", 1.0, true));
// Register an item
MassRegistry.registerItem("minecraft:diamond",
new ItemMassEntry("minecraft:diamond", "0.3", true));
// Register by tag
MassRegistry.registerBlock("#minecraft:logs",
new BlockMassEntry("#minecraft:logs", "0.8", 1.0, false));
Custom NBT data is exposed through the pondus_inventory_fi:mass_params component:
// Reading
double power = InventoryMassCalculator.getCustomDataValue(stack, "power", 1.0);
// Writing
InventoryMassCalculator.setCustomDataValue(stack, "power", 2.5);
If you change configs at runtime, don’t forget to invalidate caches:
ModConfig.CONFIG.reload();
InventoryMassCache.clear();
// Then run /pondus sync on the server
Found a bug?
Great! (Well, not great, but you know what I mean.) Here’s what helps me the most:
- Grab the log from
logs/latest.logand search forpondus_inventory_fi. - Tell me the mod version, Minecraft version, NeoForge version, and Sable version.
- Describe exactly what you did, what you expected, and what happened instead. If there’s an error, paste the relevant part of the log.
License: MIT. Use it, remix it, share it—just keep the credit.
Developer: CatCosYT & Fractal Interactive
Discord: https://discord.gg/pZ42QYZTD6


