BeamNG自動擋兩驅車,給另外一組車輪加入帶變速箱電機實現混動的教程。

本方法只適用于兩驅自動擋車型!
先決條件:下載以下文件
鏈接:https://pan.baidu.com/s/1pAoSr4P5-szye05HaDUcqw?pwd=stx3?
提取碼:stx3?
在steam的BeamNG界面,找到如下按鈕

跳轉到“BeamNG.drive”文件夾,找到BeamNG.drive\lua\vehicle\controller,并將上述文件放入其中。
以Automation導入BeamNG的自動擋前驅車為例,首先我們準備一臺前驅的自動擋車,導入進BeamNG中。


啟動BeamNG,點擊“管理用戶文件”,再點擊“在資源管理器中打開”。



先找到eng_xxxxx文件夾下需要改裝的車的發(fā)動機文件“camso_engine_xxxxx.jbeam”,例如我的是“camso_engine_fe694.jbeam”。

在"Camso_Engine_xxxxx"下的"slots"中插入一條["Camso_Rear_Engine","Camso_Engine_Electric","Rear Engine"],

如果想給前輪加上電機,改為
["Camso_Front_Engine","Camso_Engine_Electric","Front Engine"],
即可。
然后在最后一個右大括號前插入以下內容
"Camso_battery": {
? ? "information":{
? ? ? ? "authors":"BeamNG",
? ? ? ? "name":"10kWh Battery Pack",
? ? ? ? "value":2000,
? ? },
? ? "slotType" : "Camso_battery",
? ? "energyStorage": [
? ? ? ? ["type", "name"],
? ? ? ? ["electricBattery", "mainBattery"],
? ? ],
? ? "variables": [
? ? ? ? ["name", "type", "unit", "category", "default", "min", "max", "title", "description"],
? ? ? ? ["$Efuel", "range", "kWh", "Chassis", 100, 0, 100, "Battery Level", "Initial battery charge", {"stepDis":0.5}],
? ? ],
? ? "mainBattery": {
? ? ? ? "energyType":"electricEnergy",
? ? ? ? "batteryCapacity": 100,
? ? ? ? "startingCapacity": "$Efuel",
? ? },
},
"Camso_Engine_Electric": {
"information":{
"authors":"Camshaft Software",
"name":"Rear EV",
}
"slotType" : "Camso_Rear_Engine",
"slots": [
["type", "default", "description"]
["Camso_battery","Camso_battery","Battery"],
["Camso_EV_Transmission", "Camso_EV_Transmission_4f5b2", "EV_Transmission"],
],
"powertrain" : [
["type", "name", "inputName", "inputIndex"],
["electricMotor", "rearMotor", "dummy", 0],
],
"controller": [
? ? ? ? ["type", "name", "inputName", "inputIndex"],
? ? ? ? ["twoStepLaunch", {"rpmLimit":3800}],
? ? ],
"rearMotor": {
"torque":[
? ? ["rpm", "torque"]
? ? ? ? [0, 256],
? ? ? ? ? ? [500, 255],
? ? ? ? ? ? [1000, 254],
? ? ? ? ? ? [1500, 252],
? ? ? ? ? ? [2000, 250],
? ? ? ? ? ? [2500, 248],
? ? ? ? ? ? [3000, 246],
? ? ? ? ? ? [3500, 244],
? ? ? ? ? ? [4000, 242],
? ? ? ? ? ? [4500, 240],
? ? ? ? ? ? [5000, 239],
? ? ? ? ? ? [5500, 214],
? ? ? ? ? ? [6000, 189],
? ? ? ? ? ? [6500, 164],
? ? ? ? ? ? [7000, 139],
? ? ? ? [7500, 114],
? ? ? ? [8000, 88],
],
"revLimiterType":"soft",
"revLimiterSmoothOvershootRPM":10,
//engine performance
"maxRPM":8000, //Max RPM before overrev damage is likely
"inertia":0.20,
"friction":0,
"dynamicFriction":0.05,
"waterDamage": {"[engineGroup]:":["engine_intake"]}, //Engine hydrolocks when nodes in this group go under water
"engineBlock": {"[engineGroup]:":["engine_block"]}, //Engine thermal mass is taken from nodes in this group
"fuel": {"[engineGroup]:":["battery"]},
"breakTriggerBeam":"engine", //Engine breaks if beam with this name is broken
"soundConfig": "soundConfigMotor", //What section name to look for for engine sound information
"thermalsEnabled":false,
"engineBlockMaterial":"aluminum", //"aluminum", "aluminium", "iron"
"energyStorage": "mainBattery", //Name of the fuel tank
"requiredEnergyType":"electricity", //Type of fuel required
"electricalEfficiency": 0.98,
},
"vehicleController": {
//"shiftLogicName":"automaticGearbox",
? ? ? ? ? ? "topSpeedLimitReverse": 15,
? ? ? ? ? ? "topSpeedLimit": 200,
? ? ? ??
"motorNames": ["mainEngine", "rearMotor"],
},
//"vehicleController": {
// "shiftLogicName":"electricMotor",
// "motorNames": ["rearMotor", "frontMotor"],
// "topSpeedLimitReverse": 15,
// //"defaultRegen": 0.5,
// //"brakeRegenCoef": 1,
// "onePedalRegenCoef": 0.85
},
"soundConfigMotor": {
? ? ? ? "sampleName": "ElectricMotor",
? ? ? ? "mainGain": 0,
? ? ? ? //"maxLoadMix": 0.65,
? ? ? ? //"minLoadMix": 0,
? ? ? ? //"onLoadGain":1,
? ? ? ? //"offLoadGain":0.65,
? ? ? ? //"eqLowGain": -15,
? ? ? ? //"eqLowFreq": 100,
? ? ? ? //"eqLowWidth": 0.05,
? ? ? ? //"eqHighGain": -5,
? ? ? ? //"eqHighFreq": 6000,
? ? ? ? //"eqHighWidth": 0.1,
? ? ? ? //"eqFundamentalGain": 2,
? ? },
},

