Стрельба по пингу
Ping - это служебная компьютерная программа, предназначенная для проверки соединений в сетях на основе TCP/IP.
Она отправляет запросы Echo-Request протокола ICMP указанному узлу сети и фиксирует поступающие ответы (ICMP Echo-Reply). Время между отправкой запроса и получением ответа (RTT, от англ. Round Trip Time) позволяет определять двусторонние задержки (RTT) по маршруту и частоту потери пакетов, то есть косвенно определять загруженности каналов передачи данных и промежуточных устройств.
Простонародным языком. Пингом называется время, затраченное на передачу пакета информации в компьютерных сетях от клиента к серверу и обратно от сервера к клиенту, оно измеряется в миллисекундах. Время пинга связано со скоростью соединения и загруженностью каналов на всём протяжении от клиента к серверу.
Минимальное значение пинга, при даже самом быстром инете и самом маленьком расстоянии, равняется 30МС - это минимальное время необходимое для выполнения всех операций в любой сети, будь то локальная, то интернетовская
Теперь к тому как пинг отражается в игре в моей собственной формулировке.
Время затраченное на отправку сигнала от вашего компьютера до сервера и время на его возврат на сервере, допустим 100МС. Тоесть сервер видит вас через 50 МС после того как вы что либо сделаете, а через 100МС после действия вы видите картинку на сервере.
как стрелять по игрокам с пингом 50, 100, 150, и 200 в конце статьи. а щас я попробую порассуждать почему надо делать расстояние.
Когда вы, игрок1, отсылаете ваш сигнал на сервер о неком действии "А", проходит 50 МС прежде чем сервер его получит и еще 50 прежде чем вы получите картинку на сервере после некого действия А. Параллельно с вами игрок с пингом 200 делает действие "Б" и проходит 100 МС прежде чем сервер получит сигнал и еще 100 прежде чем отошлет ответ игроку 2 о действиях "А" и "Б". Но игроку с пингом в 100, время на получение действия Б равняется пингу в 50 т.к. нулевая точка времени является та точка, которая стоит на моменте получения сервера сигнала. А игроку 2, нужно 100МС о получении сигнала о действии "А". По этому любой пинг делите по полам и вы получите время через которое он вас увидит.
И теперь научу не опытных игроков стрелять по пингу.
Стрельба по пингу - это стрельба по человеку, но немного дальше того где он идет у вас на экране. На кровь даже не смотрите, бред!
Допустим.
Ping 30-80 - делаете расстояние почти нулевым, т.е. то где он будет через 30 МС (30, не 25 т.к. 30 МС минимальный пинг для любого)
Ping 100-190 - делаете такое расстояние где чел будет через 50 МС. Т.е. тож не значительным, не более 1 СМ.
Ping 200+ - тут дело по сложнее. из-за "мертвых зон" т.е. лагов, у этого игрока не будет сглаженного движения, по этому стрелять надо на расстоянии 2 и более СМ впереди игрока.
Но! Все вы забываете что человеку с большим пингом так же трудно попасть по человеку с малым пингом, но почти без труда они смогут попасть по челу с аналогичным себе пингу. Кто не верит, может проверить это на буржуйках.
Теперь о стрельбе, как уже стало ясно "Стрельба по пингу - это стрельба по человеку, но немного дальше того где он идет у вас на экране". Тоесть, никогда не смотрите на "тело" игрока, смотрите на сторону, в которую он двигается и примерно прикидывайте его местоположение. Примеры:
Игрок двигается в левую сторону, соответственно, его настоящее местоположение будет немного левее того "тела", что вы видите.
Точно также, это относится к машинам и к любому другому транспорту.
Стрелять по "телу" игрока можно в том случае, если он стоит на месте.