Thralls
Bind greydwarves at a bindstone and put them to work: one carries between your depots, one tends what grows, one cuts and mines. Each is bound with three of its own heads and a count of bones, and levels by doing the work.
- Controls
- Talking to a thrall
- Sending one away and getting it back
- The depot
- The bindstone
- The three of them
- Levelling, and the wall
- Farming
- Carrying
- Repairing
- The bindstone's ledger
- Notable config
- Safety rails
- Building
- Multiplayer
- Design notes
- Author
- Core is optional
- Bugs and ideas
A Valheim mod that lets you put greydwarves to work. Bind one at a bindstone, lead it to a forest, a copper vein or a berry patch, and tell it to work from there. It clears the ground around that spot and hauls what it gathers to a depot you build.
There are three of them and each does its own work and nothing else: an ordinary greydwarf carries between your depots, a shaman tends what grows, and a brute cuts and mines. Which one you bind is the decision, because none of them can be retrained into another.
Built against the installed game (Unity 6000.0.75, BepInEx 5.4.23.5, Harmony 2.9).
Controls
Thralls binds no keys at all. Everything is a menu:
| What you want | Where |
|---|---|
| Bind a thrall, see the whole crew, raise the dead | press E on the bindstone |
| Order one thrall: job, where it works, follow, release | press E on that thrall |
| Somewhere to unload | build a depot |
That is deliberate. Keys quietly owned most of the numpad and collided twice with another of my mods, most Macs have no numpad and Valheim ships a macOS build, and the four that were genuinely useful were build aids rather than thrall commands. They live in Devkit now.
There is also a console command, for when you would rather type than click:
thralls bind [tier] bind one at the bindstone you are standing at
thralls job <job> chop, mine, gather, farm, repair, follow or none
thralls base move the nearest thrall's work base to your feet
thralls come call the nearest one to you
thralls haul send it to unload now rather than when its pack fills
thralls release dismiss the nearest one
thralls list the crew: level, job, pack, how far off
It does exactly what the panels do, because it is the same code behind both. It is not a
cheat and does not need devcommands: binding still costs what binding costs and still
waits for the right boss. It exists because a button in a panel cannot be pressed by
anything but a person, which left the whole mod untestable by anything but an evening of
clicking.
Talking to a thrall
Walk up to one and press E. Its orders panel opens: what it is doing down the left, what
you can tell it down the right.
| Order | What it does |
|---|---|
| Follow me | walks with you, and stops working |
| Work from here | moves its base to where you are standing, job unchanged |
| Do something else | pick a new job, worked from the base it already has |
| Show me its pack | lists what it is carrying, with a Take button per stack |
| Take your load in | sends it to the depot now rather than when its pack fills |
| Infuse a heartwood | shown only when it is stuck at its level cap; lifts the cap and gives it a star |
| Wait here | stands where you are, doing nothing |
| Send it to rest | hands its load in and steps onto the bindstone's roll, name, level and tool intact |
The left rail carries the two numbers you walked over to find out: how far the depot is, and how far its base is. A thrall standing next to you with its base three hundred metres away is a thrall that will walk off the moment you stop talking, and there was previously no way to see that.
Work from here moves the base to the ground under your feet, without changing the job, so a crew can be led twenty metres up the treeline without re-assigning any of them.
Sending one away and getting it back
Three different things, and all three keep the thrall's name, level and tool.
| You want | Where | Cost |
|---|---|---|
| Put one away | its own panel, Send it to rest | nothing; it hands its load in first |
| Bring that one back | bindstone ledger: Resting, Call back | biome goods, about half a raise |
| Raise one that died | bindstone ledger: Fallen, Bring back | biome goods, below |
Raising a fallen one costs one of its own heads and half the bones it was bound with, which is the table under the three of them. Calling a resting one back is its own price in the config, and an empty one makes calling back free again.
Resting and dying are not the same list. A thrall you sent away is waiting; a thrall that was killed is on the roll of the dead and costs goods to raise. Either way it returns at the level it had, so experience is never lost. Only the goods are.
Without a bindstone there is no roll, so a thrall released in the field is released for good. The panel says which of the two it did.
The depot
Thralls unload into a depot, a piece you build, and nowhere else.
It is a chest underneath, a real container, six by four, that you can open and take from
like any other. What it adds is a radius: any thrall whose work base is within
DepotRange (60m) hauls its pack there and draws its seed there. Nothing needs nominating
and nothing is stored on the thrall, so tearing the depot down and rebuilding it somewhere
better re-points the whole crew at once.
Build as many as you like. A thrall walks to the nearest depot to the ground it works, and if that one is full it carries on to the next nearest instead of stopping. A second depot behind the first is overflow without being configured as overflow. Only when every one of them in range is full does a thrall say so and go back to standing by.
It was a chest you nominated with a keypress, once per thrall, which was a chore repeated as many times as you had workers. Softening that with an auto-adopt made it worse in a different way: a thrall would quietly claim whichever box happened to be nearest the bindstone, including one you were keeping something else in. Building the store where you want the store says everything, in one action, in the world rather than in a setting you cannot see.
The depot is a tally mast, a bound post with a crossarm, a basket and a sack hung off it and a plank bin at its foot. It stands 2.7m, which is deliberate: it governs a radius, so it has to be findable from inside that radius. Look at it to see how many of your crew are using it.
The bindstone
The stone you bind at is the trader's rune stone, the red-runed standing stone from Haldor's camp. Not a copy of it: the piece wears the game's own object, borrowed at runtime from the camp's location and never shipped in the package.
It is the one place this mod wears vanilla art rather than something modelled for it, and that is deliberate. A bindstone is a rock somebody carved a binding into, the game already has exactly that rock, and four hand-built stones were drawn and rejected before the honest answer turned out to be the one standing in the Black Forest.
AltarShapes is what decides. bindstone=Vendor_BlackForest/TraderRune is the default and
means "wear that prop out of that location"; a bare name like bindstone wears the model
file of the same name sitting beside the plugin instead, and the hand-modelled stone is
still in the package for anyone who prefers it. The build-menu icon is photographed from
whatever it ends up wearing, so it cannot disagree with what you build.
The three of them
Each thrall is one trade and stays that way. A shaman does not chop slowly, it does not chop: the orders panel does not draw the jobs its body will not take, so what a thrall can be told is the list in front of you.
| Trade | Body | Does | Binding it costs | Raising it costs |
|---|---|---|---|---|
| Carrier | greydwarf | carries between depots | 3 greydwarf trophies, 10 bones | 1 trophy, 5 bones |
| Tender | shaman | farms and gathers | 3 shaman trophies, 20 bones | 1 trophy, 10 bones |
| Labourer | brute | chops, mines and repairs | 3 brute trophies, 30 bones | 1 trophy, 15 bones |
All three answer once The Elder is down, so they arrive about when you start working the ground they came from. The head is the point of the price: three of a creature's own heads to bind one of it, which is a hunt rather than a shopping list. Raising a fallen one takes a single head and half the bones, because what you are buying back is the one that already knows its work: it returns at the level it died with, where a fresh one starts at nothing.
The carrier gets three extra pack slots over the other two. A porter whose pack is a woodcutter's walks the same distance for a third of the goods, which is the only thing its trade is about.
Five thralls can work at once, flat. MaxThralls (20) is a separate number: how many
you may keep. Five of them work and the rest stand by, rest, or follow.
Levelling, and the wall
Levelling is earned, not bought. A thrall gains experience by working:
| Doing | xp |
|---|---|
| each swing | 1 |
| felling a tree, breaking a vein, picking a crop | 10 |
| sowing a seed | 3 |
| a repair | 3 |
So the thrall you actually put to work is the one that gets good at it, and a thrall left standing at the bindstone stays a novice however long you keep it.
It stops at level 5. Experience stops there too rather than banking, and the hover text says so. Infusing it with a heartwood lifts the ceiling to 10 and gives it a star; a second heartwood lifts it to 20 and gives it the second star. A thrall wearing stars is therefore one somebody spent a heartwood on, not one that happened to reach a number, and it is genuinely tougher for it: stars are the game's own creature levels.
Heartwood comes from Vaettir, and Thralls does
not depend on it. Without that mod the item does not exist, the infusion is refused in
words that say so, and the cap stands at 5. InfuseItem points the gate at something else
if you would rather play it without.
Levels make a thrall hit harder and swing faster, +8% damage and +3% speed each. They never change its tool tier, which is the hard gate: a Black Forest thrall cannot fell an oak or mine silver however long you leave it, exactly as a flint axe cannot.
Bind from the bindstone's ledger, which shows each trade, what it works at, its price, and lights up when you can afford it.
Farming
A farming thrall does the full loop, not just the picking:
- Harvests anything ripe inside its work radius.
- Sows seed from its pack onto free tilled soil, nearest spot first.
- When it runs out of seed, walks to the depot, delivers the produce and draws a fresh
batch of seed (
SeedsPerTrip, default 20).
Before sowing it runs the same checks the crop would run on itself (cultivated ground, right biome, open sky, no crowding), so it will not waste seed on soil where nothing grows. If the depot has no seed it says so once and stops making the trip for two minutes rather than pacing back and forth.
What counts as a seed is read off the cultivator's own piece table, so any plant a mod adds to the cultivator is sown too, at that plant's own seed cost.
Carrying
A carrier works between depots rather than on the ground. Its home is the depot nearest its
work base, which is the same rule every other thrall uses for "which depot is mine": walk
to your hall, press E on it, work from here. It walks the outlying depots within
PorterRange (100m) and brings their contents back.
What it carries is decided by the destination. It only takes things the home depot already holds some of. Put one wood in the hall's depot and wood starts coming home; take the last of it out and it stops. That keeps the rule in the world rather than in a filter list, and it is why a carrier can never strip the seed out of a farm's depot, which carry-everything would do on its first trip.
It only runs while you are about. A thrall ticks when a player is near enough to load it, so a carrier shuffles goods while you build at the base. It is not a courier that works overnight.
Repairing
Set a thrall to repair and it becomes the site foreman for that area: it finds the most damaged piece within its work radius, walks over, and repairs it, then moves on to the next worst. Repair costs nothing, exactly as it does when you swing the hammer yourself. Leave one posted at a base and it will quietly undo storm and raid wear.
The bindstone's ledger
Press E on a bindstone to open the ledger, which lists every thrall with:
- a rename field
- what it is doing, how full its pack is, how far away it is, and whether a depot is in reach of where it works
- job buttons that put it to work where it stands
- Come, to call it to the bindstone
- Release, to dismiss it
There is also Recall all here. The panel closes with its own button, with Escape, or by walking more than 8m away.
The ledger is the crew view: everyone at once, and hiring. For one thrall where it stands, talk to it instead.
Notable config
BepInEx/config/ezomic.valheim.thralls.cfg, written on first run.
CarryJobs/TendJobs/LabourJobs: which jobs each trade will take. This is the wall, and moving a job from one list to another re-cuts the trades without a rebuild.Tier1CarryCost/Tier1TendCost/Tier1Cost: what binding each of the three costs, andTier1CarryRevive/Tier1TendRevive/Tier1ReviveCostwhat raising it costs.LevelCaps: the levels a thrall cannot pass without being infused, default5,10. Empty means no gate and no stars, and it levels toMaxLevelon work alone.InfuseItem: what an infusion consumes, defaultGroveHeartwoodfrom Vaettir. Point it at something vanilla to play the gate without that mod.CarryPackBonus: extra pack slots a carrier gets over the other trades, default 3.PorterRange: how far a carrier walks to fetch from another depot, default 100.Breeds: how many biomes are offered, default 1. Raise to 5 for the draugr, golem, berserker and seeker, which are written and still have one body each rather than three.BaseWorkSlots/MaxWorkSlots: both 5, which is what makes the crew a flat five. Lower the first to make station extensions near the bindstone earn slots again.TierNCost: what a biome above the first costs to bind, whichever trade you pick.RecruitCost: an extra cost on every breed, e.g.Coins:50. Empty by default.MaxThralls: how many you may keep in total, default 20.ToolTier: tool tier of a rank 1 thrall, default 1. Each rank adds one on top.ChopDamage/PickaxeDamage/SwingInterval: how fast they work.SeedsPerTrip: seed drawn from the depot per visit, default 20. Set to 0 to stop them restocking, so they only sow what you hand them directly.WorkRadius: how far from the assigned spot they will roam for more of the same resource.DepotRange: how far a depot reaches, default 60. Measured from the thrall's work base, not from the thrall, so a crew spread along a treeline all agree on one store.DepotWidth/DepotHeight: how much it holds, default 6 by 4. A full depot stops the crew working, so this is a larger chest and a half rather than a chest.DepotCost: what it takes to build, default wood, log, scraps and 2 iron.AltarShapes: which bindstone shapes the hammer offers, and what each one wears.name=prefabwears one of the game's own objects,name=Location/Propreaches inside a location for something that is only ever camp dressing, and a barenamewears the model file beside the plugin. Removing a name destroys every bindstone of that shape already standing, so change what a shape wears rather than what it is called.AltarIconAngle: pitch and yaw the build-menu icon is photographed from, for a shape wearing one of the game's objects. Only that; every other shape has an icon beside its model.TalkOnUse: whether pressing use on a thrall opens its orders panel. On by default.SmashTiers/SmashYield: which breeds fell trees bare-handed, and how much of the tree survives it. Set to the golem, so dormant untilBreedsreaches 3.
Safety rails
- Thralls never target anything with a
PieceorWearNTearcomponent, so they will not chop up your buildings. - Only a thrall that is actively working picks items off the ground. An idle or following thrall will not pocket something you dropped on purpose.
- Tamed creatures do not attack player structures, which is vanilla behaviour the mod relies on.
Building
dotnet build Thralls.csproj -c Release
The build copies Thralls.dll into the Thunderstore Default profile's plugin folder.
Override ValheimDir or ProfileDir on the command line to target a different install
or a different profile.
Multiplayer
Each thrall is driven by whoever owns its ZDO, which is normally the player who recruited it and is standing nearby. It works in co-op, but the mod has only been exercised in single-player so far. Treat dedicated-server use as untested.
What has been exercised, as of 2026-09-22 and by a scripted run rather than a memory of one: the bindstone and the depot standing, priced and refusing to be built for nothing; a thrall bound, refused for want of the price, ordered, listed and released; and one chopping until its pack was full, hauling it in, and putting wood in a depot. Resting, recall, raising, and the mine, gather, farm and repair jobs have not been run since the rework and should be treated as untested.
Design notes
Why there are no keybinds, why three trades rather than one thrall, why a trade is a wall rather than a preference, how a thrall is a tamed Dverger rather than a hand-rolled AI, and what the golem does when it arrives: DESIGN.md.
Author
Thralls is an original mod by Robbin Thijssen (Thijssen Software).
Copyright (c) 2026 Robbin Thijssen. MIT licensed. See LICENSE.
Core is optional
Thralls installs and runs on its own. Core is a soft dependency: present, it is used; absent, nothing here is degraded. Installing Thralls from Thunderstore no longer installs Core with it.
What Core adds is the version gate, a handshake that compares mod versions and build ids on connect and refuses a client that does not match. Little is at risk here: a thrall is a tamed vanilla creature with a waypoint, so there is no unresolvable prefab to lose a ZDO to. What is given up is the report when two ends run different builds.
Solo, none of that applies and Core is not needed at all.
Bugs and ideas
Both go to the site. longhouse.thijssensoftware.nl/bugs is for anything broken, and longhouse.thijssensoftware.nl/ideas is for what a mod should do next. You can vote on other people's ideas there as well.
Signing in takes a Steam or Discord account. I work from that list, so the votes decide what I pick up next.
Coming next
Written, not released yet. This is what the next version of Thralls will carry, and it can still change.
Everything here is 2026-09-22, the day the mod was picked back up after a month parked at 0.5.0. It did not compile when that started.
It builds on Valheim 1.0 again
Four things had moved underneath it since the game's full release, and nothing had been compiled against them:
Hoverablegrew a third member,GetHoverOffset, so the bindstone and the depot no longer implemented it. Both answer zero, which is what the serialised offset defaults to on everything vanilla ships.Piece.SetCreatortakes a platform id beside the player id and writes its index into the world's player history. A crop a thrall sows passes the local user, exactly asPlayer.PlacePiecedoes, and the player id stays the thrall's owner.VisEquipmentmoved off item names and on to stable hashes plus a quality, so the tool in a thrall's hand is set by hash now.- The shared prefab registry in the Core repo grew a call into Core, so this needs Core at build time even though it still runs without it and still declares no dependency.
A bindstone that was free for everybody
Found while fixing the above, and standing in the code the whole time. A piece's cost is a
list of resolved ItemDrops rather than names, and the first ObjectDB of a session is a
stub with no items in it at all. The bindstone and the depot were priced once, against
whatever database happened to be live, and then a Ready check that only asks whether the
scene knows the prefab sent every later pass down an early return.
Priced against that stub, a cost resolves to an empty array, and an empty array is not a broken piece. It is a piece that is free, permanently, for everybody, with nothing in the UI to say so.
Costs are now written on every pass until every name in them resolves, and the hammer waits for that. Registration into the scene deliberately does not wait: a prefab missing when the game turns saved ZDOs back into objects costs every bindstone already standing in that world, where a piece missing from the build menu for a few frames is a piece you build a moment later.
The bindstone is Haldor's rune stone
It wears one of the game's own objects now, the red-runed standing stone from the trader's camp, rather than a model of ours. That was Robbin's call and it replaces the four hand-modelled designs that had been waiting on a pick since August.
The stone is camp dressing rather than a registered prefab, so nothing in ZNetScene knows
it and asking for it by name answers nothing. It is reached through the location instead:
ZoneSystem holds a ZoneLocation per location, its prefab is a soft reference, and the
stone is a child of it. A shape in AltarShapes can now name Location/Prop to wear
something that only exists inside a camp.
The icon is photographed from whatever the piece is wearing, on an orthographic camera five
kilometres under the map, rather than shipped as a file. A picture of Iron Gate's art is
not a thing an MIT package can carry, and a rendered file would go stale the moment a shape
wears something else. AltarIconAngle turns the camera without a rebuild.
Console commands, and the mod became testable
Every order in this mod is a button in an IMGUI panel, and an IMGUI button cannot be pressed by a script. So the feature the mod exists for had never been exercised by anything but a person with a mouse, and every change since was an argument from the code.
thralls bind [tier] thralls job <job> thralls base
thralls come thralls haul thralls release thralls list
They are the same calls the panel's buttons make rather than a second path that could drift
from them, so bind pays the same price and obeys the same boss gate. They are not
registered as cheats, since a command marked as one is refused for every client on a
dedicated server.
Four scenario files in scenarios/ cover what they now reach: the bindstone standing,
priced and wearing the stone; the depot as a real container of the size it promises; a
thrall bound, refused, ordered and released; and the whole loop end to end, which is the
first time a thrall has chopped, filled its pack, hauled it in and put wood in a depot
without somebody driving it.
Three trades, and a trade is a wall
The Black Forest offers three kinds now instead of one, each doing its own work and nothing else: an ordinary greydwarf carries between depots, a shaman farms and gathers, a brute chops, mines and repairs. The panels do not grey out the jobs a body will not take, they do not draw them.
Each is bound with three of its own heads and a count of bones - ten, twenty and thirty - and raising a fallen one costs a single head and half the bones, because what you buy back is the one that already knows its work.
The trade is a second axis beside the tier rather than a replacement for it, which is what keeps a Black Forest thrall out of a silver vein: tier is still the biome and still decides tool tier, reach and pack size.
A carrier job, depot to depot
A carrier's home is the depot nearest its work base, set the way everything else is - walk
there and tell it to work from here. It fetches from the other depots within PorterRange
and brings back only what the home depot already holds some of, so a carrier can never
strip the seed out of a farm's depot. It runs while you are about, not overnight.
Thralls stop at five and ten
A thrall works its way up on its own and stops dead at level five. A heartwood lifts it to
ten and gives it a star; a second lifts the ceiling to MaxLevel and gives it the other.
Experience stops at the wall rather than banking against the day somebody turns up with one.
Heartwood comes from Vaettir and this mod does not depend on it: without that mod the item
does not exist, the infusion is refused in words that say so, and the cap stands. Point
InfuseItem at something vanilla to play the gate without it.
Console commands
thralls bind [trade] [tier] job <job> base come haul infuse release list
The same calls the panel's buttons make. They exist because an IMGUI button cannot be pressed by a script, which had left the whole mod untestable by anything but a hand.
Known, and not fixed
A tree felled by a thrall can destroy a depot standing near it. This turned up as a scenario failing once and passing on the next run, and it is vanilla behaviour that the mod puts you in the way of: a chest a few metres from a creature felling trees is a chest under a falling trunk. No mitigation yet, and it is worth knowing before you site a depot in a treeline.
Changelog
0.5.0
Renumbered down from 1.0.0, which was wrong. Nothing had been released under it, with no tag and nothing on Thunderstore, so the number was a claim rather than a record, and the mod is not that far along: the bindstone's model is being redesigned, the binding cost is mid-rework, and the ledger, depot overflow, raise and recall have never been exercised in a real session.
Everything listed under 1.0.0 below is part of this release; the heading was the only thing that changed.
Changed
Thralls binds no keys at all. The last four,
TimeOfDay(Numpad 7),FlattenGround(Numpad 8),GodMode(Numpad 9) andAltarEffects(Numpad −), are gone, and nothing replaced them. They were build aids and a diagnostic rather than thrall commands, so they belong in Devkit, which never ships to players.Three reasons. The mod quietly owned most of the numpad and had already collided silently with Tether twice. Most Macs have no numpad and Valheim ships a macOS build, so a Mac player pressed nothing that worked and concluded the mod had not loaded. And ground-flatten levels a wide circle instantly with no hoe and no stamina, which is a build cheat to hand a player.
Ground flatten and a light/particle mute are Devkit menu entries now. The mute is generic, since it works on whatever you point at, rather than reaching into Thralls, since the dependency runs one way and Thralls must work with Devkit absent. God mode and the time cycle were dropped rather than moved: Devkit already had both, and its clock reads off
EnvMan.CalculateDayinstead of guessing at phase times.The
GodModesetting under4 - Miscsurvives and can still be switched on by hand; it just has no key. Stale1 - Keyslines in an existing cfg do nothing and can be left alone.Lost in the move: the diagnostic's material-swap and vertex-colour states, which were specific to how these prefabs are skinned and had no generic equivalent worth inventing.
discuss
The crew
Bindstone, built with the hammer under Crafting. Binds thralls, keeps the crew list and the roll of the dead, and cannot be killed by a raid because it is a piece rather than a person.
discussOne kind of thrall: the greydwarf brute, once the Elder is down. One finished and tested is a release; five half-tested ones are a wishlist.
discussFive work at once, flat, with nothing to build to raise it.
discussNo bindstone upgrades. An upgrade only ever unlocked the breed above it, so with a single breed they were four buildable pieces that did nothing.
discussBinding costs goods from its biome and one head of that creature in particular: a greydwarf brute's head to raise a greydwarf brute.
discussLevelling is earned, not bought. Thralls gain experience by working and level to 20 on their own, hitting harder, working faster and carrying more. Tier fixes the tool tier and no amount of experience moves it, so a levelled brute still cannot fell an oak.
discussStars at level 10 and 20, using the game's own creature levels, so a veteran looks like one.
discuss
Work
Jobs: chop, mine, gather, farm, repair, plus follow and idle.
discussA thrall works a radius around a base point rather than a single target, picks the nearest valid resource, walks over, swings on a timer and picks up what falls.
discussFarming is the whole loop: harvest, sow from the pack, and restock seed from the depot when it runs out. It runs the crop's own checks before sowing, so it will not waste seed on ground where nothing grows.
discussRepairing makes a thrall the site foreman for its radius: it finds the most damaged piece, mends it, and moves to the next worst.
discussThralls never target anything with a Piece or WearNTear, so they will not chop up your buildings.
discuss
The depot
A store you build, and the only place a crew unloads. Any thrall whose work base is within 60m hauls its pack there and draws its seed there.
discussNothing is stored on the thrall: the depot is found from where it works each time one is needed, so moving the store re-points the whole crew at once.
discussBuild as many as you like. A thrall walks to the nearest, and carries on to the next when that one is full.
discuss
Talking to a thrall
Press use on one for its orders panel: follow me, work from here, do something else, show me its pack, take your load in, wait here, send it to rest.
discussWork from here moves the radius to the ground you are standing on and leaves the job alone, so a crew can be moved without being retasked.
discussThe panel shows what it is doing, how full its pack is, and how far it is from both its depot and its work base.
discussIts pack can be listed and taken from, stack by stack, without waiting for a trip.
discuss
Away and back
Send it to rest puts a thrall on the bindstone's roll for nothing; it hands its load in first, and keeps its name, level and tool.
discussCall back wakes a resting thrall for goods from its biome, about half the price of a raise.
discussRaise brings back one that died, at the level it died with. Experience is never lost, only goods.
discuss
Elsewhere
Thralls appear on the map, with a checkbox to turn them off and labels that can be turned off separately.
discussBuilding aids on the numpad: time of day, ground levelling, god mode, and a bindstone effect cycle for diagnosing what you can see. There are no keys for ordering thralls about, that is all menus.
discussAround 140 config settings, every one of them read by something.
discuss
Not in this release
The draugr, the golem, the berserker and the seeker. All four are finished (bodies, costs, gates and hand-built models) and are switched off behind
discussBreeds. Set it to 2, 3, 4 or 5 to turn them on in order.The bindstone upgrades. One exists per breed above the first, so they return with the breeds rather than needing to be switched on separately.
discussThe golem's bare-handed felling, which knocks trees down without an axe and wastes most of the wood. It arrives with the golem at
discussBreeds3.
Known limits
Exercised in single-player. It should work in co-op, since each thrall is driven by whoever owns its ZDO, but dedicated-server use is untested.
discussThe shelved upgrade models are not in the package. If
discussBreedsis raised without putting them back inassets/fromassets/shelved/, those pieces build as stand-ins assembled from vanilla props rather than wearing their own mesh.The bindstone still wears its first model. A redesign is drawn and rendered but not wired up, so the shape in this release is not the shape it will keep.
discuss
Every setting · 146
All of it lives in one file, written on first run with each description beside its default. The file is the source of truth; edit it there.
BepInEx/config/ezomic.valheim.thralls.cfg
2 - Thralls 94
| Setting | What it does | Default |
|---|---|---|
| ShowThrallsOnMap | Whether thralls are marked on the map. Set by the 'Show thralls' checkbox on the map itself, under the one that shares your position. | false |
| MapToggleOffset | How far below the map's public-position checkbox the 'Show thralls' one sits, in pixels. Only worth touching if another mod has put something in that space. | 26 |
| MapPinType | Which map marker a thrall gets. One of Icon0, Icon1, Icon2, Icon3, Icon4, Death, Bed, Shout, Boss, Player, Ping, Hildir1, Hildir2, Hildir3. | Player |
| MapPinLabels | Write each thrall's name and job beside its marker. Turn off if a large crew makes the map unreadable. | true |
| Breeds | How many of the five kinds of thrall are offered, counting up from the greydwarf brute. One ships the brute alone: a thrall is a whole thing to learn rather than the bottom of a ladder, and one kind done properly is a release where five half-tested ones are a wishlist. The other four are written and their code stays in - raise this to 2, 3, 4 or 5 to turn the draugr, golem, berserker and seeker back on. This also decides how many bindstone upgrades exist, since an upgrade is what unlocks the breed above it: at 1 there are none. | 1 |
| MaxThralls | How many thralls you may keep in total. Only a few of them can be working at once - see WorkSlots. | 20 |
| RecruitCost | Cost per thrall, as PrefabName:Amount, comma separated. Empty means free. Set to something like Coins:50 if you want recruiting to bite. | (empty) |
| LevelCaps | Levels a thrall cannot pass without being infused, lowest first. It works to the first number on its own, and stops there until you give it a heartwood; that lifts it to the second, and the second infusion lifts the ceiling to MaxLevel. Each infusion also gives it a star. Empty means no gate and no stars: it levels to MaxLevel on work alone. | 5,10 |
| InfuseItem | The item an infusion consumes, by prefab name. GroveHeartwood comes from Vaettir - if that mod is not installed the item does not exist, the gate cannot be lifted, and the panel says so. Point this at something vanilla to play without it. | GroveHeartwood |
| InfuseAmount | How many of InfuseItem one infusion takes. | 1 |
| MaxLevel | Highest rank a thrall can train to. This is rank, not tier: it does not change which breed you can hire or what tools they can use, only how far the one you hired can be pushed. | 20 |
| LevelThresholds | Experience needed to reach level 2, 3, 4 and so on. Thralls earn it by working; there is nothing to buy. | 150,400,750,1200,1800,2500,3400,4500,5800,7300,9000,11000,13200,15700,18500,21600,25000,28800,33000 |
| XpPerSwing | Experience for each swing of the axe or pick. | 1 |
| XpPerHarvest | Experience for finishing something off - a tree felled, a vein broken, a crop picked. | 10 |
| XpPerPlant | Experience for sowing a seed. | 3 |
| XpPerRepair | Experience for a repair. | 3 |
| Tier1Creature | Creature hired as a tier 1 thrall (greydwarf brute). Must be melee. | Greydwarf_Elite |
| Tier2Creature | Creature hired as a tier 2 thrall (swamp elite). Must be melee. | Draugr_Elite |
| Tier3Creature | Creature hired as a tier 3 thrall (mountain golem). Must be melee. | StoneGolem |
| Tier4Creature | Creature hired as a tier 4 thrall (fuling berserker). Must be melee. | GoblinBrute |
| Tier5Creature | Creature hired as a tier 5 thrall (mistlands seeker). Must be melee - the plain Seeker throws, the brute closes. | SeekerBrute |
| CarryJobs | Jobs an ordinary greydwarf will take. Comma separated, from chop, mine, gather, farm, repair and porter. Following you and standing still are orders rather than trades and are always allowed. | Porter |
| TendJobs | Jobs a shaman will take. It tends what grows, which is sowing, harvesting and picking the ground clean. | Farm,Gather |
| LabourJobs | Jobs a brute will take. The heavy work: trees, rock, and keeping the buildings up. | Chop,Mine,Repair |
| CarryPackBonus | Extra pack slots a carrier gets over the other trades. A porter whose pack is the same size as a woodcutter's is a porter that walks the same distance for a third of the goods, which is the one thing its whole trade is about. | 3 |
| Tier1CarryCreature | The body a Black Forest carrier wears. An ordinary greydwarf, which is the one with a trophy and without a club. | Greydwarf |
| Tier1TendCreature | The body a Black Forest tender wears. | Greydwarf_Shaman |
| Tier1CarryCost | What binding a Black Forest carrier costs. Three heads and bones: the heads are the binding and the bones are what it is bound with, and the count is what separates the three trades from each other. | TrophyGreydwarf:3,BoneFragments:10 |
| Tier1TendCost | What binding a Black Forest tender costs. | TrophyGreydwarfShaman:3,BoneFragments:20 |
| Tier1CarryRevive | What raising a fallen carrier costs: one head and half the bones. Cheaper than binding a new one on purpose, because what you are buying back is the one that already knows its work - it returns at the level it died with. | TrophyGreydwarf:1,BoneFragments:5 |
| Tier1TendRevive | What raising a fallen tender costs. | TrophyGreydwarfShaman:1,BoneFragments:10 |
| Tier1RequiresBoss | The Elder must fall before black forest thralls will answer. Empty means no gate. | defeated_gdking |
| Tier2RequiresBoss | Bonemass must fall before swamp thralls will answer. | defeated_bonemass |
| Tier3RequiresBoss | Moder must fall before golems will answer. | defeated_dragon |
| Tier4RequiresBoss | Yagluth must fall before berserkers will answer. | defeated_goblinking |
| Tier5RequiresBoss | The Queen must fall before seekers will answer. | defeated_queen |
| UpgradesGateTiers | Each bindstone upgrade opens the next breed. Turn off to let the boss keys alone decide. | true |
| Upgrade1Parts | Fallback for the first bindstone upgrade, used only if Upgrade1Model is missing from disk. Each part is prefab:x,y,z:scale:yaw. Green fire over a sunken slab, for the swamp. | "stone_floor_2x2:0,0,0:0.34:0" + ";stone_pillar:0,0.04,0:0.30:0" + ";piece_groundtorch_green:0,0.70,0:0.85:0" |
| Upgrade2Parts | Fallback for the second bindstone upgrade, used only if Upgrade2Model is missing. Stacked rock with a rune stone crowning it, for the mountain. | "stone_floor_2x2:0,0,0:0.46:0" + ";stone_floor_2x2:0,0.18,0:0.32:45" + ";stone_pillar:0,0.30,0:0.42:0" + ";guard_stone:0,0.95,0:0.60:0" |
| Upgrade4Parts | What the fourth bindstone upgrade is built out of, if its model is missing. Black marble, for the mistlands. | "blackmarble_column_1:0,0,0:0.5:0" + ";blackmarble_head_big01:0,0.9,0:0.4:0" |
| Upgrade3Parts | Fallback for the third bindstone upgrade, used only if Upgrade3Model is missing. An arch over open fire, for the war camps of the plains. | "stone_floor_2x2:0,0,0:0.44:0" + ";stone_arch:0,0.10,0:0.52:0" + ";fire_pit:0,0.14,0:0.55:0" + ";piece_groundtorch:-0.62,0.16,0:0.78:0" + ";piece_groundtorch:0.62,0.16,0:0.78:0" |
| Upgrade1Cost | What the bog stone costs. It is the first bindstone upgrade and it opens swamp elites. | Iron:10,Guck:10,WitheredBone:5,Stone:20,ElderBark:15 |
| Upgrade2Cost | What the mountain cairn costs. It is the second bindstone upgrade and it opens mountain golems. | Obsidian:20,FineWood:20,DeerHide:10,Silver:6,Crystal:25,FreezeGland:10 |
| Upgrade3Cost | What the war totem costs. It is the third bindstone upgrade and it opens fuling berserkers. | BlackMetal:20,Needle:15,LinenThread:25,GoblinTotem:2 |
| Upgrade4Cost | What the rift stone costs. It is the fourth bindstone upgrade and it opens mistlands seekers. | BlackMarble:30,Eitr:20,YggdrasilWood:30,Iron:30 |
| Upgrade1Model | Model file for the first bindstone upgrade, sitting next to the plugin dll. Empty falls back to Upgrade1Parts. | thrall_altar_upgrade1.obj |
| Upgrade2Model | Model file for the second bindstone upgrade. Empty falls back to Upgrade2Parts. | thrall_altar_upgrade2.obj |
| Upgrade3Model | Model file for the third bindstone upgrade. Empty falls back to Upgrade3Parts. | thrall_altar_upgrade3.obj |
| Upgrade4Model | Model file for the fourth bindstone upgrade. Empty falls back to Upgrade4Parts. | thrall_altar_upgrade4.obj |
| Tier1Cost | What binding a Black Forest labourer - the brute - costs, as PrefabName:Amount separated by commas. The dearest of the three trades, which is the point: it is the one that fells trees and breaks rock. | TrophyGreydwarfBrute:3,BoneFragments:30 |
| Tier2Cost | What it costs to raise a swamp elite. | Iron:5,Entrails:20,Bloodbag:10,ElderBark:25,Flint:25,TrophyDraugrElite:1 |
| Tier3Cost | What it costs to raise a mountain golem. | Silver:5,Crystal:10,RoundLog:15,ElderBark:15,Stone:15,Flint:15,TrophySGolem:1 |
| Tier5Cost | What it costs to raise a mistlands seeker. | BlackMarble:20,Eitr:15,Softtissue:20,Carapace:15,TrophySeekerBrute:1 |
| Tier4Cost | What it costs to raise a fuling berserker. | BlackMetal:10,Coins:50,FineWood:25,Obsidian:25,TrophyGoblinBrute:1 |
| Tier1ReviveCost | What raising a fallen Black Forest labourer costs: one head and half the bones it was bound with. It comes back at the level it died with, which is what you are paying for - a fresh one costs three heads and starts at nothing. | TrophyGreydwarfBrute:1,BoneFragments:15 |
| Tier2ReviveCost | Swamp goods to raise a fallen tier 2 thrall. | Bloodbag:15,IronScrap:5 |
| Tier3ReviveCost | Mountain goods to raise a fallen tier 3 thrall. | Crystal:10,WolfPelt:5 |
| Tier4ReviveCost | Plains goods to raise a fallen tier 4 thrall. | BlackMetalScrap:15,Needle:10 |
| Tier5ReviveCost | Mistlands goods to raise a fallen tier 5 thrall. | Eitr:10,BlackCore:2 |
| Tier1RecallCost | Black forest goods to call a resting tier 1 thrall back. Empty means free. | GreydwarfEye:10,Wood:10 |
| Tier2RecallCost | Swamp goods to call a resting tier 2 thrall back. Empty means free. | Bloodbag:8,IronScrap:2 |
| Tier3RecallCost | Mountain goods to call a resting tier 3 thrall back. Empty means free. | Crystal:5,WolfPelt:2 |
| Tier4RecallCost | Plains goods to call a resting tier 4 thrall back. Empty means free. | BlackMetalScrap:8,Needle:5 |
| Tier5RecallCost | Mistlands goods to call a resting tier 5 thrall back. Empty means free. | Eitr:5,BlackCore:1 |
| TierDamageStep | Extra work damage per tier above the first, as a fraction. | 0.5 |
| TierSpeedStep | How much faster each tier swings, as a fraction of the base interval. | 0.12 |
| LevelDamageStep | Extra work damage per level above the first, as a fraction. | 0.08 |
| LevelSpeedStep | How much faster each level swings, as a fraction of the base interval. | 0.03 |
| SmashTiers | Tiers that fell trees by hand instead of with an axe, comma separated. Does nothing at the shipped Breeds of 2 - the golem is tier 3 - so this waits for the release that turns the golem on. A breed listed here needs no axe to be set to chopping and will not be offered one, and in exchange it keeps only SmashYield of what the tree drops. The golem is the one that fits: it is a walking boulder, so it clears a treeline faster than anything else you can bind and leaves you splinters for it. Empty means every breed has to be handed an axe. | 3 |
| SmashYield | What share of a smashed tree survives, from 0 to 1. At the default a thrall keeps one log in five and the rest is wasted. Set to 1 to remove the penalty and leave only the no-axe part, or to 0 for a breed that clears ground and brings back nothing at all. | 0.2 |
| PackBaseSlots | Pack slots a tier one thrall carries. A greydwarf brute is not a pack mule. | 1 |
| PackPerTier | Extra pack slots for each tier above the first, so a berserker out-carries a brute. | 1 |
| PackLevelsPerSlot | Levels between each extra pack slot. Note this only ever fires if MaxLevel is at least this high. | 5 |
| AltarName | What the bindstone is called in the build menu and when you look at it. | Bindstone |
| AltarCost | What it takes to build the bindstone. ElderBark is ancient bark, so the bindstone now sits behind the swamp rather than behind Eikthyr - hard antler and greydwarf eyes no longer set the gate, they are just flavour on top of it. | HardAntler:3,Stone:30,Wood:20,GreydwarfEye:5,Bronze:5 |
| AltarBasePrefab | Existing piece the bindstone is cloned from, for its components - the network view, the wear-and-tear and the piece itself. Its own model is switched off and replaced, so this does NOT decide how the altar looks; AltarMaterialFrom and the model files do. Change only if the clone is misbehaving. | guard_stone |
| AltarRange | How close to a bindstone you must be to bind thralls or open its panel. | 20 |
| AltarScale | Overall size of the bindstone. | 1 |
| AltarShapes | Which bindstone shapes appear on the hammer, each as its own buildable piece. They all work identically. A bare name wears the model file of the same name sitting next to the plugin dll; 'name=prefab' wears one of the game's own objects instead; 'name=Location/Prop' reaches inside a location prefab for something that is only ever camp dressing and carries no ZNetView of its own; and any of those can be nudged with ':x,y,z:scale:yaw'. The default wears TraderRune out of Vendor_BlackForest - the red-runed standing stone in Haldor's camp. CAREFUL: the part before the '=' is all the prefab name is built from, and this list alone decides which prefabs exist - nothing here checks the disk. Removing a name destroys every altar of that shape already standing in a world, because ZNetScene discards ZDOs whose prefab it cannot resolve; changing what it wears is free. Empty falls back to the single AltarModel. | bindstone=Vendor_BlackForest/TraderRune |
| AltarIconAngle | Pitch and yaw the build-menu icon of a WORN shape is photographed from, in degrees. Only shapes wearing one of the game's own objects use this - every other shape has an icon rendered beside its model. 0,0 looks it straight in the face, which flattens anything with depth; the default is slightly above and to the left, which is where vanilla lights its own icons from. | 18,-30 |
| AltarVanillaGroups | Material groups that wear Valheim's own stone material instead of a texture of ours, comma separated. Ours are flattened to remove the normal map, which is where the game's stone gets most of its contrast, so a large plain mass reads flatter and darker than the rock around it. Empty means every group uses our own sheets. | darkstone |
| AltarFlattenNormals | Replace the borrowed material's normal map with a flat one on our own textures. Off keeps it, which is where the game's surfaces get their highlights: with it on, every custom sheet reads flat and dead next to real wood and stone however bright the texture is. On is the old behaviour, worth returning to if the donor's bumps land in obviously wrong places on our geometry. | false |
| AltarVanillaWoodGroups | Material groups that wear Valheim's own wood material instead of a texture of ours, comma separated. Same reasoning as AltarVanillaGroups: ours are flattened of their normal map, so a pole beside a real workbench reads black and grainless. Empty means every wood group uses our own sheets. | timber,wood |
| AltarWoodMaterialFrom | Pieces to lift a wood material from, first one that resolves wins. The wooden counterpart of AltarMaterialFrom. | wood_wall,wood_beam,wood_pole,wood_floor,piece_workbench,wood_door |
| AltarModel | Model file sitting next to the plugin dll, used only when AltarShapes is empty. Delete or rename it to fall back to the altar assembled from existing pieces. | thrall_altar_bindstone.obj |
| AltarTexturePoint | Sample the bindstone textures without smoothing, so texels stay square. This is most of what gives Valheim props their crisp blocky look up close; turn it off for a soft, filtered surface. | true |
| AltarBakedShading | Feed the bindstone's baked ambient occlusion to the shader through vertex colours. Only correct if Valheim's piece shader treats vertex colour as a plain tint; if it uses those channels for blending or wear instead, this paints black facets across the model. Off sends plain white. | false |
| AltarUvScale | How many times the texture repeats per metre. Lower means larger, coarser grain. Must match UV_SCALE in tools/altar_model.py, or the preview renders lie about how the altar will look. | 0.5 |
| AltarUvRegion | Patch of the shared stone atlas to sample, as x,y,width,height. Empty reads it off the donor piece, which is almost always right. | (empty) |
| AltarMaterialFrom | Pieces to lift a stone material from, first one that resolves wins. This is what makes the bindstone light and weather like the rest of the world. | stone_wall_2x1,stone_floor_2x2,stone_pillar,stone_arch,stone_wall_4x2,guard_stone,blackmarble_column_1 |
| AltarParts | Fallback for the bindstone itself, used only if its model file is missing from disk. Each part is prefab:x,y,z:scale:yaw, separated by semicolons. Parts that do not exist are skipped. Empty leaves the altar wearing the plain borrowed model. | "stone_floor_2x2:0,0,0:0.62:0" + ";stone_floor_2x2:0,0.18,0:0.4:45" + ";guard_stone:0,0.3,0:1.05:0" + ";stone_pillar:-1.15,0,-0.15:0.7:0" + ";stone_pillar:1.15,0,-0.15:0.7:0" + ";piece_groundtorch:-1.15,1.35,-0.15:0.8:0" + ";piece_groundtorch:1.15,1.35,-0.15:0.8:0" |
| BaseWorkSlots | How many thralls can be working at once. This release gives five flat and offers no way to raise it: with a single breed and no bindstone upgrades there is nothing to earn, and a crew that starts at one is a mod you cannot see working until you have built something else. Set below MaxWorkSlots to make station extensions matter again. | 5 |
| MaxWorkSlots | Hard ceiling on thralls working at once. Equal to BaseWorkSlots by default, which is what makes the crew a flat five: the count is clamped between the two, so with both at five nothing built nearby can add to it. | 5 |
| SlotSearchRange | How far from the bindstone a station extension counts towards your work slots. Dormant while BaseWorkSlots equals MaxWorkSlots, since the clamp discards whatever it finds. | 40 |
3 - Work 12
| Setting | What it does | Default |
|---|---|---|
| WorkRadius | How far from its assigned spot a thrall looks for more of the same resource. | 25 |
| HarvestRange | How close a thrall must be to swing at its target. | 4.5 |
| SwingInterval | Seconds between swings. Higher = slower workers. | 1.6 |
| ChopDamage | Chop damage per swing (trees). | 40 |
| PickaxeDamage | Pickaxe damage per swing (rock and ore). | 40 |
| ToolTier | Tool tier of a tier 1 thrall. Each breed above the first adds one, so a berserker works as tier 4 and a seeker as tier 5. Levels do NOT raise this - they only make a thrall hit harder and faster, so a rank 20 brute still cannot touch what a draugr can. 0 = flint/antler, 2 = bronze/iron, 4 = black metal. | 1 |
| PickupRadius | How far a thrall reaches to pick up what it knocked loose. | 10 |
| DepositRange | How close a thrall must be to the depot to unload into it. | 4 |
| WorkAtNight | If false, thralls idle between dusk and dawn. | true |
| ExtraMineableNames | Extra name fragments treated as mineable, on top of proper ore veins. Comma separated, case insensitive. | rock,stone,copper,tin,silver,obsidian,flametal,mudpile,ore |
| SeedsPerTrip | How much seed a farming thrall draws from the depot per visit. 0 stops them restocking, so they only sow what you hand them directly. | 20 |
| SwingAnimation | Animator trigger played when a thrall works. Empty picks the first one the creature has. Set to 'none' for no animation at all if your chosen creature does something silly. | (empty) |
4 - Misc 3
| Setting | What it does | Default |
|---|---|---|
| GodMode | Hold health and stamina full and switch on the game's own god mode. For building and testing. | false |
| VerboseLogging | Chatty logs, for when something misbehaves. | false |
| TestMode | Makes the bindstone and every upgrade cost one wood, so all four tiers can be built and looked at without four biomes of progression behind them. Turn it off before playing for real - it is announced in the log on startup so it is hard to leave on by accident. | false |
5 - Tools 9
| Setting | What it does | Default |
|---|---|---|
| RequireTools | A thrall must be handed a tool before it will chop, mine or farm. Give it one from its page in the bindstone panel. Turn off to let them work bare handed as they used to. | true |
| ChopTools | Items accepted as a chopping tool, by prefab name. | AxeStone,AxeFlint,AxeBronze,AxeIron,AxeBlackMetal,AxeJotunBane,AxeBerzerkr |
| MineTools | Items accepted as a mining tool, by prefab name. | PickaxeAntler,PickaxeStone,PickaxeBronze,PickaxeIron,PickaxeBlackMetal |
| FarmTools | Items accepted as a farming tool, by prefab name. | Cultivator,Hoe |
| ShowTools | Put the right tool in a thrall's hand for its job. Cosmetic only - it does not change what they hit for. | true |
| ChopTool | Item prefab shown when chopping. AxeStone, AxeFlint, AxeBronze, AxeIron, AxeBlackMetal, AxeJotunBane. | AxeBronze |
| MineTool | Item prefab shown when mining. PickaxeAntler, PickaxeStone, PickaxeBronze, PickaxeIron, PickaxeBlackMetal. | PickaxeBronze |
| FarmTool | Item prefab shown when farming. | Cultivator |
| BuildTool | Item prefab shown when building or repairing. | Hammer |
6 - Altar props 17
| Setting | What it does | Default |
|---|---|---|
| Diagnostics | Cycle the bindstone through a series of test states on load, photographing each. For working out which part of the altar is responsible for something you can see. Costs a few seconds and six images every time a world loads. | false |
| Screenshot | Photograph the bindstone from four sides shortly after it loads, next to the plugin. Only bindstones standing at load time are caught. Do NOT judge colour or brightness from these: the routine forces daylight before shooting and renders through a camera of its own, which carries none of the game's post-processing, so every object in them is lighter and flatter than on screen. Good for shape and placement, misleading for anything else. | false |
| Plinth | Props added to the plinth bindstone, as prefab:x,y,z:scale:yaw separated by semicolons. Missing prefabs are skipped. | "piece_groundtorch:-1.05,0,-1.95:0.9:0" + ";piece_groundtorch:1.05,0,-1.95:0.9:0" |
| Dolmen | Props added to the dolmen bindstone. | "piece_dvergr_lantern:0,0,-1.55:0.85:0" + ";piece_groundtorch_blue:-1.95,0,1.05:0.8:0" + ";piece_groundtorch_blue:1.95,0,1.05:0.8:0" |
| Cairn | Props added to the cairn bindstone. | "fire_pit:0,1.32,0:0.75:0" + ";piece_groundtorch_wood:-2.05,0,-1.25:0.85:0" |
| Circle | Props added to the stone circle bindstone. | "fire_pit:0,0.36,0:0.7:0" + ";piece_groundtorch_green:-2.15,0,1.25:0.85:0" + ";piece_groundtorch_green:2.15,0,1.25:0.85:0" + ";piece_groundtorch_green:0,0,-2.35:0.85:0" |
| PropsWithoutEffects | Prefab name prefixes whose props lose their particles and lights when mounted on a bindstone. Item prefabs sparkle so you can find them dropped in grass, which on an altar just looks like loot lying there. Torches and candles are not listed, because their flame is the point. | Trophy |
| Motes | Drifting motes above each bindstone, coloured to match it. Off by default: the bindstones now wear the game's own stone and wood, and the motes were doing work that the material was not doing before. Turn on for the coloured drift. | false |
| MoteStrength | Multiplier on how many motes each bindstone gives off. | 1 |
| Light | A light on the bindstone itself, coloured to match its motes. Vanilla torches cannot be used as props for this - they are stripped of the component that lights them - and candles alone are too dim to work by. | false |
| LightRange | How far the bindstone's light reaches, in metres. | 18 |
| LightStrength | How bright the bindstone's light is, as a multiple of one of Valheim's own fires. 1 is about a campfire. 0 is the same as turning it off. | 2 |
| MoteMaterialFrom | Pieces to borrow a particle material from, so the motes blend and fog like the game's own effects. | fire_pit,bonfire,piece_groundtorch,piece_groundtorch_green |
| Shrine | Props added to the bench-sized shrine. | "Candle_resin:-0.62,1.06,-0.18:1:0" + ";Candle_resin:0.62,1.06,-0.18:1:0" |
| Worktable | Props for the summoning bench, which has been archived and replaced by the bindstone - kept so the shape still dresses correctly if it is ever put back in AltarShapes. Only the candles: a vanilla item prefab mounted as decoration keeps the sparkle it uses to be findable on the ground. | "Candle_resin:-0.60,1.16,-0.30:0.45:0" + ";Candle_resin:-0.46,1.16,-0.38:0.38:0" + ";Candle_resin:0.62,1.16,-0.30:0.42:0" |
| Bindstone | Props added to the bindstone, on the flat capstone across the front of its kerb. | "Candle_resin:-0.17,0.52,-0.73:0.45:0" + ";Candle_resin:0.17,0.52,-0.73:0.42:0" |
| Barrow | Props added to the barrow bindstone. | "piece_groundtorch_green:-1.55,0,-1.75:0.9:0" + ";piece_groundtorch_green:1.55,0,-1.75:0.9:0" + ";Candle_resin:-0.55,0.95,-0.45:1:0" + ";Candle_resin:0.55,0.95,-0.45:1:0" + ";piece_banner07:-2.30,0,1.15:0.9:0" + ";piece_banner07:2.30,0,1.15:0.9:0" + ";itemstand:0,0.95,0.55:1:180" |
7 - Depot 11
| Setting | What it does | Default |
|---|---|---|
| DepotName | What the depot is called in the build menu and when you look at it. | Thrall depot |
| DepotCost | What it takes to build a depot. Iron puts it at roughly the bindstone's own tier, so a crew that can be bound can be given somewhere to unload. | Wood:20,RoundLog:6,LeatherScraps:4,Iron:2 |
| PorterRange | How far from its work base a porter will walk to fetch from another depot. Larger than DepotRange on purpose: a porter is the one job whose whole point is covering ground between stores, where every other job works a patch and unloads beside it. It is still bounded, because a thrall only runs while a player is near enough to load it - a porter is a crew that shuffles goods while you are at the base, not a courier that works overnight. | 100 |
| DepotBasePrefab | Existing piece the depot is cloned from, for its components - the container, the network view, the wear-and-tear. Its own model is switched off and replaced, so this does NOT decide how the depot looks. It MUST be something carrying a Container or there is nowhere for the goods to go. | piece_chest_wood |
| DepotModel | Model file sitting next to the plugin dll. Delete or rename it and the depot falls back to the donor chest's own model, which works but looks like a chest. | thrall_depot.obj |
| DepotScale | Overall size of the depot. The mast stands 2.7m as modelled, which is deliberate - it is the landmark for its own radius. | 1 |
| DepotRange | How far a depot reaches. A thrall whose work base is inside this hauls to it. Generous on purpose: the point of the depot is that a crew scattered across a treeline all bring their loads to the same place, and a radius smaller than the walk is just a thrall standing still with a full pack. | 60 |
| DepotWidth | Columns of storage in the depot. | 6 |
| DepotHeight | Rows of storage in the depot. Six by four is a large chest and a half: a crew of five fills a normal chest in an afternoon, and a full depot stops them working. | 4 |
| TalkOnUse | Pressing use on a thrall opens its orders panel. Turn off to leave the key doing whatever the creature normally does with it. | true |
| TalkWalkAway | How far you can walk from a thrall before its orders panel closes itself. Matches the bindstone panel. | 8 |
Discussion
Nothing said yet.
Sign in or make an account to join in.