Votes
Surrender votes, and a vote on evening out a match.
Surrender
A server tells a side a surrender vote has been called with
SurrenderVoteCalled. A client answers with SurrenderVote, and a server tells
the side where the vote stands with SurrenderStatus. SurrenderAllowed says
whether a champion’s player can call a vote, turning the choice in the client’s
menu on or off.
SurrenderVoteCalled shows the caller’s vote to that side and, where it says
the vote opens, opens the vote’s panel for that side.
A client ignores SurrenderVoteCalled that arrives before its own champion is
on the field.
Evening out a match
A server can hold a vote on giving the side behind gold, experience and
turrets. BalanceVote opens the vote’s panel for the voting side and adds one
voter with each message; a client answers with
BalanceVoteAnswer from the panel or as its player types /equalize, once per
vote. BalanceResult says how the vote ended, or why it could not be held.
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).
SurrenderVoteCalled
What a server sends to open a surrender vote, or to report one already open. The header names no object: it carries zero.
In every range of this book
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 1.0.0.130–1.0.0.131 | 210 |
| 1.0.0.132–1.0.0.134 | 211 |
| 1.0.0.135 | 213 |
| 1.0.0.136–1.0.0.137 | 211 |
| 1.0.0.138 | 213 |
| 1.0.0.139–1.0.0.140 | 212 |
| 1.0.0.141–1.0.0.143 | 214 |
| 1.0.0.144–1.0.0.149 | 201 |
| 1.0.0.150–3.1.0.0 | 198 |
A client ignores it unless its menu and its own champion both exist.
| Field | Type | What it is |
|---|---|---|
| how | 1-byte bits | |
| how.countAsYes | bit 0 | Applies only where side is the client’s own: set shows caller voting yes, clear voting no, opening the menu or not. |
| how.openTheMenu | bit 1 | Set where the vote opens: a client of side opens the vote’s panel from seats and closesIn, which have no other effect; every client is told a vote began, with caller, inFavour, against and side. |
| how.unused | bit 2 to 7 | Unused; a server writes zero. |
| caller | u32 | The unit that called the vote. |
| inFavour | u8 | How many have voted for. |
| against | u8 | How many have voted against. |
| seats | u8 | How many seats can vote. |
| side | u32 | Which side is voting. |
| closesIn | f32 | How long the vote stays open, in seconds. |
SurrenderVote
What a client sends to vote on surrendering. The header names no object: it carries zero.
In 1.0.0.130–1.0.0.131
Command 172 on requests, sent by the client, reliable.
It answers a call to surrender.
| Field | Type | What it is |
|---|---|---|
| how | 1-byte bits | |
| how.inFavour | bit 0 | Set where the answer is yes, clear where it is no. |
| how.unused | bit 1 to 7 | A client leaves these bits unwritten; they carry no meaning. |
Vectors (1)
In 1.0.0.132–1.0.0.138
Carried on requests, sent by the client, reliable, under these commands:
| Builds | Command |
|---|---|
| 1.0.0.132–1.0.0.134 | 173 |
| 1.0.0.135 | 175 |
| 1.0.0.136–1.0.0.137 | 173 |
| 1.0.0.138 | 175 |
It answers a call to surrender.
| Field | Type | What it is |
|---|---|---|
| how | 1-byte bits | |
| how.inFavour | bit 0 | Set where the answer is yes. A client sends it clear. |
| how.unused | bit 1 to 7 | Always clear. |
Vectors (4)
one-on-1-0-0-134, one-on-1-0-0-135, one-on-1-0-0-136, one-on-1-0-0-138
In 1.0.0.139–1.0.0.143
Command 174 on requests, sent by the client, reliable.
A client sends it to start a vote as well as to answer one: the surrender chat command sends it in favour whether or not a vote is open, and the vote panel’s buttons and the chat command that votes no answer one.
| Field | Type | What it is |
|---|---|---|
| how | 1-byte bits | |
| how.inFavour | bit 0 | Set where the answer is yes, as from the panel’s yes button or the surrender command; clear for a no. |
| how.unused | bit 1 to 7 | A client leaves these bits unwritten; they carry no meaning, and a server ignores them. |
Vectors (1)
In 1.0.0.144–3.1.0.0
Carried on requests, sent by the client, reliable, under these commands:
| Builds | Command |
|---|---|
| 1.0.0.144–1.0.0.149 | 164 |
| 1.0.0.150–3.1.0.0 | 161 |
It answers a call to surrender.
| Field | Type | What it is |
|---|---|---|
| how | 1-byte bits | |
| how.inFavour | bit 0 | Set where the answer is yes. A client sends it clear. |
| how.unused | bit 1 to 7 | Always clear. |
Vectors (2)
SurrenderStatus
What a server sends to tell a side where its surrender vote stands. The header names no object: it carries zero.
In 1.0.0.130–1.0.0.146
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 1.0.0.130–1.0.0.131 | 173 |
| 1.0.0.132–1.0.0.134 | 174 |
| 1.0.0.135 | 176 |
| 1.0.0.136–1.0.0.137 | 174 |
| 1.0.0.138 | 176 |
| 1.0.0.139–1.0.0.143 | 175 |
| 1.0.0.144–1.0.0.146 | 165 |
| Field | Type | What it is |
|---|---|---|
| reason | u32 | Why the vote stands where it does. |
| inFavour | u8 | How many voted for. |
| against | u8 | How many voted against. |
| side | u32 | Which side. |
In 1.0.0.147–3.1.0.0
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 1.0.0.147–1.0.0.149 | 165 |
| 1.0.0.150–3.1.0.0 | 162 |
| Field | Type | What it is |
|---|---|---|
| reason | u8 | Why the vote stands where it does. |
| inFavour | u8 | How many voted for. |
| against | u8 | How many voted against. |
| side | u32 | Which side. |