Valheim
You are viewing a potentially older version of this package. View Latest Version
Install with App

Details

Date Uploaded
3 weeks ago
Downloads
265
Size
157KB
ADDatHost Valheim hosting
30% off

πŸ”­ Dvergr Astrolabe

Valheim Mod Server Side Framework Crossplay Version Valheim 1.0

Daylight and night, in real minutes, set once on the server. No client install, ever.

🏰 Wubarrk lives on Hexium - don't miss out

Dvergr Astrolabe is published here and on valheim.hexium.gg. The rest of the Wubarrk and RavenIron Studios catalogue is Hexium only: that is where the current builds live, every one of them tagged Valheim 1.0. The old copies under the Wubarrk name here on Thunderstore are pre-1.0 lines, most of them deprecated, and they are not kept current. Hexium packages install with one click from the Gale mod manager, or unzip into BepInEx/plugins like any other mod. Here is what you are missing.

Server-side only, nothing on clients - the same family as this mod, so Steam, Xbox, PlayFab and crossplay parties all get it with nothing installed:

  • Wonderland - automation, world governance, status effects and Discord notifications for a server whose players run plain vanilla, with vanilla-client enforcement built in.
  • Get Off My Lawn - active wards keep wild creatures and raids out of your base, and doors inside wards close themselves.
  • TortalPortal LITE - a portal network with progression-gated gates, one-way corpse-run recovery, fast-transit terminals, per-portal ore upgrades and portal caps.

Client and server:

  • Njord - a mythic overhaul of ship handling, steering and seafaring, with a Harbourmaster who gives every new Viking their first hull and refits the rest.
  • Shadows of Midgard - a stealth and perception engine: creatures see, hear, remember and doubt, with vision cones, line of sight, noise, light, weather and camouflage tracked for each player separately.
  • Wings of the Valkyrie - four tiers of upgradable runic dragon wings with real armour and resistances, and a Valkyrie Flight skill that grows with every wingbeat.
  • Fatty - a food overhaul: no stat decay, a bigger food bar with a drink slot, stack the same food for extra stats, and diet-based synergy buffs. Works with any food mod.
  • StackIT - server-synced stack sizes, item weights and carry capacity, plus hold Shift to harvest a whole berry patch.
  • TortalPortal - total portal control: pick destinations from a map UI, with destination photos, PIN locks, tame teleportation, travel filters and a procedural runic gateway.
  • AwayFromHome - build a Keeper Stone and that place keeps living while you are elsewhere: animals fed, smelters reloaded, production that no longer stops on an empty server.
  • Let It Grow - a full farming overhaul: configurable growth speed and conditions, hover grow-timers, and Scarecrow and Farm Silo automation that tends farms nobody is near.
  • RuneboundRest - server-authoritative Rested and Comfort: config-driven comfort, resting conditions and duration, plus a Well Rested buff for a full night in your own claimed bed.
  • Blighted World Heart - a massive raid boss that summons endless waves and unique sub-bosses, dropping dozens of custom weapons and armours with Poison, Spirit and Defense affixes.
  • Dvergr Allies - tame, breed and lead an army of Dvergr: four classes, breeding genetics, star-level weapon scaling and native combat AI.
  • Mists of Avalor - a procedural black-stone crypt-labyrinth in a forsaken sky-realm: true-damage traps, restless dead, keys torn from mutant bosses, and the Avalorian Greatsword off the Warden. Bring a torch.
  • VikingOS (beta) - rebuild the interface: move, resize and rotate any HUD, inventory or chat element in a live edit mode, plus chat that keeps your capitals and drag-and-drop item sharing.

RavenIron Studios:

  • FireFront - fire that actually spreads: structure to structure, into the trees, across open ground. Wind-driven, rain-damped, stopped by water, with burn scars, tree regrowth and fires that remember who lit them.
  • Ragnarok's Wrath - the world reacts and remembers: seasons, devastating storms, spreading plague with visible miasma, fire scars, tiring soil and earned titles.
  • Undertow - the sea gets its own motion: currents in a learnable shape, tides, storm surge and flotsam, carrying whatever floats on them. No HUD.
  • Cairn - stack stones on a headland and they burn: a trail of cairns you build yourself, lit and remembered, for worlds with no map.
  • Valkyries Cargo - a Valkyrie air-drops Ingvar the Far-Travelled, a dwarven merchant, beside your hearth when rested; buy and sell at supply-and-demand prices before he vanishes.
  • The Raven's Call (server-only) - admin and analytics: kills, deaths, bosses, gear and playtime narrated to Discord and Chronicle logs, with a web dashboard. Pairs with WhereTheCrowFlies, the client companion that witnesses and reports the events.
  • RavenEye - for server owners: restores the vanilla map to listed admins only on no-map worlds, with every player pinned. Does nothing for anyone else.

Two are published in both places: Valheim 1.0 Compatibility, the preloader that carries pre-1.0 mods across, and The Eye, the API dump tool for mod developers. Questions, bug reports, the clan: Discord. πŸ—


A vanilla Valheim day is 30 real minutes: 21 of daylight and 9 of night. Dvergr Astrolabe lets the server decide those two numbers - a lazy hour of daylight with a 5-minute night, or a 10-minute day and a 20-minute night for a horror server - and every player sees it with nothing installed on their side. Steam, Xbox, PlayFab and crossplay parties alike, because the server is the only machine that owns the world clock.


