setCruiseControl: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(Remove "you", Fix description)
m (Some wiki formatting)
(5 intermediate revisions by 2 users not shown)
Line 2: Line 2:


|game1= arma3
|game1= arma3
|branch= dev
|version1= 2.06
|version1= 2.06


Line 28: Line 25:
* applying brakes does not disable Speed Limiter
* applying brakes does not disable Speed Limiter
* behaviour:
* behaviour:
** if the speed is over 120% the set limit, the vehicle will brake
** if the speed is over 120% the set limit, the vehicle will apply 100% of braking and limit acceleration to 0%
** if the speed is below 80% the set limit, the full range of acceleration is available
** if the speed is below 80% the set limit, the acceleration and braking are untouched
** between 80 and 120%, the PID controller manages the acceleration input
** between 80 and 120%, the PID controller limits the acceleration and applies brakes if required
{{!}}
{{!}}
* the vehicle accelerates by itself
* the vehicle accelerates by itself
Line 50: Line 47:
|s1= vehicle [[setCruiseControl]] [speed, autoThrust]
|s1= vehicle [[setCruiseControl]] [speed, autoThrust]


|p1= vehicle: [[Object]] - the vehicle to limit; [[local]] [[player]]'s vehicle ({{ic|[[vehicle]] [[player]]}})
|p1= vehicle: [[Object]] - the vehicle to limit; [[local]] [[player]]'s vehicle (<sqf inline>vehicle player</sqf>)


|p2= speed: [[Number]] - Desired/top speed in km/h. 0 to disable any setting. Only positives values are valid, negative values will make the vehicle unable to move forward
|p2= speed: [[Number]] - desired/top speed in km/h. 0 to disable any setting. Only positives values are valid, negative values will make the vehicle unable to move forward


|p3= autoThrust: [[Boolean]]
|p3= autoThrust: [[Boolean]]
Line 60: Line 57:
|r1= [[Nothing]]
|r1= [[Nothing]]


|x1= <code>[[vehicle]] [[player]] [[setCruiseControl]] [50, [[true]]]; {{cc|sets cruise control to 50 km/h}}</code>
|x1= <sqf>vehicle player setCruiseControl [50, true]; // sets cruise control to 50 km/h</sqf>


|x2= <code>[[vehicle]] [[player]] [[setCruiseControl]] [5, [[false]]]; {{cc|limits player's vehicle speed to 5 km/h}}</code>
|x2= <sqf>vehicle player setCruiseControl [5, false]; // limits player's vehicle speed to 5 km/h</sqf>


|seealso= [[getCruiseControl]] [[limitSpeed]] [[forceSpeed]] [[setAirplaneThrottle]]
|seealso= [[getCruiseControl]] [[limitSpeed]] [[forceSpeed]] [[setAirplaneThrottle]]
}}
}}

Revision as of 16:44, 1 July 2022

Hover & click on the images for description

Description

Description:
Limits or sets local player-controlled vehicle's speed through cruise control.
  • this command only works on CarX, TankX, ShipX simulation vehicles
  • this command is implemented using a PID controller overwriting the vehicle's thrust/brakes input
Speed Limiter Cruise Control
  • the vehicle does not accelerate by itself
  • manually accelerating is required to move forward
  • accelerating beyond set speed limit is restricted by the PID controller
  • applying brakes does not disable Speed Limiter
  • behaviour:
    • if the speed is over 120% the set limit, the vehicle will apply 100% of braking and limit acceleration to 0%
    • if the speed is below 80% the set limit, the acceleration and braking are untouched
    • between 80 and 120%, the PID controller limits the acceleration and applies brakes if required
  • the vehicle accelerates by itself
  • manually accelerating is possible
  • accelerating above set speed limit is possible
  • applying brakes disables Cruise Control
  • behaviour:
    • if the speed is over 120% the set limit, the vehicle will apply 100% of braking
    • if the speed is below 80% the set limit, the vehicle will apply 100% of acceleration
    • between 80 and 120%, the PID controller manages the speed
This command should only be called to change values and not be called every frame, as it resets the PID controller.
Groups:
Unit ControlObject Manipulation

Syntax

Syntax:
vehicle setCruiseControl [speed, autoThrust]
Parameters:
vehicle: Object - the vehicle to limit; local player's vehicle (vehicle player)
speed: Number - desired/top speed in km/h. 0 to disable any setting. Only positives values are valid, negative values will make the vehicle unable to move forward
autoThrust: Boolean
  • true - Cruise Control: the vehicle will maintain this speed until brakes is applied or driver dies or leaves the vehicle
  • false - Speed Limiter: the vehicle will not accelerate above set speed
Return Value:
Nothing

Examples

Example 1:
vehicle player setCruiseControl [50, true]; // sets cruise control to 50 km/h
Example 2:
vehicle player setCruiseControl [5, false]; // limits player's vehicle speed to 5 km/h

Additional Information

See also:
getCruiseControl limitSpeed forceSpeed setAirplaneThrottle

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note