Building Asterune
Build Studio and runtime templates from the Asterune source checkout.
The Asterune Cargo workspace builds Studio, the game player, and the dedicated server. Use these procedures when developing the engine or running Studio from source.
Prerequisites
Use a current stable Rust toolchain with support for edition 2024. Template staging scripts also require Node.js. Run the commands from the root of the Asterune source checkout. Studio requires a graphical desktop session.
Build Studio
cargo build -p asterune-studiocargo run -p asterune-studioA successful build produces asterune-studio in target/debug/, with an .exe
extension on Windows. The run command opens the home page. Resolve any compiler
or dependency error reported by Cargo before continuing.
Use Getting started to create a project through Studio.
Build runtime templates
Studio exports games using runtime templates for each target. Stage a release player template for the current machine:
node engine/scripts/build-player.mjsSet ASTERUNE_PLAYER_TEMPLATES to the absolute path of
engine/player-templates/. To stage a dedicated-server template, run:
node engine/scripts/build-server.mjsSet ASTERUNE_SERVER_TEMPLATES to the absolute path of
engine/server-templates/. Each script builds only the host target. Exporting
for another target requires a template built for that system and architecture.
Run these commands to inspect template compatibility:
asterune-studio templatesasterune-studio templates --serverasterune-studio doctor ../my-gameUse the built executable's path if it is not on PATH. Confirm that the target
is usable before opening Home → Export. A template contains a binary and a
descriptor; copying a binary alone does not establish compatibility.
Run component tests
Install cargo-nextest, then run the CPU suites for the component being changed:
node engine/scripts/test.mjs engine --cpunode engine/scripts/test.mjs studio --cpuOmit --cpu for renderer coverage. Read the command's failing test output and
resolve the reported failure before rerunning the affected suite.