Zemeroth

Zemeroth is a turn-based hexagonal tactical game written in Rust.

Online Version

You can play an online WebAssembly version of Zemeroth at ozkriff.itch.io/zemeroth.

Precompiled Binaries

Precompiled binaries for Linux, Windows, and macOS are available at github.com/ozkriff/zemeroth/releases.

Screenshots

big screenshot big screenshot

campaign screenshot campaign screenshot

Gifs

main gameplay animation main gameplay animation

Videos

youtube.com/c/andreylesnikov/videos

Vision

The initial vision of the project is:

  • Random-based skirmish-level digital tabletop game
  • Single-player only
  • 3-6 fighters under player's control
  • Small unscrollable maps
  • Relatively short game sessions (under an hour)
  • Simple vector 2D graphics with just 3-5 sprites per unit
  • Reaction attacks and action interruptions
  • Highly dynamic (lots of small unit moves as a side effect of other events)
  • Intentionally stupid and predictable AI

Inspiration

Tactical battle mechanics are mostly inspired by these games:

Building from Source

Install all miniquad's system dependencies.

cargo install resvg
./utils/assets_export.sh
cargo run

WebAssembly

cargo install resvg
./utils/assets_export.sh
rustup target add wasm32-unknown-unknown
./utils/wasm/build.sh
cargo install basic-http-server
basic-http-server static

Then open http://localhost:4000 in your browser.

Dependencies

The key external dependency of Zemeroth is macroquad / miniquad.

This repo contains a bunch of helper crates:

  • zcomponents is a simple component storage.
  • zgui is a simple and opinionated GUI library.
  • zscene is a simple scene and declarative animation manager.

Also, resvg is used for exporting sprites from SVG.

Similar Projects

Rustfinity.com

Links

  1. Home
  2. Learn Rust
  3. Get Started
  4. Practice Rust
  5. Challenges
  6. Tutorials
  7. Blog
  8. Open source
  9. Learn Gleam

Socials

  1. GitHub
  2. X

Legal

  1. Privacy Policy
  2. Terms of Service