FF15Vikings-VikingQoL icon

VikingQoL

Bigger stacks, shared chests, craft from nearby chests, hover timers, chest icons and colors, locked slots, recipe sorting, clock, map beacons and pings, portal pins, player colors, build camera. In-game settings window, server-synced config.

Last updated 2 days ago
Total downloads 1178
Total rating 0 
Categories Mods Tweaks Tools AI Generated
Dependency string FF15Vikings-VikingQoL-1.3.2
Dependants 0 other packages depend on this package

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2351 icon
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.2351

README

VikingQoL

Quality-of-life for Valheim, built to be safe on dedicated servers: storage, crafting, stations and building helpers in one mod, with a server-synced config.

  • Bigger stacks: 5× by default (wood 50 → 250). Weapons, armor and tools stay at 1.
  • Shared chests: several players can use one chest at the same time. Hovering shows who has it open.
  • Craft from chests: crafting, building, smelting, cooking and refueling use items from nearby chests.
  • Shift+E bulk add: fill a smelter, kiln, fire, oven or turret with one press.
  • Longer build reach: place, remove and repair from further away (8 m instead of 5).
  • Build camera: float the camera around your character with the hammer out, to build roofs and tall walls (press B near a workbench).
  • Timers on hover: smelters, fermenters, cooking stations and fires show how long they will run. Animals, eggs, beehives and sap collectors show when the next thing happens.
  • Crafting window: ingredients show how many you have (inventory plus nearby chests) out of how many you need, and the recipe list can be sorted by name, type or weight.
  • Clock: the day and the time under the minimap, with how long until night falls.
  • Chest peek: hovering a chest shows what's inside as item icons with totals.
  • Portal pins: every portal in the world on your map, with its name, in areas you've explored.
  • Creature markers: optional dots on the minimap: red for monsters, yellow for animals, green for tamed (off by default).
  • Player colors: every player's arrow and name on the map has their color.
  • Beacons and look pings: middle-click on the map to put down a beam of light everyone can see; press the middle mouse button in the world to ping what you're aiming at, for 20 seconds.
  • Chest labels: rename chests and give the name a color; both show on hover and in the chest window.
  • Locked slots: lock inventory slots so Quick stack, Place stacks and Sort leave them alone, and lock chest slots (for everyone) so crafting, stations and Restock never take from them.
  • Search boxes: search a chest (other slots go dim) and the recipe list at any crafting station.
  • Sort, quick stack, restock, chest counts in item tooltips, and a Craft: ON/OFF toggle.
  • Settings window: change your own settings in game, from the Esc menu.

Don't run it together with other mods that change stack sizes, share chests or craft from chests, as they would conflict.

Install

The server and every player need the same VikingQoL version; the server refuses anyone else. Update everyone together.

  • Windows: install with r2modman or the Thunderstore Mod Manager; update with its Update button.
  • macOS: install with a Thunderstore-compatible manager such as Macheim, or manually (below).
  • Manual / dedicated server: put VikingQoL.dll in BepInEx/plugins/VikingQoL/ (needs BepInExPack_Valheim).

Check in game: /vqol in chat shows the version.

About this mod

VikingQoL started as a little project for a group of friends sharing one server, and it was made entirely with AI. We play with it and test each update in our own world, but it hasn't been through a professional code review.

You're warmly welcome to use it, change it and share it however you like. It comes as-is, with no warranty: please back up your worlds and characters before installing, and use it at your own risk. I'm not able to take responsibility for problems it might cause, or to offer support.


Using it

Settings window

Press Esc and click VikingQoL (under Settings), or type /vqol settings in chat. Your own settings are sorted into tabs: Storage, Map, Stations, Building and General. Changes apply right away and are saved. Point at a setting to see what it does. Reset this tab sets the tab back to its defaults. Esc or Close takes you back to the menu.

The Server tab shows the server's current settings, like stack size, chest range and which features are on. You can't change them there. Only the server's config file can.

  • Hotkeys: click the key box and press the new key. Combos with Shift, Ctrl or Alt work. Esc cancels, Backspace removes the key. If the key is already used by the game or by VikingQoL, the window asks first, and keys used twice get a ! mark.
  • Map color: click Auto or one of the 12 colors.
  • Restock list: type Name:Amount pairs, like Wood:50. Anything the window doesn't recognize gets a red ! mark.
  • A key to open the window: set Open this window on the General tab (none by default).

