KROYSDOCS
HomeWhat's newv0.1.0
MANUAL / Ship your game / Packaging

Packaging

Build & Export compiles the game's scripts, cooks its content, gathers the player and its runtimes, audits the result and writes a folder and a ZIP you can hand to players.

PanelBuild & Export
ToolKroysGamePackager
OutputFolder, ZIP, report
01

From the editor

Open File › Build & Export.... Save the project and scene first, choose the configuration and the output folder, then Build Gameplay & Export: it compiles the scripts, cooks the content and builds the package. Export Prebuilt packages existing script builds instead. Both save the export profile first; Save Profile saves it alone. Cancel Export stops at the next safe point; Open Output and Run Export appear when a job succeeds.

02

From a script or build machine

--build-scripts publishes the scripts with the pinned .NET SDK; without it the packager uses the existing script build. An export error names any missing prerequisite.

PowerShell
build\bin\Release\KroysGamePackager.exe `
  --project "C:\Games\MyGame\MyGame.kproject" `
  --output "C:\Games\MyGame\Build\Windows" `
  --profile Development --platform windows-x64 --configuration Release --build-scripts
03

What ships

  • Content: what the startup scene reaches, cooked (Cooking), plus the project settings and the input map. Source-only files (C# sources, project files, editor state) are removed.
  • Gameplay: the built script assembly and every library it references, without symbols.
  • Binaries: the player and the DLLs it needs, engine shaders as SPIR-V, the managed engine runtime and the pinned .NET runtime. Players do not install .NET.
  • Plugins: the runtime part of every enabled plugin; editor parts never ship.

A compatible Vulkan driver is the only requirement on the player's machine.

04

The audit

Before anything is written, the package is audited: every file must belong in the layout, no source-only file or .pdb may be in it, and no file may contain a path from the developer's machine (the repository, project, build folder, SDK or user profile, in any spelling). Any finding fails the export.

05

The outputs

  • The package folder with PackageManifest.json (versions, every file with size and hash).
  • <Folder>.zip, with fixed time stamps: unchanged input gives a byte-identical ZIP.
  • <Folder>.report.json: sizes per category, the largest files, unreachable assets skipped, sources removed and warnings.
  • With --symbols, <Folder>.symbols.zip for debugging crash reports.

The export uses the project's settings, such as Project Settings › Invert Mouse Look. Changing the shipped .kproject changes them without a new export.

KroysEngine 0.1.0 documentation, built from the engine repository by Tools/BuildDocsSite.py.