RossQoL
A set of Quality-of-life tweaks, all individually configured. Alpha WIPRossQoL
Quality-of-life tweaks for Valheim. Every tweak has its own switch, and every category has a master switch, so you keep only what you want.
All config lives in BepInEx/config/com.rossdwest.rossqol.cfg. Each
setting's description says whether it is a personal setting or
server-controlled when connected.
Edits to the file apply while the game is running; there is no need to restart. Turning a feature off takes effect straight away. Turning on a feature that was off when the game launched takes effect after a restart. Server-controlled settings changed on a server are pushed to every connected player; while connected, your own edits to them are ignored.
Every player on a server needs RossQoL, at the same minor version.
General
| Setting | Default | What it does |
|---|---|---|
HotReload |
true |
Apply edits to the config file without a restart. |
Combat
Server-controlled when connected.
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All combat and creature tweaks. |
InstantLoot |
true |
A killed creature's loot drops the moment it dies, at its body, instead of when the corpse fades a few seconds later. The corpse still falls and fades as normal. |
Other mods that drop a corpse's loot early do not cause any loot to drop twice alongside this.
Crafting
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All crafting station tweaks. |
RecipeSearch |
true |
A search box above the crafting recipe list. Typing narrows the list to recipes whose name or type contains the text, ignoring case and spaces. Works on the Craft and Upgrade tabs; clears when the panel closes. |
SearchAutoFocus |
true |
Puts the cursor in the search box when you open a crafting station, so you can type straight away. Not for the plain inventory, or with a gamepad. |
MultiCraft |
true |
Adds a number box beside the Craft button; that button then makes as many as the box says, 1 to 100. Stackable items only. Server-controlled. |
BenchRange |
true |
Crafting stations reach further than vanilla's 10 m. Server-controlled. |
BuildRange |
40 (metres) |
How far from a crafting station you can build, 1 to 100. |
BuildRangePerType |
(empty) | Per-station ranges overriding BuildRange, e.g. piece_workbench:30, forge:15. |
CraftFromChests |
true |
Crafting, upgrading and building may take materials from nearby containers. Your pack is spent first. Requirement rows read "have/need", counting pack and containers together. Server-controlled. |
CraftRadius |
40 (metres) |
How far to look for containers to craft from, 1 to 100. |
BuildFromChests |
true |
The hammer draws on containers too, not just crafting stations. |
ExtensionRange |
10 (metres) |
How far an attachment may sit from its station, 1 to 50. Vanilla is 5. Applies to attachments as they load. |
AutoRepair |
true |
Opening a crafting station repairs everything it is able to repair, in one go. Server-controlled. |
Besides names, you can search by type: helmet, chest, legs, cape,
armor, shield, utility, tool, torch, ammo, food,
material, trinket and weapon, plus a weapon's skill in your game's
language (axes, bows, knives and so on). Type words are matched
like names, so bow also finds crossbows.
While the search box has the cursor, game keys are ignored: E and Tab type letters instead of closing the panel. Press Enter or click elsewhere to leave the box, or close the panel with Esc.
Death
Server-controlled when connected, except GraveMarker's own settings, which are yours.
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All death and corpse run tweaks. |
GraveMarker |
true |
A marker over your grave, sliding to the edge of the screen and pointing at it once it is out of view. Gone once the grave is emptied. |
MinItemsToTrack |
1 |
The fewest items a grave has to hold before it is tracked at all. Server-controlled. |
HideDistance |
10 (metres) |
How close to a grave before its marker hides, so it does not cover the grave itself. |
EdgeMargin |
60 |
How far in from the edge of the screen the marker sits when the grave is off screen. |
ClearGraveKey |
Delete |
Hold this key to stop tracking the selected grave. |
ClearGraveHoldSeconds |
1.5 (seconds) |
How long ClearGraveKey must be held before the selected grave is forgotten. |
CycleGraveKey |
PageDown |
Press to switch the tracked marker to your next remembered grave. |
SkillLoss |
true |
Scales how much skill a death costs. |
SkillLossMultiplier |
1 |
How much skill you lose when you die, against vanilla's usual loss, 0 to 2. 1 is the usual loss, 0.5 is half, 0 is none. A soft death still costs nothing. |
RespawnFood |
true |
Respawning after a death puts a meal in your belly, chosen by how far the world has got. |
RespawnFoodCount |
1 |
How many portions of food you are handed on respawn, 0 to 3. |
RespawnFoodsByFrontier |
(tiered list) | The food handed out on respawn, by how far the world has got. Format is Tier:Food|Fallback|Fallback,Tier:.... |
RespawnRested |
true |
Respawning after a death also guarantees at least RestedMinutes of Rested. |
RestedMinutes |
10 (minutes) |
Minutes of Rested handed out on respawn. |
CorpseRun |
true |
A buff called "Just Died" that grows with how far your grave still is: more stamina regeneration and cheaper running and jumping. |
CorpseRunMinDistance |
50 (metres) |
How far your grave has to be before the buff starts climbing past CorpseRunMinStrength, its strength at the grave itself. |
CorpseRunFullDistance |
1000 (metres) |
How much further than CorpseRunMinDistance for the buff to reach full strength. |
CorpseRunMaxRegenBonus |
0.55 |
The most the buff can add to stamina regeneration. |
CorpseRunMaxDrainReduction |
0.25 |
The most the buff can cut running and jumping stamina cost by. |
CorpseRunMinStrength |
0.5 |
The buff's strength standing right at your own grave, as a fraction of full strength, 0 to 1. The rest is earned back by distance rather than the buff sitting flat until CorpseRunMinDistance kicks in. |
CorpseRunMinutes |
10 |
How many real-time minutes the buff can last for a given grave, counting down no matter what you do. A fresh death always gets its own full CorpseRunMinutes, and the clock is not saved across a relog. 0 removes the limit. |
GraveMarker shows a second, on-screen indicator toward your own graves;
vanilla's own death pin on the map is untouched and appears exactly as it
always has. A quiet hint line under the marker names ClearGraveKey, the
key you can hold to dismiss it, and, once you have died more than once and
CycleGraveKey is bound (PageDown by default), the key to cycle to your
next remembered grave -- CycleGraveKey only moves that marker, the Just
Died buff always tracks your newest grave regardless of what the marker is
pointed at. If you died inside a dungeon, both the marker and the buff aim
at the dungeon's entrance for as long as you are outside it, and switch to
the grave itself once you are back underground -- so the distance you are
shown is always the distance you actually have to cover. The buff eases off in steps as
you close the distance on your grave, but never all the way to nothing
while the grave still stands, and ends the moment you loot it, or after
CorpseRunMinutes of real time if you don't make it back in time (a fresh
death starts its own full CorpseRunMinutes; that clock is not saved
across a relog). It is a separate, much milder effect from vanilla's own
Corpse Run reward, which is still granted in full once the grave is
emptied -- Just Died is only meant to ease the walk there, not replace that
payoff.
Fires
Server-controlled when connected.
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All fire tweaks. |
AutoFeed |
true |
Fire pits, hearths, standing and wall torches, braziers and bathtubs take fuel from nearby containers. |
InfiniteFuel |
true |
A fire at maximum fuel stops burning down and stays lit without spending more. |
How far fires reach for fuel, how often they try, and how much wood they
leave behind are the Production settings FeedRadius, FeedInterval,
MinimumLeftBehind and MinimumPerItem, shared with the workshop so a
reserve of wood is set in one place.
A fire below maximum burns as it always did, so one that is never filled still goes out. Fires that are eternal in vanilla are left exactly as they are.
Food
Server-controlled when connected, except the warning, which is yours.
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All food tweaks. |
NoFalloff |
true |
Food gives its full effect for its whole duration instead of fading as the timer runs down. |
ExpiryWarning |
true |
Warns you before a meal runs out rather than after. |
WarningSeconds |
60 |
How long before a meal runs out to warn you, 5 to 600. |
Items
Server-controlled when connected.
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All item tweaks. |
StackableMeadBases |
true |
Mead bases and barley wine bases stack instead of taking a slot each. Finished drinks are unchanged. |
MeadBaseStackSize |
20 |
How many bases fit in one slot, 1 to 100. |
WisplightCarry |
true |
A wisplight in your inventory works exactly as if equipped -- wisp, light and mist -- without using the utility slot. |
RecallSummons |
true |
The Dead Raiser's secondary attack calls every skeleton it raised, and that is still following you, back to your side. Plays the staff's own cast animation and sound, with a brief cast time before your skeletons arrive. Costs no eitr, stamina or health. |
RecallCooldownSeconds |
8 (seconds) |
How long between uses of the recall attack, 0 to 60. 0 allows it every time. |
RecallCastSeconds |
0.5 (seconds) |
How long the recall takes to complete once the cast animation and sound start, 0 to 3. 0 makes it instant. |
Stack sizes are written into saved items, so everyone in a world needs to agree on them: this is a server setting, and a player without the mod would see stacks their game does not expect. Unstack your mead bases before turning it off, or a stack larger than vanilla allows is left in your chest.
Interface
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All HUD and interface tweaks. |
Clock |
true |
Shows the in-game day and time under the minimap, e.g. Day 42 14:30. Midnight is 00:00, sunrise 06:00, sunset 18:00. Hidden whenever the minimap is, including on worlds without a map. |
Clock24Hour |
true |
24-hour time. Off shows 12-hour time, e.g. 2:30 PM. |
ProductionTimers |
true |
Beehives, sap collectors and fermenters show how long until the next honey or sap, until they are full, and until a batch is ready. |
PanCamera |
true |
Hold PanKey to look around with the mouse without turning your character. |
PanKey |
LeftAlt |
The key to hold for panning. |
PanMaxPitch |
70 (degrees) |
How far up or down panning can look, 10 to 89. |
Notifications |
true |
Top-left notifications stack instead of each one wiping out the last. Up to five lines at a time, each with its own icon, fading on its own. |
NotificationsShowSkillGain |
true |
Show what a skill gained and how far towards the next level that is, e.g. Woodcutting +12 (3%). Off keeps pickups and level-ups and drops only these lines. |
Vanilla shows one top-left message at a time and folds a repeat into it
only when that repeat is the very next message to arrive, so picking up
wood with anything happening in between splits it into separate
showings. With notifications on, each line is found by what it is about:
picking up more wood updates the wood line in place, Wood x12 becoming
Wood x20, no matter what arrived in between. Skill gains accumulate the
same way, so forty swings are one line counting up rather than forty
lines, and a level-up still reads as a level-up. Messages across the
middle of the screen are untouched.
A skill line shows what the game added and the share of the next level
it works out to, both growing as you keep going: Woodcutting +12 (3%).
The share is progress towards the next level, so the same gain is worth
less of a level the higher the skill is. A gain worth less than one
percent reads as <1% rather than rounding down to nothing.
Production countdowns are in real minutes and seconds, and read the same for everyone, not just the player the producer belongs to. They follow each producer's own rate, so a mod or server that changes how fast things produce is reflected.
Portals
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All portal tweaks. |
TamesFollow |
true |
Tames following you come through portals with you, and through dungeon doors too, in both directions. |
TameFollowRadius |
20 (metres) |
How close a following tame must be to come along. Measured in three dimensions. 0 brings nothing. |
TameSearchDistance |
6 (metres) |
How far from your arrival point to look for a clear spot for each tame, before placing it at your own position. Lower it for tight portal huts. |
InstantPortals |
true |
Portals skip the fixed wait: you arrive as soon as the destination has loaded, instantly when it already is. Other teleports are unchanged. |
Ridden creatures (a saddled lox, for example) are not brought along.
Skeletons raised by the Dead Raiser count as creatures following you, so
they come through with your tames, under the same TameFollowRadius and
TameSearchDistance.
Dungeon doors work the same way: walk your wolves or skeletons into a crypt, a cave or a mine and they arrive inside with you, and they come back out with you again. The same settings apply — there is no separate switch — and summons are held safe for the journey, which matters more here than at a portal, since a dungeon interior sits far enough from its own doorway that a summon left behind would be dismissed.
With InstantPortals, a portal to somewhere already loaded, such as the
other end of a portal hub, is instant. A far portal still shows the
loading screen while the destination actually loads.
Production
Server-controlled when connected.
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All production tweaks. |
AutoHarvest |
true |
Beehives, sap collectors, fermenters and windmills near a player empty themselves into nearby containers. |
HarvestBeehives |
true |
Include beehives. |
HarvestSapCollectors |
true |
Include sap collectors. |
HarvestFermenters |
true |
Include fermenters. A finished batch moves whole or not at all. |
HarvestWindmills |
true |
Include windmills. Flour goes into a container as it is milled, instead of waiting to be emptied by hand. |
HarvestRadius |
40 (metres) |
How far from a producer to look for containers, 1 to 100. Measured in three dimensions. |
HarvestInterval |
10 (seconds) |
Time between harvest attempts for each producer, 1 to 3600. |
AutoFeed |
true |
Producers take what they need from nearby containers. |
FeedSmelters |
true |
Include smelters. |
FeedKilns |
true |
Include charcoal kilns. See KilnFuel. |
FeedBlastFurnaces |
true |
Include blast furnaces. |
FeedWindmills |
true |
Include windmills. |
FeedSpinningWheels |
true |
Include spinning wheels. |
FeedOvens |
true |
Include ovens. Fuel only; what to cook is still put in by hand. |
FeedShieldGenerators |
true |
Include shield generators. |
FeedFermenters |
true |
An empty fermenter takes a mead base and starts it. |
FeedRadius |
40 (metres) |
How far from a producer to look for containers to take from, 1 to 100. Fires use this too. |
FeedInterval |
1 (second) |
Time between feed attempts for each producer, 1 to 3600. One item moves per attempt, so this is also how fast a producer fills. Fires use this too. |
MinimumLeftBehind |
0 |
How many of an item to leave across the containers near a producer. A total for the area, not per chest. |
MinimumPerItem |
(empty) | Per-item totals overriding MinimumLeftBehind, e.g. Wood:50, Barley:20. |
KilnFuel |
Wood |
What a kiln may be fed, comma-separated. Empty allows anything it accepts. |
MaxOutput |
(empty) | Stop feeding a producer once this many of what it makes sit in nearby containers, e.g. Coal:200. |
SafeRefinery |
true |
The Eitr Refinery no longer spits the damaging, knocking-back projectile that otherwise fires out of it while it runs. Its steam, light, sound and smelting are unchanged. Applies to whoever owns a given refinery. A refinery already running when this is switched on keeps its old behaviour until it is next turned off and back on, or the area is reloaded. |
Output goes first into containers that already hold that item, then into the nearest container with room. Containers from storage mods count too: ItemDrawers drawers take only the item they hold, up to their capacity. Output that fits nowhere stays in the producer; a fermenter's batch goes into one container whole and is never split. A windmill's milled flour moves the same way, so it no longer has to be emptied by hand, and stays in the windmill when nothing nearby has room. Kilns, smelters, blast furnaces and spinning wheels are left alone and keep dropping their output on the ground.
Harvesting is done by the game of the player the producer belongs to at the moment, usually whoever is nearest, so a base empties only while someone is near it. Beehives and sap collectors fill up as normal while nobody is. A producer is harvested only while that player has ward access where it stands, the same as it would take to use it by hand.
A container is used only if you could open it yourself: not private to someone else, not behind a ward you have no access to, and not open. A container another player's game is looking after is skipped until they leave the area.
Progression
Server-controlled when connected.
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All boss progression tweaks. |
TeleportUnlocks |
true |
Metal, ore, dragon eggs, the mechanical spring and the Dvergr extractor may go through a portal once the boss of their biome is dead. |
ClearMist |
true |
Killing the Queen clears the mist from the Mistlands. |
MiningPower |
true |
Rock and ore in a biome whose boss is dead take more damage per swing. Trees are unaffected. |
MiningMultiplier |
2 |
How much harder you hit that rock, 1 to 10. |
SmeltingYield |
true |
Ore from a biome whose boss is dead smelts into more bars for the same fuel, and the Eitr Refinery yields more refined eitr once the Queen is dead. |
SmeltingMultiplier |
2 |
How many bars one such ore, or how many refined eitr, you get, 1 to 10. |
DungeonRespawn |
true |
Dungeons whose own boss is dead come back as first found, RespawnDays after your last visit: burial chambers and troll caves (Elder), sunken crypts (Bonemass), frost caves (Moder), infested mines (Queen). Which boss a dungeon waits for is read from the dungeon's own type, not from the ground under its entrance, so a dungeon near a biome border still answers for itself; anything unrecognised is left alone. Rebuilt from the dungeon's own seed, so the layout is unchanged. Surface camps and villages are never touched. Server-controlled. |
RespawnDays |
24 (in-game days) |
Days after your last visit before a dungeon is rebuilt, 1 to 1000. |
ProtectPlayerBuilds |
true |
A dungeon holding anything you built stops respawning, rather than being cleared out. A rebuild destroys everything inside, a portal or stash included. |
Each biome answers for itself: the Elder frees copper, tin and bronze; Bonemass frees iron; Moder frees silver and dragon eggs; Yagluth frees black metal; the Queen frees the mechanical spring and the Dvergr extractor. Killing a later boss says nothing about an earlier biome, so a fresh character on an old world still has to beat the Elder before carrying copper home.
Anything else vanilla refuses to teleport, it still refuses, and nothing is written into your saved items: turn this off and the ore is simply refused again.
Startup
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All startup and main menu tweaks. |
ContinueButton |
true |
A Continue button on the main menu resumes your last session: the local world or server you last played, with the character you used. |
SkipSplash |
true |
Skips the logos at launch and the main menu intro video. |
SkipValkyrie |
true |
Skips the Valkyrie flight and intro text on a new character's first spawn. You start at the sacrificial stones as normal. |
About Continue:
- Local worlds resume private. To host for friends, use Start game as usual.
- Server passwords are never stored; the normal password prompt appears.
- Crossplay servers are rejoined by join code when one is known, falling back to the server's id. Codes change when a host restarts.
- The button is hidden when the recorded character or world is gone, or
when the game was launched with
+connect,-joincodeor-joinserverwithcharacter.
Tames
Server-controlled when connected.
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All tame tweaks. |
FollowCommand |
true |
Every tamed creature can be told to follow you or stay, like a wolf: press Use on it to switch. Creatures vanilla already lets you command are unchanged. |
NoSummonCommands |
true |
Raised skeletons cannot be petted or told to stay, so they always follow you and always count against how many you may have at once. Tamed creatures are unaffected. |
CullWoundedSummons |
true |
When raising a new skeleton puts you over your summon limit, the one that disappears is the most badly wounded rather than the oldest. Equally hurt summons fall back to the oldest, as vanilla does. How many you may have at once is unchanged. |
FeedFromContainers |
true |
A hungry tame with no food on the ground near it eats one item it likes from a container within FeedRadius. Only creatures that are already tame. |
FeedRadius |
10 (metres) |
How far from a hungry tame to look for food in containers, 1 to 50. Measured in three dimensions. |
SilentBirths |
true |
Tames give birth without the birth sound. The birth's other effects still play. |
QuietWolves |
true |
Tamed wolves stop howling, including wolves another player owns. Wild wolves still howl, and other creatures keep their own sounds. |
QuietChickens |
true |
Chicks and hens make no sound: no peeping, clucking, wing flapping, pecking, mating, footsteps, hurt or death. Birds another player owns are quiet too, and other creatures keep their own sounds. |
A creature told to follow keeps following after you log out and back in,
as a wolf does, even if FollowCommand is turned off in between; tell it
to stay first. With Portals/TamesFollow, following tames come through
portals and dungeon doors with you.
A raised skeleton is not one of those creatures. Vanilla only counts a
summon against your limit while it is following you, so a skeleton parked
somewhere stopped counting and the next cast raised one more than the
limit allows. With NoSummonCommands on, pressing Use on a raised
skeleton does nothing at all -- no petting, no stay, no renaming -- and
the hover text no longer offers any of it.
Raising one more skeleton than the limit allows still costs you a
skeleton. With CullWoundedSummons on, the one you lose is whichever is
furthest from full health rather than whichever you raised first, so a
skeleton chewed down to a sliver is replaced and the fresh ones fighting
beside you are kept. Health counts as a share of the creature's own
maximum, not as a number, so a tougher summon is not thrown away for
having more to lose. Summons hurt the same amount fall back to the
oldest, exactly as vanilla picks. Nothing else about the limit moves:
the same creatures count, the check still happens only as a summon
starts following you, and the same number survives it.
A hungry tame looks for food on the ground first, as usual, and only then in the nearest container holding something it eats. It eats one item each time it would look for food, so it stays fed as it would from food on the ground. Containers follow the same rules as AutoHarvest: only ones you could open yourself, not open, and not being looked after by another player's game. Drawers count too. In multiplayer a tame is fed by the game of whoever is nearest to it, so it eats from containers near that player; a container someone else is standing by waits until they move away.
Terrain
Server-controlled when connected.
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All terrain tweaks. |
UnlimitedHeight |
true |
Raise and dig terrain beyond vanilla's 8 metres from the original ground, up to MaxRaise and MaxDig. |
MaxRaise |
200 (metres) |
How high ground can be raised above its original height, 1 to 200. Vanilla is 8. |
MaxDig |
200 (metres) |
How deep ground can be dug below its original height, 1 to 200. Vanilla is 8. |
Edits past 8 metres are saved in the world. With UnlimitedHeight off, or
RossQoL removed, that ground is drawn at 8 metres, and reappears when it is
turned back on, as long as nobody edits it in the meantime. Raising,
digging or levelling ground while the feature is off, or after lowering
MaxRaise or MaxDig, permanently cuts the edited area down to the lower
limit. Lower the limits only on ground you do not mind losing.
World
Server-controlled when connected.
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
All world and item tweaks. |
FloatingItems |
true |
Dropped items float on water instead of sinking, as wood does. |
FloatDepth |
0.4 (metres) |
How deep a floating item sits below the surface, 0 to 2. |
FastSleep |
true |
Sleeping is quicker: the night passes in SleepSkipSeconds and the black screen fades in SleepFadeSeconds. |
SleepSkipSeconds |
2 (seconds) |
How long the night takes to pass while everyone sleeps, 0.1 to 12. Vanilla is 12. |
SleepFadeSeconds |
0.5 (seconds) |
How long the screen takes to fade to black and back when sleeping, 0 to 3. Vanilla is 3. |
AoeRepair |
true |
Repairing with the hammer also repairs every damaged piece within RepairRadius of the one you clicked. |
ComfortRange |
true |
Furniture counts toward comfort from further away. Server-controlled. |
ComfortRadius |
20 (metres) |
How far from you furniture still counts toward comfort, 5 to 100. Vanilla is 10. |
RepairRadius |
15 (metres) |
How far the hammer's repair reaches, 1 to 50. |
NoWeathering |
true |
Rain no longer wears down or greys your buildings. Pieces still collapse without support and still take damage from creatures and players. Server-controlled. |
Items get vanilla's own floating behaviour, so they bob, splash and ride waves like wood, and float in tar too. Live fish are left alone, so fishing works as normal; a fish you drop from your inventory floats like any other item. Items already lying on a seabed stay there until someone picks them up and drops them again.
A hammer repair costs one swing of stamina and durability however many pieces it fixes. Pieces behind a ward you have no access to are skipped, and so are undamaged ones. A message says how many extra pieces were repaired.
Sleeping keeps every vanilla rule: everyone must be in a bed, the same
night passes, and you wake rested. Only the waiting is shorter, about 3
seconds end to end instead of 18. The night is skipped by the server, so
SleepSkipSeconds comes from the server you are on.
Dependencies
- BepInEx 5.4.2350
- Jotunn 2.30.0 or newer