Inventory buttons

Button Left-click Right-click
Sort: Name Sort your inventory (the hotbar row stays) Switch sort type: Name → Type → Weight
Quick stack Put items into chests within 20 m that already hold them (not hotbar or equipped)
Restock Top up equipped ammo to 100, plus RestockItems, from chests within 20 m
Craft: ON/OFF Use only your own inventory for crafting

The chest window has its own buttons in a column on its right side, outside the window so they never cover a slot:

Button What it does
Sort: Name Sort the chest (right-click: switch sort type). Locked chest slots stay where they are.
Craft: ON/OFF OFF keeps this chest out of crafting, building and stations, for everyone. Quick stack and Restock still use it.
Rename Name the chest (see Chest labels)
Color Color of the chest's name
Search box Type part of an item name: slots that don't match go dim

A chest set to Craft: OFF says Not used for crafting when you hover it.

Locked slots

Some things you always want to keep on you: 50 wood and 30 stone for repairs, a stack of arrows, a favorite potion. Lock their slots and Quick stack, Place stacks (the button, and holding E on a chest) and Sort won't touch them.

  • Middle-click a slot in your inventory (press the mouse wheel) to lock it. Do it again to unlock. A locked slot gets a gold frame and a small gold mark.
  • No usable wheel button (a trackpad, for example)? Hold F4 and left-click the slot instead. You can change that key with LockSlotHoldKey; on a Mac keyboard F4 may need the fn key.
  • Everything else works as normal: you can still use, drag, eat, equip and drop items from a locked slot.
  • The lock is on the slot, not the item. If you move the item away, the empty slot stays locked, and whatever you put there next is protected. Picking something up can still land in an empty locked slot.
  • Sort leaves locked slots exactly as they are and arranges everything else around them.
  • Locks belong to your character and are saved with it.

Chest slots can be locked too, the same way (middle-click, or F4 and click). A chest lock is shared: everyone sees the gold frame, anyone who can open the chest can lock or unlock it, and it's saved in the world.

  • Nothing takes items out of a locked chest slot except a player's hand: crafting, building, stations (also Shift+E), Restock, Take all and Sort all leave it alone.
  • Adding to it still works: Quick stack and Place stacks can top it up. Handy for raw meat you want to store but never have cooked.
  • If a station finds what it needs only in locked slots or Craft: OFF chests, it says so (Only found in locked chest slots) instead of "You don't have any processable items".

Shift+E on a station

Hold Shift and press E on a station's ore or fuel button to add as many items as fit. Plain E still adds one.

Works on smelters, kilns, blast furnaces, windmills, spinning wheels, eitr refineries, ovens, fires, braziers, torches, turrets and shield generators. Items come from your inventory first, then from nearby chests (if Craft from chests is on). Cooking-station food slots and fermenters are unchanged.

Plain E on a smelter, cooking station or fermenter also picks from what you carry before it looks in chests: tin ore in your inventory goes in before copper ore from a chest.

E and Shift+E on a charcoal kiln add only plain wood, never fine wood or core wood (KilnWoodOnly, a server setting, on by default). To burn those on purpose, pick them with G on the kiln or use them from your hotbar.

Timers on hover

Grey lines under a station's hover text:

Station Shows
Smelter, kiln, furnace, windmill, spinning wheel Next in 0:25 · all done in 4:10, Fuel lasts 2:40 (need 6 more Coal), or Paused: no fuel / needs roof / smoke blocked / no wind
Fermenter Ready in 23:10, or Not fermenting: needs a roof
Cooking station, oven per slot ready in, done, burns in, burnt; oven fuel time
Fires, braziers, torches Burns for 12:30

Animals, eggs, beehives and sap collectors get the same kind of line:

Hover Shows
Animal being tamed Tamed in ~12:30 and Fed for 0:40 more, or Taming paused: hungry, feed it / Taming paused: frightened
Tamed animal Hungry in 3:40, or Hungry: feed it; Baby in 1:20 when it's expecting
Young animal Grows up in 4:50
Egg Hatches in 12:00, or Not hatching: needs warmth and a roof
Beehive Next honey in 6:10 · full in 31:00, Full, or why it isn't producing (wrong area, no free space)
Sap collector Next sap in 0:40 (when it's full, not connected or draining slowly, the game's own text already says so)

