You are viewing a potentially older version of this package. View all versions.
Azumatt-Unshamed-1.0.4 icon

Unshamed

Valheim 1.0 blocks achievements for anyone running mods. This unblocks them, and gives back the ones you already earned. No free unlocks.

Date uploaded 2 weeks ago
Version 1.0.4
Download link Azumatt-Unshamed-1.0.4.zip
Downloads 8541
Dependency string Azumatt-Unshamed-1.0.4

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2350 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.2350

README

Unshamed

Valheim 1.0 won't give you achievements if you run mods. Any mods. BepInEx marks the game as modded and the game treats that the same as cheating.

Unshamed makes achievements work again, shows you what every achievement actually wants, and can hand back the ones you already earned.

Client side only. Nothing needed on the server.

TL;DR

  1. Install and play. Achievements count again.
  2. Want to know what an achievement actually wants? Turn on Reveal Requirements and Guide Panel. Spoilers.
  3. Played modded since 1.0? unshamed retro in the console (F5) lists what you already earned. unshamed retro apply takes them.

Achievement guide

Vanilla shows ??? / ??? for anything you haven't done, hides secret achievements, and the descriptions are one line. Both off by default, because spoilers. Turn them on in the config:

  • Reveal Requirements: every achievement shows and opens, secret ones included. Every requirement shows its real name and your progress, unfinished ones at the top.
  • Guide Panel: a panel beside the details explains in plain English what counts, what doesn't, and what difficulty it needs.
  • Live info where it helps: comfort pieces and what's counting near you, pieces for each build tag, which berries, mushrooms and crops count, the axe each tree needs, distance left for the explorer achievements, your day streak.
  • Lists come from what's loaded, so modded creatures, items and pieces show up where the game counts them.

unshamed guide writes all of it, with your progress, to BepInEx/config/Unshamed_achievements.md. Works with both off.

What it won't do

Unshamed changes one answer: Achievements.CanGetAchievements() returns true. It never clears a cheat flag.

  • m_usedCheats, the Cheats stat and cheated world marks stay as they are.
  • Spawned items still carry m_cheated, on your client and on a server.
  • PlayerProfile.s_bypassCheatChecks is never touched.

Uninstall it and vanilla reads exactly what it always would have.

The vanilla command yesiuseddevcommandsbutiwantmyachievementsanyway also unlocks achievements, but it does it by turning off cheated item stamping for your character. Unshamed doesn't need it. unshamed status tells you if it's on, and yesiuseddevcommandsbutiwantmyachievementsanyway 0 turns it off.

The "achievements are disabled" warnings are reworded, since they aren't true with this installed. The console still knows you're modded, so no confirmcheats prompt.

Getting back what you earned

While you were modded, your stats only went into the raw bucket the game never checks for achievements. Retro copies them into the one it does, then lets vanilla decide what unlocks.

  • unshamed retro lists what would unlock. Changes nothing.
  • unshamed retro apply takes all of them. unshamed retro apply 1 3 or unshamed retro apply <id> takes only those. The ones you skip stay locked.

Only the Any difficulty is filled. Hard and Hardcore still need a real run. There's no undo, so preview first.

Commands

Press F5.

Command What it does
unshamed status Are you eligible, and why
unshamed retro List achievements you already earned
unshamed retro apply [n..] Grant all of them, or only the ones you name
unshamed list [filter] Every achievement, id and lock state
unshamed guide [id] Print one achievement's guide, or write the full file
unshamed audit Your stat buckets and every cheat flag
unshamed recon Dump the achievement system to a file

Config

Azumatt.Unshamed.cfg

  • Enabled: master switch.
  • Ignore Cheat Flags: the fix. Off puts you back to vanilla.
  • Show Popups: unlock popups for retro grants. Off by default.
  • Enable Retroactive: grant everything once on next load without asking. Off by default.
  • Reveal Requirements: unhide secrets and ??? rows in the achievements panel. Off by default.
  • Guide Panel: the explanation panel beside the details. Off by default.
  • Force True / False Methods: emergency override if a game patch breaks something. Leave empty unless I tell you otherwise.

