Valheim
Install with App

Details

Latest version
0.1.0
Last Updated
First Uploaded
Downloads
10
Likes
1
Size
112KB
Dependants
ADDatHost Valheim hosting
30% off

Kitbag

Save the inventory you like to carry as a loadout. Then one key, O by default, gets you back to it from nearby chests:

  • Puts away what the loadout doesn't need: materials you gathered, gear it doesn't use, and anything beyond its amounts, like the extra arrows you picked up. Each goes into a chest that already holds that item.
  • Refills what you used, like potions and food, and fetches gear that's missing.
  • Puts each item in its slot. Whatever is in the way moves to a free slot outside the loadout's, or trades places with it.
  • Equips what the loadout wears, if you turn AutoEquip on. It's off by default, so Kitbag only changes what you're wearing when you ask it to, or to send back gear from a death run.
  • Reports what it couldn't find, what didn't fit and what had no chest to go into.

It also has a death run loadout feature, which will switch you to a loadout of spare gear when you die and back when you loot your grave, and a Dump extras button for chests. It's completely client-side, and works with other players that don't have it.

Getting started

  1. Arrange your inventory the way you like to carry it, wearing what you normally wear.
  2. Open your inventory and press the Kitbag button at its top right.
  3. Type a name, like Main, and press Save as new. That saves every item, its slot and amount, what you're wearing and, for gear, its level, style and who made it. The first loadout you save becomes the active one.
  4. Press 'O' near your chests.

To see what O would do before it moves anything, turn on Preview in the config (see Configuration). Runs then only report.

What a run does

A run uses every chest within Range (100 m by default) that a player built and you're allowed to open, nearest first. Carts, ships and graves are never used, and neither are chests someone else has open. The report says how many chests were skipped and why.

  • Putting away: an item goes into a chest that already holds it. Chests holding nothing but that item, like a box of wood, come first, so one stray piece of wood doesn't turn your trophy chest into a wood chest. Then, with MixedChests on (the default), chests holding it among other things. Empty chests are never filled. Worn items and your NeverPutAway list stay with you, except gear from a death run that's over (see Death runs).
  • Refilling: from any chest that has the item, nearest first, until the loadout's amount is reached or your inventory is full.
  • Gear: Kitbag fetches the copy the loadout recorded: same crafter and style, at the recorded level or higher, so upgrading it doesn't break the match. If that copy isn't in range, it takes the best one it finds (highest level, then most durability) and tells you who made it. If you have a lesser copy and the right one is in range, they trade places. If you're wearing the lesser one, you keep both, unless AutoEquip puts the right one on.
  • Gear going back: gear Kitbag fetched remembers its chest, and goes back there first when your loadout no longer needs it, whatever else that chest holds. If that chest is full or out of range, the usual rules apply.
  • Arranging: each item moves into its slot. Whatever is in the way trades places with it if it's in the loadout too, or else moves to a free slot outside the loadout's, bottom row first.
  • Amounts per slot: an item in several slots gets each slot's own amount, like two slots of 4 broth rather than one of 8. Anything beyond a slot's amount that no chest took moves out of it into a stack of its own, outside the loadout's slots.
  • Equipping: with AutoEquip on, a run puts on the loadout's worn items at the start, so whatever they replace is put away in the same run, and again at the end for anything it fetched.
  • The report: one line in the middle of the screen sums up the run. The top left lists what's missing, what didn't fit, what found no chest and which chests were skipped; MessageLines sets how many lines show there. The panel shows the report too while it's open, and the journal has all of it.

A loadout slot past the rows your inventory has gets its item in any free slot, and an item ID the game doesn't know is skipped. The report notes both.

On a server

Each chest is run by one player's game at a time, usually whoever was near it first or opened it last, and only that game's changes to it are saved. When a run needs a chest another player's game runs, Kitbag asks for it the way the game's own "Place stacks" button does: their game hands it over unless someone has it open. They don't need Kitbag for this. Kitbag only asks for the chests the run actually uses, and the run finishes a moment later, once they've been handed over. Chests that aren't handed over within 3 seconds are skipped, and the report counts them.

