1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.
  3. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление

DirectDraw Compatibility Tool

Тема в разделе "Мастерская", создана пользователем galogen, 25 сен 2010.

  1. galogen

    galogen

    Регистрация:
    24 янв 2008
    Сообщения:
    36
    Привет, народ!

    Я написал небольшую программку - инструмент для устранения искажения цветов в некоторых старых играх (Fallout 1 и 2, Worms Armageddon, Theme Hospital) в Windows 7 и Vista. Единственным универсальным решением для этих игр было завершение процесса Explorer.exe перед запуском, или отключение Windows Aero, я же попытался реализовать решение проблемы с помощью штатных средств Windows. Решение заключается во внесении в раздел реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\ сведений об exe'шнике проблемной игры, после чего Windows начинает относиться к такой игре по-особому :) Можете проверить на любом ПК с "Вистой" или
    "Семёркой" - в этом разделе изначально есть параметры совместимости для Diablo и StarCraft, а вот про Fallout и, что вообще поразительно, Age of Empires ребята из Microsoft почему-то забыли. Именно в контекстерешения проблем с Age of Empires я и узнал об этом разделе реестра (на 64-битных ОС - двух разделах). Основная загвоздка заключалась в параметре "ID', который, на удивление, не имел ничего общего с Process ID. В итоге я всё-таки смог найти способ достоверного определения этого параметра путём анализа exe-файла игры, что и реализовал в своей программке. Надеюсь, она поможет облегчить жизнь и другим - особенно радует возможность спокойно играть в Fallout на 64-битной Windows 7 :spiteful:

    Проблема с искажением цветов (несовместимость DirectDraw с Windows Aero) должна решаться у игр второй половины 90-х, написанных под DirectX 7 и ниже, в DirectX 8 DirectDraw реализован уже через Direct 3D. Пока могу сказать, что способ точно работает в Fallout, Theme Hospital (Windows-версия, естественно) и Worms Armageddon с патчем 3.6.29 (версия 3.0 у меня вообще не запустилась). Посему прошу обратить внимание, что моя программка решает только ОДНУ причину проблем со старыми играми на новых ОС, а ведь проблем там может быть масса.

    Засим откланяюсь, ожидая комментариев.

    [​IMG]

    Игры, в которых работоспособность DirectDraw Compatibility Tool была протестирована:
    Fallout 1
    Fallout 2
    StarCraft
    StarCraft: Brood War
    Theme Hospital
    WarCraft 2 Battle.net Edition
    Worms Armageddon (версия 3.6.29)
     

    Вложения:

    Последнее редактирование: 26 сен 2010
    Gerhalt, Gadavre, Orzie и 54 другим нравится это.
  2.  
  3. John Freeman

    John Freeman

    Регистрация:
    13 май 2004
    Сообщения:
    14.241
    Для этого есть ACT, изобретатель велосипеда...
     
    INHELLER и Grue13 нравится это.
  4. galogen

    galogen

    Регистрация:
    24 янв 2008
    Сообщения:
    36
    Прошу прощения, но тогда можно сказать, что для этого же есть и VMWare.

    Во-первых, как видно из названия и иконки, мою прогу можно считать мини-версией ACT: она проще в использовании, к тому же позволяет создавать reg-файлы со всеми необходимыми ключами.

    Во-вторых, я далеко не первый, кто заморочился этим вопросом. В плане Fallout - я вообще впервые слышу, что проблему с палитрой можно решить через ACT.
     
    Asasin56, Dub Star и bl00dshot нравится это.
  5. John Freeman

    John Freeman

    Регистрация:
    13 май 2004
    Сообщения:
    14.241
    Да, мини версия ACT меняющая флаги DDRAW и далёкая от него по функциональности. Проблема в том что дураки путают совместимость в свойствах и ACT...
     
  6. galogen

    galogen

    Регистрация:
    24 янв 2008
    Сообщения:
    36
    Сейчас специально проверил - дефолтный конфиг ACT для Fallout 2 проблему с палитрой не решает. Так что прошу, научи дурака как пользоваться ACT!
     
    bl00dshot нравится это.
  7. John Freeman

    John Freeman

    Регистрация:
    13 май 2004
    Сообщения:
    14.241
    "Я купил отвёртку и паяльник, но что-то радио не чинится, может я как-то неверно их положил в шкаф?"
     
  8. galogen

    galogen

    Регистрация:
    24 янв 2008
    Сообщения:
    36
    Хороший ответ! Главное, простой и самому делать ничего не надо.
     
    Dub Star, Gamovsky и bl00dshot нравится это.
  9. John Freeman

    John Freeman

    Регистрация:
    13 май 2004
    Сообщения:
    14.241
    Ты только что ответил на свой вопрос.
     
  10. galogen

    galogen

    Регистрация:
    24 янв 2008
    Сообщения:
    36
    Ладно, я не собираюсь ничего доказывать. Дурак - так дурак, велосипед - так велосипед. А дурак - в том, что вместо того, чтобы ручками вписать пару ключей в реестр, кучу времени искал информацию, заморачивался с разбором PE-заголовка, пытался нарисовать красивый интерфейс и удобно расположить кнопочки, поскольку хотел сделать добро людям.
    И теперь, не знаю как людям, а лично мне действительно удобнее нажать одну кнопку в своей программе и наслаждаться беспроблемной игрой чем полчаса разбираться с ACT. Видимо, не все используют Sound Forge для редактирования mp3-тэгов.

    Засим откланяюсь.
     
    Val07og, Dub Star, Old-Freeman и 2 другим нравится это.
  11. John Freeman

    John Freeman

    Регистрация:
    13 май 2004
    Сообщения:
    14.241
    Sound Forge MP3 тэги не редактирует...
     
    Gamovsky нравится это.
  12. INHELLER

    INHELLER

    Регистрация:
    19 май 2009
    Сообщения:
    7.228
    galogen > Не принимай близко к сердцу - он всегда такой))))
    Ну и некоторым(например мне)))) ) не всегда приходит в голову, что кто-то мог решить эту проблему+посмотри на благодарности))))
     
  13. galogen

    galogen

    Регистрация:
    24 янв 2008
    Сообщения:
    36
    INHELLER, спасибо за спасибо! Рад, что всё-таки не зря старался :)
     
    Dub Star и bl00dshot нравится это.
  14. Newbilius Программуль

    Newbilius

    Регистрация:
    24 авг 2007
    Сообщения:
    4.602
    galogen, проверял на diablo 2/ starcraft/ WC2:BNE ?
     
  15. galogen

    galogen

    Регистрация:
    24 янв 2008
    Сообщения:
    36
    Nubilius, для StarCraft 1.15 в Windows уже по умолчанию есть ключи реестра с параметрами совместимости, однако в случае отличия PE-заголовка ЕХЕшника от версии 1.16 способ должен прокатить. Diablo II сейчас постараюсь проверить, только разве кто-нибудь сейчас играет в него в DirectDraw-режиме?
     
    bl00dshot нравится это.
  16. Siberian_GRemlin

    Siberian_GRemlin

    Регистрация:
    22 ноя 2004
    Сообщения:
    4.050
    Я так понял, она только текстовые файлы создаёт, с реестром сама работать не умеет? Упущение какое-то.
     
  17. galogen

    galogen

    Регистрация:
    24 янв 2008
    Сообщения:
    36
    Siberian_GRemlin, нет, можно на выбор или импортировать ключи в реестр, или сохранить их в reg-файл для последующего использования/редактирования/импорта вручную.
     
    bl00dshot и hobot нравится это.
  18. John Freeman

    John Freeman

    Регистрация:
    13 май 2004
    Сообщения:
    14.241
    Кстати 00 08 00 00 не особо понятно где искать документацию. Знать бы ещё что это значит, есть большое подозрение что тупо отключение ускорения вообще.
     
  19. galogen

    galogen

    Регистрация:
    24 янв 2008
    Сообщения:
    36
    John Freeman, вполне возможно что это действительно тупо отключение ускорения, тем более что как раз до DirectX8 в DirectDraw никакого ускорения и не было. Я могу сказать только, что эти флаги не соответствуют флагам совместимости в свойствах файла. Эти флаги есть в части предустановленных настроек совместимости для игр, в том числе - для StarCraft 1.15 и Diablo 1.

    Nubilius, с WarCraft II BNE полёт нормальный, за исключением логотипа Blizzard в самом начале игры.
     
    bl00dshot нравится это.
  20. John Freeman

    John Freeman

    Регистрация:
    13 май 2004
    Сообщения:
    14.241
    Не поверишь, но оно очень давно было. Даже до DirectX...

    В совместимости дефолта идёт обычно 01 00 00 00
     
  21. galogen

    galogen

    Регистрация:
    24 янв 2008
    Сообщения:
    36
    Рад за тебя, что благодаря Vodoo 2 можешь играть в Blood под Glide :)
    Из Wikipedia: DirectDraw is a 2D API. That is, it contains commands for 2D rendering and does not support 3D hardware acceleration. <...> As of DirectX version 8.0, DirectDraw was merged into a new package called DirectX Graphics, which is really just Direct3D with a few DirectDraw API additions.

    По поводу 01 00 00 00 - не знаю, за что отвечают эти флаги, но артефакты они уж точно не убирают. Mortal Combat 3 и NHL PowerPlay используют 3D-графику, может быть там свои заморочки и свои флаги.
     
    Последнее редактирование: 26 сен 2010
    bl00dshot нравится это.
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление