Use the supported engine and library registry
Pin dependencies and adapt engine features to the sandbox.
Resolve from the registry
The manifest’s libraries map names exact vetted versions. Game imports resolve from this registry, not arbitrary packages in a creator’s package file.
- Open Project settings > SDK version and choose an available engine and version.
- Open Libraries to find compatible add-ons.
- Choose Add for each dependency and check its exact version in
llvls.json. - Import by the supported package name.
- Keep TypeScript declarations appropriate to the pinned API.
- Choose Run and read Problems and Build output.
- Test lifecycle, audio and input through the host.
Canvas needs no engine dependency. Phaser, LittleJS and KAPLAY have distinct engine/library mappings; use the choices currently offered in Project settings and Libraries rather than copying a version from an old blog.
An engine name recognised by the manifest may still be unavailable. Check the choices offered in Project settings and any message from Run before choosing it.
Engine-specific work
Phaser games must pause the relevant scene/physics and audio systems. LittleJS games must avoid optional platform integrations, storage helpers and external plugins that violate the sandbox. KAPLAY games should use kaplay({ global: false, debug: false }) and avoid its browser storage and download helpers.
After changing an engine, test its pause, audio and input behaviour in Preview. Allowing an engine does not allow every optional feature it contains.
Type declarations
The Studio may not provide declarations for every engine API. Keep a narrow project declaration for the API you actually use instead of disabling strict checks across the game.
Library code is vetted, but your project code is still scanned. A copied dependency in a local file is not permission to bypass registry checks.