Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Unmarked
Clears the 'summoned through cheating means' mark from items and objects, on load and live as players play. Server only.
| Last updated | 2 weeks ago |
| Total downloads | 119 |
| Total rating | 1 |
| Categories | Utility Mods Deep North Update Tools Server-side |
| Dependency string | cocopuff2u-Unmarked-1.0.0 |
| Dependants | 0 other packages depend on this package |
This mod requires the following mods to function
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.2350README
![]()
Unmarked
Gets rid of the "summoned through cheating means" mark, and keeps it gone.
Since Valheim 1.0, items made or found while cheats were on carry a mark, the grey line "This item was summoned through cheating means". The mark spreads: put one marked wood on a stack and the whole stack is marked, smelt marked ore and the bars come out marked, tear down a marked wall and its materials are marked.
Install Unmarked on your dedicated server and it clears the mark from your world as soon as the world loads, then keeps clearing it as people play. Your players don't install anything. It runs only on the server.
What you get
| A clean world on load | Every item in every chest, cart, ship, tombstone and item stand, every item on the ground, and every marked building piece and station is cleared as the world loads. |
| Kept clean while you play | When a player's game sends the server a chest, a dropped item or a station, Unmarked clears any mark within a second, and every player's game, theirs too, gets the clean version. |
| Clean your own inventory | Put marked items in any chest, close it, open it again: they come back clean. |
| Clean furnace output | Smelters, blast furnaces, kilns, refineries, fermenters and cooking stations fed marked items lose their mark before anything comes out. |
| Builds stop leaking marks | Pieces built with cheats are cleared, so tearing them down gives back clean materials. |
| Leaves everything else alone | Only the one mark bit of each item is changed: stack, quality, crafter, slot and custom data stay as they are. Anything it can't read exactly is left untouched. |
| Chests in use are left alone | A chest someone has open is cleaned when they close it, so nothing changes under their hands. |
| Tells you what it found | The log says what was cleaned, where, and whose game sent it, and the player sees a short message. |
| Optional: spot outside cheat tools | Switch on FlagImpossibleItems and the log names items the game could never make, like a stack of 500 wood or a quality-10 sword, with where they are and whose game sent them. Only logs. |
| Optional: debug items | Switch on RemoveDebugItems to delete the developer-only items (SwordCheat, SledgeCheat and the like) wherever they are stored. |
| Light on your server | Live cleaning costs next to nothing. The whole-world check runs every 10 minutes, about 0.5 ms a frame for half a minute on a world of 2.9 million objects, never more than a few ms in one frame. The log shows the numbers for yours. |
Install
You need a Valheim dedicated server with BepInEx on it (BepInExPack for Valheim). Most server hosts have a one-click option for BepInEx.
Step by step
-
Download
Unmarked-<version>.zipfrom Releases. -
Unzip it. Inside is a
plugins/Unmarkedfolder. -
Copy the
Unmarkedfolder into your server'sBepInEx/pluginsfolder, so you end up with:<server>/BepInEx/plugins/Unmarked/Unmarked.dll -
Start the server. In the server log you should see:
Unmarked 1.0.0 loadedand, once the world has been checked:
Unmarked: world on load: 802 marked items cleaned in 5648 objects, 5057 object marks cleaned; ...
That's it. Make a backup of your world first if you'd like to be able to go back: cleared marks are saved with the world.
Settings
Settings live in BepInEx/config/com.cocopuff2u.unmarked.cfg. The file
appears after the first start. Edit it any time: Unmarked picks up the
change a second after you save, and says Settings reloaded in the log.
| Setting | Unmarked default | Vanilla game | What it does |
|---|---|---|---|
Enabled |
true |
Turns the whole mod on or off. | |
CleanOnLoad |
true |
marks stay forever | Clear every mark in the world right after it loads. |
CleanLive |
true |
marks stay forever | Clear marks from chests (once closed), carts, ships, tombstones, ground items and stands as players' games send them. |
CleanObjects |
true |
marks stay forever | Clear marks from stations fed marked items and from marked pieces and containers. |
RoundMinutes |
10 |
Minutes between checks of the whole world, for anything not caught live. 0 turns the rounds off. |
|
RemoveDebugItems |
false |
debug items stay | Delete the developer-only items: SwordCheat, SledgeCheat and every other item whose name ends in Cheat. |
ExtraItems |
(empty) | More items to delete when RemoveDebugItems is on, by prefab name, comma separated. |
|
ReportOnly |
false |
Find and log marked things, but change nothing. Handy for a first look. | |
FlagImpossibleItems |
false |
Log items the game could never make: a stack bigger than the item's stack size, or a higher quality than it can be upgraded to. Only logs, never changes anything. | |
LogEachClean |
true |
A log line for each thing cleaned while people play (what, where, from whom), and a summary after each world check. | |
NotifyPlayers |
true |
A short message in the middle of the player's screen when items they just stored were cleaned. |
A blank means the game has nothing like it.
Good to know
- What a server can't reach. Each player's inventory lives in their character file on their own PC, and crafting at a workbench or forge happens there too. Unmarked can't change those directly. It doesn't need to for long: the materials in your chests are clean, so new crafts come out clean, and any marked item a player carries is cleaned the moment it goes into a chest. Close and reopen the chest to take it back clean. A tombstone is a chest too.
- Achievements. A character that ever used cheat commands keeps its own
"used cheats" note in its character file, and that is what blocks achievements.
Only the game can clear it: the console command
yesiuseddevcommandsbutiwantmyachievementsanyway 1on that character. ReportOnlyandFlagImpossibleItemsare different things.ReportOnlyis a dry run of the cleaning: it logs the game's cheat mark without clearing it.FlagImpossibleItemslooks for another kind of cheating altogether: outside cheat tools and hacked game clients leave no cheat mark, but often give themselves away with items no workbench or stack could hold. It is off by default because mods that raise stack sizes or add upgrade levels would make every big stack show up. Each item is reported once, and only items in chests, on the ground or on stands can be seen, not what a player keeps in their own inventory.- Using NoCheatedTag or NoCheatItems too? They can run side by side; Unmarked just finds nothing left to clean. NoCheatItems deletes marked items, Unmarked keeps them.
Troubleshooting
| Problem | Fix |
|---|---|
| Nothing in the log about Unmarked | BepInEx isn't running. Check that BepInEx/LogOutput.log exists and the server starts through BepInEx. |
| An item in my inventory still has the mark | Put it in a chest, close the chest, open it again and take it back. |
| A chest still shows marked items | Close it: chests are cleaned once nobody has them open. |
| I want to see what it would do first | Set ReportOnly = true, start the server, read the log, then set it back. |
Still stuck? Open an issue
and attach BepInEx/LogOutput.log.
More
- CHANGELOG.md: what changed in each version.
- Building from source:
./build.sh --managed <server>/valheim_server_Data/Managed(needs the .NET SDK 8+). The zip lands indist/. - Self-test: build with
dotnet build src/Unmarked.csproj -c Release -p:SelfTest=true, put that DLL on a test server, create an empty fileBepInEx/config/unmarked.selftestand start the server. Out at sea it makes chests, ground items, an item stand, stations and a village of 1500 marked walls, all marked, sends them through the same path a player's update takes, logsUnmarked TEST PASSorFAILfor each feature, then removes what it made. The normal build has none of this in it.
Credits
Unmarked is made by Cody Keats, who also makes Munin Map and Regrove. Ideas came from NoCheatedTag by FlorpyDorp and NoCheatItems by Ageous27. Thank you.
Licence
MIT. See LICENSE.