~ marks times that depend on wind (windmills) or on a taming boost. Smelters, cooking stations, animals and eggs only progress while a player is nearby, so those times hold only as long as someone is around (a smelter catches up at most 1 hour). Beehives and sap collectors catch up on the time nobody was near, so their times stay right. The animal and egg lines can be hidden on their own with ShowCreatureTimers.

Crafting window

  • Have / need. Under each ingredient you now see 100/6: how many you have in total (your inventory plus the nearby chests that crafting would use), then how many the recipe needs. It blinks red when you don't have enough, as before. Big numbers are shortened (1.2k/6). Hover an ingredient for the split: Wood · inventory 12 · chests 88. The building window (hammer, hoe, cultivator) shows the same; ShowHaveCount and ShowHaveCountBuilding turn each one off. In worlds with free crafting or building, the plain number stays.
  • Sorted recipe list. The list at a workbench, forge or any other station can be sorted by Name (A to Z), Type (weapons together, armor together, and so on) or Weight. Recipes you can make always come first, then the ones that need more materials. Click the Sort button next to the Craft and Upgrade tabs to go to the next order, right-click to go back; Original is the game's own order. Your choice is remembered (RecipeSortMode), and ShowRecipeSortButton hides the button. The list is rebuilt when you craft, switch tabs or reopen the window, as in the game.
  • Search. The box next to the Sort button filters the recipe list: type iron and you get the recipes with iron in their name first, then everything made with something iron (nails, armor, tools…). Upper/lower case and spaces don't matter. Enter or Esc leaves the box; while you type, E, Tab and the number keys just type. The text clears when you close the inventory. ShowRecipeSearch hides the box.

Clock

A line under the minimap, like Day 34 · 21:40 · night in 3:20. The time moves in 10-minute steps, the text is warm yellow by day and soft blue by night, and after the time it counts down (in real time) to when night falls, or to when the day starts. It follows the game's own clock, so it matches the sun and when you can sleep: daylight is 06:00 to 18:00, and since the game stretches the day, a game hour in daylight is longer than one at night. It hides along with the minimap. Clock24Hour = false switches to 9:40 PM, ShowNightCountdown = false removes the countdown and ShowClock = false hides it.

Chest peek

Hover a chest to see what's inside: the item pictures of its biggest stacks (up to ChestPeekItems, default 6 kinds) with the totals in the corner, then a +N tile for the rest. Totals over 999 are shortened (1.2k). Prefer the old grey text list? Set ChestPeekStyle = Text. Only for chests you could open; carts, ships and graves are unchanged.

Portal pins

Every portal shows on the map with its name; unlinked ones say (unlinked). The server sends the list, so portals far away appear too, but only in areas you've explored (PortalPinsOnlyExplored). The pins aren't saved in your map file, and the map's icon filter hides them like any other icon. Pins you placed yourself are unaffected, so you may see a double.

Creature markers

Dots on the minimap for creatures within EnemyMarkerRange (default 40 m; the server caps it with EnemyMarkerMaxRange, default 60). Each color has its own switch, and you can turn on any of them on its own:

  • Red: monsters (ShowEnemyMarkers). Bosses get a big dot.
  • Yellow: deer, hares and other animals that only run away (ShowAnimalMarkers). Animals that can attack you, such as boars, may show up red as monsters instead.
  • Green: tamed creatures (ShowTamedMarkers).

All are off by default. EnemyMarkersOnLargeMap also shows them on the big map. Only creatures the game has loaded near you are known, so distant creatures are never revealed. Up to 50 dots, the nearest first.

Player colors

Everyone's arrow and name on the map and minimap, and your own arrow, have a color. Everyone sees the same colors. The default is auto (picked from your character name); change it with /vqol color pink, /vqol color #FF8800 or /vqol color auto. Names: Red, Orange, Yellow, Lime, Green, Teal, Cyan, Blue, Purple, Pink, Brown, White. ShowPlayerColors = false turns it off for you only. Colors aren't saved in the world; they're sent again when you join.

