This guide covers a folder-based publish workflow for the exported build:
- macOS export
- macOS testing
- packaged player builds
- folder-based distribution
Step 1: Choose the Right Build Profile
Open:
Project -> Build Settings...
Then choose one of these profiles:
DevelopmentRelease
Use Development when you want a tester or teammate to have a build with
debug-mode support still enabled.
Use Release when you want the staged build to behave like a shipping build.
Step 2: Fill in the Shipping Metadata
Before exporting, make sure these fields are correct:
Product NameVersionIdentifierWindow WidthandWindow HeightMinimum macOSStartup SceneIcon Pathif your project has one
These fields are written into ProjectSettings/lenga.json and carried into the
export manifest, including the shipped player-mode permissions contract.
Step 3: Export the Current Platform
Use either:
Project -> Export Current Platform...
or the button inside Build Settings.
Lenga will stage a packaged player build for the platform you are developing on.
Step 4: Smoke Test the Export Locally
Before you hand the build to anyone else, run the exported build on your own machine.
Check:
- it launches
- it opens the expected startup scene
- it can load authored assets
- UI text and audio behave correctly
- saves, logs, and temp files land under
Game/Saved/ Preferencessettings use Lenga's engine-managed per-user preferences location- the exported
build-manifest.jsonmatches the intended sandbox contract for the build
Step 5: Move It to a Second Machine
For the first real publish check, move the entire exported folder to another macOS machine.
Do not cherry-pick files out of the export.
Move the whole folder as a unit, including:
- the
.applaunch artifact build-manifest.json- any supporting packaged files the export folder contains
Step 6: Test the Same Basics Again
On the second machine, verify:
- the game launches
- the startup scene is correct
- keyboard and mouse input work
- controller input works if the project uses it
- save files appear under
Game/Saved/ Preferencessettings still load and save through the engine-managed preferences location- the game does not rely on blocked PHP capabilities at runtime
- if a sandbox violation is hit intentionally, the failure is understandable from console output and
Game/Saved/Logs/php-runtime.log
Step 7: Archive the Export Folder
The recommended distribution shape is a compressed copy of the full export folder.
Examples:
- zip the export folder on macOS
Do not flatten the contents. Keep the export root intact.
Sample Release Checklist
Use this checklist before calling a build ready:
- Build profile is set to
Release - product name, version, and identifier are correct
- startup scene is correct
- export succeeds without sandbox-blocked PHP API errors
- exported
build-manifest.jsonrecords the expected player-mode permissions - exported build launches locally
- exported build launches on a second same-platform machine
- save files are written only under
Game/Saved/ Preferencessettings write through the engine-managed preferences location- controller input is tested if the project supports controllers
- the folder is archived without changing its internal layout
Platform Notes
macOS
macOS builds are distributed as zipped folder exports.
The default workflow uses:
- the exported
.appbundle as the launch artifact build-manifest.jsonat the export root- the packaged project inside the app bundle
This guide does not cover signing or notarization.
Windows and Linux
This guide does not cover Windows or Linux publishing.