Твоя гра
Як додати таблицю рекордів до гри HTML5
Додай скрипт SDK klyo до index.html, виклич klyo.ready(), коли гра готова, klyo.progress() під час партії і klyo.score() наприкінці. Задай у студії найвищий можливий результат, і гра отримає таблиці дня, тижня й усіх часів.
Перш ніж почати
- Гра, опублікована на klyo games або готова до завантаження.
- Доступ до файлу index.html гри. З твого боку не потрібні ні сервер, ні база даних, ні акаунти.
- Або ШІ-асистент, підключений через MCP: скажи йому додати до гри таблицю рекордів klyo.
Крок за кроком
Додай SDK
Встав цей рядок у index.html перед власним скриптом:
<script src="https://games.klyo.pl/sdk/klyo-gry-sdk.js"></script>. Якщо відкрити гру поза klyo, вона й далі працює, а результати просто лишаються в браузері.Повідом сторінці, що гра готова
Виклич
klyo.ready(), коли гра завантажилася й у неї можна грати. Тоді сторінка ховає заставку завантаження.Надсилай прогрес під час партії
Викликай
klyo.progress(points)щоразу, коли змінюється рахунок. SDK надсилає щонайбільше чотири оновлення на секунду, а сторінка показує гравцеві під грою мету, наприклад 14-те місце і скільки очок бракує, щоб обійти наступного гравця.Надішли фінальний результат
Наприкінці партії виклич
klyo.score(points, callback). Відповідь містить місце за день, тиждень і всі часи, а також гравця просто над тобою, готові для фінального екрана. Зараховується один найкращий результат з пристрою на день.Задай ліміт результату
У студії, коли описуєш гру, заповни поле «Найвищий можливий результат за одну партію». Результати понад нього відхиляються одразу, а плитка гри в центрі рекордів отримує позначку ліміту. Без ліміту результат, у десять разів вищий за наступний, чекає на перевірку.
Покажи таблицю в самій грі (необов'язково)
klyo.leaderboard.get("day", callback)повертає 20 найкращих результатів за день, тиждень або всі часи, з тими самими іменами гравців, що й у спільноті.
Якщо щось не працює
Результати не з'являються
Результат зараховується лише після партії тривалістю щонайменше 3 секунди і лише тоді, коли гра працює на klyo. Перевір, що SDK завантажується перед твоїм скриптом і що ти викликаєш klyo.ready().
Результат відхилено
Він вищий за встановлений ліміт або надійшов надто швидко після попереднього результату з того самого пристрою.
Гравці питають, де таблиця
Вона сама з'являється на сторінці гри і в центрі рекордів. У самій грі ти показуєш її, лише якщо викличеш klyo.leaderboard.get.
Часті запитання
Чи потрібен гравцеві акаунт для таблиці рекордів?
Ні. Результат належить пристрою; з акаунтом у таблиці стоїть ім'я гравця, а результат переходить за ним на інші його пристрої.
Чи можна обдурити таблицю рекордів через консоль браузера?
Ні. Результат приймається лише з токеном, який сервер підписує на старті партії, після щонайменше 3 секунд гри і нижче за твій ліміт, тож вписати число в консолі не вийде.