Формат DBPF2 и его декодирование: Часть теоретическая

Формат DBPF2 и его декодирование: Часть теоретическая
Автор: AnriRS

Статьи по теме

  • библиотека компонентов для работы с файлами TS3 – DBPF2: типы данных, на русском языке;
  • библиотека компонентов для работы с файлами TS3 – DBPF2: декодер и кодер, на русском языке;
  • описание формата – Sims3: DBPF, на английском языке;
  • описание формата – Spore: DBPF, на английском языке;
  • типы ресурсов, которые могут храниться в файле Package – Sims3: File Types на английском языке;

Файл Package в формате DBPF версии 2.0 хранит различные типы записей и состоит из трех частей:

  1. заголовка файла;
  2. индексной таблицы;
  3. секции данных;

Заголовок данных

Заголовок данных имеет размер 96 байт такого вида:

component_library_2

Назначение важных полей описано в следующем разделе

Индексная таблица

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

component_library_3

component_library_4

Секция данных

Секция данных состоит из записей. Каждая запись характеризуется типом ресурса (ResourceType), группой (ResourceGroup) и экземпляром (Instance). Совокупность этих трех идентификаторов уникальна для каждой записи. Вообще-то запись – это просто набор байт, интерпретация которых зависит от типа ресурса

The Sims 3

The Sims 2

The Sims

MySims

Sims-игры

Даты релизов

the_sims_3_store_saleshymn_bunnersimovod_3simovod2Журнал «Симовод»Prosims - магазин сувениров