When you leave an area, the game hands its chests to whoever is still near them, so after a trip away Kitbag asks for them again. That's normal and only takes a moment.

Safety

Kitbag moves real items, so it's careful about it:

  • Preview, a setting in the config, makes runs report what they would do and move nothing, if you want to check first.
  • Every move is checked. An item is only removed from where it was after the place it's going has taken it, and the counts on both sides are compared afterward. If a move doesn't add up, the run stops there and says so. At the end, item totals across your inventory and the chests are compared again, and the report says if they changed.
  • Only chests your game controls are changed, so another player's game can't overwrite what Kitbag did (see On a server).
  • The journal records every run, previews included, and every move (item, amount, from, to) in BepInEx/config/Kitbag/<character>.journal.txt, so anything can be traced and put back by hand. Past 2 MB it starts over and keeps the old one as <character>.journal.txt.old.

The panel

The Kitbag button at the top right of your inventory opens the panel beside it. You can drag the panel around, and it closes with the inventory.

  • The list shows your loadouts, 6 at a time; the mouse wheel scrolls it. Click one to pick it. "(active)" marks the one O refills from, and "(death run)" the one Kitbag switches to when you die.
  • Save as new saves your inventory as a new loadout, named from the box. If the box is empty, or still shows the picked loadout's name, it's called Loadout 1, Loadout 2 and so on.
  • Rename gives the picked loadout the name in the box, up to 24 characters.
  • Use makes the picked loadout the active one.
  • Replace saves your inventory over the picked loadout. It and Delete ask you to press them twice.
  • Death run makes the picked loadout your death run loadout, or stops it being one if it already is. During a death run the button reads End death run (see Death runs).
  • Edit loadout opens the picked loadout in the loadout window (see below).
  • Equip worn items switches the AutoEquip setting.
  • Run now does the same as pressing O.

The bottom of the panel says what just happened, including a run's result. While you type in a box, keys go to the box. Enter or a click elsewhere finishes; Esc drops what you typed and closes the inventory.

Editing a loadout

Edit loadout opens the loadout in a window of its own, below your inventory, where a chest's contents normally appear. An open chest's window closes to make room, and opening a chest ends editing. The window shows only the loadout, laid out like your inventory, and grows to show every row however many inventory upgrades you have; on a short screen it shrinks to fit. Nothing in it is a real item, so editing never moves or drops anything.

  • Add: click an item in your inventory, then a slot in the loadout window. That item goes in the loadout there, with the amount you picked up (Shift-click a stack to choose an amount) and, for gear, which copy it is and whether you're wearing it. Your real item stays where it was. Adding onto a slot of the same item adds to its amount; adding onto a slot of something else replaces it.
  • Move: click a loadout slot to pick it up, then click another slot. The two trade places, except that a stack dropped on the same item joins it, as much as fits, like in the game.
  • Put back a slot you picked up: right-click, or click the panel.
  • Take out: right-click a slot, or pick it up and click anywhere outside the loadout window and the panel. The panel's Take out of the loadout button does it too.
  • Amount and worn: the panel shows the slot you clicked last. For a stack it has minus and plus (10 at a time with Shift held), Max, and a box to type the amount into. For anything you can wear or hold, arrows included, it has a worn switch, which only matters with Equip worn items on.

Changes are saved as you make them. Done editing goes back to the list.

Dump extras

The window of a chest, cart or ship gets a Dump extras button, in a small box just right of the window, level with Place stacks. It puts away what your active loadout doesn't need, the same way O does: into matching chests in range, and gear back to the chest it came from. Whatever has no chest of its own goes into the open one, as far as there's room. It's meant for a chest of odds and ends. It doesn't refill or arrange anything. Worn items and your NeverPutAway list stay with you, and it follows preview mode like O does.

Death runs

