
Skald
Achievements, grisly death announcements, nemeses, survival streaks, raid and boss call-outs, !skald chat commands, and a server watchdog with weekly Discord recaps. Needed on the server and every client.Skald
The skald remembers every deed. And every death.
Skald keeps the story of your server: who reached the Mistlands first, who has died to trolls eleven times, who has gone twenty days without dying, and whether the server itself is going to make it to Fader.
Install Skald on the server and on every player's game. The server does the remembering; each player's game reports what happened to them and shows Skald's messages. Everyone needs the same version.
What you'll see
Achievements appear in big text in the middle of the screen, with the detail in chat:
Timothy earned "Into the Mist" Timothy is the first on the server to set foot in the Mistlands.
Deaths get a line in chat, and Skald has opinions:
Skald: Daniel came apart in Troll's grip like wet bread. Skald: Fulda was crushed by the very tree they were chopping.
Grudges form when the same thing keeps killing you:
Skald: A grudge is born: Troll has killed Daniel 3 times. Skald: Vengeance: Daniel has cut down Troll at last.
Streaks, returns, bosses and raids:
Skald: Astrid has survived 20 days without dying. Something out there is taking notes. Skald: Bjorn returns after 6 days away. Things died in the meantime. Skald: Moder fell after a 6-minute fight. Casualties: 2 (Daniel, Fulda x2). Skald: The ground is shaking near Daniel's base. Trolls.
Chat commands
Type these in chat. Nobody else sees the command or the answer.
| Command | Shows |
|---|---|
!skald |
Your achievements, hours, deaths, streak, nemesis, and your three closest achievements with progress |
!skald <name> |
The same for another player |
!deaths [name] |
Deaths by cause and by killer, and active grudges |
!top |
Leaderboards: achievements, time played, deaths, longest streak |
!recap |
(Admins) Post this week's recap so far to Discord |
Features
- 34 achievements: 7 bosses, 6 biomes, 2 playtime tiers, and 19 for combat, work, travel, taming, eating and dying. Progress counts from when Skald first sees you, so veterans don't unlock everything on day one.
- Death announcements: 133 lines across all 25 ways Valheim can kill you, naming whatever did it.
- Nemesis system: three deaths to the same kind of creature (or the same player) and it holds a grudge. Killing one settles it.
- Survival streaks: in-game days survived without dying, counted only while you're online. When a long streak ends, the death message says so.
- First-to-reach: the first player into each biome is named.
- Return messages: for players back after three or more days away.
- Boss fight summaries: how long the fight took, and who died in it.
- Raid announcements: everyone hears whose base is under attack, and the casualties when it ends.
- Performance watchdog: frame time, memory, save stalls and world size, alerting a Discord webhook when things degrade.
- Weekly Discord recap: hours, deaths, achievements, bosses, server health, and a forecast of when the world will outgrow the server.
Achievements are awarded once per character per world, ever, and survive restarts and crashes. A new world starts fresh.
For server owners
Settings are in BepInEx/config/com.dks.skald.cfg, created on first run.
Everything is on by default except Discord, which does nothing until you give it a
webhook:
[Discord]
WebhookUrl = https://discord.com/api/webhooks/...
Nothing is sent anywhere until you do. Once set, you get performance alerts and the
weekly recap (Sundays at 18:00 server time by default). Deaths, achievements and
raids can also be posted; see the [Discord] section.
The watchdog thresholds are tuned for a 4 GB server with around 5 players.
Adjust MemoryWarnMb, MemoryCriticalMb and ZdoWarnCount for other sizes.
Skald's data sits beside the world save:
worlds_local/<World>.skald.tsv player profiles, achievements, deaths
worlds_local/<World>.skald.tsv.bak the previous save, for recovery
worlds_local/<World>.skald-health.tsv performance history for the recap
Admins can test raid announcements with devcommands then event army_eikthyr.
Compatibility
- Valheim 1.0 (Unity 6), BepInExPack_Valheim 5.4.2350
- Works on dedicated and listen servers
- Doesn't touch gameplay, items or balance, so it should sit alongside other mods
Known limits
- Players without Skald see none of its messages, and don't report their own deaths or stats.
- Raid names come from the game's data rather than its code, so a few raids get a generic "something is coming" line.
- Installing Skald on a world already in progress: the first person to reach each biome after installation is called first.

