Game SDK

↓ Скачать SDK 1.8.1

Внутренняя разработка VORIVOX. Пакет candidate: оставшиеся проверки обозначены в разделе совместимости.

Быстрый старт

Минимальная интеграция занимает около 15 минут и состоит из установки пакета, добавления компонента и подписки на события.

ConnectAsync() завершается после подтверждения server.hello. После этого можно безопасно вызывать ReadyAsync().

Добавьте SDK в сцену

Создайте пустой объект VORIVOX SDK и добавьте компонент VorivoxGameSdk.

Создайте контроллер игры

using UnityEngine;
using Vorivox.UnityGameSdk;

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

    private async void Start()
    {
        sdk.SessionStarted += OnSessionStarted;
        sdk.HitReceived += OnHit;
        sdk.SessionPaused += _ => Time.timeScale = 0f;
        sdk.SessionResumed += () => Time.timeScale = 1f;

        await sdk.ConnectAsync();
        await sdk.ReadyAsync("MainScene");
    }

    private void OnSessionStarted(VorivoxSessionStart session)
    {
        StartRound(session.PlayerCount);
    }

    private void OnHit(VorivoxHit hit)
    {
        Debug.Log($"Hit: {hit.XMm}, {hit.YMm}");
    }
}

Не запускайте раунд в Start()

Метод Start() используется только для подключения SDK и загрузки ресурсов. Таймер, враги и стрельба запускаются после SessionStarted.

Передавайте результат

await sdk.UpdateScoreAsync(
    new VorivoxScore(score, shots, hits, timeLeftMs));

await sdk.CompleteAsync(
    new VorivoxResult("completed", score, shots, hits,
        durationMs, sdk.Manifest.Session.PlayerCount));
Готово. В mock-режиме попадания можно посылать без физической мишени. Для релиза соберите Linux x86_64 сборка.
Учебные примеры — скрипты, требующие сцены и назначенных ссылок Unity. Для production обязательны guard паузы/countdown, обработка потери соединения, защита по shot_id и отписка обработчиков. Старые Samples могут требовать адаптации: полнота игровой механики не заявляется.

Playground — браузерная демонстрация общего контракта. Это не Unity Player и не проверка C#-пакета.