{
"pickup_beamaxle_F": {
    "information":{
        "authors":"BeamNG",
        "name":"Beam Axle Front Suspension",
        "value":300,
    },
    "slotType" : "pickup_suspension_F",
    "slots": [
        ["type", "default", "description"],
        ["pickup_spring_F","pickup_spring_F","Front Springs"],
        ["pickup_shock_F","pickup_shock_F","Front Shocks"],
        ["pickup_hub_F","pickup_hub_F_6","Front Wheel Hubs", {"nodeMove":{"x":0, "y":0, "z":-0.1333}}],
        ["pickup_steering_SFA","pickup_steering_SFA","Steering"],
    ],
    "variables": [
        ["name", "type", "unit", "category", "default", "min", "max", "title", "description"],
        ["$trackoffset_F", "range", "+m", "Wheels", 0.0, -0.02, 0.05, "Wheel Offset", "Spacing of the wheel from the hub", {"stepDis":0.001,"subCategory":"Front"}],
    ],
    "flexbodies": [
         ["mesh", "[group]:", "nonFlexMaterials"],
         //front running gear
         ["pickup_shocktop_F", ["pickup_frame", "pickup_shocktop"]],
         ["pickup_subframe_SFA", ["pickup_frame", "pickup_uppermounts", "pickup_lowermounts","pickup_steeringrack"], []],
         ["pickup_leafmounts_F", ["pickup_frame", "pickup_framecab", "pickup_leafmounts_F", "pickup_lowermounts","pickup_steeringrack"], []],
         ["pickup_beamaxle_F", ["pickup_axle_F","pickup_shockbottom_F"], []],
         ["pickup_hub_F_beamaxle", ["pickup_hub_F"], []],
         ["pickup_tierod_SFA", ["pickup_tierod_F"], []],
         ["pickup_leafbracket_F_beamaxle", ["pickup_shockbottom_F","pickup_axle_F"],[],{"pos":{"x":0.0, "y":0.0, "z":0.0}}],
    ],
    "nodes": [
         ["id", "posX", "posY", "posZ"],
         {"frictionCoef":0.5},
         {"nodeMaterial":"|NM_METAL"},
         {"collision":true},
         {"selfCollision":true},
         //--FRONT DEAD AXLE--
         //crossmember
         {"group":"pickup_lowermounts"},
         {"nodeWeight":5.64},
         ["fx1r", -0.26, -1.62, 0.38],
         ["fx1l", 0.26, -1.62, 0.38],
         //axle
         {"nodeWeight":3.76},
         {"collision":true},
         {"selfCollision":true},
         {"group":["pickup_beam_F","pickup_axle_F","pickup_shockbottom_F"]},
         ["fsh1r",-0.57, -1.53, 0.285],
         ["fsh1l", 0.57, -1.53, 0.285],
         {"group":["pickup_beam_F","pickup_axle_F"]},
         ["fax1", 0.0, -1.463 0.48, {"selfCollision":false}],
         ["fax2", 0.0, -1.463, 0.29],
         ["fax4", 0.0, -1.21, 0.335, {"collision":false,"selfCollision":false}],
         ["fax1r",-0.53, -1.463, 0.40, {"group":["pickup_axle_F","pickup_beam_F","pickup_leaf_F","pickup_shockbottom_dual_F"]}],
         ["fax1l", 0.53, -1.463, 0.40, {"group":["pickup_axle_F","pickup_beam_F","pickup_leaf_F","pickup_shockbottom_dual_F"]}],
         {"collision":false},
         {"selfCollision":false},
         ["fax2r",-0.53, -1.463, 0.20, {"group":["pickup_axle_F","pickup_beam_F","pickup_leaf_F"]}],
         ["fax2l", 0.53, -1.463, 0.20, {"group":["pickup_axle_F","pickup_beam_F","pickup_leaf_F"]}],
         ["fax4r",-0.63, -1.26, 0.34],
         ["fax4l", 0.63, -1.26, 0.34],
         //hubs
         {"collision":true},
         {"nodeWeight":4.7},
         {"group":"pickup_hub_F"},
         ["fh2r",-0.675, -1.455, 0.455, {"group":["pickup_hub_F","pickup_beam_F","pickup_axle_F"]}],
         ["fh2l", 0.675, -1.455, 0.455, {"group":["pickup_hub_F","pickup_beam_F","pickup_axle_F"]}],
         {"selfCollision":true},
         ["fh3r",-0.695, -1.475, 0.215, {"group":["pickup_hub_F","pickup_beam_F","pickup_axle_F"]}],
         ["fh3l", 0.695, -1.475, 0.215, {"group":["pickup_hub_F","pickup_beam_F","pickup_axle_F"]}],
         ["fh4r",-0.84, -1.24, 0.3277, {"group":["pickup_hub_F","pickup_tierod_F"]}],
         ["fh4l", 0.84, -1.24, 0.3277, {"group":["pickup_hub_F","pickup_tierod_F"]}],
         //tie rod
         {"nodeWeight":6.58},
         ["fh1r",-0.73, -1.63, 0.39, {"group":["pickup_hub_F","pickup_tierod_F"]}],
         {"nodeWeight":5.64},
         ["fh1l", 0.73, -1.63, 0.39, {"group":["pickup_hub_F","pickup_tierod_F"]}],
         {"nodeWeight":4.7},
         {"selfCollision":false},
         //front leaf mount nodes
         {"group":"pickup_leafmounts_F"},
         ["fx2r",-0.44, -1.945, 0.46],
         ["fx2l", 0.44, -1.945, 0.46],
         ["fx2rr",-0.56, -1.945, 0.46],
         ["fx2ll", 0.56, -1.945, 0.46],
         {"group":""},
    ],
    "torsionbars": [
        ["id1:", "id2:", "id3:", "id4:"],
        {"spring":200000, "damp":0, "deform":25000, "strength":100000},
        //rigidify steering arm
        ["fw1rr", "fw1r", "fh3r", "fh1r"],
        ["fw1ll", "fw1l", "fh3l", "fh1l"],
    ],
    "beams": [
          ["id1:", "id2:"],
          {"beamPrecompression":1, "beamType":"|NORMAL", "beamLongBound":1, "beamShortBound":1},

          //front main crossmember
          //main shape
          {"deformLimitExpansion":1.2},
          {"beamSpring":8460940, "beamDamp":235},
          {"beamDeform":21000, "beamStrength":"FLT_MAX"},
          ["fx1r", "fx1l"],
          ["fx1l", "f2l"],
          ["fx1l", "f3l"],
          ["fx1r", "f2r"],
          ["fx1r", "f3r"],
          //rigids
          {"deformLimitExpansion":""},
          {"beamDeform":10500,"beamStrength":"FLT_MAX"},
          //vertical
          ["fx1l", "f12l"],
          ["fx1l", "f13l"],
          ["fx1r", "f12r"],
          ["fx1r", "f13r"],
          ["fx1l", "f12r"],
          ["fx1l", "f13r"],
          ["fx1r", "f12l"],
          ["fx1r", "f13l"],
          //widthwise
          ["fx1l", "f3r"],
          ["fx1r", "f3l"],
          ["fx1r", "f2l"],
          ["fx1l", "f2r"],
          {"deformLimitExpansion":1.2},

          //--FRONT LIVE AXLE--
          {"beamSpring":3760940,"beamDamp":47},
          {"beamDeform":87500,"beamStrength":434700},
          ["fax1", "fax2"],
          ["fax1", "fax4"],
          ["fax2", "fax4"],
          ["fax2l", "fax4l"],
          ["fax2r", "fax4r"],
          ["fax1l", "fax4l"],
          ["fax1r", "fax4r"],
          ["fax1r", "fax2r"],
          ["fax1l", "fax2l"],
          ["fax2l", "fax2"],
          ["fax2r", "fax2"],
          ["fax4l", "fax4"],
          ["fax4r", "fax4"],
          ["fax1l", "fax1"],
          ["fax1r", "fax1"],
          ["fax1l", "fax2"],
          ["fax2l", "fax1"],
          ["fax1r", "fax2"],
          ["fax2r", "fax1"],
          ["fax4l", "fax1"],
          ["fax1l", "fax4"],
          ["fax4r", "fax1"],
          ["fax1r", "fax4"],
          ["fax2l", "fax4"],
          ["fax4l", "fax2"],
          ["fax4r", "fax2"],
          ["fax2r", "fax4"],

          //to shock mount
          {"beamSpring":2350940,"beamDamp":47},
          ["fsh1r","fax1r"],
          ["fsh1l","fax1l"],
          ["fsh1r","fax2r"],
          ["fsh1l","fax2l"],
          ["fsh1r","fax4r"],
          ["fsh1l","fax4l"],
          ["fsh1r","fax1"],
          ["fsh1l","fax1"],
          ["fsh1r","fax2"],
          ["fsh1l","fax2"],
          ["fsh1r","fax4"],
          ["fsh1l","fax4"],

          ["fh2r","fsh1r"],
          ["fh2l","fsh1l"],

          ["fh3r","fsh1r"],
          ["fh3l","fsh1l"],

          //to hub
          {"beamSpring":3760940,"beamDamp":47},
          ["fh2l", "fax1l"],
          ["fh2r", "fax1r"],
          ["fh3l", "fax2l"],
          ["fh3r", "fax2r"],
          ["fh2l", "fax2l"],
          ["fh3l", "fax1l"],
          ["fh2r", "fax2r"],
          ["fh3r", "fax1r"],
          ["fh3l", "fax4l"],
          ["fh3r", "fax4r"],
          ["fh2l", "fax4l"],
          ["fh2r", "fax4r"],
          ["fh3l", "fax4"],
          ["fh3r", "fax4"],
          ["fh2l", "fax4"],
          ["fh2r", "fax4"],

          ["fh2l", "fax1"],
          ["fh2r", "fax1"],

          ["fh3l", "fax2"],
          ["fh3r", "fax2"],

          //hub
          {"beamSpring":7520940,"beamDamp":94},
          ["fh2r","fh3r"],
          ["fh2r","fh1r"],
          ["fh3r","fh1r"],
          ["fh1r","fh4r"],
          ["fh2r","fh4r"],
          ["fh3r","fh4r"],

          ["fh2l","fh3l"],
          ["fh2l","fh1l"],
          ["fh3l","fh1l"],
          ["fh1l","fh4l"],
          ["fh2l","fh4l"],
          ["fh3l","fh4l"],

          ["fh2l", "fh2r"],
          ["fh3r", "fh3l"],

          //leaf nodes attach to frame
          {"beamSpring":4700940,"beamDamp":235},
          {"beamDeform":31500,"beamStrength":"FLT_MAX"},
          ["fx2r", "f1r"],
          ["fx2r", "f2r"],
          ["fx2r", "f11r"],
          ["fx2r", "f12r"],
          ["fx2r", "fx1r"],

          ["fx2rr", "f1r"],
          ["fx2rr", "f2r"],
          ["fx2rr", "f11r"],
          ["fx2rr", "f12r"],
          ["fx2rr", "fx1r"],

          ["fx2l", "f1l"],
          ["fx2l", "f2l"],
          ["fx2l", "f11l"],
          ["fx2l", "f12l"],
          ["fx2l", "fx1l"],

          ["fx2ll", "f1l"],
          ["fx2ll", "f2l"],
          ["fx2ll", "f11l"],
          ["fx2ll", "f12l"],
          ["fx2ll", "fx1l"],

          ["fx2rr", "fx2r"],
          ["fx2ll", "fx2l"],

          {"beamSpring":1880940,"beamDamp":141},
          ["flf2r", "f4r"],
          ["flf2r", "f14r"],
          ["flf2r", "f14"],
          ["flf2r", "f4"],

          ["flf2l", "f4l"],
          ["flf2l", "f14l"],
          ["flf2l", "f14"],
          ["flf2l", "f4"],

          {"beamDeform":10500,"beamStrength":"FLT_MAX"},
          ["flf2l", "f3l"],
          ["flf2l", "f13l"],
          ["flf2r", "f3r"],
          ["flf2r", "f13r"],

          //front limiters
          {"deformLimitExpansion":""},
          {"breakGroupType":1},
          {"beamPrecompression":1, "beamType":"|BOUNDED", "beamLongBound":0.2, "beamShortBound":0.2},
          {"beamSpring":0,"beamDamp":0,"beamDeform":525000,"beamStrength":1619800},
          {"beamLimitSpring":1501000,"beamLimitDamp":100},
          //steering limit
          ["fh1r","fax2"],
          ["fh1l","fax2"],
          ["fh4r","fax2"],
          ["fh4l","fax2"],

          //front end collide
          {"beamPrecompression":0.35, "beamType":"|SUPPORT", "beamLongBound":4},
          {"beamSpring":14100940,"beamDamp":470},
          {"beamDeform":35000,"beamStrength":"FLT_MAX"},
          {"optional":true},
          //["fw1r", "f4r"],
          //["fw1r", "f1r"],
          //
          //["fw1l", "f4l"],
          //["fw1l", "f1l"],

          //firewall collide
          {"beamPrecompression":0.8},
          ["fh3r", "b1rr"],
          ["fh3r", "b1r"],
          ["fh3l", "b1ll"],
          ["fh3l", "b1l"],

          ["fw1rr", "b1rr", {"beamPrecompression":0.65}],
          ["fw1rr", "b5rr"],
          ["fw1rr", "b6rr"],

          ["fw1ll", "b1ll", {"beamPrecompression":0.65}],
          ["fw1ll", "b5ll"],
          ["fw1ll", "b6ll"],
          {"optional":false},

          //anti invert
          {"beamPrecompression":0.55, "beamType":"|SUPPORT", "beamLongBound":4},
          {"beamDeform":66500,"beamStrength":136500},
          {"beamSpring":752940,"beamDamp":470},
          ["fax1r","f12r"],
          ["fax1l","f12l"],
          ["fax1r","f13r"],
          ["fax1l","f13l"],

          //shackle anti invert
          {"beamSpring":1880940,"beamDamp":470},
          {"beamPrecompression":0.7},
          ["flf1r","f1r", {"breakGroup":"shackle_FR"}],
          ["flf1l","f1l", {"breakGroup":"shackle_FL"}],
          ["flf1r","f2r", {"breakGroup":"shackle_FR"}],
          ["flf1l","f2l", {"breakGroup":"shackle_FL"}],

          //hard travel limit
          {"beamPrecompression":1, "beamType":"|BOUNDED", "beamLongBound":1, "beamShortBound":1},
          {"beamDeform":28000,"beamStrength":315000},
          {"beamSpring":0,"beamDamp":0},
          {"beamLimitSpring":501000,"beamLimitDamp":1000},
          ["fax2r","f13r", {"longBoundRange":0.2,"shortBoundRange":0.12,"boundZone":0.02,"beamLimitDampRebound":0,"dampCutoffHz":500}],
          ["fax2l","f13l", {"longBoundRange":0.2,"shortBoundRange":0.12,"boundZone":0.02,"beamLimitDampRebound":0,"dampCutoffHz":500}],
          {"beamPrecompression":1, "beamType":"|NORMAL", "beamLongBound":1, "beamShortBound":1},
          {"deformLimitExpansion":1.2},
    ],
    "triangles": [
            ["id1:","id2:","id3:"],
            {"groundModel":"metal"},
            {"dragCoef":7.5},
            {"group":"pickup_frontsuspmounts"},
            ["fx1l", "f3l", "f2l"],
            ["f3r", "fx1r", "f2r"],

            ["f3r","f4r","f4"],
            ["f4l","f3l","f4"],

            ["fx1r", "f3r", "f3l"],
            ["f3l", "fx1l", "fx1r"],
            ["f3r", "f4", "f3l"],
            ["f1r", "f2r", "fx1r"],
            ["fx1l", "f2l", "f1l"],
            ["f1l", "f1r", "fx1r"],
            ["fx1r", "fx1l", "f1l"],


            {"triangleType":"NONCOLLIDABLE"},
            {"dragCoef":0},
            ["fh1l", "fh3l", "fh4l"],
            ["fh1l", "fh4l", "fh2l"],
            ["fax2", "fax4", "fax2l"],
            ["fax2l", "fsh1l", "fax2"],
            ["fax2l", "fh3l", "fsh1l"],
            ["fh3l", "fax2l", "fax4l"],
            ["fax2l", "fax4", "fax4l"],

            ["fh3r", "fh1r", "fh4r"],
            ["fh4r", "fh1r", "fh2r"],
            ["fax4", "fax2", "fax2r"],
            ["fsh1r", "fax2r", "fax2"],
            ["fh3r", "fax2r", "fsh1r"],
            ["fax2r", "fh3r", "fax4r"],
            ["fax4", "fax2r", "fax4r"],
            {"triangleType":"NORMALTYPE"},
    ],
    "pressureWheels": [
            ["name","hubGroup","group","node1:","node2:","nodeS","nodeArm:","wheelDir"],
            //cancel out brake properties
            {"brakeTorque":0},
            {"parkingTorque":0},
            {"enableBrakeThermals":false},
            {"brakeDiameter":false},
            {"brakeMass":false},
            {"brakeType":false},
            {"rotorMaterial":false},
            {"brakeVentingCoef":false},
    ],
},
}