// SIGNAL ACQUIRED — CREW ON STATION
MULTIVOID
Co-op multiplayer for Voices of the Void.
One station, one save, a crew of up to four.
01 What is this?
Multivoid adds co-op to the single-player game. It works as a listen server: one player hosts, and everyone plays in the host's world and save. Friends join from the server browser or by IP, walk the same base, drive the same ATV, split the station's work.
The game's own code still runs everything. Multivoid handles the multiplayer part: keeping players in sync and deciding whose version of events counts. The rest behaves the way the game always has, Kerfur included.
02 Gallery
Shots from live co-op sessions.
03 Features
Still in development; every build syncs a bit more of the game.
Shared world
Props, physics, weather, the day-night cycle and fog are synced. Move a pallet and your friend sees the pallet move.
Events & NPCs
The host schedules events; creatures and anomalies are mirrored live. Kerfur works for everyone.
The signal desk
Dishes, pings, downloads, decoding, the drive rack, the meadow database. The whole desk can be worked as a team.
Proximity voice
Built-in positional voice chat, plus text chat with nameplate bubbles.
Server browser
Host from the in-game menu, find lobbies in the browser, or direct-connect by IP.
Skins & identity
Wear the game's own skin mods in co-op — crewmates with the same skin pack installed see them. Nick colors, a player list, and admin tools (kick/ban) for the host.
Death, not the main menu
Dying plays out the way the game intends — and then you come back, instead of the world unloading and dropping everyone to the menu.
Your lobby, your rules
Lock a session with a password, or keep it off the public list entirely. Peers prove who they are before they get a seat.
04 Demo
A recorded co-op session (July 2026 progress build).
05 Q & A
Is it P2P or server-authoritative?
It's a listen server. Every client connects to the host, and the host has the final say over the world, the save, NPCs and events. Players send their own movement and voice; everything else goes through the host, and clients never talk to each other directly. The master server lists lobbies and introduces peers to a host when they join — it has no say in the game itself, and once you are connected it is out of the loop.
Do you just send an "event happened" message?
Mostly no. Only the host schedules events, but an event isn't one message: the creatures, weather and alarms it involves are each synced on their own, so what a client sees is the event, not a re-enactment of it. Joining mid-event works too — a joiner gets the host's save and a snapshot of whatever is going on right now.
Do you rewrite the game's logic to make it multiplayer?
No, and that's on purpose. All gameplay still runs in the game's own code, which the mod calls into. Multivoid only decides who controls what and what goes over the network. It also means a game update doesn't force a gameplay rewrite, because there is nothing to rewrite.
Who makes this, and how?
One person, working extensively with AI coding tools. The direction, the architecture, the testing and the releases are mine; a lot of the code is written with Claude, which is in the credits below with its commit count next to mine.
I didn't invent the multiplayer architecture — I went and learned it. The core decisions are adapted from MTA:SA, which has been solving this for a single-player game for twenty years: 153 files in our source name the precedent they follow, and in 16 of them the source says why we deliberately did it differently. Knowing which parts of twenty years of prior art apply to this game, and which don't, is the work. The repository and its full commit history are public, along with 135 design documents and a categorised record of everything this project got wrong on the way. Judge the result rather than the method — all of it is there to check.
Prior art this owes thanks to: MTA:SA for the multiplayer architecture it follows, RE-UE4SS for the UE4 modding substrate its reflection algorithms were ported from (also the loader the mod runs under — the mod itself imports nothing from it), MinHook for hooking, and VoidTogether, the first multiplayer attempt for this game, which was useful to study while designing this one. Full credits are in the README.
Does it modify game files?
Never. It doesn't edit the .exe, repack the .pak or touch any asset. The mod is a standard UE4SS mod folder: remove it, or uninstall in your mod manager, and the game boots completely stock. Its settings and logs live in a couple of folders next to the game — delete those too if you want a clean sweep.
My antivirus flags it — is this safe to install?
Expected, unfortunately. The mod is a DLL that loads into the game process (through UE4SS, the game's standard modding loader), and to a scanner that looks exactly like DLL injection — this is why so many game mods get flagged. You don't have to take our word for it, though. The source is public, so you can read it or build it yourself. Releases are built by GitHub Actions straight from that source, with the workflow's hash pinned into a release fingerprint that ties the binary to its commit. And every file's SHA-256 is printed in the release notes, so you can compare before running.
Network-wise, the full list: our own master.multivoid.dev — to list your lobby, fetch the lobby list, check for a newer version, and to introduce you to the host when you join; and a public STUN server (Google's, by default — changeable in the config) which tells your game what its own address looks like from outside. STUN sees an IP and nothing else. After that it's a direct connection to the people you play with, unless your networks refuse to meet, in which case the traffic is relayed — still encrypted end to end. No analytics, no tracking, no account.
Is it secure? Can someone snoop on or mess with my game?
Traffic between peers is encrypted, so nobody reads your voice or chat off the wire. Peers now prove who they are before they get a seat — each side holds a signing key, and a joiner that can't answer the challenge doesn't get in — and you can put a password on your lobby. What is not finished is what happens after that: the host still takes some things a client says on trust, and closing that off action by action is the current work. Hosting for friends is fine; hosting for strangers is still a door you're leaving open.
We'd rather tell you where it actually stands than put a padlock icon on the page. How to report something you find is in SECURITY.md.
06 Download
Dev builds only — there is no stable release yet, and everyone playing one is a tester. Expect bugs; good reports get credited in Credits. Full disclaimer & how to report.
Mod manager recommended
Install through r2modman and it sets up the loader for you; updates come the same way.
Get it on ThunderstoreFresh dev builds
Builds land on GitHub first. For one newer than the listing, download the zip and hand it to r2modman via Settings → Import local mod. No account needed.
Dev builds on GitHubSource code · Join the Discord · versioning follows the game (0.9.0n) — host and joiners need matching builds
Multivoid is free and always will be. Donating covers the master server and the tools it is built with — nothing is gated behind it.
Donate// NOTE FROM THE MAINTAINER
I started on 21 May 2026. Three months later it has gone from an empty repository to playable co-op: up to four players, its own master server with a lobby list, a native in-game UI, one-click install through r2modman.
That is not the same as finished, and no project is at three months — one of which I spent away, on a game five years in development that was never designed to have multiplayer at all. Every project, AI or not, starts the same way: to make something good, you make something bad first. The dev builds are that, in public — and what I got wrong along the way is written down rather than quietly lived with.
The architecture is not improvised. Its core principles are adapted from MTA:SA, which has been solving multiplayer for a single-player game for twenty years: 153 files in our source name the precedent they follow, and sixteen of them record where we deliberately departed from it. Deciding which of that prior art applies here and which of it does not is the work, and so far it is holding up.
A large share of the code is written with Claude, and the direction, the architecture and every decision about what this should be are mine. Work done with these tools is work. They have moved further in a few years than most people's impression of them has, and that impression — rather than the result in front of them — is usually what is being argued with.
The goal is a proper multiplayer infrastructure for Voices of the Void, and the mod built on top of it. The foundation is standing. There is more coming.
> pelmentor
07 Credits
Multivoid has no team and no QA department. Beyond the maintainer’s own work, everything here came from outside, whether as code, a report or a review. If it changed the mod, it gets a row.
| Who | Kind | Contribution | Landed |
|---|---|---|---|
| pelmentor maintainer | code | Architecture, direction, releases — the whole mod | 745 commits |
| Claude Anthropic | code | Implementation, across the whole mod | 1,367 commits |
| Tarangok | code | KO respawn, live skin preview, held-prop visibility, container extraction | 5 commits |
| hediiiqq | code | Dish mirror interpolation | 1 commit |
| archhn0madd | code | Rejoining without a relaunch; the host-link backlog claim | 1 commit |
| arigalit | code · report | ATV seat contention; join-time prop-count divergence | 2 commits |
| huoyan1231 | code · report | CI & automated builds; the b125 host-log pack | 2 commits · b134 |
| Moddy via Discord | review | The architecture and documentation review that became the UE4SS move | b122 · b143 |
| SentientYeet | review | The substrate critique that re-opened the loader decision | b143 |
| Violet via Discord | report | ~9 FPS for a friend joining on Linux — the triage behind it found five separate defects | b134 |
| decodinatorX via GitHub #5 | report | Couldn’t type sv.request at the SAT console — T kept opening chat | b133 |
| gediao via Discord | report | The b125 host-log pack, with huoyan1231 | b134 |
| SirWilliam via Discord | report | Rejoining a session requires fully relaunching the game | queued |
What each one turned out to be and what shipped: docs/CREDITS.md. Pull requests and reports are both welcome — the live commit list is on GitHub.