Skip to content

Part Engine Function

Ferdinand Calo edited this page Jan 26, 2021 · 7 revisions
# Function Overview
Name: Engine Function
Function: marks the part as Engine and stores engine related values
From FVTM: yes

The Engine Function allows you to set a part as Vehicle Engine.

Example config (taken from GEP):

{
    "__comment": "Part JSON file.",
    "Function": {
    	"id": "fvtm:engine",
    	"engine_speed": 1,
    	"idle_consumption": 1,
    	"active_consumption": 8,
    	"consumptions": {
    	    "petrodiesel": 9,
            "synthetic": 6,
            "biodiesel": 7
    	},
    	"fuel_group": "diesel"
    }
}

Here an overview of the available fields:

  • id - the id of the function, it is fvtm:engine
  • engine_speed - engine speed ratio in the LegacySystem
  • idle_consumption - mB consumption of fuel on when the engine is on but idle
  • active_consumption - mB consumption of fuel on when the engine is on
    and the vehicle moving (throttle > 0.01)
  • consumptions - this is an optional JSON array, with an alterntive list
    of (active) fuel consumptions based on the current fuel (secondary group)
    • "<secondary_group>": <value> - see the example above
  • fuel_group - the fuel type this engine will run on, can be fine tuned to
    request a secondary besides primary type (e.g. diesel:petrodiesel instead of diesel)
    it can be an array with strings instead of a single value (e.g. ["diesel", "petrol"])

If you want the engine to be compatible with the BasicSystem:

  • min_rpm - optional, minimum RPM of this engine, default 1000
  • max_rpm - optional, maximum RPM of this engine, default 6000
  • torque_chart - required, json object, chart with various rpm/torque ratios for this engine
    example (taken from FVP's AB1 Engine, please note this is an autobus engine!) :
    "torque_chart":{
      "500": 700,
      "1200": 950,
      "1900": 1600,
      "2100": 1500,
      "2800": 1200
    }
    
    the json key is the rpm, while the json value is the torque for this rpm,
    FVTM will automatically average a "curve" from the values in this "chart".
Clone this wiki locally