Jono в Steam объединяет игроков мира управлением одним персонажем

В Steam вышла бесплатная игра Jono — необычный платформер, в котором для всех участников существует только один общий персонаж. Одновременно управлять героем может лишь один игрок в мире, а его ход длится не более 60 секунд.
После завершения отведённого времени управление автоматически переходит следующему участнику глобальной очереди. Новый игрок продолжает прохождение с того места, где остановился предыдущий. Остальные наблюдают за происходящим в реальном времени, обсуждают происходящее в чате и могут подсказывать тому, кто сейчас управляет персонажем.
Общий прогресс и последствия ошибок
Цель сообщества — пройти миллион уровней. Прогресс сохраняется для всех игроков, поэтому смерть не возвращает участников к началу игры: повторить нужно только текущую комнату.
Каждая гибель оставляет на месте надгробие. Оно становится предупреждением для следующих участников и показывает, что на данном участке уже кто-то потерпел неудачу. Таким образом, ошибки предыдущих игроков постепенно формируют подсказки для всей очереди.
Если в очереди находится больше пяти человек, игроку дополнительно выделяют пять жизней. Потратив их, он передаёт управление следующему участнику даже в том случае, если его 60-секундный ход ещё не закончился. После прохождения очередной комнаты запас жизней восстанавливается.
Как Jono синхронизирует игроков
Игра создана на движке Godot. Для наблюдения за происходящим Jono не использует классическую схему облачного игрового сервиса, при которой пользователям передаётся готовый видеопоток. Вместо этого игра воспроизводит управляющие команды на компьютерах зрителей.
Например, клиентам достаточно получить информацию о том, что игрок в течение полсекунды удерживал стрелку вправо, а затем нажал кнопку прыжка. Каждый компьютер самостоятельно рассчитывает движение персонажа и его столкновения с препятствиями.
Такой подход возможен благодаря детерминированной физике: если исходное состояние игры и последовательность команд совпадают, результат расчёта также будет одинаковым. По словам разработчика, именно этот принцип используется для просмотра игрового процесса внутри клиента. Для браузерного просмотра предусмотрена обычная видеотрансляция.


