Как убрать проверку диска в игре?

Тема в разделе "WASM.BEGINNERS", создана пользователем ivekarp, 19 мар 2023.

  1. ivekarp

    ivekarp New Member

    Публикаций:
    0
    Регистрация:
    19 мар 2023
    Сообщения:
    2
    Всем привет! Хочу сделать no-cd патч для игры Beavis and Butthead do U. При запуске игра выводит окно с сообщением "You must have the Beavis and Butthead do U CD inserted to play the game...". В интернете говорят, что надо искать функцию GetDriveType. Нашел функцию GetDriveTypeA, но дело в том, что на неё игра не прыгает (по крайней мере до вывода окна). Нашёл функцию, которую Гидра назвала как "krnfileDeviceIsResponding", думаю, что она как раз и является ключевой в проверке cd.
    В этой функции, изменив одно условие, добился того, что разрешение экрана меняется на 640 х 480 (что, я думаю, говорит о том, что игра вот-вот и запустится без диска), после чего выходит окно, но уже с другим сообщением (вместо "You must have ... CD" -> "Unable to access drive D..." ), при закрытии которого разрешение возвращается.
    Листинги прилагаю: асм , си.
    Скрины: до / после
    Подскажите пожалуйста, что можно ещё попробовать сделать, чтобы отучить игру от CD ?
     
  2. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.966
    В приведенном листинге процедура, которая в любом случае выводит ошибку в зависимости от первого параметра в стеке, разница только в том, какую. Очевидно условие, при котором ошибка выводится, не здесь. Ну и сам текст второй ошибки намекает, что игра хочет какие-то файлы на диске найти.
     
  3. ivekarp

    ivekarp New Member

    Публикаций:
    0
    Регистрация:
    19 мар 2023
    Сообщения:
    2
    все файлы с диска перекинул в папку с игрой, но кажется догадываюсь, что надо теперь проверить, чтоб игра искала их не на диске, а в папке