DTZ — различия между версиями
Материал из GTAModding.ru
Строка 40: | Строка 40: | ||
Некий аналог weapons.dat, знакомый нам по предыдущим частям. Основное отличие - конфигурация здесь предварительно отпарсена и хранится в бинарном виде.<br /> | Некий аналог weapons.dat, знакомый нам по предыдущим частям. Основное отличие - конфигурация здесь предварительно отпарсена и хранится в бинарном виде.<br /> | ||
− | Состоит из двух таблиц с одинаковой структурой. Адреса, структура и алгоритмы чтения weapons data для LCS и VCS <u>разные</u> | + | Состоит из двух таблиц с одинаковой структурой. Адреса, структура и алгоритмы чтения weapons data для LCS и VCS <u>разные</u><br /> |
<b>Оффсет второй таблицы(VCS PS2):</b> 4027696 <i>(смещение указано для распакованного файла GAME.DTZ)</i> <br /> | <b>Оффсет второй таблицы(VCS PS2):</b> 4027696 <i>(смещение указано для распакованного файла GAME.DTZ)</i> <br /> | ||
<b>Количество записей:</b> 40<br /> | <b>Количество записей:</b> 40<br /> |
Версия 08:58, 15 августа 2011
DTZ - один из форматов архивов Stories. Файлы этого типа сжаты при помощи deflate/zlib алгоритма, распаковывать и запаковывать удобно с помощью DTZ editor by Dageron. Расширение файла можно расшифровать как Data zlib.
GAME.DTZ
Этот файл предстставляет особый интерес, ввиду того что в нём содержится отностительно большое количество уже разобранных конфигурационных игровых ресурсов, а также элементы интерфейса и модели некоторых игровых объектов. Фактически, файл представляет собой дамп куска памяти консоли. На данный момент известно, что в GAME.DTZ (PS2) хранятся аналоги следующих файлов (имена основаны на несжатых аналогах из предыдущих частей или по их содержанию):
- fonts.chk - файл шрифтов, также запакован deflate/zlib алгоритмом
- menu.chk (он же frontend.chk) - сборник текстур меню, также запакован deflate/zlib алгоритмом
- pedstats data
- handling data
- weapons data
- water data
- generic.chk
- particle.chk
- hud.chk
- ped.anim
- generic.col2
- cuts.dir (не рабочий)
- GTA3PS2.dir
- info.zon
- map.zon
- модели стрелок (arrows)
- бинарное дерево коллизий
- текстуры радара (только в VCS)
- swim.anim (только в VCS)
- fight.anim (только в VCS)
- driveby.anim (только в VCS)
Здесь и далее мы будем придерживаться этих названий для облегчения поиска. В PSP-версиях также содержатся SDT-файлы.
weapons data
Некий аналог weapons.dat, знакомый нам по предыдущим частям. Основное отличие - конфигурация здесь предварительно отпарсена и хранится в бинарном виде.
Состоит из двух таблиц с одинаковой структурой. Адреса, структура и алгоритмы чтения weapons data для LCS и VCS разные
Оффсет второй таблицы(VCS PS2): 4027696 (смещение указано для распакованного файла GAME.DTZ)
Количество записей: 40
Структура версии VCS:
struct weapondata{ DWORD dwType; int iFireType; float fRange; int iFiringRate; int iReload; int iAmountOfAmmunition; int iDamage; float fSpeed; float fRadius; float fLifeSpan; float fSpread; DWORD dwPadding; //padding (0xAA) vFireOffset m_vFireOffset; //вектор DWORD _f3C; //всегда нуль DWORD _f40; //целочисленное значение DWORD _f44; //DWORD ? unknown vFireOffset m_vFireOffset; //вектор vFireOffset m_vFireOffset; //вектор DWORD _f60; DWORD _f64; DWORD _f68; //предположительно, слот оружия DWORD _f6C; //padding (0xAA) };