VltEdit.
Копируем файлы FE_ATTRIB.bin, attributes.bin, gameplay.bin из папки /GLOBAL/ игры в директорию /bin/vltedit/ запускаем unpackall.bat, затем запускаем vltedit.exe, нажимаем File/Open и загружаем 2 файла db.vlt и frontend.vlt из папки vlt, находящейся там же, где и распакованная программа. Теперь самое сложное.
Типы переменных.
Определение переменной в программировании практически не отличается от математического. Правда есть одно ограничение - тип или размер хранимого значения. Именно поэтому нельзя заменять одни переменные значениями другого типа. Разберем подробнее используемые в VltEdit типы переменных. Чтобы определить тип, достаточно взглянуть на строчку " Type", находящуюся над искомым значением. Ниже приведу соответствия типа в VltEdit c тем, что придется вписывать в файл настроек.
Значение в VltEdit
| Расшифровка
| Значение для файлов настроек
| Диапазон значений
| Int8
| Signed Integer 8 (целое, 8 бит)
| byte (байт)
| -128.. 127
| Int16
| Signed Integer 16 (целое, 16 бит)
| word (слово)
| -32 768.. 32 767
| Int32
| Signed Integer 32 (целое, 32 бита)
| dword (двойное слово)
| -2 147 483 648.. 2 147 483 647
| Int64
| Signed Integer 64 (целое, 64 бита)
| qword (четверное слово)
| -9 223 372 036 854 775 808.. 9 223 372 036 854 775 807
| UInt8
| Unsigned Integer 8 (беззнаковое целое, 8 бит)
| byte (байт)
| 0.. 255
| UInt16
| Unsigned Integer 16 (беззнаковое целое, 16 бит)
| word (слово)
| 0.. 65 535
| UInt32
| Unsigned Integer 32 (беззнаковое целое, 32 бита)
| dword (двойное слово)
| 0.. 4 294 967 295
| UInt64
| Unsigned Integer 64 (беззнаковое целое, 64 бита)
| qword (четверное слово)
| 0.. 18 446 744 073 709 551 615
| Float
| Float (вещественное, 32 бита)
| float
| 3.4e-38.. 3.4e+38
| Double
| Double Float (вещественное двойной длины, 64 бита)
| float
| 1.7E-308.. 1.7E+308
| StringKey
| String Key (строковый ключ)
| string
| любое значение, после замены ничего не просходит
|
Логотип и название.
В дереве ищем Database/frontend/vehicles. Там три раздела: europe, north_america, japan. Каждый из них характеризует место производства машины.
Пример: путь к нему Database/frontend/vehicles/europe/mercedes/sl65. Нажимаем на sl65, справа в окошке появилось куча всяких параметров, но нам нужны только два - это manufacturer и required_bl_level, а точнее их значения. Поясню их назначение: manufacturer характеризует производителя автомобиля, required_bl_level показывает, после победы над каким членом Черного списка будет доступен данный автомобиль.
При нажатии на manufacturer под окном с параметрами получаем значение bin: 0x8954 (альтернатива: жмем правой кнопкой мыши на значение, выбираем Copy Offset, вставляем скопированное значение сразу в строку консоли, затем копируем все, что находится после " 0х", открываем Калькулятор, вводим это значение, переходим к шестнадцатиричному представлению этого числа и получаем тоже самое значение. Удобно, если невозможно увидеть значение первым способом). Тоже самое проделываем и с required_bl_level.
Зайдем в директорию output/CARS_REPLACE/SL65, откроем Блокнотом файл FE.MWPS
## manufacturer patch dword значение_ manufacturer N, где N - это префикс в названии файла с логотипом производителя.
## required_bl_level patch byte значение_ required_bl_level 16
Пример для SL65:
## manufacturer patch dword bin: 0x8954 32
## required_bl_level patch byte bin: 0x896d 16
Следующий файл CAR.INI всё в той же папке
[car] name=имя которое будет показываться в игре. Можно писать по-русски (проверено с установленной русификацией от SerGEAnt's Zone Of Games v 1.08) manufacturer=NAME internal=CAR_NAME modloader=0.2
В следующих файлах нужно поменять текстуры на свои.
Файл SECONDARYLOGO.BIN - логотип серии автомобиля. Открываем этот файл с помощью BinTex, кликаем на единственную текстуру, затем нажимаем Texture/Import и указываем файл с собственной текстурой в формате *.dds.
Файл в папке output/FRONTEND/MANUFACTURERS - логотип компании-производителя. Название - N-NAME.BIN Пример: 32-FERRARI.BIN
Настройка колес.
Файлы собраны, всё настроено для конверта. Нажимаем дважды на build.bat и модель готова. Закидываем файлы в нужную папку, запускаем игру. И что же мы видим? Модель выглядить нормально, правда остается одно " но": колеса находятся не на своем месте. Исправляем...
Запускаем уже знакомый vltedit.exe. На этот раз идем по адресу ecar/default/racers/наименование_автомобиля. Здесь нам нужен параметр wheel_position*, открываем список, видим четыре значения для четырех колес соответсвенно. Кликаем на первом, получаем значение, для остальных проделываем аналогичную операцию. Далее открываем Блокнотом файл ATTRIBUTES.MWPS
Основное его назначение - настройка различных параметров машины. Но сейчас нам нужны колеса...
Для настройки одних лишь колес файл должен выглядеть примерно так (за символами # находятся комментарии, они игнорируются при чтении файла):
memfile GLOBAL/GlobalMemoryFile.bin vpak GLOBAL/ATTRIBUTES.BIN db
## позиция колес # в формате x, y, z, w (z=0, w=размер колес/высота машины?)
patch
| float
| bin: 0x3f7f0
| 1.28
| patch
| float
| bin: 0x3f7f4
| 0.8
| patch
| float
| bin: 0x3f7f8
| 0.0
| patch
| float
| bin: 0x3f7fc
| 0.30
|
patch
| float
| bin: 0x3f800
| 1.28
| patch
| float
| bin: 0x3f804
| -0.8
| patch
| float
| bin: 0x3f808
| 0.0
| patch
| float
| bin: 0x3f80c
| 0.30
|
patch
| float
| bin: 0x3f810
| -1.311
| patch
| float
| bin: 0x3f814
| -0.8
| patch
| float
| bin: 0x3f818
| 0.0
| patch
| float
| bin: 0x3f81c
| 0.30
|
patch
| float
| bin: 0x3f820
| -1.311
| patch
| float
| bin: 0x3f824
| 0.8
| patch
| float
| bin: 0x3f828
| 0.0
| patch
| float
| bin: 0x3f82c
| 0.30
| Как видим, для каждого колеса имеется четыре параметра, а у нас лишь один. Чтобы получить остальные поступаем так.
Пример: Мы получили, например, адрес bin: 0x3da60 (одно из колес Lamborgini Gallardo). Остальные записываем в таком формате 0x3da6x (где x - это 4, 8 или с соответственно для координаты y, z, w). Полностью это будет выглядеть так:
patch
| float
| bin: 0x3da60
| 1.28
| patch
| float
| bin: 0x3da64
| 0.8
| patch
| float
| bin: 0x3da68
| 0.0
| patch
| float
| bin: 0x3da6c
| 0.30
| Точно так же и для остальных колес. Когда все будет готово, сохраняем файл в папку с моделью и текстурами. Затем закидываем все куда следует и любуемся результатом.:) Если что-то не так, поправляем. P.S. Параметр z рекомендуется оставить в том виде, какой есть, т.е. нулями.
Что же делать, когда обвесы имеют разную ширину и колеса при смене корпуса буквально утопают в нем? Как изменить тип привода у автомобиля? Можно ли настроить ширину колес? Постараюсь ответить на эти вопросы. Для начала добавляем в файл hashes.txt следующие строчки:
K1llM@n fd3077e8 front_axis_width* #настройка ширины колесной базы для передней оси K1llM@n ccc484dc rear_axis_width* #настройка ширины колесной базы для задней оси K1llM@n 8f952090 WheelWidth* #Ширина колес K1llM@n 7381ee38 DriveType* #0 - задний привод, 0.5 - полный, 1 - передний
Затем запускаем vltEdit и идем по уже знакомому адресу для настройки колес. Необходимые для нас параметры теперь скрываются за названиями front_axis_width, rear_axis_width, WheelWidth* и DriveType*. Для каждой оси по шесть параметров (соответственно для шести корпусов: 0 — сток, 1-5 — обвесы), четыре параметра для ширины колес (отдельно каждое) и один для типа привода. Копируем адреса, вставляем в файл и задаем необходимые значения.
|