Timberborn co-op mod · v1.1.10

Build your colony together.

BeaverBuddies Stability Fork lets you and your friends run one Timberborn colony at the same time, with Steam friend invites, a live connection panel, and fixes for the crashes and desyncs that make multiplayer painful.

Free and open source. Tested on Windows with the Steam version of Timberborn 1.1.2.4.

Screenshot of the in-game connection panel as the host sees it: status In sync, the host's own row das it mane in bold with a dash, sarawr at 19 ms, tick rate 11.7 ticks per second, speed 7x, 1 tick behind, connection Steam, and a chat with a yellow line from das it mane and a pink line from sarawr.
The in-game connection panel, as the host sees it during a Steam co-op session. Chat lines take each player's cursor color.
  • 1.1.10Latest release
  • Timberborn 1.1.2.4Built and tested against
  • Windows + SteamTested platform
  • Two playersTested group size
  • GPL-3.0Open source license

Playing together takes three steps

No router settings, no virtual networks. If you both have Timberborn on Steam, you are a few clicks away.

  1. Everyone installs the mod

    Same download, same version, then restart the game. Install guide

  2. The host invites a friend

    Load a save, choose Host co-op game, then Invite Friends and pick your friend in Steam's overlay.

  3. Your friend joins, you start

    When your friend appears in the player list, the host chooses Start Game. Everyone builds in the same colony.

What you get

Everything the original BeaverBuddies does, plus the parts that make a long co-op session actually work.

Steam friend invites

Invite a friend from Steam's own overlay. Connections go straight between you when Steam finds a route and are relayed through Steam otherwise, so there is no Hamachi and no port forwarding. Direct IP still works too.

A connection panel

See who is connected, each player's ping, whether you are in sync, and the tick rate at a glance, and chat with everyone in the game. Collapse it to one line or hide it completely.

See your teammates

Colored, translucent cursors with names, selection outlines, and Viewing / Editing labels on buildings. Restyle each player's cursor in the Player cursors dialog.

Fewer crashes and desyncs

Fixes for the water, animation, random-number, saving, demolition and input problems that knocked sessions out of sync or crashed them.

Problems are explained

Joining with a different build is refused before the save is sent, and a warning lists any mods that differ. Failed connections and multiplayer actions end with a plain-language reason instead of a silent hang.

Quicker and lighter

A guest's actions reach the host about half a tick sooner (roughly 0.3 seconds at normal speed), the mod does less work every tick and every frame, and over Steam the ping no longer climbs as the game speeds up.

Steam invites

Skip the port forwarding

Choose Invite Friends and your friend gets a normal Steam invitation. If their game is closed, Steam launches it and joins for them.

Confirmed  Working in real playtests between the maintainer and a friend.

  • Friends only. The host opens a friends-only lobby and only accepts players who joined it. A stranger who knows your Steam ID cannot connect.
  • Your address stays private. Valve documents that relayed connections keep players' IP addresses hidden from each other.
  • Direct IP still works. Both options are offered when you host, so Hamachi and port forwarding keep working. Steam problems can never stop you hosting over direct IP.
  • Clear errors. If a connection fails, you get Steam's own reason in plain language and in the log.
  • The current API. The original used Valve's older networking API, which Valve marks as deprecated. This fork uses the one Valve recommends.

Both players need to be online in Steam and to own Timberborn on Steam.

Connection panel

Know how your session is doing

A small panel in a corner of your screen during multiplayer games. It only reads: it sends no gameplay events, and if it ever fails it switches itself off.

StatusWhat it means
In syncNormal. Everything is running together.
Catching upGuests only: your game is a few ticks behind the host.
Waiting for hostGuests only: nothing has arrived from the host for a moment.
Connection unstableSomeone has stopped responding for five seconds.
Out of syncA desync was detected.
DisconnectedThe session has ended.
  • Each player is a name and a ping, host first. Your own row is bold, with a dash where the ping would be.
  • Ping is the round trip between you and that player. It is normal text at 80 ms or less, yellow up to 160 ms, and red for anything higher or no response.
  • The dot beside the status is green when you are in sync, yellow while catching up or waiting for the host, and red when the connection is unstable, out of sync or disconnected.
  • Tick rate and speed show how fast the simulation is really running, and guests see how many ticks they are behind the host (0 or 1 is normal).
  • Connection shows whether players are connected directly or through Steam.
  • The host also sees how far behind the slowest guest is and the lowest guest frame rate, and can click Ease off below to slow the game a little while a guest stays under a frame rate (Off, 20, 30, 45 or 60 fps).
  • A chat box sits below the panel. Everyone sees messages in the same order, and a player who joins later gets the whole conversation. Each line is drawn in the sender's cursor color.
  • Click the title to collapse it to a single line. Your choice is remembered.
  • Hide it or move it to any corner in Mod Settings, or bind the optional Toggle connection panel key.

