Наши сервера

Стрельба, мифы, легенды.

182 0

easysoft1337
easysoft1337

Игрок

3 1
16
9 февраля 2024 г, 18:22, отредактировал: l0vecwk, 14 июня 2024 г, 23:14

Прошло миллион лет, с тех далёких пор, как появились сервера в интернете, люди стали заводить тему на счёт стрельбы, хорошая плохая - плохая хорошая, вечная битва продолжается до сих пор.

Стрельба зависит от :

1. Интернета сервера (приход и уход пакетов)
2. Вашего интернета (приход и уход пакетов)
3. Настройки ваших рейтов от чего и зависит (приход и уход пакетов)

Стрельба не настраивается ну НИКАК кроме плагина который может уменьшить отдачу у оружия (но зачем это надо)

Под спойлером люди более или менее разбирающиеся в этом, обсуждают это, можно не читать.

 
Спойлер
[30.12.17 12:02]
мне каждый день пишут, вот на этом сервере залетает, а у вас нет. Тех админ почини, спроси. Но они не понимают, что клиент сам рисует стрельбу

[30.12.17 12:03]
клиент сам рисует стрельбу
в смысле?)

 [30.12.17 12:03]
ну, *** говорил, тип клиент сам рисует

[30.12.17 12:03]
сервер не причем

 [30.12.17 12:04]
В ответ :
как давно он говорил то?

[30.12.17 12:04]
может, я скорее всего не правильно понял
[30.12.17 12:08]
ты не правильно понял

[30.12.17 12:08]
положение патронов - клиент не отправляет

 [30.12.17 12:09]
клиент отправляет состояние ентити игрока:
струкртуру целую серверу

 [30.12.17 12:09]
тогда в какую сторону копать? у менять слишком много трафика на сервере изза whb+aef

 [30.12.17 12:09]
в которой имеется многое, допустим, все pev_* как миниум

 [30.12.17 12:09]
как можешь заметить, среди pev_* есть много интересного

[30.12.17 12:09]
на форуме же есть глобальная тема о стрельбе?

[30.12.17 12:10]
не помню уже

 [30.12.17 12:10]
но, каждый хочет узнать...

[30.12.17 12:10]
по-этому надо сделать тему, в чем секрет кота бориса

[30.12.17 12:12]
секрет ныне прост.
Если сервер актуальной версии - расчёт разброса идёт на сервере, по состояниям клиента.

у нас есть pev_speed, pev_angle и прочие.

 [30.12.17 12:12]
так вот, приблизительно, начинается всё с ЭТИХ СТРОК
https://github.com/s1lentq/ReGameDLL_CS/blob/master/regamedll/dlls/wpn_shared/wpn_deagle.cpp#L70-L88

[30.12.17 12:13]
чё видишь там? расскажи

[30.12.17 12:14]
вижу, m_flAccuracy

[30.12.17 12:14]
тип точность

 [30.12.17 12:14]
ну, начнём с именования функции

 [30.12.17 12:14]
атака

[30.12.17 12:14]
ага, во время атаки - идут проверки

[30.12.17 12:15]
на земле, при приседе и тд

 [30.12.17 12:15]
1 проверка
если игрок НЕ на земле

[30.12.17 12:15]
да, там отрицание

[30.12.17 12:15]
2 проверка
если скорость передвижения > 0
[30.12.17 12:15]
3 проверка если находится в присяде

 [30.12.17 12:16]
и вариант - исключающий

 [30.12.17 12:16]
но все равно

[30.12.17 12:16]
какая-то магия есть

[30.12.17 12:16]
в рейтах

[30.12.17 12:16]
ок, допустим, мы просто стоим, не двигаемся,

Это попадает под самую последнюю "else"

[30.12.17 12:17]
в ответ:

магия в рейтах?

 [30.12.17 12:17]
это назхывается, когда расхождение синхронизации.

 [30.12.17 12:17]
сервер - получает данные реже, реже успевает обновлять состояние клиента, и расчитывать.

[30.12.17 12:17]
а, у нас ведь у клиента 100фпс, и мышкой он не 1 раз в секунду вертит.

[30.12.17 12:18]
а постоянное движение

[30.12.17 12:18]
покадрово

 [30.12.17 12:18]
так вот, исходя как миниум, из cl_cmdrate 100 - клиент отдаст 100 пакетов в секунду, к примеру

 [30.12.17 12:18]
то есть, 100 раз отдаёт своё состояние серверу, для синхронизации

 [30.12.17 12:19]
ибо реального, много кто задается этим вопросом и ничего не находит

[30.12.17 12:19]
вот эти все вещи, известны всем разработчикам
НО! из за того, что кто-то позволяет себе вольности обсуждения, в том числе и я - потом на кснет "аукается" - стрельбу настрой, рейтами +-5

[30.12.17 12:19]
это уже смешно...

[30.12.17 12:20]
там надо целую статью писать

 [30.12.17 12:20]
тем, кто задаётся - технические понятия - вообще "побарабану".

[30.12.17 12:20]
даже если я опишу, как оно работает - всё ровно им будет.

 [30.12.17 12:20]
так было и будет, всегда такой контингент был.

 [30.12.17 12:20]
еще вопрос, трафик как-нибудь влияет на это?

[30.12.17 12:20]
в net_graph

[30.12.17 12:20]
конечно, прямым образом

[30.12.17 12:20]
in: %d

[30.12.17 12:21]
сетевой протокол для стабильной работы требует стабильный приход и уход пакетов. на лане - условия сетевой передачи - максимальной приближены к идеальным.

 [30.12.17 12:22]
в интернете же, не каждый клиент (а то и сервер xD) себе может позволить стабильную отдачу и приём пакетов.

[30.12.17 12:21]
сетевой протокол для стабильной работы требует стабильный приход и уход пакетов. на лане - условия сетевой передачи - максимально приближены к идеальным.

[30.12.17 12:22]
в интернете же, не каждый клиент себе может позволить стабильную отдачу и приём пакетов.

[30.12.17 12:23]
так, вот, когда пакетики не могут стабильно 100 раз в секунду на сервере обновляться, потому-что клиент не смог отдать или получить актуальные - вот тут и приколы с стрельбой начинаются.

 

На сервере максимум установлен hitbox fixer.

Как это работает : ВИДЕО

Для того что бы это корректно работало и у вас :
cl_lw 1
cl_lc 1 
Не знаю почему их принято ставить в 0 ведь это лагокомпенсация...

vk.com/unknownui1337

Спасибо сказали: weed, Alexander Evgenyevich, l0vecwk