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.
Skaft
Hammer repair reaches further the higher your Crafting skill.
| Date uploaded | a week ago |
| Version | 1.2.0 |
| Download link | Ezomic-Skaft-1.2.0.zip |
| Downloads | 468 |
| Dependency string | Ezomic-Skaft-1.2.0 |
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.2350README
Skaft
Skaft is about repair, and the Crafting skill is what it pays you in.
With the hammer it turns repair into an area repair, and the size of that area is your Crafting skill. Every piece the sweep fixes costs the same stamina, eitr and hammer durability that repairing it by hand would have cost, so the skill decides how far you reach and your stamina bar decides how much of that you can afford in one swing.
At a crafting station the same skill decides how many worn items one press of the Repair button puts right. Vanilla charges nothing to repair an item, so there is no price there to cut and the count is the whole of it: one item a press at Crafting 0, a full kit from 60.
Skaft is Old Norse for the shaft of a tool.
Features
- Repairing a damaged piece with the hammer also repairs the damaged pieces around it.
- The radius comes from Crafting: nothing at level 0, about 2m at 10, 4m at 25, 7m at 50, and 8m from 60 upwards.
- Each swept piece is charged the full vanilla per-piece repair cost. Nothing is free.
- Pieces are repaired nearest first, so a swing that runs out of stamina has fixed the wall in front of you.
- The Repair entry in the build menu shows your current reach in metres and the Crafting level it came from.
- The result arrives in the usual corner message as
Repaired Wood wall x13, using the game's own text. - The sweep will not break your hammer inside one click; it stops a durability point short.
- One press of the Repair button at a bench repairs several worn items: one at Crafting 0, three around 25, seven around 50 and ten from 60.
- The bench half grants vanilla's own skill, per item, so nine items in one press raise Crafting by exactly what nine presses raised it by.
- Either half can be switched off on its own.
- No new prefabs, items, recipes or saved values. A world played with Skaft is an ordinary world, and removing the mod leaves nothing behind.
How the sweep works
Take out the hammer, select Repair, and hit something damaged. Everything damaged within reach of that piece is repaired until your stamina or your hammer durability runs out.
Point at something broken. The sweep only runs when the piece under your cursor was itself repaired by that swing. Hovering an intact wall next to a damaged one does nothing, and a second click within a second does nothing, because vanilla holds each piece on a one second repair cooldown. Following vanilla's own success is how the mod inherits every check the game already makes: build mode, the crafting station a piece requires, ward access, and the full-health test.
The radius is MinRadius + (MaxRadius - MinRadius) * (level / FullLevel)^Curve, read fresh on
every swing. With the default numbers:
| Crafting | Reach |
|---|---|
| 0 | none |
| 10 | 1.9m |
| 25 | 4.0m |
| 50 | 6.9m |
| 60 and above | 8.0m |
FullLevel is 60 rather than 100 because Crafting 100 costs roughly 20,300 crafts and level 60 about 5,700, and repairing buildings trains no skill at all. Crafting rises from crafting and upgrading at a station and from repairing worn items.
Vanilla already makes building and repairing cheaper as Crafting rises: the Hammer's piece
table names the Crafting skill, so GetBuildStamina subtracts up to half the cost at max
level. Measured in game that is 5.00 stamina a piece at Crafting 0, 3.50 at 60 and 2.50 at
100. Skaft does not cancel that, which means the levels above 60 still pay you: the radius
stops growing but each swing affords more pieces.
What it does not do
- It does not train Crafting for a building repair. Repairing a building has never given skill in this game, and the sweep does not invent it. Repairing an item at a bench always has, and that payout is left exactly as vanilla has it: per item, sized by how worn the item was.
- It does not repair anything the hammer could not repair by hand. Other players' buildings yes, exactly as vanilla does, with wards as the permission system in both cases. Objects that are not build pieces, such as dvergr props and Ashlands altars, are skipped.
- It does not fire the build effect, the swing animation or a corner message per piece. One swing already fired those once for the piece under the cursor.
The bench
Stand at a crafting station, open it, and press Repair. Vanilla repairs one worn item per press. Skaft repairs as many as your Crafting allows:
| Crafting | Items per press |
|---|---|
| 0 | 1 |
| 14 | 2 |
| 25 | 3 |
| 50 | 7 |
| 60 and above | 10 |
The count is MinItems + (MaxItems - MinItems) * (level / FullLevel)^ItemCurve, floored, and
FullLevel is the same entry the radius uses. Ten at the top is a full kit: helmet, chest, legs,
cape, weapon, shield, bow and the three tools.
There is no price to charge here, so the count is the constraint. Repairing an item at a bench costs no materials, no durability and no stamina in vanilla, which is why a kit is tedious to repair rather than expensive. The only cost was the pressing, so that is what the skill buys down, starting from vanilla's one.
ItemCurve is a separate entry from the radius's Curve, and it sits above 1 where that one
sits below it. One more metre of reach is nothing; one more item is the difference between
pressing twice and pressing once, so the count is handed over more slowly than the metres are.
What the bench half does not change
- It does not decide which items may be repaired. The game's own check does, with the recipe, the repair station, the station level and the world level. A bench too low for your armour still refuses it.
- It does not change the skill. Crafting is granted per item, by the amount vanilla grants, so the mod never pays you for pressing less.
- It does not repair items in a chest, on the ground or on anybody else. It is your inventory, which is what the button has always meant.
- It does not fire the station effect or a message per item. One press sounds like one press and
says
Repaired 9 itemsin the middle of the screen.
Installation
Install through a mod manager from
Thunderstore, or by hand: put Skaft.dll
in BepInEx/plugins/Skaft/.
Requires BepInEx 5.4.2350. This is a BepInEx 5 plugin and does not work on BepInEx 6.
Longhouse Core is an optional soft dependency. Skaft runs without it; see Multiplayer for what Core adds.
The config file does not exist until the game has been started once with the mod installed.
Configuration
The file is BepInEx/config/ezomic.valheim.skaft.cfg. Every entry has a comment above it
explaining the number.
[Skaft]
| Key | Default | Effect |
|---|---|---|
Enabled |
true |
The whole mod, both halves. Off leaves vanilla single-piece repair untouched in both places. |
MinRadius |
0 |
Reach in metres at Crafting 0. At zero the sweep does not run at all, so a new character gets plain vanilla repair. |
MaxRadius |
8 |
Reach in metres once Crafting reaches FullLevel. At 8, a mid-wall swing covers a 10x6 longhouse end to end. |
FullLevel |
60 |
The Crafting level at which the radius stops growing and a bench press reaches MaxItems. Shared by both halves. |
Curve |
0.8 |
Exponent on the skill fraction. 1.0 is a straight line, below 1 opens the reach earlier, above 1 saves it for the top levels. |
CostMultiplier |
1 |
Multiplies the stamina, eitr and durability charged per swept piece. 1 is exactly what vanilla charges to repair that piece by hand. Pieces already at full health cost nothing either way. |
DurabilityFloor |
1 |
The sweep stops before the hammer would drop to or below this. At 0 a sweep can spend the hammer to its last point, which unequips it and drops you out of build mode mid-job. |
MaxPieces |
200 |
Hard ceiling on pieces repaired in one swing. This is a network guard, not a balance number: each repaired piece is one message out and one broadcast back. |
RepairItems |
true |
Whether one press of the Repair button at a bench repairs more than one item. Off leaves the bench exactly as vanilla has it; the hammer sweep is unaffected either way. |
MinItems |
1 |
Items one press repairs at Crafting 0. One is vanilla. |
MaxItems |
10 |
Items one press repairs once Crafting reaches FullLevel. Ten is a full kit. |
ItemCurve |
1.5 |
Exponent on the skill fraction for the bench. Above 1 saves the count for the higher levels, which is the opposite of what Curve does for the radius, and deliberately so. |
OwnBuildingsOnly |
false |
Restrict the sweep to pieces you placed. False matches vanilla, which repairs anyone's building and leaves permission to wards. The piece directly under your cursor is always vanilla's business, not this setting's. |
ShowReachInBuildMenu |
true |
Add the reach line to the Repair entry in the build menu. |
ReachEntries |
piece_repair |
Comma separated prefab names of the build menu entries the reach line is written on. Other mods hang their own click-on-the-world tools off the same flag, and the sweep can never run on those, so the line is only written on names listed here. |
[Diagnostics]
| Key | Default | Effect |
|---|---|---|
Verbose |
false |
One line per swing to BepInEx/LogOutput.log: skill level, radius, candidates in range, pieces repaired, and what stopped the sweep. Also names any repair entry that is not in ReachEntries, and logs the hammer's real numbers once per session. |
BepInEx writes every setting to disk the first time the mod loads, and from then on the saved value beats a new default in code. If a later version retunes the curve, machines that already have this one keep the old numbers unless the cfg line is edited or deleted.
Multiplayer
Skaft works for whoever installs it. Every decision is made on the client swinging the hammer or pressing the button, from state that client already has, and the only thing that leaves the machine is the repair message vanilla would have sent anyway. Players without the mod are unaffected: they repair one piece per swing and one item per press.
The bench half never touches the network at all. It writes durability on items in your own inventory, which is the field vanilla's own Repair button sets, and nobody else can see it.
None of this can be enforced by the server. WearNTear.RPC_Repair has no permission check and
the server forwards it without inspecting the sender, so any client has always been able to
repair any loaded piece. Checking a radius server-side would mean a second protocol for
something that was never constrained in the first place.
With Longhouse Core installed on both ends, the host's settings are applied on connected
clients in memory for as long as they are connected. The client's own config file is not
written, and their values come back on disconnect. That is what makes the curve a property of
the server rather than an agreement between players: without it, anyone can set MaxRadius to
100 and CostMultiplier to 0 in their own file. RepairItems, MinItems, MaxItems and
ItemCurve are synced for the same reason. ShowReachInBuildMenu and Verbose are exempt,
since they are display and diagnostics rather than balance.
Skaft registers with Core as host-only, so a client without Skaft can join a server that has it. From Core 1.2.0 that also works the other way: a client with Skaft can join a Core server that does not have it. On older Core versions the server refused those clients with the game's stock incompatible-version screen, which is why Skaft 1.0.0 shipped outside the Longhouse pack.
Compatibility
Built against Valheim 1.0.7, BepInEx 5.4.23.5 and Harmony 2.9. Version 1.1.0 and later do not run on pre-1.0 Valheim, and 1.0.0 does not run on 1.0.
Skaft adds three Harmony postfixes, on Player.Repair, Player.UpdatePlacement and
InventoryGui.RepairOneItem, and patches nothing else. Another mod that prefixes Player.Repair
and skips the original makes the sweep inert for that tool, which is correct: Vaettir's
Transplant entry on the cultivator does exactly that, and no sweep should happen there.
Do not run a second area repair mod alongside this one. Both would act on the same swing. The same goes for a second repair-all-items mod: both would act on the same press, and the second one would find nothing left to do or repair past this one's count.
Troubleshooting
Nothing happens when I swing. The sweep only follows a repair that vanilla itself just made, so aim at a damaged piece rather than at an intact one next to it. Below Crafting 10 the reach is under 2m, which will not reach a neighbouring piece.
Only a few pieces get repaired. That is the stamina bar, not the radius. The sweep also
stops at DurabilityFloor and at MaxPieces. Turn on Verbose and the log line says which of
the four stopped it.
No reach line in the build menu. Either ShowReachInBuildMenu is off, or the repair entry
you selected is not named in ReachEntries. With Verbose on, the log names the entry that
was actually selected, once per name.
A setting had no effect. Check the cfg file first: BepInEx keeps the saved value. On a server running Core, the host's value is applied over yours while you are connected.
The log says it could not reach Player.GetBuildStamina or WearNTear.m_lastRepair. A
game update moved those members. The sweep switches off and repair stays vanilla until the mod
is rebuilt.
Status
The sweep has been played in single player and nowhere else. In a live world on 28 August 2026, at Crafting 55, the reach measured 7.5m, which is what the curve predicts, and one swing at a damaged wall repaired the two damaged walls beside it and left the intact ones alone. The radius, the trigger rule, the health filter, the per-piece charge, the corner message and the build menu line are confirmed there.
The bench half has been run, and the curve is the curve. On 22 September 2026 a Devkit scenario drove it in a live singleplayer world: twelve worn crude bows at a roofed workbench, and one press of Repair fixed ten of them at Crafting 60, one at Crafting 0 and three at Crafting 25. Those three numbers together are the shape of the curve, and no other shape produces all three.
The skill payout is vanilla's, and it showed itself without being asked: the single repair at
Crafting 0 had taken Crafting to 1 by the next step of the scenario, which is RepairOneItem
granting what it always granted and the mod adding nothing of its own.
Not yet exercised: a dedicated server, a second player, another player's buildings, wards, and running out of stamina or hammer durability part-way through a swing. The ward argument is that the sweep inherits vanilla's checks because it only runs on a piece vanilla just repaired, which is a reason to expect it to be right rather than a report of it being right.
Bug reports
Report in the Discord or on the issue tracker. Useful to attach:
BepInEx\LogOutput.log, ideally withVerboseset totruein the config.- Whether you were in single player, hosting, or on a dedicated server.
BepInEx\config\ezomic.valheim.skaft.cfg.AppData\LocalLow\IronGate\Valheim\Player.logif a vanilla mechanic broke. Exceptions thrown mid-frame land there rather than in the BepInEx log.
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.
Discord
The Discord is where mod information, updates, support, bug reports and compatibility questions go.
Server
There is a small EU server running the Longhouse pack if you want somewhere to play. Connection details are in the Discord.
Licence
MIT. See LICENSE.
Part of Longhouse
Skaft is included in the Longhouse modpack, which pins the exact versions its members run. It behaves identically installed on its own.
CHANGELOG
Changelog
1.3.0 - 22 September 2026
One line under the crosshair. No change to what a swing or a press does.
Added
-
Damaged in reach: 13under the crosshair, while a repair entry is selected and you are pointing at a piece. It counts the piece under the cursor and every damaged piece within your current reach of it.When the piece under the cursor is intact the line reads
Damaged in reach: 12 (aim at a damaged piece), because that is the one swing the mod will not answer. When nothing in reach is damaged it readsDamaged in reach: none. Below the reach curve there is no line at all, the same way there is no sweep.ShowDamagedInReachturns it off. Like the build menu line it is display rather than balance, so a host running Core does not get to decide it for anybody.
Why a count is worth a line of its own
Damage above three quarters is invisible. WearNTear.UpdateVisual swaps in the worn model
below 0.75 health and the broken one below 0.25, and does nothing above that - so a wall at 90%
looks exactly like a wall at 100%, and a base that has been rained on for a week looks fine. The
health bar tells you about the one piece you are already pointing at, which is the piece you
least need telling about.
And a swing at an intact piece does nothing. The sweep only follows a repair vanilla itself just made, which is what buys it build mode, the station requirement, ward access and the repair cooldown for free. The cost of that is a rule nothing in the game states: point at something broken. It has been the first entry in this mod's troubleshooting section since 1.0.0, which is the wrong place to keep an answer.
What the number is, exactly
Damaged, and in reach. It is the same pass the swing itself makes to find candidates, called
from the HUD instead of from the hammer, so the two cannot drift apart. Everything that can
refuse a piece afterwards still refuses it: stamina, hammer durability, MaxPieces, wards and a
missing crafting station. So the count is what the swing will attempt, not a promise about what
it will finish, and on a long wall the stamina bar will usually stop first.
It is recounted whenever the cursor moves to a different piece, and four times a second while it holds still.
What has actually been run
All of it, on 22 September 2026. A Devkit scenario drove five walls in a row through the four
states the line has - nothing damaged, a whole piece with broken neighbours, a broken piece, and
no reach at all - and each one said what it should. The aim is the game's own: the scenario
turns the camera and lets UpdateWearNTearHover raycast, rather than writing the hovered piece
by hand, so the distance test and the highlight are exercised too.
Then by eye, which is the half a scenario cannot judge: at Crafting 50 the line is there under the crosshair and reads correctly.
The first thing anyone will report is not a bug. At Crafting 0 there is no line at all, and that is the design - a character who has not earned the reach is not told about it. It reads exactly like the feature being broken, which is why the troubleshooting section now says so before anybody has to ask. It caught the person who wrote it.
1.2.0 - 22 September 2026
The bench half of repair. The hammer sweep is untouched.
Added
-
One press of the Repair button at a crafting station now repairs several worn items, and how many is your Crafting skill. One at level 0, two from about 14, three around 25, seven around 50 and ten from 60 - ten being a full kit, which is helmet, chest, legs, cape, weapon, shield, bow and the three tools. So coming back from the swamp is one press at the top of the curve and ten presses at the bottom of it, which is where the game already had you.
The count is
MinItems + (MaxItems - MinItems) * (level / FullLevel)^ItemCurve, floored, read fresh on every press.FullLevelis the same entry the radius uses: one skill, one level at which it has arrived.
Why a count, when the sweep charges a price
Because there is no price here to charge. Vanilla asks for no materials, no durability and no stamina to repair an item at a bench - the presses were the whole cost of it, which is why repairing a kit is tedious rather than expensive. A mod that cut a price here would be cutting nothing. So the constraint is the number itself: it starts at vanilla's one, and the skill is what buys it up.
ItemCurve is its own entry rather than the radius's Curve, and it sits above 1 where that one
sits below it. A count is a much coarser dial than metres: one more metre of reach is nothing,
one more item is the difference between pressing twice and pressing once. Sharing the radius
curve would have handed out three items a press at Crafting 10, at a level where the radius is
deliberately still worth nothing.
The skill it pays is vanilla's, unchanged
RepairOneItem raises Crafting by how worn the item was, once per item. This repairs items the
same way and grants the same amount for each, so nine items in one press raise Crafting by
exactly what nine presses raised it by. That matters because Crafting is what buys the count: if
the payout had been per press rather than per item, the mod would have been feeding the skill
that grants it. It is not. Only the pressing changes.
What it leaves alone
It does not decide which items may be repaired. InventoryGui.CanRepair does, as it always has,
which carries the recipe lookup, the repair-station match, the station level and the world level.
A bench too low for your armour still refuses it, and refuses it here for the same reason.
It does not fire the station effect once per item, and does not report one item at a time. One
press sounds like one press and says Repaired 9 items in the middle of the screen, on vanilla's
own $msg_repaired line with a count where the item name goes. Naming one of nine items and
putting x9 after it - the trick the sweep uses for a wall repaired thirteen times - would be a
lie about which nine things were fixed.
Changed
Enablednow means the whole mod rather than only the sweep.RepairItemsis the switch that keeps one half and drops the other.FullLevelnow drives both halves.
What has actually been run
All of it, on 22 September 2026, in a live singleplayer world, driven start to finish by a Devkit scenario so that it can be run again: twelve worn crude bows at a roofed workbench, and one press of the Repair button fixed ten at Crafting 60, one at Crafting 0 and three at Crafting 25.
Those three numbers are the point of running it. Any one of them alone is satisfied by several wrong implementations - ten is also what "repair everything" does, one is also what a mod that never ran does - and only the curve produces all three from the same press.
The skill payout is vanilla's, and it showed itself without being asked: the single repair at
Crafting 0 had taken Crafting to 1 by the next step, which is RepairOneItem granting exactly
what it always granted, with the mod adding nothing of its own.
Not exercised: a dedicated server, a second player, and a station too low for the item being
repaired. That last one is vanilla's CanRepair either way, which is why it was left to it.
1.1.1 - 12 September 2026
Changed
- Rewritten README. Same mod, clearer documentation: what it does and how to install it come first, then configuration, multiplayer behaviour, compatibility and troubleshooting. Every config table was checked against the plugin's own Config.Bind calls, so the settings, sections and defaults listed are the ones actually bound. No code changed in this release.
1.1.0 - 9 September 2026
Rebuilt for Valheim 1.0. This version does not run on pre-1.0 Valheim, and the previous one does not run on 1.0.
Fixed
- Reads the right global key on Valheim 1.0.
GlobalKeysis the one implicitly numbered enum in the game's API, and 1.0 inserted ten members - moving the no-workbench key from 22 to 27. A compiled ordinal therefore asked about a different key entirely, with nothing logged. Read by name now, taken off the enum member so a rename follows automatically and a removal is a build error rather than a quiet wrong answer.
Changed
- Joins the Longhouse pack. Nothing here changed to allow that; Core was discarding the requirement each mod declares, so a server without Skaft refused every client that had it.
1.0.0 - 2 September 2026
First version. Repairing with the hammer sweeps everything damaged within reach of the piece you hit, and the reach is your Crafting skill.
The reach
Nothing at Crafting 0, about two metres at 10, four at 25, seven at 50, and eight from 60 up.
The curve is min + (max-min) * (level/FullLevel)^0.8 and all four numbers are config entries.
It stops growing at 60 rather than 100 on purpose. Crafting costs roughly 20,300 crafts to reach 100 and about 5,700 to reach 60, so a curve normalised to the top of the bar puts its payoff somewhere no character arrives. The exponent sits below 1 for the same reason: the experience curve is already steep at the top, and a second brake stacked on it hides the whole mod behind a wall.
The price
Each piece the sweep repairs is charged the stamina, eitr and hammer durability that repairing it by hand would have cost. That is the difference between this and every other area repair: the radius says how far you may reach, and the stamina bar says how much of it you can afford.
Vanilla's own price does fall as Crafting rises, and that is kept. The Hammer's piece table names Crafting, so building and repairing already cost up to half as much stamina at high skill: measured in game, 5.00 a piece at Crafting 0, 3.50 at 60, 2.50 at 100. Cancelling that would mean writing a rule against a rule the game already has. It also means the levels above 60 are not wasted once the radius stops growing, because they keep buying pieces per stamina bar instead of metres.
What it will not do
It will not train Crafting, because repairing a building never has, and a reward that feeds the skill granting it is a loop rather than a design.
It will not break your hammer inside a sweep. Repairing subtracts durability without checking zero, so a wide sweep can spend a whole hammer on one press. The game does tell you it broke, but it also unequips it, and being dropped out of build mode by a single click is a different thing from wearing a tool down over the swings that did it.
It will not fire the build effect, the swing animation or a message per piece. One swing already fired all three for the piece under the cursor; forty more of each in the same frame is forty particle bursts, forty broadcast animation calls and forty seconds of corner messages, since those drain at one per second.
Point at something broken
The sweep runs only when the piece under your cursor was itself repaired by the swing. That is deliberate. It is how the mod inherits build mode, the crafting station requirement, ward access and the game's own one second per piece repair cooldown, rather than keeping copies of all four and maintaining them through updates.
The visible consequence is that hovering an intact wall beside a damaged one does nothing, and a second click within a second does nothing.
What has actually been run
The sweep works. At Crafting 55 the reach measured 7.5m, which is what the curve predicts, and one swing at a damaged wall repaired the two damaged walls beside it and left the intact ones alone. The radius, the trigger, the health filter and the charge are all confirmed in a live singleplayer world, on 28 August 2026.
The two pieces of feedback are confirmed too, which matters because neither could be proved by
reading code alone. The corner message reads Repaired Wood wall x3 - one line rather than
three, because the game sums the amounts of two matching messages queued within four seconds,
so the count rides vanilla's own text and needs no new translation. And the Repair entry in the
build menu carries its reach line.
Not yet exercised: wards, another player's pieces, running out of stamina or durability mid-sweep, and anything at all in multiplayer. Singleplayer is not a weaker version of a multiplayer test, it is a different one - there is no owner to hand a repair to and no gate to pass - so nothing above should be read as covering a server.
What a Core server does to this
Skaft registers with Core's gate as HostOnly, and that word describes one direction only. A
client without Skaft joining a server with it is let through, which is the whole reason the
requirement is set that way: such a client is genuinely unaffected, it simply repairs one piece
a swing.
Going the other way, the gate refuses. The manifest each end sends does include the requirement, but the end reading it discards that field on purpose - its own view is what it enforces - so the check for mods present on the far end and absent here has nothing left to tell it that this one is allowed to be one-sided, and reports it as a mismatch. A server running Core without Skaft therefore turns away every client that has it, showing the game's own incompatible-version screen. On a Core server it is installed on the server too, or on nobody. A server with no Core has no gate and does not care.
That is a Core matter rather than a Skaft one, and it is cheap to change if it should be: the field is already on the wire and only the comparison would move.
These defaults are the ones people keep
BepInEx writes every bound entry to disk the first time the plugin loads, and from then on the
saved value beats any new default in code. So the curve, the radius pair and CostMultiplier
shipped here are permanent for anybody who installs this version: retuning them later moves
new installs and nobody else.
That is worth saying out loud in the first published version rather than discovering it in the second, because the numbers have been measured at exactly one point - 7.5m at Crafting 55 - and reasoned everywhere else.