декабрь 30, 2020

Neon Things

Добавить в
Мои игры
Торрент
Скачать

Уничтожьте врага и захватите все плитки! Однако будьте осторожны, так как недавно появившиеся враги испустят ударную волну, которая убедит всех ближайших юнитов в ее причине!

Чтобы передвигаться, наведите курсор на любое место внутри окна и нажмите левую кнопку мыши, чтобы выстрелить.

Эту небольшую игру я сделал за 5 дней с Godot. Главной целью было как можно быстрее сделать сетевую игру. Я решил остановиться на «королевской битве» в браузере, потому что это дало мне 3 проблемы:

<ул>
  • Мне пришлось оптимизировать для веб-браузера, который, как правило, намного медленнее, чем нативные игры.
  • Мне пришлось оптимизировать пропускную способность
  • Мне нужно было сделать игру плавной, несмотря на низкую частоту тиков (сервер обновляется всего 10 раз в секунду!)
  • Сделать так, чтобы игра выглядела плавно, оказалось даже сложнее, чем я предполагал: я думал, что будет достаточно простой интерполяции между каждым состоянием, но все еще есть заикание, которое мне не удалось исправить. Я по-прежнему доволен конечным результатом, так как дал себе совсем немного времени на завершение этого проекта.

    Изначально я собирался использовать WebRTC, чтобы иметь возможность использовать UDP, но отказался от использования WebSockets (TCP), поскольку это значительно упростило синхронизацию состояния игры. Серверу нужно только отправлять состояние плиток в начале каждого соединения. После этого ему нужно только отправить состояние каждого блока. Это означает, что игра страдает от блокировки заголовка строки, что может увеличить задержку и, следовательно, вызвать заикание.

    Я намеревалсяиметь тикрейт 60 обновлений в секунду, но сервер не мог поддерживать ~ 100 единиц, поэтому я продолжал снижать его, пока не появилось достаточно места для передышки. Затем я снизил его еще больше, чтобы увидеть, в какой момент задержка становится невыносимо высокой. Оказалось, что это примерно ~100 мс, или тикрейт 10.

    Поскольку я не могу гарантировать, что игроки всегда будут онлайн, я добавил очень простой ИИ, который просто подъезжает к ближайшему юниту в определенном диапазоне и стреляет в него.

    Есть полноэкранный режим (F11), но я не рекомендую его, так как он намного требовательнее к производительности.

    Известные проблемы:

    <ул>
  • Заикается
  • Боевые единицы не всегда исчезают на стороне клиента (похоже, это происходит, когда браузер теряет фокус)
  • Пок-пок, это волшебный цыпленок

    Как скачать Neon Things через торрент

    Всего несколько простых шагов:

    • Устанавливаем программу μTorrent, через которую мы будем скачивать торренты
    • Выбираем и скачиваем подходящий торрент-файл репака Neon Things
    • Двойным кликом открываем скаченный файл, программа μTorrent запустится автоматически и предложит выбрать место для сохранения дистрибутива.
    • После того как репак скачается, запускайте его. Начнется установка и... это все, приятной игры!