Выделить изменения за дату (для работы необходим JavaScript):

vs

pwrslave.png; 269x41; 4,486 b
exhumed.png; 278x73; 3,194 b


Who said white man can't jump?
© Jon (PowerSlave / Exhumed)
> Play


pm3d2.gif; 109x150; 91,552 b


Данная страничка посвящена поиску различий между двумя версиями одной и той же игры, а именно PowerSlave или Exhumed.



На повестке дня:



Что это вообще такое?


Это такая игра на движке от Duke Nukem 3D (использовался только в PC версии!), где играющий выступает в роли очередного борца со злом - Jon'а, которого послали в Египет разобраться с наплывшей туда нечестью.

Игра выходила под следующие платформы: Sega Saturn, PlayStation и, естественно, PC. Как это ни прискорбно отмечать все три версии разнятся как небо и земля начиная от совершенно различных уровней и заканчивая движком (Sega Saturn, например, имел движок очень схожий с движком первого Quake, да ещё вдобавок динамическое освещение). Вдаваться в подробности я не буду - кто захочет, может сам почитать где-нибудь тут: PowerSlave (кстати, там очень подробно расписано всё, что связано с различиями версий под разные платформы). Здесь же будут рассмотрены различия только двух версий данной игры вышедшей на PC.



Версии под PC

Как уже говорилось, существует две версии игры вышедшей на PC (в скобках указано, где издавалось под этим именем):

Данное различие, видимо, связано с существование музыкальной группы PowerSlave в Европе. Похожая ситуация была у Capcom, когда они решили издать свою игру BioHazard за пределами Японии и им пришлось сменить имя на Resident Evil, т.к. имя BioHazard жёстко держала какая-то музыкальная группа.

Игра также выходила в Японии под названием Seireki 1999: Pharaoh no Fukkatsu (только на Sega Saturn) - но это редкое издание и мне оно ни разу не попадалось. На английский это название переводится примерно так: 1999 A.D.: Revival of Pharaoh.



В чём же различия этих двух версий?

Для начала скажу так - различия этих двух версий (Exhumed и PowerSlave) совершенно несущественны. Чтобы кто не говорил - не верьте - это одна и так же игра. Обе эти версии, кроме названия и обложки, различаются... только .EXE файлом! Можете не верить, но это так.

Итак, начиная с этой строчки идёт полное сравнение (по байтам) всех файлов обеих версий игр.

"Поехали!" © Юрий Гагарин



Сравнение версий

  1. Первое, на что сразу обращаем внимание - разный размер файлов "STUFF.DAT" (в этом файле-архиве хранятся все ресурсы игры: звуки, текстуры, уровни и т.д.). Итак, в Exhumed в отличие от PowerSlave, в "STUFF.DAT" были добавлены следующие файлы:

    • JON-HIT3.VOC
    • JON-T-1.VOC
    • JON-T-2.VOC
    • JON-T-3.VOC
    • JON-T-4.VOC
    • JON-T-5.VOC
    • JON-T-6.VOC
    • JON-T-7.VOC
    • JON-T-8.VOC
    • VATR_GO.VOC

    При этом:

    1. JON-T-?.VOC являются аналогами уже существующих в архиве JON_T_?.VOC
    2. JON-HIT3.VOC является аналогом уже существующего в архиве JON_HIT3.VOC
    3. VATR_GO.VOC полностью идентичен уже существующему в архиве MOVESTRT.VOC (зачем было делать ещё один файл?..)

    Файлы из 1. и 2. такие же как свои аналоги, только немного лучше звучат (без явного шума).

    Что самое забавное - в исполняемом файле ("EX.EXE") нет ни одного из этих 10 файлов (их имён). Т.е. в архив их добавили, но игрой они НЕ используются.

  2. Едем дальше. В Exhumed первая строчка "CONFIG.CFG" файла:

    ;Setup File for EXHUMED

    В PowerSlave:

    ;Setup File for POWERSLAVE

    Игрой эти строчки не проверяются - т.к. это комментарии (строка начинающаяся с символа ';'). Различие, как понятно, чисто косметическое.

  3. Исполняемые файлы

    Exhumed: "EX.EXE" - 825314 байт

    PowerSlave: "PS.EXE" - 818966 байт

    Какие внутри них различия, увы, без их исходного кода кто-либо вряд ли возьмётся сказать. Но они есть. Забавная вещь - я думал, что если "EX.EXE" переименовать в "PS.EXE" (или наоборот), то можно получить вторую версию. Кхех, оказалось, что нет.

    Также различия обнаружены в файлах "MENU.EXE" (это SETUP для игры - настраивает звук, управление, разрешение экрана и т.д.):

    Exhumed: "MENU.EXE" - 313267 байт

    PowerSlave: "MENU.EXE" - 406173 байт

    Чего можно было такое в банальном SETUP'е, чуть ли не на 100 Кб изменить - хоть убейте, не знаю...

  4. CD-ROM диски

    PowerSlave, в отличие от Exhumed, содержит на диске файл "README.TXT" с небольшим мануалом о том, как запускать игру (из файла видно, что это издатель (Playmates) позаботился).

    Ещё различия имеются в файлах "INSTALL.EXE":

    Exhumed: "INSTALL.EXE" - 262240 байт

    PowerSlave: "INSTALL.EXE" - 252981 байт

    CD-диски игр имеют следующие метки тома (Volume Label):

    Exhumed: EXHUMED

    PowerSlave: PWRSLAVE

    AudioCD дорожки идентичные - смотрел и слушал через ExactAudioCopy - время звучания и размер были одинаковые.



