Мой пример для X-Tension.
В игре ХТ нет озвучивания Экспериментала и Персея.
А в Х2 есть.
Пошаговое действие:
1. Ищем в папке "Х2\Т\" текстовый файл с нужными словами.
70001.xml:
<t id="4731">Экспериментальный Шаттл</t>
<t id="4931">Паранидский Персей</t>
2. Розмещаем программу в папке "Х2\mov\", загружаем файл 00007.xml, загружаем файл 00107.dat.
3. Задаем в поиск программы 4731 и 4931.
Получаем:
<t id="4731" s="15950554" l="2003"/>
<t id="4931" s="16551113" l="1707"/>
4. Сохраняем данные участки.
5. Теперь пошла уже довольно сложная работа.
С помощью звукового редактора присоединяем выбранные участки к файлу 00144.мр3 Экстэна.
6. Вычисляем время которое будем потом вносить в обж.
Берем файл разметки для звука ХТ:
смотрим последнюю строку: <t id="1100126" s="20834144" l="3199"/>.
Получаем крайнее значение 20834144+3199=20837343
7. Теперь, для Экспериментала, к 20837343 присоединяем 2003 = 20839346.
Для Персея 20839346 и 1707.
8. Программой для звука ХТ ищем ИД-номер который не используется в игре.
Я взял 814002 и 814004.
9. С помощью дизассемблера CheckerTwo из 001.obj получаем разобранный на тексты обж.
Нас интересует раздел звука т.е. класс: 0001-TX_AUDIO.txt.
10. Поиском блокнота находим адреса для 814002d и 814004d:
Чтение идет снизу вверх:
Код: |
00014C5A: 0001 31B5 | 8241 pushw 12725d ; 31B5h - продолжительность звучания
00014C5E: 0002 0000FD19 | 8242 pushd 64793d ; 0000FD19h - время от начала файла
00014C64: 000B | 8243 push 2
00014C66: 002F | 8244 create_array
00014C68: 0002 000C6BB2 | 8242 pushd 814002d ; 000C6BB2h - ИД-номер
00014C32: 0001 0E38 | 8237 pushw 3640d ; 0E38h
00014C36: 0002 00014A92 | 8238 pushd 84626d ; 00014A92h
00014C3C: 000B | 8239 push 2
00014C3E: 002F | 8240 create_array
00014C40: 0002 000C6BB4 | 8238 pushd 814004d ; 000C6BB4h |
11. С помощью калькулятора переводим наши новые цифры в гекс:
Экспериментал:
20837343=013DF3DF
2003=07D3
Персей:
20839346=013DFBB2
1707=06AB
12. Открываем гекс-редактором 001.obj
Задаем в поиск адреса: 00014C5A и 00014C32.
Далее меняем так:
Экспериментал:
Код: |
00014C5A: 0001 07D3
00014C5E: 0002 013DF3DF
00014C64: 000B | 8243 push 2
00014C66: 002F | 8244 create_array
00014C68: 0002 000C6BB2 | 8242 pushd 814002d ; 000C6BB2h |
Персей:
Код: |
00014C32: 0001 06AB
00014C36: 0002 013DFBB2
00014C3C: 000B | 8239 push 2
00014C3E: 002F | 8240 create_array
00014C40: 0002 000C6BB4 | 8238 pushd 814004d ; 000C6BB4h |
13. Теперь в текстовый файл 44001.txt добавляем строки:
814002 "Экспериментальный Шаттл"
814006 "Экспериментал"
814004 "Персей"
814008 "Ваш Персей"
14. И последнее - в экзешник ХТ редактором меняем номера названий кораблей на 814002 и 814004 соответственно.
Всё!
Здесь немного спрощено, а я добавлял ещё и описание в звук, обж и текст:
Cкрытый текст (кликните здесь для просмотра)
814002 "Экспериментал"
814003 "Экспериментальный шаттл. Об этом корабле известно не слишком много. Полагают, что он способен преодолевать огромные расстояния без использования врат, генерируя собственный туннель в гиперпространстве. Но пока аргонским ученым не удалось починить гиперпространственный двигатель шаттла. В момент постройки этот корабль считался самым быстрым в своем классе. Кроме того, его единственный в своем роде дизайн не останется незамеченным при посадке на любую станцию."
814006 "Экспериментал"
814004 "Паранидский Персей"
814005 "Персей является дальнейшим развитием Прометея. Первый тестовый полет осложнился похищением корабля пиратами, потребовалось внешнее вмешательство для возвращения корабля. Изначально на корабль были установлены щиты, обычно используемые на крейсерах, однако, они вносили сбои в работу некоторых внутренних систем, поэтому щиты были заменены на стандартные."
814008 "Ваш Персей"
|
Конечно, для Х2 и Х3 все намного проще - после соундфоржа новые цифры нужно добавить в файл звуковой разметки, в текст (новый ИД) и новые номера в файлы папки "types".
Т.е. работать с обжем и экзешником, в Х2 и Х3, не нужно.