Начало » ReHLDS и допълнения » Рейт настройка за CS 1.6 [Re]HLDS
Рейт настройка за CS 1.6 [Re]HLDS
Потребителят е извън линияPaTaTyu
Тема: Рейт настройка за CS 1.6 [Re]HLDS » 11.08.2020г. в 11:52:20ч. #0
  • Контакти: KpuTuk#4751 Изпрати лично съобщение до "PaTaTyu"
Рейт за стари и нови билдове, и ReHLDS


Автор на статията: gudaus

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

Първо, нека да разгледаме терминологията.


1. sv_maxrate и sv_minrate - максималният / минималният брой байтове в секунда от времето, който сървърът изпраща на клиента, включително загуба на пакети.

2. sv_minupdaterate и sv_maxupdaterate - минимална / максимална честота на изпращане на актуализации(пакети) от сървъра до клиента. Засяга FPS. Ако сървърът изпрати на клиента, например, 40 актуализации за 1 секунда, клиентът ще има 40 или по-нисък FPS.

3. loss - броят на изгубените пакети от последните 100. Пакетите могат да бъдат загубени поради задръстване на канала или лоша комуникация между сървъра и клиента. Проблемът е в 90% от случаите невъзстановим.

4. choke - броят на пакетите, изпращането на които е било забавено от сървъра, за да не надвишава ограничението за честотна лента, зададено от sv_minrate, sv_maxrate. Също така зависи от sv_minupdaterate и sv_maxupdaterate. Причина - сървърът генерира твърде много трафик. Този проблем може да бъде решен с настройките.

Как да настроите рейт?


Настройването на рейт е индивидуален въпрос за всеки сървър, в зависимост от хардуера, канала, билда, зареждането(интернет връзката), така че търсенето на някакъв "оптимален" в Интернет е интересна дейност, но уви, не е много полезно.
По-добре е да го направите сами според следните принципи:

1. sv_maxrate 20 000 на билдове 5***.
sv_maxrate 50 000-100 000 на билдове 6***.
На билдове 5*** беше невъзможно да се инсталира по-високо от 20 000 можете да напишете произволно число в конфигурацията, дори милион, но в действителност максималният ще бъде 20 000.
На билдове 6*** стана възможно да се увеличи до 100 000, но ако комуникационният канал не е много добър, тогава има смисъл да се търси оптималната стойност в диапазона от 50 000 - 100,000.

2. 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<sv_maxrate then rate=rate;
if rate>sv_minrate then rate=rate;
if rate<sv_minrate then rate=sv_minrate;


sv_minupdaterate 20-30. 20 е по подразбиране, 30 е разумен минимум за човешкото око.
sv_maxupdaterate 60 - 101 за билдове 5*** и sv_maxupdaterate 60 - 102 за билдове 6***

Сега можете да започнете да задавате стойности.


Отваряме server.cfg, с любимият ни текстови редактор(Notepad++) и първо настройваме всичко на максимум.

За билдове 5*** настройваме така:

Code
1
2
3
4
sv_maxrate 20000
sv_minrate 100000
sv_minupdaterate 30
sv_maxupdaterate 101


За билдове 6*** настройваме така:

Code
1
2
3
4
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*** трябва да редактирате твърдо скоростта към клиента чрез sv_minrate>sv_maxrate, а при билдовете 6*** можете да експериментирате със sv_maxrate 100 000 sv_minrate [20 000 - 100000].
Силно ви обезкуражавам да задавате стойности над 100 000 можете също да намалите стойността sv_maxupdaterate.
Защо да изпращате актуализации и пакети към клиента, ако те все още не преминават? Но най-хубавото е, че можете да премахнете choke и freezes, без да намалявате sv_maxupdaterate.

3. Ако сте се отървали от choke и freezes, тогава можете да опитате да намалите бавно скоростите, за да не претоварите канала. Понижете sv_minupdaterate до 20 например, и намалете sv_minrate малко по малко.

Въпроси и отговори:

Въпрос: Видях, че при компилации 6*** се задават sv_minrate 100 000, sv_maxrate 25 000, както на старите, а в статията се казва да се направи точно обратното. Къде е истината?
Отговор: За да няма объркване, нека си припомним правилото, за изчисляване на рейт:
if
rate>sv_maxrate then rate=sv_maxrate;
if
rate<sv_maxrate then rate=rate;
if
rate>sv_minrate then rate=rate;
if
rate<sv_minrate then rate=sv_minrate;


Това е еднакво за всички билдове.

В случай на 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. За Steam и клиентите на Non-Steam това е оптимално, за клиентите на старите билдове (със бустовете), клиентският rate най-вероятно ще стане 25 000, тъй като това е точно стойността, най-често се препоръчва за собствениците със бустовете(mmtimer), тя може да бъде увеличена чрез увеличаване на 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 на steam, 30 000 на non-steam.
sv_minrate 10 000, sv_maxrate 50 000 => rate между 10 000 и 50 000 на steam, 25 000 на non-steam.

Откъде идва 25 000? Тази стойност най-често се задава от собствениците със бустове(mmtimer) за клиента.

В случаите с билдове 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? Собствениците с бустове(mmtimer) за клиента обикновено поставят 25 000, на сървъри с build 5*** тъй като поддържа само sv_maxrate <= 20 000

Въпрос: Какво е Freeze и как да разберем дали съществува?
Отговор: Freeze е замръзване на играта превод от английски. Това е кратко забиване на картата която играете и играта замръзва, след което играта продължава.
https://sun9-41.userapi.com/c857416/v857416143/6cc16/IS1SEftUMNI.jpg

Обикновено има 2 ситуации - или има много малки замръзвания на всяка - делителна секунда, или има малко замръзвания за всеки - 1-2 секунди.
На диаграмата net_graph 1/2 изглежда като рязък скок на лилавата лента нагоре.


Последна промяна от PaTaTyu на 11.08.2020, 12:26:24 pm, променена общо 3 път/и
Signature from » PaTaTyu «

Потребителят е извън линияCODEX / SC-Маняк
Re: Рейт настройка за CS 1.6 [Re]HLDS » 11.08.2020г, 15:32:12ч. #1
Доста полезна тема! Браво, колега!

Signature from » CODEX «
https://i.postimg.cc/CnTns6S6/409020448806797312.gifhttps://i.postimg.cc/tJf3gBQ6/oPIEca1.gifhttps://i.postimg.cc/CnTns6S6/409020448806797312.gif


https://i.imgur.com/nhbUojd.png


https://i.imgur.com/msT3JhR.png
https://i.imgur.com/I9RWGdo.gif
  •  Приятелски Банери Скрий


  •  CS Global Offensive

  •  Списък с членовете Скрий
  • Последно регистриран: Hristoff
    Кой е на линия: Няма потребители през последните 10 минути.
    Общо на линия:
    Админи: 0
    Потребители: 0
    Гости: 10
    Общо на линия: 10