{
"xc90_shelf": {
    "information":{
        "authors":"BeamNG",
        "name":"Parcel Shelf",
        "value":120,
    },
    "slotType" : "xc90_shelf",
    "flexbodies": [
         ["mesh", "[group]:", "nonFlexMaterials"],
         ["xc90_shelf", ["xc90_shelf"]],
    ],
    "nodes": [
         ["id", "posX", "posY", "posZ"],
         {"collision":true},
         {"selfCollision":true},
         {"frictionCoef":0.5},
         {"nodeMaterial":"|NM_CLOTH"},
         //dashboard
         {"group":"xc90_shelf"},
         {"nodeWeight":0.3},
         ["sh1r", -0.3761, 1.592, 1.20058],
         ["sh1", 0.00000, 1.592, 1.20058],
         ["sh1l", 0.3761, 1.592, 1.20058],
         ["sh2r", -0.3761, 2.2338, 1.20058],
         ["sh2", 0.00000, 2.2805, 1.20058],
         ["sh2l", 0.3761, 2.2338, 1.20058],
         {"group":""},
         ["sh3", 0.00000, 1.711, 0.90569],
    ],
    "beams":[
          ["id1:", "id2:"],
          {"beamPrecompression":1, "beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},

          //parcel shelf
          {"beamSpring":101000,"beamDamp":50},
          {"beamDeform":6000,"beamStrength":"FLT_MAX"},

          //main shape
          {"deformLimitExpansion":1.2},
          ["sh1l", "sh2l"],
          ["sh2r", "sh1r"],
          ["sh1", "sh2"],
          ["sh2l", "sh2"],
          ["sh2", "sh2r"],
          ["sh1l", "sh1"],
          ["sh1", "sh1r"],

          //crossing
          {"beamDeform":3000,"beamStrength":"FLT_MAX"},
          {"deformLimitExpansion":""},
          ["sh1", "sh2l"],
          ["sh1l", "sh2"],
          ["sh2", "sh1r"],
          ["sh2r", "sh1"],

          //rigidifier
          ["sh3", "sh2"],
          ["sh3", "sh1"],
          ["sh3", "sh2r"],
          ["sh3", "sh1r"],
          ["sh3", "sh2l"],
          ["sh3", "sh1l"],

          //hinge
          {"beamDeform":3000,"beamStrength":12000},
          {"breakGroup":"shelf_R"},
          ["sh1r", "q1r"],
          ["sh1r", "q2r"],
          ["sh1r", "q4r"],
          ["sh1r", "r3rr"],
          ["sh1r", "f9r"],
          {"breakGroup":"shelf_L"},
          ["sh1l", "q1l"],
          ["sh1l", "q2l"],
          ["sh1l", "q4l"],
          ["sh1l", "r3ll"],
          ["sh1l", "f9l"],
          {"breakGroup":""},

          //strings
          {"beamType":"|BOUNDED", "longBoundRange":0.19, "shortBoundRange":1.0},
          {"beamSpring":0,"beamDamp":50},
          {"beamLimitSpring":101000,"beamLimitDamp":50},
          {"beamDeform":5000,"beamStrength":5000},
          ["t3ll", "sh2l", {"breakGroup":"tailgatehinge_L", "breakGroupType":1, "optional":true}],
          ["t3rr", "sh2r", {"breakGroup":"tailgatehinge_R", "breakGroupType":1, "optional":true}],
          {"beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},

          //support beams
          {"beamType":"|SUPPORT", "beamLongBound":4},
          {"beamSpring":101000,"beamDamp":50},
          {"beamDeform":6000,"beamStrength":330000},
          ["sh2r", "r2rr"],
          ["sh2l", "r2ll"],
          ["sh1l", "q1l"],
          ["sh1r", "q1r"],
          ["sh2l", "q3l"],
          ["sh2r", "q3r"],
          ["sh2", "q3l"],
          ["sh2", "q3r"],
          {"beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
          {"deformLimitExpansion":1.2},
    ],
    "triangles": [
            ["id1:","id2:","id3:"],
            {"groundModel":"plastic"},
            {"group":"xc90_shelf"},
            {"dragCoef":1},
            ["sh1", "sh2l", "sh2"],
            ["sh1", "sh2", "sh2r"],
            ["sh1r", "sh1", "sh2r"],
            ["sh1", "sh1l", "sh2l"],
            {"group":""},
    ],
},
"xc90_shifter_A": {
    "information":{
        "authors":"BeamNG",
        "name":"Automatic Shifter",
        "value":150,
    },
    "slotType" : "xc90_shifter",
    "flexbodies": [
         ["mesh", "[group]:", "nonFlexMaterials"],
         ["xc90_shifter_A", ["xc90_body"]],
    ],
    "props": [
        ["func",  "mesh",                 "idRef:", "idX:", "idY:",  "baseRotation",            "rotation",               "translation",          "min", "max", "offset", "multiplier"],
        //pedals
        ["brake", "xc90_pedal_brake_A", "f1l","f1r","f6l",         {"x":0, "y":0, "z":180},   {"x":-25, "y":0, "z":0},  {"x":0.0, "y":0, "z":0}, 0, 1, 0,    1],
    ],
},
"xc90_seat_FL": {
    "information":{
        "authors":"BeamNG",
        "name":"Driver Seat",
        "value":500,
    },
    "slotType" : "xc90_seat_FL",
    "flexbodies": [
         ["mesh", "[group]:", "nonFlexMaterials"],
         ["xc90_seat_FL", ["xc90_floor","xc90_seat_FL"]],
    ],
    "nodes": [
         ["id", "posX", "posY", "posZ"],
         {"collision":true},
         {"selfCollision":true},
         {"frictionCoef":0.5},
         {"nodeMaterial":"|NM_METAL"},
         //seats flexbody
         {"group":"xc90_seat_FL"},
         {"nodeWeight":5.0},
         ["sf1l", 0.11746, -0.29586, 0.67751],
         ["sf1ll", 0.60686, -0.29586, 0.67751],
         ["sf2l", 0.12724, 0.17713, 0.63615],
         ["sf2ll", 0.59707, 0.17713, 0.63615],
         ["sf3l", 0.21534, 0.29230, 1.41023],
         ["sf3ll", 0.49919, 0.29230, 1.41023],
         {"group":""},
    ],
    "beams":[
        ["id1:", "id2:"],
        {"beamPrecompression":1, "beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
        //main shape
        {"beamSpring":2501000,"beamDamp":300},
        {"beamDeform":20000,"beamStrength":"FLT_MAX"},
        {"deformLimitExpansion":1.2},
        ["sf1l", "sf1ll"],
        ["sf2l", "sf2ll"],
        ["sf3l", "sf3ll"],
        ["sf1l", "sf2l"],
        ["sf2l", "sf3l"],
        ["sf1ll", "sf2ll"],
        ["sf2ll", "sf3ll"],
        //crossing
        {"beamDeform":17000,"beamStrength":"FLT_MAX"},
        {"deformLimitExpansion":""},
        ["sf1ll", "sf2l"],
        ["sf2ll", "sf1l"],
        ["sf2l", "sf3ll"],
        ["sf3l", "sf2ll"],
        //corners
        {"beamDeform":3000},
        ["sf3l", "sf1l"],
        ["sf3ll", "sf1ll"],

        //damper
        {"beamSpring":0,"beamDamp":800},
        ["sf3ll", "r3ll"],
        ["sf3l", "r3ll"],

        //attach
        {"beamSpring":282000,"beamDamp":37.6},
        {"beamDeform":6000,"beamStrength":"FLT_MAX"},
        ["sf2l", "f3l"],
        ["sf2l", "f2l"],
        ["sf2l", "f3r"],
        ["sf2l", "f2r"],

        ["sf2ll", "f3l"],
        ["sf2ll", "f3ll"],
        ["sf2ll", "f2l"],
        ["sf1l", "f2l"],
        ["sf1ll", "f2l"],
        ["sf1ll", "f2ll"],
        ["sf1l", "f3l"],

        //limiter
        {"beamType":"|SUPPORT", "beamLongBound":5},
        {"beamSpring":470000,"beamDamp":141},
        {"beamPrecompression":0.9},
        {"beamDeform":6000,"beamStrength":"FLT_MAX"},
        {"optional":true},
        ["sf3l", "rf2l"],
        ["sf3l", "p8l"],
        ["sf3l", "p7l"],
        ["sf2l", "f8ll"],
        ["sf1l", "f7ll"],
        //to other seat
        {"beamPrecompression":0.7},
        ["sf1rr", "sf1ll"],
        ["sf2rr", "sf2ll"],
        ["sf3rr", "sf3ll"],
        {"optional":false},
        {"beamPrecompression":1},

        {"beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
        {"deformLimitExpansion":""},
    ],
    "triangles":[
        ["id1:", "id2:", "id3:"],
        {"groundModel":"metal"},
        {"dragCoef":0},
        //front seat
        ["sf2l",  "sf1l",  "sf1ll"],
        ["sf1ll", "sf2ll", "sf2l"],
        ["sf3l",  "sf2l",  "sf2ll"],
        ["sf2ll", "sf3ll", "sf3l"],
    ],
},
"xc90_seat_FR": {
    "information":{
        "authors":"BeamNG",
        "name":"Passenger Seat",
        "value":500,
    },
    "slotType" : "xc90_seat_FR",
    "flexbodies": [
         ["mesh", "[group]:", "nonFlexMaterials"],
         ["xc90_seat_FR", ["xc90_floor","xc90_seat_FR"],[]],
    ],
    "nodes": [
         ["id", "posX", "posY", "posZ"],
         {"collision":true},
         {"selfCollision":true},
         {"frictionCoef":0.5},
         {"nodeMaterial":"|NM_METAL"},
         //seats flexbody
         {"group":"xc90_seat_FR"},
         {"nodeWeight":5.0},
         ["sf1r", -0.11746, -0.29586, 0.67751],
         ["sf1rr", -0.60686, -0.29586, 0.67751],
         ["sf2r", -0.12724, 0.17713, 0.63615],
         ["sf2rr", -0.59707, 0.17713, 0.63615],
         ["sf3r", -0.21534, 0.29230, 1.41023],
         ["sf3rr", -0.49919, 0.29230, 1.41023],
         {"group":""},
    ],
    "beams":[
        ["id1:", "id2:"],
        {"beamPrecompression":1, "beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
        //main shape
        {"beamSpring":2501000,"beamDamp":300},
        {"beamDeform":20000,"beamStrength":"FLT_MAX"},
        {"deformLimitExpansion":1.2},
        ["sf1r", "sf1rr"],
        ["sf2r", "sf2rr"],
        ["sf3r", "sf3rr"],
        ["sf1r", "sf2r"],
        ["sf2r", "sf3r"],
        ["sf1rr", "sf2rr"],
        ["sf2rr", "sf3rr"],
        //crossing
        {"beamDeform":17000,"beamStrength":"FLT_MAX"},
        {"deformLimitExpansion":""},
        ["sf1rr", "sf2r"],
        ["sf2rr", "sf1r"],
        ["sf2r", "sf3rr"],
        ["sf3r", "sf2rr"],
        //corners
        {"beamDeform":3000},
        ["sf3r", "sf1r"],
        ["sf3rr", "sf1rr"],

        //damper
        {"beamSpring":0,"beamDamp":800},
        ["sf3rr", "r3rr"],
        ["sf3r", "r3rr"],

        //attach
        {"beamSpring":282000,"beamDamp":37.6},
        {"beamDeform":6000,"beamStrength":"FLT_MAX"},
        ["sf2r", "f3l"],
        ["sf2r", "f2l"],
        ["sf2r", "f3r"],
        ["sf2r", "f2r"],

        ["sf2rr", "f3r"],
        ["sf2rr", "f3rr"],
        ["sf2rr", "f2r"],
        ["sf1r", "f2r"],
        ["sf1rr", "f2r"],
        ["sf1rr", "f2rr"],
        ["sf1r", "f3r"],

        //limiter
        {"beamType":"|SUPPORT", "beamLongBound":5},
        {"beamSpring":470000,"beamDamp":141},
        {"beamPrecompression":0.9},
        {"beamDeform":6000,"beamStrength":"FLT_MAX"},
        {"optional":true},
        ["sf3r", "rf2r"],
        ["sf3r", "p8r"],
        ["sf3r", "p7r"],
        ["sf2r", "f8rr"],
        ["sf1r", "f7rr"],
        //to other seat
        {"beamPrecompression":0.7},
        //["sf1rr", "sf1ll"],
        //["sf2rr", "sf2ll"],
        //["sf3rr", "sf3ll"],
        {"optional":false},
        {"beamPrecompression":1},

        {"beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
        {"deformLimitExpansion":""},
    ],
    "triangles":[
        ["id1:", "id2:", "id3:"],
        {"groundModel":"metal"},
        {"dragCoef":0},
        //front seat
        ["sf1r", "sf2r", "sf1rr"],
        ["sf2rr", "sf1rr", "sf2r"],
        ["sf2r", "sf3r", "sf2rr"],
        ["sf3rr", "sf2rr", "sf3r"],
    ],
},
"xc90_seat_FL_rdesign": {
    "information":{
        "authors":"BeamNG",
        "name":"R-Design Driver Seat",
        "value":500,
    },
    "slotType" : "xc90_seat_FL",
    "flexbodies": [
         ["mesh", "[group]:", "nonFlexMaterials"],
         ["xc90_seat_FL", ["xc90_floor","xc90_seat_FL"]],
		 ["xc90_seat_FL_rdesign", ["xc90_floor","xc90_seat_FL"]],
    ],
    "nodes": [
         ["id", "posX", "posY", "posZ"],
         {"collision":true},
         {"selfCollision":true},
         {"frictionCoef":0.5},
         {"nodeMaterial":"|NM_METAL"},
         //seats flexbody
         {"group":"xc90_seat_FL"},
         {"nodeWeight":5.0},
         ["sf1l", 0.11746, -0.29586, 0.67751],
         ["sf1ll", 0.60686, -0.29586, 0.67751],
         ["sf2l", 0.12724, 0.17713, 0.63615],
         ["sf2ll", 0.59707, 0.17713, 0.63615],
         ["sf3l", 0.21534, 0.29230, 1.41023],
         ["sf3ll", 0.49919, 0.29230, 1.41023],
         {"group":""},
    ],
    "beams":[
        ["id1:", "id2:"],
        {"beamPrecompression":1, "beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
        //main shape
        {"beamSpring":2501000,"beamDamp":300},
        {"beamDeform":20000,"beamStrength":"FLT_MAX"},
        {"deformLimitExpansion":1.2},
        ["sf1l", "sf1ll"],
        ["sf2l", "sf2ll"],
        ["sf3l", "sf3ll"],
        ["sf1l", "sf2l"],
        ["sf2l", "sf3l"],
        ["sf1ll", "sf2ll"],
        ["sf2ll", "sf3ll"],
        //crossing
        {"beamDeform":17000,"beamStrength":"FLT_MAX"},
        {"deformLimitExpansion":""},
        ["sf1ll", "sf2l"],
        ["sf2ll", "sf1l"],
        ["sf2l", "sf3ll"],
        ["sf3l", "sf2ll"],
        //corners
        {"beamDeform":3000},
        ["sf3l", "sf1l"],
        ["sf3ll", "sf1ll"],

        //damper
        {"beamSpring":0,"beamDamp":800},
        ["sf3ll", "r3ll"],
        ["sf3l", "r3ll"],

        //attach
        {"beamSpring":282000,"beamDamp":37.6},
        {"beamDeform":6000,"beamStrength":"FLT_MAX"},
        ["sf2l", "f3l"],
        ["sf2l", "f2l"],
        ["sf2l", "f3r"],
        ["sf2l", "f2r"],

        ["sf2ll", "f3l"],
        ["sf2ll", "f3ll"],
        ["sf2ll", "f2l"],
        ["sf1l", "f2l"],
        ["sf1ll", "f2l"],
        ["sf1ll", "f2ll"],
        ["sf1l", "f3l"],

        //limiter
        {"beamType":"|SUPPORT", "beamLongBound":5},
        {"beamSpring":470000,"beamDamp":141},
        {"beamPrecompression":0.9},
        {"beamDeform":6000,"beamStrength":"FLT_MAX"},
        {"optional":true},
        ["sf3l", "rf2l"],
        ["sf3l", "p8l"],
        ["sf3l", "p7l"],
        ["sf2l", "f8ll"],
        ["sf1l", "f7ll"],
        //to other seat
        {"beamPrecompression":0.7},
        ["sf1rr", "sf1ll"],
        ["sf2rr", "sf2ll"],
        ["sf3rr", "sf3ll"],
        {"optional":false},
        {"beamPrecompression":1},

        {"beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
        {"deformLimitExpansion":""},
    ],
    "triangles":[
        ["id1:", "id2:", "id3:"],
        {"groundModel":"metal"},
        {"dragCoef":0},
        //front seat
        ["sf2l",  "sf1l",  "sf1ll"],
        ["sf1ll", "sf2ll", "sf2l"],
        ["sf3l",  "sf2l",  "sf2ll"],
        ["sf2ll", "sf3ll", "sf3l"],
    ],
},
"xc90_seat_FR_rdesign": {
    "information":{
        "authors":"BeamNG",
        "name":"R-Design Passenger Seat",
        "value":500,
    },
    "slotType" : "xc90_seat_FR",
    "flexbodies": [
         ["mesh", "[group]:", "nonFlexMaterials"],
         ["xc90_seat_FR", ["xc90_floor","xc90_seat_FR"],[]],
		 ["xc90_seat_FR_rdesign", ["xc90_floor","xc90_seat_FR"],[]],
    ],
    "nodes": [
         ["id", "posX", "posY", "posZ"],
         {"collision":true},
         {"selfCollision":true},
         {"frictionCoef":0.5},
         {"nodeMaterial":"|NM_METAL"},
         //seats flexbody
         {"group":"xc90_seat_FR"},
         {"nodeWeight":5.0},
         ["sf1r", -0.11746, -0.29586, 0.67751],
         ["sf1rr", -0.60686, -0.29586, 0.67751],
         ["sf2r", -0.12724, 0.17713, 0.63615],
         ["sf2rr", -0.59707, 0.17713, 0.63615],
         ["sf3r", -0.21534, 0.29230, 1.41023],
         ["sf3rr", -0.49919, 0.29230, 1.41023],
         {"group":""},
    ],
    "beams":[
        ["id1:", "id2:"],
        {"beamPrecompression":1, "beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
        //main shape
        {"beamSpring":2501000,"beamDamp":300},
        {"beamDeform":20000,"beamStrength":"FLT_MAX"},
        {"deformLimitExpansion":1.2},
        ["sf1r", "sf1rr"],
        ["sf2r", "sf2rr"],
        ["sf3r", "sf3rr"],
        ["sf1r", "sf2r"],
        ["sf2r", "sf3r"],
        ["sf1rr", "sf2rr"],
        ["sf2rr", "sf3rr"],
        //crossing
        {"beamDeform":17000,"beamStrength":"FLT_MAX"},
        {"deformLimitExpansion":""},
        ["sf1rr", "sf2r"],
        ["sf2rr", "sf1r"],
        ["sf2r", "sf3rr"],
        ["sf3r", "sf2rr"],
        //corners
        {"beamDeform":3000},
        ["sf3r", "sf1r"],
        ["sf3rr", "sf1rr"],

        //damper
        {"beamSpring":0,"beamDamp":800},
        ["sf3rr", "r3rr"],
        ["sf3r", "r3rr"],

        //attach
        {"beamSpring":282000,"beamDamp":37.6},
        {"beamDeform":6000,"beamStrength":"FLT_MAX"},
        ["sf2r", "f3l"],
        ["sf2r", "f2l"],
        ["sf2r", "f3r"],
        ["sf2r", "f2r"],

        ["sf2rr", "f3r"],
        ["sf2rr", "f3rr"],
        ["sf2rr", "f2r"],
        ["sf1r", "f2r"],
        ["sf1rr", "f2r"],
        ["sf1rr", "f2rr"],
        ["sf1r", "f3r"],

        //limiter
        {"beamType":"|SUPPORT", "beamLongBound":5},
        {"beamSpring":470000,"beamDamp":141},
        {"beamPrecompression":0.9},
        {"beamDeform":6000,"beamStrength":"FLT_MAX"},
        {"optional":true},
        ["sf3r", "rf2r"],
        ["sf3r", "p8r"],
        ["sf3r", "p7r"],
        ["sf2r", "f8rr"],
        ["sf1r", "f7rr"],
        //to other seat
        {"beamPrecompression":0.7},
        //["sf1rr", "sf1ll"],
        //["sf2rr", "sf2ll"],
        //["sf3rr", "sf3ll"],
        {"optional":false},
        {"beamPrecompression":1},

        {"beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
        {"deformLimitExpansion":""},
    ],
    "triangles":[
        ["id1:", "id2:", "id3:"],
        {"groundModel":"metal"},
        {"dragCoef":0},
        //front seat
        ["sf1r", "sf2r", "sf1rr"],
        ["sf2rr", "sf1rr", "sf2r"],
        ["sf2r", "sf3r", "sf2rr"],
        ["sf3rr", "sf2rr", "sf3r"],
    ],
},
"xc90_screen_branding_xc90_ICE": {
    "information":{
        "authors":"BeamNG",
        "name":"Screen Branding",
        "value":1,
    },
    "slotType" : "xc90_screen_branding",
    "glowMap":{
		"etk800_gauges_screen":{"simpleFunction":{"ignitionLevel":0.5}, "off":"screen_off", "on":"etk800_gauges_screen", "on_intense":"etk800_gauges_screen"},
        "xc90_gps_screen":{"simpleFunction":{"ignitionLevel":0.5}, "off":"screen_off","on":"xc90_gps_screen", "on_intense":"xc90_gps_screen"},
		"xc90_gauges":{"simpleFunction":{"ignitionLevel":0.5}, "off":"screen_off","on":"xc90_gauges", "on_intense":"xc90_gauges"},
    },
},
}