Game SDK

↓ Download SDK 1.8.1

Internal VORIVOX development. Candidate package: remaining gates are listed under compatibility.

Unity Game SDK

Start here. Keep VORIVOX integration in one obvious place: the Boot scene and an SDK adapter. Gameplay, UI and rendering should not talk to Launcher directly.

Main rule: Start() connects the SDK and loads resources. Gameplay starts only after SessionStarted.

Recommended project layout

Assets/Game/
├── Bootstrap/VorivoxBootstrap.cs
├── Runtime/
│   ├── Integration/VorivoxSessionAdapter.cs
│   ├── Gameplay/
│   └── Presentation/
├── Localization/                    # 12 required languages
│   ├── ru/ en/ zh-Hans/ es/ ar/ hi/
│   └── pt/ fr/ de/ ja/ kk/ uz/
├── Scenes/Boot.unity
├── Scenes/Game.unity
└── Tests/EditMode + Tests/PlayMode

Where SDK code goes

Create a VORIVOX SDK object in Boot.unity, add VorivoxGameSdk, and place VorivoxBootstrap.cs beside it. Assign references in the Inspector. The rest of the game should depend on your adapter, not directly on the SDK.

using UnityEngine;
using Vorivox.UnityGameSdk;

public sealed class VorivoxBootstrap : MonoBehaviour
{
    [SerializeField] private VorivoxGameSdk sdk;
    [SerializeField] private GameController game;

    private async void Start()
    {
        sdk.SessionStarted += s => game.StartSession(s.PlayerCount);
        sdk.SessionPaused += _ => game.Pause();
        sdk.SessionResumed += () => game.Resume();
        sdk.SessionStopped += _ => game.Stop();
        sdk.HitReceived += hit => game.OnHit(hit);
        await sdk.ConnectAsync();
        await game.LoadAssetsAsync();
        await sdk.ReadyAsync("Game");
    }
}

Game developer checklist

Load assets before ready; start mechanics only on SessionStarted; do not score while paused; complete once; support all 12 languages; for two players choose alternating turns or a left/right split target; validate the Linux x86_64 Player outside the Editor.

Read next

Quickstart → First game → Hits → One and two players → Localization → Build → Testing.

Playground demonstrates the shared contract in a browser. It is not a Unity Player or a C# package test.