Skip to content

Playable LAN version

Choose a tag to compare

@corepunch corepunch released this 02 Jun 16:43
· 2651 commits to main since this release

OpenWarcraft3 v0.0.2-alpha

This release is a broad foundation pass across the engine, tooling, documentation, tests, and release infrastructure. It improves the project’s build and distribution flow, expands core gameplay/runtime coverage, and continues moving the codebase toward a cleaner Quake/id-style RTS architecture.

Highlights

  • Added automated multi-platform release builds through GitHub Actions.
  • Added and published the project documentation site, including architecture and file-format articles.
  • Added the MIT License.
  • Added Copilot/agent development instructions for the codebase’s C style and architecture conventions.
  • Reworked the build layout around the Makefile-only workflow, including flattening the old src/ tree.
  • Added UDP networking support, including -connect, multi-client server tests, and max-player enforcement.
  • Replaced StormLib with an in-tree MPQ reader.
  • Added fdftool for interactive FDF scene viewing through the game UI parser and renderer.
  • Improved FDF parsing compatibility with shipped Warcraft III frame files.
  • Refactored the JASS VM, expanded coroutine support, and implemented a fuller JASS native API.
  • Expanded test coverage across SLK parsing, lifecycle, movement, collision, combat, animation, abilities, resources, quests, MSG codecs, and networking.
  • Improved menu startup, transitions, loading states, debug tooling, and map loading scripts.
  • Organized game-specific modules under the games/ directory.

Security

  • Removed an unsafe exec() usage in g_spawn.c.

Documentation

  • Added system-level README and source documentation.
  • Moved UI implementation details from the README into source files.
  • Added map renderer architecture documentation.
  • Fixed documentation deployment through GitHub Pages.
  • Added the live documentation site link to the README.
  • Corrected wire x/y notation to use integers rather than floats.

New Contributor

Thanks to @orbisai0security for their first contribution in #44.

Full changelog: v0.0.1-alpha...v0.0.2-alpha