HomeJavaModsPufferfish's Skills - MT Inventory Weight
Pufferfish's Skills - MT Inventory Weight
ModsJava

Pufferfish's Skills - MT Inventory Weight

by MEGATREX4 · on Modrinth

⬇ Download on Modrinth

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:

  1. Attribute reward (data-driven) — a skill node grants the Inventory Weight attribute directly. No Java needed; this is how the bundled "Carrying" tree works.
  2. 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_weight

Pufferfish'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_WEIGHT

and 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:

Enable it:

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:

  1. Use the default — enable the built-in "Carrying Skill Tree" pack. No files needed.
  2. 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.
  3. 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 = 150

Notes

Troubleshooting

Documentation

Full documentation: see docs/pufferfishs-skills.md (or the online docs site).

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

Verified by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more