Pondus Inventory
ModThe mod allows you to add the calculation of items in storage on ships to the Sable physics calculations.
Type
Mod
Modrinth Downloads
825
Modrinth ID
jkDxc7XT
Last Updated
Jun 19, 2026
Description
Pondus Inventory FI
An addon for Sable that makes every block, item, and fluid 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!
ℹ️ If you want to help with the blanks for the weights of items, blocks, and liquids from various mods, write about it in the channel ⌬・synthesis-of-ideas. All whose configs will be listed on this mod page and in the mod description.
What does it all mean?
Pondus Inventory FI is a companion mod for the Sable physics engine. It provides an incredibly detailed system for determining how much blocks, items, and fluids actually weigh.
You can change the mass of a block, item, or fluid on the fly using settings or in-game commands. The mod also looks inside chests, barrels, fluid tanks, 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 of oil, or your portable water tank tips the scales when filled.
Ideal for builds using TerraFirmaCraft, Create, Sable, or anything else where realistic mass, balance, and fluid dynamics are important.
What can it do?
⚖️ Mess with block & fluid mass any way you like
Set a custom base weight for almost any block or fluid using the config or the /pondus mass command. You can even target entire groups with tags like #minecraft:planks, #tfc:ores, or #forge:water. The config supports math expressions — write things like "2.5 * stack_size" directly in the JSON file.
📦 Count the weight of everything inside containers
Any container (chest, barrel, Create's moving contraption, fluid tank, etc.) automatically adds the total weight of all items and fluids 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.
💧 Fluid mass calculations
Pondus now supports fluids via the NeoForge Fluid Handler capability. Define mass per bucket for any fluid, and the mod automatically calculates the weight based on the actual amount in millibuckets (mB). Perfect for realistic water towers, fuel tanks, lava reservoirs, or chemical processing setups.
🗂️ NEW: Namespace‑based configuration storage
Config files are now organised per mod inside config/pondus_inventory_fi/. Each mod (e.g. minecraft, create, tfc) gets its own subfolder, and inside that folder you place the standard blocks.json, items.json, and fluids.json.
Benefits:
- No more ID collisions between mods.
- Easier to manage, share, or version-control configs for each mod separately.
- The mod automatically migrates old flat config files (if present) into the new structure and backs them up in _migrated_backup.
Example folder structure:
config/pondus_inventory_fi/ ├── minecraft/ │ ├── blocks.json │ ├── items.json │ └── fluids.json ├── tfc/ │ ├── blocks.json │ ├── items.json │ └── fluids.json ├── create/ │ ├── blocks.json │ └── items.json └── _migrated_backup/ # created automatically if old configs existed ├── blocks.json ├── items.json └── fluids.json⚙️ Configs that actually make sense
Each JSON file uses a clean, simple format. Expressions like "base_mass": "2.5 * stack_size" or "mass_per_bucket": "0.8 + density_factor" 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.
(Fluid support requires mods/blocks that implement NeoForge's IFluidHandler capability)
Config files
All configs live in config/pondus_inventory_fi/<mod_namespace>/.
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", "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", "per_stack": true } }fluids.json – fluid weights. Example:
{ "minecraft:water": { "fluid_id": "minecraft:water", "mass_per_bucket": "1.0" }, "minecraft:lava": { "fluid_id": "minecraft:lava", "mass_per_bucket": "3.5" }, "tfc:olive_oil": { "fluid_id": "tfc:olive_oil", "mass_per_bucket": "0.92" }, "#forge:crude_oil": { "fluid_id": "#forge:crude_oil", "mass_per_bucket": "0.85" } }Quick rundown of the parameters:
Parameter Description base_mass / mass A number or an expression ("2.5", "0.5 * stack_size", "1.0 + nbt_power"). mass_per_bucket Mass in kg for 1000 mB (1 bucket). Supports expressions. per_stack If true, the mass is multiplied by the number of items in the stack. inventory_multiplier Multiplier for the total weight of contents inside a container (e.g. 0.8 = 80%). include_container_mass Whether the container block's own mass counts on top of its contents.💡 Fluid math note: Mass is calculated as mass_per_bucket × (millibuckets / 1000.0). So 500 mB of water (mass_per_bucket: 1.0) weighs exactly 0.5 kg.
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> fluid <fluid_id> Set the mass per bucket for a fluid /pondus mass 1.0 fluid minecraft:water /pondus mass <value> tag <id> Apply a mass to every block/item/fluid 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 trueFor mod & pack developers
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 a fluid MassRegistry.registerFluid("minecraft:water", new FluidMassEntry("minecraft:water", "1.0")); // Register by tag MassRegistry.registerBlock("#minecraft:logs", new BlockMassEntry("#minecraft:logs", "0.8", 1.0, false));Work with custom NBT data:
// Reading double power = InventoryMassCalculator.getCustomDataValue(stack, "power", 1.0); // Writing InventoryMassCalculator.setCustomDataValue(stack, "power", 2.5);Fluid mass calculation internals:
// FluidMassEntry handles millibucket → kg conversion automatically FluidMassEntry water = new FluidMassEntry("minecraft:water", "1.0"); double massFor500mb = water.getMass(500); // Returns 0.5 kg // Expressions are supported too FluidMassEntry oil = new FluidMassEntry("tfc:olive_oil", "0.92 * density_mod");Runtime config changes:
If you change configs at runtime, don't forget to invalidate caches:
ModConfig.CONFIG.reload(); InventoryMassCache.clear(); // Then run /pondus sync on the serverFound 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.log and search for pondus_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.
- For fluid-related issues: Include which fluid tank/block you tested with and whether it implements IFluidHandler.
License: MIT. Use it, remix it, share it — just keep the credit.
Developer: CatCosYT & Fractal Interactive
Discord: https://discord.gg/pZ42QYZTD6
Compatibility
Mod Loaders
Game Versions
Similar Mods
Trees Revariated (Varietree Port)
Port of Varietree mod that makes trees in your worlds more natural and less homogeneous.
Pepsi's Auto Bridger
Automate bridging with a new machine that generates and places cobblestone in any direction
Fractal
Library for item subgroups for the creative menu
CarpetGUI
An easy to use GUI for CarpetMod
Copper Lamp
Copper lamps emit light unless powered by redstone. Copper capacitor captures lightning power for later use
Create: Kinetic Illuminator
Adds a new curiosity to Create: the Kinetic Illuminator can create and destroy invisible light blocks.