Kitbag
Inventory loadouts. One key puts away what your loadout doesn't need into matching nearby chests, refills what you used, and puts each item back in its slot. Client-side.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
AutoEquipon. 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
- Arrange your inventory the way you like to carry it, wearing what you normally wear.
- Open your inventory and press the Kitbag button at its top right.
- 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.
- 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
MixedChestson (the default), chests holding it among other things. Empty chests are never filled. Worn items and yourNeverPutAwaylist 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
AutoEquipputs 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
AutoEquipon, 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;
MessageLinessets 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
AutoEquipsetting. - 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:
- 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.
- 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
AutoEquipis on, Kitbag also puts your own gear back on. - 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
AutoEquipis on or not. WithAutoEquipoff, 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.
