AnimStream Game SDK · Protocol 1
Baue Spiele für Live-Communities.
Dein Spiel läuft als eigener nativer Prozess. AnimStream Studio übernimmt Anmeldung, Installation und die Verbindung zu Stream-Ereignissen. Neue freigegebene Spiele und Versionen kommen über den Katalog, ohne ein eigenes Studio-Update.
Godot · Unity · Unreal Engine
Exportiere eine native Windows-, macOS- oder Linux-Version für x64 oder arm64. Windows-Pakete starten eine EXE; Unix-Pakete eine native Binärdatei. Keine Installationsskripte, keine eingebetteten Kontotokens.
SDK herunterladen und einbauen
Unreal 5
C++-Plugin, Sitzungs-Subsystem und Beispiel für registrierte Spielaktionen.
SDK + Beispiel (ZIP)Jedes Paket enthält Quellcode, Integrationsanleitung, Protokollbeschreibung und Beispielmanifest. Registriere die im Manifest genannten Aktionen, warte auf Sitzungsbereitschaft und beachte Abbruchsignale bei längeren Aktionen. Teste den nativen Export mit deiner Engine-Version vor der Einreichung. SHA256
1. Spiel und Aktionen beschreiben
Erstelle zuerst dein Spiel im Dashboard. Trage seine unveränderliche ID in das Manifest ein. Aktionen sind deklarative Daten mit begrenzten Zahlen, Texten, Wahrheitswerten und Auswahllisten. Das geprüfte Manifest ist die Grundlage für die Flow-Einstellungen.
{
"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"
]
}Grenzen: 48 KiB Manifest, 128 Aktionen, je 16 Parameter, Texte bis 256 Zeichen. Parameter-IDs verwenden Kleinbuchstaben, Zahlen und Bindestriche. Ereignisse verwenden normalisierte Codes wie GIFT, COMMENT, FOLLOW oder LIKE.
2. Lokale Verbindung und Sitzung
Studio startet das Spiel mit ANIMSTREAM_GAME_ID, ANIMSTREAM_BUILD_ID, ANIMSTREAM_SESSION_ID, ANIMSTREAM_GAME_URL und ANIMSTREAM_GAME_TOKEN. Die Verbindung nutzt WebSocket auf 127.0.0.1 mit einem zufälligen Port. Der lokale Token gilt nur für diesen Start; er ist weder ein Konto-Token noch das geheime Cloud-Sitzungstoken.
Das Spiel sendet hello mit protocol: 1 und den Startdaten. Studio antwortet mit ready und dem geprüften Manifest. Heartbeats laufen alle 2 Sekunden. Nach 8 Sekunden ohne Verbindung werden Eingaben angehalten; nach Sitzungsende muss das Spiel schließen. Die Kontolizenz wird in einer 90-Sekunden-Sitzung geprüft, die Studio alle 30 Sekunden verlängert.
Aktionen bestätigen genau ihre Auftrags-ID. Wiederholte Aufträge dürfen nicht doppelt ausgeführt werden. dryRun muss als Simulation behandelt werden. Beende abgebrochene Aktionen bei cancel und räume die Sitzung bei stop auf.
3. Paket prüfen und veröffentlichen
- Export in ein ZIP packen: maximal 4 GiB komprimiert, 8 GiB entpackt und 50.000 Einträge. Keine Symlinks, absoluten Pfade oder ZIP64-Archive.
- Version, Plattform, Architektur, relativen Startpfad, Manifest und SHA256 im Dashboard eintragen. SHA256 lokal etwa mit Get-FileHash -Algorithm SHA256 oder sha256sum berechnen.
- ZIP hochladen. Die Prüfung läuft danach im Hintergrund weiter, auch wenn du das Dashboard schließt. Es zeigt Warteschlange, Prüfung und Ergebnis an. Der Server prüft Größe, vollständigen Hash, Archivpfade und die native Startdatei und friert das Paket ein. Vorübergehende Fehler werden automatisch wiederholt; nach einem endgültigen Fehler kannst du die Prüfung erneut starten.
- Zur Prüfung einreichen. Erst eine Administrator-Freigabe veröffentlicht die Metadaten, Aktionen und ausgewählten Pakete.
Unreal unter Windows: Als Startpfad die tatsächliche Spiel-EXE unter Binaries/Win64 wählen, nicht die Bootstrap-EXE, die einen weiteren Prozess startet. macOS: Die native Datei unter .app/Contents/MacOS wählen.
FAQ
Kann mein Spiel neue Aktionen ohne Studio-Update bekommen?
Ja. Eine neue geprüfte Version liefert ihr deklaratives Manifest mit. Studio zeigt die freigegebenen Parameter im Flow Builder an; die Spiellogik liegt im nativen Spiel.
Was passiert bei Verbindungsverlust oder minimiertem Studio?
Die Sitzung hängt am Hintergrundprozess von Studio. Bei 8 Sekunden ohne Heartbeat oder abgelaufener Lizenzsitzung beenden die Standardclients das Spiel. Bereits bestätigte Aktionen werden nicht automatisch erneut abgespielt.
Kann ich eigene Downloads oder einen eigenen Checkout verlinken?
Verlinke deine kanonische Produktseite im Originals-Katalog. Käufe und Lizenzen gehören zum AnimStream-Konto; Pakete werden nach der Lizenzprüfung über kurzlebige private URLs ausgeliefert. Das Entwickler-Dashboard bietet die unterstützte Einreichung.
Konten, Käufe und Vertrauen
Spieler verwenden ihr bestehendes AnimStream-Konto. Download-URLs sind kurzlebig und erfordern eine aktive Lizenz. Volle Rückerstattungen und Zahlungsstreitfälle sperren den Zugriff; externe Entwickler können zunächst kostenlose Spiele veröffentlichen. Die Plattform behauptet keinen unknackbaren Kopierschutz: Metadaten kommen über HTTPS aus dem geprüften Katalog, und SHA256 schützt die Paketintegrität.
Eine eigene Spielwebsite kann auf die kanonische Produktseite /games/originals/dein-slug verlinken. Teile dort keine Studio-Zugangsdaten und keine privaten Paket-URLs.