Сайт на клана x7pro - CS оптимизация и 100 FPS

Сървър (сървър) - Специализиран сървър в Интернет, разположен на някакъв компютър. Клиент - Играта се стартира на компютъра на играча. Клиентът се свързва със сървъра. По време на играта клиентът и сървърът обменят пакети данни чрез UDP протокола. Пинг (Ping) - Времето в милисекунди, за което пакетът достига сървъра до клиента и обратно. Латентност - Времето в милисекунди, за което се обменят данни между клиента и сървъра Клиент FPS - броят кадри в секунда в играта, показван на клиентът следи какво се случва на сървъра. Загуба - загуба на пакети поради проблеми с мрежовата връзка, обикновено възниква в случай на технически проблеми с интернет доставчиците. Задушаване - загуба на пакети поради липса на скорост на връзката между сървъра и клиента, може да възникне поради неправилни настройки.

FPS, Latency, Loss и Choke на клиента са основните параметри, които определят колко удобно ще бъде да се играе. Колкото по-ниска е латентността на клиента и колкото по-висок е FPS на клиента, толкова по-добре за него. Загубата и задушаването не трябва да надвишават 1-2, в идеалния случай 0.

Каква е разликата между ping и латентност? На първо място, фактът, че в процеса на обмен на данни е необходимо не само да се достави пакетът от сървъра на клиента и обратно, но също така е необходимо да се вземе предвид времето за обработка на пакета както на клиента, така и на сървъра. По този начин, латентност = ping + време за обработка на пакети от клиента + време за обработка на пакети от сървъра.

Пингът се вижда в последната колона на прозореца на браузъра на сървъра:

Забавянето може да се види, ако натиснете Tab по време на игра и погледнете в третата колона, а също и в долния десен ъгъл на екрана, като въведете net_graph 3 в конзолата

Много често тези две понятия се бъркат или по-скоро се наричат ​​латентностping, това е отчасти правилно, защото забавянето зависи от ping, но не трябва да забравяте за времето за обработка. В браузъра на сървъра обаче ping се нарича латентност, но както показва практиката, това, което виждате в прозореца на браузъра на сървъра, винаги ще бъде по-малко от латентността, която виждате, когато отидете на сървъра. В бъдеще, освен ако не е изрично уговорено, ще наричаме и двете пинг, като по-позната и удобна дума сред играчите.

Тъй като задачата на първата част на статията е да оптимизира клиента, ще приемем, че сървърът е конфигуриран идеално, т.е. няма да вземем предвид времето за обработка на пакети на сървъра. По този начин основните задачи са: намаляване на времето за преминаване на пакети между сървъра и клиента, намаляване на времето за обработка на пакети на клиента, увеличаване на FPS на клиента, борба със загубата на пакети при загуба и задушаване. Има няколко начина за решаване на тези проблеми.

1. Оптимизиране на мрежовите настройки на играта

Всички следващи променливи трябва да бъдат записани във файла config.cfg в папката cstrike или въведени в конзолата (за да може конзолата да работи в играта, стартирането трябва да е с параметъра -console) Да кажем веднага, че няма абсолютно оптимални стойности за клиента, много зависи и от сървъра (предимно от ping към сървъра).

cl_lc 1 - активиране на компенсация на забавяне. По подразбиране е 1. Препоръчително е да оставите 1.

cl_updaterate - задава броя на пакетите в секунда, получени от клиента от сървъра. За да играете в локална мрежа или на сървъри, където ping не надвишава 10-15, трябва да зададете 101 (ако имате пара, тогава 100, защото това е максимумът за пара). За да играете в интернет, трябва да го зададете в зависимост от ping на сървъра и от зададената стойност на скоростта.

Не се препоръчва да задавате cl_updaterate по-високо от това, което позволявавръзка и пинг към сървъра, защото може да се появи Choke, Latency ще се увеличи и ще започнат лагове.

cl_cmdrate - задава броя на пакетите в секунда, изпратени към сървъра от клиента. Изпращането на пакети към сървъра е по-рядко от получаването и размерът на пакета също е значително по-малък. Оптимална стойност = cl_updaterate+-10.

