Difference between revisions of "Main Page"

From GRFSpecs
Jump to navigationJump to search
(Action13 is also supported by OpenTTD, though it is not suitable in multiplayer (unless used as static newgrf))
(Add road stops to feature tables)
 
(35 intermediate revisions by 8 users not shown)
Line 1: Line 1:
 
== Sprite types ==
 
== Sprite types ==
*;[[Action0]] - Defines new graphics feature properties
+
;[[Action0]] - Defines new properties for anything added or changed by the NewGRF
  +
:{| |-
** [[Action0General]] - Action 0 properties common to all vehicle types
 
  +
|rowspan="5" align="center" style="width:3em"|'''0'''
** [[Action0Trains]] - Action 0 properties for trains
 
  +
| [[Action0/Vehicles | Vehicles]]
** [[Action0RoadVehicles]] - Action 0 properties for road vehicles
 
  +
| [[Action0/Vehicles/Trains | Trains]]
** [[Action0Ships]] - Action 0 properties for ships
 
  +
| [[Action0/Vehicles/RoadVehicles | RoadVehicles]]
** [[Action0Planes]] - Action 0 properties for planes
 
  +
| [[Action0/Vehicles/Ships | Ships]]
** [[Action0Stations]] - Action 0 properties for new stations
 
  +
| [[Action0/Vehicles/Planes | Aircraft]]
** [[Action0Canals]] - Action 0 - Properties for canals / rivers
 
  +
|-
** [[Action0Bridges]] - Action 0 properties of bridges
 
  +
| [[Action0/Stations | Stations]]
** [[Action0Houses]] - Action 0 properties of houses
 
  +
| [[Action0/Canals | Canals & Rivers]]
** [[Action0GeneralVariables| Action0GlobalVariables]] - Action 0 properties for global variables
 
  +
| [[Action0/Bridges | Bridges]]
** [[Action0IndustryTiles]] - Action 0 properties for industry tiles
 
  +
| [[Action0/Houses | Houses]]
** [[Action0Industries]] - Action 0 properties for industries
 
  +
| [[Action0/Global Settings | Global Settings]]
** [[Action0Cargos]] - Action 0 properties for cargo types
 
  +
|-
** [[Action0SoundEffects]] - Action 0 properties for new sound effects
 
  +
| [[Action0/Industry Tiles | Industry Tiles]]
** [[Action0Objects]] - Action 0 properties for new objects
 
  +
| [[Action0/Industries | Industries]]
** [[Action0Railtypes]] - Action 0 properties for rail types
 
  +
| [[Action0/Cargos | Cargos]]
** [[Action0AirportTiles]] - Action 0 properties for airport tiles
 
  +
| [[Action0/Sound Effects | Sound Effects]]
** [[Action0Airports]] - Action 0 properties for airports
 
  +
| [[Action0/Airports | Airports]]
*;[[Action1]] - Defines a set of real sprites
 
  +
|-
*;[[Action2]] - Defines graphics set IDs
 
  +
| ''Signals''
** [[Action2Vehicles]] - Defining set-IDs for vehicles
 
  +
| [[Action0/Objects | Objects]]
** [[Action2Stations]] - Defining station set-IDs
 
  +
| [[Action0/Railtypes | Railtypes]]
** [[Action2Canals]] - Defining an action2 for canals
 
  +
| [[Action0/Airport Tiles | Airport Tiles]]
** [[Action2HousesIndustryTiles]] - Defining an action 2 for houses, industry tiles and object
 
  +
| [[Action0/Roadtypes | Roadtypes]]
** [[Action2Industries]] - Defining the industry production callback
 
  +
|-
** [[Action2Cargos]] - Defining set-IDs for cargos
 
  +
| [[Action0/Tramtypes | Tramtypes]]
** [[Action2Objects]] - Action2 for Objects
 
  +
| [[Action0/Road Stops| Road Stops]]
** [[Action2Railtypes]] - Action2 for Railtypes
 
  +
| ''Towns''
** [[VariationalAction2]] - Variational Action 2
 
  +
|
*** [[VarAction2Advanced]] - Advanced features of Variational Action 2
 
  +
|
*** [[VarAction2Vehicles]] - Variational Action 2 Variables for Vehicles
 
  +
|}
*** [[VarAction2Stations]] - Variational Action 2 Variables for Stations
 
  +