Beacons and look pings

Two ways to show your friends where something is. Each player has one of each at a time, both in the player's map color.

  • Beacon (on the map). Open the map and middle-click a spot. A tall beam of light in your color appears there, easy to see from far away, with a label like Ragnar: BEACON · 25 m. The distance updates as you move, and the label stays at the edge of the screen when the beacon is out of view. A pin with your name shows on everyone's map.
    • Middle-click somewhere else to move it. Middle-click the beacon itself, or type /vqol beacon clear, to remove it.
    • A beacon stays until you move it, remove it or log out. Players who join later see it too.
    • The beam is only a picture. It doesn't reveal any of the map.
    • ShowBeacons = false hides the beams and labels for you (the pins stay). The server can turn beacons off with BeaconsEnabled; middle-click on the map is then the game's normal 5-second ping.
  • Look ping (in the world). With the map closed, aim at something and press the middle mouse button. Everyone gets the game's normal ping on that spot, with the distance (Ragnar: PING · 140 m), and it stays for 20 seconds instead of 5. The server sets how long with LookPingDuration (5 to 120).
    • It works on far-away mountains and on the sea too. A new look ping replaces your last one.
    • It does nothing in the inventory (there the middle mouse button locks a slot), in menus or on the map.
    • While the hammer, hoe or cultivator is out, the middle mouse button removes pieces as usual and doesn't ping.
    • Middle mouse already used for something else, like block? Pick another key in the settings window, or type /vqol pingkey G in chat (also V, F7, Mouse3, LeftAlt+G; default goes back to the middle mouse button, none turns it off). Other keys work everywhere, also while building.
    • The server can turn look pings off with LookPingEnabled.

Chest labels

Open one of your chests and click Rename (in the button column beside the window). The name shows in the hover text (Ore (Chest)) and as the window title, for everyone. Anyone who can open the chest can rename it; an empty name removes it.

Once a chest has a name, a Color button appears next to Rename. Left-click goes to the next color, right-click to the previous one; the button shows the current color. Choose from Red, Orange, Yellow, Lime, Green, Teal, Cyan, Blue, Purple, Pink, Brown, White, or None. The name shows in that color on hover and in the window title, for everyone, and it's a little bigger than the rest of the hover text (ChestLabelSize, default 120%, yours only).

Names and colors are saved with the world. If ChestLabelsEnabled is turned off, they're hidden and kept.

Build reach

With the hammer, hoe or cultivator you can place, remove, repair and copy pieces from BuildReach meters away (default 8, vanilla 5).

Build camera

Stand inside a workbench's (or forge's, stonecutter's, …) build area with the hammer out and press B. The camera floats free around your character, who stands still.

  • Move with WASD, Space up, Ctrl down, look with the mouse. Plain walking, jumping and attacking are off while it's on.
  • Place, remove, rotate (mouse wheel) and the right-click build menu all work from the camera's view.
  • Press B again to return.

Fair-play limits: the camera stays within BuildCameraRange (default 25 m) of your character and above the ground; it can't start while an enemy is after you, and it ends if you get hit, put the hammer away or get pushed away. It won't start while you're sitting or on a ship. With BuildCameraRequireWorkbench on (default) it also ends if the workbench goes away. Other players see your character standing still, and you can't open chests or doors while it's on. Keyboard and mouse only. Change the key with BuildCameraKey and the speed with BuildCameraSpeed.

Craft from chests

If the materials are in a chest nearby, it just works. Your inventory is used first, then the nearest chest.

You're using Chests counted within Default
Workbench, forge, cauldron, … the station 20 m
Hammer, hoe, cultivator you 20 m
Smelters, cooking stations, ovens, fires, fermenters, turrets, shield generators, catapults the station 20 m
  • After you craft something with items from chests, the recipe list stays bright for everything you can still afford (it used to go dark until you reopened the station).
  • G on a station also lists items that are only in chests.
  • Never used: carts, ships, graves, dungeon chests.
  • To keep a chest out of crafting, open it and click Craft: ON so it says Craft: OFF. That counts for everyone. Quick stack and Restock still use it.
  • To keep only some items, lock their chest slots (see Locked slots).