Что в итоге?

Так вот... все остальные ресурсы у обеих игр - идентичные! Т.е. архив "STUFF.DAT" для обеих игр содержит в себе как логотипы Exhumed, так и PowerSlave. Все различия только в .EXE файлах. Таким образом при загрузке "EX.EXE" увидите логотип "BMG Interactive", а при "PS.EXE" - "PIE (Playmates Interactive Entertainment)" (потому что разные издатели). Ну и, естественно, везде изображения с надписью Exhumed сменятся на PowerSlave.

Как видно - это одна и та же игра. За исключением пары нюансов. Для интереса я даже прошёл тренировку и первый уровень в Exhumed (до этого у меня был PowerSlave) - никаких различий я не нашёл.

Справедливости ради стоит заметить, что Exhumed - это доработанная версия PowerSlave. Дело в том, что Exhumed вышел несколькими месяцами позже (см. горячие клавиши ниже для получения даты и времени сборки игры) за которые игру успели немного отшлифовать.

Так что если хочется просто поиграть не заморачиваясь на том какую версию ставить, то лучше выбрать Exhumed. Просто исторически так сложилось, что мне в руки когда-то давно попал CD-диск именно с PowerSlave, поэтому, до того как влезть во все эти технические подробности, я считал что обе эти игры полностью идентичны друг другу.



DEMO-версии

А вот DEMO-версии этих игр различаются весьма существенно.


PowerSlave DEMO: в отличие от своего европейского коллеги содержит 4 полноценных первых уровня, а также рабочие cheat-коды.

Файлы:


Exhumed DEMO: всего 1 первый уровень (хотя есть файлы от 2 и 3), а также не работают cheat-коды.

Файлы:


Другие различия


Всё остальное в DEMO-версиях - одно и то же. Более того, просто перекинув EX.EXE к PS.EXE (т.к. у последнего файлов больше - те самые 7 штук, без которых он не работает) добился того, что обе версии игры работали на одном STUFF.DAT архиве.


Попалась в руки ещё и BETA версия PowerSlave (где взять - см. дальше). Её отличия от других:

menuptrb.png; 51x33; 615 b

Гранаты летят куда надо, а не под ноги! Увы, к полной версии игры главный герой практически разучился их кидать...

menuptrf.png; 51x33; 1,015 b

7 оружия нет - вместо него посох, который в обычной игре доступен только после того, как в героя попадёт красный шар выпущенный мумией.

menuptrb.png; 51x33; 615 b

Пауки совсем не красные, а коричневые, даже скорее телесного цвета.

menuptrf.png; 51x33; 1,015 b

Другой логотип у издателя PIE.

menuptrb.png; 51x33; 615 b

Есть фон в меню (см. галерею ниже).

menuptrf.png; 51x33; 1,015 b

Этот самый указатель в меню тоже немного изменился, а сцены смерти главного героя и монстров были не такими кровавыми.

menuptrb.png; 51x33; 615 b

Хотя в BETA всего два уровня (это первые уровни обычной игры - их просто сильно переделали, но отдельные моменты узнаются сразу), но карта полная и, в отличие от полной версии, более чёткая, а на первом экране (самый низ) в русле реки... "белеет парус одинокий" (см. галерею).

menuptrf.png; 51x33; 1,015 b

Есть два экрана справки по F1, где описаны cheat-коды ALT+G (бессмертие) и ALT+W (всё оружие) - в полной версии их убрали. Зато ALT+C (см. ниже) всё ещё работает.