;[[Action1]] - Defines one or more graphics sets
*** [[VarAction2 Towns]] - Variational Action 2 Variables for Towns
 
  +
;[[Action2]] - Defines graphics set IDs
*** [[VarAction2Canals]] - Variational Action 2 Variables for Canals
 
  +
* Basic Action2
*** [[VarAction2Bridges]] - Variational Action 2 Variables for Bridges
 
  +
:{| |-
*** [[VarAction2Houses]] - Variational Action 2 Variables for Houses
 
  +
|rowspan="5" align="center" style="width:3em"|'''2'''
*** [[VarAction2IndustryTiles]] - Variational Action 2 Variables for Industry and Airport Tiles
 
  +
|colspan=5| [[Action2/Vehicles | Vehicles]]
*** [[VarAction2Industries]] - Variational Action 2 Variables for Industries
 
  +
|-
*** [[VarAction2Cargos]] - Variational Action 2 Variables for cargos
 
  +
| [[Action2/Stations | Stations]]
*** [[VarAction2NewSignals]] - Variational Action 2 Variables for New Signals
 
  +
| [[Action2/Single Set | Canals & Rivers]]
*** [[VarAction2Objects]] - Variational Action 2 Variables for Objects
 
  +
| ''Bridges''
*** [[VarAction2Railtypes]] - Variational Action 2 for Railtypes
 
  +
| [[Action2/Sprite Layout | Houses]]
*** [[VarAction2IndustryTiles| VarAction2AirportTiles]] - Variational Action 2 Variables for Industry and Airport Tiles
 
  +
| ''Global Settings''
** [[RandomAction2]] - Randomized Action 2
 
  +
|-
** [[Callbacks]] - List of available callbacks
 
  +
| [[Action2/Sprite Layout | Industry Tiles]]
*;[[Action3]] - Associates vehicles with graphics set IDs
 
  +
| [[Action2/Industries | Industries]]
** [[Action3LiveryOverride]] - Change wagon livery to match the engine
 
  +
| [[Action2/Single Set | Cargos]]
*;[[Action4]] - Defines text strings
 
  +
| [[Action2/Only Callback Failure | Sound Effects]]
*;[[Action5]] - Defines specific base graphics sets
 
  +
| [[Action2/Single Set | Airports]]
*;[[Action6]] - Modifies the contents of the following sprite
 
  +
|-
*;[[Action7]] - Conditionally skips sprites or jumps to a label
 
  +
| [[Action2/Only Callback Failure | Signals]]
** [[TTDPatchFlags| GameConfigFlags]] - Configuration flags for Action 7/9 Variable 85
 
  +
| [[Action2/Sprite Layout | Objects]]
*;[[Action8]] - Defines GRFID, Name and Description
 
  +
| [[Action2/Single Set | Railtypes]]
*;[[Action9]] - (see action 7 above)
 
  +
| [[Action2/Sprite Layout | Airport Tiles]]
*;[[ActionA]] - Modifies TTD base set sprites
 
  +
| [[Action2/Single Set | Roadtypes]]
*;[[ActionB]] - Generates an error message
 
  +
|-
*;[[ActionC]] - Does nothing.
 
  +
| [[Action2/Single Set | Tramtypes]]
*;[[ActionD]] - Assigns parameters and calculates results
 
  +
| [[Action2/Sprite Layout | Road Stops]]
** [[ReadingOtherGRFParameters]] - Reading another GRF file's parameters
 
  +
| ''Towns''
** [[ReadingPatchVariables| ReadingGameSettings]] - Reading game configuration settings
 
  +
|
** [[GRFResourceManagement]] - Preventing conflicts with limited resources
 
  +
|
*;[[ActionE]] - Deactivates a NewGRF file
 
  +
|}
*;[[ActionF]] - Defines new town name styles
 
  +
* [[VariationalAction2]] - A conditional switch that determines a [[Callbacks|callback]] result or chains to another Action 2
*;[[Action10]] - Defines GOTO label for action 7/9
 
  +
: [[VarAction2Advanced]] - Advanced features of Variational Action 2
*;[[Action11]] - Defines new sound data
 
  +
: [[GlobalVariables | Global Variables]]
*;[[Action12]] - Load font glyphs
 
  +
