belugas@6355: For a graphical representation of the tile-layout have a look at
belugas@6355: Landscape grid page.
belugas@6355:
pasky@464:
belugas@6506: The OTTD's class-specific periodic tile processing routine is called once every +256 ticks for each tile.
pasky@464:
belugas@6355:
belugas@6506:
belugas@6506: Class |
belugas@6506: Meaning & details of encoding |
belugas@6506:
belugas@6506:
belugas@6506: 0 |
belugas@6510: Ground |
belugas@6506:
belugas@6355:
belugas@6506: |
belugas@6355:
belugas@6355:
belugas@6506: - m1: owner of the tile (normally 10)
frosch@8953: - m2: see fields
frosch@8953: - m3 bits 3..0: see fields
belugas@6506: - m4 bits 7..5: type of hedge on the SW border of the tile (1 through 6, or 0=none)
belugas@6506: - m4 bits 4..2: same as 7..5, but for the SE border
belugas@6355: - m5 bits 7..5: update counter, incremented on every periodic processing for tile types,
belugas@6355: other than 03, 07, 0B, 10 and above.
belugas@6355: on wraparound, the tile is updated (for fields, the type of fields in m3 is increased, for other types the tile type in m5 is increased).
belugas@6506: For snow and desert, these bits are not used, tile is updated on every periodic processing.
frosch@8953: - m5 bits 4..2: tile type:
belugas@6506:
belugas@6506:
frosch@8953: 0 |
frosch@8953: bare land / grass |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: 1 |
frosch@8953: rough land (density must be 3) |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: 2 |
frosch@8953: rocks (density must be 3) |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: 3 |
frosch@8953: fields (density must be 3)
frosch@8953:
frosch@8953: - m2: index into the array of industries (farms), INVALID_INDUSTRY (0xFFFF) if farm has been removed
frosch@8953: - m3 bits 3..0: field type (legal values: 0 through 9)
frosch@8953:
frosch@8953: |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: 4 |
frosch@8953: snow |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: 5 |
frosch@8953: desert (density must be 1 or 3) |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: - m5 bits 1..0: density:
frosch@8953:
frosch@8953:
frosch@8953: 0 |
frosch@8953: bare land |
frosch@8953: |
frosch@8953: |
frosch@8953: |
frosch@8953: 1/4 snow |
frosch@8953: |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 1 |
frosch@8953: 1/3 grass |
frosch@8953: |
frosch@8953: |
frosch@8953: |
frosch@8953: 2/4 snow; |
frosch@8953: 1/2 desert |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 2 |
frosch@8953: 2/3 grass |
frosch@8953: |
frosch@8953: |
frosch@8953: |
frosch@8953: 3/4 snow |
frosch@8953: |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 3 |
frosch@8953: full grass; |
frosch@8953: rough land; |
frosch@8953: rocks; |
frosch@8953: fields; |
frosch@8953: full snow; |
frosch@8953: full desert |
belugas@6506:
belugas@6506:
belugas@6355:
belugas@6510: - m6 bits 7..6 : Possibility of a bridge above, in the direction specified
belugas@6510: - m6 bits 1..0 : Tropic zone definition
belugas@6355:
belugas@6355: |
belugas@6355:
belugas@6355:
belugas@6506:
belugas@6506: 1 |
belugas@6506: Railway tracks |
belugas@6506:
belugas@6355:
belugas@6506: |
belugas@6355:
belugas@6355:
frosch@8953: - m1: owner of the tile
frosch@8953: - m2: see waypoint and signals
frosch@8953: - m3 bits 7..4: see signals
frosch@8953: - m3 bits 3..0 = track type:
frosch@8953:
frosch@8953:
frosch@8953: 0 |
frosch@8953: conventional railway |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 1 |
frosch@8953: electrified railway |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 2 |
frosch@8953: monorail |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 3 |
frosch@8953: maglev |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: - m4 bits 7..4: see signals
frosch@8953: - m4 bits 3..0: Ground type (values with fences are not valid for depots and checkpoints)
frosch@8953:
frosch@8953:
frosch@8953: 0 |
frosch@8953: on bare land |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 1 |
frosch@8953: on grass, no fences |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 2 |
frosch@8953: fence on the NW side |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 3 |
frosch@8953: fence on the SE side |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 4 |
frosch@8953: fences on the NW and SE sides |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 5 |
frosch@8953: fence on the NE side |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 6 |
frosch@8953: fence on the SW side |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 7 |
frosch@8953: fences on the NE and SW sides |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 8 |
frosch@8953: fence on the E side (track in the W corner) |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 9 |
frosch@8953: fence on the W side (track in the E corner) |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: A |
frosch@8953: fence on the S side (track in the N corner) |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: B |
frosch@8953: fence on the N side (track in the S corner) |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: C |
frosch@8953: on snow or desert |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: D |
frosch@8953: on grass with fence and shore or water on the free halftile |
frosch@8953:
smatz@9020:
smatz@9020:
smatz@9020: E |
smatz@9020: higher part on foundation with snow, lower without snow |
smatz@9020:
frosch@8953:
frosch@8953:
belugas@6355: - m5 bit 7 clear: railway track
belugas@6355:
belugas@6506: - m5 bits 5..0: track layout: bit set = track present:
belugas@6355:
belugas@6506:
belugas@6506: bit 0: |
belugas@6506: in the X direction |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: bit 1: |
belugas@6506: in the Y direction |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: bit 2: |
belugas@6506: in the north corner (direction W-E) |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: bit 3: |
belugas@6506: in the south corner (direction W-E) |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: bit 4: |
belugas@6506: in the west corner (direction N-S) |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: bit 5: |
belugas@6506: in the east corner (direction N-S) |
belugas@6506:
belugas@6355:
belugas@6355:
frosch@8953: - m5 bit 6 set = with signals:
frosch@8953: There are at most 4 signals on a tile. The signals 0..3 belong to the directions:
belugas@6355:
belugas@6506:
frosch@8953: |
frosch@8953: Track 0 (X) |
frosch@8953: Track 1 (Y) |
frosch@8953: Track 2 (north) |
frosch@8953: Track 3 (south) |
frosch@8953: Track 4 (west) |
frosch@8953: Track 5 (east) |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: Signal 0 |
frosch@8953: |
frosch@8953: |
frosch@8953: |
frosch@8953: west |
frosch@8953: |
frosch@8953: south |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: Signal 1 |
frosch@8953: |
frosch@8953: |
frosch@8953: |
frosch@8953: east |
frosch@8953: |
frosch@8953: north |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: Signal 2 |
frosch@8953: south-west |
frosch@8953: north-west |
frosch@8953: west |
frosch@8953: |
frosch@8953: south |
frosch@8953: |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: Signal 3 |
frosch@8953: north-east |
frosch@8953: south-east |
frosch@8953: east |
frosch@8953: |
frosch@8953: north |
frosch@8953: |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: - m2 bit 6: Signal 0 and 1: set = semaphore signals, clear = light signals
frosch@8953: - m2 bit 2: Signal 2 and 3: set = semaphore signals, clear = light signals
frosch@8953: - m2 bits 5..4: type of signal 0 and 1 (same values as m2 bits 1..0)
frosch@8953: - m2 bits 1..0: type of signal 2 and 3
frosch@8953:
frosch@8953:
frosch@8953: 00: |
frosch@8953: normal signals |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 01: |
frosch@8953: pre-signals |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 10: |
frosch@8953: exit-signals |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 11: |
frosch@8953: combo-signals |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: - m3 bits 7..4: bit set = signal 3..0 present
frosch@8953: - m4 bits 7..4: bit clear = signal 3..0 shows red
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: - m5 bit 7 set, bit 6 clear: checkpoint
frosch@8953:
frosch@8953: - m2: index into the array of waypoints.
frosch@8953: - m5 bit 0:
frosch@8953:
frosch@8953:
frosch@8953: 0 |
belugas@6506: in X direction |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: 1 |
belugas@6506: in Y direction |
belugas@6506:
belugas@6355:
belugas@6355:
belugas@6355:
frosch@8953:
frosch@8953: - m5 bit 7 set, bit 6 set: railway depot
frosch@8953:
frosch@8953: - m5 bits 1..0: exit towards
frosch@8953:
belugas@6506:
frosch@8953: 0 |
frosch@8953: NE |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: 1 |
frosch@8953: SE |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 2 |
frosch@8953: SW |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 3 |
frosch@8953: NW |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6355:
belugas@6355:
belugas@6510: - m6 bits 7..6 : Possibility of a bridge above, in the direction specified
belugas@6510: - m6 bits 1..0 : Tropic zone definition
belugas@6355:
belugas@6355: |
belugas@6355:
belugas@6355:
belugas@6506:
belugas@6506: 2 |
belugas@6506: Roads |
belugas@6506:
belugas@6355:
belugas@6506: |
belugas@6506:
belugas@6506:
frosch@8953: - m3 bit 7 set = on snow or desert
frosch@8953: - m7 bits 7..5: present road types
frosch@8953:
frosch@8953:
frosch@8953: bit 0 |
frosch@8953: normal road |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: bit 1 |
frosch@8953: tram |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: bit 2 |
frosch@8953: reserved |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: - m5 bits 7 clear: road or level-crossing
belugas@6506:
belugas@6506: - m2: Index into the array of towns, 0 for non-town roads
belugas@6506: - m3 bits 6..4:
belugas@6506:
belugas@6506:
belugas@6506: 0 |
belugas@6506: on bare land |
belugas@6506:
belugas@6506:
belugas@6506: 1 |
belugas@6506: on grass |
belugas@6506:
belugas@6506:
belugas@6506: 2 |
belugas@6506: paved |
belugas@6506:
belugas@6506:
belugas@6506: 3 |
belugas@6506: with streetlights |
belugas@6506:
belugas@6506:
belugas@6506: 5 |
belugas@6506: tree-lined |
belugas@6506:
belugas@6506:
belugas@6506: 6 |
belugas@6506: on grass with road works |
belugas@6506:
belugas@6506:
belugas@6506: 7 |
belugas@6506: paved with road works |
belugas@6506:
belugas@6506:
belugas@6506:
frosch@8953: - m5 bits 3..0: owner of road type 1 (tram); OWNER_NONE (10) is stored as OWNER_TOWN (0F)
frosch@8953:
- m7 bits 4..0: owner of road type 2 (reserved)
frosch@8953:
- m5 bit 6 clear: road
frosch@8953:
frosch@8953: - m1: owner of the road type 0 (normal road)
frosch@8953: - m3 bits 3..0: counter for the roadworks
frosch@8953: - m4 bits 3..0: road layout road type 0 (normal road): bit set = road piece present:
frosch@8953:
frosch@8953:
frosch@8953: bit 0: |
frosch@8953: NW piece |
frosch@8953:
frosch@8953:
frosch@8953: bit 1: |
frosch@8953: SW piece |
frosch@8953:
frosch@8953:
frosch@8953: bit 2: |
frosch@8953: SE piece |
frosch@8953:
frosch@8953:
frosch@8953: bit 3: |
frosch@8953: NE piece |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: - m4 bits 7..4: road layout road type 1 (tram)
frosch@8953: - m6 bits 5..2: road layout road type 2 (reserved)
frosch@8953: - m5 bits 5..4: bits to disallow vehicles to go a specific direction
frosch@8953:
frosch@8953:
frosch@8953: bit 0: |
frosch@8953: set = disallow driving in south-west or south-east direction |
frosch@8953:
frosch@8953:
frosch@8953: bit 1: |
frosch@8953: set = disallow driving in north-west or north-east direction |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953:
belugas@6506:
frosch@8953: - m5 bit 6 set: level crossing
frosch@8953:
frosch@8953: - m1: owner of the railway track
frosch@8953: - m3 bits 3..0: railway track type
frosch@8953: - m4 bit 6: direction
frosch@8953:
frosch@8953:
frosch@8953: 0 |
frosch@8953: road in the X direction, rail in Y |
frosch@8953:
frosch@8953:
frosch@8953: 1 |
frosch@8953: road in the Y direction, rail in X |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: - m4 bit 5: set if crossing lights are on
frosch@8953: - m4 bits 4..0: owner of the road type 0 (normal road)
frosch@8953:
rubidium@7178:
belugas@6506:
belugas@6506:
rubidium@7178: - m5 bit 7 set, bit 6 clear: road depot
belugas@6506:
belugas@6506: - m1: owner of the depot
frosch@8953: - m5 bits 3..0: exit towards:
frosch@8953:
frosch@8953:
frosch@8953: 0 |
frosch@8953: NE |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 1 |
frosch@8953: SE |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 2 |
frosch@8953: SW |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 3 |
frosch@8953: NW |
frosch@8953:
frosch@8953:
frosch@8953:
belugas@6506:
belugas@6506:
belugas@6510: - m6 bits 7..6 : Possibility of a bridge above, in the direction specified
belugas@6510: - m6 bits 1..0 : Tropic zone definition
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 3 |
belugas@6506: Town building |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6355:
maedhros@6658: - m1 : Random bits (newhouses)
frosch@8953: - m2 : index into the array of towns
maedhros@6658: - m3 bit 7 :
belugas@6355:
maedhros@6658: - set : House is complete
maedhros@6658:
frosch@8953: - m5 : year of house construction (relative to 1920); clamped to 0..255 (1920..2175)
maedhros@6658:
maedhros@6658:
maedhros@6658: - clear : House is in construction
maedhros@6658:
maedhros@6658: - m5 bits 7..5 : free
maedhros@6658: - m5 bits 4..3 : construction stage
maedhros@6658: - m5 bits 2..0 : construction counter
maedhros@6658:
maedhros@6658:
maedhros@6658:
frosch@8953: - m3 bit 6 : bit 8 of house type (m4), allowing 512 different types.
frosch@9177: - m3 bit 5 : bit 6 of current animation frame (see m6)
frosch@8953: - m3 bits 4..0 : triggers activated (newhouses)
maedhros@6658: - m4 : town building type (with m3[6] bit)
maedhros@6658: - m5 : see m3 bit 7
maedhros@6658: - m6 :
maedhros@6658:
maedhros@6658: - If newhouses is activated
maedhros@6658:
frosch@9177: - bits 7..2 : Current animation frame (bits 5..0); bit 6 in m3
maedhros@6658:
maedhros@6658:
maedhros@6658: - Standard behaviour
maedhros@6658:
maedhros@6658: - bits 7..2 : lift position (for houses type 04 and 05)
maedhros@6658:
maedhros@6658:
maedhros@6658: - bits 1..0 : tropic zone specifier
belugas@6355:
belugas@6355:
maedhros@6658: - m7 :
maedhros@6658:
maedhros@6658: - If newhouses is activated
maedhros@6658:
maedhros@6658: - Periodic processing time remaining
maedhros@6658:
maedhros@6658:
maedhros@6658: - Standard behaviour (only for houses type 04 and 05)
maedhros@6658:
maedhros@6658: - bits 7..4 : free
maedhros@6658: - bits 3..1 : lift destination. Values can be 0..6, except 1.
maedhros@6658: So the building has 6 effective floors. This is due to the fact that the first floor is 2 'normal' floors high.
maedhros@6658: One 'normal' floor has a height of 6 lift positions.
maedhros@6658:
maedhros@6658: - bit 0 : Lift has destination when set
maedhros@6658:
maedhros@6658:
maedhros@6658:
maedhros@6658:
belugas@6355:
maedhros@6658: Newhouses is the name englobing a newGRF feature developped by TTDPatch devs (mainly Csaboka).
maedhros@6658: It allows the replacement of the properties as well as the graphics of houses in the game.
maedhros@6658: To distinguish between the standard behaviour and the newGRF one, HouseID (m4 + m3[6]) is tested for anything above 110.
maedhros@6658: 110 is the count of standard houses. So above 110 means there is a new definition of at least one house
belugas@6355: |
belugas@6355:
belugas@6355:
belugas@6506:
belugas@6506: 4 |
belugas@6506: Trees |
belugas@6506:
belugas@6355:
belugas@6506: |
belugas@6506:
belugas@6355:
belugas@6510: - m1: owner (normally 10)
frosch@8953: - m2 bits 7..6: ground density
frosch@8953:
- m2 bits 5..4: ground
belugas@6510:
belugas@6506:
belugas@6510:
frosch@8955: 0 |
frosch@8955: on grass |
belugas@6510:
belugas@6506:
belugas@6510:
frosch@8955: 1 |
frosch@8955: on rough land (density must be 3) |
belugas@6510:
belugas@6510:
belugas@6510:
frosch@8955: 2 |
frosch@8955: on snow or desert |
frosch@8955:
frosch@8955:
frosch@8955:
frosch@8955: 3 |
frosch@8955: on shore (density must be 3) |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: - m2 bits 3..0: update counter, incremented on every periodic processing.
belugas@6510: on wraparound the growth status is updated (or, if it's 3, a random action is taken)
belugas@6510: - m3 bits 7..0: type of trees:
belugas@6510:
belugas@6510:
belugas@6510: 00..0B |
belugas@6510: temperate climate trees |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 0C..13 |
belugas@6510: sub-arctic climate trees |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 14..1A |
belugas@6510: rainforest trees |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 1B |
belugas@6510: cactus plants |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 1C..1F |
belugas@6510: sub-tropical climate, non-rainforest, non-desert trees |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 20..28 |
belugas@6510: toyland trees |
belugas@6510:
belugas@6510:
belugas@6510: Note: the actually displayed set of trees depends on both type and number of trees
belugas@6510:
belugas@6510: - m4 bits 7..5: type of hedge on the SW border of the tile (1 through 6, or 0=none)
belugas@6510: - m4 bits 4..2: type of hedge on the SE border of the tile (1 through 6, or 0=none)
belugas@6510: - m5 bits 7..6: number of trees minus one
belugas@6510: - m5 bits 2..0: growth status:
belugas@6510:
belugas@6510:
belugas@6510: 0..2 |
belugas@6510: one of trees is growing |
belugas@6510:
belugas@6510:
belugas@6510: 3 |
belugas@6510: all trees are fully grown |
belugas@6510:
belugas@6510:
belugas@6510: 4..6 |
belugas@6510: one of trees is withering |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: - m6 bits 1..0 : Tropic zone definition
belugas@6355:
belugas@6355: |
belugas@6355:
belugas@6355:
belugas@6506:
belugas@6506: 5 |
belugas@6506: Station tiles |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506: - m1: owner of the station
belugas@6506: - m2: index into the array of stations
belugas@6506: - m3 bits 7..4: persistent random data for newstations
frosch@8953: - m3 bits 3..0: track type for railway stations
frosch@8953: - m3 bits 2..0: present road types for road stops
peter1138@8967: - m3 bits 1..0: water class for buoys and water part of docks
belugas@6506: - m4: custom station id; 0 means standard graphics
rubidium@7768: - m5: graphics index (range from 0..255 for each station type):
belugas@6506:
belugas@6506:
belugas@6506: 00..07 |
belugas@6506: railway station
belugas@6506:
belugas@6506:
belugas@6506: 00..01 |
belugas@6506: open platform |
belugas@6506:
belugas@6506:
belugas@6506: 02..03 |
belugas@6506: open platform with station building |
belugas@6506:
belugas@6506:
belugas@6506: 04....07 |
belugas@6506: roofed platform |
belugas@6506:
belugas@6506:
belugas@6506: bit 0: clear = in X direction, set = in Y direction |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
rubidium@7768: 00..8F |
rubidium@7768: all airports |
belugas@6506:
belugas@6355:
belugas@6506:
frosch@8953: 00..05 |
frosch@8953: road stops:
belugas@6506:
belugas@6506:
rubidium@7768: 00 |
frosch@8953: exit towards NE |
belugas@6506:
belugas@6506:
rubidium@7768: 01 |
frosch@8953: exit towards SE |
belugas@6506:
belugas@6506:
rubidium@7768: 02 |
frosch@8953: exit towards SW |
belugas@6506:
belugas@6506:
rubidium@7768: 03 |
frosch@8953: exit towards NW |
frosch@8953:
frosch@8953:
frosch@8953: 04 |
frosch@8953: drive through X |
frosch@8953:
frosch@8953:
frosch@8953: 05 |
frosch@8953: drive through Y |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
pasky@464:
belugas@6506:
rubidium@7768: 00..05 |
belugas@6506: ship dock
belugas@6506:
belugas@6506:
rubidium@7768: 00 |
belugas@6506: SW coast part |
belugas@6506:
belugas@6506:
rubidium@7768: 01 |
belugas@6506: NW coast part |
belugas@6506:
belugas@6506:
rubidium@7768: 02 |
belugas@6506: NE coast part |
belugas@6506:
belugas@6506:
rubidium@7768: 03 |
belugas@6506: SE coast part |
belugas@6506:
belugas@6506:
rubidium@7768: 04 |
belugas@6506: X direction water part |
belugas@6506:
belugas@6506:
rubidium@7768: 05 |
belugas@6506: Y direction water part |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6355:
belugas@6355:
frosch@8953: - m6 bits 5..3: the station type (rail, airport, truck, bus, oilrig, dock, buoy)
rubidium@7768: - m6 bit 2: 1 when a drive through road stop is built over a town owned road, otherwise 0
belugas@6510: - m6 bits 1..0 : Tropic zone definition
peter1138@10214: - m7: animation frame
belugas@6355:
belugas@6355: |
belugas@6355:
pasky@464:
belugas@6506:
belugas@6506: 6 |
belugas@6506: Water |
belugas@6506:
belugas@6355:
belugas@6506: |
belugas@6506:
belugas@6506:
frosch@8953: - m1: owner (for sea, rivers, and coasts normally 11)
peter1138@8967: - m3 bits 1..0 : Water class (sea, canal or river)
frosch@8953:
- m4: Random data for canal or river tiles
belugas@6506: - m5: tile type:
belugas@6506:
belugas@6506:
belugas@6506: 00 |
peter1138@8967: water, canal or river |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 01 |
belugas@6506: coast or riverbank |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 10..1B |
belugas@6506: canal locks
belugas@6506:
belugas@6506:
belugas@6506: 10 |
belugas@6506: middle part, (SW-NE direction) |
belugas@6506:
belugas@6506:
belugas@6506: 11 |
belugas@6506: middle part, (NW-SE direction) |
belugas@6506:
belugas@6506:
belugas@6506: 12 |
belugas@6506: middle part, (NE-SW direction) |
belugas@6506:
belugas@6506:
belugas@6506: 13 |
belugas@6506: middle part, (SE-NW direction) |
belugas@6506:
belugas@6506:
belugas@6506: 14 |
belugas@6506: lower part, (SW-NE direction) |
belugas@6506:
belugas@6506:
belugas@6506: 15 |
belugas@6506: lower part, (NW-SE direction) |
belugas@6506:
belugas@6506:
belugas@6506: 16 |
belugas@6506: lower part, (NE-SW direction) |
belugas@6506:
belugas@6506:
belugas@6506: 17 |
belugas@6506: lower part, (SE-NW direction) |
belugas@6506:
belugas@6506:
belugas@6506: 18 |
belugas@6506: upper part, (SW-NE direction) |
belugas@6506:
belugas@6506:
belugas@6506: 19 |
belugas@6506: upper part, (NW-SE direction) |
belugas@6506:
belugas@6506:
belugas@6506: 1A |
belugas@6506: upper part, (NE-SW direction) |
belugas@6506:
belugas@6506:
belugas@6506: 1B |
belugas@6506: upper part, (SE-NW direction) |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 80..83 |
belugas@6506: ship depots
belugas@6506:
belugas@6506:
belugas@6506: 80 |
belugas@6506: ship depot, NE part (X direction) |
belugas@6506:
belugas@6506:
belugas@6506: 81 |
belugas@6506: ship depot, SW part (X direction) |
belugas@6506:
belugas@6506:
belugas@6506: 82 |
belugas@6506: ship depot, NW part (Y direction) |
belugas@6506:
belugas@6506:
belugas@6506: 83 |
belugas@6506: ship depot, SE part (Y direction) |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6510: - m6 bits 7..6 : Possibility of a bridge above, in the direction specified
belugas@6510: - m6 bits 1..0 : Tropic zone definition
belugas@6506:
belugas@6355: |
belugas@6355:
pasky@464:
belugas@6506:
belugas@6506: 7 |
belugas@6506: Void |
belugas@6506:
belugas@6355:
belugas@6506: |
belugas@6506: Tiles of this class form an invisible, one tile wide border at the south (bottom) edges of the map,
belugas@6506: so as to protect several algorithms from the consequences of a wraparound at the edges.
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 8 |
belugas@6506: Industry tile |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6355:
belugas@6355: - m1 bit 7: clear = under construction
belugas@6355:
frosch@8953: - m1 bits 3..2: construction counter, for buildings under construction incremented on every periodic tile processing
belugas@6355: - m1 bits 1..0: stage of construction (3 = completed), incremented when the construction counter wraps around
belugas@6355: the meaning is different for some animated tiles which are never under construction (types 01, 1E..20, 30, 58; see above)
belugas@6355:
belugas@6355:
belugas@6506: - m2: index into the array of industries
frosch@8953: - m3: animation state
frosch@8953: - m4: animation loop
rubidium@8117: - m5: type (plus m6 bit 2):
belugas@6506: (note: this is not the same as the industry type, which is stored in the array of industries)
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 00..06 |
belugas@6506: coal mine
belugas@6506:
belugas@6506:
belugas@6506: 00 |
belugas@6506: wheel tower when not animated |
belugas@6506:
belugas@6506:
belugas@6506: 01 |
belugas@6506: wheel tower when animated
belugas@6506: animation state in m3 bits 5..0; m3 bit 6 set = sound already generated |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 07..0A |
belugas@6506: power station
belugas@6506:
belugas@6506:
belugas@6506: 08 |
belugas@6506: chimney |
belugas@6506:
belugas@6506:
belugas@6506: 0A |
belugas@6506: transformer; animation progress in m3(valid range 0..7) |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 0B..0F |
belugas@6506: sawmill |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 10..11 |
belugas@6506: forest
belugas@6506:
belugas@6506:
belugas@6506: 11 |
belugas@6506: trees cut down |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 12..17 |
belugas@6506: oil refinery |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 18..1C |
belugas@6506: oil rig |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 1D..20 |
belugas@6506: oil wells
belugas@6506:
belugas@6506:
belugas@6506: 1D |
belugas@6506: not animated |
belugas@6506:
belugas@6506:
belugas@6506: 1E..20 |
belugas@6506: various stages of animation; progress of animation in m3 |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 21..26 |
belugas@6506: farm |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 27..2A |
belugas@6506: factory (temperate climate) |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 2B..2E |
belugas@6506: printing works |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 2F..33 |
belugas@6506: copper ore mine
belugas@6506:
belugas@6506:
belugas@6506: 2F |
belugas@6506: wheel tower when not animated |
belugas@6506:
belugas@6506:
belugas@6506: 30 |
belugas@6506: wheel tower when animated; animation state in m3 bits 5..0; m3 bit 6 set = sound already generated |
belugas@6506:
belugas@6506:
belugas@6506: 31 |
belugas@6506: chimney |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 34..39 |
belugas@6506: steel mill |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 3A..3B |
belugas@6506: bank (temperate climate) |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 3C..3F |
belugas@6506: food processing plant |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 40..47 |
belugas@6506: paper mill |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 48..58 |
belugas@6506: gold mine
belugas@6506:
belugas@6506:
belugas@6506: 4F |
belugas@6506: wheel tower when not animated |
belugas@6506:
belugas@6506:
belugas@6506: 58 |
belugas@6506: wheel tower when animated; animation state in m3 bits 5..0; m3 bit 6 set = sound already generated |
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 59..5A |
belugas@6506: bank (sub-arctic or sub-tropical climate) |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 5B..63 |
belugas@6506: diamond mine |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 64..73 |
belugas@6506: iron ore mine |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 74 |
belugas@6506: fruit plantation |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 75 |
belugas@6506: rubber plantation |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 76..77 |
belugas@6506: water supply |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 78 |
belugas@6506: water tower |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 79..7C |
belugas@6506: factory (sub-tropical climate) |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 7D..80 |
belugas@6506: lumber mill |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 81..82 |
belugas@6506: candyfloss forest
belugas@6506:
belugas@6506:
belugas@6506: 82 |
belugas@6506: candyfloss 'trees' cut down |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 83..86 |
belugas@6506: sweet factory |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 87..88 |
belugas@6506: battery farm
belugas@6506:
belugas@6506:
belugas@6506: 88 |
belugas@6506: batteries 'reaped' |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 89 |
belugas@6506: cola wells |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 8A..8D |
belugas@6506: toy shop |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 8E..93 |
belugas@6506: toy factory
belugas@6506:
belugas@6506:
belugas@6506: 8F |
belugas@6506: Animated part; animation state in m3 (valid range 00..31)
belugas@6506: Tile animation is started (m4 zeroed) on the periodic processing.
belugas@6506: While the animation is in progress, m4 holds the number
belugas@6506: of animation cycles that have already taken place.
belugas@6506: when this number reaches 8 the animation is stopped. |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 94..9B |
belugas@6506: plastic fountains (various stages of cyclic animation) |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 9C..9F |
belugas@6506: fizzy drink factory |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: A0..A3 |
belugas@6506: bubble generator
belugas@6506:
belugas@6506:
belugas@6506: A1 |
belugas@6506: generators |
belugas@6506:
belugas@6506:
belugas@6506: A2 |
belugas@6506: bubble capture facility; animation state in m3 (valid range 00..27) |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: A4..A6 |
belugas@6506: toffee quarry
belugas@6506:
belugas@6506:
belugas@6506: A5 |
belugas@6506: animated part; animation state in m3 (valid range 00..45) |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: A7..AE |
belugas@6506: sugar mine
belugas@6506:
belugas@6506:
belugas@6506: AE |
belugas@6506: animated part; animation state in m3 (valid range 00..5F) |
belugas@6506:
belugas@6506:
belugas@6506: |
belugas@6506:
rubidium@8117:
rubidium@8117: AF..1FF |
rubidium@8117: NewGRF industries industry |
rubidium@8117:
belugas@6506:
belugas@6506:
frosch@8953: - m6 bits 5..3: random triggers (NewGRF)
frosch@8953: - m6 bit 2: bit 8 of type (see m5)
belugas@6510: - m6 bits 1..0 : Tropic zone definition
rubidium@8117: - m7: random bits (NewGRF)
belugas@6355:
belugas@6355: |
belugas@6355:
belugas@6355:
belugas@6506:
belugas@6506: 9 |
belugas@6506: Tunnel / bridge |
belugas@6506:
belugas@6355:
belugas@6510: |
belugas@6510:
belugas@6510:
frosch@8953: - m1: owner
frosch@8953: - m2 bits 7..4: see bridge ramp
frosch@8953: - m3 bits 3..0: track type for railway
frosch@8953: - m3 bits 2..0: present road types for road
frosch@8953: - m4 bit 7 set = on snow or desert
frosch@8953: - m5 bits 7 clear: tunnel entrance/exit
belugas@6510: - m5 bit 7 set: bridge ramp
belugas@6510:
belugas@6510: - m2 bits 7..4: bridge type:
belugas@6510:
belugas@6510:
belugas@6510: Type |
belugas@6510: Max. speed (mph) |
belugas@6510: Description |
belugas@6510:
belugas@6506:
belugas@6510:
belugas@6510: 0 |
belugas@6510: 20 |
belugas@6510: wooden |
belugas@6510:
belugas@6506:
belugas@6510:
belugas@6510: 1 |
belugas@6510: 30 |
belugas@6510: concrete |
belugas@6510:
belugas@6506:
belugas@6510:
belugas@6510: 2 |
belugas@6510: 40 |
belugas@6510: girder, steel |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 3 |
belugas@6510: 50 |
belugas@6510: suspension, concrete |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 4 |
belugas@6510: 60 |
belugas@6510: suspension, steel |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 5 |
belugas@6510: 70 |
belugas@6510: suspension, steel |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 6 |
belugas@6510: 100 |
belugas@6510: cantilever, steel |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 7 |
belugas@6510: 130 |
belugas@6510: cantilever, steel |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 8 |
belugas@6510: 150 |
belugas@6510: cantilever, steel |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: 9 |
belugas@6510: 160 |
belugas@6510: girder, steel |
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510: A |
belugas@6510: 200 |
belugas@6510: tubular, steel |
belugas@6510:
frosch@8953:
frosch@8953:
frosch@8953: B |
frosch@8953: 320 |
frosch@8953: tubular, steel |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: C |
frosch@8953: 380 |
frosch@8953: tubular, silicon |
frosch@8953:
belugas@6510:
belugas@6510:
belugas@6510:
belugas@6510:
frosch@8953: - m5 bits 3..2: transport type
frosch@8953:
frosch@8953:
frosch@8953: 0 |
frosch@8953: railway |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 1 |
frosch@8953: road |
frosch@8953:
frosch@8953:
frosch@8953: - m5 bits 1..0: direction onto the bridge / out of the tunnel
frosch@8953:
frosch@8953:
frosch@8953: 0 |
frosch@8953: NE |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 1 |
frosch@8953: SE |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 2 |
frosch@8953: SW |
frosch@8953:
frosch@8953:
frosch@8953:
frosch@8953: 3 |
frosch@8953: NW |
frosch@8953:
frosch@8953:
frosch@8953:
belugas@6510: - m6 bits 7..6 : Possibility of a bridge above, in the direction specified
belugas@6510: - m6 bits 1..0 : Tropic zone definition
belugas@6355:
belugas@6355:
belugas@6355:
belugas@6355:
belugas@6506:
belugas@6506: A |
belugas@6506: Unmovables |
belugas@6506:
belugas@6355:
belugas@6506: |
belugas@6355:
belugas@6355:
frosch@8953: - m1: owner of the object (for lighthouses and transmitters normally 10)
frosch@8953: - m2: see company statue
frosch@8953:
- m5: tile type:
belugas@6355:
belugas@6506:
belugas@6506: 00 |
belugas@6506: transmitter |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 01 |
belugas@6506: lighthouse |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 02 |
frosch@8953: company statue
frosch@8953:
frosch@8953: - m2: TownID on which the statue is built in
frosch@8953:
frosch@8953: |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 03 |
belugas@6506: company-owned land |
belugas@6506:
belugas@6506:
belugas@6506:
belugas@6506: 80..93 |
belugas@6506: company headquarters (5 sets of 4 tiles each, updated quarterly depending on the company performance) |
belugas@6506:
belugas@6355:
belugas@6355:
belugas@6510: - m6 bits 7..6 : Possibility of a bridge above, in the direction specified
belugas@6510: - m6 bits 1..0 : Tropic zone definition
belugas@6355:
belugas@6355: |
belugas@6355:
belugas@6506:
belugas@6506: Classes B through F are reserved. The presence
belugas@6506: of a tile in one of the reserved classes will crash OTTD. |
belugas@6506:
belugas@6355:
pasky@464:
pasky@464:
belugas@6355:
belugas@6355: Original Copyright © 2003 by Marcin Grzegorczyk for TTDLX.
belugas@6355: Transport Tycoon and Transport Tycoon Deluxe are Copyright © by Chris Sawyer.
belugas@6355: All the other trademarks are the property of their respective owners.
belugas@6355:
pasky@464:
pasky@464:
|