Как сделать рейты на сервере

Обновлено: 07.07.2024

UPDATE t_npc SET a_item_percent_0 = a_item_percent_0 * 1;
UPDATE t_npc SET a_item_percent_1 = a_item_percent_1 * 1;
UPDATE t_npc SET a_item_percent_2 = a_item_percent_2 * 1;
UPDATE t_npc SET a_item_percent_3 = a_item_percent_3 * 1;
UPDATE t_npc SET a_item_percent_4 = a_item_percent_4 * 1;
UPDATE t_npc SET a_item_percent_5 = a_item_percent_5 * 1;
UPDATE t_npc SET a_item_percent_6 = a_item_percent_6 * 1;
UPDATE t_npc SET a_item_percent_7 = a_item_percent_7 * 1;
UPDATE t_npc SET a_item_percent_8 = a_item_percent_8 * 1;
UPDATE t_npc SET a_item_percent_9 = a_item_percent_9 * 1;
UPDATE t_npc SET a_item_percent_10 = a_item_percent_10 * 1;
UPDATE t_npc SET a_item_percent_11 = a_item_percent_11 * 1;
UPDATE t_npc SET a_item_percent_12 = a_item_percent_12 * 1;
UPDATE t_npc SET a_item_percent_13 = a_item_percent_13 * 1;
UPDATE t_npc SET a_item_percent_14 = a_item_percent_14 * 1;
UPDATE t_npc SET a_item_percent_15 = a_item_percent_15 * 1;
UPDATE t_npc SET a_item_percent_16 = a_item_percent_16 * 1;
UPDATE t_npc SET a_item_percent_17 = a_item_percent_17 * 1;
UPDATE t_npc SET a_item_percent_18 = a_item_percent_18 * 1;
UPDATE t_npc SET a_item_percent_19 = a_item_percent_19 * 1;

UPDATE t_quest SET a_prize_data0 = a_prize_data0*1 WHERE a_prize_index0 = 0 and a_prize_type0 = 2 ;
UPDATE t_quest SET a_prize_data1 = a_prize_data1*1 WHERE a_prize_index1 = 0 and a_prize_type1 = 2 ;
UPDATE t_quest SET a_prize_data2 = a_prize_data2*1 WHERE a_prize_index2 = 0 and a_prize_type2 = 2 ;

Здравствуйте пользователи Hlmod! Помогите с настройкой тик рейта сервера. Какие самые оптимальные настройки для сервера на 128 рейтов?

selax

Здравствуйте пользователи Hlmod! Помогите с настройкой тик рейта сервера. Какие самые оптимальные настройки для сервера на 128 рейтов?

SlavON

Участник

Тут как бы и вопрос и ответ некорректны, при задании тикрейта оптимальные настройки сами задаются. Нет смысла их ковырять.

smoke96

Участник

master117

Участник

SlavON

Участник

B1g, а какой моник лучше, на 75 герц или 77? Узнай для начала, что такое тикрейт и такие вопросы сами по себе отпадут.

selax

В CS:GO обычно используются 64, 102.4 и 128. 66 - это из CS:S.

Любой тик работает. Проверено.
Просто смысла нет.

Тут как бы и вопрос и ответ некорректны, при задании тикрейта оптимальные настройки сами задаются. Нет смысла их ковырять.

smoke96

Участник

selax

smoke96

Участник


а на что влияют эти команды? У меня просто в строке запуска стоит тик 64 , если добавлю эти команды что изменится?

selax

а на что влияют эти команды? У меня просто в строке запуска стоит тик 64 , если добавлю эти команды что изменится?

В принципе ничего не должно измениться.

SlavON

Участник

B1g, в принципе тебе их не надо трогать, когда ты задаёшь тикрейт эти настройки автоматичеси устанавливаются.

selax, зачем всё усложнять и делать лишнюю работу? И в ксго нельзя задать любой тик, он автоматом выставляется к ближайшему разрешённому значению.

Рейты - общее название для параметров, определяющих частоту и объём обмена информации сервера с клиентом.

Вначале пройдёмся по терминологии.

  1. sv_maxrate и sv_minrate - максимальное / минимальное количество байт за одну секунду времени которые сервер посылает клиенту, включая потери пакетов (loss).
  2. sv_minupdaterate и sv_maxupdaterate - минимальная / максимальная частота отсылки обновлений от сервера к клиенту. Влияет на фпс. Если сервер отошлёт клиенту, к примеру, 40 обновлений за 1 секунду, у клиента фпс будет 40 либо ниже.
  3. loss - количество потерянных пакетов из последних 100. Пакеты могут теряться из-за перегрузки канала либо плохой связи между сервером и клиентом. Проблема в 90% случаев неустранимая.
  4. choke - количество пакетов, отправка которых была задержана сервером, чтобы не превысить лимит полосы, устанавливаемый sv_minrate, sv_maxrate. Также зависит от sv_minupdaterate и sv_maxupdaterate. Причина - сервер генерирует либо слишком много трафика. Это проблему можно решить настройками.

Как настраивать рейты?

Настройка рейтов - дело для каждого сервера индивидуальное, зависящие от железа, канала, билда, нагруженности, так что искать некие "оптимальные" в интернете - занятие интересное, но, увы, малополезное. Лучше это сделать самому по следующим принципам:

  • sv_maxrate 20 000 на билдах 5***. sv_maxrate 50 000-100 000 на билде 6***. На билдах 5*** выше, чем 20 000 устанавливать было нельзя. Вы можете прописать любое число в конфиге, хоть миллион, но реально максимум будет 20 000. На билдах 6*** появилась возможность повысить до 100 000, но если канал связи не очень хороший, то имеет смысл поискать оптимальное значение в диапазоне 50 000 - 100 000.
  • sv_minrate 50 000 - 100 000 на билдах 5***. sv_minrate 25 000 на билдах 6***. Да, на билдах 5*** нельзя было выставить sv_maxrate больше, чем 20 000, но это обходилось условием sv_minrate. Никакой магии, дело в принципе отбора рейтов HLDS. Работает это так:

Под rate имеется в виду клиентский rate. То есть что происходит? В начале HLDS смотрит на maxrate. Если клиентский выше, то понижаем до серверного, если ниже - оставляем как есть. Затем HLDS смотрит на minrate. Если клиентский выше серверного, то оставляем всё как есть, а если клиентский ниже серверного, то приравниваем клиентский к серверному. Вот и получалось на билдах , что клиентский rate всегда ниже, чем серверный(100 000), и принудительно выставлялось значение 100 000. На билдах максимальное значение sv_maxrate повысили до 100 000, и эта хитрость стала бессмысленной.

if rate>sv_maxrate then rate=sv_maxrate;
if rate
if rate>sv_minrate then rate=rate;
if rate

  • sv_minupdaterate 20-30. 20 - значение по умолчанию, 30 - разумный минимум для человеческого глаза.
  • sv_maxupdaterate 60 - 101 для билдов 5*** и sv_maxupdaterate 60 - 102 для билдов 6***

Теперь можно начать выставлять значения.

Заходим в server.cfg, сперва выставляем всё по максимуму.

Для билдов 5*** это

sv_maxrate 20000
sv_minrate 100000
sv_minupdaterate 30
sv_maxupdaterate 101

Для билдов 6*** это

sv_maxrate 100000
sv_minrate 25000
sv_minupdaterate 30
sv_maxupdaterate 102

Далее анализируем поведение сервера. Заходим в игру, включаем в консоли график нагрузки (net_graph 0/1/2/3), играем и параллельно смотрим на выданные в нём значения.

  1. Если сервер фризит, то понизьте sv_minrate на билде 5*** / sv_maxrate на билде 6***. Понизьте sv_minupdaterate до 20.
  2. Если у клиента choke, то имеет смысл повышать sv_minrate. По сути на билде 5*** вы должны жёстко задать rate клиенту путём sv_minrate>sv_maxrate, а на билде 6*** можно поэкспериментировать с sv_maxrate 100 000 sv_minrate [20 000; 100 000]. Значения выше 100 000 ставить крайне не рекомендуется. Также можно понизить значение sv_maxupdaterate. Зачем слать обновления клиенту, если они всё равно не доходят? Но лучше всего будет, если вы сумеете убрать choke и фризы, не уменьшая sv_maxupdaterate.
  3. Если избавились от фризов и choke, то можно попробовать потихоньку снижать рейты, дабы лишний раз не нагружать канал. Понизьте sv_minupdaterate до 20, к примеру. Потихоньку снижайте sv_minrate.

Вопросы и ответы

Я видел, что на билдах 6*** ставят sv_minrate 100 000, sv_maxrate 25 000, как на старых. А в статье сказано ставить наоборот. Где правда?

Ответ: никакой путаницы нет. Вспомним правило расчёта рейтов

Оно одинаково для всех билдов.

В случае с sv_minrate 100 000, sv_maxrate 25 000 клиентский rate жёстко задаётся в 100 000. На старых билдах делали именно так, потому что не было возможности превысить ограничение в 20 000 иначе.

В случае с sv_minrate 20 000, sv_maxrate 100 000 клиентский rate колеблется между значениями 20 000 и 100 000. На стиме и клиентах нового билда это оптимально, на клиентах старого билда (с бустов) rate клиента станет скорее всего 25 000, так как именно такое значение чаще всего прописывают владельцы бустов. Его можно увеличивать, повышая sv_minrate.

Поясню на примерах

В случае с билдом 6***
sv_minrate 100 000, sv_maxrate 25 000 => rate 100 000
sv_minrate 70 000, sv_maxrate 40 000 => rate 70 000
sv_minrate 30 000, sv_maxrate 100 000 => rate между 30 000 и 100 000 на стимах, 30 000 на бустах.
sv_minrate 10 000, sv_maxrate 50 000 => rate между 10 000 и 50 000 на стимах, 25 000 на бустах.

Откуда 25 000? Это значение чаще всего выставляют владельцы бустов в клиенте.

В случае с билдом 5***
sv_minrate 100 000, sv_maxrate 25 000 => rate 100 000
sv_minrate 70 000, sv_maxrate 40 000 => rate 70 000
sv_minrate 30 000,sv_maxrate 100 000 => rate 30 000
sv_minrate 10 000, sv_maxrate 50 000 => rate между 10 000 и 20 000, скорее всего 20 000.

Откуда 20 000? Владельцы бустов в клиенте обычно ставят 25 000, но сервер с билдом 5*** поддерживает только sv_maxrate

Ответ: Фриз - остановка игры. От английского Freeze. Представляет собой кратковременную остановку. Игровой мир замирает, после чего игра продолжается.

Обычно бывают 2 ситуации - или небольших фризов много, каждый - доли секунды, или фризов мало, на каждый - по 1-2 секунды. На графике net_graph 1/2 выглядит как резкое подскакивание фиолетовой полоски вверх.

Сетевые настройки всегда были очень сложной и часто обсуждаемой темой в кс, и все еще существует большое количество недоразумений относительно сетевых настроек в CS:GO. Мы постараемся изложить всю суть дискуссий по сетевым настройкам и объясним, какие сетевые настройки вам следует использовать для соревновательной игры.

Что такое рейт в кс го

Рекомендуемые сетевые настройки

  • rate 786432
  • cl_cmdrate 128
  • cl_updaterate 128
  • cl_interp 0
  • cl_interp_ratio 1

Объяснение переменных конфига

  1. rate 786432 (означает 196608)
    Максимальное количество данных в байтах/ сек., которое может принять хост
  2. cl_cmdrate 128 (по умолчанию 64, мин. 10,000000 макс. 128,000000)
    Максимальное количество командных пакетов, отправляемых на сервер в секунду
  3. cl_updaterate 128 (по умолчанию 64)
    Количество обновлений пакетов в секунду, которые вы запрашиваете с сервера
  4. cl_interp 0 (по умолчанию 0,03125, мин. 0,000000 макс. 0,500000)
    Устанавливает количество интерполяции (ограничено нижним уровнем с помощью серверных настроек коэффициента взаимодействия)
  5. cl_interp_ratio 1 (по умолчанию 2.0)
    Устанавливает количество интерполяции (окончательное количество cl_interp_ratio / cl_updaterate)

В сентябре 2016 года Valve обновила некоторые аспекты сетевых настроек CS: GO и увеличила рейты по умолчанию с 80000 до 196608, что позволяет подключать пользователей со скоростью Интернета 1,5 Мбит/с и выше.

Они также увеличили настройки максимального рейта до 786432 для пользователей со скоростью не менее 6 Мбит/с. Если ваша пропускная способность составляет 6 Мбит/с или более, вы должны использовать новые максимальные рейты 786432, чтобы CS: GO мог передавать больше трафика от сервера к вашей системе.

какой рейт ставить в cs go

какой рейт ставить в cs:go

Старые и новые хитбоксы

15 сентября 2015 года Valve выпустили обновление, которое улучшило старый “скелет” игрока и систему хитбоксов в CS: GO. Они также заменили все анимации игроков, чтобы избавиться от некоторых по настоящему раздражающих ошибок. Пользователь форумов reddit под ником whats0n просмотрел файлы моделей и опубликовал очень хорошее изображение со сравнением старой и новой систем хитбоксов.

Как видите, новые хитбоксы основаны на капсулах. Капсулы способны немного лучше “заполнять” модели игроков , поэтому немного поразить врага стало легче. Вместе с новым скелетом игрока и переработанными анимациями, это обновление также исправило кучу надоедающих багов, например, баг хитбокса, когда кто-то прыгал, устанавливал бомбу или двигался по лестнице.

Упростим и подведем итог

На стороне клиента:

  • fps var: низкое значение = хорошо
  • fps var: высокое значение = плохо

На стороне сервера:

  • 64 тикрейт: sv 15,625 мс = плохо
  • 128 тикрейт: sv 7,8 мс = плохо

Обычно вы предполагаете, что чем выше тикрейт, тем точнее будет симуляция, поскольку сервер обрабатывает данные быстрее. Это улучшает игровой процесс (более точное движение и отображение попаданий), поскольку сервер и клиент обновляют друг друга с большей частотой.

тикрейт 64 и 128

Конечно, это очень примитивное объяснение, но чтобы понять преимущество более высокого тикрейта, вам, прежде всего, нужно понять основы многопользовательской сети в движке Source. Мы могли бы перефразировать эту информацию своими словами, но мы считаем, что вам стоит самим прочитать официальные слова от Valve:
“Сервер симулирует игру в дискретных временных интервалах, называемых тиками. По умолчанию временной интервал составляет 15 мс, поэтому 66,666… тиков в секунду имитируются, но моды могут установить свой собственный тикрейт.

Во время каждого тика сервер обрабатывает входящие команды пользователя, запускает этап физического моделирования, проверяет правила игры и обновляет все состояния объекта. После симуляции тика сервер решает, нужно ли какому-либо клиенту обновление мира, и при необходимости делает снимок текущего состояния мира. Более высокий тикрейт повышает точность моделирования, но также требует большей мощности процессора и доступной полосы пропуска как на сервере, так и со стороны клиента.

Клиент и сервер связываются друг с другом, отправляя небольшие пакеты данных с высокой частотой. Клиент получает сведения о текущем состоянии мира с сервера и генерирует видео и аудио выход на основе этих полученных обновлений. Клиент также выполняет получение данных с устройств ввода (клавиатура, мышь, микрофон и т. д.) и отправляет эти полученные данные ввода обратно на сервер для дальнейшей обработки. Клиенты взаимодействуют только с игровым сервером, а не между собой (как в одноранговом приложении P2P).

Пропускная способность сети ограничена, поэтому сервер не может отправлять новый пакет обновлений всем клиентам после каждого изменения в мире. Вместо этого сервер делает снимки текущего состояния мира с постоянным рейтом и передает эти снимки клиентам. Сетевые пакеты занимают определенное количество времени в пути между клиентом и сервером (т.е. пинг времени). Это означает, что время клиента всегда немного отстает от времени сервера. Кроме того, входные пакеты клиента также задерживаются на обратном пути, поэтому сервер обрабатывает пользовательские команды с задержкой.

Кроме того, каждый клиент имеет разные задержки сети, которая меняется со временем из-за другого фонового трафика и частоты кадров клиента. Эти различия во времени между сервером и клиентом вызывают логические проблемы, которые усугубляются с увеличением задержек в сети.

В быстрых динамичных играх даже задержка в несколько миллисекунд может вызвать лаги игрового процесса и затруднить попадания по другим игрокам или взаимодействие с движущимися объектами. Помимо ограничений пропускной способности и задержек в сети, информация может быть потеряна из-за потери сетевых пакетов.

Bloody2367 никому не известный тип


Популярность: 10


Сказал(а) спасибо: 0

Всем ку! У меня такая проблема,я создал серв настроил,но сокрость как у меня х1(сборка пилы). Как и где поменять рейты скажите плиз!

Naxer никому не известный тип


Популярность: 14


Сказал(а) спасибо: 1

На серве, . \gamed\ptemplate.conf

Ахмад никому не известный тип


Популярность: 10


Сказал(а) спасибо: 0

Так просто их не поменяешь ! Надо программу для этого !

Apxu67 на правильном пути


Популярность: 97


Сказал(а) спасибо: 7












Знак ордена За заслуги перед Форумом Zhyk.Ru


Популярность: 3773


Сказал(а) спасибо: 88

strelok670 неизвестен в этих краях
strelok670 неизвестен в этих краях
strelok670 неизвестен в этих краях
strelok670 неизвестен в этих краях
strelok670 неизвестен в этих краях
strelok670 неизвестен в этих краях
strelok670 неизвестен в этих краях
strelok670 неизвестен в этих краях


Популярность: -971


Сказал(а) спасибо: 0

Ну как бы я держал свой сервер там не надо не какую программу можно менять через mc а там путь задашь изменишь и разберешься да не забудь как изменишь сохранить вроде на F2

Читайте также: