# VEHICLE_TYPE_BOAT

*LSL constant*

```lsl
integer VEHICLE_TYPE_BOAT = 3;
```

Constant groups: [VehicleType](/constants/groups/VehicleType/)

Hovers over water with lots of friction and some anglar deflection.

### Effects

Setting the vehicle type to boat enables the vehicle system and additionally has the same effect of executing the following:

```lsl
// least for forward-back, most friction for up-down
llSetVehicleVectorParam( VEHICLE_LINEAR_FRICTION_TIMESCALE, <10, 3, 2> );
// uniform angular friction (setting it as a scalar rather than a vector)
llSetVehicleFloatParam( VEHICLE_ANGULAR_FRICTION_TIMESCALE, 10 );
// linear motor wins after about five seconds, decays after about a minute
llSetVehicleVectorParam( VEHICLE_LINEAR_MOTOR_DIRECTION, <0, 0, 0> );
llSetVehicleFloatParam( VEHICLE_LINEAR_MOTOR_TIMESCALE, 5 );
llSetVehicleFloatParam( VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE, 60 );
// agular motor wins after four seconds, decays in same amount of time
llSetVehicleVectorParam( VEHICLE_ANGULAR_MOTOR_DIRECTION, <0, 0, 0> );
llSetVehicleFloatParam( VEHICLE_ANGULAR_MOTOR_TIMESCALE, 4 );
llSetVehicleFloatParam( VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE, 4 );
// hover
llSetVehicleFloatParam( VEHICLE_HOVER_HEIGHT, 0 );
llSetVehicleFloatParam( VEHICLE_HOVER_EFFICIENCY, 0.5 );
llSetVehicleFloatParam( VEHICLE_HOVER_TIMESCALE, 2.0 );
llSetVehicleFloatParam( VEHICLE_BUOYANCY, 1 );
// halfway linear deflection with timescale of 3 seconds
llSetVehicleFloatParam( VEHICLE_LINEAR_DEFLECTION_EFFICIENCY, 0.5 );
llSetVehicleFloatParam( VEHICLE_LINEAR_DEFLECTION_TIMESCALE, 3 );
// angular deflection
llSetVehicleFloatParam( VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY, 0.5 );
llSetVehicleFloatParam( VEHICLE_ANGULAR_DEFLECTION_TIMESCALE, 5 );
// somewhat bounscy vertical attractor
llSetVehicleFloatParam( VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY, 0.5 );
llSetVehicleFloatParam( VEHICLE_VERTICAL_ATTRACTION_TIMESCALE, 5 );
// weak negative damped banking
llSetVehicleFloatParam( VEHICLE_BANKING_EFFICIENCY, -0.3 );
llSetVehicleFloatParam( VEHICLE_BANKING_MIX, 0.8 );
llSetVehicleFloatParam( VEHICLE_BANKING_TIMESCALE, 1 );
// default rotation of local frame
llSetVehicleRotationParam( VEHICLE_REFERENCE_FRAME, <0, 0, 0, 1> );
// remove these flags
llRemoveVehicleFlags( VEHICLE_FLAG_HOVER_TERRAIN_ONLY
    | VEHICLE_FLAG_LIMIT_ROLL_ONLY
    | VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT);
// set these flags
llSetVehicleFlags( VEHICLE_FLAG_NO_DEFLECTION_UP
    | VEHICLE_FLAG_HOVER_WATER_ONLY
    | VEHICLE_FLAG_HOVER_UP_ONLY
    | VEHICLE_FLAG_LIMIT_MOTOR_UP );
```

## See also

### Constants

|

| Flags |  | Description |
| --- | --- | --- |
| [VEHICLE_TYPE_NONE](/constants/VEHICLE_TYPE_NONE/) | 0 | Turns off vehicle support |
| [VEHICLE_TYPE_SLED](/constants/VEHICLE_TYPE_SLED/) | 1 | Simple vehicle that bumps along the ground, and likes to move along its local x-axis |
| [VEHICLE_TYPE_CAR](/constants/VEHICLE_TYPE_CAR/) | 2 | Vehicle that bounces along the ground but needs the motors to be driven from external controls or [timer](/events/timer/) events |
| [VEHICLE_TYPE_BOAT](/constants/VEHICLE_TYPE_BOAT/) | 3 | Hovers over water with lots of friction and some angular deflection |
| [VEHICLE_TYPE_AIRPLANE](/constants/VEHICLE_TYPE_AIRPLANE/) | 4 | Uses linear deflection for lift, no hover, and banking to turn |
| [VEHICLE_TYPE_BALLOON](/constants/VEHICLE_TYPE_BALLOON/) | 5 | Hover, and friction, but no deflection |

### Functions

- [llSetVehicleType](/functions/llSetVehicleType/)

---

*Source: [VEHICLE TYPE BOAT](https://wiki.secondlife.com/wiki/VEHICLE_TYPE_BOAT) on the Second Life Wiki. Content from the Second Life Wiki articles VEHICLE TYPE BOAT (revision 1194635, 2015-01-23) and Template:LSL Constants/Vehicle Types (revision 393273, 2009-06-14), CC BY-SA 3.0.*

---

From lsl.dev: https://lsl.dev/constants/VEHICLE_TYPE_BOAT/
