Difference between revisions of "Main Page"
From GRFSpecs
Jump to navigationJump to searchFrosch-bot (talk | contribs)  (order feature tables the same)  | 
				 (Add link to stub GRFv9 page)  | 
				||
| (31 intermediate revisions by 8 users not shown) | |||
| Line 1: | Line 1: | ||
== Sprite types ==  | 
  == Sprite types ==  | 
||
| − | ;[[Action0]] - Defines new   | 
  + | ;[[Action0]] - Defines new properties for anything added or changed by the NewGRF  | 
:{| |-  | 
  :{| |-  | 
||
| + | |rowspan="5" align="center" style="width:3em"|'''0'''  | 
||
| [[Action0/Vehicles | Vehicles]]  | 
  | [[Action0/Vehicles | Vehicles]]  | 
||
| [[Action0/Vehicles/Trains | Trains]]  | 
  | [[Action0/Vehicles/Trains | Trains]]  | 
||
| Line 9: | Line 10: | ||
|-  | 
  |-  | 
||
| [[Action0/Stations | Stations]]  | 
  | [[Action0/Stations | Stations]]  | 
||
| − | | [[Action0/Canals | Canals]]  | 
  + | | [[Action0/Canals | Canals & Rivers]]  | 
| [[Action0/Bridges | Bridges]]  | 
  | [[Action0/Bridges | Bridges]]  | 
||
| [[Action0/Houses | Houses]]  | 
  | [[Action0/Houses | Houses]]  | 
||
| − | | [[Action0/Global   | 
  + | | [[Action0/Global Settings | Global Settings]]  | 
|-  | 
  |-  | 
||
| [[Action0/Industry Tiles | Industry Tiles]]  | 
  | [[Action0/Industry Tiles | Industry Tiles]]  | 
||
| Line 24: | Line 25: | ||
| [[Action0/Railtypes | Railtypes]]  | 
  | [[Action0/Railtypes | Railtypes]]  | 
||
| [[Action0/Airport Tiles | Airport Tiles]]  | 
  | [[Action0/Airport Tiles | Airport Tiles]]  | 
||
| + | | [[Action0/Roadtypes | Roadtypes]]  | 
||
| + | |-  | 
||
| + | | [[Action0/Tramtypes | Tramtypes]]  | 
||
| + | | [[Action0/Road Stops| Road Stops]]  | 
||
| + | | [[Action0/Badges | Badges]]  | 
||
| ''Towns''  | 
  | ''Towns''  | 
||
| + | |  | 
||
|}  | 
  |}  | 
||
| − | ;[[Action1]] - Defines   | 
  + | ;[[Action1]] - Defines one or more graphics sets  | 
;[[Action2]] - Defines graphics set IDs  | 
  ;[[Action2]] - Defines graphics set IDs  | 
||
* Basic Action2  | 
  * Basic Action2  | 
||
:{| |-  | 
  :{| |-  | 
||
| + | |rowspan="5" align="center" style="width:3em"|'''2'''  | 
||
| ⚫ | |||
| + | |colspan=5| [[Action2/Vehicles | Vehicles]]  | 
||
|-  | 
  |-  | 
||
| − | | [[  | 
  + | | [[Action2/Stations | Stations]]  | 
| − | | [[  | 
  + | | [[Action2/Single Set | Canals & Rivers]]  | 
| ''Bridges''  | 
  | ''Bridges''  | 
||
| − | | [[  | 
  + | | [[Action2/Sprite Layout | Houses]]  | 
| − | | ''Global   | 
  + | | ''Global Settings''  | 
|-  | 
  |-  | 
||
| − | | [[  | 
  + | | [[Action2/Sprite Layout | Industry Tiles]]  | 
| − | | [[  | 
  + | | [[Action2/Industries | Industries]]  | 
| − | | [[  | 
  + | | [[Action2/Single Set | Cargos]]  | 
| − | |   | 
  + | | [[Action2/Only Callback Failure | Sound Effects]]  | 
| − | | [[  | 
  + | | [[Action2/Single Set | Airports]]  | 
|-  | 
  |-  | 
||
| + | | [[Action2/Only Callback Failure | Signals]]  | 
||
| ⚫ | |||
| − | | [[  | 
  + | | [[Action2/Sprite Layout | Objects]]  | 
| − | | [[  | 
  + | | [[Action2/Single Set | Railtypes]]  | 
| − | | [[  | 
  + | | [[Action2/Sprite Layout | Airport Tiles]]  | 
| + | | [[Action2/Single Set | Roadtypes]]  | 
||
| + | |-  | 
||
| + | | [[Action2/Single Set | Tramtypes]]  | 
||
| + | | [[Action2/Sprite Layout | Road Stops]]  | 
||
| + | | [[Action2/Single Set | Badges]]  | 
||
| ''Towns''  | 
  | ''Towns''  | 
||
| + | |  | 
||
|}  | 
  |}  | 
||
| − | * [[VariationalAction2]] -   | 
  + | * [[VariationalAction2]] - A conditional switch that determines a [[Callbacks|callback]] result or chains to another Action 2  | 
: [[VarAction2Advanced]] - Advanced features of Variational Action 2  | 
  : [[VarAction2Advanced]] - Advanced features of Variational Action 2  | 
||
| + | : [[GlobalVariables | Global Variables]]  | 
||
:{| |-  | 
  :{| |-  | 
||
| + | |rowspan="5" align="center" style="width:3em"|'''VA2'''  | 
||
|colspan=5| [[VariationalAction2/Vehicles | Vehicles]]  | 
  |colspan=5| [[VariationalAction2/Vehicles | Vehicles]]  | 
||
|-  | 
  |-  | 
||
| [[VariationalAction2/Stations | Stations]]  | 
  | [[VariationalAction2/Stations | Stations]]  | 
||
| − | | [[VariationalAction2/Canals | Canals]]  | 
  + | | [[VariationalAction2/Canals | Canals & Rivers]]  | 
| [[VariationalAction2/Bridges | Bridges]]  | 
  | [[VariationalAction2/Bridges | Bridges]]  | 
||
| [[VariationalAction2/Houses | Houses]]  | 
  | [[VariationalAction2/Houses | Houses]]  | 
||
| − | | ''Global   | 
  + | | ''Global Settings''  | 
|-  | 
  |-  | 
||
| [[VariationalAction2/Industry Tiles | Industry Tiles]]  | 
  | [[VariationalAction2/Industry Tiles | Industry Tiles]]  | 
||
| Line 65: | Line 81: | ||
| [[VariationalAction2/Cargos | Cargos]]  | 
  | [[VariationalAction2/Cargos | Cargos]]  | 
||
| ''Sound Effects''  | 
  | ''Sound Effects''  | 
||
| − | |   | 
  + | | [[VariationalAction2/Airports | Airports]]  | 
|-  | 
  |-  | 
||
| [[VariationalAction2/Signals | Signals]]  | 
  | [[VariationalAction2/Signals | Signals]]  | 
||
| [[VariationalAction2/Objects | Objects]]  | 
  | [[VariationalAction2/Objects | Objects]]  | 
||
| [[VariationalAction2/Railtypes | Railtypes]]  | 
  | [[VariationalAction2/Railtypes | Railtypes]]  | 
||
| − | | [[VariationalAction2/  | 
  + | | [[VariationalAction2/Airport Tiles | Airport Tiles]]  | 
| + | | [[VariationalAction2/Roadtypes | Roadtypes]]  | 
||
| + | |-  | 
||
| + | | [[VariationalAction2/Tramtypes | Tramtypes]]  | 
||
| + | | [[VariationalAction2/Road Stops | Road Stops]]  | 
||
| + | | [[VariationalAction2/Badges | Badges]]  | 
||
| [[VariationalAction2/Towns | Towns]]  | 
  | [[VariationalAction2/Towns | Towns]]  | 
||
| + | |  | 
||
|}  | 
  |}  | 
||
| − | * [[RandomAction2]] -   | 
  + | * [[RandomAction2]] - A randomized Variational Action 2  | 
| + | :{| |-  | 
||
| + | |rowspan="5" align="center" style="width:3em"|'''R'''  | 
||
| + | |colspan=5| [[RandomAction2#Vehicles | Vehicles]]  | 
||
| + | |-  | 
||
| + | | [[RandomAction2#Stations | Stations]]  | 
||
| + | | [[RandomAction2#Canals | Canals & Rivers]]  | 
||
| + | | ''Bridges''  | 
||
| + | | [[RandomAction2#Town_building_triggers | Houses]]  | 
||
| + | | ''Global Settings''  | 
||
| + | |-  | 
||
| + | | [[RandomAction2#Industry_tile_triggers | Industry Tiles]]  | 
||
| + | | [[RandomAction2#Industry_tile_triggers | Industries]]  | 
||
| + | | ''Cargos''  | 
||
| + | | ''Sound Effects''  | 
||
| + | | [[RandomAction2#Stations | Airports]]  | 
||
| + | |-  | 
||
| ⚫ | |||
| + | | [[RandomAction2#Objects | Objects]]  | 
||
| + | | [[RandomAction2#Rail_types | Railtypes]]  | 
||
| + | | [[RandomAction2#Stations | Airport Tiles]]  | 
||
| + | | [[RandomAction2#Road_types | Roadtypes]]  | 
||
| + | |-  | 
||
| + | | [[RandomAction2#Tram_types | Tramtypes]]  | 
||
| + | | [[RandomAction2#Road_stops | Road Stops]]  | 
||
| + | | ''Badges''  | 
||
| + | | ''Towns''  | 
||
| + | |  | 
||
| + | |}  | 
||
| + | |||
* [[Callbacks]] - List of available callbacks  | 
  * [[Callbacks]] - List of available callbacks  | 
||
| + | |||
| − | ;[[Action3]] - Associates   | 
  + | ;[[Action3]] - Associates Action 2s with an Action 0  | 
| + | :{| |-  | 
||
| + | |rowspan="5" align="center" style="width:3em"|'''3'''  | 
||
| ⚫ | |||
| + | |-  | 
||
| + | | [[Action3 | Stations]]  | 
||
| + | | [[Action3/Canals | Canals & Rivers]]  | 
||
| + | | ''Bridges''  | 
||
| + | | [[Action3 | Houses]]  | 
||
| + | | ''Global Settings''  | 
||
| + | |-  | 
||
| + | | [[Action3 | Industry Tiles]]  | 
||
| + | | [[Action3 | Industries]]  | 
||
| + | | [[Action3 | Cargos]]  | 
||
| + | | [[Action3 | Sound Effects]]  | 
||
| + | | [[Action3 | Airports]]  | 
||
| + | |-  | 
||
| + | | [[Action3 | Signals]]  | 
||
| + | | [[Action3 | Objects]]  | 
||
| + | | [[Action3/Railtypes | Railtypes]]  | 
||
| + | | [[Action3 | Airport Tiles]]  | 
||
| + | | [[Action3/Roadtypes | Roadtypes]]  | 
||
| + | |-  | 
||
| + | | [[Action3/Tramtypes | Tramtypes]]  | 
||
| + | | [[Action3 | Road Stops]]  | 
||
| + | | [[Action3/Badges | Badges]]  | 
||
| + | | ''Towns''  | 
||
| + | |  | 
||
| + | |}  | 
||
: [[Action3LiveryOverride]] - Change wagon livery to match the engine  | 
  : [[Action3LiveryOverride]] - Change wagon livery to match the engine  | 
||
;[[Action4]] - Defines text strings  | 
  ;[[Action4]] - Defines text strings  | 
||
| − | ;[[Action5]] -   | 
  + | ;[[Action5]] - Replaces base set sprites not present in the original TTD.  | 
;[[Action6]] - Modifies the contents of the following sprite  | 
  ;[[Action6]] - Modifies the contents of the following sprite  | 
||
;[[Action7]] - Conditionally skips sprites or jumps to a label  | 
  ;[[Action7]] - Conditionally skips sprites or jumps to a label  | 
||
| Line 86: | Line 166: | ||
;[[ActionA]] - Replaces TTD base set sprites  | 
  ;[[ActionA]] - Replaces TTD base set sprites  | 
||
;[[ActionB]] - Generates an error message  | 
  ;[[ActionB]] - Generates an error message  | 
||
| − | ;[[ActionC]] - Does nothing  | 
  + | ;[[ActionC]] - Does nothing (can be used to embed comments)  | 
;[[ActionD]] - Assigns parameters and calculates results  | 
  ;[[ActionD]] - Assigns parameters and calculates results  | 
||
* [[ReadingOtherGRFParameters]] - Reading another GRF file's parameters  | 
  * [[ReadingOtherGRFParameters]] - Reading another GRF file's parameters  | 
||
| Line 93: | Line 173: | ||
;[[ActionE]] - Deactivates a NewGRF file  | 
  ;[[ActionE]] - Deactivates a NewGRF file  | 
||
;[[ActionF]] - Defines new town name styles  | 
  ;[[ActionF]] - Defines new town name styles  | 
||
| − | ;[[Action10]] - Defines   | 
  + | ;[[Action10]] - Defines a label for action 7/9  | 
| − | ;[[Action11]] - Defines new   | 
  + | ;[[Action11]] - Defines new sounds  | 
| − | ;[[Action12]] -   | 
  + | ;[[Action12]] - Adds Unicode font glyphs  | 
;[[Action13]] - Translates GRF-specific strings  | 
  ;[[Action13]] - Translates GRF-specific strings  | 
||
| − | ;[[Action14]] - Static NewGRF   | 
  + | ;[[Action14]] - Static NewGRF information (OpenTTD only)  | 
| − | ;[[RealSprites]] - Sprites that actually   | 
  + | ;[[RealSprites]] - Sprites that actually are drawn on the screen  | 
| − | ;[[RecolorSprites]] - Changing  | 
  + | ;[[RecolorSprites]] - Changing other sprites' colors  | 
== Graphics properties ==  | 
  == Graphics properties ==  | 
||
| Line 109: | Line 189: | ||
* [[IndustryTileDefaultProps]] - Default property values for TTD's industry tiles  | 
  * [[IndustryTileDefaultProps]] - Default property values for TTD's industry tiles  | 
||
* [[IndustryDefaultProps]] - Default properties values for TTD's industries  | 
  * [[IndustryDefaultProps]] - Default properties values for TTD's industries  | 
||
| − | * [[IndustryTypes]] - Industry IDs  | 
  ||
* [[CargoDefaultProps]] - Default property values for TTD's cargo types  | 
  * [[CargoDefaultProps]] - Default property values for TTD's cargo types  | 
||
* [[VehicleIDs]] - Default vehicle IDs  | 
  * [[VehicleIDs]] - Default vehicle IDs  | 
||
| + | * [[NML:Default_Vehicle_Properties]] - Default Vehicle Properties (NML)  | 
||
| + | * [[AirportTypes]] - Default Airport IDs  | 
||
| + | * [[AirportTileDefaultProps]] - Default airport tile properties  | 
||
== NewGRF commons ==  | 
  == NewGRF commons ==  | 
||
| Line 117: | Line 199: | ||
* [[CargoTypes | Cargo labels]] - Commonly used cargo labels  | 
  * [[CargoTypes | Cargo labels]] - Commonly used cargo labels  | 
||
* [[ObjectLabels | Object classes]] - Commonly used object clases  | 
  * [[ObjectLabels | Object classes]] - Commonly used object clases  | 
||
| − | * [[  | 
  + | * [[TracktypeLabels | Rail/road/tram type labels]] - Commonly used labels for rail/road/tram types  | 
== Misc ==  | 
  == Misc ==  | 
||
| + | * [[Features]] - List of all features and feature-specific actions.  | 
||
* [[BaseCosts | Base Costs]]  | 
  * [[BaseCosts | Base Costs]]  | 
||
* [[VehicleRefitting | Vehicle Refitting]]  | 
  * [[VehicleRefitting | Vehicle Refitting]]  | 
||
* [[GrfLoadingStages | GRF loading stages]]  | 
  * [[GrfLoadingStages | GRF loading stages]]  | 
||
| + | * [[GlobalVariables | Global variables]]  | 
||
* [[Storages | Storages]]  | 
  * [[Storages | Storages]]  | 
||
* [[StringCodes | String control codes]]  | 
  * [[StringCodes | String control codes]]  | 
||
* [[TextIDs | Text IDs (TTD + TTDPatch + NewGRF defined)]]  | 
  * [[TextIDs | Text IDs (TTD + TTDPatch + NewGRF defined)]]  | 
||
* [[GRFActionsDetailed | Syntax details]]  | 
  * [[GRFActionsDetailed | Syntax details]]  | 
||
| + | * [[Version numbers | Types of version numbers used throughout the specs]]  | 
||
* [[DebuggingGRFCode | Debugging NewGRFs]]  | 
  * [[DebuggingGRFCode | Debugging NewGRFs]]  | 
||
* [[SpriteErrors | TTDPatch error codes on loading NewGRFs]]  | 
  * [[SpriteErrors | TTDPatch error codes on loading NewGRFs]]  | 
||
| + | * [[GRFv9 | GRFv9 Proposals]]  | 
||
| + | * [https://wiki.openttd.org/en/Development/NewGRF/Specification%20Status Specification Status]  | 
||
== Game mechanics ==  | 
  == Game mechanics ==  | 
||
* [[TownZones | Town zones]]  | 
  * [[TownZones | Town zones]]  | 
||
| + | * [[NMLMain | NML]]  | 
||
Latest revision as of 20:19, 4 June 2025
Sprite types
- Action0 - Defines new properties for anything added or changed by the NewGRF
 
- Basic Action2
 
2 Vehicles Stations Canals & Rivers Bridges Houses Global Settings Industry Tiles Industries Cargos Sound Effects Airports Signals Objects Railtypes Airport Tiles Roadtypes Tramtypes Road Stops Badges Towns 
- VariationalAction2 - A conditional switch that determines a callback result or chains to another Action 2
 
- VarAction2Advanced - Advanced features of Variational Action 2
 - Global Variables
 
VA2 Vehicles Stations Canals & Rivers Bridges Houses Global Settings Industry Tiles Industries Cargos Sound Effects Airports Signals Objects Railtypes Airport Tiles Roadtypes Tramtypes Road Stops Badges Towns 
- RandomAction2 - A randomized Variational Action 2
 
R Vehicles Stations Canals & Rivers Bridges Houses Global Settings Industry Tiles Industries Cargos Sound Effects Airports Signals Objects Railtypes Airport Tiles Roadtypes Tramtypes Road Stops Badges Towns 
- Callbacks - List of available callbacks
 
- Action3 - Associates Action 2s with an Action 0
 
3 Vehicles Stations Canals & Rivers Bridges Houses Global Settings Industry Tiles Industries Cargos Sound Effects Airports Signals Objects Railtypes Airport Tiles Roadtypes Tramtypes Road Stops Badges Towns 
- Action3LiveryOverride - Change wagon livery to match the engine
 - Action4 - Defines text strings
 - Action5 - Replaces base set sprites not present in the original TTD.
 - Action6 - Modifies the contents of the following sprite
 - Action7 - Conditionally skips sprites or jumps to a label
 - GameConfigFlags - Configuration flags for Action 7/9 Variable 85
 - Action8 - Defines GRFID, Name and Description
 - Action9 - (see action 7 above)
 - ActionA - Replaces TTD base set sprites
 - ActionB - Generates an error message
 - ActionC - Does nothing (can be used to embed comments)
 - ActionD - Assigns parameters and calculates results
 
- ReadingOtherGRFParameters - Reading another GRF file's parameters
 - ReadingGameSettings - Reading game configuration settings
 - GRFResourceManagement - Preventing conflicts with limited resources
 
- ActionE - Deactivates a NewGRF file
 - ActionF - Defines new town name styles
 - Action10 - Defines a label for action 7/9
 - Action11 - Defines new sounds
 - Action12 - Adds Unicode font glyphs
 - Action13 - Translates GRF-specific strings
 - Action14 - Static NewGRF information (OpenTTD only)
 - RealSprites - Sprites that actually are drawn on the screen
 - RecolorSprites - Changing other sprites' colors
 
Graphics properties
- Palettes - Palettes used by the game
 - Coordinates - Coordinates used for sprite alignement
 
TTD defaults
- DefaultHouseProps - Default property values for TTD's houses
 - IndustryTileDefaultProps - Default property values for TTD's industry tiles
 - IndustryDefaultProps - Default properties values for TTD's industries
 - CargoDefaultProps - Default property values for TTD's cargo types
 - VehicleIDs - Default vehicle IDs
 - NML:Default_Vehicle_Properties - Default Vehicle Properties (NML)
 - AirportTypes - Default Airport IDs
 - AirportTileDefaultProps - Default airport tile properties
 
NewGRF commons
- Cargo classes - Commonly used cargo classes
 - Cargo labels - Commonly used cargo labels
 - Object classes - Commonly used object clases
 - Rail/road/tram type labels - Commonly used labels for rail/road/tram types
 
Misc
- Features - List of all features and feature-specific actions.
 - Base Costs
 - Vehicle Refitting
 - GRF loading stages
 - Global variables
 - Storages
 - String control codes
 - Text IDs (TTD + TTDPatch + NewGRF defined)
 - Syntax details
 - Types of version numbers used throughout the specs
 - Debugging NewGRFs
 - TTDPatch error codes on loading NewGRFs
 - GRFv9 Proposals
 - Specification Status