Разработчики Warface провели серьезную работу в области пинга и его влияния на игровой процесс. Ближайшие нововведения должны значительно улучшить ощущения геймеров в шутере. Об этом рассказал ведущий программист проекта Warface Иван Лапшин.
Для начала стоит отметить основные моменты. Пинг — это время, за которое данные доходят от пользователя до сервера, а потом возвращаются обратно. Этот показатель измеряют в миллисекундах. Важно понимать, что пинг не равен скорости интернета, это задержка, а не пропускная способность.
Пинг непосредственно влияет на игровой опыт. Особенно в онлайн-шутерах, где важно иметь высокую скорость реакции. Соответственно, чем дольше идет информация от сервера, тем больше времени уйдет на ответные действия — на выстрел, к примеру.
Игроку важно видеть пинг, чтобы понимать, какое качество сетевого взаимодействия в игре он будет получать. При высоком пинге можно сменить игровой сервер, если есть такая возможность.
Классический пинг использует протокол ICMP. Это идеальные условия — отображение сетевой задержки, избегая время, которое сервер тратит на обработку данных. Однако во многих проектах, и Warface в их числе, пинг работает через другой протокол — UDP.
Отправка данных через UDP-протокол происходит с помощью пакетов, внутри которых — от 1 до 32000 «месседжей». Это небольшие блоки-команды, которые обрабатываются в порядке их чтения из пакета.
По словам Ивана Лапшина, разработчики движка CryEngine, на котором работает Warface, предусмотрели не все. Из-за сложностей с очередью на обработку пакетов по итогу получаются дополнительные 33 миллисекунды к пингу, которых можно было бы избежать.
Авторы Warface нашли проблемы. После исправлений в очередь попадает намного меньше пакетов с «месседжами». Это
