Carmageddon 1997 - NoCD

Всё, что касается программирования на старых языках или для старых систем

Carmageddon 1997 - NoCD

Сообщение rvg » 04 сен 2024, 16:41

В старую игру Carmageddon, можно играть не устанавливая CD-Rom (привод компакт-дисков). Разместите файлы игры в папке %DISK% : \Games\Carma (где %DISK% - буква вашего диска).
В папке "Data" создайте файл "Paths.TXT", такого содержания
Код: Выделить всё
%DISK%:\Games\Carma
%DISK%:\Games\Carma
Full
English

(* где путь "E:\Games\Carma", должен быть адресом - вашей папки с игрой)
Теперь, если у вас версия игры соответствует с используемой здесь, вы можете изменить байты и свободно играть. Если не соответствует, читайте ниже - абзац поиск в байт в Ida (Интерактивном дизассемблере).
Используя Hex-редактор, измените в файлах "Carm95.exe" и "Carma.exe" инструкцию условного перехода на безусловный (Ida - адрес при просмотре в дизассемблере Ida, QView - адрес при просмотре в Hex-редакторе QView):
"Carm95.exe" Ida 04B0432 (QView AF832)
jnz loc_4B044C ; <- jmp
Изображение
"Carma.exe" Ida 059986 (QView 087186)
jnz loc_59999 ; <- jmp
Изображение

Поиск байт в любой версии игры.

Нужно найти строку "Please Insert The Carmageddon CD".
Изображение
Нужно найти строку "Please Insert The Carmageddon CD". Строка зашифрована. Вдаваться в подробности, о том, как мне удалось установить индекс строки - не будем. Вам, нужно найти место (в файлах программы) где она вызывается и перед ней изменить условный переход на безусловный.
Для этого потребуется Ida, хотя, если вы поняли принцип - можно сделать это одним Hex-редактором.
Для "Carm95.exe" нужно найти место где проталкивается индекс 0DFh (223),
так "push 0DFh".
Изображение
Для "Carma.exe", нужно найти пересылку в регистр, а не проталкивание,
это: "mov eax, 0DFh".
Изображение

Изображение
Последний раз редактировалось rvg 07 сен 2024, 14:59, всего редактировалось 3 раз(а).
Аватара пользователя
rvg
Мастер Даунгрейда
 
Сообщения: 661
Зарегистрирован: 18 июл 2023, 14:12

Вернуться в Программирование

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2