AnimStream Game SDK · Protocol 1
Build games for live communities.
Your game runs as its own native process. AnimStream Studio manages sign-in, installation and live-event connectivity. Approved games and releases arrive through the catalog without requiring a Studio update for each game.
Godot · Unity · Unreal Engine
Export a native Windows, macOS or Linux build for x64 or arm64. Windows packages launch an EXE; Unix packages launch a native binary. No installation scripts and no embedded account tokens.
Download and integrate the SDK
Each package includes source, integration instructions, protocol documentation and an example manifest. Register the manifest's actions, wait for session readiness and honor cancellation during longer actions. Test a native export with your engine version before submitting. SHA256
1. Describe your game and actions
Create your game in the dashboard first. Put its stable ID in the manifest. Actions are declarative data with bounded numbers, strings, booleans and enum choices. The reviewed manifest supplies the Flow settings.
{
"schemaVersion": 1,
"gameId": "your-game-id",
"title": {
"de": "Mein Spiel",
"en": "My game"
},
"actions": [
{
"id": "spawn",
"label": {
"de": "Objekt erzeugen",
"en": "Spawn object"
},
"parameters": [
{
"key": "count",
"label": {
"de": "Anzahl",
"en": "Count"
},
"type": "integer",
"min": 1,
"max": 100,
"default": 1
}
]
}
],
"events": [
"GIFT",
"COMMENT"
]
}Limits: 48 KiB manifest, 128 actions, 16 parameters per action, strings up to 256 characters. Parameter IDs use lowercase letters, digits and hyphens. Events use normalized codes such as GIFT, COMMENT, FOLLOW and LIKE.
2. Local connection and session
Studio launches the game with ANIMSTREAM_GAME_ID, ANIMSTREAM_BUILD_ID, ANIMSTREAM_SESSION_ID, ANIMSTREAM_GAME_URL and ANIMSTREAM_GAME_TOKEN. The WebSocket connection uses 127.0.0.1 on a random port. The local token is specific to this launch; it is neither an account token nor the secret cloud lease token.
The game sends hello with protocol: 1 and its launch identity. Studio replies with ready and the reviewed manifest. Heartbeats run every 2 seconds. After 8 seconds without connectivity, input stops; on session termination the game must exit. The account license is checked through a 90-second lease renewed by Studio every 30 seconds.
Acknowledge actions using their exact request ID. Repeated requests must not execute twice. Treat dryRun as a simulation. Cancel pending work on cancel and clean up the session on stop.
3. Verify and publish a package
- Package your export as a ZIP: up to 4 GiB compressed, 8 GiB expanded and 50,000 entries. No symlinks, absolute paths or ZIP64 archives.
- Enter the version, platform, architecture, relative entrypoint, manifest and SHA256 in the dashboard. Calculate SHA256 locally with Get-FileHash -Algorithm SHA256 or sha256sum.
- Upload the ZIP. Verification continues in the background even if you close the dashboard, which shows queued, verifying and final states. The server checks its size, full hash, archive paths and native entrypoint, then freezes the package. Temporary failures retry automatically; after a final failure you can retry verification.
- Submit for review. An administrator must approve the metadata, actions and selected packages before publication.
Unreal on Windows: choose the actual game executable under Binaries/Win64, not the bootstrap EXE that launches another process. macOS: choose the native binary under .app/Contents/MacOS.
FAQ
Can my game add actions without a Studio update?
Yes. Each reviewed release supplies its declarative manifest. Studio displays approved parameters in the Flow Builder; gameplay logic runs inside the native game.
What happens when connectivity is lost or Studio is minimized?
The session belongs to Studio's background process. After 8 seconds without a heartbeat or an expired license lease, default clients exit the game. Acknowledged actions are never automatically replayed.
Can I link my own downloads or checkout?
Link your canonical Originals product page. Purchases and licenses belong to the AnimStream account; packages are delivered through short-lived private URLs after a license check. Use the developer dashboard to submit supported packages.
Accounts, purchases and trust
Players use their existing AnimStream account. Download URLs are short-lived and require an active license. Full refunds and payment disputes revoke access; external developers can initially publish free games. The platform does not claim unbreakable DRM: reviewed catalog metadata arrives over HTTPS and SHA256 verifies package integrity.
A standalone game website can link to its canonical /games/originals/your-slug product page. Never share Studio credentials or private package URLs there.