The Vehicle Remote Interface is a peripheral device available for CraftOS. Type "help peripheral" to learn about using the Peripheral API to connect with peripherals. When a Vehicle Remote Interface is connected, peripheral.getType() will return "vehicle".
All methods here involving time are using the units of seconds.
All methods here involving angles are using the units of degrees.
The bounds for the flap angle, angles and their trims can be found by calling "getConstants()".
The maximum value for angle cooldowns is 6.35 seconds.
Cooldown of an angle is the time that has to pass until the angle is reset to 0.

Methods exposed by the Vehicle Remote Interface:
isAvailable(): boolean
- Check whether a vehicle is connected to the interface

getLocation(): decimal, decimal, decimal, integer
- Get the X, Y and Z coordinates, as well as the ID of the dimension the vehicle's in

getVelocity(): decimal, decimal, decimal, decimal
- Get the X, Y, Z motion and the vehicle's velocity

getRotation(): decimal, decimal, decimal
- Get the X (pitch), Y (yaw) and Z (roll) angles

getUniqueIds(): string, string
- Get the entity UUID and the vehicle UUID

getFuel(): string, integer, integer
- Get the name of fluid in the fluid tank, fluid level and max fluid level

isBeingFueled(): boolean
- Check whether the vehicle is being fueled

getDefinition(): table
- Get the JSON definition

getOwner(): string
- Get the UUID of the owner

getMass(): integer
- Get the mass in the units of kilograms

getElectricPower(): decimal
- Get the electric power of the battery

getEngines(): table{engineId: integer = details: table}
- Get the details of all engines

getWheels(): table{table...}
- Get the details of all wheels

getPassengers(): table{table{["uuid"]: string, ["name"]: string, ["controller"]: boolean}...}
- Get the passengers

isLocked(): boolean
- Check whether the vehicle is locked

setLocked(value: boolean)
- Set the locked status of the vehicle

getThrottle(): decimal
- Get the throttle, range 0 to 1

setThrottle(value: decimal)
- Set the throttle, range 0 to 1

getBrakeLevel(): decimal
- Get the brake level, range 0 to 1

setBrakeLevel(value: decimal)
- Set the brake level, range 0 to 1

isParkingBrakeActive(): boolean
- Check whether the parking brake is active on the vehicle

setParkingBrakeActive(value: boolean)
- Set the state of the parking brake

setMagnetoActive(engineId: integer, value: boolean)
- Set the magneto state on the specified engine

setStarterActive(engineId: integer, value: boolean)
- Set the electric starter state on the specified engine

shiftUp()
- Shift the gears up

shiftNeutral()
- Switch the gears to neutral

shiftDown()
- Shift the gears down

getDoors(): table{doorId: string = value: boolean}
- Get the states of all doors

setDoorOpen(doorId: string, value: boolean)
- Set the state of a door

isHornActive(): boolean
- Check whether the horn is active

setHornActive(value: boolean)
- Set the state of the horn

isThrustReversed(): boolean
- Check whether reverse thrust is enabled

setThrustReversed(value: boolean)
- Set the state of the reverse thrust on the vehicle

isAutopilotActive(): boolean
- DEPRECATED! Use getAutopilotState instead
- Check whether autopilot is active

getAutopilotState(): boolean, decimal, decimal
- Get whether the autopilot is active, it's target altitude and speed

setAutopilotActive(value: boolean)
- Set the state of autopilot

getFlapAngle(): integer, decimal, integer
- Get the target angle, the current angle and the selected notch of the flaps

setFlapNotch(value: integer)
- Set the flap notch to the specified value

getAileronTrim(): integer
- Get the aileron trim

setAileronTrim(value: integer)
- Set the aileron trim

getAileronAngle(): decimal, decimal
- Get the actual aileron angle and the left cooldown

setAileronAngle(value: decimal, cooldown: decimal)
- Set the aileron angle

getElevatorTrim(): integer
- Get the elevator trim

setElevatorTrim(value: integer)
- Set the elevator trim

getElevatorAngle(): decimal, decimal
- Get the actual elevator angle and the left cooldown

setElevatorAngle(value: decimal, cooldown: decimal)
- Set the elevator angle

getRudderTrim(): integer
- Get the rudder trim

setRudderTrim(value: integer)
- Set the rudder trim

getRudderAngle(): decimal, decimal
- Get the actual rudder angle and the left cooldown

setRudderAngle(value: decimal, cooldown: decimal)
- Set the rudder angle

getLandingGearState(): boolean, integer
- Get whether the landing gear is deployed and it's movement time

setLandingGearDeployed(value: boolean)
- Set the state of the landing gear

getCustomVariables(): table{variableName: string = value: boolean}
- Get the states of the custom variables

setCustomVariableActive(variableName: string, value: boolean)
- Set the state of a custom variable

attachTrailer(): boolean, {string...}?
- Attempt to attach a trailer. Returns true if a trailer was attached, or false and an array of possible issues otherwise

detachTrailer()
- Detach the trailer

getTextEntries(): table{textEntryName: string = value: string}
- Get the text entries

setTextEntry(textEntryName: string, value: string)
- Set the value of a text entry

getSelectedBeacon(): string
- Get the name of the selected beacon

setSelectedBeacon(value: string)
- Set the selected beacon by it's name

getGuns(): table{key: number = details: table}
- Get the details of all guns

getConstants(): table{constantName: string = value: integer}
- Get the values of Immersive Vehicles constants

setFlapAngle(): error
- THIS METHOD HAS BEEN REMOVED! Use setFlapNotch instead

getLights(): error
- THIS METHOD HAS BEEN REMOVED! Use getCustomVariables instead

setLightActive(): error
- THIS METHOD HAS BEEN REMOVED! Use setCustomVariableActive instead

getCruiseState(): error
- THIS METHOD HAS BEEN REMOVED! Use getAutopilotState instead

setCruiseActive(): error
- THIS METHOD HAS BEEN REMOVED! Use setAutopilotActive instead

getTrailer(): error
- THIS METHOD HAS BEEN REMOVED

attachTrailer(): error
- THIS METHOD HAS BEEN REMOVED!

detachTrailer(): error
- THIS METHOD HAS BEEN REMOVED!