Tutorial and guidance
What a server shows a player to lead them: tips, quests, objectives and text at the side of the screen, highlights, and the tutorial.
A server tells a champion something has come about with Situation.
Highlights
A server lights up parts of the screen and units with HudHighlighted,
HudHighlightToggled, UiHighlight, UnitHighlighted and
UnitHighlightRemoved, and makes part of the minimap or of the shop blink with
MinimapHighlighted and ShopHighlighted.
In 3.10
HudHighlightedlights elements 0 to 8 for part 0 and element 0 alone for part 2. A client lights nothing for any other part.
Tips, quests and objectives
A server puts a tip in front of a player with TipShown, addressed to that
player’s champion, and a client reports a click on it, or the tip being closed,
with TipEvent. A server can add, complete and remove quests in the quest
tracker with QuestUpdated, and a client reports the pointer passing over a
quest, and a click on it, with QuestEvent. A server can also show, change
and hide an objective panel (ObjectiveShown, ObjectiveReplaced,
ObjectiveHidden) and a box of text at the side of the screen
(SideTextShown, SideTextRefreshed, SideTextHidden).
The tutorial
In 3.10
A client is in the tutorial where
VersionSyncnames the mode TUTORIAL and a setting of its own turns the tutorial on, whatever the map.
In the tutorial, a server can put lines of the client’s own text in its chat
(TutorialChatLine) and open the tutorial’s popup (TutorialPopup), which the
client answers with TutorialPopupClosed.
A client takes TutorialChatLine in any match.
Messages
Each message of this system in this book, with each layout it has across the book’s patches and every note its definition carries. A layout is the message’s body, after the header its channel’s family puts in front (see Messages).
HudHighlighted
What a server sends to light up part of the screen, as a tutorial does. Only HudHighlightToggled turns it off. The header carries zero.
In 3.01
Command 60 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| part | u8 | Which part of the screen. A client ignores any other value. Values: 0 hud, 1 shop, 2 minimap. |
| element | u8 | What to light up on the main controls. A client ignores any value above 8. Values: 0 spell, 1 spellUpgrade, 2 summonerSpell, 3 recall, 4 shop, 5 gold, 6 experience, 7 health, 8 mana. |
| number | u8 | Which slot, for a spell or a summoner spell; it has no effect otherwise. A client accepts any value, and a slot beyond those named has no defined effect. |
| second | u8 | For the shop’s element 3, which item within the category; a client reads nothing here otherwise. |
Vectors (1)
In 3.02–3.15
Command 60 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| part | u8 | Which part of the screen. A client ignores any other value. Values: 0 hud, 2 minimap. |
| element | u8 | What to light up on the main controls. A client ignores any value above 8. Values: 0 spell, 1 spellUpgrade, 2 summonerSpell, 3 recall, 4 shop, 5 gold, 6 experience, 7 health, 8 mana. |
| number | u8 | Which slot, for a spell or a summoner spell; it has no effect otherwise. A client accepts any value, and a slot beyond those named has no defined effect. |
| unused | u8 | Unused; a server writes zero. |
HudHighlightToggled
What a server sends to light up part of the screen, or to put it out. The header carries zero.
In 3.01
Command 78 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| part | u8 | Which part of the screen. A client ignores any other value. Values: 1 hud, 2 shop, 3 minimap. |
| element | u8 | What to light up, as in HudHighlighted. A value beyond those named does nothing. |
| number | u8 | Which slot, as in HudHighlighted. |
| second | u8 | For the shop’s element 3, which item within the category; a client reads nothing here otherwise. |
| state | 1-byte bits | Whether it is lit. |
| state.on | bit 0 | Set to light it up, clear to put it out. |
| state.unused | bit 1 to 7 | Unused; a server writes zero. |
Vectors (1)
In 3.02–3.15
Command 78 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| part | u8 | Which part of the screen. A client ignores any other value. Values: 1 hud, 3 minimap. |
| element | u8 | What to light up, as in HudHighlighted. A value beyond those named does nothing. |
| number | u8 | Which slot, as in HudHighlighted. |
| unused | u8 | Unused; a server writes zero. |
| state | 1-byte bits | Whether it is lit. |
| state.on | bit 0 | Set to light it up, clear to put it out. |
| state.unused | bit 1 to 7 | Unused; a server writes zero. |
UiHighlight
What a server sends to place an animated highlight over one element of the screen, or to take one away. The header carries zero.
In every range of this book
Command 202 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| action | u8 | What to do. A client takes 2 to 14 and does nothing, and ignores the message from 15 up. Values: 0 show, 1 remove. |
| element | u8 | Which element. Showing a value above 14 has no defined effect. Values: 0 minimap, 1 quests, 2 tips, 3 characterInfo, 4 effects, 5 ultimate, 6 recall, 7 shop, 8 spellPoint1, 9 gold, 10 assists, 11 passive, 12 spellPoint2, 13 spellPoint3, 14 spellPoint4. |
Vectors (1)
UnitHighlighted
What a server sends to outline a unit with a pulsing light, as a tutorial does, until UnitHighlightRemoved. The header carries zero.
In every range of this book
Command 88 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| unit | u32 | The unit: one that can be damaged. |
UnitHighlightRemoved
What a server sends to take away the light UnitHighlighted put on a unit. The header carries zero.
In every range of this book
Command 180 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| unit | u32 | The unit. Where it has no light, nothing happens. |
Vectors (1)
TipShown
What a server sends to put a note in front of a seat. The header names the champion of the player it is sent to.
In every range of this book
Command 84 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| body | text, 128 bytes | What the note says. Written out in full and padded with zero bytes to the width above. |
| heading | text, 128 bytes | What the note is headed with, written and padded as above. |
| image | text, 128 bytes | The name the client loads a picture for the note under, written and padded as above. |
| what | u8 | What the client does with the note. |
| tip | u32 | The name this note answers to, so a later message can name it. |
TipEvent
What a client sends about a tip it has shown or dismissed.
In every range of this book
Command 108 on requests, sent by the client, reliable.
The header names the sender’s champion.
| Field | Type | What it is |
|---|---|---|
| what | u8 | What happened to the tip. Values: 0 clicked, 1 closed. |
| tip | u32 | Which tip, as TipShown named it. |
QuestUpdated
What a server sends to add a quest to the quest tracker, complete it or remove it. The header carries zero.
In 3.01–3.10
Command 140 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| text | text, 128 bytes | A key into the client’s own text for the quest. It applies to activate only. |
| icon | text, 128 bytes | The quest’s icon. It applies to activate only. |
| tooltip | text, 128 bytes | A key into the client’s own text for its tooltip. It applies to activate only. |
| kind | u8 | Which tracker it goes in. A tracker that is full holds a new quest back until it has room. Values: 0 primary, 1 secondary. |
| action | u8 | What to do. A client ignores any other value. Values: 0 activate, 1 complete, 2 remove. |
| flags | 1-byte bits | What a flag means depends on action. |
| flags.first | bit 0 | For activate, set to have the client report the pointer passing over the quest (QuestEvent); for complete, set where the quest succeeded. |
| flags.unused | bit 1 to 7 | Unused; a server writes zero. |
| quest | i32 | The quest’s number, which QuestEvent returns. |
Vectors (1)
In 3.11
Command 140 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| text | text, 128 bytes | A key into the client’s own text for the quest. It applies to activate only. |
| icon | text, 128 bytes | The quest’s icon. It applies to activate only. |
| tooltip | text, 128 bytes | A key into the client’s own text for its tooltip. It applies to activate only. |
| kind | u8 | Which tracker it goes in. A tracker that is full holds a new quest back until it has room. Values: 0 primary, 1 secondary, 2 objective. |
| action | u8 | What to do. A client ignores any other value. Values: 0 activate, 1 complete, 2 remove. |
| flags | 1-byte bits | What a flag means depends on action. |
| flags.first | bit 0 | For activate, set to have the client report the pointer passing over the quest (QuestEvent); for complete, set where the quest succeeded. |
| flags.unused | bit 1 to 7 | Unused; a server writes zero. |
| quest | i32 | The quest’s number, which QuestEvent returns. |
Vectors (1)
In 3.12–3.13
Command 140 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| text | text, 128 bytes | A key into the client’s own text for the quest. It applies to activate only. |
| icon | text, 128 bytes | The quest’s icon. It applies to activate only. |
| tooltip | text, 128 bytes | A key into the client’s own text for its tooltip. It applies to activate only. |
| kind | u8 | Which tracker it goes in. A tracker that is full holds a new quest back until it has room. Values: 0 primary, 1 secondary. |
| action | u8 | What to do. A client ignores any other value. Values: 0 activate, 1 complete, 2 remove. |
| flags | 1-byte bits | What a flag means depends on action. |
| flags.first | bit 0 | For activate, set to have the client report the pointer passing over the quest (QuestEvent); for complete, set where the quest succeeded. |
| flags.unused | bit 1 to 7 | Unused; a server writes zero. |
| quest | i32 | The quest’s number, which QuestEvent returns. |
Vectors (1)
In 3.14–3.15
Command 140 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| text | text, 128 bytes | A key into the client’s own text for the quest. It applies to activate only. |
| icon | text, 128 bytes | The quest’s icon. It applies to activate only. |
| tooltip | text, 128 bytes | A key into the client’s own text for its tooltip. It applies to activate only. |
| kind | u8 | Which tracker it goes in. A tracker that is full holds a new quest back until it has room. Values: 0 primary, 1 secondary. |
| action | u8 | What to do. A client ignores any other value. Values: 0 activate, 1 complete, 2 remove. |
| flags | 1-byte bits | What a flag means depends on action. |
| flags.first | bit 0 | For activate, set to have the client report the pointer passing over the quest (QuestEvent); for complete, set where the quest succeeded. |
| flags.second | bit 1 | Unused; a server writes zero. |
| flags.unused | bit 2 to 7 | Unused; a server writes zero. |
| quest | i32 | The quest’s number, which QuestEvent returns. |
Vectors (2)
QuestEvent
What a client sends as its player points at a quest in the tracker (QuestUpdated), stops pointing at it, or clicks it. The header names the sender’s champion.
In every range of this book
Command 205 on requests, sent by the client, reliable.
| Field | Type | What it is |
|---|---|---|
| event | u8 | What the player did. Pointing and leaving are sent only for a quest activated with its first flag set; a click at most once in three seconds. Values: 0 enter, 1 leave, 2 click. |
| quest | i32 | The quest’s number, as QuestUpdated gave it. |
Vectors (2)
ObjectiveShown
What a server sends to show the objective panel with a text. The header carries zero.
In every range of this book
Command 53 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| text | text, 128 bytes | The objective. The text ends at its first zero byte, which falls within the field. |
ObjectiveReplaced
What a server sends to replace the text of the objective panel, showing the panel if it is hidden. The header carries zero.
In every range of this book
Command 13 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| text | text, 128 bytes | The objective. The text ends at its first zero byte, which falls within the field. |
ObjectiveHidden
What a server sends to hide the objective panel. It carries nothing of its own. The header carries zero.
In every range of this book
Command 162 on events, sent by the server, reliable.
No body.
Vectors (1)
SideTextShown
What a server sends to show a box of text at the right edge of the screen. The header names no object: a server writes zero.
In every range of this book
Command 160 on events, sent by the server, reliable.
A client also sizes the panel to the text and shows it. The box sits halfway down the screen.
| Field | Type | What it is |
|---|---|---|
| text | text, 128 bytes | A key into the client’s own text, which it looks up and shows. The text ends at its first zero byte, which falls within the field. |
Vectors (1)
SideTextRefreshed
What a server sends to change the text in the box SideTextShown opened, in place. The header names no object: a server writes zero.
In every range of this book
Command 177 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| text | text, 128 bytes | A key into the client’s own text, which it looks up and shows. The text ends at its first zero byte, which falls within the field. |
Vectors (1)
SideTextHidden
What a server sends to close the box of text SideTextShown opened. It carries nothing of its own. The header names no object: a server writes zero.
In every range of this book
Command 167 on events, sent by the server, reliable.
No body.
Vectors (1)
TutorialChatLine
What a server sends to put a line of the client’s own text in its chat, as a line from the game. The header carries zero.
In every range of this book
Command 2 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| text | text, 128 bytes | A key into the client’s own text, which it looks up and shows. The text ends at its first zero byte, which falls within the field. |
TutorialPopup
What a server sends to open the tutorial’s popup: a caption, this text and a single button, which a client answers with TutorialPopupClosed. A client has one such popup; a second message replaces its text. The header carries zero.
In every range of this book
Command 179 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| text | text, 128 bytes | A key into the client’s own text for the popup’s body. The text ends at its first zero byte, which falls within the field. |
Vectors (1)
TutorialPopupClosed
What a client sends as its player presses the button of the tutorial’s popup (TutorialPopup). It carries nothing of its own. The header carries zero.
In every range of this book
Command 204 on requests, sent by the client, reliable.
A client also sends it as its player closes a tip in the tutorial.
No body.