ReadingPatchVariables
From GRFSpecs
Jump to navigationJump to searchIntroduction
Since TTDPatch 2.0.1 alpha 48, it has been possible to use action D to read various special Patch variables. These are usually switch values, but there are also a few other useful values.
Syntax
<Sprite-number> * <Length> 0D <target> <operation> <variable> FE FF FF 00 00
Element | Size | Description |
---|---|---|
0D | B | Defines action 0D |
<target> | B | Target parameter |
<operation> | B | As for ActionD, but only assignment is valid. |
<variable> | B | Patch variable number to read. See below. |
FE | B | Defines a special variable access |
FF FF 00 00 | D | Indicates that a patch variable is being read |
variable
The following patch variables are defined:
variable | Switch | Version | Value | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
00 | miscmods/-Yo | ![]() ![]() |
Bit switch | ||||||||||
01 | experimentalfeatures/-XF | ![]() ![]() |
Bit switch | ||||||||||
02 | morevehicles/-x | ![]() ![]() |
Vehicle array multiplier | ||||||||||
03 | mountains and curves/-mc | ![]() ![]() |
Two bytes with four sets of two bits | ||||||||||
04 | planecrashcontrol/-Xc | ![]() ![]() |
Bit switch | ||||||||||
05 | autorenew/-Xa | ![]() ![]() |
Signed value | ||||||||||
06 | multihead/-M | ![]() ![]() |
Speed increase, in percent | ||||||||||
07 | disasters/-XD | ![]() ![]() |
Bit switch | ||||||||||
08 | unifiedmaglev/-XM | ![]() ![]() |
Unified maglev mode | ||||||||||
09 | bridgespeedlimits/-XX | ![]() ![]() |
Speed fraction, in percent | ||||||||||
0A | --- | ![]() ![]() |
TTD Language, see the "new scheme" for action 4 | ||||||||||
0B | startyear/-XY | ![]() ![]() |
Year-1920 | ||||||||||
0C | morebuildoptions/-YB | ![]() ![]() |
Bit switch | ||||||||||
0D | moresteam/-YM | ![]() ![]() |
value=LF (two hex digits), L=length, F=frequency | ||||||||||
0E | freighttrains/-Yf | ![]() ![]() |
weight factor | ||||||||||
0F | wagonspeedlimits/-YL | ![]() ![]() |
Speed increase for empty wagons | ||||||||||
10 | planespeed/-YP | ![]() ![]() |
speed factor | ||||||||||
11 | dual company colors | ![]() ![]() |
2CC colormap base sprite (since r1404) | ||||||||||
12 | miscmods2/-Zm | ![]() ![]() |
Bit switch (since r1738) | ||||||||||
13 | map size information | ![]() ![]() |
Format = -MABXYSS (since r11961 and r1817)
All map sizes will be substracted by 6, as to keep the size 64 the smallest one, thus zero based | ||||||||||
14 | maximum height level | ![]() ![]() |
Maximal possible height level of a tile. Currently fixed at 15. |
If experimentalfeatures, miscmods, or miscmods2 are off, the corresponding value will be zero. For all other switches, the value is unspecified if the switch is off, so action 7 variable 85 should be checked first.