docs/landscape.html
author tron
Sun, 06 Feb 2005 20:53:31 +0000
changeset 1328 eacd8225ed42
parent 1264 acebb2b01e32
child 1484 e06402a9e572
permissions -rw-r--r--
(svn r1832) Next byte -> char iteration: custom names
464
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
     1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
     2
<html>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
     3
<head>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
     4
<meta name="Author" content="Marcin Grzegorczyk">
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
     5
<meta name="Description" content="Structure of Transport Tycoon Deluxe (TTD) savegame files">
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
     6
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
     7
<title>Transport Tycoon Deluxe savegame internals</title>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
     8
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
     9
</head>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    10
<body>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    11
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    12
<h3><a name="Landscape">Landscape</a></h3>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    13
<p>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    14
Five arrays are used to encode the information of the contents of each tile. These arrays are referred to as <a href="#_landscape1">map_owner</a>, <a href="#_landscape2">map2</a>, <a href="#_landscape3">map3_lo</a>, <a href="#_landscape4">type_and_height</a> and <a href="#_landscape5">map5</a>. The known encodings are listed in the table below. The most important value is the class of a tile, stored in the upper 4 bits of the type_and_height array.
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    15
</p>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    16
<p>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    17
<a name="OwnershipInfo">Owner values</a> <tt>00</tt> through <tt>07</tt> are companies (they're indices into the <a href="#_CompanyArray">array of companies</a>), <tt>10</tt> is no owner, <tt>11</tt> appears to be reserved for water, <tt>80</tt> and above are towns (in this case the low 7 bits contain an index into the <a href="#_TownArray">town array</a>).
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    18
</p>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    19
<p>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    20
TTD's class-specific periodic tile processing routine is called once every +256 ticks for each tile.
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    21
</p>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    22
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    23
<table border=1 cellpadding=3>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    24
<tr><th align=left>Class</th><th align=left>Meaning & details of encoding</th></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    25
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    26
<tr><td valign=top nowrap><a name="Class0"><tt> 0 </tt></a></td><td>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    27
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    28
<li>map5 bits 4..0: tile type:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    29
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    30
<tr><td nowrap valign=top><tt>00</tt>&nbsp; </td><td align=left>bare land</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    31
<tr><td nowrap valign=top><tt>01</tt>&nbsp; </td><td align=left>1/3 grass</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    32
<tr><td nowrap valign=top><tt>02</tt>&nbsp; </td><td align=left>2/3 grass</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    33
<tr><td nowrap valign=top><tt>03</tt>&nbsp; </td><td align=left>full grass</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    34
<tr><td nowrap valign=top><tt>07</tt>&nbsp; </td><td align=left>rough land</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    35
<tr><td nowrap valign=top><tt>0B</tt>&nbsp; </td><td align=left>rocks</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    36
<tr><td nowrap valign=top><tt>0F</tt>&nbsp; </td><td align=left>fields; type of fields in map3_lo bits 3..0 (legal values: 0 through 9)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    37
<tr><td nowrap valign=top><tt>10</tt>&nbsp; </td><td align=left>1/4 snow</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    38
<tr><td nowrap valign=top><tt>11</tt>&nbsp; </td><td align=left>2/4 snow</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    39
<tr><td nowrap valign=top><tt>12</tt>&nbsp; </td><td align=left>3/4 snow</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    40
<tr><td nowrap valign=top><tt>13</tt>&nbsp; </td><td align=left>full snow</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    41
<tr><td nowrap valign=top><tt>15</tt>&nbsp; </td><td align=left>partial desert</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    42
<tr><td nowrap valign=top><tt>17</tt>&nbsp; </td><td align=left>full desert</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    43
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    44
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    45
<li>map5 bits 7..6: update counter, incremented on every periodic processing for tile types other than <tt>03</tt>, <tt>07</tt>, <tt>0B</tt> and <tt>10</tt> and above, on wraparound the tile is updated (for fields, the type of fields in map3_lo is increased, for other types the tile type in map5 is increased)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    46
<br>(for snow and desert, these bits are not used, tile is updated on every periodic processing)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    47
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    48
<li>map_owner: <a href="#OwnershipInfo">owner</a> of the tile (normally <tt>10</tt>)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    49
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    50
<li>map3_hi bits 7..5: type of hedge on the SW border of the tile (1 through 6, or 0=none); bits 4..2: same for the SE border
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    51
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    52
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    53
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    54
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    55
<tr><td valign=top nowrap><a name="Class1"><tt> 1 </tt></a></td><td>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    56
map5 bit 7 clear: railway track
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    57
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    58
<li>map5 bits 0..5: track layout: bit set = track present:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    59
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    60
<tr><td nowrap valign=top>bit 0: </td><td align=left>in the X direction</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    61
<tr><td nowrap valign=top>bit 1: </td><td align=left>in the Y direction</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    62
<tr><td nowrap valign=top>bit 2: </td><td align=left>in the north corner (direction W-E)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    63
<tr><td nowrap valign=top>bit 3: </td><td align=left>in the south corner (direction W-E)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    64
<tr><td nowrap valign=top>bit 4: </td><td align=left>in the west corner (direction N-S)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    65
<tr><td nowrap valign=top>bit 5: </td><td align=left>in the east corner (direction N-S)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    66
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    67
<li>map5 bit 6 set = with signals:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    68
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    69
<li>map3_lo bits 7..4: bit set = signal present:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    70
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    71
<li>For track in the X direction:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    72
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    73
<tr><td nowrap valign=top>bit 6: </td><td align=left>signal in the SW direction</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    74
<tr><td nowrap valign=top>bit 7: </td><td align=left>signal in the NE direction</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    75
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    76
<li>For track in the Y direction:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    77
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    78
<tr><td nowrap valign=top>bit 6: </td><td align=left>signal in the NW direction</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    79
<tr><td nowrap valign=top>bit 7: </td><td align=left>signal in the SE direction</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    80
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    81
<li>For tracks in the W-E direction:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    82
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    83
<tr><td nowrap valign=top>bit 4: </td><td align=left>signal in the W direction on the track in the S corner</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    84
<tr><td nowrap valign=top>bit 5: </td><td align=left>signal in the E direction on the track in the S corner</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    85
<tr><td nowrap valign=top>bit 6: </td><td align=left>signal in the W direction on the track in the N corner</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    86
<tr><td nowrap valign=top>bit 7: </td><td align=left>signal in the E direction on the track in the N corner</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    87
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    88
<li>For tracks in the N-S direction:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    89
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    90
<tr><td nowrap valign=top>bit 4: </td><td align=left>signal in the S direction on the track in the E corner</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    91
<tr><td nowrap valign=top>bit 5: </td><td align=left>signal in the N direction on the track in the E corner</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    92
<tr><td nowrap valign=top>bit 6: </td><td align=left>signal in the S direction on the track in the W corner</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    93
<tr><td nowrap valign=top>bit 7: </td><td align=left>signal in the N direction on the track in the W corner</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    94
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    95
</ul></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    96
<li>map2 bits 7..4: bit clear = signal shows red; same bits as in map3_lo</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    97
<li>OpenTTD bits in map3_hi:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    98
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
    99
<tr><td nowrap valign=top>bits 1..0: </td><td align=left>type of signal:</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   100
<tr><td nowrap valign=top><tt>00</tt>: </td><td align=left>normal signals</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   101
<tr><td nowrap valign=top><tt>01</tt>: </td><td align=left>pre-signals</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   102
<tr><td nowrap valign=top><tt>10</tt>: </td><td align=left>exit-signals</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   103
<tr><td nowrap valign=top><tt>11</tt>: </td><td align=left>combo-signals</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   104
<tr><td nowrap valign=top>bit 2: </td><td align=left>set = semaphore signals, clear = light signals</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   105
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   106
</ul></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   107
<li>map_owner: <a href="#OwnershipInfo">owner</a> of the track
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   108
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   109
<li>map2 bits 0..3:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   110
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   111
<tr><td nowrap valign=top><tt>0</tt>&nbsp; </td><td align=left>on bare land</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   112
<tr><td nowrap valign=top><tt>1</tt>&nbsp; </td><td align=left>on grass, no fences</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   113
<tr><td nowrap valign=top><tt>2</tt>&nbsp; </td><td align=left>fence on the NW side</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   114
<tr><td nowrap valign=top><tt>3</tt>&nbsp; </td><td align=left>fence on the SE side</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   115
<tr><td nowrap valign=top><tt>4</tt>&nbsp; </td><td align=left>fences on the NW and SE sides</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   116
<tr><td nowrap valign=top><tt>5</tt>&nbsp; </td><td align=left>fence on the NE side</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   117
<tr><td nowrap valign=top><tt>6</tt>&nbsp; </td><td align=left>fence on the SW side</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   118
<tr><td nowrap valign=top><tt>7</tt>&nbsp; </td><td align=left>fences on the NE and SW sides</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   119
<tr><td nowrap valign=top><tt>8</tt>&nbsp; </td><td align=left>fence on the E side (track in the W corner)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   120
<tr><td nowrap valign=top><tt>9</tt>&nbsp; </td><td align=left>fence on the W side (track in the E corner)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   121
<tr><td nowrap valign=top><tt>A</tt>&nbsp; </td><td align=left>fence on the S side (track in the N corner)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   122
<tr><td nowrap valign=top><tt>B</tt>&nbsp; </td><td align=left>fence on the N side (track in the S corner)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   123
<tr><td nowrap valign=top><tt>C</tt>&nbsp; </td><td align=left>on snow or desert</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   124
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   125
<li>map3_lo bits 0..3 = <a name="TrackType">track type</a>: <tt>0</tt> - conventional railway, <tt>1</tt> - monorail, <tt>2</tt> - maglev
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   126
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   127
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   128
map5 bits 7 and 6 set: railway depot / checkpoints
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   129
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   130
<li>map5 value C0..C3: railway depot
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   131
<br>map5 bits 1..0 - direction: exit towards: <tt>00</tt> = NE, <tt>01</tt> = SE, <tt>02</tt> = SW, <tt>03</tt> = NW</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   132
<li>map5 value C4..C5: checkpoint
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   133
<br>bit 0: clear = in X direction, set = in Y direction
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   134
<br>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   135
<br>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   136
<li>map_owner: <a href="#OwnershipInfo">owner</a> of the depot / checkpoint</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   137
<li>map3_lo bits 0..3 = <a href="#TrackType">track type</a></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   138
<li>map3_lo bit 4 = use custom sprite (valid only for the checkpoint)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   139
<li>map3_hi = custom station id</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   140
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   141
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   142
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   143
<tr><td valign=top nowrap><a name="Class2"><tt> 2 </tt></a></td><td>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   144
map5 bits 7..4 clear: road
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   145
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   146
<li>map5 bits 3..0: road layout: bit set = road piece present:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   147
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   148
<tr><td nowrap valign=top>bit 0: </td><td align=left>NW piece</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   149
<tr><td nowrap valign=top>bit 1: </td><td align=left>SW piece</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   150
<tr><td nowrap valign=top>bit 2: </td><td align=left>SE piece</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   151
<tr><td nowrap valign=top>bit 3: </td><td align=left>NE piece</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   152
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   153
<li>map_owner: <a href="#OwnershipInfo">owner</a> of the road</li>
1264
acebb2b01e32 (svn r1768) -Codechange: Store town index in _map2 of town tiles
celestar
parents: 464
diff changeset
   154
<li>map2: Index into the array of towns, 0 for non-town roads</li>
acebb2b01e32 (svn r1768) -Codechange: Store town index in _map2 of town tiles
celestar
parents: 464
diff changeset
   155
<li>map3_hi bits 0..3: counter for the roadworks</li>
acebb2b01e32 (svn r1768) -Codechange: Store town index in _map2 of town tiles
celestar
parents: 464
diff changeset
   156
<li>map3_hi bits 4..6: <tt>0</tt> - on bare land, <tt>1</tt> - on grass, <tt>2</tt> - paved, <tt>3</tt> - with streetlights, <tt>5</tt> - tree-lined, <tt>6</tt> - on grass with road works, <tt>7</tt> - paved with road works</li>
464
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   157
<li>map3_hi bit 7 set = on snow or desert</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   158
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   159
map5 bit 4 set, bits 7..5 clear: level crossing
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   160
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   161
<li>map5 bit 3: clear - road in the X direction, set - road in the Y direction (railway track always perpendicular)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   162
<li>map5 bit 2: set if crossing lights are on</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   163
<li>map_owner: <a href="#OwnershipInfo">owner</a> of the railway track</li>
1264
acebb2b01e32 (svn r1768) -Codechange: Store town index in _map2 of town tiles
celestar
parents: 464
diff changeset
   164
<li>map2: Index into the array of towns, 0 for non-town roads</li>
464
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   165
<li>map3_lo bits 0..7: <a href="#OwnershipInfo">owner</a> of the road</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   166
<li>map3_hi bits 3..0: <a href="#TrackType">track type</a></li>
1264
acebb2b01e32 (svn r1768) -Codechange: Store town index in _map2 of town tiles
celestar
parents: 464
diff changeset
   167
<li>map3_hi bits 4..6: <tt>0</tt> - on bare land, <tt>1</tt> - on grass, <tt>2</tt> or higher - paved</li>
464
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   168
<li>map3_hi bit 7 set = on snow or desert</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   169
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   170
map5 bit 5 set: road depot
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   171
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   172
<li>map5 bits 3..0 - direction: exit towards: <tt>0</tt> = NE, <tt>1</tt> = SE, <tt>2</tt> = SW, <tt>3</tt> = NW</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   173
<li>map_owner: <a href="#OwnershipInfo">owner</a> of the depot</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   174
<li>map3_hi bit 7 set = on snow or desert (not displayed, but set internally)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   175
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   176
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   177
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   178
<tr><td valign=top nowrap><a name="Class3"><tt> 3 </tt></a></td><td>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   179
Town building
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   180
<ul>
1264
acebb2b01e32 (svn r1768) -Codechange: Store town index in _map2 of town tiles
celestar
parents: 464
diff changeset
   181
<li>map2: Index into the array of towns</li>
acebb2b01e32 (svn r1768) -Codechange: Store town index in _map2 of town tiles
celestar
parents: 464
diff changeset
   182
<li>map3_hi: <a name="HouseTypes">town building type</a>:
464
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   183
<p><small>Note: In the climate list, 'sub-arctic' means below the <a href="#_snowline">snow line</a>, and 'snow' means above the snow line in the sub-arctic climate.</small></p>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   184
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   185
<tr><th align=left>Type&nbsp;</th><th align=left>Size&nbsp;</th><th align=left>Climates&nbsp;</th><th align=left>Description</th></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   186
<tr><td nowrap valign=top><tt>00</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   187
<tr><td nowrap valign=top><tt>01</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   188
<tr><td nowrap valign=top><tt>02</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>small block of flats</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   189
<tr><td nowrap valign=top><tt>03</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>church</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   190
<tr><td nowrap valign=top><tt>04</tt>&nbsp; </td><td>1&times;1</td><td>temperate, sub-arctic, sub-tropical</td><td align=left>large office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   191
<tr><td nowrap valign=top><tt>05</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>large office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   192
<tr><td nowrap valign=top><tt>06</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>town houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   193
<tr><td nowrap valign=top><tt>07</tt>..<tt>08</tt>&nbsp; </td><td>1&times;2</td><td>temperate</td><td align=left>hotel</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   194
<tr><td nowrap valign=top><tt>09</tt>&nbsp; </td><td>1&times;1</td><td>temperate, sub-arctic, sub-tropical&nbsp;&nbsp;</td><td align=left>statue</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   195
<tr><td nowrap valign=top><tt>0A</tt>&nbsp; </td><td>1&times;1</td><td>temperate, sub-arctic, sub-tropical</td><td align=left>fountain</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   196
<tr><td nowrap valign=top><tt>0B</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>park (with a pond)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   197
<tr><td nowrap valign=top><tt>0C</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>park (with an alley)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   198
<tr><td nowrap valign=top><tt>0D</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   199
<tr><td nowrap valign=top><tt>0E</tt>..<tt>10</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>various types of shops and offices</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   200
<tr><td nowrap valign=top><tt>11</tt>&nbsp; </td><td>1&times;1</td><td>temperate, sub-arctic, sub-tropical</td><td align=left>modern office building</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   201
<tr><td nowrap valign=top><tt>12</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>warehouse</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   202
<tr><td nowrap valign=top><tt>13</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>office block (with spiral stairway on the side)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   203
<tr><td nowrap valign=top><tt>14</tt>..<tt>17</tt>&nbsp; </td><td>2&times;2</td><td>temperate</td><td align=left>stadium</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   204
<tr><td nowrap valign=top><tt>18</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>old houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   205
<tr><td nowrap valign=top><tt>19</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>cottages</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   206
<tr><td nowrap valign=top><tt>1A</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   207
<tr><td nowrap valign=top><tt>1B</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>flats</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   208
<tr><td nowrap valign=top><tt>1C</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   209
<tr><td nowrap valign=top><tt>1D</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>shops and offices</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   210
<tr><td nowrap valign=top><tt>1E</tt>&nbsp; </td><td>1&times;1</td><td>temperate, sub-tropical</td><td align=left>shops and offices</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   211
<tr><td nowrap valign=top><tt>1F</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>theatre</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   212
<tr><td nowrap valign=top><tt>20</tt>..<tt>23</tt>&nbsp; </td><td>2&times;2</td><td>temperate, sub-arctic, sub-tropical</td><td align=left>stadium (modern style)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   213
<tr><td nowrap valign=top><tt>24</tt>&nbsp; </td><td>1&times;1</td><td>temperate, sub-arctic, sub-tropical</td><td align=left>offices (the modern 'vertical tube' style)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   214
<tr><td nowrap valign=top><tt>25</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   215
<tr><td nowrap valign=top><tt>26</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   216
<tr><td nowrap valign=top><tt>27</tt>&nbsp; </td><td>1&times;1</td><td>temperate</td><td align=left>cinema</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   217
<tr><td nowrap valign=top><tt>28</tt>..<tt>2B</tt>&nbsp; </td><td>2&times;2</td><td>temperate</td><td align=left>shopping mall</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   218
<tr><td nowrap valign=top><tt>2C</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic</td><td align=left>flats</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   219
<tr><td nowrap valign=top><tt>2D</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>flats</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   220
<tr><td nowrap valign=top><tt>2E</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   221
<tr><td nowrap valign=top><tt>2F</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   222
<tr><td nowrap valign=top><tt>30</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   223
<tr><td nowrap valign=top><tt>31</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   224
<tr><td nowrap valign=top><tt>32</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic, sub-tropical</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   225
<tr><td nowrap valign=top><tt>33</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   226
<tr><td nowrap valign=top><tt>34</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   227
<tr><td nowrap valign=top><tt>35</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   228
<tr><td nowrap valign=top><tt>36</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic, sub-tropical</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   229
<tr><td nowrap valign=top><tt>37</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   230
<tr><td nowrap valign=top><tt>38</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   231
<tr><td nowrap valign=top><tt>39</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   232
<tr><td nowrap valign=top><tt>3A</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic</td><td align=left>shops and offices</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   233
<tr><td nowrap valign=top><tt>3B</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>shops and offices</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   234
<tr><td nowrap valign=top><tt>3C</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic</td><td align=left>church</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   235
<tr><td nowrap valign=top><tt>3D</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>church</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   236
<tr><td nowrap valign=top><tt>3E</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   237
<tr><td nowrap valign=top><tt>3F</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   238
<tr><td nowrap valign=top><tt>40</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic</td><td align=left>shops and offices</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   239
<tr><td nowrap valign=top><tt>41</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>shops and offices</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   240
<tr><td nowrap valign=top><tt>42</tt>..<tt>43</tt>&nbsp; </td><td>1&times;2</td><td>sub-arctic</td><td align=left>hotel</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   241
<tr><td nowrap valign=top><tt>44</tt>..<tt>45</tt>&nbsp; </td><td>1&times;2</td><td>snow</td><td align=left>hotel</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   242
<tr><td nowrap valign=top><tt>46</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic, sub-tropical</td><td align=left>shops and offices</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   243
<tr><td nowrap valign=top><tt>47</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>shops and offices</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   244
<tr><td nowrap valign=top><tt>48</tt>&nbsp; </td><td>1&times;1</td><td>sub-arctic</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   245
<tr><td nowrap valign=top><tt>49</tt>&nbsp; </td><td>1&times;1</td><td>snow</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   246
<tr><td nowrap valign=top><tt>4A</tt>..<tt>4B</tt>&nbsp; </td><td>2&times;1</td><td>sub-arctic</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   247
<tr><td nowrap valign=top><tt>4C</tt>..<tt>4D</tt>&nbsp; </td><td>2&times;1</td><td>snow</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   248
<tr><td nowrap valign=top><tt>4E</tt>&nbsp; </td><td>1&times;1</td><td>sub-tropical</td><td align=left>houses (with a tree in a corner)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   249
<tr><td nowrap valign=top><tt>4F</tt>, <tt>50</tt>&nbsp; </td><td>1&times;1</td><td>sub-tropical</td><td align=left>houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   250
<tr><td nowrap valign=top><tt>51</tt>&nbsp; </td><td>1&times;1</td><td>sub-tropical</td><td align=left>houses (suburb-type)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   251
<tr><td nowrap valign=top><tt>52</tt>&nbsp; </td><td>1&times;1</td><td>sub-tropical</td><td align=left>flats</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   252
<tr><td nowrap valign=top><tt>53</tt>&nbsp; </td><td>1&times;1</td><td>sub-tropical</td><td align=left>church</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   253
<tr><td nowrap valign=top><tt>54</tt>&nbsp; </td><td>1&times;1</td><td>sub-tropical</td><td align=left>houses (with two trees in front)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   254
<tr><td nowrap valign=top><tt>55</tt>, <tt>56</tt>&nbsp; </td><td>1&times;1</td><td>sub-tropical</td><td align=left>flats</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   255
<tr><td nowrap valign=top><tt>57</tt>..<tt>58</tt>&nbsp; </td><td>2&times;1</td><td>sub-tropical</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   256
<tr><td nowrap valign=top><tt>59</tt>&nbsp; </td><td>1&times;1</td><td>sub-tropical</td><td align=left>flats</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   257
<tr><td nowrap valign=top><tt>5A</tt>&nbsp; </td><td>1&times;1</td><td>sub-tropical</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   258
<tr><td nowrap valign=top><tt>5B</tt>&nbsp; </td><td>1&times;1</td><td>toyland</td><td align=left>church</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   259
<tr><td nowrap valign=top><tt>5C</tt>..<tt>61</tt>&nbsp; </td><td>1&times;1</td><td>toyland</td><td align=left>various types of toyland houses</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   260
<tr><td nowrap valign=top><tt>62</tt>&nbsp; </td><td>1&times;1</td><td>toyland</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   261
<tr><td nowrap valign=top><tt>63</tt>..<tt>64</tt>&nbsp; </td><td>1&times;2</td><td>toyland</td><td align=left>houses ('shoe' style)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   262
<tr><td nowrap valign=top><tt>65</tt>&nbsp; </td><td>1&times;1</td><td>toyland</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   263
<tr><td nowrap valign=top><tt>66</tt>&nbsp; </td><td>1&times;1</td><td>toyland</td><td align=left>igloo</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   264
<tr><td nowrap valign=top><tt>67</tt>&nbsp; </td><td>1&times;1</td><td>toyland</td><td align=left>tepees</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   265
<tr><td nowrap valign=top><tt>68</tt>, <tt>69</tt>&nbsp; </td><td>1&times;1</td><td>toyland</td><td align=left>shops and offices</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   266
<tr><td nowrap valign=top><tt>6A</tt>&nbsp; </td><td>1&times;1</td><td>toyland</td><td align=left>tall office block</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   267
<tr><td nowrap valign=top><tt>6B</tt>&nbsp; </td><td>1&times;1</td><td>toyland</td><td align=left>statue</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   268
<tr><td nowrap valign=top><tt>6C</tt>&nbsp; </td><td>1&times;1</td><td>toyland</td><td align=left>teapot-house</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   269
<tr><td nowrap valign=top><tt>6D</tt>&nbsp; </td><td>1&times;1</td><td>toyland</td><td align=left>piggy-bank</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   270
<tr><td colspan=2></td></tr> <!-- spacer -- -- (and I don't mean a walk) -->
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   271
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   272
<li>map3_lo bits 7..6: stage of construction (<tt>3</tt> = completed)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   273
<li>map5 bits 2..0: construction counter, for buildings under construction incremented on every periodic tile processing, on wraparound the stage of construction in map3_lo is increased</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   274
<li>for large office blocks (types <tt>04</tt> and <tt>05</tt>):
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   275
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   276
<li>map_owner bits 6..0: position of the lift</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   277
<li>map_owner bit 7: if set the lift is moving</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   278
<li>map5 bit 7: if set then map5 bits 5..0 hold the final position of the lift divided by 6 (valid values 0..6 except 1)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   279
</ul></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   280
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   281
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   282
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   283
<tr><td valign=top nowrap><a name="Class4"><tt> 4 </tt></a></td><td>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   284
Trees
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   285
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   286
<li>map5 bits 7..6: number of trees minus one</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   287
<li>map5 bits 2..0: growth status: <tt>0</tt>..<tt>2</tt> - one of trees is growing, <tt>3</tt> - all trees are fully grown, <tt>4</tt>..<tt>6</tt> - one of trees is withering</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   288
<li>map3_lo bits 7..0: type of trees:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   289
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   290
<tr><td nowrap valign=top><tt>00</tt>..<tt>0B</tt>&nbsp; </td><td align=left>temperate climate trees</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   291
<tr><td nowrap valign=top><tt>0C</tt>..<tt>13</tt>&nbsp; </td><td align=left>sub-arctic climate trees</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   292
<tr><td nowrap valign=top><tt>14</tt>..<tt>1A</tt>&nbsp; </td><td align=left>rainforest trees</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   293
<tr><td nowrap valign=top><tt>1B</tt> </td><td align=left>cactus plants</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   294
<tr><td nowrap valign=top><tt>1C</tt>..<tt>1F</tt>&nbsp; </td><td align=left>sub-tropical climate, non-rainforest, non-desert trees</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   295
<tr><td nowrap valign=top><tt>20</tt>..<tt>28</tt>&nbsp; </td><td align=left>toyland trees</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   296
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   297
(note: the actually displayed set of trees depends on both type and number of trees)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   298
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   299
<li>map3_hi bits 7..5: type of hedge on the SW border of the tile (1 through 6, or 0=none)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   300
<li>map3_hi bits 4..2: type of hedge on the SE border of the tile (1 through 6, or 0=none)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   301
<li>map2 bits 5..4:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   302
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   303
<tr><td nowrap valign=top><tt>0</tt>&nbsp; </td><td align=left>on grass</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   304
<tr><td nowrap valign=top><tt>1</tt>&nbsp; </td><td align=left>on rough land</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   305
<tr><td nowrap valign=top><tt>2</tt>&nbsp; </td><td align=left>on snow or desert; map2 bits 7..6 - amount of snow or desert (for desert always set to 3 in TTD)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   306
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   307
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   308
<li>map2 bits 3..0: update counter, incremented on every periodic processing, on wraparound the growth status is updated (or, if it's <tt>3</tt>, a random action is taken)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   309
<li>map_owner: <a href="#OwnershipInfo">owner</a> (normally <tt>10</tt>)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   310
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   311
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   312
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   313
<tr><td valign=top nowrap><a name="Class5"><tt> 5 </tt></a></td><td>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   314
Station tile
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   315
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   316
<li>map5: tile type:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   317
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   318
<tr><td nowrap valign=top><tt>00</tt>..<tt>07</tt>&nbsp; </td><td align=left>railway station
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   319
<br><tt>00</tt>..<tt>01</tt> - open platform, <tt>02</tt>..<tt>03</tt> - open platform with station building, <tt>04</tt>....<tt>07</tt> - roofed platform
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   320
<br>bit 0: clear = in X direction, set = in Y direction
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   321
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   322
<tr><td nowrap valign=top><tt>08</tt>..<tt>33</tt>&nbsp; </td><td align=left>large airport
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   323
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   324
<tr><td nowrap valign=top><tt>0B</tt>&nbsp; </td><td align=left>pad 1</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   325
<tr><td nowrap valign=top><tt>16</tt>..<tt>19</tt>&nbsp; </td><td align=left>runway middle</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   326
<tr><td nowrap valign=top><tt>1A</tt>&nbsp; </td><td align=left>runway ending</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   327
<tr><td nowrap valign=top><tt>1C</tt>&nbsp; </td><td align=left>control tower</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   328
<tr><td nowrap valign=top><tt>20</tt>&nbsp; </td><td align=left>hangar</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   329
<tr><td nowrap valign=top><tt>21</tt>&nbsp; </td><td align=left>pad 3</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   330
<tr><td nowrap valign=top><tt>22</tt>&nbsp; </td><td align=left>pad 2</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   331
<tr><td nowrap valign=top><tt>27</tt>..<tt>32</tt>&nbsp; </td><td align=left>radar (animated)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   332
<tr><td nowrap valign=top><tt>33</tt>&nbsp; </td><td align=left>transmitter</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   333
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   334
The initial layout of a large airport is (rows in Y direction, columns in X direction):
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   335
<pre>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   336
1F 1B 1E 33 26 1A
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   337
09 24 0B 0C 0D 16
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   338
21 1D 23 0E 0F 17
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   339
09 22 0D 11 10 18
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   340
09 08 14 13 12 19
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   341
20 0A 15 1C 27 1A
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   342
</pre>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   343
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   344
<tr><td nowrap valign=top><tt>34</tt>..<tt>41</tt>&nbsp; </td><td align=left>small airport
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   345
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   346
<tr><td nowrap valign=top><tt>3A</tt>..<tt>3D</tt>&nbsp; </td><td align=left>field with the wind meter (animated)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   347
<tr><td nowrap valign=top><tt>3E</tt>&nbsp; </td><td align=left>runway south ending</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   348
<tr><td nowrap valign=top><tt>3F</tt>&nbsp; </td><td align=left>runway middle</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   349
<tr><td nowrap valign=top><tt>40</tt>&nbsp; </td><td align=left>runway north ending</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   350
<tr><td nowrap valign=top><tt>41</tt>&nbsp; </td><td align=left>hangar</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   351
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   352
The initial layout of a small airport is (rows in Y direction, columns in X direction):
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   353
<pre>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   354
36 3A 40
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   355
35 39 3F
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   356
34 38 3F
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   357
41 37 3E
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   358
</pre>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   359
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   360
<tr><td nowrap valign=top><tt>42</tt> </td><td align=left>heliport</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   361
<tr><td nowrap valign=top><tt>43</tt>..<tt>46</tt>&nbsp; </td><td align=left>lorry loading area;
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   362
exit towards: <tt>43</tt> - NE, <tt>44</tt> - SE, <tt>45</tt> - SW, <tt>46</tt> - NW
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   363
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   364
<tr><td nowrap valign=top><tt>47</tt>..<tt>4A</tt>&nbsp; </td><td align=left>bus station;
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   365
exit towards: <tt>47</tt> - NE, <tt>48</tt> - SE, <tt>49</tt> - SW, <tt>4A</tt> - NW
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   366
<tr><td nowrap valign=top><tt>4B</tt> </td><td align=left>oilfield</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   367
<tr><td nowrap valign=top><tt>4C</tt>..<tt>51</tt>&nbsp; </td><td align=left>ship dock;
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   368
<tt>4C</tt> - SW coast part, <tt>4D</tt> - NW coast part, <tt>4E</tt> - NE coast part, <tt>4F</tt> - SE coast part, <tt>50</tt> - X direction water part, <tt>51</tt> - Y direction water part
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   369
<tr><td nowrap valign=top><tt>52</tt> </td><td align=left>buoy</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   370
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   371
<tr><td colspan=2></td></tr> <!-- spacer -->
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   372
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   373
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   374
<li>map_owner: <a href="#OwnershipInfo">owner</a> of the station</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   375
<li>map2: index into the <a href="#_StationArray">array of stations</a></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   376
<li>map3_lo bits 0..3: <a href="#TrackType">track type</a> for railway stations, must be 0 for all the other stations</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   377
<li>map3_lo bit 4 = use custom sprite (valid only railway stations FOR NOW)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   378
<li>map3_hi = custom station id</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   379
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   380
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   381
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   382
<tr><td valign=top nowrap><a name="Class6"><tt> 6 </tt></a></td><td>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   383
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   384
<li>map5: tile type:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   385
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   386
<tr><td nowrap valign=top><tt>00</tt>&nbsp; </td><td align=left>water</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   387
<tr><td nowrap valign=top><tt>01</tt>&nbsp; </td><td align=left>coast or riverbank</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   388
<tr><td nowrap valign=top><tt>10</tt>..<tt>1B</tt>&nbsp; </td><td align=left>canal locks
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   389
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   390
<tr><td nowrap valign=top><tt>10</tt>&nbsp; </td><td align=left>middle part, (SW-NE direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   391
<tr><td nowrap valign=top><tt>11</tt>&nbsp; </td><td align=left>middle part, (NW-SE direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   392
<tr><td nowrap valign=top><tt>12</tt>&nbsp; </td><td align=left>middle part, (NE-SW direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   393
<tr><td nowrap valign=top><tt>13</tt>&nbsp; </td><td align=left>middle part, (SE-NW direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   394
<tr><td nowrap valign=top><tt>14</tt>&nbsp; </td><td align=left>lower part, (SW-NE direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   395
<tr><td nowrap valign=top><tt>15</tt>&nbsp; </td><td align=left>lower part, (NW-SE direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   396
<tr><td nowrap valign=top><tt>16</tt>&nbsp; </td><td align=left>lower part, (NE-SW direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   397
<tr><td nowrap valign=top><tt>17</tt>&nbsp; </td><td align=left>lower part, (SE-NW direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   398
<tr><td nowrap valign=top><tt>18</tt>&nbsp; </td><td align=left>upper part, (SW-NE direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   399
<tr><td nowrap valign=top><tt>19</tt>&nbsp; </td><td align=left>upper part, (NW-SE direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   400
<tr><td nowrap valign=top><tt>1A</tt>&nbsp; </td><td align=left>upper part, (NE-SW direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   401
<tr><td nowrap valign=top><tt>1B</tt>&nbsp; </td><td align=left>upper part, (SE-NW direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   402
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   403
<tr><td nowrap valign=top><tt>80</tt>..<tt>83</tt>&nbsp; </td><td align=left>ship depots
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   404
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   405
<tr><td nowrap valign=top><tt>80</tt>&nbsp; </td><td align=left>ship depot, NE part (X direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   406
<tr><td nowrap valign=top><tt>81</tt>&nbsp; </td><td align=left>ship depot, SW part (X direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   407
<tr><td nowrap valign=top><tt>82</tt>&nbsp; </td><td align=left>ship depot, NW part (Y direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   408
<tr><td nowrap valign=top><tt>83</tt>&nbsp; </td><td align=left>ship depot, SE part (Y direction)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   409
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   410
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   411
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   412
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   413
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   414
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   415
<li>map_owner: <a href="#OwnershipInfo">owner</a> (for water and coasts normally <tt>11</tt>)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   416
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   417
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   418
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   419
<tr><td valign=top nowrap><a name="Class7"><tt> 7 </tt></a></td><td>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   420
Void
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   421
<p>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   422
Tiles of this class form an invisible, one tile wide border at the south (bottom) edges of the map, so as to protect several algorithms from the consequences of a wraparound at the edges.
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   423
</p>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   424
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   425
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   426
<tr><td valign=top nowrap><a name="Class8"><tt> 8 </tt></a></td><td>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   427
Industry tile
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   428
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   429
<li>map5: type:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   430
<br><small>(note: this is not the same as the <a href="#industry.type">industry type</a> stored in the <a href="#_IndustryArray">array of industries</a>)</small>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   431
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   432
<tr><td nowrap valign=top><tt>00</tt>..<tt>06</tt>&nbsp; </td><td align=left>coal mine
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   433
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   434
<tr><td nowrap valign=top><tt>00</tt>&nbsp; </td><td align=left>wheel tower when not animated</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   435
<tr><td nowrap valign=top><tt>01</tt>&nbsp; </td><td align=left>wheel tower when animated; animation state in map_owner bits 5..0; map_owner bit 6 set = sound already generated</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   436
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   437
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   438
<tr><td nowrap valign=top><tt>07</tt>..<tt>0A</tt>&nbsp; </td><td align=left>power station
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   439
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   440
<tr><td nowrap valign=top><tt>08</tt>&nbsp; </td><td align=left>chimney</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   441
<tr><td nowrap valign=top><tt>0A</tt>&nbsp; </td><td align=left>transformer; animation progress in map_owner bits 5..2 (valid range <tt>0</tt>..<tt>7</tt>)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   442
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   443
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   444
<tr><td nowrap valign=top><tt>0B</tt>..<tt>0F</tt>&nbsp; </td><td align=left>sawmill</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   445
<tr><td nowrap valign=top><tt>10</tt>..<tt>11</tt>&nbsp; </td><td align=left>forest
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   446
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   447
<tr><td nowrap valign=top><tt>11</tt>&nbsp; </td><td align=left>trees cut down</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   448
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   449
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   450
<tr><td nowrap valign=top><tt>12</tt>..<tt>17</tt>&nbsp; </td><td align=left>oil refinery</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   451
<tr><td nowrap valign=top><tt>18</tt>..<tt>1C</tt>&nbsp; </td><td align=left>oil rig</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   452
<tr><td nowrap valign=top><tt>1D</tt>..<tt>20</tt>&nbsp; </td><td align=left>oil wells
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   453
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   454
<tr><td nowrap valign=top><tt>1D</tt>&nbsp; </td><td align=left>not animated</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   455
<tr><td nowrap valign=top><tt>1E</tt>..<tt>20</tt>&nbsp; </td><td align=left>various stages of animation; progress of animation in map_owner bits 1..0</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   456
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   457
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   458
<tr><td nowrap valign=top><tt>21</tt>..<tt>26</tt>&nbsp; </td><td align=left>farm</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   459
<tr><td nowrap valign=top><tt>27</tt>..<tt>2A</tt>&nbsp; </td><td align=left>factory (temperate climate)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   460
<tr><td nowrap valign=top><tt>2B</tt>..<tt>2E</tt>&nbsp; </td><td align=left>printing works</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   461
<tr><td nowrap valign=top><tt>2F</tt>..<tt>33</tt>&nbsp; </td><td align=left>copper ore mine
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   462
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   463
<tr><td nowrap valign=top><tt>2F</tt>&nbsp; </td><td align=left>wheel tower when not animated</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   464
<tr><td nowrap valign=top><tt>30</tt>&nbsp; </td><td align=left>wheel tower when animated; animation state in map_owner bits 5..0; map_owner bit 6 set = sound already generated</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   465
<tr><td nowrap valign=top><tt>31</tt>&nbsp; </td><td align=left>chimney</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   466
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   467
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   468
<tr><td nowrap valign=top><tt>34</tt>..<tt>39</tt>&nbsp; </td><td align=left>steel mill</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   469
<tr><td nowrap valign=top><tt>3A</tt>..<tt>3B</tt>&nbsp; </td><td align=left>bank (temperate climate)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   470
<tr><td nowrap valign=top><tt>3C</tt>..<tt>3F</tt>&nbsp; </td><td align=left>food processing plant</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   471
<tr><td nowrap valign=top><tt>40</tt>..<tt>47</tt>&nbsp; </td><td align=left>paper mill</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   472
<tr><td nowrap valign=top><tt>48</tt>..<tt>58</tt>&nbsp; </td><td align=left>gold mine
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   473
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   474
<tr><td nowrap valign=top><tt>4F</tt>&nbsp; </td><td align=left>wheel tower when not animated</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   475
<tr><td nowrap valign=top><tt>58</tt>&nbsp; </td><td align=left>wheel tower when animated; animation state in map_owner bits 5..0; map_owner bit 6 set = sound already generated</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   476
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   477
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   478
<tr><td nowrap valign=top><tt>59</tt>..<tt>5A</tt>&nbsp; </td><td align=left>bank (sub-arctic or sub-tropical climate)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   479
<tr><td nowrap valign=top><tt>5B</tt>..<tt>63</tt>&nbsp; </td><td align=left>diamond mine</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   480
<tr><td nowrap valign=top><tt>64</tt>..<tt>73</tt>&nbsp; </td><td align=left>iron ore mine</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   481
<tr><td nowrap valign=top><tt>74</tt></td><td align=left>fruit plantation</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   482
<tr><td nowrap valign=top><tt>75</tt></td><td align=left>rubber plantation</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   483
<tr><td nowrap valign=top><tt>76</tt>..<tt>77</tt>&nbsp; </td><td align=left>water supply</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   484
<tr><td nowrap valign=top><tt>78</tt></td><td align=left>water tower</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   485
<tr><td nowrap valign=top><tt>79</tt>..<tt>7C</tt>&nbsp; </td><td align=left>factory (sub-tropical climate)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   486
<tr><td nowrap valign=top><tt>7D</tt>..<tt>80</tt>&nbsp; </td><td align=left>lumber mill</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   487
<tr><td nowrap valign=top><tt>81</tt>..<tt>82</tt>&nbsp; </td><td align=left>candyfloss forest
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   488
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   489
<tr><td nowrap valign=top><tt>82</tt>&nbsp; </td><td align=left>candyfloss 'trees' cut down</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   490
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   491
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   492
<tr><td nowrap valign=top><tt>83</tt>..<tt>86</tt>&nbsp; </td><td align=left>sweet factory</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   493
<tr><td nowrap valign=top><tt>87</tt>..<tt>88</tt>&nbsp; </td><td align=left>battery farm
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   494
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   495
<tr><td nowrap valign=top><tt>88</tt>&nbsp; </td><td align=left>batteries 'reaped'</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   496
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   497
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   498
<tr><td nowrap valign=top><tt>89</tt></td><td align=left>cola wells</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   499
<tr><td nowrap valign=top><tt>8A</tt>..<tt>8D</tt>&nbsp; </td><td align=left>toy shop</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   500
<tr><td nowrap valign=top><tt>8E</tt>..<tt>93</tt>&nbsp; </td><td align=left>toy factory
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   501
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   502
<tr><td nowrap valign=top><tt>8F</tt>&nbsp; </td><td align=left>animated part; animation state in map3_lo (valid range <tt>00</tt>..<tt>31</tt>)<br>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   503
tile animation is started (map3_hi zeroed) on the periodic processing if <a href="#industry.didtransform">field <tt>2C</tt></a> in the corresponding industry array entry is nonzero<br>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   504
while the animation is in progress (see the <a href="#_AnimatedTilesList">array at <tt>04328</tt></a>) map3_hi holds the number of animation cycles that have already taken place; when this number reaches 8 the animation is stopped</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   505
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   506
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   507
<tr><td nowrap valign=top><tt>94</tt>..<tt>9B</tt>&nbsp; </td><td align=left>plastic fountains (various stages of cyclic animation)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   508
<tr><td nowrap valign=top><tt>9C</tt>..<tt>9F</tt>&nbsp; </td><td align=left>fizzy drink factory</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   509
<tr><td nowrap valign=top><tt>A0</tt>..<tt>A3</tt>&nbsp; </td><td align=left>bubble generator
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   510
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   511
<tr><td nowrap valign=top><tt>A1</tt>&nbsp; </td><td align=left>generators</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   512
<tr><td nowrap valign=top><tt>A2</tt>&nbsp; </td><td align=left>bubble capture facility; animation state in map3_lo (valid range <tt>00</tt>..<tt>27</tt>)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   513
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   514
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   515
<tr><td nowrap valign=top><tt>A4</tt>..<tt>A6</tt>&nbsp; </td><td align=left>toffee quarry
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   516
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   517
<tr><td nowrap valign=top><tt>A5</tt>&nbsp; </td><td align=left>animated part; animation state in map3_lo (valid range <tt>00</tt>..<tt>45</tt>)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   518
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   519
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   520
<tr><td nowrap valign=top><tt>A7</tt>..<tt>AE</tt>&nbsp; </td><td align=left>sugar mine
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   521
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   522
<tr><td nowrap valign=top><tt>AE</tt>&nbsp; </td><td align=left>animated part; animation state in map3_lo (valid range <tt>00</tt>..<tt>5F</tt>)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   523
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   524
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   525
<tr><td colspan=2></td></tr> <!-- spacer -->
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   526
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   527
<li>map2: index into the <a href="#_IndustryArray">array of industries</a>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   528
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   529
<li>map_owner bit 7: clear = under construction
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   530
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   531
<li>map_owner bits 4..2: construction counter, for buildings under construction incremented on every periodic tile processing
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   532
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   533
</ul></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   534
<li>map_owner bits 1..0: stage of construction (<tt>3</tt> = completed), incremented when the construction counter wraps around
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   535
<br>the meaning is different for some animated tiles which are never under construction (types <tt>01</tt>, <tt>1E</tt>..<tt>20</tt>, <tt>30</tt>, <tt>58</tt>; see above)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   536
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   537
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   538
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   539
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   540
<tr><td valign=top nowrap><a name="Class9"><tt> 9 </tt></a></td><td>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   541
map5 bits 7..4 clear: tunnel entrance/exit
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   542
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   543
<li>map5 bits 3..2: <tt>0</tt> - railway tunnel, <tt>1</tt> - road tunnel</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   544
<li>map5 bits 1..0 - direction: entrance towards: <tt>0</tt> = NE, <tt>1</tt> = SE, <tt>2</tt> = SW, <tt>3</tt> = NW</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   545
<li>map_owner: <a href="#OwnershipInfo">owner</a> of the tunnel</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   546
<li>map3_lo bits 3..0 = <a href="#TrackType">track type</a> for railway tunnel, must be 0 for road tunnel</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   547
<li>map3_hi bit 7 set = on snow or desert</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   548
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   549
map5 bit 7 set: bridge
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   550
<ul><li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   551
map5 bit 6 clear: bridge ending
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   552
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   553
<li>map5 bit 5: clear - northern, set - southern ending</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   554
<li>map3_lo bits 3..0 = <a href="#TrackType">type of track</a> on the bridge, must be 0 for road bridge</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   555
<li>map_owner: <a href="#OwnershipInfo">owner</a> of the bridge</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   556
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   557
map5 bit 6 set: bridge middle part
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   558
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   559
<li>map5 bit 5 clear:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   560
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   561
<li>map5 bits 4..3: land under bridge: <tt>0</tt> - grass, snow or desert, <tt>1</tt> - water</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   562
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   563
map5 bit 5 set:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   564
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   565
<li>map5 bits 4..3: transport route under bridge: <tt>0</tt> - railway, <tt>1</tt> - road</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   566
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   567
<li>map3_lo bits 7..4 = <a href="#TrackType">type of track</a> on the bridge, must be 0 for road bridge</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   568
<li>map3_lo bits 3..0 = <a href="#TrackType">type of track</a> under the bridge, if any</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   569
<li>map2 bits 3..0: bridge piece (<tt>0</tt>..<tt>5</tt>)
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   570
<li>map_owner: <a href="#OwnershipInfo">owner</a> of the land under bridge</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   571
</ul></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   572
<li>map5 bits 2..1: <tt>0</tt> - railway bridge, <tt>1</tt> - road bridge</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   573
<li>map5 bit 0: clear - bridge in the X direction, set - bridge in the Y direction</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   574
<li>map2 bits 7..4: <a name="BridgeType">bridge type</a>:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   575
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   576
<tr><th align=left>Type&nbsp;</th><th align=left>Max. speed (mph)&nbsp;</th><th align=left>Description</th></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   577
<tr><td nowrap valign=top><tt>0</tt>&nbsp; </td><td align=center>20</td><td align=left>wooden</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   578
<tr><td nowrap valign=top><tt>1</tt>&nbsp; </td><td align=center>30</td><td align=left>concrete</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   579
<tr><td nowrap valign=top><tt>2</tt>&nbsp; </td><td align=center>40</td><td align=left>girder, steel</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   580
<tr><td nowrap valign=top><tt>3</tt>&nbsp; </td><td align=center>50</td><td align=left>suspension, concrete</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   581
<tr><td nowrap valign=top><tt>4</tt>&nbsp; </td><td align=center>60</td><td align=left>suspension, steel</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   582
<tr><td nowrap valign=top><tt>5</tt>&nbsp; </td><td align=center>70</td><td align=left>suspension, steel</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   583
<tr><td nowrap valign=top><tt>6</tt>&nbsp; </td><td align=center>100</td><td align=left>cantilever, steel</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   584
<tr><td nowrap valign=top><tt>7</tt>&nbsp; </td><td align=center>130</td><td align=left>cantilever, steel</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   585
<tr><td nowrap valign=top><tt>8</tt>&nbsp; </td><td align=center>150</td><td align=left>cantilever, steel</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   586
<tr><td nowrap valign=top><tt>9</tt>&nbsp; </td><td align=center>160</td><td align=left>girder, steel</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   587
<tr><td nowrap valign=top><tt>A</tt>&nbsp; </td><td align=center>200</td><td align=left>tubular, steel</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   588
</table></li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   589
<li>map3_hi bit 7 set = on snow or desert</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   590
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   591
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   592
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   593
<tr><td valign=top nowrap><a name="ClassA"><tt> A </tt></a></td><td>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   594
<ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   595
<li>map5: tile type:
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   596
<table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   597
<tr><td nowrap valign=top><tt>00</tt>&nbsp; </td><td align=left>transmitter</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   598
<tr><td nowrap valign=top><tt>01</tt>&nbsp; </td><td align=left>lighthouse</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   599
<tr><td nowrap valign=top><tt>02</tt>&nbsp; </td><td align=left>company statue</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   600
<tr><td nowrap valign=top><tt>03</tt>&nbsp; </td><td align=left>company-owned land</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   601
<tr><td nowrap valign=top><tt>80</tt>..<tt>93</tt>&nbsp; </td><td align=left>company headquarters (5 sets of 4 tiles each, updated quarterly depending on the company performance)</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   602
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   603
</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   604
<li>map_owner: <a href="#OwnershipInfo">owner</a> of the object (for lighthouses and transmitters normally <tt>10</tt>)</li>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   605
</ul>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   606
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   607
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   608
<tr><td colspan=2>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   609
Classes <tt>B</tt> through <tt>F</tt> are reserved. The presence of a tile in one of the reserved classes will crash TTD.
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   610
</td></tr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   611
</table>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   612
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   613
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   614
<hr>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   615
Copyright &copy; 2003 by Marcin Grzegorczyk.<br>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   616
Transport Tycoon and Transport Tycoon Deluxe are Copyright &copy; by Chris Sawyer. All the other trademarks are the property of their respective owners.<br>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   617
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   618
</body>
76be94b57799 (svn r688) Fix eol-style (hopefully).
pasky
parents: 449
diff changeset
   619
</html>