ooDoo3 и openGL 1.0 и др.

Тема в разделе "Общий", создана пользователем Shram47, 12 апр 2017.

  1. Shram47

    Shram47 Игрок

    Приемы, увеличивающие отзывчивость игры и в некоторых случаях, устраняющие лаги:

    Данные действия применимы и тестировались на Windows 7
    (на данном сервере ещё тестируются)

    1. пуск – выполнить – regedit
    2. ищем там HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\Tcpip\Parameters\Interfaces
    3. ищем там интерфейс, по которому у вас работает интернет, если не в курсе, то делаем следующий шаг во всех строках папки Interfaces
    [​IMG]
    1. правой кнопкой в поле справа, создать параметр DWORD (битность значения не имеет), называем его TcpAckFrequency, потом правой кнопкой на нем, изменить, ставим шестнадцатеричную галочку и пишем значение 1
    2. идем в HKEY_LOCAL_MACHINE\SOFTWARE \Microsoft\MSMQ\Parameters
    3. в месте указанном в пункте 5 ищем TCPNoDelay, если нету создаем DWORD параметр с таким названием и присваиваем значение 1
    Если ветка, указанная в пункте 5, отсутствует, то делается следующее:
    Открываем – Пуск – Панель управления – Программы и Компоненты – (слева) Включение и отключение компонентов Windows.
    Там находим пункт – Сервер очереди сообщений Майкрософт (MSMQ) ставим галочку напротив него и все галочки внутри в выпадающем списке компонентов. Перегружаемся, идем в реестр и видим там нужную нам запись

    [​IMG]
    Есть вариант изменения ключа реестра:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT \CurrentVersion\Multimedia\SystemProfile
    Имя: NetworkThrottlingIndex (если нет - создаем)
    Параметр: DWORD

    Значение означает количество пакетов не мультимедиа трафика в 1 миллисекунду, по умолчанию 10. Можно попробовать увеличить число или просто поставить шестнадцатеричное FFFFFFFF, в последнем случае полностью отключится регулирование трафика.
    Дополнительные параметры:
    Эти параметры так же способны оптимизировать сетевой обмен. При выборе их значений я руководствовался личным опытом, а не просто верил на слово различным советам. Когда-то я временно сидел на 3G интернете, где пинг сам по себе не очень, особенно в вечернее время, и мне ниже перечисленные настройки помогли. Однако, есть риск, что какой-нибудь параметр из них может и ухудшить ситуацию с пингом (хоть и не на много), поэтом я назвал их дополнительными и необязательными к выставлению.


    Раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\Tcpip\Parameters
    • SackOpts
      Выборочная передача поврежденных данных. Отлично помогает в борьбе с лагами, если клиент не кривой.
      Рекомендуемое значение: 1 (единица).
      Чтобы отключить: 0​
      • EnablePMTUDiscovery
        Автоматически определять максимальный размер передаваемого блока данных.
        Рекомендуемое значение: 1 (единица).
        Чтобы отключить: 0​
      • EnablePMTUBHDetect
        Включает алгоритм обнаружения маршрутизаторов типа "черная дыра". Видел советы по выставлению этого параметра в 0, однако, для себя я не заметил влияние этого параметра на пинг, а надежная связь нужна всем =)
        Рекомендуемое значение:1 (единица).
        Чтобы отключить: 0​
      • DisableTaskOffload
        Позволяет разгрузить центральный процессор, освободив его от вычислений контрольных сумм для протокола TCP, переложив эту задачу на сетевой адаптер.
        Рекомендуемое значение: 0 (нуль).
        Чтобы отключить: 1
        Недостаток: Если возникли сбои в соединениях - отключите параметр.​
      • DefaultTTL
        Определяет максимальное время нахождения пакета IP в сети, если он не может попасть на узел назначения. Это позволяет значительно ограничить количество маршрутизаторов, через которые может пройти пакет IP, прежде чем будет отброшен (вдруг пакет заблудился, зачем мы будем его ждать?).
        Рекомендуемое десятичное значение: 64
        Чтобы отключить: удалить параметр​
    Раздел HKEY_LOCAL_MACHINE\SOFTWARE \Policies\Microsoft\Windows\Psched

    NonBestEffortLimit
    • Отключает резервирование пропускной способности канала для QoS.​
    • Рекомендуемое значение: 0 (нуль).​
    Чтобы вручную не править эти дополнительные параметры в реестре, можно воспользоваться готовыми reg-файлами для (1)Включения и (2)Отключения этих фитч.
    _______________
    Сетевые твики:

    Начиная с этой версии ОС появились дополнительные сетевые параметры, которые могут нам пригодится. Данные твики представляют собой команды, в данном случае, сразу содержащие рекомендуемые настройки. Чтобы их применить, нужно запустить командную строку (cmd) от имени администратора. Чтобы посмотреть текущие настройки, можно воспользоваться командой
    Код:
    netsh int tcp show global
    Итак, команды:
    • Код:
      netsh int tcp set global rss=enabled
      Использование нескольких процессов для обработки входящего потока, без RSS TCP/IP работает всегда только на одном процессоре даже если ПК многопроцессорный.
      Возможные значения: enable / disable​
    • Код:
      netsh int tcp set global netdma=enable
      Обмен информацией между сетевой платой и памятью ОЗУ без участия CPU (NetDMA).
      Возможные значения: enable / disable​
    • Код:
      netsh int tcp set global dca=enable
      Прямой доступ к кэшу NetDMA 2.0 (Direct Cache Acess).
      Возможные значения: enable / disable​
    • Код:
      netsh interface tcp set heuristics wsh=enable
      Автоматический подбор размера окна TCP (WSH). По идее, сводит на нет настройку следующего параметра, но пусть будет чтобы потом можно было что-то безболезненно включать / отключать, не сильно отступаясь от цели.
      Возможные значения: enable / disable​
    • Код:
      netsh int tcp set global autotuninglevel=highlyrestricted
      Автонастройка размера приемного окна TCP, не сильно отступаясь от значения по умолчанию.
      Возможные значения: disable / higlyrestricted / restricted / normal / experimental​
    • Код:
      netsh int tcp set global timestamps=enable
      Штампы времени при установки с ключами как Auto-Tuning Level оптимальный выбор размера окна приема.
      Возможные значения: enable / disable​
    • Код:
      netsh int tcp set global ecncapability=enable
      ECN - это механизм взаимодействия маршрутизаторов о заторах в сети. Он предназначен для уменьшения ретрансляции пакетов. Это позволяет автоматически снижать скорость передачи данных для предотвращения потерь данных. Описание говорит само за себя, для надежности.
      Возможные значения: enable / disable​
    • Код:
      netsh int tcp set global congestionprovider=none
      CTCP увеличивает темп передачи с одновременным контролем размера окна и пропускной способности (Add-On Congestion Control Provider). Во всех гайдах в интернете, которые мне попадались, советовали установить этот параметр равным ctcp. Однако, на практике, всё оказалось куда более сложнее. В моем случае он вызвал только более продолжительные лаги, несмотря на то, что потери пакетов (и всё в этом роде) он, вроде как, и призван устранять. Поэтому я рекомендую всё же значение none, исходя из опыта. Возможно, в сетях с более надежной связью CTCP и даст профит.
      Возможные значения: none / ctcp / default​
    Отключаем сетевой протокол Teredo (для тех, кто не использует IPv6).

    Инновация, которая все время чекает соединение и пакеты на предмет принадлежности их к сети IPv6, нагружая сетевую карту и забивая наш канал данных. Отключение Teredo может ускорить работу сети и интернета, как это делается:
    Запускаем Командную строку (Пуск > Выполнить > cmd) и вводим команды по очереди.
    Код:
    netsh
    interface
    teredo
    set state disabled

    Для возврата Teredo, команды вводятся такие же, кроме последней. Последняя должна быть
    Код:
    set state default
    Переключение между окнами.
    Не знаю как вы, а я столкнулся с проблемой переключения окон запущенного клиента. Суть проблемы в том, что при переключении активного окна, система либо переключала на рабочий стол, либо не переключала окно вовсе. К счастью я нашел решение! Проблема таилась в интерфейсе Aero стандартного переключателя окон. Небольшой фикс сменит стиль свитчера на стиль классического Win XP. Ссылка на архив ниже...​
    [​IMG]
    В архиве два файла, один для установки, другой для отмены изменений, если вдруг вам этот фикс не помог.

    Leatrix Latency Fix.

    Известная проблема у всех игроков, которые проводят своё время за онлайн-играми (wow, cs, lineage и любые другие) – это высокий пинг. Точнее говоря, даже если он не очень высокий, таки всё равно всем хочется его снизить, ибо чем меньше пинг, тем лучше, плавнее, качественнее и адекватней протекает игра и любые в ней действия.​
    [​IMG]
    Что это вообще есть? Пинг – это ни что иное как время, затраченное на передачу пакета информации в компьютерных сетях от клиента к серверу и обратно от сервера к клиенту (кстати, тут есть некоторая путаница терминологии, ибо это время называется не пингом, а лагом или, собственно, задержкой (англ. Latency – отставание; задержка, запаздывание) и измеряется в миллисекундах. Лаг связан со скоростью соединения и загруженностью каналов на всём протяжении от клиента к серверу. Но не буду разбивать сейчас представления о терминологии, – пусть будет по традиции, – пинг и пинг). Так вот, можно провести ряд изменений в реестре, которые позволят существенно (почти вдовое!) снизить Ваш пинг практически во всех онлайн-играх и приложениях использующих TCP-протокол.

    Дабы не лазить долго и упорно по реестру и ничего самим не напортить, умными умельцами сделан скрипт, который делает все изменения в автоматическом режиме. Даже, если Вы считаете, что существующий у Вас сейчас пинг вполне приемлем, все равно рекомендую воспользоваться оным скриптом, ибо хуже явно не будет, а вот лучше – наверняка!

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

    Как это работает? Что за скрипт по снижению пинга такой?

    Чтобы было понятнее, приведу забавный диалог между сервером и компьютером с официального сайта скрипта.

    До применения Leatrix Latency Fix:
    Сервер: “Так, компьютер, отправил тебе пакет с данными. Получил?”
    Компьютер: “…”
    Сервер: “Ну, давай, отвечай, мне целый день тебя ждать?”
    Компьютер: “…”
    Сервер: “Ладно, проехали, вот тебе еще один пакет. Получил?”
    Компьютер: “Ага, получил, и предыдущий пакет тоже, спасибо”.
    Сервер: “А чего же сразу не ответил?”
    Компьютер: “Вот так я настроен по умолчанию, извините”.
    После применения Leatrix Latency Fix:
    Сервер: “Так, компьютер, отправил тебе пакет с данными. Получил?”
    Компьютер: “Ага, шли следующий!”
    Сервер: “Ух, быстро ты! Лови следующий. Получил?”
    Компьютер: “Да, давай еще!”
    Сервер: “Ого! Быстрый ты. Лови!”
    И так далее.

    Шутки шутками, но фактически скрипт убирает таймер задержки в Windows на обработку пакетов (сделанный якобы с целью дать системе обработать пришедший сегмент данных и только потом ответить получен ли он), а посему подтверждение о полученном пакете высылается сразу же для каждого сегмента, который был, собственно, принят. Это приводит к значительному сокращению задержки на пересылку и обмен информацией между компьютером и сервером. Таким образом и снижается пинг.
    _________________источник: >
    ooDoo3 и openGL 1.0.

    Стоит отметить, что если у вас падает FPS или появляются рывки картинки это не всегда пинг. Есть возможность попробовать включить VooDoo3 и openGL 1.0 ускорение для ро. Некоторым пользователям с Windows 8 помогает только это, потому что у некоторых ноутов 2 видюхи и setup.exe неверно обрабатывает список устройств. Для эмуляции VooDoo3 карточки на вашей видяхе вам понадобится специальный драйвер- эмулятор. Их бывает несколько и они подробно описаны вот в этой статье.

    Для Ragnarok лучше использовать:
    Zeckensack's Glide Wrapper
    (далее — Glide Wrapper)

    Под таким немудрёным названием скрывается один из лучших, если не лучший, эмулятор.
    Особенности:
    • эмуляция Glide API версий 2 и 3;
    • поддержка профилей для отдельных игр;
    • возможность запуска игр в повышенном разрешении (например, игра, идущая в разрешении 640x480, может работать в 1024x768, и при том это не будет upscale);
    • высокая скорость работы;
    • отличная совместимость.
    • [для эмуляции некоторых возможностей прозрачности (читаем: для полноценной работы) требуется видеокарта с поддержкой PS 2.0.
    Для вывода графики использует OpenGL.

    Домашняя страница проекта: zeckensack.de
    Ссылка на скачивание : Прямая
    Ссылка на скачивание (Форум): GlideWrapper084c.zip

    Установка и настройка
    Установка
    Сама установка не представляет особой сложности — просто запускаем файл GlideWrapper084c.exe и нажимаем кнопку Next, пока процесс установки не будет завершён. Выбранные компоненты и папку назначения лучше оставить по умолчанию. Сложности могут возникнуть с использованием. Поэтому следует знать следующее: в отличие от других эмуляторов, помещающих библиотеки Glide в папку с игрой, Glide Wrapper устанавливает их в папку Windows (как правило, C:\WINDOWS). Вследствие чего могут возникнуть две нештатных ситуации:
    1) если в папке игры остались Glide-библиотеки (файлы Glide2x.dll или Glide3x.dll) — к примеру, от другого эмулятора или просто по недосмотру, то игра будет использовать именно их, а те, что от Glide Wrapper, — проигнорирует. Так что если вы хотите запустить игру именно через Glide Wrapper, для начала следует обязательно посмотреть — нет ли в папке игры (точнее, в папке с исполняемым файлом игры) файлов GLIDE2X.DLL или GLIDE3X.DLL, и, если таковые обнаружатся, смело их удалить.
    2) при запуске конфигуратора выдаётся окно следующего вида:

    [​IMG]
    Это означает, что в системе уже установлены какие-либо драйверы 3dfx. Их следует удалить тем же способом, которым они были установлены, — т.е. либо деинсталляцией, либо простым удалением файлов C:\WINDOWS\System32\Glide2x.dll и C:\WINDOWS\System32\Glide3x.dll.

    Теперь перейдём к настройке.

    Настройка
    Программа настройки Glide Wrapper вызывается через меню “Пуск”, далее “Программы”→“Glide Wrapper”→“Configurator”.

    [​IMG]
    (1) Profile selection — выбор профиля. Для любой игры в Glide Wrapper создаётся свой профиль, в котором можно изменять отдельно взятые настройки.
    (2) Profile settings — управление профилями. Здесь можно: поменять название профиля; сохранить профиль с новым названием (кнопка “Update profile”); удалить профиль (кнопка “Delete profile”).
    (3) Resolution limit — ограничение разрешения. До какого разрешения допустимо увеличивать реальное разрешение при включении пункта Try High Res в опции Resolution, обычно принимается удвоение, а не только произвольное разрешение, так что имеет смысл ставить лимит монитора или наболее удобное разрешение.
    (4) Texture memory (память текстур) — на Voodoo1 объём текстурной памяти составлял 2, реже 4 мегабайта; на Voodoo2 он был увеличен до четырёх либо восьми мегабайт (в зависимости от модели). Некоторые совсем старые игры могут не работать при объёме памяти более 4-х (или даже 2-х) мегабайт. Кроме того, некоторые игры при слишком большом объёме памяти могут работать медленнее. Проблемы исправляются изменением данного значения.
    (5) Resolution (разрешение) — оверрайд разрешения. Можно выбрать “By app” (разрешение выбирается игрой) и “Try high res” (использовать высокое разрешение). Например, если в игре используется разрешение 640x480, то после включения данной опции она, скорее всего, заработает в разрешении 1280x960. Нужно для повышения разрешения, ибо V1/V2 не поддерживали больше чем 640x480(V1)/800x600(V2)/1024x768(2xV2 SLI)
    (6) Refresh rate (частота обновления) — частота обновления экрана. Для некоторых игр может потребоваться её снижение.
    (7) Vertical sync (вертикальная синхронизация) — синхронизация вывода изображения с частотой обновления экрана. Считайте, что должно быть включено всегда, иначе могут быть проблемы со скоростью игры и со рваной картинкой на LCD.
    (8) Mipmapping — оверрайд фильтрации. В общем случае: если текстуры на удалённых объектах выглядят как набор пикселей, попробуйте поэкспериментировать с данной опцией, если работает без проблем — используйте наилучший метод Trilinear. Подробнее о типах фильтрации читайте в википедии.
    (9) LOD bias — дистанция между уровнями mip-mapping'a. Также подбирается опытным путём. Отрицательное значение даёт удаление размытых дальних зон следующего вниз уровня детализации всё дальше и дальше, но может привести к артефактам.
    (10) Anisotropy (анизотропия) — всем известная анизотропная фильтрация. Можно смело ставить максимальное значение, учитывая при этом, однако, что на старых видеокартах это может серьёзно сказаться на производительности. Следует отметить, что эта настройка не эквивалентна настройке в панели управления видеокартой — в Glide Wrapper для некоторых типов текстур (используемых для спецэффектов) она не применяется, чтобы не ухудшать качество картинки.
    (11) Gamma (гамма-коррекция) — в глобальных настройках лучше оставить по умолчанию и при необходимости изменять для отдельных игр. Галочка “Lock” запрещает изменение гаммы непосредственно из самой игры.
    (12) Limit feature set (эмулируемые функции) — доступны следующие варианты:

    • “Don’t work at all” — отключить эмуляцию. Может понадобиться для игр, которые используют и Glide, и Direct3D, при этом требуется их работа именно в Direct3D.
    • “Basic stuff only” — только основные функции. Во многих местах гарантированы графические артефакты. Требуемый уровеь видеокарты — Direct3D 7 (нет шейдеров).
    • “Simple shaders” — стандартный набор. Требуемый уровень видеокарты — Direct3D 8.1.
    • “Most fancy shaders” — наиболее точная эмуляция. Требуемый уровень видеокарты — Direct3D 9. Всё, что ниже, будет давать артефакты в местах в играх, где используется прозрачность и chroma keying.
    Можно смело ставить “Most fancy shaders”, за одним исключением — видеокарты серии Geforce FX, которые формально имеют необходимые возможности, но на практике падение скорости столь значительно (особенно в высоких разрешениях), что теряется всякий смысл. Для них лучше оставить “Simple shaders” в играх, где нет мест, приведённых выше.

    Следующие настройки предназначены для опытных пользователей и в нормальных условиях изменяться не должны. Для тех же игр, которым это необходимо, необходимые изменения уже внесены в профили. Любознательные личности могут найти подробное описание (на английском) в документации, идущей с эмулятором.
    (13) Render to — как пишет автор: «никогда, никогда, никогда не трогайте эту опцию, если вы не знаете, что делаете». Очевидно, лучше так и поступить. Имеет смысл менять при потере фокуса игрой и вечном переключении окон при попытке нажать кнопку или сделать щелчок мышью.
    (14) Thread policy — использование потоков для рендеринга. Автор эмулятора строго рекомендует оставить “Classic”, и лучше последовать его совету. На многоядерных процессорах можно получить небольшое увеличение производительности, выбрав “Use render thread”, с другой стороны, на подобных системах скорость и так достаточно высока.

    Если вас смутило обилие настроек, не стоит расстраиваться: большинство из них никогда не придётся трогать, особенно с учётом того, что для многих игр уже есть готовые профили. В абсолютном большинстве случаев здесь действует принцип — «запустил и играй».
    Источник : >>>> Wiki
    Ссылка на скачивание : Прямая
    Ссылка на скачивание (Форум): GlideWrapper084c.zip

    Вложения:

    Последнее редактирование: 12 апр 2017
    Pnzr нравится это.
  2. AlexaWhite

    AlexaWhite Игрок

    Ragnarok использует протокол UDP...
    Таки нет~
    [​IMG]
    Последнее редактирование: 12 апр 2017
    Shram47 и thevoid нравится это.
  3. Alie

    Alie Игрок

    Да и не только Ragnarok, большинство сетевых игр используют UDP.
    А по поводу описанных выше манипуляций могу сказать, что они бродят по интернетам очень давно и не работают особо. Помню, что пробовал их прописывать когда играл в WoW и могу сказать,на своем опыте, что эффекта особо от них нет, в том же WoW немного менялась циферка latency (именно циферка), но ощутимо пинг не менялся вообще.
  4. X

    X Играет за мобов
    Команда форума

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

    Например, нет никакой необходимости менять параметр TCPNoDelay, тем более устанавливать для этого роль MSMQ (без которой эта строка реестра не имеет силы). В нашей версии клиента уже выключен Nagle's Algorithm. Выключать его глобально нет необходимости.

    Некоторые из советов, вроде выключения проверки приходящих пакетов, могут только увеличить лаги, т.к. клиент начнёт принимать пакеты в хаотичном порядке, вроде получения урона ещё перед тем, как произойдёт фактическая атака и т.п.

    Волшебства не бывает: локальные твики не помогут физически наладить связность с игрой, если у игрока лагает провайдер или промежуточный оператор трафика. Они лагают физически, и это в 98 случаях из 100 никак не связано с параметрами десктопа. Никаких волшебных "улучшателей пинга", к сожалению, не существует. Пакеты не начнут ходить по какому-то особому воздушному каналу в обход проблемных каналов оператора. Зато с этим могут помочь наши прокси!

    А вот за утилиты для VooDoo3 и openGL 1.0 - спасибо.
    Вдруг они смогут помочь кому-либо на ноутбуках со слабоватой графикой.

    Нет-нет, Ragnarok Online использует TCP.

    И это, мягко говоря, плохо, т.к. UDP by design не гарантирует доставку пакетов.
    В шутерах, где координаты обновляются лишь время от времени, это не сильно критично, но в играх вроде RO, где каждый шаг согласуется с сервером - фатально.
    AlexaWhite, Shram47 и Alie нравится это.
  5. Shram47

    Shram47 Игрок

    :getsome:Ну вот почему порой пишут то, что даже не загуглили? оО
    Да инфа в сети давненько, сам на оффе использовал кучу подобных, я искал решения для моей проблемы и натыкался на кучу статей, вот и сюды написал

    Что за игра слов оО
    Спрячу излишнее под спойлер:royes:
    Последнее редактирование: 12 апр 2017
  6. Alie

    Alie Игрок

    Вот именно почему ты пишешь, то что не загуглил? Научись цитировать нормально, вообще не понятно о чем речь. Я между прочим поделился своим опытом использования данных манипуляций (когда еще не разбирался как работает протокол TCP/IP и тд), который на самом деле нифига не помогает.Тебе даже икс написал, что чудес не бывает и эти манипуляции не помогут. 99% людей не знают как работает интернет в целом, наставят себе всякой ерунды типа этой (я про махинации с реестром).
    Про VooDoo и OpenGL я ничего не писал, т.к не сталкивался.
  7. Shram47

    Shram47 Игрок

    1. Вы оба утверждаете про UPD
    2. Ты пишешь что нету эффекта никакого от твиков, и тут же пишешь что лэтеси изменился не значительно, но ... (и вот тут цитирую)
    P.S.: ОтРедактировал лишь ты после того, как я процитировал ;-)


    @X Запрети редактирование комментария на форуме, если ответ после данного комментария есть, или сделай ограничение по времени, что редактировать можно в течении 3х минут,к примеру, а редактирование Шапки должно показывать что текст отредактирован "Дата"
    На форуме нету [HIDE="X"] Test [/HIDE]?
  8. Alie

    Alie Игрок

    Даже если RO работает по TCP, как написал икс, это не меняет сути того, что я написал выше.


    Я не редактировал текст и изначально было написано: "но ощутимо пинг не менялся вообще". Внимательнее нужно сообщения читать.

    [​IMG]
  9. Shram47

    Shram47 Игрок

    Не вижу смысла продолжать этот разговор!
  10. Alie

    Alie Игрок

    Согласен