Posts

Resident Evil 5 .mtg файли

Image
 Файли монтажу .mtg (montage) для Resident Evil 5 як я зрозумів контролюють видимість тих чи інших мешів, для того щоб контролювати цю видимість у кожного мешу є атрибут названий render group який задається в .mod файлі . Не думав, що мені знадобиться в них заглядати, але заглянув і розгадав структуру . Тут все доволі просто, перші чотири байти - це магічне слово, далі скоріш за все версія, теж чотири байти. Далі цікавіше: кількість рендер групп і кількість пресетів з настройками до них. Після них скоріш за все абсолютні відступи до груп і пресетів відповідно Задаються рендер групи доволі просто, це short з індексом рендер групи, який повинен співпадати з індексом в .mod файлі, далі short незрозумілого призначення і також незрозумілий uint. Ось і все для рендер груп. Далі трохи цікавіше, блок пресетів це 20 байт з яких перші 12(може й навіть 16) вмикають чи вимикають видимість тих чи інших рендер груп значення 00 - група видма, 01 - група прихована. Яка послідовність рендер груп в цих1

Resident evil 5 .chn - частина перша

Image
 Вперше я зацікався файлами з розширенням .chn коли дізнався, що RE5 підтримує симуляцію фізики для кісткових ланцюгів. Експериментальним шляхом було встановлено що два типа файлів в .arc  архіві відповідають за це: .ccl та .chn. Якщо вірити написаному тут   то ccl розшифровується як chain collision, а  chn як просто chain. З того що в далося встановити ccl (начебто) являє собою базу даних з примітивами, на які посилається chn.  Сам же ж файл .chn описує самі ланцюжки з кістками. Я накидав скрипт для парсингу в kaitai  який працює досить добре, але не для всх випадків Структура: Заголовок Має розмір в 16 байт. Перші 4 байта - це магічне слово CHN. , другі 4 байта 0x80618 - дивне число яке повторюється в кожному файлі, більше того, воно повторюються в .ccl. Наступні 4 байта - це розмір файлу без заголовку. А ось далі цікавіше, перший байт - це кількість блоків, інші три байта або забиті нулями, або мають якісь незрозумілі значення Блок Заголовок блоку Блок має розмір в 32 байта. Перший