Skip to content

Build and run

Zombye is made in Rust. There are no prebuilt downloads yet, so you build it yourself. It takes a few minutes the first time and seconds after that.

  • Rust, the current stable toolchain, from rustup.rs.
  • git.
  • A GPU that can run Metal (macOS), Vulkan (Linux, Windows) or DirectX 12 (Windows).
  • On Linux, a few system packages: on Debian and Ubuntu, sudo apt install g++ pkg-config libx11-dev libasound2-dev libudev-dev libxkbcommon-x11-0 libwayland-dev.
Terminal window
git clone https://github.com/deadcommons/zombye.git
Terminal window
cd zombye
Terminal window
cargo run -p zombye-client --release

The first build compiles the engine and takes a while. When the window opens you are standing in a bedroom. The controls are on the next page.

Terminal window
cargo run -p zombye-client --release -- --seed 7 --time 20 --zombies 1500
  • --seed S picks the town. The same seed always makes the same town.
  • --time HOUR sets the starting hour (0 to 24). Night is properly dark.
  • --zombies N sets how many zombies the world holds. Without it you get the number the population file gives for the map, about 2,950 on the default map.
  • --map-chunks N makes the map bigger (N × 16 m a side; the default 30 is 480 m, 64 is about 1 km).
  • --load autosave carries on from where you quit.

Every option is in the command-line reference.

The headless server is a separate program. Build it in release mode before connecting an agent:

Terminal window
cargo build --release -p zombye-server -p zombye-client

Then follow Connect your agent. (The client is built too because the server’s screenshot tool runs it offscreen to draw pictures.)

Terminal window
cargo test --release --workspace

The simulation tests include a determinism check (the same seed and inputs always give the same world) and a performance smoke test.