Как стать автором
Обновить

Комментарии 23

Замечательный способ расстаться с сервером. PsychoStats 3.2.2b - релиз 2013 года, думаю дыр нашли за это время достаточно в нем. Сам сервер не идеален, и читеры на месте не сидят. Не помню, чтобы VAC кого-то останавливал раньше.

CS1.6 - отличное занятие, чтобы тряхнуть стариной. Но только с теми, кому доверяешь. Открывать эти сервера в публичный интернет - долго не протянут...

Всего лишь одна CVE-2013-3721, но зато Base Score 7.5 (High).

И есть рабочие эксплоиты.

PsychoStats 3.2.2b - старая так и есть. Там еще Flash в одном месте используется, теперь это совсем не работает конечно.

Найду хорошую OpenSource статистику, поставлю. Еще один php-fpm контейнер на нормальном PHP v.7 и вперед.

Посоветуйте хорошую, если в теме.

Касательно VAC. Конечно можно навесить amxx-плагинов античитов. Когда разберусь, какие стоящие - прикручу.

Посоветуйте хорошие, если в теме.

Хороших нет. Протокол раздеребанен вдоль и поперек. Что-нить новое изобрести сложно. Может нейросети прикрутили.

Ага! Спасибо.

Вообще, больше всего времени ушло на поиск amxx-плагинов. Их как грязи!

Потихоньку вычищу, надо просто время потратить. Благо не гонюсь за количеством.

Прочитав заголовок, я как будто попал в прошлое....

Это ты еще пострелять не заходил. Мы там стариканы 30+ тусим в основном. Всех детей в CS GO засосало. Шикарно!

Как человек, держащий одно время сервер CS 1.6 на 32 слота, из которых 32 были заняты н-ное время, лет 5 назад, могу сказать - почти все плагины имеют уязвимости (т.к. не обновляются, зачастую, по 10 и более лет), а половина из них выложена в интернете с добавленными шелами.

И хорошо, если там просто будет перехвачена админка, а не сама машина, на которой это все работает.

Мне прямо в папку с сервером, скажем, умудрялись заливать картинки и ехе-шники, видимо с надеждой на запуск, не говоря обо всяких текстовых файлах с посланиями разного рода (и это с проверенными оригинальными dll-ками и плагинами).

Поэтому присоединяюсь к комментатору выше. Либо писать самому, либо ставить чистый сервер, все остальное, вне зависимости от популярности, превращает сервер в дуршлаг, и потенциально ОСь, на которой это крутится, во всяком случае, с виндой точно.

Либо писать самому, либо ставить чистый сервер...

Не очень понял.

hlds - чистый. Грязи добавили плагины amxx. Плагины писать самому?

Касательно дуршлаг/перехват - Docker-контейнер не жалко. Самому интересно сколько протянет.

Имел ввиду плагины конечно, не совсем видимо удачно мысль сформулировал. Есть такая штука, как AMXX-Studio - позволяет это удобно делать.

Сейчас что, даже с этим инвайт получить можно?

Вроде стоит nginx, а раздача аддонов для клиентов происходит через основной процесс сервера CS

Насчет быстрой скачки:

1) помимо карт игроки могут скачивать звуки, модели, спрайты и .wad файлы, у тебя добавлены только карты

2) зачем физически копировать файлы, когда можно сделать алиасы nginx'ом? при закачке новых файлов на сервер они автоматически будут доступны для быстрой скачки, но тут главное правильно настроить, чтобы пользователям не были доступны для скачивария конфиги, плагины или исходники

1) Да, на nginx выложил только maps. Дальше дело вкуса, не стесняемся выкладываем любой custom

2) У меня подход контейнерный. hlds - один контейнер, nginx - другой контейнер. Опять же, дело вкуса.

Ты тут писал про то, что не использовал ReHLDS. Я его настоятельно советую, ибо новые API и новые возможности. Очень советую почитать про него поподробнее и потестировать в своём докере. Говорю как человек, который сейчас держит сервер. ПОмимо ReHLDS есть ещё ReGameDLL. Так же обновление, уже для самого КСа, фиксящее баги, восящее больше конфигуируемых возможностей и по умолчанию добавляющее zBot'ов.

Моя цель была поднять классический сервер от Valve с минимальным комплектом улучшений.

Дополнительные свистелки, современные патчи - да, согласен, стоит посмотреть в сторону ReHLDS. Пушки лазеры, боты, голые бабы вместо C4, ну и конечно, поддержка no-steam клиентов. Все там.

no-steam - ещё куда ни шло (не все любители классического 1.6 имеют лицуху и играют на пиратке) - но при чём здесь пушки лазеры и прочее, если я только сказал, что в ReHLDS идёт исправление багов HLDS, которые до сих пор не исправлены самими VALVe, а в ReGameDLL помимо этого идёт более широкая настройка игры и дополнительная поддержка zBot из коробки?

Играл я как-то в 1.6 на полупроф уровне и часто общался с администраторами разных LAN и онлайн турниров

Описанный вами способ развернуть сервер достаточно казуальный и подойдёт, ну наверное большинству.

Однако любой проф того времени вам расскажет про чудесный «серверный FPS”

Latency игроков зависит в том числе и от того, насколько быстро сервер обрабатывает полученные от клиентов пакеты данных и формирует отправляемые пакеты клиентам. То есть чем больше FPS сервера, тем быстрее он работает и тем ниже пинг игроков. Но высокое значение FPS потребует большей нагрузки сервера на процессор.

Насколько мне известно сделать 1000 FPS без пересборки Linux ядра на real time - невозможно. А в докере так подавно :(

FPS сервера, хм... под таким углом не рассматривал. Каким инструментом замеряют FPS у сервера, если не секрет?

FPS понятие близкое к монитору и видеокарте, но суть я уловил. Если идет битва за 1000 FPS, значит сервер должен гарантированно отдавать UDP пакеты с частотой 1000 Гц, это означает максимальную задержку = 1мс.

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

Как только вываливаемся в Public Internet, получаем 5+ мс, это если число хопов минимальное и стучимся на сервер в своем городе. Плюс джиттер на получение UDP-пакетов, думаю еще пару милисекунд приклеит.

И того, максимально достижимый FPS между сервером и клиентом при идеальном Public Internet порядка 150 FPS. Как раз под игровой монитор с частотой 144 Hz.

Сетевой трафик от HLDS-сервера мизерный, нагрузка на CPU мизерная, пересборка linux ядра не имеет смысла.

И Docker в этом смысле самая легкая виртуализация из возможных, LXC-подход практически не накладывает дополнительных издержек на систему, считайте что код крутится на хостовой машине.

На latency игрового процесса скорей влияют настройки сервера + клиента. Если есть опыт, подскажите правильный набор параметров:

sv_lan 0

sys_ticrate 1000

sv_maxrate 100000

sv_maxupdaterate 102

sv_minrate 20000

sv_minupdaterate 30

sv_instancedbaseline 1

sv_unlag 1

sv_unlagpush 0

sv_unlagsamples 1

sv_maxunlag 0.5

https://github.com/ars-anosov/docker-hlds16/blob/master/cstrike/server.cfg

Настройки ОК. Собственно sys_ticrate как раз отвечает за серверный FPS.

Проверить FPS легко через rcon rcon stats

Нормальным показателем является 500, киберспортивный - 1000.

Описанная вами логика FPS верна, но серверный FPS магическим образом влияет на стрельбу и хитбоксы. Попробуйте пострелять и позажимать в стены с 300 FPS и 1000. Вы разницу прям на глаз увидите :)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории