какие рейты лучше для css
Какие рейты лучше для css
В процессе игры все происходящее нам кажется непрерывным, но на самом деле это не так. Сервер Counter-Strike Source способен обрабатывать события игрового мира с частотой шестьдесят шесть раз за одну секунду (tickrate 66). Это значение установлено по умолчанию и встроенных возможностей для его изменений не предусмотрено. Исходя из этого, понятно, что клиент не может отправлять и получать данные чаще, чем установленный tickrate.
По умолчанию клиент получает от сервера двадцать пакетов в секунду, каждое изменение в игре вы сможете наблюдать не раньше, чем придет очередной пакет, а значит с частотой двадцать раз за одну секунду. Очевидно, что этого не достаточно, особенно если учесть высокую динамику игры. Вы только представьте себе ситуацию, когда ваш противник стрейфует или резко выбегает из за угла. В таких игровых моментах нужна повышенная информативность от сервера. Частоту обновления данных можно изменить с помощью консольной переменной cl_updaterate. Как упоминалось ранее, скорость приема пакетов ограничена значением tickrate сервера. Значит, максимально возможное значение cl_updaterate составит шестьдесят шесть пакетов в секунду.
cl_updaterate 66
(Установив это значение рейтов, вы будете получать более точные и более информативные данные о происходящем в игре.)
Все сказанное относительно обновления информации от сервера относится и к передаче данных от клиента. Ведь когда вы нажимаете на клавишу клавиатуры или мыши необходимо проинформировать об этом сервер как можно быстрее. Частота отправки пакетов от клиента к серверу настраивается при помощи консольной переменной cl_cmdrate (по умолчанию тридцать пакетов в секунду). Максимальное значение cl_cmdrate не может быть выше, чем tickrate сервера.
cl_cmdrate 66
(С таким параметром рейтов сервер будет максимально быстро получать сведения о ваших действиях.)
Все игроки Counter-strike Source обладают разным подключением к сети интернет. Во избежание потери пакетов подход к настройке клиента должен быть индивидуален для каждого. При помощи консольной переменной rate можно установить максимальное значение данных, которые вы можете принимать, т.е. установить максимальный входящий трафик вашего подключения. В этом случае сервер будет знать о вашей входящей пропускной способности и никогда не пошлет обновлений больше чем установленный rate. По умолчанию значение rate составляет 30000 байт в секунду. Рассчитать правильный rate очень просто, достаточно перевести ваш входящий трафик в байты. Например, мое подключение к интернету 15 Мбит/с (15*2 20 / 8 = 1966080 байт). Ставить такое высокое значение лишено всякого смысла. Поэтому лично я ограничиваюсь rate 262144 (2 Мбит/с)
Почему разработчиками Valve изначально установлены такие низкие значения rate, cl_updaterate и cl_cmdrate. Скорее всего, это исходило из расчета на среднестатистического пользователя с медленным модемным соединением. Но по моему нескромному мнению это могло иметь место еще несколько лет назад, когда ни кто не имел представление что такое доступ в мегабит(ы). В соревновательных режимах применяются максимально возможные рейты.
интерполяция и lerp
Как нетрудно догадаться, чем больше клиент будет получать пакетов от сервера, тем меньше интерполяция будет отдавать нам «фальшивых» снимков. Значит при максимально возможном обновлении (cl_updaterate 66), игрок будет получать более точную и честную информацию.
Для настройки интерполяции в клиенте предусмотрено несколько консольных переменных: cl_interp_ratio, cl_interp. Переменная cl_interp_ratio задает число интервалов, через которые будет происходить интерполяция (по умолчанию 2 интервала). Клиент будет ждать до тех пор, пока не придут два пакета, и только потом будут рассчитываться промежуточные значения. В случае потери одного из пакетов расчет будет вестись на основе второго. Установка cl_interp_ratio 1 (один интервал) заставит клиент ждать только один пакет, что сведет задержку интерполяции (lerp) к минимуму.
Переменная cl_interp устанавливает величину интерполяции. Рассчитать cl_interp очень просто:
cl_interp=cl_interp_ratio / cl_updaterate
(можно установить cl_interp 0, тогда его значение будет рассчитано автоматически.)
лагокомпенсация
Лагокомпенсация на сервере сводит к минимуму влияние задержек (пинга) клиент-сервер, а также задержек интерполяции. Представьте себе, что вы играете на сервере, который географически находится далеко от вас и вдобавок у всех игроков разные задержки. Вы делате точный выстрел в бегущего противника. За время прошедшее от нажатия вами на клавишу мыши и доставкой пакета на сервер ваша цель уже давно скрылась за угол, но попадание все равно засчитывается. Это происходит благодаря лагокомпенсации на стороне сервера. Все дело в том, что сервер запоминает позиции всех игроков, делая снимки игрового мира, и при обработке вашего выстрела находит нужный снимок по формуле:
Лагокомпенсация дает возможность игрокам с разными задержками играть практически на равных, но с ростом и нестабильностью пинга эффективность лагокомпенсации падает.
предсказание (prediction)
Надеюсь эта статья помогла вам разобраться с вопросами, касающимися настройки рейтов в Counter-Strike: Source.
Какие рейты лучше для css
Многие люди часто спрашивают что такое рейты, какие значения использовать и т.п Я думаю написание руководства, объясняющего что все это значит, поможет многим людям. Чтобы потом люди не говорили какие значения использовать, не понимая что они означают на самом деле.
Начнем с определений:
Я предполагаю, что большенство людей использует ADSL или кабель и здесь я буду рассматривать ADSL в качестве примера и исходя из этого я предполагаю, что скорость входящего потока у всех 512кб\с и скорость исходящего 256кб\с, но вы можете сделать все приведенные здесь расчеты и для кабеля, и для соединений на более низких скоростях (просто необходимо вычислить разницу). Теперь выставляйте значения rate, cl_updaterate и cl_cmdrate чем выше тем лучше, потому что это позволяет вам играть в более быструю игру и что более важно это позволяет вашим пулям попадать в противника с большей вероятностью. Сейчас я объясню вам почему.
Рейт
В теории соединение ADSL должно с легкостью поддерживать рейт в 30000. Это проверяется следующим образом:
берем значение рейта, которое измеряется в байтах в секунду и переводим его в килобайты в секунду.
30000 /1024 = 29,296875кБ/с
В теории ваше соединение работает на скорости 512 килобит в секунду (в реальности оно работает на более низкой скорости). Я перевожу это значение в килобайты в секунду: 512 / 8 = 64кБ/с
Теперь вы можете видеть что через ваше соединение могут играть 2 человека с рейтом в 30000 (64 / 29.3 = 2.18). Можно использовать такое же вычисление для cl_rate, но этого делать не стоит, значения по умолчанию 9999 более чем достаточно.
cl_updaterate
Далее вы хотите изменить значения команд cl_updaterate и cl_cmdrate. updaterate определяет как много обновлений в секунду вы можете получить от сервера. Ясно что нужно получать как можно больше обновлений, так как это дает вам более точную картину того где кто находится и куда летят их пули. Однако, если у вас будет высокий updaterate и низкий rate вы не сможете послать достаточное количество данных за обновление и любая выгода от высокого updaterate будет сведена к минимуму. Для того чтобы стало понятно, я сейчас все объясню.
Если я ставлю cl_updaterate в 100 и мой рейт равен 30000 в теории каждое обновление может содержать до 300байт данных (30000 / 100 = 300). Повторюсь, чем больше данных вы сможете получить за обновление, тем более четко вы будете видеть игровой мир (это не означает что игровой мир будет более четким, а означает то, что ваши пули будут более четко попадать в цель). Было вычислено, что когда у вас на экране происходит много действий, вы можете использовать 250байт на обновление. Таким образом если у вас высокий updaterate, вам нужен соответствующий ему высокий рейт.
Используя данные если у вас updaterate равен 100, ваш рейт должен быть равен по крайней мере 25000, но лучше иметь небольшой запас. Я рекомендую значение 30000 как минимум (чтобы определить какое значение выбрать для вашего рейта возьмите ваш cl_updaterate и умножьте его на 250, а затем прибавьте к полученному значению еще хотя бы 5000 для страховки).
cl_cmdrate
cl_cmdrate работает так же как и cl_updaterate. Эта команда определяет сколько обновлений в секунду вы посылаете на сервер. И снова ее значение нужно ставить как можно выше. Чем больше обновлений вы пошлете на сервер, тем больше информации он будет иметь о ваших действиях и о том куда летят ваши пули. На мой взгляд эта команда более важная чем cl_updaterate.
Как и с cl_updaterate и с rate вы можете вычислить максимальное количество данных которое может содержать каждое обновление. Отсюда, если у вас cl_cmdrate равен 100 и ваш cl_rate равен 9999, каждое обновление может содержать 99.99байт данных (9999 / 100 = 99.99). Этого должно хватить для ваших нужд, так как вы посылаете меньше данных на сервер, чем он посылает вам.
Помехи (choke) и потеря (loss)
Теперь мы будем смотреть на помехи и потерю. Помехи (choke) показывают вам число обновлений которые не были посланы в оба направления из за перегрузки соединения. Потеря (loss) показывает число обновлений которые были посланы, но не достигли другой стороны. Помехи более важны чем потери, потому что ими вы засоряете соединение и оно не справляется со всеми этими данными. Это означает что вам нужно понизить значения рейтов. Потеря не так важна и если у вас большая потеря это говорит о том что у вас с сервером плохое соединение. Появление как помех (choke) так и потери (loss) является следствием того, что значения рейтов которые вы используете, либо слишком низкие, либо слишком высокие.
Я рекомендую попробовать использовать эти значения:
rate 35000
cl_updaterate 100
cl_cmdrate 100
!Параметр cl_cmdrate должен быть равен параметру cl_updaterate
Если эти значения приводят к помехам или потерям, пробуйте понижать значения. Я бы попробовал так:
rate 30000
cl_updaterate 66
cl_cmdrate 66
!Параметр cl_cmdrate должен быть равен параметру cl_updaterate
Тем кто подключен к ADSL я бы рекомендовал использовать эти значения:
rate 30000 или rate 25000
cl_updaterate 100 или cl_updaterate 66
cl_cmdrate 100 или cl_cmdrate 66
!Параметр cl_cmdrate должен быть равен параметру cl_updaterate
Тем кто подключён к дргим провайдерам, то я бы рекомендовал использовать эти значения:
rate 25000 или rate 10000
cl_updaterate 66 или cl_updaterate 33
cl_cmdrate 66 или cl_cmdrate 33
!Параметр cl_cmdrate должен быть равен параметру cl_updaterate
Вы можете проверить помехи и потери при помощи команды net_graph 3. Все сервера отличаются друг от друга и если вы сильно беспокоитесь на счет помех и потерь включите net_graph и подстройте ваши рейты, если не один из выше перечисленных вам не подошел.
Найдите соединение которое наиболее близко к вашему и попытайтесь применить к нему одни из приведенных ниже рейтов.
Помехи (сhoke) случаются когда сервер собирается послать данные клиенту, но не может потому что клиент еще не готов принять эти данные (основывается это на настройках клиентского рейта (rate) или серверовского sv_maxrate). Некоторые вещи, такие как клиентский рейт слишком низкий для данного числа игроков на сервере, само собой приводят к потере. Другие вещи не всегда, но тоже могут привести к потере, такие как когда клиент поднимает значение cl_updaterate слишком высоко.
Форум проекта sourceplay.ru
Часовой пояс: UTC+03:00
Начать новую тему Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. | Страница 1 из 1 | [ 14 сообщений ] |
|
Автор | Сообщение | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
qwist | |||||||||||
Зарегистрирован: 06:33 Суббота, 24 Сентябрь 2011 |
| ||||||||||
Зарегистрирован: 06:25 Суббота, 20 Март 2010 |
| ||||||||||
Зарегистрирован: 06:25 Суббота, 20 Март 2010 | |||||||||||
Зарегистрирован: 12:56 Понедельник, 22 Сентябрь 2008 | |||||||||||
Зарегистрирован: 05:30 Четверг, 21 Январь 2010 | |||||||||||
Зарегистрирован: 11:54 Пятница, 20 Ноябрь 2009 | |||||||||||
Зарегистрирован: 19:45 Понедельник, 03 Январь 2011 | |||||||||||
Зарегистрирован: 12:56 Понедельник, 22 Сентябрь 2008 | |||||||||||
Зарегистрирован: 05:30 Четверг, 21 Январь 2010 |
Часовой пояс: UTC+03:00 Кто сейчас на конференцииСейчас этот форум просматривают: нет зарегистрированных пользователей Какие рейты лучше для cssДля начала настройки, давайте разберёмся, что означает слово «Рейты»? Рейты CSS – это количество информации (байт), которые сервер может отправить клиенту, т. е. игроку. Здесь прослеживается прямая зависимость от скорости интернета игрока, поскольку от этого зависит, какое количество информации сможет принять канал. Итак, настройка рейтов CSS требует знания трех основных команд: rate — определяет максимальное количество передаваемых байт в секунду. cl_cmdrate — определяет количество действий, которые будут отправлены клиентом на сервер. cl_updaterate — определяет количество действий, которые будут отправлены сервером клиенту. Набор настроек для медленного интернета (модемное соединение, общественные беспроводные сети и прочее): А вот набор для высокоскоростного соединения (домашний кабельный интернет и похожее): Рейты CSS. Меняем что бы не было лаговЕсли сервер лагает меняем в конфиге рейты сервера на Для новой версии CSS Для старого 34 версии (33 Tick Rate Server ) Для старого 34 версии (66 Tick Rate Server ) Для старого 34 версии (100 Tick Rate Server ) Старый текс сообщения: Для новой версии CSS Для старого 34 версии (33 Tick Rate Server ) Для старого 34 версии (66 Tick Rate Server ) Для старого 34 версии (100 Tick Rate Server )
|