Add platform capabilities to your Summer game
The Summer SDK is the creator-facing platform contract for a Summer game. Your GDScript owns the gameplay, worlds, rules, and presentation. The SDK documents multiplayer, player, persistence, economy, and submission interfaces. An interface being documented does not mean its hosted runtime is production-live. Use only the capabilities your game needs. Templates are examples, not requirements.Lifecycle
1. Build the game contract
Start from the minimal SummerGame lifecycle and manifest.
2. Add SDK capabilities
Select player, teams, score, persistence, economy, UI, and audio surfaces.
3. Test locally
Use Summer Engine first and validate before spending a publish request.
4. Export
Produce a game-only pack and verify its digest and contents.
5. Submit for review
Choose the API or browser path and follow the human review state.
6. Update
Keep the game identity stable, bump the version, retest, and resubmit.
What is available now
- Create a Summer game record.
- Upload a game-only
.pckdirectly to storage with server-side checksum verification. - Enter the manual human review queue.
- Download releases through the authenticated release endpoint.
What remains a contract or planned capability
- Summer SDK lifecycle, player, sync, persistence, economy, teams, score, UI, and audio interfaces are a creator contract under implementation.
- Player-facing browser and desktop-shell playback is not live.
- Hosted dedicated game servers and automatic matchmaking are not live.
- The automated production runtime sandbox is not live.
SummerMultiplayerPeeris a published compatibility contract still being built.
What You Build
Your game remains responsible for its creative and gameplay layer:- Core Gameplay: Your unique mechanics, controls, and game loops.
- Worlds & Scenes: Environments, levels, and visual rendering.
- Rules & Logic: Win/loss conditions and genre-specific systems (whether that’s 3D, 2D, RTS, card, or puzzle games).
- Presentation: UI, audio, and overall game feel.
Platform Contract
The minimum integration contract:extends SummerGame- implement lifecycle hooks (
_game_init,_game_start,_game_end,_player_joined,_player_left) - use player synced state (
set_synced/get_synced) - keep authority on server paths (
Summer.is_server()) - provide valid
manifest.jsonand export/upload flow.
Templates Are Optional
Templates are examples, not requirements.SummerCharacter3Dis the optional 3D character template path.- For 2D/RTS/card/turn-based games, extend
SummerPlayerdirectly and sync your own game model.
Capability and reference pages
Agent Setup
Point any AI coding agent at one prompt: build, export, and submit through the live API
Summer SDK Naming
Migrating from Crafty: every renamed class, autoload, manifest key, and path
Summer Singleton
Match control, player queries, spawning, server/client checks, subsystem access
SummerGame
Required base class, lifecycle hooks, and practical game structure
SummerPlayer
Minimal player contract: identity, synced vars, input, and optional 3D template path
Subsystems & Signals
Optional platform modules: teams, score, data, economy, UI, audio, and signals
Build Your First Summer Game
Golden-path tutorial from blank project to .pck submission
Multiplayer FFA Guide
Full Coin Collector-style example with timer, collectibles, and scoring
Multiplayer Persistence Guide
RPG/quest example with player saves, progression, and economy
Team-Based Game Guide
Teams, auto-balance, team spawns, and team scoring
2D Multiplayer Guide
Extend SummerPlayer for 2D state sync and server-authoritative logic
Turn-Based/Card Guide
Sync turn order, hand/board state, and validate all actions on server
manifest.json Reference
Every field, required keys, and validated examples
Production Launch Runbook
One linear path for fresh AI/dev sessions: integrate, test, export, submit
Submission Guide
Export .pck, scanner rules, upload flow, review lifecycle, and updates
Testing Your Game Locally
Summer Engine smoke checks, optional loopback testing, and the limits of local validation
Exporting and Uploading Your Game
Game-only PCK export preset, upload pipeline, and update workflow
Banned APIs Reference
Complete blocked pattern list, rationale, and safe alternatives
AI Agent Playbook
Required file contract, banned API rules, and acceptance checklist for AI-generated games
Versioning
Games declare asummer_sdk version in manifest.json. SDK changes are intended to be additive and backward-compatible.
Previous: Build your first Summer game
Return to the minimal GDScript and manifest contract.
Next: Test locally
Validate the Summer game with Summer Engine before export.