menuptrb.png; 51x33; 615 b

Файлы со звуками .VOC переименованы в .GRR и зашифрованы тем же алгоритмом что и текст (см. ниже) - логической операцией "Not".



Ключи и коды

Ключи командной строки и cheat-коды для игры. Кое-что из описанного здесь впервые публикуется в Интернете. Всё описанное ниже проверялось только на полных версиях игр - на проверку DEMO и BETA времени не было, да и не особо хотелось как-то. Да, кстати, если не оговорено обратное, то можно указывать сразу несколько ключей.


Ключ Описание (чего делает)
/nocreatures

На уровнях не будет врагов. Не знаю насколько безопасно играть с этим ключом - потому как если есть уровни, где уничтожение врагов необходимо для перехода на следующий, то они станут непроходимыми.

/nosound

Отключает все звуковые эффекты (CD-музыка всё равно играет).

/record

Записывает прохождение игры в файл "DATA.VCR".

/playback

Проигрывает записанное ранее из файла "DATA.VCR".

/null
/modem
/network

Должен указываться только один из этих ключей - запуск сетевой игры через тот или иной протокол обмена данными (если я не ошибаюсь: null-модем, модем и IPX).

/h

Запускает игру в "Hi-Res" режиме - разрешении 640x400 вместо 320x200 независимо от настроек выбранных в Setup (кстати, там ошибка - написано 640x480 вместо 640x400).

/s#

# - это должно быть число. Задаёт номер сокета для сетевой игры, который потом нигде не используется. По всей видимости, ключ остался от ранней или отладочной версии игры.

/t#

# - это должно быть число. Ограничение времени игры (в секундах?) для сетевого режима. Если не писать число, то в игре будет только 1 жизнь на прохождение уровня вместо 3-х и панель статуса снизу будет покрыта текстурой по умолчанию - т.е. ни здоровья, ни патронов, ни всего остального видно не будет - вот так (62,125 байт). Происходит это в силу того, что код игры достаточно кривой и сетевой режим проверяется по значению разных переменных, а не какой-то одной. В результате чего часть необходимых переменных для сетевой игры оказывается не инициализированна и появляются ошибки. При старте сетевой игры значение ограничения по времени читается из .CFG файла и этот параметр игнорируется.

/#

# - это номер уровня; игра сразу стартует с него, пропуская все экраны логотипов и вступительный ролик. Сохраниться в этом режиме нельзя.

Возможные значения: 0 (тренировка), 1-20 (одиночная игра), 21-32 - уровни для сетевой игры.

Внимание: без ключа /CDOFF или No-CD патча игра зависнет с "чёрным экраном" выход из которого - клавиша ESC!

/cdoff

Это означает "CD off". Грубо говоря встроенный No-CD. Помогает, если игра не видит свой диск. Т.е. она запустится, но если диск есть в первом по счёту CD/DVD дисководе, то музыка с него всё равно будет играть без проблем. Совет тот же, что и при установке No-CD: не забудьте скопировать файл "BOOK.MOV" с диска в каталог к игре, в противном случае не будет видеороликов.

Отдельно необходимо заметить, что Exhumed всё равно будет требовать MSCDEX-совместимый драйвер (в DOSBox для этого достаточно смонтировать образ диска или реальный CD/DVD-ROM).


У "INSTALL.EXE" на CD-диске тоже есть ключи командной строки - всего два: /nocd и /nocopy. Первый даёт запустить установщик даже не с CD-диска (впрочем, у меня установка всё равно прерывалась с ошибкой), а второй не даёт копировать файлы - только создаёт каталог назначения во время установки и всё - установка на этом заканчивается.


А теперь плавно переходим к другим вещам - cheat-кодам. Все коды вводятся во время игры в нижнем регистре.

КодДействие
KIMBERLY

Выводит надпись "HI SWEETIE, I LOVE YOU" - должно быть послание одного из разработчиков своей любимой девушке. Всё было бы замечательно, если бы вместо этого послания разработчик проверил как остальные коды работают - тогда бы и ошибок не было (см. далее). Кстати, я нигде в Интернете не нашёл упоминания об этом коде, т.к. он, как и другие, зашифрован в ресурсах игры - подробности дальше по тексту. Но, в отличие от других кодов, разработчики о нём, естественно, нигде не писали (и, подозреваю, даже не все из них знали о его существовании).

Гадать кто автор этой "пасхалки" не приходится - в титрах игры упомянуты всего два человека ответственных за программирование - видимо кто-то из них (скорее всего первый):

John Yuill (Game Programming)

