

This mod adds some QoL features as a serverside-only mod.
It's designed and tested for dedicated servers with vanilla clients (e.g. xbox users).
This mod is in early development and the features experimental. Backup your world before using this mod.
All of these features are disabled by default and must be enabled in the configuration first
I'm developing this mod mainly for myself, so the main deciding factor if a feature gets implemented or not (besides if it is technically possible) is if I think it's something I may want to use myself.
However, if you have an idea you think might fit this mod, I invite you to create a feature request issue in the github project.
If you experience an issue, please file a report in the github project.
The configuration is loaded from $(ValheimInstallDir)/BepInEx/config/argusmagnus.ServersideQoL.cfg. Start the server once to generate the file if it does not exist.
| Category | Key | Default Value | Acceptable Values | Description |
|---|---|---|---|---|
| General | Enabled | True | True/False | Enables/disables the entire mode |
| General | InWorldConfigRoom | False | True/False | True to generate an in-world room which admins can enter to configure this mod by editing signs. A portal is placed at the start location |
| General | DiagnosticLogs | False | True/False | Enables/disables diagnostic logs |
| General | Frequency | 5 | From 0 to Infinity | How many times per second the mod processes the world |
| General | MaxProcessingTime | 20 | Max processing time (in ms) per update | |
| General | ZonesAroundPlayers | 1 | Zones to process around each player | |
| General | MinPlayerDistance | 4 | Min distance all players must have to a ZDO for it to be modified | |
| General | IgnoreGameVersionCheck | True | True/False | True to ignore the game version check. Turning this off may lead to the mod being run in an untested version and may lead to data loss/world corruption |
| General | IgnoreNetworkVersionCheck | False | True/False | True to ignore the network version check. Turning this off may lead to the mod being run in an untested version and may lead to data loss/world corruption |
| General | IgnoreItemDataVersionCheck | False | True/False | True to ignore the item data version check. Turning this off may lead to the mod being run in an untested version and may lead to data loss/world corruption |
| General | IgnoreWorldVersionCheck | False | True/False | True to ignore the world version check. Turning this off may lead to the mod being run in an untested version and may lead to data loss/world corruption |
| Build Pieces | DisableRainDamage | False | True/False | True to prevent rain from damaging build pieces |
| Build Pieces | DisableSupportRequirements | None | None or combination of PlayerBuilt, World | Ignore support requirements on build pieces |
| Carts | ContentMassMultiplier | 1 | From 0 to Infinity | Multiplier for a carts content weight. E.g. set to 0 to ignore a cart's content weight |
| Containers | AutoSort | False | True/False | True to auto sort container inventories |
| Containers | AutoPickup | False | True/False | True to automatically put dropped items into containers if they already contain said item |
| Containers | AutoPickupRange | 64 | Required proximity of a container to a dropped item to be considered as auto pickup target | |
| Containers | AutoPickupMinPlayerDistance | 8 | Min distance all player must have to a dropped item for it to be picked up | |
| Containers | InventorySize_Cart | 6x3 | Inventory size for 'Cart' | |
| Containers | InventorySize_incinerator | 7x3 | Inventory size for 'Obliterator' | |
| Containers | InventorySize_Karve | 2x2 | Inventory size for 'Karve' | |
| Containers | InventorySize_piece_chest | 6x4 | Inventory size for 'Reinforced Chest' | |
| Containers | InventorySize_piece_chest_barrel | 6x2 | Inventory size for 'Barrel' | |
| Containers | InventorySize_piece_chest_blackmetal | 8x4 | Inventory size for 'Black Metal Chest' | |
| Containers | InventorySize_piece_chest_private | 3x2 | Inventory size for 'Personal Chest' | |
| Containers | InventorySize_piece_chest_wood | 5x2 | Inventory size for 'Chest' | |
| Containers | InventorySize_piece_gift1 | 1x1 | Inventory size for 'Yuleklapp' | |
| Containers | InventorySize_piece_gift2 | 2x1 | Inventory size for 'Yuleklapp' | |
| Containers | InventorySize_piece_gift3 | 3x1 | Inventory size for 'Yuleklapp' | |
| Containers | InventorySize_piece_pot1 | 1x2 | Inventory size for 'Medium Green Pot' | |
| Containers | InventorySize_piece_pot2 | 1x3 | Inventory size for 'Large Green Pot' | |
| Containers | InventorySize_piece_pot3 | 1x1 | Inventory size for 'Small Green Pot' | |
| Containers | InventorySize_VikingShip | 6x3 | Inventory size for 'Longship' | |
| Containers | InventorySize_VikingShip_Ashlands | 8x4 | Inventory size for 'Drakkar' | |
| Doors | AutoCloseMinPlayerDistance | NaN | Min distance all players must have to the door before it is closed. NaN to disable this feature | |
| Fireplaces | MakeToggleable | False | True/False | True to make all fireplaces (including torches, braziers, etc.) toggleable |
| Fireplaces | InfiniteFuel | False | True/False | True to make all fireplaces have infinite fuel |
| Fireplaces | IgnoreRain | Never | Never, Always, InsideShield | Options to make all fireplaces ignore rain |
| Map Tables | AutoUpdatePortals | False | True/False | True to update map tables with portal pins |
| Map Tables | AutoUpdatePortalsExclude | Portals with a tag that matches this filter are not added to map tables | ||
| Map Tables | AutoUpdatePortalsInclude | * | Only portals with a tag that matches this filter are added to map tables | |
| Map Tables | AutoUpdateShips | False | True/False | True to update map tables with ship pins |
| Plants | GrowTimeMultiplier | 1 | From 0 to Infinity | Multiply plant grow time by this factor |
| Plants | SpaceRequirementMultiplier | 1 | From 0 to Infinity | Multiply plant grow time by this factor |
| Plants | DontDestroyIfCantGrow | False | True/False | True to keep plants which can't grow alive |
| Players | InfiniteBuildingStamina | False | True/False | True to give players infinite stamina when building. If you want infinite stamina in general, set the global key 'StaminaRate' to 0 |
| Players | InfiniteFarmingStamina | False | True/False | True to give players infinite stamina when farming. If you want infinite stamina in general, set the global key 'StaminaRate' to 0 |
| Portal Hub | Enable | False | True/False | True to automatically generate a portal hub |
| Portal Hub | Exclude | Portals with a tag that matches this filter are not added to the portal hub | ||
| Portal Hub | Include | * | Only portals with a tag that matches this filter are added to the portal hub | |
| Signs | TimeSigns | False | True/False | True to update sign texts which contain time emojis (any of ππ§ππππππππππ ππ‘ππ’ππ£ππ€ππ₯ππ¦) with the in-game time |
| Smelters | FeedFromContainers | False | True/False | True to automatically feed smelters from nearby containers |
| Smelters | FeedFromContainersRange | 4 | Required proxmity of a container to a smelter to be used as feeding source | |
| Smelters | FeedFromContainersLeaveAtLeastFuel | 1 | Minimum amout of fuel to leave in a container | |
| Smelters | FeedFromContainersLeaveAtLeastOre | 1 | Minimum amout of ore to leave in a container | |
| Summons | UnsummonDistanceMultiplier | 1 | From 0 to Infinity | Multiply unsummon distance by this factor. 0 to disable distance-based unsummoning |
| Summons | UnsummonLogoutTimeMultiplier | 1 | From 0 to Infinity | Multiply the time after which summons are unsummoned when the player logs out. 0 to disable logout-based unsummoning |
| Tames | MakeCommandable | False | True/False | True to make all tames commandable (like wolves) |
| Tames | ShowTamingProgress | False | True/False | True to show taming progress to nearby players |
| Tames | ShowGrowingProgress | False | True/False | True to show growing progress to nearby players |
| Tames | AlwaysFed | False | True/False | True to make tames always fed (not hungry) |
| Tames | TeleportFollow | False | True/False | True to teleport following tames to the players location if the player gets too far away from them |
| Traders | AlwaysUnlockBogWitchScytheHandle | False | True/False | Remove the progression requirements for buying Scythe Handle from |
| Traders | AlwaysUnlockBogWitchMushroomBzerker | False | True/False | Remove the progression requirements for buying Toadstool from |
| Traders | AlwaysUnlockBogWitchFragrantBundle | False | True/False | Remove the progression requirements for buying Fragrant Bundle from |
| Traders | AlwaysUnlockBogWitchSpiceForests | False | True/False | Remove the progression requirements for buying Woodland Herb Blend from |
| Traders | AlwaysUnlockBogWitchSpiceOceans | False | True/False | Remove the progression requirements for buying Seafarer's Herbs from |
| Traders | AlwaysUnlockBogWitchSpiceMountains | False | True/False | Remove the progression requirements for buying Mountain Peak Pepper Powder from |
| Traders | AlwaysUnlockBogWitchSpicePlains | False | True/False | Remove the progression requirements for buying Grasslands Herbalist Harvest from |
| Traders | AlwaysUnlockBogWitchSpiceMistlands | False | True/False | Remove the progression requirements for buying Herbs of the Hidden Hills from |
| Traders | AlwaysUnlockBogWitchSpiceAshlands | False | True/False | Remove the progression requirements for buying Fiery Spice Powder from |
| Traders | AlwaysUnlockHaldorYmirRemains | False | True/False | Remove the progression requirements for buying Ymir Flesh from Haldor |
| Traders | AlwaysUnlockHaldorThunderstone | False | True/False | Remove the progression requirements for buying Thunder Stone from Haldor |
| Traders | AlwaysUnlockHaldorChickenEgg | False | True/False | Remove the progression requirements for buying Egg from Haldor |
| Traders | AlwaysUnlockHildirArmorDress2 | False | True/False | Remove the progression requirements for buying Brown Dress with Shawl from Hildir |
| Traders | AlwaysUnlockHildirArmorDress3 | False | True/False | Remove the progression requirements for buying Brown Dress with Beads from Hildir |
| Traders | AlwaysUnlockHildirArmorDress5 | False | True/False | Remove the progression requirements for buying Blue Dress with Shawl from Hildir |
| Traders | AlwaysUnlockHildirArmorDress6 | False | True/False | Remove the progression requirements for buying Blue Dress with Beads from Hildir |
| Traders | AlwaysUnlockHildirArmorDress8 | False | True/False | Remove the progression requirements for buying Yellow Dress with Shawl from Hildir |
| Traders | AlwaysUnlockHildirArmorDress9 | False | True/False | Remove the progression requirements for buying Yellow Dress with Beads from Hildir |
| Traders | AlwaysUnlockHildirArmorTunic2 | False | True/False | Remove the progression requirements for buying Blue Tunic with Cape from Hildir |
| Traders | AlwaysUnlockHildirArmorTunic3 | False | True/False | Remove the progression requirements for buying Blue Tunic with Beads from Hildir |
| Traders | AlwaysUnlockHildirArmorTunic5 | False | True/False | Remove the progression requirements for buying Red Tunic with Cape from Hildir |
| Traders | AlwaysUnlockHildirArmorTunic6 | False | True/False | Remove the progression requirements for buying Red Tunic with Beads from Hildir |
| Traders | AlwaysUnlockHildirArmorTunic8 | False | True/False | Remove the progression requirements for buying Yellow Tunic with Cape from Hildir |
| Traders | AlwaysUnlockHildirArmorTunic9 | False | True/False | Remove the progression requirements for buying Yellow Tunic with Beads from Hildir |
| Traders | AlwaysUnlockHildirArmorDress1 | False | True/False | Remove the progression requirements for buying Plain Brown Dress from Hildir |
| Traders | AlwaysUnlockHildirArmorDress4 | False | True/False | Remove the progression requirements for buying Plain Blue Dress from Hildir |
| Traders | AlwaysUnlockHildirArmorDress7 | False | True/False | Remove the progression requirements for buying Plain Yellow Dress from Hildir |
| Traders | AlwaysUnlockHildirArmorTunic1 | False | True/False | Remove the progression requirements for buying Plain Blue Tunic from Hildir |
| Traders | AlwaysUnlockHildirArmorTunic4 | False | True/False | Remove the progression requirements for buying Plain Red Tunic from Hildir |
| Traders | AlwaysUnlockHildirArmorTunic7 | False | True/False | Remove the progression requirements for buying Plain Yellow Tunic from Hildir |
| Traders | AlwaysUnlockHildirArmorHarvester1 | False | True/False | Remove the progression requirements for buying Harvest Tunic from Hildir |
| Traders | AlwaysUnlockHildirArmorHarvester2 | False | True/False | Remove the progression requirements for buying Harvest Dress from Hildir |
| Traders | AlwaysUnlockHildirHelmetHat1 | False | True/False | Remove the progression requirements for buying Blue Tied Headscarf from Hildir |
| Traders | AlwaysUnlockHildirHelmetHat2 | False | True/False | Remove the progression requirements for buying Green Twisted Headscarf from Hildir |
| Traders | AlwaysUnlockHildirHelmetHat3 | False | True/False | Remove the progression requirements for buying Brown Fur Cap from Hildir |
| Traders | AlwaysUnlockHildirHelmetHat4 | False | True/False | Remove the progression requirements for buying Extravagant Green Cap from Hildir |
| Traders | AlwaysUnlockHildirHelmetHat6 | False | True/False | Remove the progression requirements for buying Yellow Tied Headscarf from Hildir |
| Traders | AlwaysUnlockHildirHelmetHat7 | False | True/False | Remove the progression requirements for buying Red Twisted Headscarf from Hildir |
| Traders | AlwaysUnlockHildirHelmetHat8 | False | True/False | Remove the progression requirements for buying Grey Fur Cap from Hildir |
| Traders | AlwaysUnlockHildirHelmetHat9 | False | True/False | Remove the progression requirements for buying Extravagant Orange Cap from Hildir |
| Traders | AlwaysUnlockHildirHelmetStrawHat | False | True/False | Remove the progression requirements for buying Straw Hat from Hildir |
| Traders | AlwaysUnlockHildirFireworksRocket_White | False | True/False | Remove the progression requirements for buying Basic Fireworks from Hildir |
| Traps | DisableTriggeredByPlayers | False | True/False | True to stop traps from being triggered by players |
| Traps | DisableFriendlyFire | False | True/False | True to stop traps from damaging players and tames |
| Traps | SelfDamageMultiplier | 1 | From 0 to Infinity | Multiply the damage the trap takes when it is triggered by this factor. 0 to make the trap take no damage |
| Turrets | DontTargetPlayers | False | True/False | True to stop ballistas from targeting players |
| Turrets | DontTargetTames | False | True/False | True to stop ballistas from targeting tames |
| Turrets | LoadFromContainers | False | True/False | True to automatically load ballistas from containers |
| Turrets | LoadFromContainersRange | 4 | Required proxmity of a container to a ballista to be used as ammo source | |
| Windmills | IgnoreWind | False | True/False | True to make windmills ignore wind (Cover still decreases operating efficiency though) |
| World Modifiers | SetPresetFromConfig | False | True/False | True to set the world preset according to the 'Preset' config entry |
| World Modifiers | Preset | Default | Easy, Hard, Hardcore, Casual, Hammer, Immersive, Default | World preset. Enable 'SetPresetFromConfig' for this to have an effect |
| World Modifiers | SetModifiersFromConfig | False | True/False | True to set world modifiers according to the following configuration entries |
| World Modifiers | Combat | Default | VeryEasy, Easy, Default, Hard, VeryHard | World modifier 'Combat'. Enable 'SetModifiersFromConfig' for this to have an effect |
| World Modifiers | DeathPenalty | Default | Casual, VeryEasy, Easy, Default, Hard, Hardcore | World modifier 'DeathPenalty'. Enable 'SetModifiersFromConfig' for this to have an effect |
| World Modifiers | Resources | Default | MuchLess, Less, Default, More, MuchMore, Most | World modifier 'Resources'. Enable 'SetModifiersFromConfig' for this to have an effect |
| World Modifiers | Raids | Default | None, MuchLess, Less, Default, More, MuchMore | World modifier 'Raids'. Enable 'SetModifiersFromConfig' for this to have an effect |
| World Modifiers | Portals | Default | Casual, Default, Hard, VeryHard | World modifier 'Portals'. Enable 'SetModifiersFromConfig' for this to have an effect |
| Global Keys | SetGlobalKeysFromConfig | False | True/False | True to set global keys according to the following configuration entries |
| Global Keys | PlayerDamage | 100 | Sets the value for the 'PlayerDamage' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect | |
| Global Keys | EnemyDamage | 100 | Sets the value for the 'EnemyDamage' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect | |
| Global Keys | WorldLevel | 0 | From 0 to 10 | Sets the value for the 'WorldLevel' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | EventRate | 100 | Sets the value for the 'EventRate' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect | |
| Global Keys | ResourceRate | 100 | Sets the value for the 'ResourceRate' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect | |
| Global Keys | StaminaRate | 100 | Sets the value for the 'StaminaRate' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect | |
| Global Keys | MoveStaminaRate | 100 | Sets the value for the 'MoveStaminaRate' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect | |
| Global Keys | StaminaRegenRate | 100 | Sets the value for the 'StaminaRegenRate' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect | |
| Global Keys | SkillGainRate | 100 | Sets the value for the 'SkillGainRate' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect | |
| Global Keys | SkillReductionRate | 100 | Sets the value for the 'SkillReductionRate' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect | |
| Global Keys | EnemySpeedSize | 100 | Sets the value for the 'EnemySpeedSize' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect | |
| Global Keys | EnemyLevelUpRate | 100 | Sets the value for the 'EnemyLevelUpRate' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect | |
| Global Keys | PlayerEvents | False | True/False | Sets the value for the 'PlayerEvents' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | Fire | False | True/False | Sets the value for the 'Fire' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | DeathKeepEquip | False | True/False | Sets the value for the 'DeathKeepEquip' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | DeathDeleteItems | False | True/False | Sets the value for the 'DeathDeleteItems' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | DeathDeleteUnequipped | False | True/False | Sets the value for the 'DeathDeleteUnequipped' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | DeathSkillsReset | False | True/False | Sets the value for the 'DeathSkillsReset' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | NoBuildCost | False | True/False | Sets the value for the 'NoBuildCost' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | NoCraftCost | False | True/False | Sets the value for the 'NoCraftCost' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | AllPiecesUnlocked | False | True/False | Sets the value for the 'AllPiecesUnlocked' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | NoWorkbench | False | True/False | Sets the value for the 'NoWorkbench' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | AllRecipesUnlocked | False | True/False | Sets the value for the 'AllRecipesUnlocked' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | WorldLevelLockedTools | False | True/False | Sets the value for the 'WorldLevelLockedTools' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | PassiveMobs | False | True/False | Sets the value for the 'PassiveMobs' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | NoMap | False | True/False | Sets the value for the 'NoMap' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | NoPortals | False | True/False | Sets the value for the 'NoPortals' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | NoBossPortals | False | True/False | Sets the value for the 'NoBossPortals' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | DungeonBuild | False | True/False | Sets the value for the 'DungeonBuild' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | TeleportAll | False | True/False | Sets the value for the 'TeleportAll' global key. Enable 'SetGlobalKeysFromConfig' for this to have an effect |
| Global Keys | NoPortalsPreventsContruction | True | True/False | True to change the effect of the 'NoPortals' global key, to prevent the construction of new portals but leave existing portals functional |