:{| |-
*;[[Action13]] - Translates GRF-specific strings
 
  +
|rowspan="5" align="center" style="width:3em"|'''VA2'''
*;[[Action14]] - Static NewGRF Information (OpenTTD only)
 
  +
|colspan=5| [[VariationalAction2/Vehicles | Vehicles]]
*;[[RealSprites]] - Sprites that actually get drawn on the screen
 
  +
|-
*;[[RecolorSprites]] - Changing how other sprites are drawn
 
  +
| [[VariationalAction2/Stations | Stations]]
  +
| [[VariationalAction2/Canals | Canals & Rivers]]
  +
| [[VariationalAction2/Bridges | Bridges]]
  +
| [[VariationalAction2/Houses | Houses]]
  +
| ''Global Settings''
  +
|-
  +
| [[VariationalAction2/Industry Tiles | Industry Tiles]]
  +
| [[VariationalAction2/Industries | Industries]]
  +
| [[VariationalAction2/Cargos | Cargos]]
  +
| ''Sound Effects''
  +
| [[VariationalAction2/Airports | Airports]]
  +
|-
  +
| [[VariationalAction2/Signals | Signals]]
  +
| [[VariationalAction2/Objects | Objects]]
  +
| [[VariationalAction2/Railtypes | Railtypes]]
  +
| [[VariationalAction2/Airport Tiles | Airport Tiles]]
  +
| [[VariationalAction2/Roadtypes | Roadtypes]]
  +
|-
  +
| [[VariationalAction2/Tramtypes | Tramtypes]]
  +
| [[VariationalAction2/Road Stops | Road Stops]]
  +
| [[VariationalAction2/Towns | Towns]]
  +
|
  +
|
  +
|}
  +
* [[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]]
  +
|-
  +
| ''Signals''
  +
| [[RandomAction2#Objects | Objects]]
  +
| [[RandomAction2#Rail_types | Railtypes]]
  +
| [[RandomAction2#Stations | Airport Tiles]]
  +
| [[RandomAction2#Road_types | Roadtypes]]
  +
|-
  +
| [[RandomAction2#Tram_types | Tramtypes]]
  +
| [[RandomAction2#Road_stops | Road Stops]]
  +
| ''Towns''
  +
|
  +
|
  +
|}
  +
  +
* [[Callbacks]] - List of available callbacks
  +
  +
;[[Action3]] - Associates Action 2s with an Action 0
  +
:{| |-
  +
|rowspan="5" align="center" style="width:3em"|'''3'''
  +
|colspan=5| [[Action3 | Vehicles]]
  +
|-
  +
| [[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]]
  +
| ''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
  +
: [[TTDPatchFlags| 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
  +
* [[ReadingPatchVariables| 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 ==
 
== Graphics properties ==
Line 81: Line 190:
 
* [[IndustryDefaultProps]] - Default properties values for TTD's industries
 
* [[IndustryDefaultProps]] - Default properties values for TTD's industries
 
* [[CargoDefaultProps]] - Default property values for TTD's cargo types
 
* [[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 ==
 
== NewGRF commons ==
Line 86: 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
* [[RailtypeLabels | Railtype labels]] - Commonly used railtype labels
+
* [[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]]
  +
* [[GlobalVariables | Global variables]]
  +
* [[Storages | Storages]]
  +
* [[StringCodes | String control codes]]
  +
* [[TextIDs | Text IDs (TTD + TTDPatch + NewGRF defined)]]
  +
* [[GRFActionsDetailed | Syntax details]]
  +
* [[Version numbers | Types of version numbers used throughout the specs]]
  +
* [[DebuggingGRFCode | Debugging NewGRFs]]
  +
* [[SpriteErrors | TTDPatch error codes on loading NewGRFs]]
  +
  +
== Game mechanics ==
  +
* [[TownZones | Town zones]]
  +
* [[NMLMain | NML]]

Latest revision as of 09:51, 11 June 2023

Sprite types

Action0 - Defines new properties for anything added or changed by the NewGRF
0 Vehicles Trains RoadVehicles Ships Aircraft
Stations Canals & Rivers Bridges Houses Global Settings
Industry Tiles Industries Cargos Sound Effects Airports
Signals Objects Railtypes Airport Tiles Roadtypes
Tramtypes Road Stops Towns
Action1 - Defines one or more graphics sets
Action2 - Defines graphics set IDs
  • 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 Towns
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 Towns
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 Towns
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 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
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

TTD defaults

NewGRF commons

Misc

Game mechanics