Difference between revisions of "Action0/Vehicles/Planes"
m (moved Action0Planes to Action0/Vehicles/Planes: use subpages) |
(PR #13090) |
||
(35 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
+ | <div style="float:right; padding-left:12px; background:none;">{{NFONavVehicles}}</div> |
||
+ | |||
== Introduction == |
== Introduction == |
||
Line 6: | Line 8: | ||
{| |- |
{| |- |
||
− | !Number |
+ | !Number!![[GRFActionsDetailed|Size]]!!Version!!Description |
|- |
|- |
||
− | |08|| |
+ | |08||B||{{ottdp|0.6|2.0}}||Sprite (FF for new graphics) |
|- |
|- |
||
− | |09|| |
+ | |09||B||{{ottdp|0.6|2.0}}||Is helicopter? 2=no, 0=yes |
|- |
|- |
||
− | |0A|| |
+ | |0A||B||{{ottdp|0.6|2.0}}||Is large? 0=no, 1=yes (i.e. can't safely land on small airports) |
|- |
|- |
||
− | |0B|| |
+ | |0B||B||{{ottdp|0.6|2.0}}||Cost factor |
|- |
|- |
||
− | |0C|| |
+ | |0C||B||{{ottdp|0.6|2.0}}||Speed in units of 8 mph, that is: property = (speed in mph) / 8 |
|- |
|- |
||
+ | |0D||B||{{ottdp|0.6|2.0}}||Acceleration in units of 3/8 mph/tick, that is: property = (acceleration in mph/tick) * 8/3 <ref>{{ottd|<1.3.1}} In OpenTTD before r25115 the units for acceleration were messed up. The unit used was about 1 mph/tick, so aircraft accelerated more than twice as fast. Also values bigger than 19 failed.</ref> |
||
− | |0D|| ||B||Acceleration |
||
|- |
|- |
||
− | |0E|| |
+ | |0E||B||{{ottdp|0.6|2.0}}||Running cost factor |
|- |
|- |
||
− | |0F|| |
+ | |0F||W||{{ottdp|0.6|2.0}}||Primary cargo capacity (passenger or refitted cargo) |
|- |
|- |
||
− | |11|| |
+ | |11||B||{{ottdp|0.6|2.0}}||Secondary cargo capacity (mail) |
|- |
|- |
||
− | |12|| |
+ | |12||B||{{ottdp|0.6|2.0}}||Sound effect |
|- |
|- |
||
− | |13||6|| |
+ | |13||D||{{ottdp|0.6|2.5}} {{grfFrom|6}}||Bit mask of cargo types available for refitting, see column 2 (Bit Value) in [[CargoTypes]]. <b>Obsoleted by properties 1D/1E</b> |
|- |
|- |
||
− | |14||6|| |
+ | |14||B||{{ottdp|0.6|2.5}} {{grfFrom|6}}||Callback flags bit mask, see below |
|- |
|- |
||
− | |15|| |
+ | |15||B||{{ottdp|0.6|2.5|ttdprev=alpha 30}}||Refit cost, using 1/32 of the default refit cost base |
|- |
|- |
||
− | |16|| |
+ | |16||B||{{ottdp|0.6|2.5|ttdprev=alpha 44}}||Retire vehicle early, this many years before the end of phase 2 (see [[Action0General]]) |
|- |
|- |
||
− | |17|| |
+ | |17||B||{{ottdp|0.6|2.5|ttdprev=alpha 58}}||Miscellaneous vehicle flags |
|- |
|- |
||
− | |18|| |
+ | |18||W||{{ottdp|0.6|2.5|ttdprev=alpha 58}}||Refittable cargo classes, see [[Action0Trains#Cargo_classes (28, 29, 32)|train prop. 28]] |
|- |
|- |
||
− | |19|| |
+ | |19||W||{{ottdp|0.6|2.5|ttdprev=alpha 58}}||Non-refittable cargo classes, see [[Action0Trains#Cargo_classes (28, 29, 32)|train prop. 29]] |
|- |
|- |
||
− | |1A|| |
+ | |1A||D||{{ottdp|0.6|2.5|ttdprev=r1210|ottdrev=r7191}}||Long format introduction date |
|- |
|- |
||
− | |1B |
+ | |1B||B*||{{ottdp|0.7|no|ottdrev=r13831}}||Sort the purchase list |
⚫ | |||
− | |||
− | Version codes: |
||
− | |||
− | {| |- |
||
− | !Code!!Version |
||
|- |
|- |
||
+ | |1C||W||{{ottdp|1.2|no|ottdrev=r22713}}||Custom cargo ageing period |
||
− | |(a)||TTDPatch 2.0.1 alpha 30 |
||
|- |
|- |
||
+ | |1D||B n*B||{{ottdp|1.2|no|ottdrev=r23291}}||List of always refittable cargo types, see [[Action0/Vehicles/Trains#List_of_always_refittable_cargo_types_.282C.2C_2D.29|train property 2C]] |
||
− | |(b)||TTDPatch 2.0.1 alpha 44 |
||
|- |
|- |
||
+ | |1E||B n*B||{{ottdp|1.2|no|ottdrev=r23291}}||List of never refittable cargo types, see [[Action0/Vehicles/Trains#List_of_always_refittable_cargo_types_.282C.2C_2D.29|train property 2D]] |
||
− | |(c)||TTDPatch 2.0.1 alpha 58 |
||
|- |
|- |
||
+ | |1F||W||{{ottdp|1.2|no|ottdrev=r23504}}||Aircraft range in tiles. Distance is euclidean, a value of 0 means range is unlimited |
||
− | |(d)||TTDPatch 2.5 r1210, OpenTTD r7191 |
||
|- |
|- |
||
+ | |20||W||{{ottdp|13|no}}||Vehicle variant group, see [[Action0/Vehicles/Trains#Vehicle_variant_group_.282F.29|train property 2F]] |
||
− | |(e)||OpenTTD r13831 |
||
⚫ | |||
+ | |21||D||{{ottdp|13|no}}||Extra flags, see [[Action0/Vehicles/Trains#Extra_flags_.2830.29|train property 30]] |
||
+ | |- |
||
+ | |22||B||{{ottdp|14|no|ottdrev=g2d73076056}}||Additional callback flags bit mask, see below |
||
+ | |- |
||
+ | |23||W||{{ottdp|15|no|ottdrev=gd2496b6ec4}}||Cargo classes required for refittability, see [[Action0Trains#Cargo_classes (28, 29, 32)|train prop. 32]] |
||
|} |
|} |
||
+ | <references/> |
||
== Descriptions == |
== Descriptions == |
||
+ | |||
+ | === Primary (0F) and secondary (11) cargo capacity === |
||
+ | Aircraft can transport up to two cargo types. |
||
+ | The first (primary) cargo type can be changed when refitting the aircraft. |
||
+ | |||
+ | The secondary cargo type is always mail, and is only present when the primary cargo type is part of the [[Action0/Cargos#CargoClasses_.2816.29|passenger cargo class]]. |
||
+ | |||
+ | See also the page about [[VehicleRefitting|vehicle refitting]]. |
||
=== Sound effect (12) === |
=== Sound effect (12) === |
||
Line 85: | Line 96: | ||
|} |
|} |
||
+ | {{ottdp|1.6|no|ottdrev=r27507}} Since OpenTTD r27507 also custom sound effects from Action11 are allowed here. |
||
⚫ | |||
+ | |||
+ | {{ottdp|1.11|no|ottdrev=6198a47}} Since OpenTTD g6198a47 this prop can be used to to set custom Action11 sound effects for helicopers. Default sound effects are ignored as before. |
||
+ | |||
⚫ | |||
For planes, the following [[callbacks]] have to be enabled by setting the corresponding bit in property 14 (certain other, not as frequently used callbacks are available without setting a bit here):: |
For planes, the following [[callbacks]] have to be enabled by setting the corresponding bit in property 14 (certain other, not as frequently used callbacks are available without setting a bit here):: |
||
Line 100: | Line 115: | ||
|- |
|- |
||
|7||80||33||Sound effect callbacks |
|7||80||33||Sound effect callbacks |
||
+ | |- |
||
+ | |8||100||161||{{ottd|14|ottdrev=gf5394ed2ef}}Engine name |
||
+ | |- |
||
+ | |9||200||163||{{ottdp|15|no|ottdrev=gd2496b6ec4}}Custom refit |
||
|} |
|} |
||
− | Bit is the bit you have to set, you do this by adding all the values for all the bits. Variable 0C value is what variable 0C will be set to, for checking it in the |
+ | Bit is the bit you have to set, you do this by adding all the values for all the bits. Variable 0C value is what variable 0C will be set to, for checking it in the VarAction2 for callbacks. |
+ | |||
+ | === Refit cost (15) === |
||
+ | |||
+ | Refit cost, using 1/32 of the default refit cost base. This property can be overridden by callback 15E. |
||
+ | |||
+ | {{ottdp|1.2|no|ottdrev=r23087}} If the refit cost factor is set to zero and bit 4 of the miscellaneous flags (17) is set, auto-refitting is allowed. |
||
=== Miscellaneous flags (17) === |
=== Miscellaneous flags (17) === |
||
Line 114: | Line 139: | ||
|- |
|- |
||
|1||2||Uses two company colors |
|1||2||Uses two company colors |
||
+ | |- |
||
+ | |2||4||reserved, do not use |
||
+ | |- |
||
+ | |3||8||reserved, do not use |
||
+ | |- |
||
+ | |4||10||{{ottdp|1.2|no|ottdrev=r23087}} Auto-refitting is enabled for refits where callback 15E allows it or prop 15 specifies zero cost. |
||
+ | |- |
||
+ | |5||20||{{ottdp|1.2|no|ottdrev=r23861}} Use cargo multiplier for default cargo. See page about [[VehicleRefitting#Misc._vehicle_flag_5_.27use_of_capacity_multiplier_for_default_cargo.27_set|vehicle refitting]]. |
||
+ | |- |
||
+ | |6||40||{{ottdp|1.3|no|ottdrev=r24124}} Disable breakdown smoke effect. |
||
+ | |- |
||
+ | |7|| 80||{{ottdp|1.7|no|ottdrev=r27668}} [[Action2/Vehicles#Composing_vehicles_from_multiple_sprites|Compose vehicle from multiple sprites.]] |
||
+ | Note: This also applies to the rotor sprite, if custom rotor sprites are used. |
||
|} |
|} |
||
=== Long format introduction date (1A) === |
=== Long format introduction date (1A) === |
||
− | Set the vehicle introduction date, in days since the year 0. This takes account of leap years; dividable by 4, but not 100 unless 400. A start date of 1920-01-01 is obtained with a value of 701265 (51 B3 0A 00). This property must be set after property 00 to take effect |
+ | Set the vehicle introduction date, in days since the year 0. This takes account of leap years; dividable by 4, but not 100 unless 400. A start date of 1920-01-01 is obtained with a value of 701265 (51 B3 0A 00). This property must be set after property 00 to take effect. |
+ | |||
+ | {{ottdp|no|}} In TTDPatch, dates after 2044 will be limited to 2044. |
||
=== Sort vehicle list (1B) === |
=== Sort vehicle list (1B) === |
||
See sort vehicle list for [[Action0Trains#Sort vehicle list 1A|trains]] for details. |
See sort vehicle list for [[Action0Trains#Sort vehicle list 1A|trains]] for details. |
||
+ | |||
+ | === Custom cargo ageing period (1C) === |
||
+ | See custom cargo ageing period for [[Action0Trains#Custom_cargo_ageing_period_.282B.29|trains]] for details. |
||
== Example == |
== Example == |
Latest revision as of 21:49, 18 November 2024
Introduction
Defining properties of planes.
Properties
Number | Size | Version | Description |
---|---|---|---|
08 | B | 0.6 2.0 | Sprite (FF for new graphics) |
09 | B | 0.6 2.0 | Is helicopter? 2=no, 0=yes |
0A | B | 0.6 2.0 | Is large? 0=no, 1=yes (i.e. can't safely land on small airports) |
0B | B | 0.6 2.0 | Cost factor |
0C | B | 0.6 2.0 | Speed in units of 8 mph, that is: property = (speed in mph) / 8 |
0D | B | 0.6 2.0 | Acceleration in units of 3/8 mph/tick, that is: property = (acceleration in mph/tick) * 8/3 [1] |
0E | B | 0.6 2.0 | Running cost factor |
0F | W | 0.6 2.0 | Primary cargo capacity (passenger or refitted cargo) |
11 | B | 0.6 2.0 | Secondary cargo capacity (mail) |
12 | B | 0.6 2.0 | Sound effect |
13 | D | 0.6 2.5 GRFv≥6 | Bit mask of cargo types available for refitting, see column 2 (Bit Value) in CargoTypes. Obsoleted by properties 1D/1E |
14 | B | 0.6 2.5 GRFv≥6 | Callback flags bit mask, see below |
15 | B | 0.6 2.5 | Refit cost, using 1/32 of the default refit cost base |
16 | B | 0.6 2.5 | Retire vehicle early, this many years before the end of phase 2 (see Action0General) |
17 | B | 0.6 2.5 | Miscellaneous vehicle flags |
18 | W | 0.6 2.5 | Refittable cargo classes, see train prop. 28 |
19 | W | 0.6 2.5 | Non-refittable cargo classes, see train prop. 29 |
1A | D | 0.6 2.5 | Long format introduction date |
1B | B* | 0.7 | Sort the purchase list |
1C | W | 1.2 | Custom cargo ageing period |
1D | B n*B | 1.2 | List of always refittable cargo types, see train property 2C |
1E | B n*B | 1.2 | List of never refittable cargo types, see train property 2D |
1F | W | 1.2 | Aircraft range in tiles. Distance is euclidean, a value of 0 means range is unlimited |
20 | W | 13 | Vehicle variant group, see train property 2F |
21 | D | 13 | Extra flags, see train property 30 |
22 | B | 14 | Additional callback flags bit mask, see below |
23 | W | 15 | Cargo classes required for refittability, see train prop. 32 |
- ↑ <1.3.1 In OpenTTD before r25115 the units for acceleration were messed up. The unit used was about 1 mph/tick, so aircraft accelerated more than twice as fast. Also values bigger than 19 failed.
Descriptions
Primary (0F) and secondary (11) cargo capacity
Aircraft can transport up to two cargo types. The first (primary) cargo type can be changed when refitting the aircraft.
The secondary cargo type is always mail, and is only present when the primary cargo type is part of the passenger cargo class.
See also the page about vehicle refitting.
Sound effect (12)
The following sound effects are used by planes (note, the setting is ignored for helicopters):
Number | Sound |
---|---|
06 | Propeller sound 1 |
07 | Jet sound 1 |
3B | Supersonic |
3D | Jet sound 2 |
45 | Propeller sound 2 |
46 | Jet sound 3 |
1.6 Since OpenTTD r27507 also custom sound effects from Action11 are allowed here.
1.11 Since OpenTTD g6198a47 this prop can be used to to set custom Action11 sound effects for helicopers. Default sound effects are ignored as before.
Callbacks (14, 22)
For planes, the following callbacks have to be enabled by setting the corresponding bit in property 14 (certain other, not as frequently used callbacks are available without setting a bit here)::
Bit is the bit you have to set, you do this by adding all the values for all the bits. Variable 0C value is what variable 0C will be set to, for checking it in the VarAction2 for callbacks.
Refit cost (15)
Refit cost, using 1/32 of the default refit cost base. This property can be overridden by callback 15E.
1.2 If the refit cost factor is set to zero and bit 4 of the miscellaneous flags (17) is set, auto-refitting is allowed.
Miscellaneous flags (17)
This is a bit mask, with the following bits:
Bit | Value | Meaning |
---|---|---|
0 | 1 | reserved, do not use |
1 | 2 | Uses two company colors |
2 | 4 | reserved, do not use |
3 | 8 | reserved, do not use |
4 | 10 | 1.2 Auto-refitting is enabled for refits where callback 15E allows it or prop 15 specifies zero cost. |
5 | 20 | 1.2 Use cargo multiplier for default cargo. See page about vehicle refitting. |
6 | 40 | 1.3 Disable breakdown smoke effect. |
7 | 80 | 1.7 Compose vehicle from multiple sprites.
Note: This also applies to the rotor sprite, if custom rotor sprites are used. |
Long format introduction date (1A)
Set the vehicle introduction date, in days since the year 0. This takes account of leap years; dividable by 4, but not 100 unless 400. A start date of 1920-01-01 is obtained with a value of 701265 (51 B3 0A 00). This property must be set after property 00 to take effect.
In TTDPatch, dates after 2044 will be limited to 2044.
Sort vehicle list (1B)
See sort vehicle list for trains for details.
Custom cargo ageing period (1C)
See custom cargo ageing period for trains for details.
Example
To be written