скорост - задава максималната скорост (в байтове/сек), на която пакетите ще се предават от сървъра към клиента. Препоръчително е да зададете стойностите в зависимост от вашата връзка. Така че оптималните настройки за различните типове връзки са:

Телефонен модем: скорост - от 1000 до 3500 cl_updaterate - от 10 до 20 cl_cmdrate - от 10 до 20

ISDN: скорост - от 4000 до 8000 cl_updaterate - от 20 до 40 cl_cmdrate - от 20 до 30

xDSL: скорост от 6000 до 20000 cl_updaterate - от 30 до 100 cl_cmdrate - от 30 до 100

T1/LAN: скорост - от 8000 до 25000 cl_updaterate - от 30 до 100 cl_cmdrate - от 30 до 100

Как да изберете стойност между "от" и "до" зависи от пинга (чист пинг, без забавяне между клиента и сървъра). Колкото по-малко е, толкова по-висока стойност може да бъде зададена. На играчите се препоръчва да зададат максималните стойности за връзката си, след това да отидат на сървъра и в случай на задушаване или висока латентност да намалят съответно cl_updaterate и cl_cmdrate до оптималната стойност. В съотношенията между rate, cl_updaterate и cl_cmdrate също е желателно да се вземе предвид теглото на един пакет. Тоест, ако например вашата скорост е 200 00 и cl_updaterate е 100, тогава максималното тегло на пакета е 20000/100 = 200 байта. 150-250 байта е оптималният максимален размер на пакета за CS 1.6, това съотношение трябва да се спазва. Например, за скорост от 8000, оптималният cl_updaterate би бил

ex_interp - стойностпериод (стъпка) на интерполация на данните за играта, получени от сървъра. По подразбиране 0.1 Показва колко точно всички данни за играта ще бъдат изведени на клиента. Например, ако вашият cl_updaterate е 20 и ex_interp е 0,1, тогава цялата информация за играта е позицията на всички обекти, други играчи и т.н. ще съвпада абсолютно точно с входящите данни на всеки 100 милисекунди или всеки втори входящ пакет. ex_interp не може да бъде по-нисък от 1/cl_updaterate! Например, с cl_updaterate 50, минималният ex_interp = 1/50 = 0,02 Ако напишете ex_interp 0 в конзолата, той ще бъде зададен на минималната стойност, тоест 1/cl_updaterate От една страна, намаляването на ex_interp допринася за по-точното определяне на позицията на всички обекти на играта - предимно други играчи. От друга страна, ако зададете високи cl_updaterae и ex_interp 0, когато играете онлайн, не всички други играчи ще актуализират позицията си на сървъра достатъчно често, което води до факта, че движението им ще изглежда рязко за вас. Това може да се дължи на редица причини, например те имат висок ping или понижена скорост или настройки на cl_cmdrate или сървърната променлива sv_maxupdaterate ще замени (ограничи) вашия cl_updaterate. Да приемем, че вашият cl_updaterate е 50 и ex_interp е 0,02, докато друг играч на същия сървър има ping 50. Той не може да актуализира позицията си повече от 1000/50 = 20 пъти в секунда. Получавате 50 ъпдейта и с вашия ex_interp 0.02 трябва да актуализирате позицията на друг играч 50 пъти в секунда и той не може да изпрати повече от 20 ъпдейта, поради което движението му ще ви изглежда като малки шутове. Ако имате cl_updaterate 50 и ex_interp 0.1, тогава трябва да актуализирате позицията му само 10 пъти в секунда, което е леснопредоставят. Между всяка от тези 10 актуализации позицията на играча ще бъде изчислена (интерполирана) по такъв начин, че движението им да изглежда възможно най-гладко. Като цяло препоръката за ex_interp е следната: задайте ex_interp 0 (което задава ex_interp = 1/cl_updaterate), ако други играчи забележимо се движат на малки удари, постепенно увеличете ex_interp леко, докато другите играчи се движат по-плавно . Освен това не се препоръчва да задавате ex_interp под вашата собствена стойност на ping, например, ако имате 50 ping, тогава не трябва да задавате ex_interp по-малко от 0,05

