No-CD для Tomb Raider 4. The Last Revelation |
Добро пожаловать, гость ( Вход | Регистрация )
No-CD для Tomb Raider 4. The Last Revelation |
Siberian GRemlin |
Apr 6 2009, 10:27
Сообщение
#1
|
Advanced Member Группа: CTPAX-X Сообщений: 537 Регистрация: 4-February 08 Пользователь №: 2 Спасибо сказали: 221 раз(а) |
Начну с того, что эта игра категорически отказывается воспринимать свой диск с какого-либо другого оптического привода кроме первого в системе. Поскольку игра в виде образа и в моей коллекции есть другие игры с подобными болезнями, но на физических носителях, то перетасовка приводов в системе не лучший выход. Лучшим выходом была бы отучалочка, но с ней возникли проблемы:
1. Игра перестаёт воспринимать видеоролики из папки "FMV" (папки Data, FMV, Audio, копируются с диска в папку с игрой + файлы .DAT, кроме language.dat -- он от программы установки) 2. Если отученная игра остаётся в папке куда была установлена с диска, то при запуске падает предложение отписаться дя диБиллу. Если папку переименовать, то игра работает. Изменение в ветке "HKEY_CURRENT_USER\Software\Core Design\Tomb Raider IV" ничего не дают. Прямо комповой какой-то завёлся. Вот этот зловредный способ отучения от диски: CODE procedure Patch; var MSTR: TFileStream; b1,b2,b3,b4: char; begin b1:=chr($43); b2:=chr($90); b3:=chr($2B); b4:=chr($1B); MSTR:=TFileStream.Create('.\tomb4.exe'),fmOpenReadWrite); if FileExists('.\English.dat') then begin //поддержка английских версий из США и Англии. Mstr.Position:=$73C06; end else begin Mstr.Position:=$739A6; end; Mstr.WriteBuffer(b1,1); Mstr.Position:=Mstr.Position+$30-1; Mstr.WriteBuffer(b2,1); Mstr.WriteBuffer(b2,1); Mstr.Position:=Mstr.Position+$18-2; Mstr.WriteBuffer(b3,1); Mstr.Position:=Mstr.Position+$A8; Mstr.WriteBuffer(b4,1); Mstr.Free; end; Буду рад если кто-то подскажет как эти две беды исправить. |
-=CHE@TER=- |
Apr 6 2009, 18:02
Сообщение
#2
|
Walter Sullivan Группа: Root Admin Сообщений: 1,360 Регистрация: 4-February 08 Пользователь №: 3 Спасибо сказали: 313 раз(а) |
Игра как-то странно проверяет диск... вернее потом с ним работает - достаточно просто закрыть процедуру проверки и она магическим образом начинает работать с файлами в текущем каталоге (даже всякие A:\ и C:\script.dat внутрях править не нужно).
QUOTE xor eax,eax inc eax retn Кстати, наверное будет проще универсальный патч сделать (как для TR1, RE1 и второй Кирандии), чем проверять какое смещение брать по языковым ресурсам. Для версии 1.0: QUOTE Смещение: Было Стало 000739B0: 83 33 000739B1: EC C0 000739B2: 18 40 000739B3: A1 C3 Для версии 1.1 (патч на AG.ru есть): QUOTE Смещение: Было Стало 00073C10: 83 33 00073C11: EC C0 00073C12: 18 40 00073C13: A1 C3 Кстати, не ставил игру - просто скопировал следующие файлы на жёсткий диск и вытащил CD: QUOTE [audio] [Data] [FMV] tomb4.exe SCRIPT.DAT us.dat binkw32.dll Readme.txt Ко всему прочему удалил из каталогов (первые три в списке) дублирующийся binkw32.dll - зачем его в каждый каталог понапихали - непонятно. И последнее - у меня игра с родным диском работала, но он был второй в системе, а не первый. Спасибо сказали:
|
Siberian GRemlin |
Apr 12 2009, 15:20
Сообщение
#3
|
Advanced Member Группа: CTPAX-X Сообщений: 537 Регистрация: 4-February 08 Пользователь №: 2 Спасибо сказали: 221 раз(а) |
Кстати, наверное будет проще универсальный патч сделать (как для TR1, RE1 и второй Кирандии), чем проверять какое смещение брать по языковым ресурсам. Думаю это будет полезно не только мне и на сайте будет хорошо смотреться. Кстати, ты как в универсальном проверяешь? По блокам ищешь? |
-=CHE@TER=- |
Apr 12 2009, 18:21
Сообщение
#4
|
Walter Sullivan Группа: Root Admin Сообщений: 1,360 Регистрация: 4-February 08 Пользователь №: 3 Спасибо сказали: 313 раз(а) |
Думаю это будет полезно не только мне и на сайте будет хорошо смотреться. В смысле "по блокам"? Нет - просто ищу последовательность байт, включая эти, которая больше нигде в файле не повторяется.Кстати, ты как в универсальном проверяешь? По блокам ищешь? Универсальный патч сделаю и выложу в ближайшее время, как руки дойдут. |
Упрощённая версия | Сейчас: 21st September 2024 - 18:56 |