Возможно вы искали: 'Afro Samurai'

May 15 2025 18:19:28
  • Как сделать 8Gamers.Ru домашней страницей?
  • Игры
    • База данных по играх
    • Игровые новости
    • Игровая индустрия
    • Обзоры на игры
    • Прохождения игр
    • Гайды к играм
    • Превью о играх
    • Игровые тизеры
    • Игровые арты
    • Игровые обои
    • Игровые скриншоты
    • Игровые обложки
    • Игровые трейлеры
    • Игровое видео
    • Вышедшие игры
    • Ближайшие релизы игр
  • Кино и ТВ
    • База данных по кино
    • Статьи о кино
    • Постеры
    • Кадры из кино
    • Кино трейлеры
    • Сегодня в кино
    • Скоро в кино
  • Комиксы и манга
    • Манга по алфавиту
    • База данных по комиксах
    • Читать онлайн комиксы
    • Читать онлайн манга
    • База персонажей
  • Читы и коды
    • Чит-коды для PC игр
    • Чит-коды для консольных игр
    • Трейнеры
    • Коды Game Genie
  • Моддинг
    • Модификации
    • Карты к играм
    • Программы для моддинга
    • Статьи о моддинге
  • Геймдев
    • Всё о создании игр
    • Список движков
    • Утилиты в помощь игроделу
    • Конструкторы игр
    • Игровые движки
    • Библиотеки разработки
    • 3D-модели
    • Спрайты и тайлы
    • Музыка и звуки
    • Текстуры и фоны
  • Рецензии
    • Игры
    • Кино
    • Аниме
    • Комиксы
    • Мангу
    • Саундтреки
  • Саундтреки
    • Лирика
  • Файлы
    • Патчи к играм
    • Русификаторы к играм
    • Сохранения к играм
    • Субтитры к кино
  • Медиа
    • Видео
    • Фото
    • Аудио
    • Фан-арты
    • Косплей
    • Фото с виставок
    • Девушки из игр
    • Рисунки
    • Рисуем онлайн
    • Фотохостинг
  • Юмор
    • Анекдоты
    • Афоризмы
    • Истории
    • Стишки и эпиграммы
    • Тосты
    • Цитаты
  • Флеш
    • Азартные
    • Аркады
    • Бродилки
    • Гонки
    • Для девочек
    • Для мальчиков
    • Драки
    • Квесты
    • Леталки
    • Логические
    • Мультфильмы
    • Открытки
    • Приколы
    • Разное
    • Спорт
    • Стратегии
    • Стрелялки
Статистика

Статей: 87772
Просмотров: 96111483
Игры
Injustice:  Gods Among Us
Injustice: Gods Among Us
...
Dark Souls 2
Dark Souls 2
Dark Souls II - вторая часть самой хардкорной ролевой игры 2011-2012 года, с новым героем, сюжето...
Battlefield 4
Battlefield 4
Battlefield 4 - продолжение венценосного мультиплеер-ориентированного шутера от первого ли...
Кино
Steins;Gate
Steins;Gate
Любители японской анимации уже давно поняли ,что аниме сериалы могут дать порой гораздо больше пи...
Ку! Кин-дза-дза
Ку! Кин-дза-дза
Начинающий диджей Толик и всемирно известный виолончелист Владимир Чижов встречают на шумной моск...
Обзоры на игры
• Обзор Ibara [PCB/PS2] 18357
• Обзор The Walking ... 18801
• Обзор DMC: Devil M... 19879
• Обзор на игру Valk... 15877
• Обзор на игру Stars! 17764
• Обзор на Far Cry 3 17948
• Обзор на Resident ... 16024
• Обзор на Chivalry:... 17508
• Обзор на игру Kerb... 17981
• Обзор игры 007: Fr... 16619
Превью о играх
• Превью к игре Comp... 17960
• Превью о игре Mage... 14464
• Превью Incredible ... 14721
• Превью Firefall 13479
• Превью Dead Space 3 16334
• Превью о игре SimC... 14730
• Превью к игре Fuse 15442
• Превью Red Orche... 15542
• Превью Gothic 3 16343
• Превью Black & W... 17354
Главная » Статьи » Игровые доки » Might & Magic изнутри или Как сделать Rejuvenation Potion

Might & Magic изнутри или Как сделать Rejuvenation Potion

Might & Magic изнутри или Как сделать Rejuvenation PotionЛюбопытство, как известно, не порок.
Именно так я успокаиваю свою совесть каждый раз, когда начинаю копаться в очередной игре. Да и вы, наверняка не раз задумывались, глядя на игру: "Как же оно там внутри устроено?" Конечно, в лицензионном соглашении написано, что "не допускается", "преследуется", и т.д. Но, между нами, кто же его читает, это соглашение?

Итак, на этот раз жертвой моего любопытства стала игра M&M VIII (надо отметить, что большая часть того, что тут будет сказано, так же вполне применима к MM7 и даже MM6 - движок-то не сильно изменился).

Гранд-мастер в алхимии, а рецептов Black Potion'ов не знаю - ну что за безобразие! Денег на покупку рецептов было жалко, да и бегать за ними по всему миру было как-то не досуг. Тем более что все равно все бы выяснилось, но времени-то жаль. Ну что же - хакеры мы или нет? Решил посмотреть в файлах игры, наверняка это там как-то хранится...

Чем смотреть спросите вы? Для этой цели подойдет любой hex-editor (я предпочитаю использовать qview и hiew - любой из них можно легко найти в Сети).

Итак, чем смотреть мы запаслись - теперь дело за малым - найти нужный файл.

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

Зайдем в эту директорию. Да, не слишком радостно - какие-то странные расширения - .lod и .hwl. Что же это за файлы? Попробуем посмотреть на них в hiew - да, явно не текст. Хотя вот - время от времени видны имена файлов, еще какие-то строки. Ну что же, поищем там наше слово "potion". Нашлось в двух файлах - EnglishT и EnglishD (как станет ясно из дальнейшего, в этих файлах лежит текст и озвучка диалогов соответственно). Уже хоть что-то - смотрим, где же именно в EnglishT нам попалась слово "potion". Открываем файл в hiew и нажимаем сначала F4, переходя в hex-режим, а затем начинаем поиск по F7 . Первое совпадение - по смещению 3560 - POTION.TXT - ага, тут есть какой-текст про potion'ы, но где же он? Продолжаем поиск, нажимая Shift+F7 - еще раз попадается POTION.TXT и все - грустно как-то. Да и в глубине файла явно не текст.