βš™οΈ Settings

BepInEx/config/wubarrk.dvergrastrolabe.cfg on the server. Edits are picked up within 5 seconds, no restart. The defaults are vanilla, so installing the mod changes nothing until you set them.

Setting Default What it does
[2 - Day And Night] DayMinutes 21 Real minutes from sunrise to sunset: the whole stretch in which the sun is above the horizon and the game counts as day (the Day N banner fires at its start). 0.5 to 180.
[2 - Day And Night] NightMinutes 9 Real minutes from sunset to sunrise: dusk, the midnight day-counter tick and dawn. 0.5 to 180.
[3 - Client Sync] ClockPushInterval 0.5 Seconds between extra pushes of the clock to clients (vanilla pushes every 2 s). Keeps the sun moving smoothly when the rate is far from 1x. 2 adds no extra traffic.
[1 - General] Enabled true Master switch. Off = vanilla 21 + 9.
[1 - General] VerboseLogging false Log every sunrise and sunset with the day number and the rate that just took effect.

A few starting points:

Feel DayMinutes NightMinutes Full day
Vanilla 21 9 30 min
Long lazy days 45 10 55 min
Builders' server 60 5 65 min
Horror server 10 20 30 min
Quick test 1 1 2 min

πŸ”­ How it works

Every machine in a Valheim game turns one number into the time of day: the world clock, in game-seconds. Only the server advances it, and every 2 seconds it pushes the value to each client, which simply adopts it. Time of day is that clock modulo the day length, 1800 game-seconds: the stretch from 0.15 to 0.85 of each day (1260 seconds) is daylight, the remaining 540 seconds are night. That is where vanilla's 21 + 9 comes from.

The server cannot change the 1800 baked into an unmodded client. It can change how fast the clock runs. Astrolabe scales the server's clock tick to 1260 / (DayMinutes x 60) game-seconds per real second while the sun is up and 540 / (NightMinutes x 60) while it is down, switching exactly at sunrise and sunset (a tick that straddles the boundary is split so each side runs at its own rate). A day is still 1800 game-seconds, the clock still only counts up, the world save stores it unchanged. It just takes as long as you said.

Between pushes an unmodded client runs its own copy of the clock at 1x, so each push applies a small correction, which the game already smooths over about 2 seconds. Astrolabe pushes every 0.5 s by default so that correction stays under a degree of sun movement at any sane setting, at the cost of one tiny packet per client per half second.


πŸ“ What changes, and what doesn't

Untouched. The day counter (it ticks at midnight, the Day N banner still appears at sunrise). Sleeping: still allowed from noon, still skips to the next sunrise in 12 real seconds. World saves. The empty-server freeze: with nobody online the clock stops exactly as in vanilla (if you run Let It Grow's time flows while empty, its tick is the scaled one, so the two agree).

Stretch with your day (they run on the game clock). Crops and trees, smelters, kilns and furnaces, cooking stations, fermenters, beehives and sap collectors, fires' fuel, item despawn, berry and pickable respawn, creature spawners, taming hunger, pregnancy and growing up, creature and tame health regeneration, trap and ballista rearm, snow damage. With a 45-minute day these still take exactly as many days as before, which now means more real minutes. With a 1-minute night, monsters regenerate health nine times faster than you are used to while it is dark.

Do not stretch (they run on the wall clock). Raids and random events, Rested, food, comfort. A longer day therefore gets more raids per game day, a shorter one fewer.

Fine print. At very long stretches (a rate under 0.2x: days over 105 minutes or nights over 45) a client-owned fire, beehive or sap collector can occasionally drop a fraction of a second of progress when a clock correction lands mid-tick; lower ClockPushInterval to 0.25 to shrink it further. The vanilla 10-game-second lockout between two sleep attempts scales with the night rate too.


πŸ“¦ Install

Server side only. Drop DvergrAstrolabe.dll into BepInEx/plugins/ on the dedicated server (for a player-hosted world, on the hosting player's game). Through r2modman, Thunderstore Mod Manager or Gale: install it in the profile of the machine that hosts the world, and nobody else's. Start it once to generate the cfg, set DayMinutes and NightMinutes, done. Nothing goes on clients; if the DLL ends up on a client by accident it does nothing.

Requires the BepInExPack for Valheim (5.4.2350). Built against the Valheim 1.0.15 dedicated server.


πŸ§ͺ Checking it works

BepInEx/LogOutput.log on the server, at startup and after every config edit:

[Message:DvergrAstrolabe] schedule (startup): daylight 45 real min at 0.467x, night 10 real min at 0.9x; one full day = 55 real min (vanilla 30); clock pushed to clients every 0.5 s (plus vanilla's 2 s).
[Message:DvergrAstrolabe] clock patch live: EnvMan found, day 12, raw day-fraction 0.412 (daylight), 1 player(s) connected.

With VerboseLogging on, every transition as well:

[Info   :DvergrAstrolabe] sunset, day 12: clock at 0.9x for the next 10 real min.

A Valheim mod by Wubarrk.

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.