Save a loadout of spare gear, pick it and press Death run. Then, when you die with another loadout active:

  1. Kitbag notes the grave with your gear and switches to the death run loadout. It doesn't move anything. After you respawn it reminds you: press O near your chests to kit up from your spares, or skip it if the grave is easy to reach. Gear O fetches now is death run gear.
  2. When you've emptied that grave, whether in one go or by hand, Kitbag switches back to the loadout you had. A grave with anything left in it doesn't count yet. If AutoEquip is on, Kitbag also puts your own gear back on.
  3. The next press of O sends the death run gear back to the chests it came from. That includes gear you're still wearing, as long as its chest is in range and has room, whether AutoEquip is on or not. With AutoEquip off, put your own gear back on yourself.

Dying again on the way makes a grave of spares, which Kitbag ignores; it keeps waiting for the first one. A grave in another world doesn't count either. The death run is saved with your loadouts, so logging out doesn't end it.

Kitbag only sees the grave being emptied when you're there. If a friend loots it while you're away, or a save rollback means the grave is gone, press "End death run" (or pick any loadout and press "Use") to switch back by hand.

Configuration

BepInEx/config/com.adapperbadger.kitbag.cfg, or press F1 in-game with Configuration Manager installed.

Setting Default What it does
Enabled on Turns Kitbag on or off: the key, the Kitbag and Dump extras buttons, the chat commands and starting death runs
Key O The key that runs Kitbag
Preview off Only report what a run would do, move nothing
AutoEquip off Also put on what the loadout wears (its worn items)
Range 100 How far away a chest can be, in meters (1 to 2000)
MixedChests on After chests that hold only that item, also use chests that hold it among other things
NeverPutAway (empty) Item IDs that always stay with you, comma-separated; * is a wildcard, so Trophy* keeps every trophy
MessageLines 6 How many report lines show at the top left (0 to 20)
LogReports off Also write each report to BepInEx/LogOutput.log

Loadout files

Each character's loadouts are in BepInEx/config/Kitbag/<character>.txt. You can edit them by hand: close the game first, or type /kitbag reload in chat after saving the file. Otherwise Kitbag's next change overwrites your edits.

active: Main
deathrun: Spares

loadout: Main
  1,1  SwordIron            x1    worn  level 4  by Sigrid
  2,1  ShieldBronzeBuckler  x1    worn  level 3  by Sigrid
  7,1  MeadHealthMinor      x10
  8,1  ArrowFire            x100  worn

loadout: Spares
  1,1  SwordBronze  x1  worn

Slots are column,row counting from 1 at the top left; row 1 is the hotbar. Item IDs are the names the spawn command uses. The amount is 1 if you leave it out. worn, level, style and by are optional, and by must come last on its line, since a name can have spaces in it. deathrun: names your death run loadout. During a death run, Kitbag adds recovering: and grave world: lines to remember the grave; leave those alone. The comments at the top of the file sum all this up.

Chat commands

The panel covers everything, but the kitbag command does the same things from chat (with a / in front) or the F5 console (without one).

Command What it does
kitbag help Lists these commands
kitbag list Your loadouts; * marks the active one
kitbag save <name> Saves your inventory as it is now, replacing a loadout with that name
kitbag use <name> Makes a loadout the active one, which ends a death run
kitbag show [name] Lists a loadout's slots, the active one's if you leave out the name
kitbag delete <name> Deletes a loadout
kitbag run The same as pressing O
kitbag test A preview run, which reports but moves nothing
kitbag reload Reads the loadout file again after you edit it

Client-side and compatibility

Only the player who installs Kitbag needs it, and it works on vanilla servers. It needs Jötunn, which mod managers install with it.

If you also use an autosort mod on the same key, turn one of them off or give one another key. Kitbag adds to the game's code rather than replacing it. It only holds back the game's own handling in a few places, while you're using Kitbag: the replies to its own chest requests, and clicks while you edit a loadout, so they don't pick up, use or drop the real item under the pointer.

Credits

The bag in the icon is Hand bag by Delapouite, from game-icons.net, under CC BY 3.0. Its colors and background were changed.

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.