{
"nix_97dakota_shifter_M": {
    "information":{
        "authors":"BeamNG",
        "name":"5-Speed Manual Shifter",
        "value":50,
    },
    "slotType" : "nix_97dakota_shifter",
    "flexbodies": [
         ["mesh", "[group]:", "nonFlexMaterials"],
         //cover up the auto shifter numbering
         ["nix_97dakota_shifter_M", ["pickup_floor","pickup_shifterboot_M","pickup_shifterknob_M","pickup_shifterbase_M"]],
    ],
    "props": [
        ["func",   "mesh",             "idRef:","idX:","idY:", "baseRotation",         "rotation",            "translation",         "min", "max", "offset", "multiplier"],
        //shifter
        ["clutch", "nix_97dakota_pedal_clutch"   , "b1l","b1r","b5l",    {"x":0, "y":0, "z":180}, {"x":-25, "y":0, "z":0}    , {"x":0.0, "y":0, "z":0}, 0, 1, 0, 1]
    ],
    "controller": [
        ["fileName"],
        ["propAnimation/hPattern", {"name":"hPattern"}],

    ]
    "hPattern": {
        "gearCoordinates": [
            ["gearIndex",   "x",      "y"]
            [-1,            0.5,        -1]
            [0,             0.0,        0]
            [1,            -0.5,        1]
            [2,            -0.5,       -1]
            [3,             0.0,        1]
            [4,             0.0,       -1]
            [5,             0.5,        1]
        ]
        "shiftSoundNode:":["sh_b3"]
        "shiftSoundEventHPatternGearIn": "event:>Vehicle>Interior>Gearshift>manual_modern_03_in",
        "shiftSoundEventHPatternGearOut": "event:>Vehicle>Interior>Gearshift>manual_modern_03_out",
        "shiftSoundVolumeHPatternGearIn": 1,
        "shiftSoundVolumeHPatternGearOut": 1,
    },
    "nodes": [
         ["id", "posX", "posY", "posZ"],
         {"frictionCoef":0.5},
         {"nodeMaterial":"|NM_METAL"},
         {"collision":true},
         {"selfCollision":false},
         //--SHIFTER---  has to be jbeamed to allow for realistic movement
         {"group":"pickup_shifterbase_M"},
         {"nodeWeight":0.45}
         ["sh_b1l",  0.076, -0.870, 0.688],
         ["sh_b1r", -0.076, -0.870, 0.688],
         ["sh_b2l",  0.076, -0.702, 0.632],
         ["sh_b2r", -0.076, -0.702, 0.632],

         ["sh_b3", 0.00, -0.80, 0.607],
         {"selfCollision":true},
         {"group":["pickup_shifterboot_M","pickup_shifterknob_M"]},
         {"nodeWeight":1.5}
         ["sh_l3", 0.00, -0.665, 0.86],

         {"selfCollision":false},
         {"nodeWeight":0.30}
         {"group":["pickup_shifterboot_M","pickup_shifterknob_M"]},
         ["sh_l1l",  0.032, -0.799 0.749],
         ["sh_l1r", -0.032, -0.799 0.749],
         ["sh_l2l",  0.032, -0.723, 0.723],
         ["sh_l2r", -0.032, -0.723, 0.723],
         {"selfCollision":false},
         {"collision":true},
         {"group":""},
    ],
    "beams":[
        ["id1:", "id2:"],
        {"beamPrecompression":1, "beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
        //main shape
        {"beamSpring":401000,"beamDamp":55},
        {"beamDeform":259000,"beamStrength":"FLT_MAX"},
        {"deformLimitExpansion":1.1},
        ["sh_b1l", "sh_b1r"],
        ["sh_b1l", "sh_b2l"],
        ["sh_b1l", "sh_b2r"],
        ["sh_b1r", "sh_b2l"],
        ["sh_b1r", "sh_b2r"],
        ["sh_b2l", "sh_b2r"],

        ["sh_b1l", "sh_b3"],
        ["sh_b1r", "sh_b3"],
        ["sh_b2l", "sh_b3"],
        ["sh_b2r", "sh_b3"],

        //lever
        {"beamSpring":121000,"beamDamp":35},
        ["sh_l3", "sh_l1l"],
        ["sh_l3", "sh_l1r"],
        ["sh_l3", "sh_l2l"],
        ["sh_l3", "sh_l2r"],

        ["sh_l1l", "sh_l1r"],
        ["sh_l1l", "sh_l2l"],
        ["sh_l1l", "sh_l2r"],

        ["sh_l1r", "sh_l2l"],
        ["sh_l1r", "sh_l2r"],
        ["sh_l2l", "sh_l2r"],
        //hinge
        {"beamSpring":121000,"beamDamp":25},
        ["sh_b3", "sh_l3"],
        ["sh_b3", "sh_l1l"],
        ["sh_b3", "sh_l1r"],
        ["sh_b3", "sh_l2l"],
        ["sh_b3", "sh_l2r"],

        //stabilize the shifter
        {"beamSpring":0,"beamDamp":175},
        ["sh_b1l", "sh_l3"],
        ["sh_b1r", "sh_l3"],
        ["sh_b2l", "sh_l3"],
        ["sh_b2r", "sh_l3"],
        {"breakGroup":""},
        //attach to body
        {"beamSpring":300000,"beamDamp":70},
        {"beamDeform":1400,"beamStrength":"FLT_MAX"},
        ["sh_b1l", "b5r"],
        ["sh_b1r", "b5r"],
        ["sh_b2l", "b5r"],
        ["sh_b2r", "b5r"],
        ["sh_b3",  "b5r"],

        ["sh_b1l", "b5l"],
        ["sh_b1r", "b5l"],
        ["sh_b2l", "b5l"],
        ["sh_b2r", "b5l"],
        ["sh_b3",  "b5l"],

        ["sh_b1l", "dsh2",{"beamDeform":12400}],
        ["sh_b1r", "dsh2",{"beamDeform":12400}],
        ["sh_b2l", "dsh2",{"beamDeform":12400}],
        ["sh_b2r", "dsh2",{"beamDeform":12400}],
        ["sh_b3",  "dsh2",{"beamDeform":12400}],

        ["sh_b1l", "b1r"],
        ["sh_b1r", "b1r"],
        ["sh_b2l", "b1r"],
        ["sh_b2r", "b1r"],
        ["sh_b3",  "b1r"],

        ["sh_b1l", "b1l"],
        ["sh_b1r", "b1l"],
        ["sh_b2l", "b1l"],
        ["sh_b2r", "b1l"],
        ["sh_b3",  "b1l"],
        //support beams
        {"beamType":"|SUPPORT","beamPrecompression":0.895,"beamLongBound":2},
        {"beamSpring":201000,"beamDamp":50},
        {"beamDeform":16000,"beamStrength":"FLT_MAX"},
        ["sh_l1r", "sh_b2l"],
        ["sh_l2r", "sh_b1l"],
        ["sh_l2l", "sh_b1r"],
        ["sh_l1l", "sh_b2r"],
        {"beamPrecompression":0.905}
        ["sh_l3", "sh_b1l"],
        ["sh_l3", "sh_b1r"],
        ["sh_l3", "sh_b2l"],
        ["sh_l3", "sh_b2r"],
        {"beamPrecompression":1, "beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
    ],
    "torsionHydros": [
        ["id1:","id2:","id3:","id4:"],
        {"spring":200, "damp":1, "deform":"FLT_MAX", "strength":1000},
        ["sh_b2l","sh_b1l","sh_b1r","sh_l3",  {"inputSource":"hPatternAxisY","factor":-0.20}],
        ["sh_b1r","sh_b1l","sh_b2l","sh_l3",  {"inputSource":"hPatternAxisX","factor":-0.15}],
        ["sh_b1r","sh_b2r","sh_b2l","sh_l3",  {"inputSource":"hPatternAxisY","factor":0.20}],
        ["sh_b2l","sh_b2r","sh_b1r","sh_l3",  {"inputSource":"hPatternAxisX","factor":0.15}],
    ],
    "torsionbars": [
        ["id1:", "id2:", "id3:", "id4:"],
        {"spring":100, "damp":0.2, "deform":30000, "strength":1000},
        ["sh_b1r", "sh_b3", "sh_l3", "sh_l1r"],
        ["sh_b2r", "sh_b3", "sh_l3", "sh_l2r"],
        ["sh_b2l", "sh_b3", "sh_l3", "sh_l2l"],
        ["sh_b1l", "sh_b3", "sh_l3", "sh_l1l"],

    ],
},
"nix_97dakota_shifter_M_sport": {
    "information":{
        "authors":"BeamNG",
        "name":"6-Speed Manual Shifter",
        "value":50,
    },
    "slotType" : "nix_97dakota_shifter",
    "flexbodies": [
         ["mesh", "[group]:", "nonFlexMaterials"],
         //cover up the auto shifter numbering
         ["nix_97dakota_shifter_M", ["pickup_floor","pickup_shifterboot_M","pickup_shifterknob_M","pickup_shifterbase_M"]],
    ],
    "props": [
        ["func",   "mesh",             "idRef:","idX:","idY:", "baseRotation",         "rotation",            "translation",         "min", "max", "offset", "multiplier"],
        //shifter
        ["clutch", "nix_97dakota_pedal_clutch"   , "b1l","b1r","b5l",    {"x":0, "y":0, "z":180}, {"x":-25, "y":0, "z":0}    , {"x":0.0, "y":0, "z":0}, 0, 1, 0, 1]
    ],
    "controller": [
        ["fileName"],
        ["propAnimation/hPattern", {"name":"hPattern"}],

    ]
    "hPattern": {
        "gearCoordinates": [
            ["gearIndex",   "x",      "y"]
            [-1,           -1.0,        1]
            [0,             0.0,        0]
            [1,            -0.5,        1]
            [2,            -0.5,       -1]
            [3,             0.0,        1]
            [4,             0.0,       -1]
            [5,             0.5,        1]
            [6,             0.5,       -1]
        ]
        "shiftSoundNode:":["sh_b3"]
        "shiftSoundEventHPatternGearIn": "event:>Vehicle>Interior>Gearshift>manual_modern_03_in",
        "shiftSoundEventHPatternGearOut": "event:>Vehicle>Interior>Gearshift>manual_modern_03_out",
        "shiftSoundVolumeHPatternGearIn": 1,
        "shiftSoundVolumeHPatternGearOut": 1,
    },
    "nodes": [
         ["id", "posX", "posY", "posZ"],
         {"frictionCoef":0.5},
         {"nodeMaterial":"|NM_METAL"},
         {"collision":true},
         {"selfCollision":false},
         //--SHIFTER---  has to be jbeamed to allow for realistic movement
         {"group":"pickup_shifterbase_M"},
         {"nodeWeight":0.45}
         ["sh_b1l",  0.076, -0.870, 0.688],
         ["sh_b1r", -0.076, -0.870, 0.688],
         ["sh_b2l",  0.076, -0.702, 0.632],
         ["sh_b2r", -0.076, -0.702, 0.632],

         ["sh_b3", 0.00, -0.80, 0.607],
         {"selfCollision":true},
         {"group":["pickup_shifterboot_M","pickup_shifterknob_M"]},
         {"nodeWeight":1.5}
         ["sh_l3", 0.00, -0.665, 0.86],

         {"selfCollision":false},
         {"nodeWeight":0.30}
         {"group":["pickup_shifterboot_M","pickup_shifterknob_M"]},
         ["sh_l1l",  0.032, -0.799 0.749],
         ["sh_l1r", -0.032, -0.799 0.749],
         ["sh_l2l",  0.032, -0.723, 0.723],
         ["sh_l2r", -0.032, -0.723, 0.723],
         {"selfCollision":false},
         {"collision":true},
         {"group":""},
    ],
    "beams":[
        ["id1:", "id2:"],
        {"beamPrecompression":1, "beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
        //main shape
        {"beamSpring":401000,"beamDamp":55},
        {"beamDeform":259000,"beamStrength":"FLT_MAX"},
        {"deformLimitExpansion":1.1},
        ["sh_b1l", "sh_b1r"],
        ["sh_b1l", "sh_b2l"],
        ["sh_b1l", "sh_b2r"],
        ["sh_b1r", "sh_b2l"],
        ["sh_b1r", "sh_b2r"],
        ["sh_b2l", "sh_b2r"],

        ["sh_b1l", "sh_b3"],
        ["sh_b1r", "sh_b3"],
        ["sh_b2l", "sh_b3"],
        ["sh_b2r", "sh_b3"],

        //lever
        {"beamSpring":121000,"beamDamp":35},
        ["sh_l3", "sh_l1l"],
        ["sh_l3", "sh_l1r"],
        ["sh_l3", "sh_l2l"],
        ["sh_l3", "sh_l2r"],

        ["sh_l1l", "sh_l1r"],
        ["sh_l1l", "sh_l2l"],
        ["sh_l1l", "sh_l2r"],

        ["sh_l1r", "sh_l2l"],
        ["sh_l1r", "sh_l2r"],
        ["sh_l2l", "sh_l2r"],
        //hinge
        {"beamSpring":121000,"beamDamp":25},
        ["sh_b3", "sh_l3"],
        ["sh_b3", "sh_l1l"],
        ["sh_b3", "sh_l1r"],
        ["sh_b3", "sh_l2l"],
        ["sh_b3", "sh_l2r"],

        //stabilize the shifter
        {"beamSpring":0,"beamDamp":175},
        ["sh_b1l", "sh_l3"],
        ["sh_b1r", "sh_l3"],
        ["sh_b2l", "sh_l3"],
        ["sh_b2r", "sh_l3"],
        {"breakGroup":""},
        //attach to body
        {"beamSpring":300000,"beamDamp":70},
        {"beamDeform":1400,"beamStrength":"FLT_MAX"},
        ["sh_b1l", "b5r"],
        ["sh_b1r", "b5r"],
        ["sh_b2l", "b5r"],
        ["sh_b2r", "b5r"],
        ["sh_b3",  "b5r"],

        ["sh_b1l", "b5l"],
        ["sh_b1r", "b5l"],
        ["sh_b2l", "b5l"],
        ["sh_b2r", "b5l"],
        ["sh_b3",  "b5l"],

        ["sh_b1l", "dsh2",{"beamDeform":12400}],
        ["sh_b1r", "dsh2",{"beamDeform":12400}],
        ["sh_b2l", "dsh2",{"beamDeform":12400}],
        ["sh_b2r", "dsh2",{"beamDeform":12400}],
        ["sh_b3",  "dsh2",{"beamDeform":12400}],

        ["sh_b1l", "b1r"],
        ["sh_b1r", "b1r"],
        ["sh_b2l", "b1r"],
        ["sh_b2r", "b1r"],
        ["sh_b3",  "b1r"],

        ["sh_b1l", "b1l"],
        ["sh_b1r", "b1l"],
        ["sh_b2l", "b1l"],
        ["sh_b2r", "b1l"],
        ["sh_b3",  "b1l"],
        //support beams
        {"beamType":"|SUPPORT","beamPrecompression":0.895,"beamLongBound":2},
        {"beamSpring":201000,"beamDamp":50},
        {"beamDeform":16000,"beamStrength":"FLT_MAX"},
        ["sh_l1r", "sh_b2l"],
        ["sh_l2r", "sh_b1l"],
        ["sh_l2l", "sh_b1r"],
        ["sh_l1l", "sh_b2r"],
        {"beamPrecompression":0.905}
        ["sh_l3", "sh_b1l"],
        ["sh_l3", "sh_b1r"],
        ["sh_l3", "sh_b2l"],
        ["sh_l3", "sh_b2r"],
        {"beamPrecompression":1, "beamType":"|NORMAL", "beamLongBound":1.0, "beamShortBound":1.0},
    ],
    "torsionHydros": [
        ["id1:","id2:","id3:","id4:"],
        {"spring":200, "damp":1, "deform":"FLT_MAX", "strength":1000},
        ["sh_b2l","sh_b1l","sh_b1r","sh_l3",  {"inputSource":"hPatternAxisY","factor":-0.20}],
        ["sh_b1r","sh_b1l","sh_b2l","sh_l3",  {"inputSource":"hPatternAxisX","factor":-0.15}],
        ["sh_b1r","sh_b2r","sh_b2l","sh_l3",  {"inputSource":"hPatternAxisY","factor":0.20}],
        ["sh_b2l","sh_b2r","sh_b1r","sh_l3",  {"inputSource":"hPatternAxisX","factor":0.15}],
    ],
    "torsionbars": [
        ["id1:", "id2:", "id3:", "id4:"],
        {"spring":100, "damp":0.2, "deform":30000, "strength":1000},
        ["sh_b1r", "sh_b3", "sh_l3", "sh_l1r"],
        ["sh_b2r", "sh_b3", "sh_l3", "sh_l2r"],
        ["sh_b2l", "sh_b3", "sh_l3", "sh_l2l"],
        ["sh_b1l", "sh_b3", "sh_l3", "sh_l1l"],

    ],
},
"nix_97dakota_shifter_T": {
    "information":{
        "authors":"BeamNG",
        "name":"Range Selector",
        "value":40,
    },
    "slotType" : "nix_97dakota_shifter_T",
    "flexbodies": [
         ["mesh", "[group]:", "nonFlexMaterials"],
         //cover up the auto shifter numbering
         ["nix_97dakota_shifter_T", ["pickup_floor"]],
    ],
},
}