Changelog
[0.1.1]
Added
- Weight reduction. Every item's weight is now multiplied by a configurable factor, defaulting
to 0.5 - half of vanilla. Bigger stacks only help if you can carry them, so weight is now the
other half of the mod rather than something the stack multiplier quietly makes worse. Items that
weigh nothing in vanilla stay weightless, and a Minimum Item Weight floor stops anything
rounding down to free.
- Extra Carry Weight. A flat allowance added to every player's carry limit, on top of vanilla's
300 and anything Megingjord contributes. Defaults to 0. It patches
Player.GetMaxCarryWeight, so
the encumbrance check and the inventory readout both agree with it.
- Per-category multipliers. Stacks and weights can each be tuned per category instead of one
number for the whole game - Materials, Consumables, Ammo, Trophies, Fish and Misc for stacks, plus
Weapons, Armor and Tools for weight. Leave a category at
0 and it follows the global multiplier.
- Per-item overrides.
Wood:500, Stone:500 sets absolute stack sizes that ignore the multiplier
entirely; Wood:0.1, Iron:4 does the same for weights. Both accept the prefab name (Wood) or the
shared name token ($item_wood), and both are case-insensitive.
- Exclusion lists. Comma-separated prefab names held at their vanilla stack size or vanilla
weight - for the coins, cores and quest items you would rather the multiplier never touched.
- Max Stack Size. A hard ceiling applied after the multiplier and after any override, so a large
multiplier on an already-large stack cannot produce an absurd number.
- Verbose Logging toggle, which reports how many prefabs were touched on each re-apply. Useful
while tuning overrides.
Changed
- Gear is explicitly never stacked. Weapons, armour and tools are skipped by name, and so is
anything that does not stack in vanilla. Valheim merges stacks by item name and quality only - it
does not compare durability - so a pristine sword dropped onto a worn stack would silently take the
worn item's durability. Weight reduction still applies to gear; only stacking is withheld. An
override aimed at an unstackable item is ignored and logged once.
- Mod-added items are picked up more reliably. The sweep now covers
ZNetScene.m_prefabs as well
as ObjectDB.m_items, so item prefabs that never made it into the ObjectDB are still handled. Each
prefab is visited once per pass.
- Everything is recomputed from cached vanilla values, never from the live value, so repeated
config pushes cannot compound. Lowering a multiplier now genuinely lowers it, and clearing an
exclusion restores the vanilla number exactly.
- Overrides parse in invariant culture, so a config written on one machine reads identically on
every other one regardless of its decimal separator.
- The config layout gained five new sections. Your existing
Stack Multiplier is preserved - it
stayed in 2 - Settings under the same key specifically so upgrading from 0.0.1 keeps it.
MinimumRequiredVersion moved to 0.1.1. Clients still on 0.0.1 will be asked to update, because
they would compute different stack sizes to the server.
Licence
- Relicensed under the MIT License. The previous terms required the author's approval before
anyone could make a derivative work, which is not open source by any usable definition. MIT keeps
the attribution requirement and drops the permission gate.
ServerSync.cs is compiled in and stays
under its own author's terms; see LICENSE.md.
[0.0.1]
- Initial release.
- Added dynamic item stack size modifier.
- Configurable multiplier defaults to 3x.
- Integrated
ServerSync for server-authoritative configuration.