Caveats

  • Nothing unlocks if you never did the thing. Vanilla still checks.
  • Retro copies everything in the raw bucket, spawned items included. The game doesn't mark those rows, so I can't filter them out.
  • 1.0.0 cleared m_usedCheats and the Cheats stat. That can't be undone, and no later version does it.


Feel free to reach out to me on discord if you need manual help. AzumattDev on Discord.

CHANGELOG

Version Update Notes
1.0.5 - Guide fixes. Top of the World spells out the foundation rule: 5+ of your own pieces straight below, terrain doesn't count. The Homesteader and the village one only check every 21st piece you place, not every piece. Kill credit needs you online when it dies, and a friend who hit a boss then logged off still ruins a solo kill. The Leviathan one says how close (10 m), building debt clears on relog, and meads count for the cooking grind.
- Explorer live info had east and west swapped. It now matches what the game actually counts.
1.0.4 - Achievement guide, off by default (spoilers). Turn on Reveal Requirements and the achievements panel shows secret achievements and real requirement names instead of ??? / ???, with unfinished ones at the top.
- Turn on Guide Panel for a panel beside the details explaining in plain English what each achievement checks, plus live info (comfort pieces, build tags, trees, forage, explore distance and more).
- unshamed guide writes it all, with your progress, to a file.
1.0.3 - Valheim 1.0.12. Iron Gate added yesiuseddevcommandsbutiwantmyachievementsanyway, which gets you achievements by turning on s_bypassCheatChecks, the same switch that stamps cheated items. With it on, what you spawn is not flagged, and the setting saves with your character. Unshamed does not need it and never touches it.
- unshamed status, unshamed audit and the load log now tell you if that vanilla bypass is on for your character, and how to turn it off.
- Reworded the new "No more cheated items in inventory. Achievement progress is re-enabled." popup. It was never disabled.
1.0.2 - The cheat warnings stop lying to you. The achievements panel was still saying "permanently disabled for this character" to people who were earning achievements fine, because it reads the raw flags and never asked the cheat check at all. All five of vanilla's "achievements are disabled" strings are reworded, which covers the console, the HUD popup and the panel in one go. The grey "summoned through cheating means" line on an item tooltip stays, that one is honest.
- Cheated items and cheated meals count now. The hook moved to Achievements.CanGetAchievements(), which is what every stat writer and the build achievement actually ask, and it takes vanilla's per-action cheated flag. Before this, spawning an item and picking it up still quietly dropped the stat.
- IsCheatedAtAll() is not patched at all anymore. It is what the console and setkey read, and touching it is what made 1.0.0 loop in the first place. Left alone it keeps saying you are modded, so the console skips the confirmcheats prompt like it always did, and 1.0.1's scoping workaround is gone with it.
1.0.1 - Fixed the confirmcheats loop. The console reads the same cheat check achievements do, so it kept asking and never accepted the answer. The check steps aside for the duration of a console command, and the terminal behaves like an unmodded game.
- Your character is never locked out. All four cheat terms are ignored for achievements, m_usedCheats after a dev command included.
- Nothing gets cleared. 1.0.0 wiped m_usedCheats and the Cheats counter off your character, which caused the loop and hid real cheating. Removed Clear On Load, Clear On Save, Clear After Command, Clear Cheat Stat and the unshamed clear command. Anything 1.0.0 already erased is gone for good, sorry.
- Nothing is hidden from a server. spawn still stamps the item as cheated and that stamp still travels with it. PlayerProfile.s_bypassCheatChecks is the switch that would stop it and this mod never touches it. The flags all stay on disk, they just do not block achievements.
- Ignore Modded Flag is now Ignore Cheat Flags, since it covers all four checks rather than only Game.isModded. Your old setting will not carry over, check the config if you had changed it.
1.0.0 - Initial Release