In other languages: Русский

Rich text: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
(added image)
(Adjusted the spritename img tag info)
(11 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Languages}}[[File:Fonts.png|right|frame|Different fonts displayed in-game.]]
{{Languages}}
Rich text formatting introduced in [[Version history#0.17.0|0.17.0]] allows the use of tags within most of the game's textboxes to change the visual formatting of text or to embed interactable images/entities. Predefined text tags are employed for this purpose.
Rich text formatting in allows the use of tags within most of the game's textboxes to change the visual formatting of text or to embed interactable images/entities. Predefined text tags are employed for this purpose.


==Text modifiers==
== Tags ==
 
The color and font of text can be changed
 
{| class="wikitable"
|-
! style="width:20%"| Syntax
! style="width:15%"| Example Input
! style="width:15%"| Example Result
! style="width:50%"| Description
|-
| [color=<i>rgb</i>]...[/color]
| [color=red]Red[/color] text
[color=1,0,0]Red[/color] text
| <span style="color: #ff0000">Red</span> text
| <i>rgb</i> is a comma separated RGB color ranging from 0 to 1, or a color name
Available colors: default, red, green, blue, orange, yellow, pink, purple, white, black, gray, brown, cyan, acid.
|-
| [font</i>=<i>font-name</i>]...[/font]
| [font=default-bold]Bold text
| <b>Bold text</b>
| <i>font-name</i> is the name of the [[Data.raw#font|Factorio font]] to render
|}
 
==Tags==


Tags are useful for sharing blueprints, marking map locations in chat or adding icons to map markers and train stations.
Tags are useful for sharing blueprints, marking map locations in chat or adding icons to map markers and train stations.
Ctrl+alt clicking the map or ground will automatically insert a gps tag and post it into chat.
Ctrl+alt clicking the map or ground will automatically insert a gps tag and post it into [[console|chat]].


Shift clicking most things with the console open will insert a tag for that thing into chat.
Shift clicking most things with the console open will insert a tag for that thing into chat. The chat and many other textboxes in the game have a button on the right edge that opens an icon selector. This can be used to easily insert rich text tags of recipes, items, fluids, virtual signals and entities into the textbox.


When used in chat, the tag image will be followed by a text description, except for the img tag.
When used in chat, the tag image will be followed by a text description, except for the img tag.
Line 44: Line 20:


|-
|-
| [img=<i>class</i>/<i>name</i>]
| [img=<i>class</i>/<i>name</i>]<br>
[img=<i>class</i>.<i>name</i>]
[img=<i>class</i>.<i>name</i>]<br>
| [img=item/iron-plate]
[img=<i>sprite-prototype-name</i>]
| [[File:Iron_plate.png|28px]]
| [img=item.iron-plate]<br>
| Embeds only a small inline game graphic. The period format must be used in game save names.
[img=quantity-time]
<i>class</i> is any of: item, entity, technology, recipe, item-group, fluid, tile, virtual-signal or achievement
| [[File:Iron_plate.png|28px]]<br>
[[File:Time_icon.png|28px]]
| Embeds only a small inline game graphic. The period format must be used in game save names. This tag uses [https://lua-api.factorio.com/latest/Concepts.html#SpritePath sprite paths]:
<i>class</i> is any of: item, entity, technology, recipe, item-group, fluid, tile, virtual-signal, achievement, equipment or utility.
 
<i>name</i>: see below
<i>name</i>: see below
<i>sprite-prototype-name</i> is the [[Data.raw#sprite|internal-name]] of a [[Prototype/Sprite|sprite prototype]].


|-
|-
Line 74: Line 56:
| [recipe=basic-oil-processing]
| [recipe=basic-oil-processing]
| [[File:Basic_oil_processing.png|28px]] [Recipe: Basic oil processing]
| [[File:Basic_oil_processing.png|28px]] [Recipe: Basic oil processing]
| <i>name</i> is the internal-name of the recipe, usually the entity name
| <i>name</i> is the internal-name of the recipe, usually the item name


|-
|-
Line 107: Line 89:


|-
|-
| [gps=<i>x</i>,<i>y</i>]
| [gps=<i>x,y</i>]
[gps=<i>x,y,surface</i>]
| [gps=0,0]
| [gps=0,0]
| [[File:Map.png|28px]] [Location: 0,0]
| [[File:Map.png|28px]] [Location: 0,0]
| Embeds a map location and marks the location on the map of other players.
| Embeds a map location and marks the location on the map of other players.
<i>x</i> is the x point coordinate
<i>x</i> is the x point coordinate<br>
<i>y</i> is the y point coordinate  
<i>y</i> is the y point coordinate<br>
 
<i>surface</i> is the current surface. Is only added if the player Ctrl+alt clicks on a surface that is not the default surface. When the player is on another surface than <i>surface</i>, clicking the tag does nothing. Mods must handle this case with [https://lua-api.factorio.com/latest/events.html#on_player_clicked_gps_tag on_player_clicked_gps_tag]
|-
|-
| [special-item=<i>blueprint_string</i>]
| [special-item=<i>blueprint_string</i>]
Line 140: Line 123:
| [[File:Train_stop.png|28px]] [Train Stop: Trangar]
| [[File:Train_stop.png|28px]] [Train Stop: Trangar]
| Embeds a reference to a train stop. Clicking the icon will open the GUI for that train stop.
| Embeds a reference to a train stop. Clicking the icon will open the GUI for that train stop.
<i>numbe</i>r is the internal unit number of the train stop
<i>number</i> is the internal unit number of the train stop


|-
| [tooltip=<i>text,tooltip locale key</i>]
| [tooltip=Hover to see "Iron plate",item-name.iron-plate]
| <span title="Iron plate"> [[File:Custom-tag-icon.png|28px]] Hover to see "Iron plate"</span>
| Shows the given <i>text</i> with a <i>tooltip</i> that is specified with a [[Tutorial:Localisation#Localising_simple_strings|locale key]].
|}
== Text modifiers ==
[[File:Fonts.png|right|thumbnail|100px|Different fonts displayed in-game. (Click to enlarge.)]]
The color and font of text can be changed
{| class="wikitable"
|-
! style="width:20%"| Syntax
! style="width:15%"| Example Input
! style="width:15%"| Example Result
! style="width:50%"| Description
|-
| [color=<i>rgb</i>]...[/color]<br>
[color=<i>#rrggbb</i>]...[/color]<br>
[color=<i>#aarrggbb</i>]...[/color]<br>
[color=<i>rgb</i>]...[.color]<br>
[color=<i>#rrggbb</i>]...[.color]<br>
[color=<i>#aarrggbb</i>]...[.color]
| [color=red]Red[/color] text<br>
[color=1,0,0]Red[/color] text<br>
[color=255,0,0]Red[/color] text<br>
[color=#ff0000]Red[/color] text
| <span style="color: #ff0000">Red</span> text
| <i>rgb</i> is a comma separated RGB color ranging from 0 to 1 or 0 to 255, or a color name
Available colors: default, red, green, blue, orange, yellow, pink, purple, white, black, gray, brown, cyan, acid.
|-
| [font=<i>font-name</i>]...[/font]<br>
[font=<i>font-name</i>]...[.font]
| [font=default-bold]Bold text[/font]
| <b>Bold text</b>
| <i>font-name</i> is the name of the [[Data.raw#font|Factorio font]] to render
|}
|}


== See also ==
== See also ==
* [[Console]]
* [[Console]]
* [[Data.raw]] for the list of internal names of recipes, technologies, fluids, etc.

Revision as of 11:27, 2 December 2020

Rich text formatting in allows the use of tags within most of the game's textboxes to change the visual formatting of text or to embed interactable images/entities. Predefined text tags are employed for this purpose.

Tags

Tags are useful for sharing blueprints, marking map locations in chat or adding icons to map markers and train stations. Ctrl+alt clicking the map or ground will automatically insert a gps tag and post it into chat.

Shift clicking most things with the console open will insert a tag for that thing into chat. The chat and many other textboxes in the game have a button on the right edge that opens an icon selector. This can be used to easily insert rich text tags of recipes, items, fluids, virtual signals and entities into the textbox.

When used in chat, the tag image will be followed by a text description, except for the img tag. Used elsewhere only the image is shown.

Syntax Example Input Example Result Description
[img=class/name]

[img=class.name]
[img=sprite-prototype-name]

[img=item.iron-plate]

[img=quantity-time]

Iron plate.png

Time icon.png

Embeds only a small inline game graphic. The period format must be used in game save names. This tag uses sprite paths:

class is any of: item, entity, technology, recipe, item-group, fluid, tile, virtual-signal, achievement, equipment or utility.

name: see below

sprite-prototype-name is the internal-name of a sprite prototype.

[item=name] [item=iron-plate] Iron plate.png [Item: Iron plate] name is the internal-name of the item
[entity=name] [entity=small-biter] Small biter.png [Entity: Small biter] name is the internal-name of the entity
[technology=name] [technology=logistics] Logistics (research).png [Technology: Logistics] name is the internal-name of the technology
[recipe=name] [recipe=basic-oil-processing] Basic oil processing.png [Recipe: Basic oil processing] name is the internal-name of the recipe, usually the item name
[item-group=name] [item-group=combat] Item-group military.png [Item Group: Combat] name is any of: logistics, production, intermediate-products, combat, fluids or signals
[fluid=name] [fluid=water] Water.png [Fluid: Water] name is the internal name of the fluid
[tile=name] [tile=grass-3] Grass 3.png [Tile: Grass 3] name is the internal name of the tile, usually the lowercase name with hyphens replacing spaces as written from the map editor
[virtual-signal=name] [virtual-signal=signal-A] Signal-A.png [Virtual Signal: Signal A] name is the word signal followed by either an uppercase letter, number, color, each, everything or anything
[achievement=name] [achievement=minions] Minions-achievement.png [Achievement: Minions] name is the internal-name of the achievement, usually the lowercase name with hyphens replacing spaces
[gps=x,y]

[gps=x,y,surface]

[gps=0,0] Map.png [Location: 0,0] Embeds a map location and marks the location on the map of other players.

x is the x point coordinate
y is the y point coordinate
surface is the current surface. Is only added if the player Ctrl+alt clicks on a surface that is not the default surface. When the player is on another surface than surface, clicking the tag does nothing. Mods must handle this case with on_player_clicked_gps_tag

[special-item=blueprint_string] Blueprint.png [Blueprint] Embeds a blueprint. Players can get a blueprint item by clicking the icon.

blueprint_string is the blueprint string of a blueprint, deconstruction planner or upgrade planners

[armor=player] [armor=Player] Power armor MK2.png [Armor: Player] Embeds the armor of a player. Allows other players to see the equipment installed.

player is the name of the player

[train=number] [train=93] Locomotive.png [Train: 2] Embeds a reference to a train. Clicking the icon will open the train GUI for that train.

number is the internal unit number of the train

[train-stop=number] [train-stop=100] Train stop.png [Train Stop: Trangar] Embeds a reference to a train stop. Clicking the icon will open the GUI for that train stop.

number is the internal unit number of the train stop

[tooltip=text,tooltip locale key] [tooltip=Hover to see "Iron plate",item-name.iron-plate] Custom-tag-icon.png Hover to see "Iron plate" Shows the given text with a tooltip that is specified with a locale key.

Text modifiers

Different fonts displayed in-game. (Click to enlarge.)

The color and font of text can be changed

Syntax Example Input Example Result Description
[color=rgb]...[/color]

[color=#rrggbb]...[/color]
[color=#aarrggbb]...[/color]
[color=rgb]...[.color]
[color=#rrggbb]...[.color]
[color=#aarrggbb]...[.color]

[color=red]Red[/color] text

[color=1,0,0]Red[/color] text
[color=255,0,0]Red[/color] text
[color=#ff0000]Red[/color] text

Red text rgb is a comma separated RGB color ranging from 0 to 1 or 0 to 255, or a color name

Available colors: default, red, green, blue, orange, yellow, pink, purple, white, black, gray, brown, cyan, acid.

[font=font-name]...[/font]

[font=font-name]...[.font]

[font=default-bold]Bold text[/font] Bold text font-name is the name of the Factorio font to render

See also

  • Console
  • Data.raw for the list of internal names of recipes, technologies, fluids, etc.