<h2>NewGRF New Landscape Addition to NewGRF Specifications in JGR's Patchpack</h2>
<p>This document describes the non-standard addition of the NewGRF new landscape feature to the <ahref="https://newgrf-specs.tt-wiki.net/wiki/Main_Page">Official OpenTTD NewGRF Specifications</a>, as implemented in this patchpack.</p>
<p>This feature allows NewGRF custom graphics using Action 1/2/3 for landscape tiles. Currently this includes: rock tiles.</p>
<p>This feature may not necessarily match implementations of additional landscape graphics features in other patches, branches, etc.<br/>
This feature as implemented here MAY also be present in other patchpacks.</p>
<p>See the <ahref="newgrf-additions.html">NewGRF additions</a> document for background information on additions to the NewGRF specifications.</p>
<p>The functionality listed below is also supported in a fork of NML, see the associated <ahref="newgrf-newlandscape-nml.html">NML new landscape</a> and <ahref="newgrf-additions-nml.html">NML additions</a> documents for more details.</p>
<p>NewGRFs which use this feature SHOULD use the <ahref="newgrf-additions.html#feature-test">feature testing</a> mechanism to check whether the new landscape feature and/or feature ID mapping is supported.</p>
<p>NewGRFs which use this feature MUST use the <ahref="newgrf-additions.html#feature-id-mapping">feature ID mapping</a> mechanism to map the non-standard NewGRF road stop feature to a local feature ID.</p>
<p>This feature is indicated by the feature name: <fontface="monospace">new_landscape</font>, version 1.<br/>
The feature name to use for feature ID mapping is <fontface="monospace">new_landscape</font>.<br/>
Features/properties/variables which require a higher version will indicate the required version. Unless indicated otherwise these will fall back to doing nothing on versions which do not support them.</p>
<p><h3id="ids">IDs:</h3>
The ID field for Actions 0 and 3 must be set to one of the IDs in the table below (further IDs may be allocated for other purposes in future).
<tr><td><ahref="#newlandscape_land_info_nearby_tiles">60</a></td><td><ahref="#newlandscape_land_info_nearby_tiles">newlandscape_land_info_nearby_tiles</a></td><td>Land info of nearby tiles</td></tr>
</table>
<h4id="newlandscape_terrain_type">Tile terrain type (40, or mappable variable: newlandscape_terrain_type)</h4>
<p>This has the same value as bits 0 - 7 of <ahref="https://newgrf-specs.tt-wiki.net/wiki/VariationalAction2/Objects#Tile_information_.2841.29">object (feature F) variable 41</a>.
<table>
<tr><th>Value</th><th>Meaning</th></tr>
<tr><td>0</td><td>Normal</td></tr>
<tr><td>1</td><td>Desert</td></tr>
<tr><td>2</td><td>Rainforest</td></tr>
<tr><td>4</td><td>On or above snowline</td></tr>
</table>
</p>
<h4id="newlandscape_tile_slope">Tile slope (41, or mappable variable: newlandscape_tile_slope)</h4>
<p>This has the same value as bits 0 - 7 of <ahref="https://newgrf-specs.tt-wiki.net/wiki/VariationalAction2/Industry_Tiles#Land_info_of_nearby_tiles_.2860.29">industry tile (feature 9) variable 60</a> for this tile.</p>
<h4id="newlandscape_tile_height">Tile height (42, or mappable variable: newlandscape_tile_height)</h4>
<p>The height of the lowest corner of the tile (in units of 1).</p>
<h4id="newlandscape_tile_hash">Tile hash (43, or mappable variable: newlandscape_tile_hash)</h4>
<p>Hash value derived from the coordinates of the tile, suitable for pseudo-randomising graphics.</p>
<h4id="roadstop_land_info_nearby_tiles">Land info of nearby tile (60, or mappable variable: newlandscape_land_info_nearby_tiles)</h4>
<p>This has the same value as <ahref="https://newgrf-specs.tt-wiki.net/wiki/VariationalAction2/Industry_Tiles#Land_info_of_nearby_tiles_.2860.29">industry tile (feature 9) variable 60</a>.</p>
<br/>
<h3id="a3roadstops">Action 3 - New Landscape</h3>
<p>See the <ahref="https://newgrf-specs.tt-wiki.net/wiki/Action3">Action 3 Specification</a> for background information.</p>
<p>Note that this is not a generic callback, the sprite group must be assigned to an ID in the <ahref="#ids">IDs table</a>.
<table>
<tr><th>Action 3 ID</th><th>Expected number of sprites</th><th>Landscape type</th></tr>