Quads Companion
A viking companion, a follower NPC who plays like a player: comes on your adventures, fights beside you, lives its own life at home, and gets better as it goes.🧔 Quad's Companion
A viking companion, a follower NPC who plays like a player: comes on your adventures, fights beside you, lives its own life at home, and gets better as it goes.
Source code · Report a bug · Discord
✨ Features
- Press J to summon your companion or open its menu (E on it too). Hold J: your companions come with you, or go home.
- Point and press H: at an enemy (they attack it), a tree, rock or plant (it works it, and the thing glows with a note above it while it does), your chest (it puts its things in), a cart (it pulls it), the ground (it waits there), the sky (it comes back).
- "Let it decide": it reads what you are doing. It fights beside you, mines or chops beside you, and keeps close while you explore; where a place is too dangerous for its gear it tells you and only defends.
- It fights like a player: timed parries (it learns each creature's swing), rolls out of sweeps and shots, joins in on what you are hitting and gets round behind it, pulls enemies off you when you are hurt, sneaks up for backstabs, uses weapon specials, hits and steps back against heavy hitters, drinks the right mead, remembers what has killed it, kites with its bow (leading moving targets, allowing for arrow drop), and fights bosses with care (flanking, keeping its distance, drinking early).
- Follows you through portals, into crypts and caves, onto boats and through doors; it steers round stakes and fires, jumps streams and gets itself unstuck.
- Home and away by itself: when you head out it comes along; back home it lives there again. It takes a free bed and empty chests by itself.
- At home it works toward better gear: picks its next upgrade, gathers exactly what it needs (trips further out when nothing near has it), makes bronze and the like, crafts and upgrades at your workbench and forge.
- It hunts, cooks on your cooking stations, keeps its fires burning, repairs its gear and your base, sleeps in its bed at night, and sorts what it brings home into the right chests (with QualityOfLife).
- While you are away it catches up on all of it, and tells you what it did when you return.
- Needs like a player: food for health and stamina, skills that rise, stamina, carry weight, weather, rest.
- Its gear has slots of its own (weapons, shield, bow and arrows, axe, pickaxe, hammer, armour, and three food slots it keeps filled): change them from its menu from anywhere. When it falls everything goes into its tombstone, as a player's; it wakes wearing its gear again when its tombstone is near, else it goes back for it.
- Its bag shows beside your inventory: drag items between you. Hotbar keys give it food, potions or gear.
- Between jobs it acts like a person: sits by the fire or in a chair, gets out of the rain, takes a stroll, sits with you when you rest, waves when you come back, cheers after a big fight and answers your emotes.
- A journal of its life, small talk that fits the moment, and chat messages about what it is up to.
- Its menu: status, stats and every skill, orders, home, gear, looks and journal. Talk to it in chat: "Rádvar, follow me", "Rádvar go home".
- With PartyHud it shows in the party panel (face, health, food); it shows on the map, and where it fell is marked for everyone.
- Multiplayer: it belongs to whoever summoned it. Everyone in the world needs the mod (the host too), or the game deletes saved companions.
📸 Screenshots
Your companion at your side out in the Meadows
Its menu: what it is doing, its food, what it has done
Its gear slots and its bag
Its bag and gear beside yours when you open your inventory
🎮 How to use
| Key | What it does |
|---|---|
| J / hold J | Summon your companion or open its menu / your companions come with you, or go home |
| H | Point: attack it, chop or mine it (a whole patch), pick it up, put its things in that chest, pull that cart, wait here |
🧩 Other mods
Known clashes: none known.
Works with our mods
- Quad's Build Orders: a home duty, Build our plans: it builds your planned ghosts near its home, paying from its own bag and your chests, never from you.
- Quad's Quality of Life: what it brings home goes into the right chests by your chest assignments (K).
- Quad's Party HUD: it shows under you in the party panel (face, health, what it's doing).
- Quad's Skal Tavern: companions within 12 m count as drinking partners for a Skål!
- Our chest mods (Quad's Craft From Chests, Quad's Build From Chests, Quad's Feed From Chests, Quad's Ledger Chest) never take from its bag or its own chests.
Found a clash with another mod? Tell us which one and what happened.
👥 Multiplayer
Who needs it: Everyone in the world, the host too: without it the game deletes saved companions.
It adds the companion (a new creature the world saves). Restart the game after updating so it registers cleanly: a companion whose area loads while it is not registered is deleted by the host, with everything it carries.
Each companion belongs to whoever summoned it. Everyone sees each companion's state, and where one fell is marked for everyone. It never touches a chest someone else has open.
The host decides: how many companions, what they do while you're away, respawn time, base health and stamina, when they eat, starting skill. While you play on their world their values replace yours (your file isn't changed); a host without the mod leaves everyone their own.
🌍 Languages
English, Русский (Russian), Deutsch (German), 简体中文 (Chinese), Português do Brasil (Portuguese), Español (Spanish), Français (French), Polski (Polish), Türkçe (Turkish). It follows the game's own language setting.
The translations were made with AI, so a few words may be off. To correct one, or to add your language, put a file in BepInEx/config/translations/com.quad.aicompanion/ named after the game's name for the language (German.json, Italian.json, Japanese.json...) with only the lines you change, copied from English.json (it wins over the built-in one). Or tell us the better words and we'll put them in for everyone.
⚙️ Settings
In BepInEx/config/com.quad.aicompanion.cfg, made the first time the game runs with the mod. r2modman and Thunderstore Mod Manager edit it under Config editor.
Companion
| Setting | Default | What it does |
|---|---|---|
MaxCompanions |
3 |
How many companions each player can have. In multiplayer the server's value applies. |
WhileAway |
Mild |
What a companion living at home does while nobody is near. It always catches up on its work when you come back. Mild: it also fights off a few creatures and keeps their drops, and never falls. Real: those fights can go badly and it can fall. Off: work only. In multiplayer the server's value applies. |
General
| Setting | Default | What it does |
|---|---|---|
MenuKey |
J |
Tap: your companion's menu (or the summon panel). Hold: all your companions near you come with you, or go home. E on a companion opens its menu too. |
CommandKey |
H |
Point at something and press it: an enemy (they attack it), a tree, rock or plant (it works it), your chest (it puts its things in), its tombstone, a free bed (its bed), the ground (it waits there), or the sky (it comes back). |
Companion
| Setting | Default | What it does |
|---|---|---|
FightRange |
12 |
It fights enemies that come this close (in metres) to it or to you. In the menu: Orders. |
ShowDecisions |
true |
Show what it decides in a fight above its head. In the menu: Brain. |
RespawnSeconds |
30 |
Seconds after falling before it wakes in its bed (or beside you). In multiplayer the server's value applies. |
BaseHealth |
25 |
Its health before food, as a player's (25). In multiplayer the server's value applies. |
BaseStamina |
75 |
Its stamina before food, as a player's (75). In multiplayer the server's value applies. |
EatBelowPercent |
10 |
It eats a food it is already under again once its time left drops below this percent (the game allows it from 50). Lower saves food: a meal lasts 80% of its time instead of 50%, and its effect weakens a little towards the end. In multiplayer the server's value applies. |
StartingSkill |
0 |
The skill level a new companion starts at (a new player: 0). In multiplayer the server's value applies. |
🤖 Made with AI
Made with the help of Claude (Anthropic), with Claude Code: designed, written and checked together, and tried in the game.
💬 Join us on Discord
Come hang out with the people who make and play these mods. In the Quads Lab Discord you can:
- 🛠️ Get help and report bugs straight to us
- 👀 See new mods first, and help test them before they're released
- 🗳️ Suggest ideas and vote on what we make next
- 🏰 Share your builds, bases and arena runs
- 🤖 Talk AI coding and vibe coding with people building things with AI, the way these mods are made
🧪 About Quads Lab
Quads Lab is where Quad H (HardHeadHackerHead) builds software with AI, of every kind: these Valheim mods are one of its projects. Each mod is designed by a player, written with Claude Code and tested in our own world, with bobisme as our tester.
- 🌐 quadslab.io
- 🧰 All Quads Lab mods on Thunderstore
- 💻 Source code on GitHub
- 💬 Discord
- 🐞 Found a bug? Open an issue on GitHub
📜 Recent changes
- 0.24.3 Fixes from a review of the multiplayer changes, for cases where part of a companion's journal or missions could be lost: your game no longer reads its journal before your character is in the world, never saves a journal it only partly has over the one kept with your character, and keeps what is in your character's copy when an old one is joined in. A friend's game running your companion while you are away no longer starts its missions over, and what it did while you were offline is only taken off the companion once your game confirms it has it (it was sent the moment you connected, while your game was still loading). Its old journal is sent to your game alone, and less and less often if your game does not answer. Skills no longer go back after another player's game ran it, its status shows again when it comes back to your game, the party panel no longer flickers its effects off now and then, and looking for beds, chests and cooking stations is quicker.
- 0.24.2 An old companion's journal now comes off it (where it made multiplayer lag) without its player walking up to it: whoever's game runs it hands the journal to its player's game, and takes it off once that game has it. While its player is offline it stays on until they are back.
- 0.24.1 Multiplayer lag fixed. The game sends a creature's whole save to every player near it each time anything in it changes, and a walking companion changes many times a second: its journal, tally and missions were in that save (11-13 KB, the journal alone 7-9k characters), more than the game sends in one go, so other creatures' moves arrived seconds late. They are now kept with its player's character instead (as they already were, for when it falls) and only what is new is sent, a few bytes at a time; a player who opens its journal and does not have it is sent it once. What it does while its player is offline waits on the companion (a short note: its newest journal entries and its counts) and is handed over when they come back, even if the player whose game ran it has left by then. Old saves move over by themselves the first time its player is near it. Its skills are saved every 10 seconds or at a new level, instead of with every hit; what it is doing at most once a second (a status that flipped back and forth was sent each time); and its "still at home" mark every 30 seconds instead of 5. The party panel's news of each companion (health, place, effects) goes out once a second instead of twice, and only when something shows a change (or every 3 seconds), and the time left on its effects and meals now counts down smoothly in between. Fixed: a companion's skills could go back to what they were when another player's game had run it in between. Everyone on a server should update together: an older version shows an empty journal for companions run by a newer one.
Every change is on the Changelog tab.

