Submission Checklist
Before uploading:- Creator gameplay scripts authored in
GDScript - Valid
manifest.json - One exportable
.pckpackage +manifest.json .pckpackage size at or under 2 GB- No banned API usage in GDScript
1) Export .pck from Godot / Summer Engine
Use standard export flow:
- Open your game project.
- Go to Project -> Export.
- Choose/create export preset for your build target.
- Export and generate a
.pck. - Confirm your game includes
manifest.json.
2) Static Analysis Scanner Rules (Blocking)
During submission, the platform scans:- GDScript files (
.gd) - embedded scripts in
.tscnand.tres - reserved infrastructure paths
- blocked native/binary resource extensions
error: "Static analysis failed"violations: file, line, and blocked pattern
Important For AI Code Generation
Do not generate “fallback” code paths that use blocked APIs, even if wrapped in conditions. Example of still invalid output:3) Upload on playcrafty.games
V1 submission requires two files:.pckas multipart fieldpckmanifest.jsonas multipart fieldmanifest(file or JSON text)
POST https://crafty-production-5a7c.up.railway.app/games/submitAuthorization: Bearer <supabase_access_token>
Example Request (cURL)
4) What Happens During Review
On success, API returns:ok: truegameIdsubmissionIdstatus: "review"scanmetadata
review-> waiting for manual/admin reviewpublished-> approved and liverejected-> rejected with reason
5) Updating an Existing Game
To update:- Keep
manifest.idthe same. - Increase
manifest.version. - Upload new
.pck+manifest.
- updates the game metadata for same creator + slug
- stores a new version row
- sets status back to
reviewfor that update
Related Docs
Common Upload Errors
Missing .pck file (multipart field: pck)Uploaded file must be a .pckInvalid manifest. Required: id, name, version, crafty_sdk, entry_scene, min_players, max_playersStatic analysis failed(with violations list)