Paul Haugerud (Additional Programming)

LOBOLITE

По идее, должно выводить надпись "FLASHES TOGGLED", однако, из-за ошибки в коде игры, выводит "SNAKE CAM ENABLED" от кода ниже. В Интернете нашёл два описания этого кода: одно (самое распространённое) утверждает, что код должен включать / отключать вспышки при выстрелах и взрывах, а другое - что код включает / отключает освещение в тёмных частях уровня. Ни то ни другое неверно - проверено. Возможно, код что-то такое и должен был делать, но его недоделали, так что он не делает ровным счётом ничего и каждый может убедиться в этом самостоятельно поглядев код игры под дизассемблером.

LOBOSNAKE

Тот самый код, который и должен был выводить надпись "SNAKE CAM ENABLED", однако, из-за ошибки в коде игры ничего не выводит, так что узнать, включился он или отключился, можно только проверив работу оружия под цифрой 6 - змей. При включённом коде после выстрела камера перемещается в голову выпущенной змеи и позволяет увидеть в кого она летит.

LOBOSPHERE

Код должен был выводить надпись "FULL MAP"... А так он работает - показывает всю карту, только отключить его нельзя.

LOBOCOP

Всё оружие и 99 патронов к каждому из них.

LOBODEITY

Включает / отключает бессмертие.

LOBOPICK

Все ключи.

LOBOSLIP

Включает / отключает прохождение сквозь стены (noclip).

LOBOSWAG

Все предметы.

LOBOXY

Включает / отключает отображение текущих координат и FPS (количество кадров в секунду).

HOLLY

Включает этакую консоль. Чтобы выйти из неё - нужно просто нажать ENTER, когда строчка набора пустая. Коды, которые можно там набирать (после набора, надо нажать ENTER):

GOTO X,Y - перемещает на текущем уровне в точку с координатами X и Y; посмотреть координаты можно при помощи предыдущего кода; например, если на первом уровне набрать "GOTO 31000,22000" (без кавычек), то игрок будет перемещён в начало (кстати, об этом коде тоже упоминаний в Интернете не нашёл, хотя он в открытом виде написан внутри исполняемого файла любой из этих игр).

LEVEL ## - перемещает на указанный уровень, где ## - число от 01 до 32 (все уровни выше 20 - для сетевой игры).

DOORS - открывает все двери, впрочем, ловушки тоже активирует (подозреваю, что просто-напросто активирует все триггеры).

EXIT - завершить текущий уровень.

CREATURE # - создать монстра, где # - его номер из списка:

0 - Anubis

1 - Spider

2 - Mummy

3 - Piranha

4 - Bastet

5 - Magmantis

6 - Ammit

7 - Set

8 - Kilmaatikhan

9 - Kilmaat Sentry

10 - Kilmaat Sentry

11 - Omen Wasp

12 - Selkis

13 - Rat


Ещё хочу рассказать о том, как находились ключи командной строки и коды. Ну, с ключами всё просто - достаточно пропустить исполняемый файл игры через дизассемблер. А вот с кодами интересней - дело в том, что в каждой из этих игр есть внутри исполняемого файла место с зашифрованными строчками. Пока я ползал взад-вперёд по коду игры, отыскивая что там есть интересного, то часто наталкивался на какие-то строчки выглядевшие как абракадабра. После того как мне на глаза очередной раз попалась такая строчка - любопытство взяло верх над ленью и я заглянул внутрь файла посмотреть что же там такое. Ничего интересного, кроме набора бессмысленных символов, я там не увидел, однако, меня смутило то, что ссылки на эти строчки часто встречаются рядом со ссылкой на строчку EOF - это известное сокращение от "End Of File" (конец файла). А в листинге программы из дизассемблера было видно, что все эти строчки перебираются одна за другой, пока не будет найдена нужная или пока строчка не будет равна EOF. Т.е. получалось, что игра проверяет все эти строчки, пока не встретит последнюю - EOF. Все строчки идут друг за другом и заканчиваются на символ 0 (ASCIIZ-строки), причём последняя должна быть "EOF\0". Отсюда всё сразу стало понятно - немного пройдясь по тому месту, где были эти строки, я нашёл где они кончаются - и там, действительно, в конце оказались три байта перед и после которых был 0 - $BA, $B0, $B9. Зная, что это заглавные буквы "E", "O" и "F", я, выписав их битовое представление, сразу увидел, что ко всем байтам просто-напросто была применена операция "Not". После этого я написал дешифровщик всех этих строк, а внутри уже увидел коды и всё остальное.