cl_allowdownload - Позволява изтегляне на файлове с игри от сървъра. Оставете 1 както е по подразбиране.

cl_download_ingame - Позволява изтегляне на лога на други клиенти, които са се присъединили към процеса на играта. Ако връзката е лоша, се препоръчва да зададете 0.

cl_allowupload - позволява качване на файлове с игри на сървъра. Има проблеми с връзката - задайте 0 и можете да играете без вашето лого.

2. Оптимизиране на други настройки на играта

Други настройки, благодарение на които е възможно да се намали както консумираният трафик, натоварването на процесора и да се увеличи FPS, така и да се направи играта по-удобна:

r_drawviewmodel 1 - активиране/деактивиране на чертежа на модел на оръжие

сl_nodelta 1 - активиране/деактивиране на делта компресия

max_shells 120 - Максималният брой черупки, които можете да гледате едновременно.

max_smokepuffs 120 - Работи като предишната променлива, само за дим и искри от слепи гранати.

fastsprites 0 - ниво на качество на спрайта (0 - най-доброто, 2 - най-лошото, но натоварването е по-малко)

cl_himodels 0 - качеството на моделите в играта

con_color "RRR GGG BBB" - цвяттекст в конзолата, стандартните RGB стойности (0-255) се използват за цвят

hud_fastswitch 1 - бърз избор на оръжие - доста удобна функция, като зададете 1, не можете да натиснете огън, когато избирате слот за оръжие.

hud_saytext_time 6 - определя колко време ще бъде съобщението на екрана.

2. Оптимизиране на настройките на ОС

Удобството на играта зависи не само от настройките на CS, но и от състоянието на операционната система като цяло.

Няколко съвета за избягване на забавяне в играта:

- Деактивирайте всички приложения, които използват ресурси за мрежова връзка: мениджъри за изтегляне, торент клиенти, eMule, DC++ и т.н. Дори работещ браузър с няколко отворени раздела може прилично да зареди както връзката, така и процесора. - Деактивирайте всички приложения, които използват ресурси на процесора. - Ако има нужда да оставите работещи приложения, които използват ресурси по един или друг начин, тогава е необходимо да настроите тези процеси на нисък приоритет. За лицензирани клиенти има такова необходимо приложение , това е самият Steam, който дори във фонов режим товари процесора. Така че всички лицензирани клиенти, които забелязват периодични спадове на FPS по време на игра, трябва да поставят нисък приоритет на процеса steam.exe Освен това, ако приложението консумира трафик, то също трябва да бъде ограничено. Много p2p клиенти имат настройки за ограничаване на скоростта. - В някои случаи, когато FPS падне, задаване на нисък приоритет на самия CS (процес hl.exe)

- Ако процесорът е дву/четириядрен, тогава се препоръчва да настроите картографирането на процеса hl.exe само на 1 ядро.

Първо отидете на cs и напишете командата net_graph 3 в конзолата Числата се появяват в долния десен ъгъл и показват 60 fps =)

За Ати сКонтролен панел, щракнете с десния бутон върху работния плот - свойства, опции, разширени, 3D, OpenGL, специални. -Изчакайте вертикална синхронизация - плъзгач до най-лявата позиция.

2. След това трябва да зададете максималния херц на монитора.На LCD мониторите той е ограничен до 75 херца.

3. Също така трябва да регистрирате херца в самата игра, това се прави по следния начин: за собствениците на Steam първо отидете в секцията "Моите игри", щракнете с десния бутон върху играта counter-strike и изберете свойства. След това натискаме бутона "задаване на опции за стартиране" и пишем следната фраза -freq 75 или 100 в зависимост от херца на вашия монитор и щракнете върху OK.

За собствениците на лявата версия на cs, щракнете с десния бутон върху етикета и добавете същия надпис -freq75 или -freq 100