Разработчикам игр
Как разместить свою игру в MRIYU: кабинет разработчика, SDK, сохранения, рекорды и мультиплеер онлайн.
Любой может добавить свою браузерную игру в раздел «Игры». Игроки запускают её прямо в MRIYU, приглашают друзей, а игра получает их имена, сохранения, таблицу рекордов и комнаты для игры онлайн.
Как разместить игру
- Сделайте игру на своём сайте — страница должна открываться по https.
- Подключите на странице игры SDK:
<script src="https://mriyu.com/sdk/v1.js"></script>. - Откройте «Игры» → «Разместить игру» (или страницу
/developers) и нажмите «Новая игра». - Укажите название, адрес игры, жанр и короткое описание, добавьте значок (квадрат от 256×256), по желанию — обложку 16:9 и до 6 скриншотов.
- Проверьте игру кнопкой «Открыть» — вам она доступна ещё до публикации.
- Нажмите «Отправить на проверку». После одобрения модератором игра появится в разделе «Игры» в блоке «От разработчиков».
Не знаете, что вставить в игру? Откройте игру в кабинете → вкладка «Подключение» (кнопка «Как подключить»). Там готовый код именно под вашу игру с кнопкой «Скопировать» или файлом-шаблоном, галочка «SDK подключён», когда игра связалась с MRIYU, и готовые примеры для сохранений, рекордов, друзей и мультиплеера. Токен и секрет нужны только тем, у кого есть свой сервер.
| Состояние | Что значит |
|---|---|
| Черновик | Игру видите только вы. |
| На проверке | Модератор проверяет игру. |
| Опубликована | Игра в каталоге для всех. |
| Отклонена | Прочитайте «Комментарий модератора», исправьте и отправьте снова. |
| Заблокирована | Игра снята из каталога, редактировать её нельзя. |
Сменили адрес опубликованной игры — она снова уйдёт на проверку.
В кабинете видна статистика: «Игроков», «Новых за 30 дней», «Играли за 30 дней» и «Запусков».
SDK: что умеет игра
Все методы возвращают Promise. Сначала вызовите MRIYU.init() — он вернёт игрока (user.id, user.name, user.avatar, user.lang).
| Метод | Что делает |
|---|---|
MRIYU.init() |
Знакомство с сайтом: игра, игрок, комната из приглашения (launch.room). |
MRIYU.getFriends() |
Друзья игрока; plays — запускали ли уже игру. |
MRIYU.invite(id, {room, text}) |
Приглашение другу в личные сообщения со ссылкой на игру. |
MRIYU.storage.get(key) / set(key, value) / remove(key) / keys() |
Сохранения в облаке: до 50 ключей на игрока, до 64 КБ каждый. |
MRIYU.leaderboard.submit(score, {board}) |
Результат игрока; хранится лучший. |
MRIYU.leaderboard.top({board, limit, friends}) |
Таблица рекордов, до 100 строк; friends: true — только друзья. |
MRIYU.getLaunchToken() |
Токен для проверки игрока на сервере игры. |
MRIYU.multiplayer.connect() |
Подключение к комнатам для игры онлайн. |
Настоящий номер страницы игра не получает: у каждого игрока в каждой игре свой идентификатор из 16 символов.
Мультиплеер онлайн
Включите в настройках игры «Мультиплеер онлайн» и укажите, сколько игроков в комнате (2–16). Свой сервер не нужен — комнаты держит MRIYU.
| Что | Как |
|---|---|
| Подключиться | const mp = await MRIYU.multiplayer.connect() |
| Найти соперника | mp.quick() — свободная комната или новая |
| Своя комната | mp.create({max: 4}), код комнаты — mp.room.code |
| Войти по коду | mp.join('ABC234') |
| Отправить ход | mp.send(data) — всем или {to: id} одному |
| Общее состояние | mp.setState(data) — только хозяин комнаты |
| Начать игру | mp.start() — комната пропадает из поиска |
| События | mp.on('joined' / 'left' / 'message' / 'state' / 'started', …) |
Ушёл хозяин — хозяином становится следующий игрок. Пример целой игры — крестики-нолики онлайн.
Если у игры есть свой сервер
Получите в игре MRIYU.getLaunchToken() и передайте токен на свой сервер. Проверьте подпись HMAC-SHA256 секретом игры (кабинет → «Настройки» → «Показать секрет») или отправьте POST https://mriyu.com/api/games/verify с полями token и secret. Ответ: valid и игрок (id, name). Токен действует час.
Секрет никому не показывайте. Если он попал в чужие руки — нажмите «Новый секрет».
Правила
- Игра открывается во встроенном окне и не может изменить страницу MRIYU.
- Запрещены мошенничество, сбор паролей и данных, реклама запрещённых товаров, контент 18+.
- За нарушения игру отклоняют или блокируют.