setCruiseControl: Difference between revisions
Jump to navigation
Jump to search
m (fixed some typos and inconsistencies) |
(Explanation about how speed limiter works and potential pitfalls) |
||
Line 11: | Line 11: | ||
|eff= local | |eff= local | ||
|descr= Limits or sets a player-controlled vehicle's speed through cruise control. {{Feature|important|This command only works for: | |descr= Limits or sets a player-controlled vehicle's speed through cruise control.<br> | ||
Speed Limiter and Cruise Control are implemented using a PID controller overwriting the vehicles thrust input.<br> | |||
Cruise control is implemented as a speed limiter that simulates 100% thrust input by the player.<br> | |||
If you apply brakes while cruise control is enabled, the cruise control (and speed limit) will automatically disengage.<br> | |||
If (deltaSpeed > setpoint*20% && speed > setpoint) the vehicle will automatically apply brakes to try to get back down to the setpoint.<br> | |||
If (deltaSpeed > setpoint*20% && speed < setpoint) the vehicle will always apply 100% thrust.<br><br> | |||
{{Feature|important| | |||
Executing this script command resets the PID controller.<br> | |||
Meaning if you do it every frame you will break the automatic thrust control, so don't do that.<br> | |||
You should only call ''setCruiseControl'' to ''change'' the setpoint.<br><br> | |||
This command only works for: | |||
* The local player | * The local player | ||
* CarX, TankX and ShipX simulated vehicles | * CarX, TankX and ShipX simulated vehicles |
Revision as of 09:35, 24 August 2021
Description
- Description:
- Limits or sets a player-controlled vehicle's speed through cruise control.
Speed Limiter and Cruise Control are implemented using a PID controller overwriting the vehicles thrust input.
Cruise control is implemented as a speed limiter that simulates 100% thrust input by the player.
If you apply brakes while cruise control is enabled, the cruise control (and speed limit) will automatically disengage.
If (deltaSpeed > setpoint*20% && speed > setpoint) the vehicle will automatically apply brakes to try to get back down to the setpoint.
If (deltaSpeed > setpoint*20% && speed < setpoint) the vehicle will always apply 100% thrust.
- Groups:
- Unit ControlObject Manipulation
Syntax
- Syntax:
- vehicle setCruiseControl [speed, autoThrust]
- Parameters:
- vehicle: Object - The vehicle to limit
- 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
- 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
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