Этот дешифровщик и предлагаю всем скачать - в зашифрованных строках игра хранит не только коды, но и сообщения, которые они должны выводить, а также остальной текст из игры:


Exhumed / PowerSlave executable message decrypter v1.1 (11 478 байт)

Архив содержит в себе исходные коды для TC2 (DOS16) / GCC 3.2 (Win32), а также готовый исполняемый файл.

Все секции для удобства после дешифрования будут заключены в квадратные скобки - например так: "[END]". Программа работает с обеими версиями игр, в том числе и с их DEMO, а также с BETA версией PowerSlave (там немного другой формат) - последние три можно найти здесь: RTCM - Files - Powerslave Shareware.


Напоследок нужно сказать о паре, возможно, кому-то неизвестных клавиш:

ALT + C - переключает между видами "от третьего лица" и "из глаз".

ALT + V - показывает версию (дату) игры:

F7 и F8 - уменьшить и увеличить чувствительность мышки; почему-то настроить из Setup эти клавиши нельзя, хотя для них зарезервированы два ключевых слова Mouse_Sensitivity_Up и Mouse_Sensitivity_Down для использования в файле "SETUP.CFG".

F11 - переключает яркость от 1 до 5 по кругу; при значении 5 даже становится не нужен факел - т.к. стенки в тёмных местах становятся яркими как тут (43,719 байт).



Галерея

Здесь собраны изображения, которые были извлечены из игровых ресурсов специальными конвертерами. Никаких PrintScreen - только оригинальное качество.

Отдельное спасибо товарищу Axsis'у за помощь с графикой из Sega Saturn версии!


PowerSlave / Exhumed / Seireki 1999: Pharaoh no Fukkatsu (Sega Saturn)

Фон меню (PowerSlave) (30,524 байт).

Фон меню (Seireki 1999: Pharaoh no Fukkatsu) (26,885 байт).

Фон меню (Exhumed) (30,072 байт).

Ezra Dreisbach* (52,315 байт).

Логотип Lobotomy Software, Inc. (29,427 байт).

Логотип BMG (Exhumed) (1,868 байт).

Логотип PIE (PowerSlave) (2,714 байт).

Экран статистики? (11,886 байт).

* Ведущий программист версии игры для Sega Saturn - см. его фото здесь в файле "lobotomyinterview.jpg" в самом конце страницы (правый-верхний угол на фото). Похоже, что это "пасхальное яйцо".


PowerSlave (PlayStation)

Фон меню (40,126 байт).

Карта уровней (278,670 байт).

Экран загрузки уровня (32,560 байт).


PowerSlave (PC, BETA)

Фон меню (21,843 байт).

Карта уровней (349,658 байт).

Логотип PIE (3,203 байт).

Экран справки 1 (22,446 байт).

Экран справки 2 (21,811 байт).


PowerSlave / Exhumed (PC, Retail)

Примечание: ресурсы помеченные "*" в игре есть, но нигде не используются.

Фон меню (PowerSlave)* (29,160 байт).

Фон меню (Exhumed)* (20,852 байт).

Карта уровней (350,713 байт).

Логотип Lobotomy Software, Inc. (25,347 байт).

Логотип PIE (PowerSlave) (2,863 байт).

Логотип BMG (Exhumed) (2,031 байт).

Экран справки 1* (35,214 байт).

Экран справки 2* (39,624 байт).

В игре, как известно, заставка выполнена в виде видеоролика ("BOOK.MOV"), но на ранних стадиях разработки, видимо, просто выводился текст как между уровнями со слайдами на заднем плане. Слайд с номером 4 ещё используется в игре как заставка, когда у игрока кончаются все жизни.

Слайд вступления 1* (34,861 байт).

Слайд вступления 2* (44,329 байт).

Слайд вступления 3* (32,997 байт).

Слайд вступления 4* / GAME OVER (40,477 байт).

Слайд вступления 5* (35,393 байт).

Слайд вступления 6* (41,809 байт).

Слайд вступления 7* (25,765 байт).

Слайд вступления 6* (26,079 байт).

Слайды, которые отображаются между некоторыми уровнями с текстом повествования. Не уверен, используется ли слайд 6 (плохая концовка), т.к. последний уровень сильно замороченный и проверить я не смог (чтобы получить плохую концовку надо убить главаря и, по-видимому, оставить хотя бы одну из 15 башен (Towers) не уничтоженной).

Слайд истории 1 (36,417 байт).

Слайд истории 2 (46,034 байт).

Слайд истории 3 (22,149 байт).

Слайд истории 4 (31,361 байт).

