Difference between revisions of "Action0/Badges"

From GRFSpecs
Jump to navigationJump to search
Line 34: Line 34:
   
 
Classes and names are arbitrary, but to be useful must follow a standard scheme. For instance, the badge label power/steam will define a badge for steam powered vehicles within the power class.
 
Classes and names are arbitrary, but to be useful must follow a standard scheme. For instance, the badge label power/steam will define a badge for steam powered vehicles within the power class.
  +
  +
Proposed initial classes are:
  +
  +
* flag
  +
* role
  +
* manufacturer
  +
* operator
  +
* power
  +
* livery
  +
  +
It is also possible to assign a badge to everything within a NewGRF by defining the badge label `newgrf/<GRFID>`, with the GRFID in full hexadecimal form. This will work even if the badge is defined outside of the NewGRF it is for.
   
 
== Flags (09) ==
 
== Flags (09) ==

Revision as of 01:53, 24 February 2025

'Action 0 properties for badges'

Action 0 - Properties for badges

Defining properties of badges.

Properties

Number Version Size Description
08 Supported by OpenTTD 1515 Not supported by TTDPatch S Badge label. A zero-terminated string.
09 Supported by OpenTTD 1515 Not supported by TTDPatch D Flags.


Badge label (08)

These are globally unique strings.

Badge labels comprise a badge class, for grouping similar badges, and badge name, separated by a '/'.

Classes and names are arbitrary, but to be useful must follow a standard scheme. For instance, the badge label power/steam will define a badge for steam powered vehicles within the power class.

Proposed initial classes are:

  • flag
  • role
  • manufacturer
  • operator
  • power
  • livery

It is also possible to assign a badge to everything within a NewGRF by defining the badge label `newgrf/<GRFID>`, with the GRFID in full hexadecimal form. This will work even if the badge is defined outside of the NewGRF it is for.

Flags (09)

Bit Value Meaning
0 1 Copy. Badge can be copied to related entity (e.g. badge on a railtype can be copied to rail vehicles of that railtype.)
1 2 NameListStop. Stops adding more names to the visible name list.
2 4 NameListFirstOnly. Add this name to the visible name list only if this is the first name.
3 8 UseCompanyColour. Apply appropriate company colour palette to the icon. If the icon is applied to a vehicle with 2CC support, then the 2CC palette will be used.