Обновить

Как мы делаем онлайн-режим для браузерной инди-игры, когда бюджет на сервера — $10 в месяц

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели8.6K
Всего голосов 5: ↑5 и ↓0+6
Комментарии4

Комментарии 4

по идее вы можете паразитировать на базе существующих TUN-серверов. Даже если это чисто ваш - один хрен сервер становится маршрутизатором и все, клиенты общаются меж собой, группировка по uid сида, по которому же и генерируется мир. То есть в теории можно даже на опенсорс отдать что бы люди сами к своим серверам привязывали если захотят поиграть без читеров и тд.

Самое проблемное в онлайне это отсутствие доверия к клиенту. Если у вас этот вопрос "опускается" то сделайте открытый протокол, опубликуйте простую и надёжную как двери серверную релейку для связи меж игроками и будет вам счастье. И вам ваш сервер не будет жрать ресурсы и клиенты смогут хоть с телефона поднять и по локальной сети выживать в гигахруще.

Не хватает скринов в теле поста, больше нарративности, колега.

Круто. "Инженерный" подход.

Пара замечаний:

Если хотите свернёт боуз - у всех игроков может залипнуть игра. Это связано с системой энергосбережения.

Если у игрока-хоста нестабильный интернет (например, 4G в поезде), сессия будет постоянно инициировать процедуру Host Handoff. При передаче чекпоинта новому хосту критически важно передать не просто состояние комнат, а точное процессуальное время (tick rate) и состояние генератора случайных чисел (PRNG state).

Асимметрия пинга: Игрок, ставший хостом, получает нулевой пинг до симуляции (у него всё идеально плавно), в то время как остальные игроки зависят от цепочки Клиент -> Cloudflare DO -> Хост -> Cloudflare DO -> Клиент. Это может вызывать ощущение несправедливости в кооперативе (хост всегда реагирует быстрее).

Данные замечания оказались в тему? Обсудим?

Из забавного. На официальных соревах от Riot Games по League of Legends - умышленно добавляется пинг для всех игроков. Ибо по локальной сети - он близок к 1-2мс, но игроки привыкли играть на ~50-70. И в первые тесты - спортсмены очень сильно лажали из-за того, что играли с таким низким пингом.
Кажется на хабре даже был перевод статьи из их блога, о том, как они это реализовали у себя.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации