Action0/Vehicles/Ships

From GRFSpecs
< Action0‎ | Vehicles
Revision as of 14:54, 15 June 2011 by Planetmaker (talk | contribs) (heading sizes)
Jump to navigationJump to search

Introduction

Defining properties of ships.

Properties

Number Version Size Description
08 B Sprite (FF for new graphics)
09 B Refittable (0 no, 1 yes)
0A B Cost factor
0B B Speed in mph*3.2
0C B Cargo type, see column 3 (type B) in CargoTypes
0D W Capacity
0F B Running cost factor
10 B Sound effect type (4=cargo ship, 5=passenger ship)
11 1 D Bit mask of cargo types available for refitting, see column 2 (bit values) in CargoTypes
12 6 B Callback flags bit mask, see below
13 (a) B Refit cost, using 1/32 of the default refit cost base
14 (b) B Ocean speed fraction, sets fraction of top speed available in the ocean; e.g. 00=100%, 80=50%, FF=0.4%
15 (b) B Canal speed fraction, same as above but for canals
16 (b) B Retire vehicle early, this many years before the end of phase 2 (see Action0General)
17 (c) B Miscellaneous vehicle flags
18 (c) W Refittable cargo classes, see train prop. 28
19 (c) W Non-refittable cargo classes, see train prop. 29
1A (d) D Long format introduction date
1B (e) B* Sort the purchase list
1C (f) B Visual effect

Version codes:

Code Version
(a) 2.0.1 alpha 30
(b) 2.0.1 alpha 44
(c) 2.0.1 alpha 58
(d) 2.5 r1210, OpenTTD r7191
(e) OpenTTD r13831
(f) OpenTTD r21240

Descriptions

Callbacks (12)

For ships, the following callbacks have to be enabled by setting the corresponding bit in property 12 (certain other, not as frequently used callbacks are available without setting a bit here):

Bit Value Variable 0C value Callback
2 4 12 Load amount
3 8 15 Set refitted capacity
5 20 19 show a suffix after the cargo type name
6 40 2D Select color mapping for vehicle
7 80 33 Sound effect callbacks

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 variational action 2 for callbacks.

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

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.

Visual effect (1C)

See the equivalent train property for information about the meaning of all bits. There is no default effect for ships, therefore values of 00..0F will show no visual effect. Bit 7 (disable wagon power) currently has no meaning and should be left at 0.

Example

To be written