Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Kvist
Kvist, a friendly greydwarf who lives in a nest at your base: sorts chests by label, runs smelters and kilns, refuels fires, farms crops and tends animals. Beta.
| Date uploaded | a day ago |
| Version | 0.3.2 |
| Download link | Bryheim-Kvist-0.3.2.zip |
| Downloads | 41 |
| Dependency string | Bryheim-Kvist-0.3.2 |
This mod requires the following mods to function
denikson-BepInExPack_Valheim
BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.
Preferred version: 5.4.2351ValheimModding-Jotunn
Jötunn (/ˈjɔːtʊn/, 'giant'), the Valheim Library was created with the goal of making the lives of mod developers easier. It enables you to create mods for Valheim using an abstracted API so you can focus on the actual content creation.
Preferred version: 2.30.2README
Kvist
Build Kvist's Nest and a friendly greydwarf named Kvist moves in. He keeps your base in order: he sorts what you drop in the nest into labelled chests, keeps your smelters, kilns and eitr refineries running, refuels your fires, farms your crops and looks after your animals.
Beta. Single-player is well tested; multiplayer is designed for but less tested. Back up your world before trying it on a server.
Getting started
- Build a workbench, then Kvist's Nest from the hammer menu (Misc): 3 Ancient Seeds.
- Kvist appears beside it. The nest is also a 10×5 chest.
- Hover a chest and press L to give it a label. On a chest that already holds items, the first press labels it after its contents. Shift+L cycles backwards. Unlabelled chests are never touched.
- Hover the nest and press L to switch Kvist's job: Sorting → Smelting → Upkeep → Farming → Animal Husbandry (Shift+L goes back).
- Look at Kvist to see his job and what he's carrying; press E to pet him, Shift+E to rename him (handy with more than one). Every Kvist also shows on the map, named after his job. The nest shows today's tally, and tells you if something is stopping him.
Kvist works within 50 m of his nest. He runs, opens and closes doors on his way (only doors he opened), reaches over fences when the way is blocked, and teleports beside anything he still can't get to (or home, if he gets trapped). He never touches chests a player has open. He is immune to fire and poison.
Jobs
Sorting
Put anything in the nest. Kvist carries up to 10 stacks per trip to the nearest chest with the right label.
- Auto chests: an empty chest labelled Auto is claimed for the first category that needs a home.
- No chest for something? It waits in the nest, and the nest tells you which label is missing. (Optional: turn on
UseAreaFallbackto let him use another chest in the same area instead.) - Incoming Loot: anything uncategorised waits in the nest until you label a chest Incoming Loot.
Categories: Valuables & Boss Items · Trophies · Weapons & Ammo · Armour & Accessories · Tools · Cooked Food & Meads · Cooking & Mead Ingredients · Farming · Raw Food · Wood · Stone & Minerals · Building Extras · Ore & Coal · Metals & Parts · Creature Materials · Incoming Loot.
Smelting
Kvist runs every smelter, blast furnace, charcoal kiln and eitr refinery in range:
- Fuel first (Coal, Sap), then ore, scrap or Soft Tissue, taken from the nest or the matching chests.
- Coal is made on demand: kilns get plain Wood only when a furnace has ore to smelt and no coal is left anywhere. Fine Wood and Core Wood are never burned.
- Bars, Eitr and charcoal are picked up and put away.
Upkeep
- Refuels hearths, campfires, torches, braziers, sconces and hot tubs with their own fuel. Fires you switched off are left alone.
- Empties beehives and sap collectors and stores the honey and sap.
- Picks up feathers, and chicken eggs once the flock is full (while it is small, eggs are left alone to hatch).
Farming
- Harvests ripe crops on cultivated soil and stores them.
- Plants every empty patch of cultivated soil, sharing it evenly between crops, only where they'll grow.
- When a crop runs out of seeds, plants the vegetable as a seed plant so the farm makes its own seed again.
- Runs windmills and spinning wheels: barley and flax above the planting reserve go in, flour and linen thread are put away.
Animal Husbandry
- Feeds hungry tames from your chests (at their feet, over the fence if need be). Planting seed is only fed above a reserve.
- Butchering is off until you pick a species: look at one of your animals and press Shift+L. That species is kept down to its 2 best-starred breeders (hens: culled back to 6 once above 8); young, named and saddled animals are never touched. Pelts and meat are put away.
How he chooses
Kvist weighs every job he could do against the walk to it: big jobs and near jobs first, urgent ones (a furnace or fire out of fuel, hungry animals) sooner, and he works the area he's in until his hands are full before carrying it all to the chests. He takes what his next job needs from a chest he's delivering to, and remembers where he could reach things from. Set SmartPriorities = false for the simpler fixed order of 0.2.
If Kvist dies
He drops what he was carrying and returns to the nest after 120 seconds, keeping his name. Removing the nest sends him away (he drops his load first).
Configuration
BepInEx/config/com.ryan.greydwarfsorter.cfg: work radius, carry size, respawn time, running, smart priorities, teleporting when stuck, map markers, label key, nest sound, and the [Animals] settings (Butchering, Breeders, ChickenFlock, ChickenCullAbove, SeedReserve). On a server running the mod, the server's values apply.
Categories live in BepInEx/config/GreydwarfSorter/categories.yaml: rename, reorder or move items between categories. * works as a wildcard.
Console commands
| Command | |
|---|---|
gs_debug |
Label over Kvist showing his job, target and what he carries |
gs_classify <item> |
Which category an item sorts into |
gs_classify_all |
Reload categories.yaml and write every item's category to classified.csv |
gs_dumpitems |
Write every item to items.csv |
gs_fires |
Fires near you and whether Kvist fuels them, or why not |
gs_fillcarry, gs_killkvist, gs_stress |
Testing (need devcommands) |
Multiplayer
Works on servers that don't run the mod. If the server does run it, every player needs it. Players without the mod won't see the nest or Kvist.
Known limits
- Players can't hurt Kvist unless PvP is on (the game protects tamed creatures).
- A target behind two doors in a row (an airlock) is reached by teleporting, or skipped with
TeleportWhenStuckoff. - Kvist only works while someone is near enough for his area to be loaded.
- On a dedicated server, the map only shows Kvists near players.
Feedback
Bugs, ideas and questions: post on the Nexus page (Posts or Bugs tab).
CHANGELOG
Changelog
0.4.4
Fixes
- Planting stopped in 0.4.3 wherever you kept seeds for a crop that doesn't grow there (Mistlands mushrooms in a Meadows farm, say): checking that crop marked every empty spot as full, so empty fields stayed empty. Only a spot too tight for any crop is skipped now.
- Gates and pens: Kvist closes a gate as soon as he's through it (he used to walk on a little first, and a boar got out while it stood open), and waits up to 10 seconds for an animal standing in the gateway to move off before opening it.
- From the nest he only takes what the chests have room for: he took ten stacks of bug meat to a chest with room for 12 and carried the rest back.
- Named animals and saddled mounts are fed now; they were skipped along with butchering. They are still never butchered, and don't count toward the breeders kept.
- When he has to be pulled out of water on the way to something, he uses it from afar for the next 30 minutes instead of taking the same swimming route again (he fell in four times on the way to the same chests).
- Emptying his hands when you switch his mode no longer stops him fetching those items again for 5 minutes (the guard against fetch-and-return loops mistook it for one).
0.4.3
Farming
- One field at a time now tells fields apart that are close together: tilled ground under a floor or path (soil tilled before the path was laid) no longer counts as soil, and soil only counts as the same field where it touches. In 0.4.2 those joined neighbouring fields into one big field and he hopped between them. The log lists the fields he sees.
- Planting trips match the room there is: he counted every half-metre of free soil, most of it too close to a crop for another, so he fetched seed for 20, planted 1 and took the rest back, again and again. Spots where nothing fits are now left out for a couple of minutes, and the trip is sized to what will actually fit. Seed he takes back is never blocked from being fetched again.
- Inside a walled field he is working (harvesting, picking up, planting), he no longer counts as trapped, so he isn't sent home and teleported back in over and over. Going to deliver, or with nothing left to do, he still gets himself out.
Animals
- Feeding straight into the animal: Kvist now feeds every tame animal directly, as if it had eaten the food, instead of dropping it at its feet. Animals in cages, raised coops or pens he can only reach over get fed too, and no food is left lying around. (Food is only dropped if the game won't take it this way.)
- Hens are fed seeds first, then dandelions and the rest, as long as there are enough to feed the whole group (otherwise whatever there is most of). Seeds are still only fed above the planting reserve (
SeedReserve, 20).
Fixes
- Kvist could fetch something for a job (88 resin for the resin lights) and put it straight back, over and over: a nearer delivery won over the far-off lights, and at the chest the resin went in with everything else. Deliveries now leave in his hands what he still has a job for. As a safety net, whatever he has just fetched now stays in hand for a minute, and if he does put it back unused, he won't fetch it again for 5 minutes.
- No more "Can't reach" for chests, machines, fires and animals: when he can't walk to one and can't teleport beside it (a cellar down a spiral stair, a hen in a raised cage), he uses it from where he stands, however far, and for the next 30 minutes uses it from afar straight away instead of trying to walk there each time. Needs
ReachWhenBlocked(on by default). - Teleporting can also land him anywhere he fits within reach of the target, above or below it, when there's nowhere level beside it.
- Teleporting beside a target never worked in 0.4.1 and 0.4.2: the game's own "nearest walkable ground" lookup never finds any for Kvist (it looks his kind up under the wrong id), and the check for room for his body tested from a point that could be just under the floor. Both are fixed.
- He only teleports to somewhere he can walk home from (not onto a cage roof or a ledge), and once he has had to teleport to something, he uses it from afar for the next 30 minutes instead of walking there and getting stuck again.
- The nest's orange list is back to "Can't reach today" and only counts places he really gave up on; anything he handled by teleporting, reaching or using from afar no longer shows.
- If he falls into water he can't climb out of (a pool between stairs), he teleports out to dry ground after a few seconds. He never lands in water.
0.4.2
Farming
- One field at a time: with several fields, Kvist used to do a bit of work on each. Now, once he starts on a field, he finishes it (harvests everything ripe, picks up the produce, plants its empty soil) before moving to the next. A field is a patch of tilled soil; patches more than about 1 m apart count as separate fields.
Getting around
- Two doors in a row: airlocks, double gates and a pen inside a fenced yard. Kvist used to only manage one closed door between him and where he was going (the game treats a closed door as a wall, so he could only see one door ahead); now he finds the way through two, and only teleports for longer chains.
- Better paths: he walks to where he'd stand to use a chest, machine, fire or hive (a walkable spot beside it where he fits) instead of into its middle, which caused most of his "no path" and "stuck" moments. Path answers are remembered for 30 seconds, so his job choice can check the real walk to many more options, and he stops picking jobs that are close as the crow flies but behind a wall.
Fixes
- Teleporting to chests indoors often found "nowhere to land" (a rule against landing under floors also ruled out spots under shelves, beams and low ceilings), so far-off indoor chests were skipped with "Can't reach". The check for room for his whole body covers it now.
- The nest's list of trouble spots is now headed "Hard to reach today": it counts every time he had trouble getting somewhere, including the times he managed by teleporting or reaching, so it's a hint about your layout rather than an error.
- The 5-minute "Kvist meter" log line now also shows path queries and the time they took, and how often he gave up, used a door, reached or teleported.
0.4.1
New in Upkeep
- Cooking stations (priority 1 by default, ahead of everything else in Upkeep): Kvist takes finished food off cooking stations and out of ovens before it burns. It pops out beside them as when you take it, and he leaves it there; he never loads them.
- Oven fuel: he keeps ovens in wood, topping them up below half and straight away when one is out with food inside.
Getting stuck
- Fixed: Kvist could vanish after teleporting, landing under a raised floor or a foundation where nobody could see or reach him (his map marker showed him close by). He now only lands at about the target's height, with room above him and room for his whole body; if he ever ends up below the ground, he goes straight back to his nest.
- Fixed: he could end up stuck inside a wall. Wherever he appears without walking (teleporting, going or being called home, respawning) must now have room for his whole body, and if he's ever inside a wall or piece for a few seconds, he moves out to the nearest clear spot.
- New Call home button in the K window: brings that nest's Kvist back beside it, wherever he is.
- The nest now lists the places he couldn't reach today, with how often: "Can't reach today: Reinforced Chest at -307, 275 (6×)". Moving those things a little usually fixes it.
- When something's in the way (an animal in a gateway), he steps aside and tries again before giving up.
- Something he keeps failing to reach is skipped for longer each time (1, 2, 4, 8 minutes, up to 10) instead of being retried every minute.
- With nothing to do, he checks he can still get home; if not, he gets himself out.
Fixes
- Setting the Kilns priority did nothing unless a furnace was waiting for coal. If you set Kilns yourself in the K window, Kvist now keeps the kilns filled with plain Wood whenever they have room, smelting or not. Untouched, kilns still only make coal when a furnace needs it. (Kilns set before 0.4.1 need setting once more.)
0.4.0
Task priorities
- Look at a nest and press K to see its Kvist's tasks for the current mode (in Upkeep: fires, torches, hot tubs, beehives, sap collectors, eggs, feathers). Give each a priority from 1 (first) to 4, or switch it off. He finishes priority-1 work before priority 2, and so on; tasks with the same number are chosen by what's worth the walk. Untouched, every task shares one priority, which is how 0.3 behaved.
- Custom mode, the sixth job on the nest after Animal Husbandry: every task from every mode in one list, each with its own priority or off. It starts from the mode you switched from.
- New setting
TasksKey(default K).
Keeping your things where you can get them
- With nothing to do, Kvist empties his hands at the chests, seed included.
- In Custom, when he switches to a different kind of work (say from farming to smelting), he empties his hands first.
- He keeps at most one planting trip's worth (20) of each seed in hand; piles from seed-plant harvests go to the chest.
Getting around
- When he can't get to something, he now teleports beside it first, and reaches from where he stands only as a last resort. New settings
ReachWhenBlocked(on) andReachDistance(8 m). - Teleporting finds somewhere to land up to 8 m away (a chest on a raised floor had nowhere within 3 m).
Fixes
- Only real plants and bushes keep crops at a distance; stones, flint and other small pickables on the soil no longer leave bare patches.
- New console command
gs_soil: what's stopping crops being planted in the tilled soil around you.
0.3.2
New
- Windmills and spinning wheels, in Farming mode: Kvist feeds them barley and flax from the nest or your chests, keeping the planting reserve (20 by default) back, and puts the flour and linen thread away (Cooking & Mead Ingredients, Creature Materials). He fetches and collects in batches of 5 or more, and they come second to harvesting and planting, so he runs them while the crops are growing.
- Hot tubs: Upkeep now keeps them in wood. (The game builds the hot tub as a furnace that makes nothing, so it was neither a fire nor a machine to him.)
- Rename Kvist: look at him and press Shift+E, as with tame animals. The name shows above him, on his nest and on his map pin, and stays with the nest, so he keeps it when he respawns.
- Kvist on the map: a marker for every Kvist on the map and minimap, named after his job and moving with him.
ShowOnMap = falsehides them. - New console command
gs_fires: lists the fires near you and whether Kvist fuels them, or why not.
Getting around
- Teleporting when stuck (new setting
TeleportWhenStuck, on): when Kvist can't get to something, even through doors and gates or by reaching over, he vanishes in the nest's puff and appears beside it. Trapped, he goes home the same way. - Remembers where he reached from: when he has to do a job from a distance (a chest he can't walk right up to, eggs in a raised coop, crops behind a bed edge), he remembers where he stood and next time walks straight there.
- One stop per chest: delivering to a chest that also holds what his next job needs (seeds, coal, ore, fuel, feed), he takes it in the same visit; fetching from a chest, he drops off what he carries that belongs there.
Fixes
- After one give-up inside a pen, Kvist could mark the pen's gate as a trap and refuse to open it for 30 minutes ("walks up to the pen and leaves"). A closed gate between him and home no longer counts as being trapped, and he finds the way through gates built facing sideways (some iron gates).
- "Empty soil, but nothing grows there" appeared on fields where crops grow fine (it counted any seed in stock, even ones for another biome). Crops in the Mountains, Deep North and Ashlands now count as growable under a shield generator's dome, as the game allows, and the message now says what's wrong, for which crop and where.
0.3.1
- Kvist no longer plants vegetables in the gaps between berry bushes (and other plants that aren't his crops): they now get 1.5 m of room.
- Jumping out of traps works: the jump is aimed at the way out (the gate he came in by, or home) and repeated until he clears the ledge, and it starts as soon as he finds he has no way home. A gate that led him into a trap is avoided for 30 minutes.
- A spot he can't walk to now skips the patch around it, instead of him trying each gap in turn.
- Targets within 4 m are reached over a fence or bed edge rather than walked round through gates, and harvesting from a distance picks the whole cluster.
- Jobs across a fence or ledge are scored as the detour they are.
0.3.0
Smarter job choice
- Kvist now weighs every job he could do against the walk to it, instead of following a fixed order: big jobs and near jobs first, urgent ones (a furnace or fire out of fuel, hungry animals) sooner, closed doors and gates counted as detours.
- He clears piles and works the area he's in until his hands are full, then carries it all to the chests in one trip.
- Every 5 minutes the log notes how far he walked and how much he did.
SmartPriorities = falsein the config brings back the 0.2 order.
Modes
- New fifth mode, Animal Husbandry: feeding, butchering and putting away pelts and meat move here from Farming. Butchering is still chosen per species with Shift+L on an animal, now near an Animal Husbandry nest. If your nest was butchering in Farming mode, switch it (or a second nest) to Animal Husbandry; the species you chose are kept.
- Farming is now crops only.
- Eggs, feathers and beehives are now Upkeep jobs.
Getting around
- When trapped (for example in a sunken planting bed), Kvist jumps towards home, and if that fails he goes back to his nest.
- He tries at most two doors or gates per target, and only crosses one that actually leads to the target's floor (he used to cross a double gate back and forth for every egg in a raised coop).
- Reaching items he can't walk to (eggs behind a coop door) gathers the whole pile in one go instead of one item per trip.
0.2.0
Farming mode (a fourth job on the nest; press L on the nest to switch)
- Harvests ripe crops and picks up the produce, plus eggs and feathers, and empties beehives.
- Plants every empty patch of cultivated soil, sharing it evenly between your crops, up to 20 plants a trip. When a crop runs out of seeds he plants its vegetables as seed plants to grow more.
- Keeps a reserve of 20 of every seed (and barley, flax...) for planting; only what's above it is fed to animals.
Animals (in Farming mode)
- Feeds hungry tames from your chests, a whole group at a time, dropping the food at their feet (over the fence if he can't get in).
- Chickens: while the flock is small he leaves the eggs alone so they hatch (by a fire, under a roof, as usual); once it's full he collects them.
- Butchering, off until you choose a species: look at one of your tame animals and press Shift+L. That species is then kept down to its 2 best-starred breeders (hens: culled back to 6 once above 8). Young animals, named animals and saddled mounts are never butchered. The animal's hover shows whether its species is butchered; the nest lists them.
- Pelts, meat and trophies from the herd are picked up and put away.
- New
[Animals]settings:Butchering(master switch),Breeders,ChickenFlock,ChickenCullAbove,SeedReserve.
Kvist
- Carries 10 stacks per trip, up from 5 (new setting
CarrySlots; the oldCarryStacksline can be deleted). - Immune to fire and poison: he works beside fires and the eitr refinery all day.
- When something is blocked (a fence, an animal in the gateway) but within 8 m, he does the job from where he stands instead of giving up.
- Look at him to see his job and what he's carrying; press E to pet him.
Nest and chests
- The nest's hover shows today's tally (sorted, fed, harvested, planted, butchered) and, when something's wrong, why: a missing label, a full chest, a chest that's open or out of reach.
- Press L on an unlabelled chest that already holds items to label it after its contents. Unlabelled chests say "Kvist won't touch this".
- The nest now costs 3 Ancient Seeds (was 10 Wood, 5 Greydwarf Eye, 1 Surtling Core), and is silent by default (
NestSound = truebrings the ambience back). - Area fallback is off by default (new setting
UseAreaFallback): items with no chest of their own wait in the nest instead of going to a neighbouring chest, and the nest says which label is missing.
Fixes
- Kvist was replaced every time the world loaded, dropping whatever he carried.
- Kvist no longer gives up on a target the moment the game briefly reports no path (it does that while rebuilding paths around anything that changed).
0.1.0
- First public beta: Kvist's Nest, Sorting, Smelting and Upkeep modes, chest labels, door handling.