This tutorial will explain step by step how to update a mod to use the new paint system.
If your mod is using duplicates of certain paint colors from vanilla cars, we encourage you to check if these paints already exist in the default paint library , and replace your entries with the references to the library paints. This ensures that if the vanilla paint is updated in the future (due to graphics or syntax changes), the change will be carried over to the mod automatically.
"paints": {
"Night Blue": {
"baseColor": [0.04, 0.06, 0.16, 1.0],
"clearcoat": 0.8,
"clearcoatRoughness": 0.07,
"metallic": 0.8,
"roughness": 0.5
},
(...)
},
Before
"libraryPaints": [
"Night Blue",
(...)
],
After
In order to reduce the number of selectable paints in the vehicle selector, you can move some paints, which would not be available from factory, into the Custom class.
"paints": {
"Night Blue": {
"baseColor": [0.04, 0.06, 0.16, 1.0],
"clearcoat": 0.8,
"clearcoatRoughness": 0.07,
"metallic": 0.8,
"roughness": 0.5
},
(...)
},
Before
"paints": {
"Night Blue": {
"class": "custom",
"baseColor": [0.04, 0.06, 0.16, 1.0],
"clearcoat": 0.8,
"clearcoatRoughness": 0.07,
"metallic": 0.8,
"roughness": 0.5
},
(...)
},
After
You can apply the same approach to some of the library paints .
"libraryPaints": [
"matte_black",
(...)
],
Before
"libraryPaints": [
{ "id": "matte_black", "class": "custom" },
(...)
],
After
Inside the configuration info.json files, whenever multiple paint colors are used together (for example with two-tone skins), you should replace the occurrences of defaultPaintName1
, defaultPaintName2
and defaultPaintName3
with multi-paint setups
. This will make the paint setups properly selectable with fitting color combinations.
For factory configurations, add multi-paint setups with their paints to the vehicle’s main info.json file:
"multiPaintSetups": [
{
"name": "Cream Two-Tone",
"class": "factory",
"paint1": "cream",
"paint2": "light_brown",
"paint3": "cream"
},
(...)
],
And reference them inside the configuration’s info.json files:
"defaultPaintName1": "cream",
"defaultPaintName2": "light_brown",
"defaultPaintName3": "cream"
Before
"defaultMultiPaintSetup":"Cream Two-Tone"
After
For custom configurations, it is better to declare the multi-paint setup directly within the configuration’s info.json file. This will make it only usable on this specific configuration.
"defaultPaintName1": "matte_dune",
"defaultPaintName2": "army_green",
"defaultPaintName3": "matte_black"
Before
"defaultMultiPaintSetup":
{
"name": "Two-Tone Adventure",
"class": "custom",
"paint1": "matte_dune",
"paint2": "army_green",
"paint3": "matte_black"
}
After
Was this article helpful?