Pufferfish's Skills - MT Inventory Weight
ModIt lets a player's skill progression increase their maximum inventory weight capacity.
Type
Mod
Modrinth Downloads
15
Modrinth ID
oD9QMzJo
Last Updated
Jun 20, 2026
Description
Pufferfish's Skills InventoryWeight
Pufferfish's Skills InventoryWeight is a server-side add-on that connects MT Inventory Weight with Pufferfish's Skills.
It lets a player's skill progression increase their maximum inventory weight capacity, in two ways:
- Attribute reward (data-driven) — a skill node grants the Inventory Weight attribute directly. No Java needed; this is how the bundled "Carrying" tree works.
- Java event connector — the add-on reads a skill category's experience level and modifies max weight through MT Inventory Weight's event.
It also ships an optional, built-in "Carrying" skill tree you can enable per world.
This mod is not standalone.
MT Inventory Weight registers a vanilla-style attribute:
inventoryweight:generic.max_weightPufferfish's Skills can grant any registered attribute via its puffish_skills:attribute reward, so a skill node can grant max weight directly.
1. Attribute reward (data-driven, no Java)
In a category's definitions.json, a skill definition lists rewards. Point a puffish_skills:attribute reward at inventoryweight:generic.max_weight:
{ "type": "puffish_skills:attribute", "data": { "attribute": "inventoryweight:generic.max_weight", "value": 200.0, "operation": "addition" } } operation Effect addition / add / add_value Flat add (e.g. +200). Recommended. multiply_base / add_multiplied_base Add a fraction of the attribute base. multiply_total / add_multiplied_total Multiply the running total.Prefer addition. If the attribute base is 0, multiply_* operations may have little or no effect.
2. Java event connector (level-based scaling)
The add-on listens to MT Inventory Weight's max-weight event:
InventoryWeightEvents.MODIFY_MAX_WEIGHTand scales capacity by a skill category's experience level, read via Pufferfish's SkillsAPI (Category.getExperience().getLevel(player)). See the config below.
If a node grants the attribute (path 1) AND you scale the same value by level (path 2), the bonuses stack.
Built-in "Carrying" skill tree
The mod bundles an optional Pufferfish category, carrying:
- Registered as a Fabric built-in datapack at resourcepacks/carrying/ in the jar, so it shows up in the world-creation Data Packs screen, disabled by default.
- Nodes grant inventoryweight:generic.max_weight (flat and percent), with a small movement-speed node and a capstone.
- Earns experience from mining blocks and crafting items.
- The strong percent/mobility nodes are placed deeper in the tree, gated behind several flat nodes.
Enable it:
- New world → Create World → Data Packs → move "Carrying Skill Tree" to the active side, or
- Existing world → /datapack list, then /datapack enable "<id>".
Open the skills screen (default key K) to see the Carrying category.
Default pack vs. your own pack (modpack devs / server admins)
You are not locked into the bundled tree:
- Use the default — enable the built-in "Carrying Skill Tree" pack. No files needed.
- Override it — ship a datapack that redefines the carrying category under the puffish_skills namespace. A later-loaded pack overrides the built-in files (last pack wins per file). Keep the built-in pack disabled to avoid mixing.
- Add a separate tree — define a NEW category with a different id (and your own namespace) and leave the built-in carrying off. Cleanest for modpacks: no conflicts.
Whichever pack's config.json wins must list every category you want loaded.
Configuration (Java event path)
Synced server config via fzzy_config:
config/pufferfishs-skills-inventoryweight/server-config.*General
Option Default Description enabled true Master switch. minimumMaxWeight 1.0 Floor for the final max weight.category (default on)
Scales by one configured category's experience level.
Option Default Description category.enabled true Enable category-based scaling. category.categoryId puffish_skills:adventure Category id to read. Namespace defaults to puffish_skills if omitted. category.additivePerLevel 0.0 Flat bonus per category level. category.multiplierPerLevel 0.05 0.05 = +5% per level.totalLevel (default off)
Scales by the sum of all categories' experience levels.
Option Default Description totalLevel.enabled false Enable combined-level scaling. totalLevel.additivePerLevel 0.0 Flat bonus per combined level. totalLevel.multiplierPerLevel 0.0 0.01 = +1% per combined level.Formula
result = (currentMaxWeight + additive) * multiplier result = max(minimumMaxWeight, result)currentMaxWeight is the value MT Inventory Weight already computed, so this stacks with the base config, armor pockets, and other Inventory Weight add-ons.
Example
Base max weight: 100 category level (adventure): 10 category.multiplierPerLevel: 0.05 multiplier = 1 + 10 * 0.05 = 1.5 result = (100 + 0) * 1.5 = 150Notes
- A category contributes 0 if it doesn't exist or has no experience source.
- Negative config values are clamped to neutral.
- Find category ids in your Pufferfish's Skills datapack/config (the puffish_skills:<id>).
- The built-in tree is NORMAL (off by default); enable it in the Data Packs screen.
Troubleshooting
- A skill grants no weight — confirm the attribute id is exactly inventoryweight:generic.max_weight, prefer operation: addition, and reset the skill after editing a reward so the modifier reapplies.
- Built-in tree missing — it's disabled by default; enable it. Check the log for Registered built-in 'carrying' datapack: true.
- pack.mcmeta won't load — the description must be strict JSON (no smart quotes / trailing commas).
- Unknown variable 'true' in experience.json — conditions must reference a defined variable; for unconditional XP use a bare string like "experience": "1".
Documentation
Full documentation: see docs/pufferfishs-skills.md (or the online docs site).
Compatibility
Mod Loaders
Game Versions
Similar Mods
Calc: NeoForged
Calculator mod in chat with minecraft related functions. (Unofficial NeoForge port - original mod by jsa2025)
Assembly Assembled | Extras
This datapack adds bridge information and rebalancing for the mods within the Assembly Assembled Datapack
GradientNametags
A client-side Fabric mod that lets you apply smooth gradient colors to player name tags using simple commands like /name...
Ward Watch
Security-themed protection mod for Fabric 1.21.11 with password-protected storage, doors and more to come.
Time Weather Biome Control
A Minecraft Fabric client-side mod that lets the player locally fake time, weather, and biome ambience.
(extra) Era do Panado II
Expand Era do Panado with Panados and legendary Panado weaponry