Слайд истории 5 (2,496 байт).

Слайд истории 6 (23,766 байт).

Слайд истории 7 (15,748 байт).


Вообще, ресурсы игр очень легко достать, т.к. версия для PC использует движок Build, а значит большая часть утилит предназначенных для Duke Nukem 3D подойдут и для этих игр. Например, распаковщик "DUKE3D.GRP" подойдёт для извлечения файлов из "STUFF.DAT".

Один из нестандартных ресурсов - это видео в файле "BOOK.MOV". Нужно сразу заметить, что этот формат не имеет ничего общего с .MOV файлами QuickTime. Практически полностью разобрал его - вот краткое описание моих изысканий:


Exhumed (PowerSlave) for PC "BOOK.MOV" video file description

Если кто-то сможет разобрать формат до конца - пишите, дополню документацию.

Вот, например, первый кадр (18,340 байт) извлечённый по данному описанию.

А вот это - декодировщик с исходными кодами на C, хоть и не полный (неизвестно за что отвечают данные из заголовка):


Exhumed / PowerSlave video file BOOK.MOV decoder v1.1 (4 538 байт)


Exhumed / PowerSlave DeHacker

Эта утилита модифицирующая исполняемые файлы упомянутых игр, позволяя тем самым добавить некоторые возможности как в современных играх. Для её написания мне пришлось не только изучать код этих игр, но и исходные коды Duke Nukem 3D, который использует тот же движок Build, только немного улучшенный. Основная затея этой программы была сделать управление в игре таким же, как и в Duke Nukem 3D, чтобы играть можно было спокойно, не зажимая, аки осьминог, кучу клавиш одновременно (бег, стрейф, обзор мышью и т.д.).

Итак, что же может программа:

Revert [Run] logic (always run)

Игрок всегда будет бегать, пока клавиша бега НЕ нажата (логика работы этой клавиши меняется на противоположную), т.е. теперь не нужно всё время держать эту клавишу нажатой.

Always [Mouseview]

Обзор мышкой всегда будет включён - нет необходимости держать всё время клавишу "Mouseview". Хочу заметить, что код обзора мышкой ужасен - мало того, что игра постоянно пыталась выровнять взор по центру, а обзор влево / вправо при включённом режиме Strafe (см. ниже) заставлял мышку двигать игрока влево / вправо, вместо поворота, так ещё и управлять взором нельзя было при движении вперёд и назад! Пришлось изрядно повозиться, чтобы это безобразие исправить. Теперь всё нормально.

Tweak strafe buttons code.

В игре довольно кривой код для обработки кнопок Strafe_Left и Strafe_Right, в результате чего движение при их помощи даже медленнее, чем Strafe + Turn_Left / Turn_Right. Данный патч исправляет это и позволяет двигаться этими кнопками также быстро, а также поворачиваться во время их использования (чего, почему-то, в оригинале делать было нельзя).

/CDOFF always enabled (No-CD)

Этот патч устанавливает флаг включаемый параметром /CDOFF в командной строке, т.е. игра не будет требовать CD-диск для запуска, а также для Exhumed отключает проверку драйвера MSCDEX.

Allow F12 key to take screenshots

Возвращает в игру возможность снимать скриншоты в файлы "CAPT####.PCX" по нажатию клавиши F12 как и в других играх Build. Также отключает шипение PC Speaker во время записи файла, так что создаваться они будут ОЧЕНЬ быстро. Нужно отметить, что, вообще говоря, в игре есть возможность снимать скриншоты, однако через какую-то странную комбинацию клавиш с кодом 105 (0x69). Вроде бы, это должно быть Alt+F2, но при нажатии этой комбинации ничего не происходит - думаю, что из-за того что разработчики игры внесли ошибки в код движка Build для работы с клавиатурой (там какие-то очень странные вещи творятся).

Fix C key to work properly

Нажатие на клавишу C в игре срабатывает через раз, что неудобно для тех, кто привык играть назначив на неё какую-нибудь функцию управления. Эта проблема является следствием кривого метода обработки комбинации Alt+C (переключение на вид от третьего лица и назад). Данный патч исправляет это странное поведение и стабилизирует работу клавиши.

Fix incorrect cheat codes messages

Исправляет кривые и отсутствующие сообщения у cheat-кодов LOBOSNAKE, LOBOSPHERE и LOBOLITE, а также отключает отображение неверных у пары других (появлялись на мгновение, затем затирались другими).

Invert mouse aim

Позволяет обратить движение мышки по вертикали (оси Y). Может кому-то пригодится - в самой игре такой возможности не предусмотрено.

