Main Page: Difference between revisions

From GRFSpecs
Jump to navigation Jump to search
Content deleted Content added
add Action2 for signals and sound effects
Ishtar (talk | contribs)
link to badge labels page from NewGRF Commons section
 
(29 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
:{| |-
:{| |-
|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 Variables | Global Variables]]
| [[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 a set of real sprites
;[[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]]
|colspan=5| [[Action2/Vehicles | Vehicles]]
|-
|-
| [[Action2/Stations | Stations]]
| [[Action2/Stations | Stations]]
| [[Action2/Single Set | Canals]]
| [[Action2/Single Set | Canals & Rivers]]
| ''Bridges''
| ''Bridges''
| [[Action2/Sprite Layout | Houses]]
| [[Action2/Sprite Layout | Houses]]
| ''Global Variables''
| ''Global Settings''
|-
|-
| [[Action2/Sprite Layout | Industry Tiles]]
| [[Action2/Sprite Layout | Industry Tiles]]
Line 48: Line 56:
| [[Action2/Single Set | Railtypes]]
| [[Action2/Single Set | Railtypes]]
| [[Action2/Sprite Layout | Airport Tiles]]
| [[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]] - Variational Action 2
* [[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 Variables''
| ''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''
| ''Airports''
| [[VariationalAction2/Airports | Airports]]
|-
|-
| [[VariationalAction2/Signals | Signals]]
| [[VariationalAction2/Signals | Signals]]
| [[VariationalAction2/Objects | Objects]]
| [[VariationalAction2/Objects | Objects]]
| [[VariationalAction2/Railtypes | Railtypes]]
| [[VariationalAction2/Railtypes | Railtypes]]
| [[VariationalAction2/Industry Tiles | Airport Tiles]]
| [[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]] - Randomized Action 2
* [[RandomAction2]] - A randomized Variational Action 2
:{| |-
:{| |-
|rowspan="5" align="center" style="width:3em"|'''R'''
|colspan=5| [[RandomAction2#Vehicles | Vehicles]]
|colspan=5| [[RandomAction2#Vehicles | Vehicles]]
|-
|-
| [[RandomAction2#Stations | Stations]]
| [[RandomAction2#Stations | Stations]]
| [[RandomAction2#Canals | Canals]]
| [[RandomAction2#Canals | Canals & Rivers]]
| ''Bridges''
| ''Bridges''
| [[RandomAction2#Town_building_triggers | Houses]]
| [[RandomAction2#Town_building_triggers | Houses]]
| ''Global Variables''
| ''Global Settings''
|-
|-
| [[RandomAction2#Industry_tile_triggers | Industry Tiles]]
| [[RandomAction2#Industry_tile_triggers | Industry Tiles]]
Line 93: Line 116:
| [[RandomAction2#Rail_types | Railtypes]]
| [[RandomAction2#Rail_types | Railtypes]]
| [[RandomAction2#Stations | Airport Tiles]]
| [[RandomAction2#Stations | Airport Tiles]]
| [[RandomAction2#Road_types | Roadtypes]]
|-
| [[RandomAction2#Tram_types | Tramtypes]]
| [[RandomAction2#Road_stops | Road Stops]]
| ''Badges''
| ''Towns''
| ''Towns''
|
|}
|}


* [[Callbacks]] - List of available callbacks
* [[Callbacks]] - List of available callbacks

;[[Action3]] - Associates vehicles with graphics set IDs
;[[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]]
| [[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]] - Defines specific base graphics sets
;[[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 108: 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 115: 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 GOTO label for action 7/9
;[[Action10]] - Defines a label for action 7/9
;[[Action11]] - Defines new sound data
;[[Action11]] - Defines new sounds
;[[Action12]] - Load font glyphs
;[[Action12]] - Adds Unicode font glyphs
;[[Action13]] - Translates GRF-specific strings
;[[Action13]] - Translates GRF-specific strings
;[[Action14]] - Static NewGRF Information (OpenTTD only)
;[[Action14]] - Static NewGRF information (OpenTTD only)
;[[RealSprites]] - Sprites that actually get drawn on the screen
;[[RealSprites]] - Sprites that actually are drawn on the screen
;[[RecolorSprites]] - Changing how other sprites are drawn
;[[RecolorSprites]] - Changing other sprites' colors


== Graphics properties ==
== Graphics properties ==
Line 131: 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 139: 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
* [[Badge labels]] - Commonly used badge labels


== 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:11, 10 March 2026

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 Badges 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 Badges 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 Badges 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 Badges 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 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
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