Быстрый старт
Первое подключение без контроллера: явно создаём mock, подписываемся до connect и отдельно запускаем сеанс.
Порядок
Сначала зарегистрируйте обработчики. connect() завершается после принятого server.hello, а не просто после открытия сокета. Затем загрузите критичные изображения, звук и сцену. Только после этого вызывайте ready(). Стартом игрового времени управляет событие session.start, а не завершение ready.
Проверка
Скопируйте фрагмент в ES-модуль рядом с каталогом src. Он выводит нормализованное попадание в консоль и явно имитирует начало сеанса. Для полностью запускаемого интерфейса используйте examples/canvas-demo. Объект controls существует только в mock-адаптере и не является API управления настоящим Launcher.
Следующий шаг
Замените вывод координат начислением очков, добавьте guard паузы и завершение один раз. Для реального подключения создавайте VorivoxClient с доверенным manifest; не заменяйте loopback URL произвольным адресом Cloud.
Пример кода
Фрагмент интеграции: переменные игрового проекта задаются приложением. Полный запускаемый пример — в Playground.
import {createMockSdk} from './src/mock.js';
const {sdk, controls} = createMockSdk();
sdk.on('target.hit', hit => {
if (sdk.sessionState !== 'running') return;
console.log(hit.nx, hit.ny); // no manifest or session token
});
await sdk.connect();
// Load required assets here; do not report readiness early.
await sdk.ready('FirstGame');
controls.start();
controls.hit(0.5, 0.5);
// Call sdk.disconnect() when this development example is disposed.