若是后驅車加前電機,將其中的rear改為front,Rear改為Front即可。"torque"中的數列中,前一個數為轉速,后一個數為該轉速下對應的電機扭矩,可以根據需要修改。保存該文件并關閉。
下一步,在須要更改的車型的文件夾里找到“camso_transmission_xxxxx”以及“camso_differential_x_xxxxx”兩個文件,例如,我要修改的車型是5683c,即要找到“camso_transmission_5683c”及“camso_differential_f_5683c”,如果是后驅車,后一個文件則是“camso_differential_r_xxxxx”



復制"Camso_Transmission_xxxxx"下"gearbox"及"torqueConverter"的內容。并粘貼在"torqueConverter"下方。注意不要操作到"Camso_Transmission_Sequential_xxxxx"下。

在復制出來的gearbox及torqueConverter前增加“EV_”。

更改"EV_gearbox"下"gearRatios"中的內容,更改為三個擋位,數字為變速箱齒比,可根據需要自行修改。負數為倒擋,放在第一個,0為空擋,放在第二個,正數為前進擋,放在第三個。

在"Camso_Transmission_xxxxx"中的"vehicleController"下插入內容
"shiftLogicName":"automaticevGearbox",

在"Camso_Transmission_xxxxx"中的"powertrain"下增添內容
["torqueConverter", "EV_torqueConverter", "rearMotor", 1],
["automaticGearbox", "EV_gearbox", "EV_torqueConverter", 1],

翻到最下面,在"Camso_TransferCase_FWD_xxxxx"(如是后驅車,則是"Camso_TransferCase_RWD_xxxxx")中的"powertrain"下增添內容
["shaft", "rearDriveShaft", "EV_gearbox", 1],

保存文件,關閉。
下一步,打開“camso_differential_x_xxxxx”文件,在其中的"powertrain"下復制第一條內容,粘貼在其下方,并修改front為rear,Front改為Rear。如
["differential", "rearDiff", "rearDriveShaft", 1, {"diffType":"open", "uiName":"Rear Differential", "defaultVirtualInertia":0.25}],
增填內容
["shaft", "halfshaftRL", "rearDiff", 1, {"breakTriggerBeam":"halfshaft_RL", "uiName":"Rear Left Halfshaft" "friction":0}],
? ? ? ? ["shaft", "halfshaftRR", "rearDiff", 2, {"breakTriggerBeam":"halfshaft_RR", "uiName":"Rear Right Halfshaft" "friction":0}],
如增加前輪電機,則將rear改為front,Rear改為Front,RL改為FL,RR改為FR即可。

保存文件,關閉。打開游戲,找到改動的車。



此時電機已具備倒擋功能。
DCT文件已在優(yōu)化中,CVT在計劃中(不一定弄得出來)。
另以筆者能力,可能無法解決bug,如發(fā)現bug歡迎反饋,不包修復。感謝大家!