Skip to content

About

A survivors roguelite running on a from-scratch World of Warcraft 1.12.1 client engine (Rust + Bevy).

Topics

Resources

Contributing

Stars

180 stars

Watchers

0 watching

Forks

Repository files navigation

brag

Azeroth Survivors

A free fan-made WoW roguelike by Aethus, run locally on a from-scratch WoW 1.12.1 client engine (Rust + Bevy).

License: MIT OR Apache-2.0

Not an original project. Azeroth Survivors is a free, fan-made WoW roguelike by Aethus — play the original in the browser at wow.aethus.pl (r/wowservers announcement · Discord). This repository is a from-source local build of the game, running on the benilla / wenilla engine, for personal use.

Pick a class and a battleground, then survive: WASD to move, your abilities cast themselves, enemies swarm in waves, you level up and pick upgrades, and a boss shows up every couple of minutes. No server, no login, no account — fully offline and self-contained.

The pick screen: race, gender and class on the left, sixteen zones on the right, the hero in between A Mage holding off Elwynn Forest's wolves with frost, fire and arcane
Level up: three spell cards, coloured by rarity, each showing exactly what its next rank changes The results screen after a death in Redridge Mountains

In this build

  • A character-create pick screen built from the client's own glue art: eight races, both genders, every class the race can be, and sixteen zones, from the starting zones to Naxxramas and the Gates of Ahn'Qiraj. Each zone fights with its own creatures and bosses, taken from the zone's real spawns. Your pick is remembered across reloads.
  • Level-up cards that deal in, tilt toward the cursor and lift on hover. Their WoW item-quality colour says how strong a pick is, and each card lists exactly what changes, like Damage 20 » 26 or Targets 2 » 3.
  • A class movement spell on F from level 5, aimed at the cursor: Blink, Charge, Sprint, Dash, Fade, Ghost Wolf, Aspect of the Cheetah, Blessing of Freedom, Howl of Terror.
  • A camera you can free: locked top-down by default with the hero facing the cursor. C unlocks it to swing and tilt, and the wheel zooms from over the shoulder out to 70 yards.
  • A light sharpen-and-colour pass over the picture (G toggles it).

Play it

git clone https://github.com/OutThisLife/azeroth-survivors-re
cd azeroth-survivors-re
make build     # fetch game data + install toolchain + build the wasm (~5.5 GB download)
make start     # → open http://127.0.0.1:8090/

make build chains three re-runnable scripts, each skipping what's already done:

Step What it does
scripts/fetch-data.sh downloads the WoW 1.12.1 client and extracts its MPQs
scripts/web-setup.sh installs the wasm toolchain (wasi-sdk, wasm-bindgen, binaryen)
scripts/web-build.sh builds the client into web/dist/

Prerequisites: Rust, make, curl, unzip, and a bash shell. On Windows, run everything from Git Bash; PowerShell and cmd can't run the scripts.

Run make (or make help) to list every target.

Controls

See CONTROLS.md. The short version: WASD to move, Space to jump, F for your class's movement spell, the mouse wheel to zoom, C to unlock the camera, Esc to pause, 1/2/3 to pick a level-up card.

The game data (not in this repo)

This repo ships no Blizzard content — no art, models, sounds, maps, MPQ contents, or FrameXML. The game reads a WoW 1.12.1 client's Data folder at runtime, which you supply.

make build (via scripts/fetch-data.sh) downloads the English WoW 1.12.1 (build 5875) client from archive.org (~5.5 GB) and extracts the MPQs into wow-data/Data/ (git-ignored, resumable, skipped when already present). Or point at a client you already have with --data / WOW_DATA.

Changing the download source

If the archive.org item moves or you have your own mirror, override the URL without editing anything:

make build WOW_DATA_URL=https://your-mirror.example/client.zip

Or set it permanently by editing the single clearly-marked DEFAULT_DATA_URL line at the top of scripts/fetch-data.sh. Either way the URL must be a direct link to a zip holding the client's Data/*.MPQ files.

How it's built

The survivors mode is crates/benilla-app/src/survivors/, running on two upstream projects:

  • benilla — a from-scratch WoW 1.12.1 client.
  • wenilla — benilla compiled to WebAssembly, with a local host and realm service.

Legal

Azeroth Survivors is a free fan game by Aethus, not affiliated with or endorsed by Blizzard Entertainment, and it ships no Blizzard game files. The screenshots in docs/screenshots/ show World of Warcraft art rendered from a user-supplied client; that art is © Blizzard Entertainment. World of Warcraft is a trademark of Blizzard Entertainment, Inc. The engine code in this repository is licensed under MIT or Apache 2.0, at your option; the vendored components under third_party/ keep their own upstream licenses.

About

A survivors roguelite running on a from-scratch World of Warcraft 1.12.1 client engine (Rust + Bevy).

Topics

Resources

Contributing

Stars

180 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages