Stake Engine launch/runtime contract
Идея
Для production-слота запуск через URL — это фактически ABI между platform shell и вашей игрой. Критичные параметры должны читаться из query, а не из hardcode.
Обязательные параметры запуска
sessionID— токен сессии игрока.rgs_url— endpoint RGS; всегда берем из URL.lang— язык интерфейса.currency— валюта отображения.device— тип устройства (desktop/mobile) для layout-адаптации.social— social-casino контекст.
Дополнительно:
demo=true|false— free-play контур.replay=true|false— read-only replay режим.
Runtime ветвления
1) Normal play
- На старте:
authenticate. - Дальше: стандартный цикл
play/event/end-round(см. stake-engine-wallet-api-flow).
2) Replay mode (replay=true)
- Не выполняем session-based wallet calls.
- Загружаем outcome через replay endpoint (
game/version/mode/event). - Отключаем bet-controls, показываем только playback UX.
- Храним “Play Again” сценарий без перехода в normal betting flow.
3) Social mode (social=true)
- Применяем отдельный словарь replacement для терминов gambling domain.
- Контролируем тексты в UI/rules/assets (не только кнопки).
- Рассматриваем social-режим как отдельный локализационный профиль.
Практический reference для разработки
При реализации клиентской части полезно сверяться с StakeEngine/web-sdk как с рабочим референсом структуры и UX-потоков интеграции:
https://github.com/StakeEngine/web-sdk/tree/main- особенно полезно для проверки
replay, URL-параметров запуска и базового поведения UI-обвязки вокруг RGS-контракта.
Денежные единицы и формат
- Балансы/ставки приходят как integer с точностью
10^-6. - Валюта влияет только на display-formatting слоя.
- Форматирование должно учитывать currency-specific decimals/symbol placement.
Практика: отдельный formatter-модуль без влияния на игровую математику.
Device and viewport targets
Документация задает стандартные viewport размеры для desktop/mobile/popout. Это полезно как baseline для QA-matrix: отдельно проверяем desktop, mobile, mini-player/popout.
Production-checklist для frontend команды
- Ничего не хардкодим по
rgs_url/session context. - Явно разделены
normalиreplayruntime flows. - UI корректно отрабатывает на всех
device-профилях. - Денежный display работает через central formatter.
- Social-mode тексты проверены отдельным QA набором.