Some GPU drivers cause tiles to appear "chipped" or have pixel gaps at tile edges.
Workaround: Launch TileSetter with GPU acceleration disabled:
"C:\Program Files (x86)\Steam\steamapps\common\Tilesetter\Tilesetter.exe" --disable-gpu --disable-gpu-sandbox
| Issue | Solution |
|---|---|
| Files being processed unexpectedly | Add a .skip file to the directory to exclude it from Phaser Editor 2D processing |
| Unexpected editor behaviour | Open DevTools with Ctrl+Shift+I to investigate console errors |
| Missing texture or prefab ID | Run pnpm phaser-editor:check, repair the reported local reference, then reload the project with Ctrl+Alt+R |
Errors such as Unable to decode audio data and File failed: audiosprite usually mean Git LFS pointer
files were checked out instead of the real audio assets.
Install Git LFS for your operating system, then hydrate the checkout:
pnpm assets:hydrate
pnpm assets:checkDependency installation warns about missing assets, while portal and desktop build/serve targets fail early with the same repair command.
This repo enforces pnpm via an engines field and a preinstall hook. Running npm install or yarn will fail.
# Install pnpm globally if you haven't already
npm install -g pnpm
# Then install dependencies
pnpm installIf you get TypeScript errors related to database types, regenerate them:
pnpm generate-supabase-typesIf local sign-in returns Unsupported provider: provider is not enabled, make sure the root .env exists and contains:
SUPABASE_AUTH_EXTERNAL_GOOGLE_CLIENT_ID=...
SUPABASE_AUTH_EXTERNAL_GOOGLE_SECRET=...Then restart the local stack so supabase/config.toml is reloaded:
supabase stop
supabase startThe Google OAuth client must allow this redirect URI:
http://127.0.0.1:54321/auth/v1/callback
Ensure the API is running and the proxy is configured. The dev proxy config is at apps/portal/proxy.conf.json and forwards /api/* to http://localhost:3333.
For local Supabase OAuth, copy the root .env.example to .env; it contains only the Google OAuth values consumed by supabase/config.toml:
SUPABASE_AUTH_EXTERNAL_GOOGLE_CLIENT_IDSUPABASE_AUTH_EXTERNAL_GOOGLE_SECRET
For local API development, copy apps/api/.env.example to apps/api/.env.local and fill in:
CORS_ORIGINSUPABASE_URLSUPABASE_SERVICE_KEY
The API will fail to start or fail Supabase requests without SUPABASE_URL and SUPABASE_SERVICE_KEY; CORS_ORIGIN is required for browser and WebSocket access.