Tweak grenade throw code

Отключает суммарную скорость передвижения игрока в рассчёте дальности броска гранаты. Теперь дальность будет зависеть только от того как долго была удержана клавиша стрельбы. В оригинале, даже при беге назад, гранаты улетают куда-то очень далеко, в то время как если стоять и не двигаться, то практически всегда падают под ноги, даже если долго удерживать клавишу стрельбы.

Fix replaying level checkpoint load

Отключает загрузку последней точки сохранения при повторном прохождении какого-либо уровня два раза подряд. В игре можно сохраниться на уровне активировав иконку скарабея. При повторной попытке загрузить только что пройденный уровень снова игра, за каким-то чёртом, выкидывает к последней такой активированной иконке, а не к началу уровня. Данный патч отключает это безобразие.

Tweak player movement prediction for enemies

Убирает дельту из формулы расчёта передвижения игрока, чтобы враги не стреляли куда попало. В принципе, идея стрелять немного с упреждением прикольная, но реализована уж очень фигово - если резко менять направление движения, не говоря уже о стрейфе, то формула расчёта заставляет врагов стрелять куда попало, иногда даже в направлении параллельном движению игрока. После применения этого патча, враги будут стрелять в ту точку, где находится игрок в момент выстрела - как и во многих других играх подобного жанра.

Always show subtitles in briefings

Субтитры всегда будут отображаться вместе с анимацией речи (в конце уровней 1 и 11). Помогает, если английский не родной язык и с пониманием на слух проблемы (или кто-то текстовый перевод надумает делать).

Disable Omen Wasps flying sound

Заменяет ужасно надоедающий звук Omen Wasps ("большой полосатый мух - ос") на пустышку. Обратите внимание, что теперь враги будут прилетать бесшумно! Также этот патч меняет приоритет загрузки звуковых .VOC файлов: сначала из текущего каталога игры, а уже потом из "STUFF.DAT" архива.

Custom resolution

Позволяет выбрать любое разрешение экрана поддерживаемое движком Build помимо 320x200 и 640x400. Обратите внимание, что пара мелочей в интерфейсе игры завязано на старое разрешение, поэтому, например, при выборе тренировочного уровня во время игры, текст-запрос о продолжении будет находиться по центру экрана, а его чёрный фон - в левом верхнем углу, вместо положенного места. Также игра не тестировалась на всех возможных разрешениях, например на 1600x1200 - у меня просто напросто нет монитора поддерживающего такое разрешение.

Modding setup

Отдельные патчи для создания своей модификации или дополнения к игре. Настоятельно НЕ РЕКОМЕНДУЕТСЯ ставить или использовать для обычной игры!

Saved games editor

Редактор сохранённых игр. Редактировать можно только то, что игра не игнорирует (типа количества жизни-здоровья, которое хоть и сохраняется, но сбрасывается на полное после загрузки уровня).

Работать с программой очень просто: стрелками курсора выбираем нужное действие. ENTER (или пробел) - выбрать / войти в меню, ESC (или Backspace) - выход / возврат назад. Для удобства ещё работают HOME - перейти на первый пункт меню и END - перейти на последний.


2021.08.05 note.

PowerSlave was re-released with DeHacker on Steam: PowerSlave (DOS Classic Edition).

To run DeHacker use "Launch Game Editor" option (read more here). GOG version probably will be updated soon too.

Hereby I give my permission to Throwback Entertainment Inc. to use my Exhumed / PowerSlave DeHacker tool with their game re-release.

Many thanks to everyone who supported DeHacker all these years and made that possible!


2021.04.20 note.

Detailed documentation in English can be found in the program's archive.

The description above is provided to support Russian-speaking users.

Unlike recent Dark Forces DeHacker release (more here) this old one works only in pure DOS or DOSBox, but there is a step-by-step GOG version guide by danvandam.

And if you're not a hardcore gamer you'll probably like BuildGDX or PCExhumed source ports more.



Архив содержит в себе исходные коды для TC2 (в общем-то, игра под DOS...), а также исполняемый файл для DOS.

Я старался сделать код коротким и наиболее простым, чтобы все желающие могли добавлять туда свои изменения.

Перед запуском программу нужно обязательно поместить в каталог игры!



Exhumed / PowerSlave beta babes restoration patch

