IPB

Добро пожаловать, гость ( Вход | Регистрация )

 
Reply to this topicStart new topic
> Blade Runner, имена файлов с текстом в разных версиях
Siberian GRemlin
Oct 28 2006, 18:39
Сообщение #1


Advanced Member
***

Группа: CTPAX-X
Сообщений: 473
Регистрация: 4-February 08
Пользователь №: 2
Спасибо сказали: 201 раз(а)



У меня такая проблема: игра Blade Runner, текст из псевдоархивы вынул, формат текста разрыл, написал редактор. Но вот игра выпущена в нескольких версиях английская, французская и германская (вроде всё). Язык меняется в blade.ini
QUOTE
[Language]
Language=ENG //или GER или...
Если поменять язык с ENG на GER, то игра перестанет воспринимать текст из своих файлов. А поскольку в псевдоархиве хранятся не имена, а только ID, и как я понял имя файла или его расширение зависит от языка. Кто-нибудь может посмотреть в .EXE'шнике, как формируется имя файла в зависимости от языка?! Как я понял файлы с текстом содержат в имени:
QUOTE
ACTORS
CLUETYPE
CRIMES
DLGMENU
KIA
OPTIONS
SPINDEST
VK
и по всей видимости там должно быть какое-то расширение. К сожелению, эксперемениты ни к чему не примели =(
Вот BLADE.EXE
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
-=CHE@TER=-
Jan 31 2009, 12:14
Сообщение #2


Walter Sullivan
***

Группа: Root Admin
Сообщений: 1,203
Регистрация: 4-February 08
Пользователь №: 3
Спасибо сказали: 287 раз(а)



Понимаю, что это было давно - но всё ещё актуально, нет?
Посмотрел бегло код (игры у меня нет) - там по-умолчанию язык ENG, и вместо него читаются из файла другие 3 буквы - какие указал. А дальше - см. ссылку на byte_482778 - это первая из этих 3-х букв (остальные не используются). Например имя звуковых файлов там так формируются:

// предположим, что:
// byte_482778 = "E"
// num1 = 3
// num2 = 4
// тогда
sprintf(outstr, "%02d-%04d%s.AUD", num1, num2, byte_482778);
// outstr = "03-0004E.AUD"

Имена формируются посредством strcat() в виде "ИМЯ" + ".TR" + byte_482778

Например как-то так: CLUETYPE.TRE
Соответственно, для GER будет CLUETYPE.TRG

Не проверял, т.к. игры нет, но судя по коду в IDA, где-то так всё и есть.
При наличии игры - это можно легко в Ольке проверить - ставь бряк на обращение к памяти и всё.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Siberian GRemlin
Feb 4 2009, 19:09
Сообщение #3


Advanced Member
***

Группа: CTPAX-X
Сообщений: 473
Регистрация: 4-February 08
Пользователь №: 2
Спасибо сказали: 201 раз(а)



Большую часть расколупал давно...

А вот откуда это имя файла взялось (со звуковыми файлами я ещё не разобрался) ?
QUOTE(-=CHE@TER=- @ Jan 31 2009, 19:14) *
// outstr = "03-0004E.AUD"

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
-=CHE@TER=-
Feb 5 2009, 05:43
Сообщение #4


Walter Sullivan
***

Группа: Root Admin
Сообщений: 1,203
Регистрация: 4-February 08
Пользователь №: 3
Спасибо сказали: 287 раз(а)



QUOTE(Siberian GRemlin @ Feb 4 2009, 19:09) *
А вот откуда это имя файла взялось (со звуковыми файлами я ещё не разобрался) ?
Не знаю - поищи строчку %02d-%04d%s.AUD и ссылку на неё перед её использованием или функцией где она обрабатывается - там где-то рядом тоже берётся byte_482778, поэтому про неё и написал. Откуда первые два числа берутся - не знаю, бегло смотрел, углубляться времени не было (скорее всего это номер главы игры и номер звука в этой главе).


Спасибо сказали:
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
-=CHE@TER=-
Dec 28 2017, 17:38
Сообщение #5


Walter Sullivan
***

Группа: Root Admin
Сообщений: 1,203
Регистрация: 4-February 08
Пользователь №: 3
Спасибо сказали: 287 раз(а)



Вот такую штуку нашёл: Reverse Engineering Blade Runner
Там много интересного, автор практически полностью дизассемблировал игру (см. The Blueprint), чтобы поддержку в ResidualVM добавить (ветка ScummVM). Правда сайт уже два года не обновляется и есть предположение, что не взлетит. Размер конский (ширина), но, если прокрутить, то справа есть меню со статьями и информаций по форматам и многим другим вещам.
Я недавно читал про Blade Runner (игру так и не успел посмотреть) и там было сказано про две пасхалки через командную строку: SITCOM и SHORTY. Сделав поиск в BLADE.EXE увидел после них ещё слово MS3TK, но погуглив в Интернете, нашёл только этот сайт, где в The Blueprint оно было упомянуто. Так что чего оно делает не знаю (повторюсь, в игру не играл и качать мне влом).
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0 -

 



Упрощённая версия Сейчас: 17th September 2019 - 19:32