Ping is measured by the mod's network layer, so it means the same thing over Steam, Hamachi and direct IP. Over Steam it includes a short wait for each game to serve Steam, which the mod keeps to a few milliseconds even at a high game speed.

Player activity

See what your teammates are doing

Other players' cursors, selections and building edits show up on your screen, so you stop building on top of each other.

  • Cursors are colored and translucent, with a name label. They are shared in world space, so cameras can be anywhere.
  • Selection outlines use the game's own outline in that player's color.
  • Viewing / Editing labels appear on buildings. It is an advisory notice, not a lock: both players can still change a building.

Make each cursor your own

Open Options (Esc) and choose Player cursors. Each connected player gets a card:

ControlRangeDefault
ColorTheir color, 10 presets, or exact RGBTheir color
Size50% to 300%100%
Transparency0% to 90%50%

These are display-only choices that stay on your machine. They are never sent to other players, are remembered by player name, and cannot affect the simulation.

Under the hood

Stability work, and how sure we are of it

Each fix is marked by how well it is confirmed. Confirmed means it was verified in a real multiplayer playtest; Tested means automated regression checks cover it but it has not been confirmed in a live session.

Water no longer depends on frame rate Confirmed

Players at different frame rates used to see different water, which caused desyncs. The water now follows the simulation's own clock. It resolved a reported "badtide" desync.

Animation crash fixed Confirmed

A path cursor that could move backward between ticks, and non-finite visual coordinates, no longer crash the game.

Builds are checked before the save is sent Tested

The original only warned about a version mismatch after the save had loaded. The fork compares the game version and the exact mod build first, with a time limit and a clear message.

A failed action stops safely Tested

If a multiplayer action fails, replay stops, the session pauses and peers are told, instead of two games quietly drifting apart.

More deterministic random numbers, saving and ordering Tested

Nested random-number scopes are restored even after errors, a stale saving flag is cleared, and water sources are applied in a consistent order.

Demolition and input fixes Tested

A replayed demolition selection that included already-demolished buildings no longer ends the session, equal-distance demolition jobs are chosen deterministically, and input state is recovered after a desync, a failed action or a lost connection, so the menu and controls keep working. The maintainer confirmed the controls work after a disconnect; the other cases are covered by checks only.

The ping stays low at a high game speed Confirmed

Over Steam, data used to wait for the end of every frame, and at a high game speed a frame is mostly simulation, so the ping grew with the speed. Steam is now also served between the ticks of a frame. At a true speed 7 the ping stayed under 100 ms, where it had been 200 to 300 ms.

The host can ease off for a slow guest Tested

The host picks a frame rate floor; while a guest stays below it, the host slows the game a little and speeds back up by itself. It never changes what happens in a tick. An earlier version of the rule was played once and worked but changed speed too often; the current rule has not been played yet.

The full list is in the changelog.

How it works, in one minute

Timberborn is a single-player game, so BeaverBuddies keeps every player's copy of the game identical instead of streaming one game to everyone.

  1. Everyone starts from the same save. The host sends the save when a friend joins.
  2. Every action is mirrored. Building, changing a recipe or setting a priority is sent to the host, which decides which tick it happens on and sends it to everyone.
  3. The game is deterministic. Given the same save and the same actions on the same ticks, every copy of the game plays out exactly the same.

That is why everyone must run the same build, why other mods should match, and why nobody can join once the host has started. When something breaks that sameness, that is a desync. The original project's wiki explains the design in more detail.

Good to know before you play

  • Everyone must run the exact same build of the mod and the same version of the game.
  • Other mods should match. When someone joins, both players get a warning listing any mods that differ. Settings are not compared, so keep simulation-affecting settings identical.
  • Join before the host starts. Nobody can join after Start Game.
  • Desyncs can still happen. This fork removes known causes; it cannot promise none. Keep backups of your saves.
  • Tested with two players on Windows and Steam. Larger groups and other platforms have not been tried.

More answers are in the FAQ, and Troubleshooting covers what to do when something goes wrong.

Ready to play?

Download the mod, follow the install guide, and send your friend an invite.