Как же они это хранят? Может чем-то сжимают? Попробуем выяснить - самый простой (хотя и не очень надежный тест - это попробовать сжать этот файл самим каким-нибудь стандартным архиватором - pkzip-ом, скажем. Пробуем - не жмется! Вернее жмется, но только на 10% - а ведь там должен быть текст...

Ладно, попробуем зайти с другого конца - как же устроен это EnglishT.lod? Посмотрим повнимательнее - есть! Начиная со смещения 120, идут блоки примерно одинаковой структуры, длиной 4c байт - особенно четко это видно, если включить просмотр в виде текста - это, кстати, очень помогает, когда надо увидеть в файле какую-то структуру.

Так, а что же там в этих блоках? Сначала идет имя - это-то ясно, но что там есть еще? Чтобы проще было с этим разбираться, я предпочитаю делать следующее - берем в руки qview, открываем наш файл и, выделяя несколько блоков (один раз нажать ins начнется выделение, второй раз - прекратится), сохраняем их в отдельные файлы. Теперь пару окон с hiew и начинаем сличать - и что же - вот имена, а дальше - а дальше какой-то мусор, причем одинаковый во всех блоках, и только в конце два четырехбайтовых слова (будем, кстати, называть такие слова long'ами) различны, а за ними опять везде одинаковые четыре нолика.

Этой информации достаточно, чтобы сделать вывод - перед нами что-то похожее на каталог тех файлов, что собраны в этот EnglishT.lod, причем два long'а - это скорее всего информация о длине и размещении отдельных файлов внутри большого. Проверим нашу догадку - возьмем первый блок, который соответствует файлу 2DEvents.txt - так, 4F54A (кстати, вы не забыли, что байты длинных чисел надо брать, начиная с крайне правого) Нажимаем F5, вводим число, переходим в нужное место файла - нет, что-то не так - какие-то совершенно нечитаемые данные... хотя, что это? Там, немного внизу - по смешению 4F66A? Так, это то же самое имя 2Devents.txt. Похоже, мы на верном пути - причем расстояние между ним и числом из заголовка - 120 - то же, что и размер блока в начале файла, который мы пропустили - можно сделать вывод о том, что первый long - это действительно смещение, но не от начала всего файла, а от начала каталога. Ну, хорошо, а второй long?

Опять возьмем qview - мне очень нравятся его удобные блоки (хотя в hiew блоки тоже есть - они выделяются по клавише * на numpad-е). Выделяем блок от первой буквы этого имени до следующего (просто пролистываем страницы вниз, внимательно глядя на экран, желающие могут просто искать слово txt, но так можно пропустить что-нибудь интересное). Смотрим на размер - ровно 22A3, как и второй long из каталога.

Да, следует добавить, что по смещению 11c от начала файла находится long с числом файлов в каталоге.

Так, с каталогом разобрались. Можно написать программку, которая "порежет" большой .lod файл на много маленьких. Сделаем это - я предпочитаю писать на ANSI-C (такой исходный текст потом можно будет компилировать любым компилятором с C/C++ в любой операционной системе).

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

Вот здесь находится исходный текст (MM8SRC1.TXT) - он, конечно, не является примером для подражания с точки зрения изящества программирования, а должен только проиллюстрировать все вышесказанное.

Компилируем и запускаем с параметром EnglishT.lod - получаем отдельные файлы. Но они еще не пригодны для просмотра. Опять открываем несколько файлов и сравниваем их - видно, что там есть заголовок длиной 60, а за ним идут данные, которые, кстати, всегда начинаются с одних и тех же байтов - 78 9C. Число по смещению 58 от начала файла - это длина распакованных данных.

78 9С - довольно известная сигнатура - так обычно начинаются файлы, запакованные библиотекой zlib. В том числе и файлы известной утилиты gzip. Конечно, если мы хотим серьезно работать с ресурсами MM, следует скачать и установить эту библиотеку zlib, но для наших целей вполне достаточно просто распаковать отдельные файлы. Попробуем сделать это с помощью gzip-а.

Формат заголовков gzip'а известен, и я не буду углубляться в его описание.

Скажу только, что для наших целей достаточно приписать к началу данных последовательность 1F, 8B, 08, 00 - это сигнатура gzip-а и 00, 00, 00, 00, 00, 0B - это информация о том, как следует формировать имя файла и значение контрольной суммы - ее можно оставить нулевой (будет, конечно, получено сообщение об ошибке, но распаковка продолжится). Также в конец файла следует приписать длину распакованного файла (да, надо не забыть отбросить сигнатуру 78 9C от zlib-а).

Все это можно сделать с помощью hex-edit-ора, но мы лучше напишем программу, исходник которой в том же файле, который Вы уже могли скачать, идет следом (MM8SRC2.TXT). Кстати, там же есть и откомпилированный вариант (MM8_U.EXE) и итоговый результат (POTION.TXT).

Программа создаст нам файлы, к которым останется прибавить расширение .gz и распаковать любой утилитой, которая понимает этот формат (например, winzip-ом).

Итак, распакуем файл potion.txt. Получим текстовый файл, который можно просматривать любым текстовым редактором. Но это не слишком удобно. Осталось заметить, что этот файл представляет собой таблицу, отдельные столбцы которой разделены символами табуляции (это опять-таки можно заметить, просматривая файл в hiew в hex-режиме).

С такими файлами удобно работать в MS Excel. Надо выбрать там файл/открыть, установить там тип файлов как текстовый, выбрать имя. Появится Wizard, в первом окне которого надо просто нажать дальше, а вот во втором следует указать "ограничитель строк" как "(нет)".

Ура! Теперь осталось внимательно изучить полученную таблицу.

Справа идут столбцы, которые содержат код (он для каждого potion'а указан слева) получаемого при смешивании этого potion'а с potion'ом, код которого написан вверху столбца.

Вот и все - читаем рецепт Rejuvenation Potion'a - даже есть несколько вариантов его приготовления - код 271 - на пересечении, скажем, строки 230 - это Bless и столбца 252 - Divine Restoration.

Итак, вот рецепт (Red+(Blue+Yellow))+((Blue+(Blue+Yellow))+(Red+(Red+Yellow)))

Конечно, таким же образом можно распаковать и изучить файл monlist.txt - список монстров или objlist.txt - предметов.

Удачи вам в занятии алхимией.

P.S. Утилитку GZip можно скачать здесь, а исходники и результат - здесь.
683 Прочтений •  [Might & Magic изнутри или Как сделать Rejuvenation Potion] [28.05.2012] [Комментариев: 0]
Добавил: Ukraine Vova
Ссылки
HTML: 
[BB Url]: 
Похожие статьи
Название Добавил Добавлено
• Might & Magic изнутри или Как сдела... Ukraine Vova 28.05.2012
Ни одного комментария? Будешь первым :).
Пожалуйста, авторизуйтесь для добавления комментария.

Проект входит в сеть сайтов «8Gamers Network»

Все права сохранены. 8Gamers.NET © 2011 - 2025

Статьи
Рецензия на Pressure
Рецензия на Pressure
Чтобы обратить на себя внимание, начинающие маленькие разработчики, как правило, уходят в жанры, ...
Рецензия на Lost Chronicles of Zerzura
Рецензия на Lost Chron...
Игры, сделанные без любви и старания, похожи на воздушный шар – оболочка есть, а внутри пусто. Lo...
Рецензия на The Bridge
Рецензия на The Bridge
«Верх» и «низ» в The Bridge — понятия относительные. Прогуливаясь под аркой, можно запросто перей...
Рецензия на SimCity
Рецензия на SimCity
Когда месяц назад состоялся релиз SimCity, по Сети прокатилось цунами народного гнева – глупые ош...
Рецензия на Strategy & Tactics: World War 2
Рецензия на Strategy &...
Название Strategy & Tactics: World War II вряд ли кому-то знакомо. Зато одного взгляда на ее скри...
Рецензия на игру Scribblenauts Unlimited
Рецензия на игру Scrib...
По сложившейся традиции в информационной карточке игры мы приводим в пример несколько похожих игр...
Рецензия на игру Walking Dead: Survival Instinct, The
Рецензия на игру Walki...
Зомби и продукция-по-лицензии — которые и сами по себе не лучшие представители игровой биосферы —...
Обратная связь | RSS | Донейт | Статистика | Команда | Техническая поддержка