Все что вам понадобится для работы с номерными знаками, это графический и текстовый редактор. Мы рассмотрим работу на примере GIMP и notepad++.
Подготовка
Для создания правильно работающего мода на номерной знак нам понадобится по крайней мере три файла: jbeam файл, json файл и текстурный файл.
Jbeam файл содержит всю релевантную информацию о вашем номерном знаке и обозначает путь к соответствующему json файлу.
В тоже время json файл содержит пути ко всем текстурным файлам, которые вы собираетесь использовать в вашем моде.
Более того, вам нужно будет иметь по крайней мере одну фоновую текстуру для вашего номерного знака.
Создание мода
Подготовка структуры файлов
Следуйте по следующему пути:
"C:\Users\%USERNAME%\Documents\BeamNG.drive\mods\unpacked"
Создайте несколько папок соответствующих пути к файлам мода. В итоге у вас должно получиться что-то подобное:
"C:\Users\%USERNAME%\Documents\BeamNG.drive\mods\unpacked\username_mod\vehicles\common\licenseplates\username_license_plate\"
Измените выделенные жирным части на ваше название для мода. Только убедитесь что ваше название уникально, чтобы избежать проблем с модами других пользователей или официальным контентом игры.
Названия username_mod и username_license_plate определяют как будет называться ваш мод в игре.
Создание текстуры
Откройте GIMP или любой другой графический редактор. Мы собираемся создать фон нашего номерного знака. Текстура для фона имеет разрешение 512 на 256 пикселей - используйте только это разрешение.
Используйте этот шаблон для создания вашего собственного фона для номерного знака. Помните, что вам нужно создать шаблон без текста на нём. Текст мы будем добавлять в другом месте.
Как только закончите, экспортируйте получившийся файл в формате .png в папку, созданную ранее и дайте ему уникальное имя.
Создание json файла
После того как мы закончили создание текстуры, нам нужно создать еще и json файл, который будет обеспечивать связь между шаблоном номерного знака и, собственно, текстурой.
{
"name" : "username_license_plate",
"version" : 1,
"data" : {
"size" : {"x" : 512, "y": 256},
"text" : { "x" : 0.5, "y" : 0.65, "scale" : 1, "color" : "rgb(187, 61, 0)", "limit" : 8},
"diffuse" : {
"spriteImg" : "vehicles\common\licenseplates\default\platefont_d.png",
"backgroundImg" : "vehicles\common\licenseplates\user_license_plate\user_license_plate_background_d.png",
"fillStyle" : "black"
},
"bump" : {
"spriteImg" : "vehicles\common\licenseplates\default\platefont_n.png",
"backgroundImg" : "vehicles\common\licenseplates\default\licenseplate-default_n.png",
"fillStyle" : "rgb(0,0,255)"
},
"specular" : {
"spriteImg" : "vehicles\common\licenseplates\default\platefont_s.png",
"fillStyle" : "rgb(233,233,233)"
}
}
}
Далее нам нужно настроить наш файл:
name: может быть каким угодно.
data:
- text: определяет появление текста. Измените значение для "X" и "Y" для определения местоположение текста. Измените параметр "scale" для настройки размера текста и параметр "color" для изменения цвета текста. Параметр "limit" определяет максимальное количество символов на вашем номерном знаке.
- diffuse/bump/specular: далее вам нужно описать где находятся различные текстурные файлы. Вы можете использовать вплоть до трёх различных типов карт: - diffuse-, -bump-, -specular-.
- spriteImg/backgroundImg: определяют какие текстуры будут использоваться для текста (spriteImg) и фона (backgroundImg).
- fillStyle: определяет какой цвет будет использован, пока параметры spriteImg/backgroundImg не определены.
Создание jbeam файла
{
"USERNAME_license_plate_2_1": {
"information":{
"authors":"BeamNG",
"name":"License Plate Mod",
"value":50
},
"slotType" : "licenseplate_design_2_1",
"licenseplate_path" : "vehicles/common/licenseplates/user_license_plate/user_license_plate.json"
}
}
- Измените название части: прежде всего измените название части во второй строке на что-нибудь уникальное.
- Настройте секцию "information": в параметре "authors" указывается имя автора, а в параметре "name" имя вашего номерного знака. Этот параметр отображается в игре.
- slotType: этот параметр ДОЛЖЕН иметь значение "licenseplate_design_2_1". Этот параметр является определяющим и имеет непосредственную связь с корневым jbeam файлом машины. Значение "_2_1" определяет ратио номерного знака.
- licenseplate_path: определяет путь до соответствующего json файла.
Активируйте его, запускайте игру и наблюдайте результат.
Готово! Вы великолепны!