Наблюдал малопонятные глюки с графикой при запуске некоторых старых игрушек (Diablo и Master of Orion II — среди прочих) в свежеустановленной Windows 7. Выглядело это примерно так:
Причины глюка — несовместимость разных версий DirectDraw. Если первые версии «не обращали внимания» на не самое правильное с точки зрения документации использование некоторых функций, то современные реализации тех же функций требуют более строгого подхода. Соответственно, начинают вылезать разнообразные «косяки». Например, многие старые игры автоматически считают, что они — единственные запущенные DirectDraw-приложения и некорректно инициализируются. Учитывая, что графическая оболочка Windows 7 активно работает с DirectX, можно ожидать всевозможных глюков.
На импортных форумах в качестве решения предлагалось отключение explorer.exe и последующий запуск игры. На самом деле можно поступить проще. Итак, пошаговое решение проблем с графикой в старых играх для Windows:
1. Запускаем игру с правами администратора. Наблюдаем странные эффекты с палитрой, материмся и выходим.
2. Открываем regedit и смотрим ветку HKLM/Software/Microsoft/DirectDraw/MostRecentApplication. Наблюдаем там два параметра — строковый Name с названием exe-файла игры (например, Orion95.exe) и ID типа dword (к примеру, 0x333982cb). Выписываем их на бумажку.
3. Самые глазастые уже разглядели раздел HKLM/Software/Microsoft/DirectDraw/Compatibility, а то и открыли его, обнаружив там пока небольшой список «настроенного» софта (включая Diablo и Starcraft). Создаем в нем вложенный раздел и называем его так, чтобы не перепутать ни с чем другим. Например, MasterOfOrionII131 — название игры и версия исполняемого файла.
4. В этом разделе создаем строковый параметр Name, в него вписываем название exeшника. Создаем двоичный параметр ID и вписываем в него ID из второго пункта, инвертируя порядок байтов (то есть 0x333982cb превращается в CB 82 39 33). Дальше начинается самое интересное.
5. Создаем двоичный параметр Flags и начинаем экспериментировать с его значениями. К сожалению, мне не удалось найти описания этого параметра, поэтому приходится подбирать его методом тыка. Типичные значения флагов — это 01 00 00 00, 00 08 00 00, 20 00 00 00, 04 00 00 00, 40 00 00 00, 02 00 00 00. Для Diablo и Starcraft во всех вариантах (так как Hellfire и Brood War оказались незаслуженно забыты в этом списке) подошло 00 08 00 00, то же самое сочетание «вылечило» и Master of Orion II. После каждого изменения параметра запускаем игру и смотрим, прошли ли глюки. Во всяком случае, графика Master of Orion стоит того, чтобы немного поковыряться в реестре.
Думаю, это работает для гораздо большего числа «проблемных» игр.
Здравствуйте, вот у меня тоже такая проблема возникла. Всё понятно, кроме одного: а если стороковый параметр имеет вид с буквой посредине, например — 0x3468e402 (для фаллаута) то как его двоично записать?
0x — указание на то, что в строке записано шестнадцатеричное число — отбрасываем, остальное разбиваем на байты (группы по две шестнадцатеричных цифры) — 34 68 E4 02 и записываем полученные байты в обратном порядке — 02 E4 68 34.
У меня вот такая проблема, надеюсь с вашей помощью решить её.
При просмотре ветки реестра HKLM/Software/Microsoft/DirectDraw/MostRecentApplication в поле Name значится dxdiag.exe и не меняется, сколько бы раз я не запускал игру (конкретно, мучаюсь с Nox). Что посоветуете?
Можно попробовать сделать то же самое в ветке HKLM/Software/Wow6432Node/Microsoft/DirectDraw/Compatibility (кажется, она имеет смысл для 64-битных систем).
Гигантское спасибо! Всё запустилось без проблем)
Спасибо!!!
Запустил MOO2, Только вот ID в моей системе почему-то был в ветке
HKEY_USERS\…\Software\Classes\VirtualStore\MACHINE\SOFTWARE\DirectDraw\MostRecentApplication
Для Fallout2 локализации 1С подошло значение Flags 00 08 00 00.
Спасибо :)
Спасибо огромнейщее!!! С игрой Age of Empire ll The Conquerors теперь все в порядке. Подошло 00 08 00 00 :)
Не помогло со StarCraft Brood War, у меня Windows 7 x64.
Один раз компьютер даже повис, пришлось перегружать :(
Большое спасибо автору!!! Помогло Diablo — HEllFIRE запускается без проблем!!! Подошло 00 08 00 00
Пробовал запустить таким образом Panzer General 2 и ничего не получилось.
Есть ли у кого-нибудь положительный опыт для этой игры на Win 7 64 bit?
А у меня не запускается «один игрок», требует вставить диск ((( помогите разобраться, ребенок очень ждет игрушку )))
Вставьте диск, какие проблемы? Желательно — в тот же привод, с которого ставили.
БОльшое спасибо за рекомендации, получилось с первого раза, фуллаут полетел!!!!!!!!
Не получается, сделал все как сказали, не меняется ничего. У меня MoO2:( Если кто живой остался, помогите:)
Вылечилось, помогла запись в Nod
Спасибо, так же помогла запись в Wow64.
P.S. имел в виду MoO2.
Для Silver помогло 00 08 00 00 . Цвета поправились. Осталось решить проблему полосок в игре. Хотя есть прикол, что они у меня иногда были и во времена 98ой.
Большое спасибо! Помогло с проблемой в игре Age of Empires II Conqeror)))))))))))))
Создаю параметр ID, но система не дает редактировать его. Как-будто в режиме для чтения открыт. В чем может быть дело?
Никогда такого не видел. Попробуйте запустить regedit с правами администратора.
СПС огромное!!! а то бук приобрел, а на нем 7 винда, фоллаут моСк полоскал с цветом. Теперь все норм!
«.. отключение explorer.exe и последующий запуск игры. На самом деле можно поступить проще..»
Да уж, проще так проще.
Помогло С Diablo 00 08 00 00 ! Операционка Win7 64bit! Автору Респект И Уважуха!!!
вообще нет такой вкладки в реестре HKLM/Software/Microsoft/DirectDraw/MostRecentApplication, подскажите чё делать???
подразумевается HKEY_LOCAL_MACHINE(HKLM)
Вот мне с Диабло помогло, а UFO EU не получается запустить в нормальном цвете, шо делать?..
игра «Heart of Darkness». не помогло, зря потратил время.
Помогло на таких играх как Age of Empires II, Worms Armageddon и Star Wars Galactic Battlegrounds. Только нужно дополнить, что в Win7 x64 путь в реестре выглядит немного иначе. Т.е. HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\MostRecentApplication и соответственно HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility. Кстати на все три игры подошёл параметр 00 08 00 00. Всем удачи.
ах!!спасибо!! я тупанула малость)
не можете подробно описать действия с Star Wars Galactic Battlegrounds?
2. Открываем regedit и смотрим ветку HKLM/Software/Microsoft/DirectDraw/MostRecentApplication. Наблюдаем там два параметра – строковый Name с названием exe-файла игры (например, Orion95.exe) и ID типа dword (к примеру, 0×333982cb). Выписываем их на бумажку.
на Вин7 64бит нет такой ветки!((( есть только HKEY 5 путей
в ветке HKLM/Software/Microsoft/DirectDraw/MostRecentApplication отсутствует MostRecentApplication !! что делать??????
спасибо за совет. не помогло к сожалению….
К сожалению, не помогло.
Спасибо))) Морские Титаны поперли на 00 08 00 00. Долго мучался, пока коммент про ветку HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\MostRecentApplicatio для Win7x64 не нашел!!!
при масштабировании на полный экран снова вылезают все косяки с гаммой
Спасибо огромное! установила парню диабло хеллфайр)) пусть развлекается пока я в командировке)))
Finara, повезло твоему парню, девушка не то что не против, а даже сама игры ставит)
спасибо! тоже глючили игры Эра Империй, Орион 2(орион95.ехе) Казаки:Евровойны и Довод королей. и как идиот ехплолер через бат-файл отключал.
Но теперь, всё настраивается и нормально «пашет». ещё раз спасибо.
Здравствуйте!
Подскажите пожалуйста какой флаг вы использовали для казаков?
Роман
00 08 00 00
…это есть утилитка DirectDraw Compatibility Tool v1.01 специально для старых игр. Программка «обрабатывает» ехе файл игры, и создаёт reg-файл совместимости с 7-ой
Спасибо! Очень благодарен за ценную информацию. HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\MostRecentApplication и соответственно HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility. У меня 7 виндовс и в нем как раз такая ветвь. Спасибо за разносторонний подход к проблеме.)
Кстати, помогло и с Дьябло-Хеллфаер)) Удачи всем!!!
ребят, кто эпоху империй настраивал скажите плиз как раздел, который мы создаём, назвать надо :( я понял что имя экзешника надо и версию файла, вот версию исполняемого файла найти не могу. (нашёл версию экзешника но там цифры 0.7.22.627, не пойму как это запихивать в название раздела)
всё, разобрался что к чему :)
не получаеться с игрой garage head … помогитееее!!!!!!!!!!!
Помогите пожалуйста с Red Alert 2 на Win 8 ((((( не могу ничего сделать…
У меня нет Windows 8, и ставить его я не собираюсь.
Помогите пожалуйста, учел все выше сказанное и РА 2 запустился, однако 2 минуты и тормозит, далее висняк. Приходиться вытаскивать с Диспетчера задач силком. Иначе никак. В чем проблема такого висняка!
у меня Виндос 8 на новом ноуте. Поставил на нее Red Alert 2(РА 2), но поиграть не могу.
Win 7 x64 игра Дальнобойщики 2 помогите настроить !
Все сделал по инструкции. Запускаю хелфаир а толку 0((( поглядел в ноде. Там вообще пусто. Сделал там собстенную запись — тоже толку мало. Такой вопрос мб дьябла как то использует реги из папки с игрой и их тоже нужно изменить. Ну или тогда я совсем ничего не пойму. Вин7 х32. И да кстати на другом пк проблема решалась вооьще за 2сек. В папке дьяблы был файлик с выбором видеодрайвера. Так я там просто тыкал первичный видеодрайвер запускал и цвета приходили в порядок. Но тут нет такого(( хелп
прошу помощи во флаге для казаков. все описанные в описании автора не помогло. пытаюсь подобрать, но сколько здесь вариантов?
винда 7 64
Помогите пожалуйста , как записать этот «обратный порядок байтов » ?
0x392b2d50 (959130960) заранее спасибо =D
50 2D 2B 39