Создаем свой конфиг. Звук!
Переходим к следующей компоненте кофнига - звуку. Тут особенно не разгуляешся, но тем не менее есть где поиграть настройками.
Недооценивать звуковую компоненту ДОДСа в корне не верно. При игре с топ европейскими командами недостаточное уделение внимание звукам чревато размазанной по стенкам самооценкой и скорострельностью около 10 фрагов за раунд. Если вы используете наушники-капельки при игре, то это статью можете даже не читать - никакие настройки вас не спасут!
В идеале следует использовать мониторные стерео или 5.1+ наушники. Хорошая звуковая карта желательна, но только в сочетании с соответствующими наушниками. На этом о железе мы говорить прекращаем и переходим к самим настройкам.
Идеология настроек очень проста: вам нужно слышать полезные звуки, такие как шаги, падение гранат, вхождение гранаты в гранатоприемник стрелка(не знаю как еще обозначить этот процесс!), стрельбу...
Все остальные звуки вам слушать не нужно, поэтому ваша задача выделить эти звуки относительно прочих(ambientsound-звуки окружающей среды). Вопрос этот щекотливый и многие складывают головы(аккаунты) на этом тернистом пути. Любое выделение этих звуков внутриигровыми настройками карается. Поэтому тут у нас есть не очень большой простор. Самый простой из легальных способов избавиться от солидного количества звуков окружающей среды - поставить качество звуков в аудио настройках игры на минимум(было время когда кальт игрался на пцв и от высококачественных звуков завывающей окружающией среды за полчаса я сходил с ума). Есть и другой способ уделить большее внимание нужным вам звукам. Он не так популярен в силу того что для его реализации вам понадобится хорошая звуковая карта и пару дней на то чтобы разобраться с настройкой драйверов под нее. Суть способа заключается в усилении частот на которых звучат нужные нам события. Делается это очень просто и очень долго в тоже время: вы записываете все звуки которые вам интересны (с помощью того же фрапса например) и смотрите в специальных программах их АЧХ, усиливаете соответствующие частоты на эквалайзере вашей звуковухи. Этим способом пользуются многие французские и финские игроки. Но, как вы уже догадались, он не очень простой. Что касается более простых настроек то, первым делом я рекомендую отключить все казуальные звуки игры:
dod_playachievementsound 0 отключение звуков достижений
dod_playwinmusic 0 отключение звуков победы
dod_playrivalrysounds 0 отключение звуков доминации
dod_commentary_firstrun 0 отключение звуков напутствия секси голоса в начале раунда
Прослушивание оных(особенно если речь идет о разгромных победах или поражениях) может свести с ума любого даже самого спокойного игрока.
snd_mixahead 0.1 задержка при смешивание звуков
На интегрированных звуковых картах может возникнуть проблемы с фпс при обработке одновременных звуков.Увеличивайте значение если фпс проседает при пальбе и взрывах...
snd_musicvolume 0.0 громкость музыки
Эта команда непременно понадобится вам если вы привыкли менять громкость игры(например на разогреве, пабликах и т.д.)
snd_digital_surround 0 неиспользование программного преоброзования "звука вокруг"(1 - звук обрабатывается только звуковой картой)
стоит использовать для тех у кого мощная звуковуха
Всю это вам не пригодится, если во время игры у вас в ТС или вентрилло стоит шум и гам. Так что начинайте с того, что подкарауливайте крикунов в темных подворотнях. Это даст вам и вашей команде куда больше чем любые заморочки с АЧХ!
Статья взята с сайта http://www.dayofdefeat.su
Создаем свой конфиг. Мышь!
Поскольку об этом меня спрашивают чуть ли не чаще всего, когда дело касается конфигов, я подробно остановлюсь на настройках мыши.
Не хотелось бы, чтобы эта статья превратилась в рекламу и обсуждение конкретных девайсов, тем более, что подобных статей можно нагуглить великое множество. Здесь мы будем говорить прежде всего о внутриигровых настройках сделающих для вас игру более комфортной.
Тем не менее, я настоятельно рекмендую вам обзавестись необходимыми аппаратными средствами, а именно мышью удобно лежащей в вашей руке, ковром и клавиатурой с удобной раскладкой и мягкими клавишами. Опыт показывает что удовольствие которое вы получите от игры на качественных девайсах стоит тех денег которые вы на них потратите.
Мыши обладают различными характеристиками, подробно на их изучении останавливаться не будем. С помощью драйверов и сторонних програм-помошников вы можете менять широкий спектр значений этих характеристик. Единственное значение на котором хотелось бы заострить внимание - dpi! dot per inch(точка на дюйм) - обозначает чувствительность сканирующего поверхность элемента(оптического или лазерного сенсора). Таким образом dpi400 - означает что на каждых 2,5 см ваша мышь "видит" 400 различных точек. Чем выше dpi тем точнее мышь передает движения вашей руки.
При увеличении dpi сообразно увеличевается отклик на движение мыши. Т.е. при увеличении dpi в 5 раз(с 400 до 2000) вам необходимо будет двигать мышь по ковру в 5 раз меньше для прохождения курсором того же расстояния. Старайтесь использовать максимальную точность dpi сенсора мыши и регулировать чувствительность на программном уровне. При использовании разрешения 1280*960 и 5 см ковра используемых для полного разворота чувствительности сенсора 800dpi вам хватит за глаза, но нет никакой ошибки сделать это разрешение больше необходимого.
Основным параметром для настройки мыши является, конечно же, ее чувствительность. Чувствительность по сути, есть величина отклика курсора на экране на движение мышью. Этот отклик может зависеть от многих факторов. Мы будем рассматривать только те которые касаются нашей с вами любимой игры.
Чувствительность мыши внутри игры определяется по следующей формуле:
Чувствительность мыши = sensitivity + ( постоянная величина^m_customaccel_exponent ) * m_customaccel_scale
отсюда видно что отклик мыши определяется переменной sensitivity и слагаемым зависящим от ускорения. Ускорение мыши - зависимость перемещения курсора не только от перемещения мыши но и от того с какой скоростью это перемещение производится. Ниже представлены все переменные которые могут вам пригодится в той или иной степени
sensitivity чувствительность мыши
чем выше значение тем быстрее перемещается курсор. Рекомендовать тут значение бессмысленно так как все зависит от прочих ваших настроек. Чем меньше чувствительность - тем точнее ваши движения и тем чаще вы будете попадать туда куда целитесь.
zoom_sensitivity_ratio чувствительность мыши в режиме включенного снайерского прицела
По большому счету важно лишь для снайперов и тех кто часто снайперки подбирает. Параметр который в формуле sensitivity становится дополнительным множителем при включении снайпером альтернативы. При использовании значения по умолчанию ваша чувствительность в этом режиме не меняется.Не рекомендуется использовать значение меньше 1.
m_customaccel Ускорение (0 - отключено, 1- включено, 2 - включено с возможностью настроить m_yaw, m_pitch)
Включение/отключение акселерации. Подробнее об ускорении ниже. Параметр 2 смысла ставить нет с тех пор как в некоторых турнирах запрещено менять m_yaw и m_pitch.
m_pitch множитель сенсы по вертикали
m_yaw множитель сенсы по горизонтали
m_customaccel_exponent множитель передвижения мыши(увеличение значения ОЧЕНЬ сильно влияет на ускорение курсора)
m_customaccel_max максимальное значение множителя передвижения мыши (от 0 до бесконечности)
m_customaccel_scale Пользовательское значение ускорения курсора
m_forward множитель сенсы по вертикали(для перемещения с помощью мыши)
m_side множитель сенсы по горизонтали(для перемещения с помощью мыши)
Эти две команды скорее для гордых обладателей ортодоксальных взглядов на процесс управления в игре(вроде kengur'a)
m_mouseaccel1 Начальный порог ускорения мыши в Windows (2x перемещение)
m_mouseaccel2 второй порог ускорения мыши в Windows (4x перемещение)
m_mousespeed множитель скорости мыши в Windows
Используйте пороговое ускорение если вы попадаете во врагов слишком часто и хотите усложнить задачу
Перейдем, собственно, к настройкам.
Как легко догадаться в зависимости от вашего класса настройки мыши должны отличаться.
В идеале для любого класса необходимая чувствительность мыши, это когда комфортными движениями кисти вы можете поворачиваться на 180 градусов как в одну так и в другую сторону.
Поддержка
Откажитесь от ускорения и уменьшайте чувствительность пока вы в состоянии спокойно контролировать отдачу. Если при этом вы замечаете что вы можете развернутся только за несколько "фрикций"(переставлений руки с мышью на ковре) то, значит, дальнейшее уменьшенее сенсы только ухудшит дело. Будьте уверены что вашего ковра хватает для того чтобы расстрелять половину обоймы стг из положения стоя и при этом вы можете контролировать прицел на модели врага на средней дистанции. Если вы любитель пострелять из альтрнативы не забывайте об этом в омент подбора чувствительности.
Стрелок
Так как контроль отдачи тут не настолько важен как у поддержки вы можете позволить себе более низкую чувствительность. Если вы привыкли стрелять фликшотами(т.е. доводить прицел в момент нажатия на кнопку "пли") то вам несомненно понадобится акселерация, так как не бывает фликшотов за 2+ фрикции. Вы можете использовать ускорение в Windows а можете за счет внутренних переменных. Не забывайте что при очень низкой чувствительности у вас обязательно возникнут проблемы с контролем отдачи если вы любитель подбирать трофейные БАРы и СТГ. Предоставим стрелку WanteD! И сборной России, Роману XRM Блистанову:
Низкая или умеренная акселерация на основе драйверов девайса (например logitech позволяет выбирать между 3 положения акселерации) дает довольно комфортный аим стрелку, т.е. у васесть низкая сенса для точной стрельбы и вы без труда можете повернуться на 180 градусов, возможно страдает стрельба фликшотами, но если у вас нормальный интернет, подсекать, доводить прицел или убивать врага при набегании на прицел не составит труда. НО, сделать такие же настройки на другом компьютере, тем более без драйверов, практически не возможно или занимает слишком много времени, перед предстоящим ланом я отказался от акселерации, но пришлось низкую сенсу компенсировать поворотами лево/право на клавиатуре (мне удобны Z и X) и поднять значение cl_yawspeed c 210 до 500 (оговорюсь сразу правилами CB или ESL эта команда не запрещена) вообще великая сила привычки, но я переучился где-то за неделю игры.
Снайпер
Снайперские настройки ближе к настройкам стрелка т.к. отдачу контролировать практически не нужно (пистолет можно даже не обсуждать). В режиме прицеливания чувствительность обычно оставляют той же, либо поднимают чуть выше единицы.
Не бойтесь менять настройки мыши. Чтобы окончательно привыкнуть к новым настройкам вам понадобится меньше недели игры(обычно 3-4 дня).
На последок приведу собственные настройки:
Мышь: Logitech MX518
Ковер: SteelSeries 5l
dpi: 1800
Чувствительность в Windows: 6/11
Чувствительность в игре: 0.7
Ускорение: отсутствует
Статья взята с сайта http://www.dayofdefeat.su
Параметры запуска игры
Начнем с азов... Азовское море....
В общем перед тем как ставить новый конфиг надо удалить последствия старого. Для этого удаляем старый конфиг из папки dod\cfg запускаем стим открываем раздел "игры" там находим додс, щелкаем правой клавишей и выбираем в открывшемся меню "настройки" (опции) там находим параметры запуска игры (Set launch options) удаляем оттуда все что есть и вписываем -autoconfig сохраняем, запускаем игру, выходим. После этой процедуры можно устанавливать новую строку запуска и новый конфиг.
Настраиваем видеоплату - идем в панель управления находим настройки монитора - свойства - параметры - дополнительно, находим настройки видеоплаты, там находим настройки 3D графики и обязательно отключаем v-sinc - вертикальную синхронизацию (или синхроимпульс) и обязательно ВКЛЮЧАЕМ трехлинейную буфферизацию - trilinear buffer.
Параметры запуска игры
1.) Открываем стим
2.) Правой кнопкой на "Day of Defeat : Source" в открывшемся меню выбираем "Properties"
3.) в разделе "General" выбираем "Set Launch Options"
-novid - отключение видеозаставки в начале игры
-console - включить консоль
-noforcemaccel -noforcemspd -noforcemparms - отключение акселерации мышки в игре
-heapsize (размер в байтах) - принудительно заставить игру использовать больше памяти возможные значения зависят от объема ОЗУ:
4gb - 2097152
3gb - 1572864
2gb - 1048576
1gb - 524288
512mb - 262144
256mb - 131072
128mb - 65536
Пример: -heapsize 1048576 - для тех у кого памяти 2 Гб
-dxlevel (номер) какую версию ДиректХ использовать игре возможные легальные значения: 98, 95, 90, 81, 80 Значения 70, 60 НЕ ЛЕГАЛЬНЫ.
Пример: -dxlevel 95
-refresh (номер) - параметры частоты регенерации монитора, для LCD 60 и 75 для CRT 100, 85, 75
Пример: -refresh 60
-high или -low задают приоритет процесса hl2.exe -low - низкий, -high - высокий. Иногда это помогает выжать капельку фпс
-nosound - отключение использования игрой звуковой платы на случай зависания игры (используют только при серьезном креше связанном с просчетом звука) -windowed или -sw - игра в оконном режиме
-full - игра в полноэкранном режиме
-autoconfig - автоконфигурация игры
+ - для запуска отдельных команд или конфигов через консоль
Пример: +exec ***.cfg - запуск конфига с именем *** +mat_antialias 0 - отключение антиаляйсинга
-32bit - запуск игры в 32-х битном режиме на 64 битных процессорах
-w - размер экрана по ширине
-h - размер экрана по высоте
-nocrashdialog - отключение сообщений об ошибках
-nosync - отключение вертикальной синхронизации
-condebug Запись лога консоли в console.log файл
-gl Включить OpenGL рендеринг
-nojoy Disables joystick to reduce memory usage. (Отключить использование памяти для джойстика)
-32bpp Включить 32 битный рендеринг.
-16bpp Включить 16 битный рендеринг. (Не рекомендуется)
-threads - поддержка многоядерных процессоров. 2 - двухядерный 4 - четырехядерный
Пример: -threads 2 //Core2Duo
Пример строки запуска для компутера с монитором LCD 19' 60 Hz 2 Гб ОЗУ 32bit-процессором:
-dxlevel 95 -w 1280 -h 1024 -console -nojoy -noipx -novid -condebug -nocrashdialog -heapsize 1048575 -full -noforcemsp
Статья взята с сайта http://www.dayofdefeat.su
Создаем свой конфиг. HUD.
Продолжение цикла статей по настройке конфига, на этот раз будет посвещано настройке HUDа.
Здесь я буду говорить только о той части ХУДа, которая непосредственно касается конфига. Основная же настройка ХУДа производится с помощью редактирования файла dod/scripts/hudlayout.res подробнее об этой части настройки худа вы можете прочесть на замечательном англоязычном сайте.
hud - head-up-display - способ отображения информации на экране.
ДОДС, вопреки расхожему представлению, это не только стрельба, это еще и огромная работа с информацией, ХУД отвечает за визуальную составляющую инофрмации.
Работа с миникартой.
Важность миникарты сложно переоценить, несмотря на то, что большинство игроков паблика убеждены что миникарта только загораживает жизненно необходимый угол экрана. Умелое владение миникартой позволяет вам избегать ненужных тимкилов, позволяет сосредоточить внимание только на тех областях откуда возможно появление угрозы ну и конечно своевременно помогать товарищам по команде. Само наличие миникарты еще не гарантирует вам скиллбуста. Необходимо настроить ее и научиться пользоваться.
Вот некоторые настройки миникарты:
overview_health 1 (значение по умолчанию) Показывает здоровье игроков на миникарте
Убирать не стоит. Полоска здоровья занимает мало места, при этом подсказывает сколько вашим товарищам осталось жить.
overview_locked 1 Поворачиваемость карты
В незакрепленном положении(0) - карта всегда расположенна так что ваш взгляд направлен на ее север. Дело привычки, но мне кажется удобней значение 1.
overview_names 1 Показывает имена игроков на миникарте
Это команда полезна только по началу, когда вы следите за игрой, где какой партнер и так понятно. Именна тиммэйтов занимают довольно много места, поэтому рекомендую использовать значение 0.
overview_tracks 1 Показывает след передвижений игроков на миникарте
Подобно предыдущему пункту может быть полезна лишь поначалу. Когда вы следите за действиями партнера, след становиться очевиден и только нагружает карту дополнительной информацией.
overview_alpha 1 Прозрачность миникарты(0 -прозрачная, 0.5 - полупрозрачная, 1 - не прозрачная)
Для тех, кто все-таки надеятся получать информацию и из области за миникартой. Делаете карту полупрозрачной или почти прозрачной используя малые значения переменной(например 0.1). Миникарту само собой вы будете видеть хуже, зато если что либо шивельнется в этом углу, вы, конечно же, будете в курсе.
overview_zoom 2.1 Массштаб миникарты
Прицел
cl_crosshair_scale масштаб прицела (чем больше значение тем меньше прицел на экране)
Размер прицела регулируйте по собственному вкусу. Не советую играть с большими прицелами в виде точки(заслоняют модель на больших расстояниях), и с маленькиими прицелами в види перекрестия(те же причины)
cl_crosshair_alpha прозрачность прицела 0...255 (0 - прозрачный, 255 - сплошной)
Ставить нужно максимум - прицел будет заметнее.(С этой командой бывают проблемы, значение меняется - вид прицела не меняется)
cl_crosshair_file "crosshair6" файл прицела(может быть кастомным). Кастомные прицелы не допускаются к использованию при переменной сервера sv_pure 2, т.е. для всех турнирных серверных конфигов.
cl_dynamic_crosshair 1 изменение размеров прицела при беге, 0 - не меняется.
еще одна переменная значение которой нужно выставлять в зависимости от предпочтений, подавляющее большинство игроков играют со значением 0.
Цвет прицела.
cl_crosshair_red ;cl_crosshair_green ;cl_crosshair_blue
примеры:
0, 0, 0 - черный
255, 0, 0 - красный
0, 255, 0 - зеленый
0, 0, 255 - синий
255, 255, 255 - белый
В принципе можно менять цвет в зависимости от карты. Я предпочитаю белый, хотя на некоторых картах он не так хорош. Рекомендую не использовать темные цвета - их плохо видно.
Помимо миникарты и прицела есть еще несколько переменных отвечающих за визуальную информацию:
Прочие параметры:
hud_deathnotice_time 6 Время отображения фрагов в секундах.
В идеале должно быть равно времени между спаунами на каждой карте, что бы можно было как можно точней оценивать число живых соперников. Я рекомендую поставить это время чуть больше, особенно если рамки отображения убийств у васменьше чем по умолчанию. Оптимальное значение 10-12. Значимость этой команды трудно переоценить.
hud_drawhistory_time 5 Время отображения игровой истории в секундах.
Информация о захватах флагов и полученных очках не так важна как о фрагах. Не особенно нужна, но и не безполезна. Так что оставляем дефолт.
hud_saytext_time 12 Время отображения игрового чата в секундах(0 - не отображаются)
hud_centerid 1 Показывает имя дружеского игрока при наведении на него прицела (0 - не показывает)
cl_autorezoom 1 Автовозврат после выстрела в вид с прицелом для снайперки.
cl_autohelp 1 Показывает помощь немощам (0 - для тех кому помощь не нужна)
cl_showhelp 1 Показывает помощь немощам (0 - для тех кому помощь не нужна)
cl_showpluginmessages 1 Показывает сообщения плагина администрирования (0 - для тех кому не нужно)
hud_fastswitch 1 Быстрая смена оружия
hud_takesshots 1 Сохранение скриншотов со статистикой в конце раунда
hud_classautokill 0 Отмена суицида при смене класса
hud_capturepanel 0 Отключить панель прогресса захвата двойных флагов
cl_identiconmode 2 Отображение иконки над головой тиммейтов 0 - не отбражать, 1 - отображать при наведении прицела, 2 - всегда отображать
HUD - Одна из самых важных пользовательских настроек. Умело настроенный "под себя" ХУД принесет комфорт и сделает процесс ориентирования во время игры гораздо проще.
Следующая статья будет посвещена настройкам мыши, клавиатуры и скриптам.
Статья взята с сайта http://www.dayofdefeat.su
Создаем свой конфиг. Сеть.
Конфиг индивидуален. Вы, конечно, можете использовать чужой конфиг, но гораздо правильней сконструировать свой собственный. Эта статья, надеюсь, поможет в этом не самом простом деле.
Конфиг - то, что сделает игру в додс удобней именно для вас. Он не принесет вам решающего приемущества в турнирной игре, но повысит удовольствие от игры и сделает многие вещи комфортнее.
Есть несколько правил, которые помогут вам, не сбиваться с собственного пути на путь толпы.
1. Не верьте легендам. Огромное число топ игроков не-имеет-ни-малейшего-представления-о-том-как-устроен-конфиг. Они слепо копируют файлы нюкера или томску не понимая что значат 90% команд в этом кфг. Будьте умнее. Для вас должен быть лишь один авторитет - http://developer.valvesoftware.com/wiki/Main_Page
2. Не бойтесь проверять. Можно сто раз услышать, но достаточно один раз запустить игру и проверить изменение значения чтобы понять суть той или иной переменной.
3. Не используйте запрещенные команды. Если правила какого либо соревнования запрещают изменений значения консольных переменных(console variable=cvar), то использование оных повлечет штрафные санкции при обнаружении - это может перечеркнуть все старания и тренировки проведенные вами и вашей командой. К тому же опустит репутацию команды ниже плинтуса. Поскольку ваша цель, эффективная игра на турнирах, нет никакого смысла привыкать использовать эти команды и на тренировках. Привыкайте играть с тем же конфигом с которым будете участвовать в турнире
4. Не переусердствуйте. Знайте меру в эксперементировании. Помните, что от добра добра не ищут. Если вам комфортно с дефолтным конфигом - не меняйте ничего!!! Пару вечеров посвященных индивидуальным настройкам конечно не скажутся на общем тренировочном процессе, но если вы будете заниматься этим круглый год, это будет означать что что вы идете не по той дорожке.
Эта статья открывает небольшой цикл статей посвященных конфигам и будет посвещена главной его части - сетевым настройкам.
Додс - онлайн игра, а значит в процесс игры вовлечено ваше соединение с интренетом. Задача конфига, в этом смысле, - оптимизировать сетевые настройки под большинство серверов. Настройки для российских пабликов и европейских КВ серверов, естественно должны отличаться. Здесь мы будем говорить о настройках для тренировок и игр с европой.
МЫ - счастливые обладатели российского интернета. А это значит, что наше интернет соединение не стабильно и чем ближе к вечеру тем ситуция ухудшается(каналы провайдеров забиваются, клиентские - сужаются).
Перейдем к самому интересному - командам.
net_graph - переменная предназначенная для отслеживания всех сетевых параметров игры. Она может иметь несколько значений:
0 - нет отображения
1 - только текстовые значения(зоны 3,4,6,7)
2 - зоны 8 и 9 прогрузка и значения интерполяции
3 - зоны 1 и 4 история прогрузки и процент потерь пакетов при соединении.
4 - зона 5 показывает сетевую статистику сервера
net_graph 1 - является обязательным параметром для игры на некоторых соревнованиях(например ESL), ну а нам с вами поможет разобраться что к чему с нашими настройками.
Как вы знаете, сетевой код работает по системе клиент-сервер. Где сервер обменивается пакетами с информацией со всеми клиентами. Каждый пакет содержит "мгновенную фотографию" игрового мира, нажатые клиентом клавиши и т.д.
rate "value" - число байт которые каждую секунду может получать сервер от клиента. По сути ширина канала клиент-сервер выделяемого из интернет канала пользователя. В наше время только любители модемов должны оставлять эту ширину небольшой. 25000-30000 вполне достаточно для любого не модемного интернета.
cl_updaterate "value" - число пакетов которые клиент принимает от сервера в секунду. Чем больше значение, тем больше будут совпадать картинка на клиенте и на сервере. Одновременно с этим возрастает нагрузка на канал. При низком rate канал может не выдерживать. Например если вы используете cl_updaterate 100; rate 10000 вы будете получать гарантированные чоки практически на любой карте. Чоки(choke) - число пакетов которые не приходят от сервера за одну секунду.
cl_cmdrate "value" - число пакетов которые клиент отправляет на сервер. Полный аналог cl_updaterate. Число пакетов которые не дошли до сервера в секунду называется лоссами(loss)
Как подобрать правильные настройки именно для своего коннекта?
Ставьте рэйт 25 000 и максимальные апдейт и цмд. И играйте с включенным нетграфом 1(на европейских серверах). По ходу пцв наблюдайте за значениями 7 зоны нетграфа. Запоминайте значения центральных цирф. Т.е. например на немецком сервере у вас эти значения держутся на 95 и иногда проседают до 80. Это значит что ваш коннект не держит такие высокие настройки и часть ваших выстрелов уходит в молоко. Ставьте ваши рэйты на чуть меньшие значения. в нашем случае это будет cl_updaterate 75; cl_cmdrate 75 и следите снова. Повторяйте пока ваш коннект не будет держать стабильные сетевые настройки (люфт в 5 чоков-лоссов будет всегда, на него внимание не обращайте). Как ни странно, если вы играете без интерполяции, то ваши сетевые настройки зависят от того какой фпс может держать ваш компьютер. Т.е. Если фпс больше 100 - вам не о чем беспокоиться, но если меньше, то будет происходить вот что: допустим ваш компьютер держит стабильные 50 фпс. Но при этом вы используете рэйты 25000 75 75. Это значит что от сервера вам приходит 75 картинок в секунду, а ваш компьютер показывает вам только 50. Отсутствие интерполяции означает что клиент лишние кадры просто выбросит, остававив число отрисованных кадров в 7 зоне нетграфа равным числу фпс. А вместе с выброшенными кадрами теряется информация о звуках выстрелов, перемещениях соперников и т.д. Учтите, что европейские серверные конфиги для учатстия в турнире ставят ограничения на минимальные сетевые натсройки 15000 40 40, а это значит, что, если вы зайдете на сервер с меньшими значениями, они, тем не менее, примут вышеуказанные значения.
Итог: Используйте максимально высокие сетевые настройки для игры которые вам позволяет иметь ваш компьютер и провайдер - так информация которую вы будете получать будет честнее и играть вам будет комфортнее. Настройки на которых я остановился (коннект: Москва, корбина) 25000 66 66.
Лерп и интерполяция.
Так же вы можете использовать команду setinfo cl_interpolate 0 - которая является полным аналогом сочетания cl_interp_ratio 0; cl_interp 0. Но позволяет играть без интерполяции на серверах с произвольными значениями sv_min_interp_ratio.
Есть еще несколько команд, значение которых можно менять в тех или иных случаях, но я бы рекомендовал оставлять их по умолчанию:
cl_predict //1 или 0, предсказание действий игрока для того чтобы передвижения и стрельба игрока начинались сразу же после нажатия на кнопку, а не после того как подтверждение о действии придет с сервера
cl_smooth //1 или 0, сглаживание ошибок предсказания, имеет смысл ставить только с cl_predict 1
cl_resend //время в секундах между попытками наладить соединение клиента с сервером, по сути - время фризов(зависаний)
cl_timeout //время в секундах после которого клиент, не получив пакет от сервера, дисконнектиться (30 по умолчанию)
Плюс полезной может оказаться нижеследующая команда, которая оградит вас от скачеваемых с каждого паблика звуков квейк.
cl_downloadfilter //файлы которые вы можете скачивать, all - все файлы, nosounds - все файлы, кроме звуковых файлов, none - никакие.
Еще раз напомню, сетевые настройки - главная, но достаточно простая часть вашего конфига. Постарайтесь настроить все сами.
В дальнейших частях этого цикла статей вы узнаете о некоторых других настройках конфига, таких как: графика, бинды, скрипты, мышь, звуки...
Статья взята с сайта http://www.dayofdefeat.su
О lerp и его особенностях
Автор: Landdropper
Как вы знаете, после летнего обновления сетевой код DoD:S был изменен. Появилось несколько новых переменных и несколько старых убрано. Об их значении и пойдет речь.
Небольшой ликбез
Клиент-сервер - сетевой код игры созданый на основе обмена пакетами между сервером и клиентом. В этих пакетах информация о текущем состоянии игрового мира (расположении объектов и т.д.)
cl_updaterate - число пакетов которые клиент получает от сервера каждую секунду.
Интерполяция - получение промежуточных значений какой-либо величины, путем усреднения крайних. Интерполяция служит для сглаживания картинки, т.к. пакетов приходящих от сервера зачастую не хватает для того чтобы картинка смотрелась плавно.
Настройки клиентской части по умолчанию: cl_updaterate 20; cl_interp_ratio 2; cl_interp 0.1.
Как это работает
cl_updaterate 20 означает, что клиент будет получать от сервера пакеты 20 раз в секунду, разница между пакетами - 50 мс. Чтобы предотвратить лагание от возможной потери пакета, интерполяция должна происходить в промежуток времени равный 2*50=100 мс. Чтобы обеспечить такую интерполяцию, необходимо задать параметр cl_interp 0.1. Множитель два означает, что мы хотим интерполировать две области между тремя пакетами пришедшими от сервера: "._._.". Если мы хотим итерполировать только одну область "._.", мы должны изменить соответствующий параметр. Этим параметром является переменная cl_interp_ratio. Она может принимать значения 2, 1, 0. Как не сложно догадаться, если эта переменная равна нулю, то интерполяция на клиенте будет отсутствовать. В общем случае формула для промежутка такова: lerp = cl_interp, но не может быть меньше cl_interp_ratio/cl_updaterate. Итак, тут мы приходим к самому определению:
lerp - промежуток времени в котором пакеты полученные клиентом будут интерполироваться.
По сути, значение lerp определяет пропорцию между пакетами, пришедшими от сервера, и пакетами, сгенерированными на клиенте. Чем меньше значение lerp, тем меньше пакетов будет "придумано" на клиентской стороне, тем точнее то, что вы видите, будет соответствовать тому, что происходит на сервере. Чем больше значение lerp, тем большую долю в вашей картинке будет играть интерполяция.
После теории перейдем к практике. С самого начала кажется, что в идеале lerp должен быть равен 0, ведь при таком значении lerp нет интерполяции и клиент видит то же, что видит сервер. Вы НЕ можете себе позволить lerp = 0 по двум причинам.
1) Ваш интернет канал оставляет желать лучшего.
Предположим, что вы счастливый обладатель модема или в вашем городе широкополосный интернет пока по карману только избранным или ваш сосед по общежитию по вечерам заливает на торрент пачку свежих немецких фильмов. Это значит, что вы можете себе позволить исключительно скромные сетевые настройки. Скорее всего те, что стоят по умолчанию, а быть может ваши дела еще хуже. При cl_updaterate 20, даже если все пакеты благополучно приходят от сервера к клиенту, вы видите 20 кадров в секунду (не имеет значения, какой у вас компьютер). Человеческий глаз воспринимает эту картинку как дерганую. Если же, не дай бог, потери (choke) есть, то играть вы просто не сможете, так как будете видеть слайдшоу.
2) Настройки серверов непозволяют клиентской части выставлять необходимые значения некоторых переменных.
Главная проблема тут безусловно cl_interp_ratio, на данный момент ни один европейский серверный конфиг не позволяет играть с этой переменной равной нулю. На данный момент я не знаю ни одного паблика с такими настройками. Только несколько КВ-серверов позволяют отключать интерполяцию. Сейчас добавление sv_client_min_interp_ratio 0 (эта команда отвечает за минимальное значение cl_inerp_ratio, которое может иметь клиент находясь на этом сервере) в евроконфиге скорее всего вопрос времени, и я пологаю, ждать осталось не долго. Но факт остается фактом: значение этой серверной переменной по умолчанию равно 1, а это значит, что клиент не может сделать lerp меньше, чем 10 мс.
Если вторая причина вопрос времени, то вот с первой причиной совладать способов не очень много.
Если у вас плохой коннект и постоянно теряются пакеты, то lerp=0 не для вас. Вам нужна интерполяция cl_interp_ratio 2.
Если же интернет не проблема, то тогда рецепт очень прост. Поднимайте рэйты: cl_cmdrate 66; cl_updaterate 66; rate 20000 - это ваш минимум. В идеале на 100 тиковом сервере у вас должно быть cl_cmdrate 100; cl_updaterate 100; rate 25000. Если сервер позволяет, ставьте cl_interp_ratio 0; cl_interp 0.
66, а тем более 100, кадров в секунду - вполне достаточно, чтобы комфортно воспринимать игру без интерполяции и лагов. Если же сервер не позволяет вам играть без интерполяции (пока что, это самый распространенный случай), рецепт очень прост:
1) Напишите в консоли cl_updaterate и запомните значение этой переменной
2) Напишите в консоли cl_interp_ratio 1
3) Разделите 1 на значение cl_updaterate
4) Напишите в консоли cl_interp и присвойте ему то что получили в пункте 3
Например:
Я играю с cl_updaterate 66, это значит что в 3 пункте я получу 0.0152, следовательно мне нужно написать cl_interp 0.0152. Это даст мне lerp = 15. Что уже довольно неплохо. Так как интерполяция таких временных промежутков не слишком сильно добавляет неточности вашим действиям.
Если вы пишите значение cl_interp меньшее, чем cl_interp_ratio/cl_updaterate, то на net_graph lerp будет отображаться оранжевым цветом. Если же lerp окрашен в желтый, то значит значение lerp больше промежутка времени между отсылаемыми пакетами на этом сервере. В обоих случаях lerp (а значит cl_interp) нужно увеличивать пока тот не станет белым. Если вы будете пытаться играть с НЕ БЕЛЫМ lerp, то вы обрекаете часть своих выстрелов застревать в промежутке клиент-сервер.
Вывод
Добивайтесь минимального значения lerp, оставляя его белым на каждом сервере, на котором играете. Это позволит вам снизить к минимуму все проблемы, связанные с вашим соединением с интернетом.
На последок замечу, что существует миф, будто бы lerp должен быть равен пингу. Пинг - время за которое пакет доходит от сервера к клиенту и он не имеет никакого отношения к интерполяции. Бесполезно пытаться найти связи в этих двух понятиях. При любом пинге сохраняйте lerp минимальным и белым.
Совет sok'а
Чтобы не париться с математикой, можно забиндить клавиши так:
alias lerpa+ "incrementvar cl_interp 0.01 0.09 +0.0001"// cl_interp +0.0001
alias lerpa- "incrementvar cl_interp 0.01 0.09 -0.0001"// cl_interp -0.0001
alias lerpb+ "incrementvar cl_interp 0.01 0.09 +0.001" // cl_interp +0.001
alias lerpb- "incrementvar cl_interp 0.01 0.09 -0.001"// cl_interp -0.001
alias lerpc+ "incrementvar cl_interp 0.01 0.09 +0.01"// cl_interp +0.01
alias lerpc- "incrementvar cl_interp 0.01 0.09 -0.01"// cl_interp +0.01
bind "INS" "lerpa+"
bind "DEL" "lerpa-"
bind "HOME" "lerpb+"
bind "END" "lerpb-"
bind "PGUP" "lerpc+"
bind "PGDN" "lerpc-"
Статья взята с сайта http://www.dayofdefeat.su