Skip to content

Optimized Local Housing v1.0.1

Choose a tag to compare

@kramsey458 kramsey458 released this 22 Sep 02:42
· 29 commits to main since this release

A fix release of Optimized Local Housing, a Timberborn 1.1 mod (built against 1.1.2.4) that re-houses adult beavers once a day so the colony's total home-to-workplace travel is as short as it can be, using an optimal assignment.

What changed since v1.0.0

A multiplayer peer that loads a save taken mid-pass now keeps step, tick for tick, with a peer that never reloaded. After a load, the solver rebuilt the rows it had already solved and charged that work to the same tick's operation budget. A peer that never reloaded paid nothing, so the two solved a different number of rows per tick and the pass could finish, and apply its moves, a tick apart on the two computers, which is a desync. The rebuild is no longer charged, so how many rows a tick solves depends on the saved state alone.

What the mod decides is unchanged: the same beavers end up in the same homes. A new automated check restores from a running pass at 23 points on a 300-adult colony and confirms each restored engine matches the uninterrupted one at every following tick; it failed before the fix.

BeaverBuddies MultiColony

The code was audited against BeaverBuddies MultiColony 1.4.0-alpha21: the mod ticks only inside the simulation, draws no random numbers, uses no wall-clock or frame time, never moves a beaver between districts (so colonies stay separate), and nothing it touches is patched by BeaverBuddies. In the alpha21 join model every player loads the same save, so the bug above could not trigger there yet; it would have with a mid-game join or reconnect. A live two-player session with alpha21 has not been played.

Install

  1. Close Timberborn and extract OptimizedLocalHousing-v1.0.1.zip into Documents/Timberborn/Mods.
  2. Launch Timberborn, enable Optimized Local Housing, and restart.
  3. Each pass logs one [OptimizedLocalHousing] line to Player.log.

Upgrading: delete the old Mods/OptimizedLocalHousing folder and extract the new one. Saves keep working, and the mod's saved data is compatible. In multiplayer, every player must update to 1.0.1 together; BeaverBuddies warns at join time when the mod lists differ.

Do not run it with Housing Optimize or Commute Balancer (it disables itself if either is enabled). Full guides, troubleshooting and FAQ: https://timbermods.github.io/OptimizedLocalHousing/

SHA-256 of the ZIP: 6d0925644570116a323726a98e3647800a84ce5882d8931eee847955ead7172c