Solved - Help With jbeam - Can't define front & rear pressureWheels separately

Discussion in 'Content Creation' started by mrkelkel, Mar 23, 2021.

  1. mrkelkel

    mrkelkel
    Expand Collapse

    Joined:
    Aug 18, 2013
    Messages:
    47
    SOLVED! See below....
    -----------------------------------
    Hello,

    I've been working on my FSAE car for a while, and I'm currently converting it from a single jbeam file to one with multiple sections via the slots system. I decided to define some temporary wheels to give it a short test run.

    There is a problem, however, with defining the front and rear pressureWheels; Even though I defined both Front and Rear wheels in separate sections (susF.jbeam, susR.jbeam etc), the Front section is used exclusively to define all four wheels of the vehicle. This behaviour also links up both Front and Rear brakes; the Rear Brakes section is effectively ignored, and lock up easily even during light braking. Any pressureWheels and braking values I define in the rear section are also ignored.

    It's ruining the braking stability of the car, and I'm at my wit's end! I've included a snippet of code and the .zip file, and any help would be appreciated!
    --- Post updated ---
    "UNNC_FSAE_Fwheeldata": {
    "information":{
    "authors":"Kevin Cheung",
    "name":"Front Spindles",
    "value":0,
    },
    "slotType":"UNNC_FSAE_Fwheeldata",
    "pressureWheels":[
    ["name","hubGroup","group","node1:","node2:","nodeS","nodeArm:","wheelDir"],

    //general settings
    {"radius":0.2335}, //Radius of the tire nodes
    {"hubRadius":0.195}, //Radius of the rim
    {"wheelOffset":-0.1}, //Offset from the original position(Left/right)
    {"hubWidth":0.2}, //Width of the rim
    {"tireWidth":0.185}, //Width of the tire
    {"numRays":16}, //The amount of nodes to make the circle, more may result in smoother driving, but at the cost of performance, weight & stability

    //hub options
    {"hubTreadBeamSpring":900900, "hubTreadBeamDamp":6},
    {"hubPeripheryBeamSpring":900900, "hubPeripheryBeamDamp":6},
    {"hubSideBeamSpring":1401000, "hubSideBeamDamp":6},
    {"hubNodeWeight":0.380},
    {"hubNodeMaterial":"|NM_METAL"},
    {"hubFrictionCoef":0.5},
    {"hubBeamDeform":43600, "hubBeamStrength":78000},

    //tire options
    {"wheelSideBeamSpring":0,"wheelSideBeamDamp":10},
    {"wheelSideBeamSpringExpansion":371000,"wheelSideBeamDampExpansion":25},
    {"wheelSideTransitionZone":0.07,"wheelSideBeamPrecompression":0.99},

    {"wheelReinfBeamSpring":26000,"wheelReinfBeamDamp":140},
    {"wheelReinfBeamDampCutoffHz":500,"wheelReinfBeamPrecompression":0.99},

    {"wheelTreadBeamSpring":231000,"wheelTreadBeamDamp":60},
    {"wheelTreadBeamDampCutoffHz":500,"wheelTreadBeamPrecompression":0.98},

    {"wheelTreadReinfBeamSpring":161000,"wheelTreadReinfBeamDamp":60},
    {"wheelTreadReinfBeamDampCutoffHz":500,"wheelTreadReinfBeamPrecompression":1.02},

    {"wheelPeripheryBeamSpring":101000,"wheelPeripheryBeamDamp":25},
    {"wheelPeripheryBeamDampCutoffHz":500,"wheelPeripheryBeamPrecompression":0.98},

    {"wheelPeripheryReinfBeamSpring":181000,"wheelPeripheryReinfBeamDamp":25},
    {"wheelPeripheryReinfBeamDampCutoffHz":500,"wheelPeripheryReinfBeamPrecompression":1.02},

    //general tire values
    {"nodeWeight":0.13},
    {"nodeMaterial":"|NM_RUBBER"},
    {"triangleCollision":false},
    {"pressurePSI":30},
    {"dragCoef":5},

    //groundmodel friction multipliers
    {"frictionCoef":1.3},
    {"slidingFrictionCoef":1.2},
    {"treadCoef":0},

    //advanced friction values
    {"noLoadCoef":1.505},
    {"loadSensitivitySlope":0.00021},
    {"fullLoadCoef":0.5},
    {"softnessCoef":1},


    //front
    {"axleBeams":["axle_FR"]},
    ["FR", "wheel_FR", "tire_FR", "sf11", "sf8", 9999, "sf13", 1],
    {"axleBeams":["axle_FL"]},
    ["FL", "wheel_FL", "tire_FL", "sf2", "sf5", 9999, "sf12", -1],
    {"collision":true},
    {"selfCollision":true},
    {"axleBeams":[]},{"disableMeshBreaking":false,"disableTriangleBreaking":false},
    {"hubcapBreakGroup":""},
    {"hubcapGroup":""},
    {"enableHubcaps":false},
    {"enableTireLbeams":false},
    {"enableTireSideReinfBeams":false},
    {"enableTireReinfBeams":false},
    {"enableTreadReinfBeams":false},
    {"enableTirePeripheryReinfBeams":false},
    {"propulsed":0},

    ],
    },
    ------------------------------------------------------------------------
    "UNNC_FSAE_Rwheeldata": {
    "information":{
    "authors":"Kevin Cheung",
    "name":"Rear Spindles",
    "value":0,
    },
    "slotType":"UNNC_FSAE_Rwheeldata",
    "pressureWheels":[
    ["name","hubGroup","group","node1:","node2:","nodeS","nodeArm:","wheelDir"],
    //rear
    {"axleBeams":["axle_RR"]},
    ["RR", "wheel_RR", "tire_RR", "sr9", "sr13", 9999, "sr11", 1, {"torqueCoupling:":"a44", "torqueArm:":"a2"}],
    {"axleBeams":["axle_RL"]},
    ["RL", "wheel_RL", "tire_RL", "sr2", "sr12", 9999, "sr10", -1, {"torqueCoupling:":"a44", "torqueArm:":"a0"}],
    {"collision":true},
    {"selfCollision":true},
    {"axleBeams":[]},{"disableMeshBreaking":false,"disableTriangleBreaking":false},
    {"hubcapBreakGroup":""},
    {"hubcapGroup":""},
    {"enableHubcaps":false},
    {"enableTireLbeams":false},
    {"enableTireSideReinfBeams":false},
    {"enableTireReinfBeams":false},
    {"enableTreadReinfBeams":false},
    {"enableTirePeripheryReinfBeams":false},

    ],
    },
    ----------------------------------------------------
    {
    "UNNC_FSAE_brake_F":{
    "information":{
    "authors":"BeamNG",
    "name":"Front Brakes",
    "value":200,
    },
    "slotType":"UNNC_FSAE_brake_F",
    "flexbodies": [
    ["mesh", "[group]:", "nonFlexMaterials"],

    ],
    "variables": [
    ["name", "type", "unit", "category", "default", "min", "max", "title", "description"]
    ["$brakestrength", "range", "", "Brakes", 1, 0.6, 1.0, "Brake Force", "Scales the overall brake torque for this car", {"minDis":60, "maxDis":100}],
    ["$brakebias", "range", "", "Brakes", 0.78, 0, 1, "Front/Rear Bias", "Percent of brake torque to the front wheels", {"minDis":0, "maxDis":100}],
    ],
    "slots": [
    ["type", "default", "description"]
    ["brakepad_F","brakepad_F", "Front Brake Pads"{"coreSlot":true}],
    ],
    "pressureWheels":[
    ["name","hubGroup","group","node1:","node2:","nodeS","nodeArm:","wheelDir"],
    //brakes
    {"brakeTorque":"$=$brakestrength*500*$brakebias"},
    {"brakeInputSplit":1},
    {"brakeSplitCoef":1},
    {"parkingTorque":0},
    {"brakeSpring":150},

    //brake thermals
    {"enableBrakeThermals":true},
    {"brakeDiameter":0.2},
    {"brakeMass":4},
    {"brakeType":"disc"},
    {"rotorMaterial":"steel"},
    {"brakeVentingCoef":0.8},
    ],
    },
    "UNNC_FSAE_brake_R": {
    "information":{
    "authors":"BeamNG",
    "name":"Rear Brakes",
    "value":200,
    },
    "slotType":"UNNC_FSAE_brake_R",
    "flexbodies": [
    ["mesh", "[group]:", "nonFlexMaterials"],
    ],
    "slots": [
    ["type", "default", "description"]
    ["brakepad_R","brakepad_R", "Rear Brake Pads"{"coreSlot":true}],
    ],
    "pressureWheels": [
    ["name","hubGroup","group","node1:","node2:","nodeS","nodeArm:","wheelDir"],
    //brakes
    {"brakeTorque":"$=case($brakebias == nil, $brakestrength*400, $brakestrength*500*(1-$brakebias))"},
    {"brakeInputSplit":1},
    {"brakeSplitCoef":1},
    {"parkingTorque":2200},
    {"brakeSpring":150}

    //brake thermals
    {"enableBrakeThermals":true},
    {"brakeDiameter":0.2},
    {"brakeMass":4},
    {"brakeType":"disc"},
    {"rotorMaterial":"steel"},
    {"brakeVentingCoef":0.8},
    ],
    },
    }

    You'll probably get a better picture with the .zip file; sorry if I'm a bit unclear on some parts, it's my first jbeam project since 2015....
     

    Attached Files:

    #1 mrkelkel, Mar 23, 2021
    Last edited: Mar 25, 2021
  2. mrkelkel

    mrkelkel
    Expand Collapse

    Joined:
    Aug 18, 2013
    Messages:
    47
    The problem is solved! This post can be left up as a guide of some sort;

    In the same way that the brake properties are cancelled out in the parent susF section, the default wheels can also be minimized by adding a section that defines wheels and tires of 0 radius.

    "pressureWheels": [
    ["name","hubGroup","group","node1:","node2:","nodeS","nodeArm:","wheelDir"],
    //cancel out default generic wheels
    //general settings
    {"radius":0}, //Radius of the tire nodes
    {"hubRadius":0}, //Radius of the rim
    {"wheelOffset":-0.1}, //Offset from the original position(Left/right)
    {"hubWidth":0.2}, //Width of the rim
    {"tireWidth":0}, //Width of the tire
    {"numRays":16}, //The amount of nodes to make the circle, more may result in smoother driving, but at the cost of performance, weight & stability

    This was added to both susF and susR parent sections, then the specific wheels were defined in a wheeldata slot one level below.
     
    • Like Like x 1
  3. Agent_Y

    Agent_Y
    Expand Collapse
    Jbeam/QA support
    BeamNG Team

    Joined:
    Jul 10, 2020
    Messages:
    10,057
    This solution doesn't seem to work anymore in 0.22, spawning a vehicle that has this makes the player exit the vehicle instantly on spawn for some reason and the vehicle acts like it doesn't exist. Any idea how to fix it? For context, it's a custom Pigeon suspension with universal wheels support but all the wheels just behave like the stabilizer wheels, not powered and very small Jbeam.
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice