разработка
Canfly Games API 0.1 — игры, которые помнят
Games API
Я давно думаю о том, что цифровые произведения совершенно необязательно должны существовать независимо друг от друга.
Мы читаем книгу, знакомимся с персонажами, играем в игру — и каждый раз начинаем всё сначала. У каждой программы своя память, своя история, свои представления о пользователе.
А что, если объединить этот опыт?
В Canfly появился первый вариант Games API — небольшой интерфейс, позволяющий HTML5-играм взаимодействовать с платформой.
Пока всё довольно просто. Игра может узнать авторизованного пользователя, сохранить его очки, личный рекорд и историю событий.
Например, человек проходит второй уровень, получает 250 очков. Игра отправляет событие на сервер. Позже пользователь возвращается, и его результат по-прежнему доступен через аккаунт Canfly.
Это ещё не полноценная система облачных сохранений. Но уже основа.
Как это работает
Разработчику достаточно подключить JavaScript-библиотеку:
<script src="/games/canfly-game-api.js"></script>
Получить информацию:
const player = await CanflyGame.load();
console.log(player.user);
console.log(player.bestScore);
console.log(player.history);
Сохранить событие:
await CanflyGame.save('level_complete', {
score: 250,
details: { level: 2 }
});
Или записать контрольную точку:
await CanflyGame.save('checkpoint', {
details: { scene: 'forest' }
});
В основе два REST-метода:
GET /api/games/{slug}/progressPOST /api/games/{slug}/progress
Идентификация происходит через обычную сессию Canfly. Никаких отдельных игровых аккаунтов создавать не требуется.
Ограничения первой версии
API 0.1 хранит последние и лучшие очки, а также историю из 20 последних событий. Данные разных игр разделены.
Полное состояние игры пока сохраняется локально. Сервер не проверяет достоверность набранных очков, поэтому соревновательные рейтинги с призами были бы преждевременным решением.
Без авторизации игры продолжают работать, но серверная история недоступна.
Зачем всё это
Мне интересны не столько игровые достижения сами по себе, сколько возможность связать разные произведения общим контекстом.
Персонаж книги может появиться в игре. Событие игры — получить продолжение в другом произведении. История взаимодействия человека с Canfly может постепенно приобретать собственную последовательность.
Не обязательно строить огромный виртуальный мир. Можно начать с небольших, вполне самостоятельных историй, между которыми существуют связи.
Впрочем, это пока направление исследований, а не обещание готового продукта.
Canfly Games API 0.1 — первый технический шаг.
Посмотрим, во что это превратится.
Документация: Canfly Games — GitHub
Игры Canfly: canfly.org/games
10 ноября 2026 г.