Итак, для начала несколько определений:
Latency(ping) – пинг - временной промежуток, за который пакет, отосланный отвашего компьютера проходит до сервера (и наоборот). В миллисекундах
Server - Сервер – Выделенный сервер в Интернете, расположенный на каком-нибудь компьютере.
Client - Клиент – Игра, запущенная на вашем компьютере. Клиент подключается кСерверу. На сервере может выставляться количество возможных подключаемых клиентов.
Shot Trajectory - Траектория выстрела – Линия между концом дула вашего оружия и местом, куда попала ваша пуля.
Hitbox– Хитбокс – модели игроков в Counter-Strike: Source поделены на такна зываемые Хитбоксы (hitboxes), которые блокируют различные участки моделей. В одной моделе существует множество хитбоксов . Есливы стрелить в хитбокс, то значение здоровья и броняи игрока уменьшается. CS:Source – Основы
В абсолютно любом сетевом 3D шутере, главной проблемой, которую решают в первую очередь, является пинг. Каждый игрок должен видеть тоже что видят и его соперники. Соперники же должны двигаться плавно, без рывков и задержек – ведь на самом деле игра обновляется периодически, а время между отправкой и получением пакета порой может быть очень длинным промежутком.
Немного информации
На карте Ваша позиция у Вас на мониторе относительно вас же на сервере и вас же на экранах других клиентов никогда не будет одинаковой. Это происходит по причине задержки, из-за того, что Ваш компьютер отсылает серверу пакет с информацией о Вашем местоположении, сервер симулируеткак бы кадр игры, обновляет у себя о Вас информацию, после чего отправляет информацию о Вас другим клиентам, а они получают и обновляют уже о Вас информацию у себя. Эта проблема в связке с тем, что у вас наэкране все выглядит плавно, составляет неприятную картину.
Такая картина иногда видна в самой игре, зачастую приводя к недоумению игроков.
1 Ситуация «Слайдшоу из хитбоксов»:
«Вы выходите из-за угла стены/ящика и тут же быстро уходите назад. Вы не видите врага ,но при этом вы получаете повреждение.»
Объяснение:
Чтобы объяснить причину такого поведения игры, мы должны принять во внимание все, что происходит на Вашем компьютере, на компьютере сервера и накомпьютерах других игроков.
Вещи, о которых Вам надо знать, перед тем, как я продолжу
Фактические повреждения (ну или расположения хитбоксов, если так понятнее)просчитываются на стороне сервера. Но на стороне клиента также отслеживается положение хитбоксов, но чисто для визуализации (скажем,искры от пуль при поподании в броню, брызги крови из тела и тд.), но обэтом мы подробнее поговорим, когда дойдем до третьей ситуации.
В идеале обмен пакетами происходит в течении 30 миллисекунд. Это то время за которое сервер успевает обновить информацию о Вас, а Вы – о сервере.Но на практике эта цифра в разы больше, судя по пингу.
Время,которое тратится клиентом и сервером на обработку полученной информациистоль мало, что его даже не имеет смысла брать во внимание.
Проблема в данной ситуации наблюдается в случае, если происходит так называемая «коррекция задержек (лагов)», которая встроена в движок Source. Чтобы полностью понять, зачем это нужно, для начала мы посмотрим, что происходит с игрой, если нет никакой корректировки лагов.