Розробникам ігор

Як розмістити свою гру в MRIYU: кабінет розробника, SDK, збереження, рекорди та мультиплеєр онлайн.

Будь-хто може додати свою браузерну гру в розділ «Ігри». Гравці запускають її прямо в MRIYU, запрошують друзів, а гра отримує їхні імена, збереження, таблицю рекордів і кімнати для гри онлайн.

Як розмістити гру

  1. Зробіть гру на своєму сайті — сторінка має відкриватися по https.
  2. Підключіть на сторінці гри SDK: <script src="https://mriyu.com/sdk/v1.js"></script>.
  3. Відкрийте «Ігри» → «Розмістити гру» (або сторінку /developers) і натисніть «Нова гра».
  4. Вкажіть назву, адресу гри, жанр і короткий опис, додайте значок (квадрат від 256×256), за бажанням — обкладинку 16:9 і до 6 скриншотів.
  5. Перевірте гру кнопкою «Відкрити» — вам вона доступна ще до публікації.
  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+.
  • За порушення гру відхиляють або блокують.