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.
VikingOS
Rebuild Valheim's interface. Move, resize and rotate any HUD, inventory or chat element in a live edit mode, saved in resolution-independent units. Plus chat that keeps your capitals, Always Shout, drag-and-drop item sharing and GIF search.
| Last updated | a day ago |
| Total downloads | 29 |
| Total rating | 1 |
| Categories | Mods Misc Tools Skins Server-side Client-side Utility AI Generated Deep North Update |
| Dependency string | Wubarrk-VikingOS-0.11.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.2351ValheimModding-JsonDotNET
Shared version 13.0.3 of Json.NET from Newtonsoft, net45 package for use in Valheim mods. Maintained by the ValheimModding team.
Preferred version: 13.0.4README
π‘οΈ VikingOS
"THE HEARTH IS THAT WAY," he bellowed, because the gods had decreed that any man raising his voice must also lose the shape of his words. A Viking may shout. A Viking may also be understood. It was never obvious why he could not do both.
Press F10. Everything on your screen is now yours to move.
Health, stamina, the hotbar, the minimap, the crafting list β and the hundred smaller pieces inside them, other mods' panels included. Drag, resize, scale, turn. It snaps like a real editor and comes back exactly on any monitor.
Then it keeps going: your gear in slots of its own round a living portrait of your Viking, a chat that behaves like a modern one, trades that cannot vanish halfway, and a compass, clock and weight meter across the top of the screen. All of it drawn in code β no textures, and the metal is a colour picker.
Your gear gets its own slots. Open the inventory and your character stands β live, wearing what you wear β in a carved stave-church doorway, every slot laid out round them like Ultima Online's paperdoll. Oak, iron, and a rune cut into every slot.
| You | It |
|---|---|
| Right-click a helmet, a cape, a ring | goes to its slot; whatever was there comes back to your bag |
| Drag it out of its slot | comes off |
| Carry an item onto your figure | goes where it belongs β a weapon into your hand |
| Carry anything | lights up the slots that take it |
| Press P | opens the Hall of Arms on its own |
| Alt+Z Β· Alt+X Β· Alt+C | uses the three pouch slots β a mead, food, a torch |
𦴠Wishbone and Wisplight worn beside your belt, not instead of it Β· π Jewelcrafting, Backpacks, BowsBeforeHoes get Neck, Finger, Backpack and Quiver slots Β· π Wardrobe β wear one item, show another, everyone sees it Β· π Loadouts β five gear sets, one click each Β· βͺ Coming from AzuEPI? Your gear moves over by itself.
| If⦠| Then⦠| |
|---|---|---|
| π | you run KG Marketplace & Server NPCs | set EnableKGChat = false on the server. The rest of KG Marketplace is unaffected. |
| β | you run HUDCompass | pick one. Two compasses fight for one strip of screen. |
| π€ | you play on a server | server and players update together β it only accepts the same version. |
| π‘οΈ | you ever remove VikingOS | type vikingos_slots_unpack in the console (F5) first, so your Hall of Arms empties into your bag. |
| πͺ | you move another mod's panel | it may misbehave β it was not written expecting it. Right-click puts it back. |
Move, resize, scale and rotate anything β and it survives a new monitor.
| You | It |
|---|---|
| F10 | outlines everything you can adjust, other mods' panels included |
| Drag Β· Ctrl + drag | moves the whole panel Β· just the piece under your cursor |
| Corner grip | resizes the box; the contents re-flow to fit |
| Scroll or + / β | scales it |
[ / ] |
turns it a quarter turn (Shift: 15Β°) β the text stays upright |
| Right-click | puts that one back |
| Search box | finds any element by name, even buried under three panels |
| Save in the preset row | keeps the whole screen as a named layout; Default becomes your fresh-profile screen |
π Read the saga β how it remembers, and why it plays nicely with other mods
It does not work from a list. VikingOS walks the interface and offers everything it finds, so the pieces inside panels are adjustable and panels from other mods show up without VikingOS knowing they exist. How deep it looks is a setting.
A layout built at 4K comes back right at 1080p. Valheim measures every 16:9 screen as the same 1920Γ1080 interface units, and VikingOS stores your changes in those units.
It cooperates instead of overruling. Each change is stored as a difference from where the element already was. If another mod moved your hotbar, that is the starting point β and reset returns it to what your mods intended, not to vanilla. Your whole layout is one small file: delete it to start fresh, or send it to a friend.
Snapping is everywhere β edges and centres line up with the screen, other panels and VikingOS's widgets, with a gold rule showing what matched (Alt suspends it). Grids re-flow: narrow the hotbar and it wraps onto a second row. Stat bars widen without breaking: a wider health bar still grows when you eat. Scale and rotate happen about the centre, not the corner Valheim would swing them from.
Saved screens are complete screens, not patches β panels, widgets, metal colour, text sizes β so two presets always give two results, and your current layout is copied aside before every load. They are ordinary files in config/VikingOS/presets/.
β οΈ Moving another mod's interface can make that mod snap back, redraw in the wrong place or stop answering clicks. That is two things arranging one object, not a bug in either. Right-click puts it back; deleting your layout file undoes everything.
Your gear, your portrait, your rune stones.
| On the panel | |
|---|---|
| Your figure | live, dressed as you are; drag to turn them |
| Down the sides | helm Β· neck Β· chest Β· legs Β· quiver β cape Β· belt Β· finger Β· trinket Β· backpack |
| Below | weapon and shield Β· the Wishbone and Wisplight Β· the pouch |
| α α² α αΉ α | quest journal Β· skills Β· what your gear gives you Β· Wardrobe Β· Loadouts |
| Three arrangements | UO Body, Strip, Grid β every slot movable in F10 |
π Read the saga β Wardrobe, Loadouts, other mods, and moving from AzuEPI
Worn gear leaves your bag, so the bag is for what you carry. An item that does not belong in a slot is refused, and anything Hall of Arms cannot place stays in your bag β nothing is ever dropped.
α What you wear gives β armour, carry weight, movement, eitr, and every resistance and weakness on one page.
αΉ Wardrobe β give your helm, chest, legs or cape another item's look while the real one keeps its armour. Carry the item whose look you want and press Take the look; Hide puts a helm or cape out of sight; Clear shows what you wear. Everyone sees the look, with or without VikingOS.
α Loadouts β Raid, Hunt, Forge, Voyage, Feast. Keep remembers what you wear; Wear puts it back on from your inventory. A loadout never makes anything; it tells you what it could not find.
Jewelcrafting, Backpacks and BowsBeforeHoes get their slots when installed. Each mod still equips and draws its own items β Hall of Arms gives them a home, and honours Jewelcrafting's own Ring and Necklace slot settings.
Coming from AzuExtendedPlayerInventory? Remove it and play: the gear you wore in its slots moves into Hall of Arms the first time, every move written to the log. Keep it instead and VikingOS steps aside, only dressing AzuEPI's panel in oak and iron.
A chat that behaves like the one you use every day.
| π ~1,900 emoji | :joy: :fire: :skull: β every Discord name, ~150 animated, a picker and autocomplete |
| ποΈ GIF search | /gif cat dance β it pops up big for everyone in range |
| π° Server emotes | admins drop PNGs and GIFs in a folder; every player gets them |
| π Your capitals kept | Head SE from Haldor stays Head SE from Haldor |
| π£ Always Shout | every message at shout range, no /s |
| π€« Real whispers | /w <player> reaches one person anywhere; /r replies |
| πͺ A real window | drag its gold frame, resize its corner, scale it with the wheel |
| π A daily log | everything said, in a plain text file |
π Read the saga β emoji, GIFs, server emotes and the window
Emoji. The built-in set is Twemoji, with Google's Noto for the animated ones. Type :fi and suggestions pop up; type a full name and press space and it completes itself. Emoji show in the text over people's heads too, wide emotes draw wide, Emote Size makes them as big as you like, and hovering one shows it large.
GIF search is powered by KLIPY, its adult-content filter on its strictest setting by default β and on a server, the setting is the server's. It works with no setup on a shared key; if that allowance runs out, a free key of your own takes two minutes (below). Your game talks to KLIPY directly; the server relays only a short address, and nothing is saved to disk.
Server emotes are cached, so a rejoin costs nothing, and oversized GIFs are shrunk by the server instead of refused. When names collide: the server wins, then your own packs, then the built-ins.
The capitals fix removes vanilla's forced-case rewrite and nothing else. It happens on your machine, so it fixes messages from vanilla players too.
The window: log, input line and controls travel together; the history stays inside the box instead of spilling over the game; it pulls itself back on screen after a resolution change; the button row docks top, bottom or side.
Show off a find. Trade without trusting anyone.
| π Share an item | drop it on the Share Item box β the party hovers its name for the full stat card, in their own language |
| β Trade | the Trade button or /trade β two columns, both confirm, any change tears up both confirmations |
π Read the saga β why a trade here cannot lose your gear
A straight swap between two players has a moment where an item has left one pack and not yet reached the other β and a disconnect there is how gear gets lost. VikingOS never does that. The server takes both sides, and only then hands each of you the other's: your item is in exactly one place at every instant.
A partner who drops is noticed within seconds and the trade simply ends with nothing moved. A swap that went through waits for you at your next login, and a delivery that arrives twice is recognised rather than paid twice. Items arrive whole β quality, durability, crafter, and anything other mods attached.
Shared item cards are worked out on the reader's machine, so other mods' stat changes show through. The item never leaves your bag.
βοΈ Trading needs VikingOS on the server. Item cards need it on both ends.
Everything you keep opening the map for, already on screen.
| π§ Compass | a tape of the horizon with every map pin on it β yours, the game's, and every other mod's |
| π°οΈ Clock | your time, the server's, and the in-game day |
| βοΈ Weight meter | 45/300 at a glance; blinks red when you are overloaded |
| πΊοΈ Minimap | + / β buttons and the wheel to zoom; drag it across the screen |
π Read the saga β the compass
The compass follows your camera, not your body, so it turns with the view; north is lit. It reads the same pin list the minimap reads, so a pin from a mod released tomorrow is on it too. Other players show as the map's red figure, and whatever you look towards names itself with its distance. Hide a pin type on the map and it hides here as well. Range, pin count, icon size and names are all settings.
The clock, compass and weight meter start lined up and stay lined up as you resize them; drag them anywhere while the cursor is free, and resize them by the gold grip.
Black and gold, four carvings, and any metal you like.
| β¬ Whole panels re-skinned | inventory, containers, crafting, skills, trophies β never a half-themed seam |
| β¨ Four frames | Gilt Β· Runic Β· Serpent Β· Ironbound β switch live, nothing moves |
| π¨ The metal is a setting | silver, bronze, black iron, verdigris β one colour value; it rebakes while you watch |
| π Every text size | titles, labels, buttons, rows β each on its own dial |
| ποΈ Features without the look | one switch turns the painting off and keeps everything else |
Art update: in a world running VALtimaOnline, the panels, the minimap, VikingOS's windows and the Hall of Arms can wear that world's leather-and-brass art. Fatty and TortalPortal share VikingOS's frame β give them the same metal colour and they read as one family.
First ten minutes: install with your mod manager β launch once β F10 and move something β open the inventory and right-click a helmet β put a mead in the pouch and press Alt+Z β Enter, then /gif hello.
| Key | Command | ||
|---|---|---|---|
| F10 | edit mode | vikingos_debug |
what works, what does not, and why β paste it with a bug report |
| P | Hall of Arms | vikingos_layout |
your changes; edit / reset |
| Alt+Z / X / C | pouch slots | vikingos_slots_unpack |
empty the Hall of Arms into your bag |
| J | quest journal (VALtimaOnline) | vikingos_gifcheck |
test GIF search end to end |
| Enter | chat: /gif /w /r /trade |
vikingos_emotereload |
admins: new server emotes, no restart |
π οΈ Add your own emojis
Drop PNGs or GIFs into the emojipacks folder in VikingOS's config directory β the filename is the shortcode, so skol.png is :skol: β and restart. Yours outrank the built-ins.
π‘ Share emotes from your server
Drop PNGs and GIFs into the emotes folder in VikingOS's config directory on the server, then run vikingos_emotereload or restart. Each player downloads what is missing once.
ποΈ Use your own GIF key
Make a free account at the KLIPY Partner Panel, create a platform under API Keys, and paste the key into Configuration Manager βΊ VikingOS βΊ 5 - Chat βΊ GIF Search API Key. vikingos_gifcheck says what is wrong if it does not work.
π§Ή Remove VikingOS cleanly
Type vikingos_slots_unpack in the console (F5) β everything in the Hall of Arms moves into your bag, worn gear stays worn β then quit and remove the mod. Skip it and Valheim drops what was in the slots at your feet.
| Works with vanilla players and servers | Needs VikingOS on the server | Needs VikingOS on both ends |
|---|---|---|
| layout Β· theme Β· chat window Β· Hall of Arms Β· Wardrobe looks Β· capitals Β· Always Shout Β· emoji | server emotes Β· trading | item cards Β· shared GIFs |
β οΈ Versions must match. A server running VikingOS refuses other versions. Update the server and its players together. Single player and vanilla servers do not care.
| Mod | |
|---|---|
| π KG Marketplace & Server NPCs | KG Chat must be off: EnableKGChat = false in BepInEx/config/Marketplace/MarketPlace.cfg on the server, then restart β before its first boot if you can. Players have nothing to do. The marketplace, NPCs, quests and trading are unaffected. |
| β HUDCompass | Do not run both. Keep it? Switch the VikingOS compass off. |
| AzuExtendedPlayerInventory | Choose one for your gear. With AzuEPI, Hall of Arms steps aside and dresses AzuEPI's panel; without it, your gear moves into Hall of Arms. |
| Jewelcrafting Β· Backpacks Β· BowsBeforeHoes | Get Hall of Arms slots; each still equips its own items. |
| VALtimaOnline | Its quest dialog, journal and pinned quests (J) drawn in VikingOS's frame. |
| Hygge Β· MarsarahTweaks | No conflicts β what they move becomes VikingOS's baseline. |
| Fatty Β· TortalPortal | Share the frame. |
All safe to leave alone. Configuration Manager (F1) in game, or BepInEx/config/wubarrk.VikingOS.cfg.
π Server-synced β set on the server, hidden on clients
| Section | Setting | |
|---|---|---|
| 1 β General | Lock Configuration |
only admins change synced settings |
| 5 β Chat | Enable VikingOS Chat |
the whole chat side (server restart) |
| 5 β Chat | Share Emotes |
hand the server's emotes to players |
| 5 β Chat | Always Shout |
every message at shout range |
| 5 β Chat | Allow Shared GIFs |
GIF sharing for everyone |
| 5 β Chat | GIF Content Filter |
High / Medium / Low |
π₯οΈ Local to your game β yours alone
| Section | Settings |
|---|---|
| 2 β Theme | Gold Theme Β· Theme Inventory Panels Β· Ornate Frames Β· Frame Style Β· UO Art Skin Mode |
| 3 β Theme Colours | Metal Colour Β· Derive Metal Tones Β· Metal Shadow Β· Metal Highlight Β· Panel Colour Β· Panel Opacity Β· Text Colour Β· Muted Text Colour |
| 4 β Text Sizes | Text Scale Β· All Text Size Β· Window Title Size Β· Sub-Title Size Β· Small Label Size Β· Button Text Size Β· List Row Size Β· Footer Size Β· Input Field Size |
| 5 β Chat | Embedded Emoji Library Β· Chat Transcript Β· Chat Button Bar Β· Chat Text Size Β· Emote Size Β· Zoom Emotes On Hover Β· Complete Typed Emoji Β· GIF Search API Key Β· Show Shared GIFs Β· Auto-Show Shared GIFs |
| 6 β HUD Widgets | Clock Β· Weight Meter Β· Compass Β· Compass Map Pins Β· Compass Players Β· Compass Pin Names Β· Compass Pin Range Β· Compass Pin Limit Β· Compass Pin Size Β· Quest Tracker Β· Quest Tracker Opacity |
| 7 β Layout | Edit Mode Key Β· Element Depth Β· Scale And Rotate In Place Β· Re-Flow Grids On Resize Β· Snap While Dragging Β· Snap Distance Β· Grab Whole Sections Β· Keep Text Upright When Rotated |
| 8 β Window Positions | set by dragging; Default Arrangement Applied = 0 lays the default screen out again |
| 9 β Compatibility | Disable KG Chat Β· VALtima Quest Windows Β· Quest Journal Key |
| 10 β Hall of Arms | Slots Β· Wishbone and Demister Slots Β· Quick Slot 1/2/3 Key Β· Show Panel Β· Arrangement Β· Look Β· Panel Scale Β· Drag Glow Β· Empty Slot Outlines Β· Dress On Drop Β· Hall of Arms Key |
| 99 β Debug | Debug Logging Β· Debug Overlay |
Needs: BepInExPack Valheim 5.4.2351 Β· JsonDotNET 13.0.4
- Static emoji β Twemoji, Β© 2019 Twitter, Inc and other contributors, maintained by Jason Sofonia and Justine De Caires, CC BY 4.0. The v15.1.0 set, unchanged.
- Animated emoji β Noto Emoji Animation by Google, CC BY 4.0. Resized to about 64 px and re-encoded as small GIFs.
- Emoji names follow GitHub's gemoji (MIT, Β© 2019 GitHub, Inc.).
- GIF search by KLIPY β GIFs come from KLIPY to your game; none is part of VikingOS or saved by it.
- The six Viking animations (
:skol:,:chop:,:huzzah:,:longboat:,:dwarfrage:,:vikingdance:) and the Hall of Arms art are original to VikingOS, drawn in code.
π Also by me: TortalPortal, a complete overhaul of Valheim's portal network, and Mists of Avalor, in open beta on Hexium.
Made by Wubarrk. Bug reports and abuse welcome on Discord. License: MIT β keep the copyright notice; the emoji pictures are under their own licences. Full text in LICENSE.md.