Файлы описывают маршруты по которым будут ездить трафиковые автомобили, координаты перекрестков, точек между ними и скорости на различных участках дорог. Индивидуальны для каждой миссии.
- Расположены в папках Mafia\missions\missonName\
- Редактируются программами road.bin Creator (zibob) и road.bin Editor (djbozskoz)
Моддинг[]
Редактирование в указанных выше программах обязательно надо описать, а пока несколько замечаний.
- В файле описываются два вида точек: перекрестки и промежуточные точки (у каждого типа своя нумерация)
- Каждая точка имеет свой номер и ссылается на номера соседних точек
- Вводить их надо по-порядку от 0 до последней.
- В замкнутом маршруте должны быть как минимум три перекрестка (см. верхнюю картинку)
- Между перекрестками должно быть как минимум две промежуточные точки
- Тупики отмечаются точками типа перекресток
- Обучающее видео от автора Road.bin Editor
- Видео по Road.bin Creator
Формат файла[]
Можно восстановить по информации от djbozkosz и GOLOD55 ниже.
А пока заготовка.
---------------------------------------------------------------- variable type description ---------------------------------------------------------------- fileSgn long константа = 02 00 00 00 crossroadsCount long число точек перекрестков crossroadsDesc1 0xEC byte описание точки первого перекрестка ... crossroadsDescN 0xEC byte и последнего wayPointCount long число промежуточных точек wayPointDesc1 0x18 byte описание первой промежуточной точки ... wayPointDescN 0x18 byte и последней ---------------------------------------------------------------- crossroadsDescХ описание точки перекрестка (проверить порядок переменных) ---------------------------------------------------------------- variable type description ---------------------------------------------------------------- xPos float Х координата перекрестка yPos float Y zPos float Z unknown 4 byte ? speed float максимальная скорость на нем, км\ч ... ---------------------------------------------------------------- wayPointDescХ описание промежуточной точки ---------------------------------------------------------------- variable type description ---------------------------------------------------------------- xPos float Х координата промежуточной точки yPos float Y zPos float Z speed float максимальная скорость на этом участке, км\ч unknown 8 byte номера соседних точек, номера точек следующих за соседними ----------------------------------------------------------------
Документация road.bin GOLOD55\26.12.2004
1. Файл состоит из двух разделов, в каждом из них - некоторое количество секторов. Разделы расположены друг за другом и имеют разделитель, являющийся чек-суммой кол-ва секторов во втором разделе ( тип L). 2. В начале файла стоит заголовок 02000000, затем - чек-сумма кол-ва секторов в первом разделе (тип L). 3. Размер сектора в первом разделе равен 236 байт. То есть: при умножении чек-суммы кол-ва секторов на 236, получаем размер всего раздела (в байтах). 4. Размер сектора во втором разделе равен 24 байта. То есть: при умножении чек-суммы кол-ва секторов на 24, получаем размер всего раздела (в байтах). 5. Структура сектора в первом разделе представляет собой подсектор с общими данными (28 байт) и основной подсектор (208 байт), который состоит из 4 блоков (по 52 байта), имеющих в свою очередь также подблок с общими данными (20 байт) + 4 основных подблока (по 8 байт). Структура сектора первого раздела подсектор с общими данными F Коорд X F Коорд Y F Коорд Z S флаг? 2байта const = CCCC (разделитель?) F Некий множитель скорости на данном участке (или при движении к данной точке) 6байт ??? 2байта обычно = FFFF (разделитель?) подблок с общими данными S флаг? 2байта const = CCCC (разделитель?) F ? F ? 1.5730119 похоже на pi/2 B флаг? 1байт const = CC (разделитель?) L ? 2байта const = CCCC (разделитель?) основной подблок 2байта const = 0000 (разделитель?) B ? флаг??? 1байт const = CC (разделитель?)F? Структура сектора второго раздела F Коорд X F Коорд Y F Коорд Z F Некий множитель скорости на данном участке (или при движении к данной точке) B ? B ? B ? B ? S ? S?