Shared chests

Open a chest someone else is using and you both see it live. Every change goes through one player's game (the chest's owner), so two people grabbing the same stack can't duplicate or lose items. Anything that doesn't fit goes to your inventory, then back to the chest, then the ground at your feet. Personal and warded chests open for everyone (configurable).

Chat command

Type these in chat (or without the / in the F5 console):

Command What it does
/vqol Shows the version and whether the server's settings apply
/vqol settings Opens the settings window
/vqol config Lists every server setting
/vqol stack Wood Coins Shows the max stack size of these items
/vqol color pink Sets your map color
/vqol beacon clear Removes your beacon
/vqol pingkey G Sets the look ping key

Settings

File: BepInEx/config/ff15vikings.vikingqol.cfg. Changes apply while the game runs. The Personal - … settings can also be changed in game: Esc → VikingQoL.

Server - …: on a server, the server's file decides these for everyone. Your own copy only counts in single player.

Section Main settings
General RequireSameVersion (keep on), LockConfigFromServer
Stacks StackMultiplier = 5, category multipliers (0 = use the main one), ItemOverrides (e.g. Coins:5000), ExcludedItems
Shared Chests Enabled, ShowViewersInHoverText, IgnorePersonalChestLock, IgnoreWardOnChests
Craft From Chests Enabled, CraftingRadius, BuildingRadius, StationRadius, InventoryFirst
Quick Stack / Sort / Restock Enabled, radius, LockedSlotsEnabled, LockedChestSlotsEnabled
Difficulty WeightMultiplier = 1.0
Stations BulkAddEnabled, HoverTimersEnabled, KilnWoodOnly
Building BuildReachEnabled, BuildReach = 8 (5–20), BuildCameraEnabled, BuildCameraRange = 25 (10–40), BuildCameraRequireWorkbench
Chests ChestPeekEnabled, ChestLabelsEnabled
Map PortalPinsEnabled, AllowEnemyMarkers, EnemyMarkerMaxRange = 60, PlayerColorsEnabled, ClockEnabled, BeaconsEnabled, LookPingEnabled, LookPingDuration = 20 (5–120)

Personal - …: each player's own; the server never overrides them.

Section Settings
Buttons show/hide each button (including ShowRecipeSortButton), ShowChestSearch, ShowRecipeSearch
Hotkeys QuickStackKey, RestockKey, ToggleCraftFromChestsKey, SortKey (empty = none; e.g. L), LockSlotMiddleClick (on), LockSlotHoldKey (F4; empty = none), LookPingKey (middle mouse; empty = none)
Options sort mode, RecipeSortMode (Original, Name, Type, Weight), ShowHaveCount, ShowHaveCountBuilding, chest-count tooltip, restock ammo target, RestockItems (e.g. MeadHealthMinor:10, CookedMeat:20)
Stations BulkAddMax (0–25, 0 = as many as fit), ShowHoverTimers, ShowCreatureTimers
Building BuildCameraKey (B; empty = none), BuildCameraSpeed = 8 (2–30)
Chests ShowChestPeek, ChestPeekStyle (Icons or Text), ChestPeekItems (1–15), ChestLabelSize (100–150 %)
Map ShowPortalPins, PortalPinsOnlyExplored, ShowEnemyMarkers (off), EnemyMarkerRange, ShowTamedMarkers, ShowAnimalMarkers, EnemyMarkersOnLargeMap, ShowPlayerColors, MyColor, ShowClock, Clock24Hour, ShowNightCountdown, ShowBeacons
General DebugLogging, OpenSettingsKey (none)

Safety notes

  • Always start the game with mods. A plain un-modded launch trims oversized stacks in your inventory when you load a world.
  • Before removing VikingQoL, split stacks bigger than vanilla sizes, or vanilla deletes the extra.
  • Lowering StackMultiplier is safe: existing big stacks are kept. Stacks are capped at 65,535 (the save format's limit).
  • Back up your world before changing mods.

Building

Needs the .NET 8 SDK and a Valheim install with a BepInEx profile. dotnet build -c Release writes dist/ and copies the DLL into the profile; override the default paths with -p:GameDir=... -p:ProfileDir=.... Tested on Valheim 1.0.16.