Кто не знает - в игре есть секретные комнаты, но там нет ничего, кроме симпатичных девушек. Так было в DOS-версии игры, которая была первой, но потом авторы решили заменить девушек на статуэтки себя любимых в более поздних изданиях на игровые приставки. А так как девушек искать интереснее, чем каких-то разработчиков, то был придуман хитрый план для мотивации игроков - за нахождение статуэток выдавались всякие разнообразные сверхспособности и возможности (быстрее плавать, дальше прыгать и тому подобное).

Так вот, в финальной версии игры под DOS есть два диапазона изображений с девушками в ресурсах:

Но в ранней BETA-версии игры был ещё один дополнительный диапазон изображений (назовём его нулевым):

Он содержал слегка более откровенные изображения, чем те, что в двух диапазонах выше. Этот третий диапазон издатель, вероятно, посчитал слишком рискованным и из финальной версии игры его убрали. Уровни 7, 15 и 17 были отредактированы и девушек там заменили на тех что в R1 и R2. Однако, по всей видимости, у разработчиков не хватило времени чтобы исправить все уровни из-за чего на некоторых из них в секретных областях пропала часть девушек, а на уровнях 6, 13 и 20 они исчезли, вообще, все, что заставляет теряться в догадках - а зачем нужны были все эти спрятанные труднодоступные пустые помещения? Но сами спрайты всё ещё остались в файлах уровней, просто невидимые, так как соответствующих изображений для них нет. Поэтому, если добавить диапазон R0 обратно в ресурсы игры, то они снова появятся на уровнях, как это и было задумано в оригинале авторами. Другое возможное решение - это заменить в файлах уровней все номера из диапазона R0 номерами из R1 или R2, но проблема в том, что нет ничего похожего на изображения 2055 (лежит) или 2051 и 2052 (прикована), к тому же часть архитектуры уровней построена специально вокруг этих изображений и другие на их месте будут выглядеть не к месту. Обнаружил я это всё случайно, когда парсил и проверял формат уровней игры и столкнулся с тем, что часть расставленных по уровню спрайтов пустые (не имеют изображений в ресурсных TILES###.ART файлах).


Exhumed / PowerSlave beta babes restoration patch (6 946 байт)

Для установки необходима программа Build .ART tile merger.

Архив содержит в себе .ART файл с изображениями из BETA-версии игры. В текстовом файле можно найти больше подробностей, а также уровни и координаты на них, где можно на девушек посмотреть (в том числе и на обычных из диапазонов R1 и R2) - если кто-то захочет найти их самостоятельно, то рекомендую читать последнюю часть файла с координатами только после прохождения игры.

Перед запуском файлы из архива и программу Build .ART tile merger нужно обязательно поместить в каталог игры!



Бонус (только для фанатов)!

Т.к. эти игры ничем существенным, кроме исполняемых файлов, не отличаются, то почему бы тем, у кого есть PowerSlave, не заиметь также и Exhumed и наоборот?

Итак, радуйтесь - полный набор фаната:

1) Скачать игру можно здесь: Exhumed - образ диска в .NRG (208 Мб) вместе с музыкой (очень, кстати, хорошая) или там же можно взять кастрированную версию (13 Мб), но без музыки.

2) Файл ps_vs_ex.zip (1 210 492 байт)

Содержит обе версии исполняемых файлов: "PS.EXE", "EX.EXE", по паре "INSTALL.EXE" и "MENU.EXE" для каждой версии, а также "README.TXT" от PowerSlave.

3) Для No-CD скачиваем Exhumed / PowerSlave DeHacker из раздела выше.

Помимо всего прочего No-CD помогает запустить игру без требования всунуть диск, когда он и так уже есть в виртуальном дисководе (игра, почему-то, его не видит). Отмечу, что после применения No-CD игра прекратит требовать диск и запустится, но музыка всё равно будет (при наличии диска, конечно)!

После применения No-CD не забываем скопировать с диска в каталог к игре файл "BOOK.MOV".

Установка очень простая: монтируем образ игры, копируем, всё что там есть, кроме файла "INSTALL.EXE" в какой-нибудь каталог (это всё должен за нас файл "INSTALL.EXE" делать, но он под XP, во всяком случае, почему-то не может правильно определить где жёсткие диски), затем скачиваем архив с обеими версиями и, в принципе, нам оттуда нужен только файл "PS.EXE" (остальные - как довесок тем, кто интересуется), который кидаем в тот же каталог. После чего применяем No-CD из программы Exhumed / PowerSlave DeHacker. Всё. Теперь если запустить "PS.EXE" будем играть в PowerSlave, а если "EX.EXE" - то в Exhumed. Енджой.


Вот, собственно, и всё.
-=CHE@TER=-
2007.03.19 17:26