Combat
Attacks, damage, death and coming back. Spells are in Spells.
Attacking
A server says a unit is swinging at another with Attack, or with
AttackFrom, which also says where the swinging unit stands. StopAttack
breaks an attack off. AttackSpeedBounds puts a ceiling or a floor on how fast a
unit attacks.
In 4.1–4.19
After
StopAttack, a client clears the unit’s attack whatever the message’s flags ask besides.
A client asks its champion to attack with a MoveOrder naming the unit (see
Movement). What the player then sees is what a server sends: the
champion walking into range along a WaypointGroup, a swing for each Attack,
and what each Damage shows.
In 4.1–4.19
How long a swing takes comes from the champion’s data and its attack speed.
In 4.1–4.19
Damageshows a figure for the results that carry one, normal and critical; zero is the result that shows the unit as invulnerable, not a plain hit.
In 4.1–4.19
A client never walks its champion into range by itself: a server sends the
WaypointGroupthat takes it there.
The health bar moves as replication states the health.
In 4.1–4.19
Each
Attackplays one swing, cutting off any swing still under way.TargetUnitandTargetHeldChampionare not needed for a swing to show. The health bar moves only as replication states the unit’s health, andStopAttackbreaks a swing off before it lets go.
In 4.1–4.19
A melee swing carries a missile id of zero. A ranged swing carries an id no object holds, which the client gives the missile it launches itself as the swing lets go, with no further message while the attacker is in view. A swing that nothing interrupts finishes by itself.
TargetUnit draws a unit’s targeting beam at what it is attacking.
Any unit takes TargetUnit, whatever it is attacking.
That a unit is attacking a champion is TargetHeldChampion, which marks the
unit’s health bar with an indicator, and clears the mark when it names no such
champion. A server MUST send TargetUnit and TargetHeldChampion together.
HoverTarget and HoverIndicator set and show the unit a unit’s hover
indicator points at, and AttackIndicators shows or hides a unit’s attack
indicators.
A champion’s clicks can be made to attack the ground with GroundAttackMode.
Damage
A server reports damage with Damage.
In 4.1–4.19
A client shows nothing at all for
Damageunless it holds both the unit hurt and the unit dealing it.
Death
A unit’s death is UnitDied, a champion’s ChampionDied, a building’s
BuildingDied, and an inhibitor’s InhibitorDied. ForceDeath puts a unit
into its death.
In 4.1–4.19
A client ignores
UnitDiedorChampionDiednaming a unit already dead, and puts a unit down only where a killer is named.
Either UnitDied or ChampionDied can leave the unit standing as a husk
rather than dead, without its death animation or death screen.
In 4.1–4.19
A client ignores
ChampionDiedthat credits no killer.
How long a champion stays down is DeathTimer. Whether a client draws the world
without colour while its champion is down is GreyscaleWhenDead. What led to a
death is DeathHistory, which a client lays out for its player. An inhibitor’s
state, and how long it lasts, is InhibitorState.
In 4.20
A server also reports a death for what a client draws on its map with
UnitDiedOnMap.
Coming back
Revived puts a champion back on the field.
A server can instead bring a dead champion back at a place of its choosing
with Respawned, which keeps the champion’s level, gold and spell ranks and
restores its health.
Using a unit
A client sends UseObject as its player right-clicks a unit that can be used.
A client also sends UseObject for a unit its champion is attacking, as that
unit changes side.
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).
Attack
What a server sends to say a unit is swinging at another. The header names the unit acting.
In 4.1–4.16
Command 12 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| target | u32 | The unit swung at. A client throws the swing at it. |
| timing | u8 | A shift in time: the value less 128, in hundredths of a second, from -1.28 to 1.27; 128 shifts nothing. It moves when the swing lets go and ends, and when the unit may next attack. |
| missile | u32 | The name the missile this swing throws will answer to. |
| slot | u8 | Which of the unit’s attacks this is. |
Vectors (1)
In 4.17
Command 12 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| target | u32 | The unit swung at. |
| targetX | f32 | Where the unit swung at stands, along one ground axis, in world units. A client throws the swing at the unit named above, whatever this position says. |
| targetY | f32 | Where it stands, in height, in world units. |
| targetZ | f32 | Where it stands, along the other ground axis, in world units. |
| timing | u8 | A shift in time: the value less 128, in hundredths of a second, from -1.28 to 1.27; 128 shifts nothing. It moves when the swing lets go and ends, and when the unit may next attack. |
| missile | u32 | The name the missile this swing throws will answer to. |
| slot | u8 | Which of the unit’s attacks this is. |
Vectors (1)
In 4.18–4.20
Command 12 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| strike | Strike | The swing. |
Vectors (2)
AttackFrom
What a server sends to say a unit is swinging at another, carrying where the swinging unit stands as well as what it swings at. The header names the unit acting.
In 4.1–4.16
Command 26 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| target | u32 | The unit swung at. A client throws the swing at it. |
| timing | u8 | A shift in time: the value less 128, in hundredths of a second, from -1.28 to 1.27; 128 shifts nothing. It moves when the swing lets go and ends, and when the unit may next attack. |
| missile | u32 | The name the missile this swing throws will answer to. Zero for a swing that throws none. |
| slot | u8 | Which of the unit’s attacks this is. |
| fromX | f32 | Where the swinging unit stands, along one ground axis, in world units. |
| fromZ | f32 | Where it stands, along the other, in world units. |
Vectors (1)
In 4.17
Command 26 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| target | u32 | The unit swung at. |
| targetX | f32 | Where the unit swung at stands, along one ground axis, in world units. |
| targetY | f32 | Where it stands, in height, in world units. |
| targetZ | f32 | Where it stands, along the other ground axis, in world units. |
| timing | u8 | A shift in time: the value less 128, in hundredths of a second, from -1.28 to 1.27; 128 shifts nothing. It moves when the swing lets go and ends, and when the unit may next attack. |
| missile | u32 | The name the missile this swing throws will answer to. Zero for a swing that throws none. |
| slot | u8 | Which of the unit’s attacks this is. |
| fromX | f32 | Where the swinging unit stands, along one ground axis, in world units. |
| fromZ | f32 | Where it stands, along the other, in world units. |
Vectors (1)
In 4.18–4.20
Command 26 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| strike | Strike | The swing. |
| fromX | f32 | Where the swinging unit stands, along one ground axis, in world units. |
| fromZ | f32 | Where it stands, along the other, in world units. |
Vectors (2)
StopAttack
What a server sends to break off an attack a unit is making. The header names the unit acting.
In 4.1–4.17
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 51 |
| 4.11–4.17 | 52 |
Whatever the flags, a client then clears the unit’s attack.
| Field | Type | What it is |
|---|---|---|
| missile | u32 | The missile the attack would have thrown, where there is one. |
| how | 1-byte bits | |
| how.keepAnimating | bit 0 | Set to let the attack’s animation play on after the stop. |
| how.forceCast | bit 1 | Set to make the attack land first where it has not already. |
| how.forceStop | bit 2 | Set to stop the attack outright; a client does so anyway where it cannot see the unit, and keepAnimating and forceCast then have no effect. |
| how.summonerSpell | bit 3 | Set where the slot stopped is a summoner spell’s. |
| how.destroyMissile | bit 4 | Set to destroy the missile named in missile, where it exists; forced, after the attack landed, the spell’s cooldown is also refunded. |
| how.unused | bit 5 to 7 | Unused; a server writes zero. |
Vectors (1)
In 4.18–4.20
Command 52 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| how | 1-byte bits | |
| how.keepAnimating | bit 0 | Set where the unit finishes what it was doing to look at. |
| how.finishSwing | bit 1 | Set where a swing not yet let go is let go before it stops. |
| how.forced | bit 2 | Set to stop what the unit is casting at once, whether or not it would otherwise stop. |
| how.summonerSpell | bit 3 | Set where what is broken off came from a summoner slot. |
| how.destroyMissile | bit 4 | Set where the missile named below is to go too. |
| how.unused | bit 5 to 7 | Unused; a server writes zero. |
| missile | u32 | The missile the attack would have thrown, where there is one. |
Vectors (1)
AttackSpeedBounds
What a server sends to put a ceiling or a floor on how fast a unit attacks. Its identifier is wider than a byte, so it travels behind the escape. The header names the unit this is about.
In 4.4–4.17
Command 288 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| useCeiling | u8 | 1 to apply the ceiling below; 0 leaves the unit’s ceiling as it was. |
| useFloor | u8 | 1 to apply the floor below; 0 leaves the unit’s floor as it was. |
| ceiling | f32 | The fastest the unit can attack, in attacks a second, where the flag says to use it. A value of 0.00001 or less, -1 among them, sets no bound. |
| floor | f32 | The slowest the unit can attack, in attacks a second, where the flag says to use it. A value of 0.00001 or less, -1 among them, sets no bound. |
Vectors (1)
In 4.18–4.20
Command 288 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| overrides | 1-byte bits | |
| overrides.ceiling | bit 0 | Set where the ceiling below is to be used. |
| overrides.floor | bit 1 | Set where the floor below is to be used. |
| overrides.unused | bit 2 to 7 | Unused; a server writes zero. |
| ceiling | f32 | The fastest the unit can attack, in attacks a second, where the flag says to use it. A value of 0.00001 or less, -1 among them, sets no bound. |
| floor | f32 | The slowest the unit can attack, in attacks a second, where the flag says to use it. A value of 0.00001 or less, -1 among them, sets no bound. |
Vectors (1)
Damage
What a server sends to say one unit hurt another. The header names the unit hurt, as target does.
In 4.1–4.17
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 100 |
| 4.11–4.17 | 101 |
A client shows the figure and nothing more: the health it shows for the unit is what replication carries, and this message leaves it as it was.
| Field | Type | What it is |
|---|---|---|
| how | 1-byte bits | |
| how.result | bit 0 to 2 | How the damage landed, and so what a client shows over the unit hurt. 4 shows the amount, 3 shows it as a critical strike, and 2 shows the word for a dodge in place of an amount. |
| how.unused1 | bit 3 | Unused; a server writes zero. |
| how.kind | bit 4 to 5 | What sort of damage it is, which sets how a client colours the figure: 0 red, 1 purple and 2 white. |
| how.unused | bit 6 to 7 | Unused; a server writes zero. |
| target | u32 | The unit hurt. |
| source | u32 | The unit dealing it. A client shows nothing, notices included, unless it holds both target and source; the figure drifts from source toward target, and a champion source has the amount added to its damage dealt. |
| amount | f32 | How much. |
Vectors (2)
In 4.18–4.20
Command 101 on events, sent by the server, reliable.
A client shows the figure and nothing more: the health it shows for the unit is what replication carries, and this message leaves it as it was.
| Field | Type | What it is |
|---|---|---|
| result | u8 | How the damage landed, and so what a client shows over the unit hurt. A value of 6 shows the amount as normal does. Values: 0 invulnerable, 1 unseen, 2 dodged, 3 critical, 4 normal, 5 missed. |
| unused | u8 | Unused; a server writes zero. |
| kind | u8 | What sort of damage it is, which sets how a client colours the figure. Values: 0 physical, 1 magical, 2 true, 3 mixed. |
| amount | f32 | How much. |
| target | u32 | The unit hurt. |
| source | u32 | The unit that hurt it. |
Vectors (2)
TargetUnit
What a server sends to say what a unit is attacking, whatever the unit attacked is. A client takes down whatever it was drawing for that unit’s last target and draws for the new one where the target and the unit’s own settings allow. The header names the unit acting.
In every range of this book
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 105 |
| 4.11–4.20 | 106 |
| Field | Type | What it is |
|---|---|---|
| target | u32 | The unit being attacked, or zero where it is attacking nothing. |
Vectors (6)
a-third-on-4-10, another-on-4-10, one-on-4-10, one-on-4-17, another-on-4-20, one-on-4-20
TargetHeldChampion
What a server sends to mark that a unit is attacking a champion, or to take the mark away. The header names the unit. TargetUnit draws the targeting beam and never touches this mark.
In every range of this book
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 191 |
| 4.11–4.20 | 192 |
A client marks the unit where target is nonzero, names a champion the client holds and the unit is on the other side, drawing an indicator on the unit’s health bar unless the unit’s data turns it off; any other target clears the mark.
| Field | Type | What it is |
|---|---|---|
| target | u32 | The champion being attacked. |
Vectors (4)
HoverTarget
What a server sends to set the unit a unit’s hover indicator points at. The header names the unit.
In every range of this book
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 244 |
| 4.11–4.20 | 245 |
| Field | Type | What it is |
|---|---|---|
| target | u32 | The unit pointed at. |
Vectors (4)
HoverIndicator
What a server sends to turn a unit’s hover indicator on or off. The header names the unit.
In every range of this book
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 245 |
| 4.11–4.20 | 246 |
| Field | Type | What it is |
|---|---|---|
| enabled | u8 | 0 turns it off; any other value on. |
Vectors (4)
AttackIndicators
What a server sends to show or hide a unit’s attack indicators. The header names the unit.
In 4.1–4.17
Command 258 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| unit | u32 | The unit. |
| show | u8 | Whether the indicator shows. |
| minimap | u8 | Whether it shows on the minimap. |
Vectors (1)
In 4.18–4.20
Command 258 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| unit | u32 | The unit. A client acts only where it is a champion. |
| show | 1-byte bits | Where the indicators show. |
| show.show | bit 0 | Set where the indicator shows. |
| show.minimap | bit 1 | Set where it shows on the minimap. |
| show.unused | bit 2 to 7 | Unused; a server writes zero. |
Vectors (1)
GroundAttackMode
What a server sends to make a champion’s clicks attack the ground. It changes what its own player’s clicks do; for any other champion it changes nothing a client shows. A client ignores it where the id names no champion. The header carries zero.
In every range of this book
Command 257 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| champion | u32 | The champion. |
| mode | u8 | Which clicks attack the ground. Values: 0 off, 1 move, 2 select, 3 moveAndSelect, 4 attackMove, 5 atCursor. |
Vectors (2)
UnitDied
What a server sends to say a unit died, to everyone who can see it. The header names the unit this is about.
In 4.1–4.17
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 157 |
| 4.11–4.17 | 158 |
Where killer names a unit it knows, a client announces the kill for that unit, then the one kind picks. Where the unit is not already dead, it cancels the unit’s cast and attack, and only where killer is nonzero puts the unit down, by stayDown and standing.
| Field | Type | What it is |
|---|---|---|
| killer | u32 | The unit credited with the death. |
| damageType | u32 | Unused; a server writes zero. |
| damageSource | u32 | Unused; a server writes zero. |
| stayDown | f32 | How long the unit stays down, in seconds. |
| how | 1-byte bits | |
| how.standing | bit 0 | Set to leave the unit standing as a husk rather than dead: no time of death, and for a champion no death animation and no death screen. A turret kept after death behaves so whatever this says. |
| how.unused | bit 1 to 7 | Unused; a server writes zero. |
| kind | u8 | Which kill a client announces for killer: zero a neutral monster’s, nonzero a minion’s. |
Vectors (2)
In 4.18–4.20
Command 158 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| death | Death | How it died. |
Vectors (1)
ChampionDied
What a server sends to say a champion died. The header names the unit this is about.
In 4.1–4.17
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 93 |
| 4.11–4.17 | 94 |
A client ignores it where killer is zero or the champion is already dead.
| Field | Type | What it is |
|---|---|---|
| killer | u32 | The unit credited with the death. Where it names the champion that died, a client still plays the death. |
| damageType | u32 | The kind of the killing blow. A client shows nothing for it. Values: 0 physical, 1 magic, 2 true, 3 mixed. |
| damageSource | u32 | Where the killing blow came from. A client shows nothing for it. Values: 0 raw, 1 internalRaw, 2 periodic, 3 proc, 4 reactive, 5 onDeath, 6 spell, 7 attack, 8 default, 9 areaSpell, 10 persistentSpell, 11 pet. |
| stayDown | f32 | How long the champion stays down, in seconds. A client counts its respawn timer down from it. |
| how | 1-byte bits | |
| how.zombie | bit 0 | Set to leave the champion standing in a zombie state rather than dead: no death animation and no death screen. |
| how.unused | bit 1 to 7 | Unused; a server writes zero. |
| kind | u8 | It has no effect in this message. |
Vectors (2)
In 4.18–4.20
Command 94 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| death | Death | How it died. |
Vectors (1)
BuildingDied
What a server sends when a building is destroyed. The header names the unit this is about.
In every range of this book
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 136 |
| 4.11–4.20 | 137 |
| Field | Type | What it is |
|---|---|---|
| attacker | u32 | The unit that destroyed it. |
| lastChampion | u32 | The last champion to have harmed it. |
Vectors (6)
a-third-on-4-10, another-on-4-10, one-on-4-10, one-on-4-17, another-on-4-20, one-on-4-20
ForceDeath
What a server sends to put a unit into its death. The header names the unit.
In every range of this book
Command 27 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| duration | f32 | How long it stays down, in seconds. |
Vectors (2)
DeathTimer
What a server sends to set how long a champion stays down. The header names the unit this is about. Sent about a champion that is not down, it shows nothing.
In every range of this book
Command 279 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| stayDown | f32 | How long it stays down, in seconds. |
Vectors (2)
GreyscaleWhenDead
What a server sends to say whether a client draws the world without colour while its champion is down. The header names a champion: that of the player it is sent to.
In 4.1–4.17
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 168 |
| 4.11–4.17 | 169 |
| Field | Type | What it is |
|---|---|---|
| state | 1-byte bits | |
| state.enabled | bit 0 | Set where the world is drawn without colour. Clear, it does not stop a client drawing the world without colour while its champion is down. |
| state.unused | bit 1 to 7 | Unused; a server writes zero. |
Vectors (2)
In 4.18–4.20
Command 169 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| state | 1-byte bits | |
| state.enabled | bit 0 | Set where the world is drawn without colour. |
| state.unused | bit 1 to 7 | Unused; a server writes zero. |
Vectors (1)
DeathHistory
What a server sends to say what led to a death, so the client can lay it out. The header names the unit this is about.
In 4.1–4.5
Command 33 on events, sent by the server, reliable.
A client ignores the whole message unless it holds killer. Each entry’s size after event and source follows from event alone. An entry whose target the client does not hold is left out.
| Field | Type | Present when | What it is |
|---|---|---|---|
| killer | u32 | The unit credited with the death. | |
| span | f32 | The time the entries below cover, in seconds. | |
| sourceType | u8 | What sort of source the killer was. | |
| blobLength | u32 | How many bytes the entries below take together. A client reads exactly that many; zero, or a value above 2147483647, carries no entries. | |
| entryCount | u32 | How many entries follow. | |
| entries | count in entryCount × record | What happened to the unit before it died, packed one after another. | |
| entries[].time | f32 | When it happened, in match seconds. | |
| entries[].count | u16 | How many times. | |
| entries[].event | u8 | What sort of thing, and so which fields follow. Values: 0 removed, 1 spawned, 2 died, 4 championDied, 6 championKill, 8 singleKill, 9 doubleKill, 15 damageTaken, 16 damageDealt, 23 goldSpent, 24 goldEarned, 25 consumableBought, 26 criticalStrike, 29 inhibitorKilled, 30 inhibitorDied, 31 inhibitorRespawningSoon, 34 turretKilled, 35 turretDied, 36 turretDamaged, 37 minionKilled, 38 minionDenied, 39 monsterKilled, 40 largeMonsterKilled, 41 redBuffTaken, 42 blueBuffTaken, 43 nexusKilled, 44 nexusDied, 45 heal, 46 healCast, 47 buff, 48 crowdControl, 49 killingSpree, 56 killDuringSpree, 63 doubleKillDuringSpree, 64 tripleKillDuringSpree, 65 quadraKillDuringSpree, 68 deathAssist, 69 playerQuit, 70 playerLeft, 71 playerReconnected, 86 itemBought, 87 itemSold, 88 itemRemoved, 89 itemCallout, 90 itemChanged, 91 undoChanged, 92 itemSubstituted, 111 minionsSpawned, 112 welcome, 113 startNoticeTwo, 114 startNoticeThree, 118 scoreboardOpened, 143 dragonKilled, 144 dragonKilledWatched, 145 dragonStolen, 146 baronKilled, 147 baronKilledWatched, 148 baronStolen, 149 spiderKilled, 150 spiderKilledWatched, 151 altarCaptured, 152 altarCapturedWatched, 153 wardPlaced, 154 wardKilled. | |
| entries[].source | u32 | The unit that did it. | |
| entries[].target | u32 | The unit it was done to. | |
| entries[].stage | u8 | event = 5 | A client reads it and shows nothing for it; a server writes zero. |
| entries[].damage | record | event = 15 or 16 | How much harm, and from what. |
| entries[].damage.physical | f32 | Physical damage. | |
| entries[].damage.magical | f32 | Magical damage. | |
| entries[].damage.true | f32 | True damage. | |
| entries[].damage.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].damage.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].damage.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].damage.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].damage.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].damage.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].damage.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].damage.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].damage.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].damage.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].spent | u32 | event = 23 | How much gold, as shown. |
| entries[].value | u32 | event = 25 or 86 or 87 or 88 or 90 or 91 or 151 or 152 | What it carries is not recorded for this range; a client does not show it. |
| entries[].critical | f32 | event = 26 | The critical strike’s damage, as shown. |
| entries[].spree | u32 | event = 49 | How many kills in a row, as shown. |
| entries[].earned | record | event = 24 | Gold earned. |
| entries[].earned.gold | f32 | How much gold, as shown. | |
| entries[].earned.detail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].earned.subDetail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal | record | event = 45 or 46 | How much health, and from what. |
| entries[].heal.amount | f32 | How much health, as shown. | |
| entries[].heal.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].heal.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].heal.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].heal.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].heal.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].heal.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].heal.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].heal.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].heal.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].effect | record | event = 47 or 48 | The effect, and where it came from. |
| entries[].effect.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].effect.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].effect.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].effect.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].effect.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].effect.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].effect.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].effect.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].effect.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].effect.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].buff | record | event = 48 | What an effect of this sort carries. |
| entries[].buff.buffType | i32 | What sort of effect. | |
| entries[].buff.duration | f32 | How long it lasted, in seconds. | |
| entries[].assist | record | event = 68 | What one unit did toward a death. |
| entries[].assist.lastHit | f32 | When it last dealt damage, in match seconds. | |
| entries[].assist.physical | f32 | Physical damage it dealt. | |
| entries[].assist.magical | f32 | Magical damage it dealt. | |
| entries[].assist.true | f32 | True damage it dealt. | |
| entries[].assist.share | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.gold | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.credited | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].kill | record | event = 1 or 2 or 35 or 36 or 37 or 39 or 143 or 144 or 145 or 146 or 147 or 148 or 149 or 150 | The reward, and who shared it. |
| entries[].kill.gold | f32 | The gold the kill gave. | |
| entries[].kill.assistCount | u32 | How many of the twelve places below name a unit. | |
| entries[].kill.assists | 12 × u32 | The units that helped, then zeros. | |
| entries[].monster | record | event = 39 or 143 or 144 or 145 or 146 or 147 or 148 or 149 or 150 | Who took the monster. |
| entries[].monster.skinHash | u32 | The number the name of the killer’s look gives. | |
| entries[].monster.skin | i32 | Which look the killer wears. | |
| entries[].monster.side | u32 | The side that took it. | |
| entries[].callout | record | event = 89 | The item a player pointed out, shown as the second name followed by the first in brackets. |
| entries[].callout.item | u32 | The item, shown by name and number. | |
| entries[].callout.quantity | u32 | How many, shown as two digits. | |
| entries[].callout.first | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.second | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.side | u32 | The side of the player who pointed it out. | |
| entries[].substitution | record | event = 92 | An item the shop shows another in place of. |
| entries[].substitution.enabled | u8 | Nonzero to show the substitute in place of the original from now on; zero to stop. | |
| entries[].substitution.original | u32 | The item replaced. | |
| entries[].substitution.substitute | u32 | The item shown in its place. A client reads it only where enabled is nonzero; a server otherwise repeats original. |
Vectors (1)
In 4.6–4.11
Command 33 on events, sent by the server, reliable.
A client ignores the whole message unless it holds killer. Each entry’s size after event and source follows from event alone. An entry whose target the client does not hold is left out.
| Field | Type | Present when | What it is |
|---|---|---|---|
| killer | u32 | The unit credited with the death. | |
| span | f32 | The time the entries below cover, in seconds. | |
| sourceType | u8 | What sort of source the killer was. | |
| blobLength | u32 | How many bytes the entries below take together. A client reads exactly that many; zero, or a value above 2147483647, carries no entries. | |
| entryCount | u32 | How many entries follow. | |
| entries | count in entryCount × record | What happened to the unit before it died, packed one after another. | |
| entries[].time | f32 | When it happened, in match seconds. | |
| entries[].count | u16 | How many times. | |
| entries[].event | u8 | What sort of thing, and so which fields follow. Values: 0 removed, 1 spawned, 2 died, 4 championDied, 6 championKill, 8 singleKill, 9 doubleKill, 15 damageTaken, 16 damageDealt, 23 goldSpent, 24 goldEarned, 25 consumableBought, 26 criticalStrike, 30 inhibitorKilled, 31 inhibitorDied, 32 inhibitorRespawningSoon, 35 turretKilled, 36 turretDied, 37 turretDamaged, 38 minionKilled, 39 minionDenied, 40 monsterKilled, 41 largeMonsterKilled, 42 redBuffTaken, 43 blueBuffTaken, 44 nexusKilled, 45 nexusDied, 46 heal, 47 healCast, 48 buff, 49 crowdControl, 50 killingSpree, 57 killDuringSpree, 64 doubleKillDuringSpree, 65 tripleKillDuringSpree, 66 quadraKillDuringSpree, 69 deathAssist, 70 playerQuit, 71 playerLeft, 72 playerReconnected, 87 itemBought, 88 itemSold, 89 itemRemoved, 90 itemCallout, 91 itemChanged, 92 undoChanged, 93 itemSubstituted, 112 minionsSpawned, 113 welcome, 114 startNoticeTwo, 115 startNoticeThree, 119 scoreboardOpened, 144 dragonKilled, 145 dragonKilledWatched, 146 dragonStolen, 147 baronKilled, 148 baronKilledWatched, 149 baronStolen, 150 spiderKilled, 151 spiderKilledWatched, 152 altarCaptured, 153 altarCapturedWatched, 154 wardPlaced, 155 wardKilled. | |
| entries[].source | u32 | The unit that did it. | |
| entries[].target | u32 | The unit it was done to. | |
| entries[].stage | u8 | event = 5 | A client reads it and shows nothing for it; a server writes zero. |
| entries[].damage | record | event = 15 or 16 | How much harm, and from what. |
| entries[].damage.physical | f32 | Physical damage. | |
| entries[].damage.magical | f32 | Magical damage. | |
| entries[].damage.true | f32 | True damage. | |
| entries[].damage.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].damage.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].damage.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].damage.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].damage.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].damage.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].damage.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].damage.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].damage.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].damage.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].spent | u32 | event = 23 | How much gold, as shown. |
| entries[].value | u32 | event = 25 or 87 or 88 or 89 or 91 or 92 or 152 or 153 | What it carries is not recorded for this range; a client does not show it. |
| entries[].critical | f32 | event = 26 | The critical strike’s damage, as shown. |
| entries[].spree | u32 | event = 50 | How many kills in a row, as shown. |
| entries[].earned | record | event = 24 | Gold earned. |
| entries[].earned.gold | f32 | How much gold, as shown. | |
| entries[].earned.detail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].earned.subDetail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal | record | event = 46 or 47 | How much health, and from what. |
| entries[].heal.amount | f32 | How much health, as shown. | |
| entries[].heal.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].heal.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].heal.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].heal.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].heal.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].heal.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].heal.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].heal.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].heal.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].effect | record | event = 48 or 49 | The effect, and where it came from. |
| entries[].effect.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].effect.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].effect.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].effect.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].effect.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].effect.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].effect.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].effect.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].effect.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].effect.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].buff | record | event = 49 | What an effect of this sort carries. |
| entries[].buff.buffType | i32 | What sort of effect. | |
| entries[].buff.duration | f32 | How long it lasted, in seconds. | |
| entries[].assist | record | event = 69 | What one unit did toward a death. |
| entries[].assist.lastHit | f32 | When it last dealt damage, in match seconds. | |
| entries[].assist.physical | f32 | Physical damage it dealt. | |
| entries[].assist.magical | f32 | Magical damage it dealt. | |
| entries[].assist.true | f32 | True damage it dealt. | |
| entries[].assist.share | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.gold | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.credited | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].kill | record | event = 1 or 2 or 36 or 37 or 38 or 40 or 144 or 145 or 146 or 147 or 148 or 149 or 150 or 151 | The reward, and who shared it. |
| entries[].kill.gold | f32 | The gold the kill gave. | |
| entries[].kill.assistCount | u32 | How many of the twelve places below name a unit. | |
| entries[].kill.assists | 12 × u32 | The units that helped, then zeros. | |
| entries[].monster | record | event = 40 or 144 or 145 or 146 or 147 or 148 or 149 or 150 or 151 | Who took the monster. |
| entries[].monster.skinHash | u32 | The number the name of the killer’s look gives. | |
| entries[].monster.skin | i32 | Which look the killer wears. | |
| entries[].monster.side | u32 | The side that took it. | |
| entries[].callout | record | event = 90 | The item a player pointed out, shown as the second name followed by the first in brackets. |
| entries[].callout.item | u32 | The item, shown by name and number. | |
| entries[].callout.quantity | u32 | How many, shown as two digits. | |
| entries[].callout.first | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.second | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.side | u32 | The side of the player who pointed it out. | |
| entries[].substitution | record | event = 93 | An item the shop shows another in place of. |
| entries[].substitution.enabled | u8 | Nonzero to show the substitute in place of the original from now on; zero to stop. | |
| entries[].substitution.original | u32 | The item replaced. | |
| entries[].substitution.substitute | u32 | The item shown in its place. A client reads it only where enabled is nonzero; a server otherwise repeats original. |
Vectors (1)
In 4.12
Command 33 on events, sent by the server, reliable.
A client ignores the whole message unless it holds killer. Each entry’s size after event and source follows from event alone. An entry whose target the client does not hold is left out.
| Field | Type | Present when | What it is |
|---|---|---|---|
| killer | u32 | The unit credited with the death. | |
| span | f32 | The time the entries below cover, in seconds. | |
| sourceType | u8 | What sort of source the killer was. | |
| blobLength | u32 | How many bytes the entries below take together. A client reads exactly that many; zero, or a value above 2147483647, carries no entries. | |
| entryCount | u32 | How many entries follow. | |
| entries | count in entryCount × record | What happened to the unit before it died, packed one after another. | |
| entries[].time | f32 | When it happened, in match seconds. | |
| entries[].count | u16 | How many times. | |
| entries[].event | u8 | What sort of thing, and so which fields follow. Values: 0 removed, 1 spawned, 2 died, 4 championDied, 6 championKill, 8 singleKill, 9 doubleKill, 15 damageTaken, 16 damageDealt, 23 goldSpent, 24 goldEarned, 25 consumableBought, 26 criticalStrike, 30 inhibitorKilled, 31 inhibitorDied, 32 inhibitorRespawningSoon, 35 turretKilled, 36 turretDied, 37 turretDamaged, 38 minionKilled, 39 minionDenied, 40 monsterKilled, 41 largeMonsterKilled, 42 redBuffTaken, 43 blueBuffTaken, 44 nexusKilled, 45 nexusDied, 46 heal, 47 healCast, 48 buff, 49 crowdControl, 50 killingSpree, 57 killDuringSpree, 64 doubleKillDuringSpree, 65 tripleKillDuringSpree, 66 quadraKillDuringSpree, 69 deathAssist, 70 playerQuit, 71 playerLeft, 72 playerReconnected, 87 itemBought, 88 itemSold, 89 itemRemoved, 90 itemCallout, 91 itemChanged, 92 undoChanged, 93 itemSubstituted, 112 minionsSpawned, 113 welcome, 114 startNoticeTwo, 115 startNoticeThree, 119 scoreboardOpened, 145 dragonKilled, 146 dragonKilledWatched, 147 dragonStolen, 148 baronKilled, 149 baronKilledWatched, 150 baronStolen, 151 spiderKilled, 152 spiderKilledWatched, 153 altarCaptured, 154 altarCapturedWatched, 155 wardPlaced, 156 wardKilled. | |
| entries[].source | u32 | The unit that did it. | |
| entries[].target | u32 | The unit it was done to. | |
| entries[].stage | u8 | event = 5 | A client reads it and shows nothing for it; a server writes zero. |
| entries[].damage | record | event = 15 or 16 | How much harm, and from what. |
| entries[].damage.physical | f32 | Physical damage. | |
| entries[].damage.magical | f32 | Magical damage. | |
| entries[].damage.true | f32 | True damage. | |
| entries[].damage.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].damage.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].damage.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].damage.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].damage.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].damage.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].damage.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].damage.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].damage.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].damage.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].spent | u32 | event = 23 | How much gold, as shown. |
| entries[].value | u32 | event = 25 or 87 or 88 or 89 or 91 or 92 or 153 or 154 | What it carries is not recorded for this range; a client does not show it. |
| entries[].critical | f32 | event = 26 | The critical strike’s damage, as shown. |
| entries[].spree | u32 | event = 50 | How many kills in a row, as shown. |
| entries[].earned | record | event = 24 | Gold earned. |
| entries[].earned.gold | f32 | How much gold, as shown. | |
| entries[].earned.detail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].earned.subDetail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal | record | event = 46 or 47 | How much health, and from what. |
| entries[].heal.amount | f32 | How much health, as shown. | |
| entries[].heal.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].heal.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].heal.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].heal.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].heal.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].heal.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].heal.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].heal.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].heal.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].effect | record | event = 48 or 49 | The effect, and where it came from. |
| entries[].effect.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].effect.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].effect.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].effect.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].effect.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].effect.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].effect.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].effect.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].effect.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].effect.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].buff | record | event = 49 | What an effect of this sort carries. |
| entries[].buff.buffType | i32 | What sort of effect. | |
| entries[].buff.duration | f32 | How long it lasted, in seconds. | |
| entries[].assist | record | event = 69 | What one unit did toward a death. |
| entries[].assist.lastHit | f32 | When it last dealt damage, in match seconds. | |
| entries[].assist.physical | f32 | Physical damage it dealt. | |
| entries[].assist.magical | f32 | Magical damage it dealt. | |
| entries[].assist.true | f32 | True damage it dealt. | |
| entries[].assist.share | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.gold | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.credited | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].kill | record | event = 1 or 2 or 36 or 37 or 38 or 40 or 145 or 146 or 147 or 148 or 149 or 150 or 151 or 152 | The reward, and who shared it. |
| entries[].kill.gold | f32 | The gold the kill gave. | |
| entries[].kill.assistCount | u32 | How many of the twelve places below name a unit. | |
| entries[].kill.assists | 12 × u32 | The units that helped, then zeros. | |
| entries[].monster | record | event = 40 or 145 or 146 or 147 or 148 or 149 or 150 or 151 or 152 | Who took the monster. |
| entries[].monster.skinHash | u32 | The number the name of the killer’s look gives. | |
| entries[].monster.skin | i32 | Which look the killer wears. | |
| entries[].monster.side | u32 | The side that took it. | |
| entries[].callout | record | event = 90 | The item a player pointed out, shown as the second name followed by the first in brackets. |
| entries[].callout.item | u32 | The item, shown by name and number. | |
| entries[].callout.quantity | u32 | How many, shown as two digits. | |
| entries[].callout.first | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.second | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.side | u32 | The side of the player who pointed it out. | |
| entries[].substitution | record | event = 93 | An item the shop shows another in place of. |
| entries[].substitution.enabled | u8 | Nonzero to show the substitute in place of the original from now on; zero to stop. | |
| entries[].substitution.original | u32 | The item replaced. | |
| entries[].substitution.substitute | u32 | The item shown in its place. A client reads it only where enabled is nonzero; a server otherwise repeats original. |
Vectors (1)
In 4.13
Command 33 on events, sent by the server, reliable.
A client ignores the whole message unless it holds killer. Each entry’s size after event and source follows from event alone. An entry whose target the client does not hold is left out.
| Field | Type | Present when | What it is |
|---|---|---|---|
| killer | u32 | The unit credited with the death. | |
| span | f32 | The time the entries below cover, in seconds. | |
| sourceType | u8 | What sort of source the killer was. | |
| blobLength | u32 | How many bytes the entries below take together. A client reads exactly that many; zero, or a value above 2147483647, carries no entries. | |
| entryCount | u32 | How many entries follow. | |
| entries | count in entryCount × record | What happened to the unit before it died, packed one after another. | |
| entries[].time | f32 | When it happened, in match seconds. | |
| entries[].count | u16 | How many times. | |
| entries[].event | u8 | What sort of thing, and so which fields follow. Values: 0 removed, 1 spawned, 2 died, 4 championDied, 6 championKill, 8 singleKill, 9 doubleKill, 15 damageTaken, 16 damageDealt, 23 goldSpent, 24 goldEarned, 25 consumableBought, 26 criticalStrike, 30 inhibitorKilled, 31 inhibitorDied, 32 inhibitorRespawningSoon, 35 turretKilled, 36 turretDied, 37 turretDamaged, 38 minionKilled, 39 minionDenied, 40 monsterKilled, 41 largeMonsterKilled, 42 redBuffTaken, 43 blueBuffTaken, 44 nexusKilled, 45 nexusDied, 46 heal, 47 healCast, 48 buff, 49 crowdControl, 50 killingSpree, 57 killDuringSpree, 64 doubleKillDuringSpree, 65 tripleKillDuringSpree, 66 quadraKillDuringSpree, 69 deathAssist, 70 playerQuit, 71 playerLeft, 72 playerReconnected, 87 itemBought, 88 itemSold, 89 itemRemoved, 90 itemUndone, 91 itemCallout, 92 itemChanged, 93 undoChanged, 94 itemSubstituted, 113 minionsSpawned, 114 welcome, 115 startNoticeTwo, 116 startNoticeThree, 120 scoreboardOpened, 146 dragonKilled, 147 dragonKilledWatched, 148 dragonStolen, 149 baronKilled, 150 baronKilledWatched, 151 baronStolen, 152 spiderKilled, 153 spiderKilledWatched, 154 altarCaptured, 155 altarCapturedWatched, 156 wardPlaced, 157 wardKilled. | |
| entries[].source | u32 | The unit that did it. | |
| entries[].target | u32 | The unit it was done to. | |
| entries[].stage | u8 | event = 5 | A client reads it and shows nothing for it; a server writes zero. |
| entries[].damage | record | event = 15 or 16 | How much harm, and from what. |
| entries[].damage.physical | f32 | Physical damage. | |
| entries[].damage.magical | f32 | Magical damage. | |
| entries[].damage.true | f32 | True damage. | |
| entries[].damage.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].damage.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].damage.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].damage.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].damage.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].damage.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].damage.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].damage.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].damage.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].damage.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].spent | u32 | event = 23 | How much gold, as shown. |
| entries[].value | u32 | event = 25 or 87 or 88 or 89 or 92 or 93 or 154 or 155 | What it carries is not recorded for this range; a client does not show it. |
| entries[].critical | f32 | event = 26 | The critical strike’s damage, as shown. |
| entries[].spree | u32 | event = 50 | How many kills in a row, as shown. |
| entries[].earned | record | event = 24 | Gold earned. |
| entries[].earned.gold | f32 | How much gold, as shown. | |
| entries[].earned.detail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].earned.subDetail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal | record | event = 46 or 47 | How much health, and from what. |
| entries[].heal.amount | f32 | How much health, as shown. | |
| entries[].heal.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].heal.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].heal.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].heal.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].heal.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].heal.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].heal.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].heal.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].heal.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].effect | record | event = 48 or 49 | The effect, and where it came from. |
| entries[].effect.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].effect.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].effect.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].effect.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].effect.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].effect.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].effect.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].effect.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].effect.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].effect.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].buff | record | event = 49 | What an effect of this sort carries. |
| entries[].buff.buffType | i32 | What sort of effect. | |
| entries[].buff.duration | f32 | How long it lasted, in seconds. | |
| entries[].assist | record | event = 69 | What one unit did toward a death. |
| entries[].assist.lastHit | f32 | When it last dealt damage, in match seconds. | |
| entries[].assist.physical | f32 | Physical damage it dealt. | |
| entries[].assist.magical | f32 | Magical damage it dealt. | |
| entries[].assist.true | f32 | True damage it dealt. | |
| entries[].assist.share | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.gold | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.credited | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].kill | record | event = 1 or 2 or 36 or 37 or 38 or 40 or 146 or 147 or 148 or 149 or 150 or 151 or 152 or 153 | The reward, and who shared it. |
| entries[].kill.gold | f32 | The gold the kill gave. | |
| entries[].kill.assistCount | u32 | How many of the twelve places below name a unit. | |
| entries[].kill.assists | 12 × u32 | The units that helped, then zeros. | |
| entries[].monster | record | event = 40 or 146 or 147 or 148 or 149 or 150 or 151 or 152 or 153 | Who took the monster. |
| entries[].monster.skinHash | u32 | The number the name of the killer’s look gives. | |
| entries[].monster.skin | i32 | Which look the killer wears. | |
| entries[].monster.side | u32 | The side that took it. | |
| entries[].callout | record | event = 91 | The item a player pointed out, shown as the second name followed by the first in brackets. |
| entries[].callout.item | u32 | The item, shown by name and number. | |
| entries[].callout.quantity | u32 | How many, shown as two digits. | |
| entries[].callout.first | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.second | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.side | u32 | The side of the player who pointed it out. | |
| entries[].substitution | record | event = 94 | An item the shop shows another in place of. |
| entries[].substitution.enabled | u8 | Nonzero to show the substitute in place of the original from now on; zero to stop. | |
| entries[].substitution.original | u32 | The item replaced. | |
| entries[].substitution.substitute | u32 | The item shown in its place. A client reads it only where enabled is nonzero; a server otherwise repeats original. | |
| entries[].undo | record | event = 90 | A purchase taken back. |
| entries[].undo.item | u32 | What it carries is not recorded for this range; a client does not show it. | |
| entries[].undo.part | u32 | What it carries is not recorded for this range; a client does not show it. | |
| entries[].undo.refund | f32 | The gold given back. A client takes it off the gold the unit is counted as having spent. |
Vectors (1)
In 4.14–4.15
Command 33 on events, sent by the server, reliable.
A client ignores the whole message unless it holds killer. Each entry’s size after event and source follows from event alone. An entry whose target the client does not hold is left out.
| Field | Type | Present when | What it is |
|---|---|---|---|
| killer | u32 | The unit credited with the death. | |
| span | f32 | The time the entries below cover, in seconds. | |
| sourceType | u8 | What sort of source the killer was. | |
| blobLength | u32 | How many bytes the entries below take together. A client reads exactly that many; zero, or a value above 2147483647, carries no entries. | |
| entryCount | u32 | How many entries follow. | |
| entries | count in entryCount × record | What happened to the unit before it died, packed one after another. | |
| entries[].time | f32 | When it happened, in match seconds. | |
| entries[].count | u16 | How many times. | |
| entries[].event | u8 | What sort of thing, and so which fields follow. Values: 0 removed, 1 spawned, 2 died, 4 championDied, 6 championKill, 8 singleKill, 9 doubleKill, 15 damageTaken, 16 damageDealt, 23 goldSpent, 24 goldEarned, 25 consumableBought, 26 criticalStrike, 30 inhibitorKilled, 31 inhibitorDied, 32 inhibitorRespawningSoon, 35 turretKilled, 36 turretDied, 37 turretDamaged, 38 minionKilled, 39 minionDenied, 40 monsterKilled, 41 largeMonsterKilled, 42 redBuffTaken, 43 blueBuffTaken, 44 nexusKilled, 45 nexusDied, 46 heal, 47 healCast, 48 buff, 49 crowdControl, 50 killingSpree, 57 killDuringSpree, 64 doubleKillDuringSpree, 65 tripleKillDuringSpree, 66 quadraKillDuringSpree, 69 deathAssist, 70 playerQuit, 71 playerLeft, 72 playerReconnected, 91 itemBought, 92 itemSold, 93 itemRemoved, 94 itemUndone, 95 itemCallout, 96 itemChanged, 97 undoChanged, 98 itemSubstituted, 117 minionsSpawned, 118 welcome, 119 startNoticeTwo, 120 startNoticeThree, 124 scoreboardOpened, 150 dragonKilled, 151 dragonKilledWatched, 152 dragonStolen, 153 baronKilled, 154 baronKilledWatched, 155 baronStolen, 156 spiderKilled, 157 spiderKilledWatched, 158 altarCaptured, 159 altarCapturedWatched, 160 wardPlaced, 161 wardKilled. | |
| entries[].source | u32 | The unit that did it. | |
| entries[].target | u32 | The unit it was done to. | |
| entries[].stage | u8 | event = 5 | A client reads it and shows nothing for it; a server writes zero. |
| entries[].damage | record | event = 15 or 16 | How much harm, and from what. |
| entries[].damage.physical | f32 | Physical damage. | |
| entries[].damage.magical | f32 | Magical damage. | |
| entries[].damage.true | f32 | True damage. | |
| entries[].damage.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].damage.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].damage.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].damage.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].damage.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].damage.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].damage.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].damage.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].damage.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].damage.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].spent | u32 | event = 23 | How much gold, as shown. |
| entries[].value | u32 | event = 25 or 91 or 92 or 93 or 96 or 97 or 158 or 159 | What it carries is not recorded for this range; a client does not show it. |
| entries[].critical | f32 | event = 26 | The critical strike’s damage, as shown. |
| entries[].spree | u32 | event = 50 | How many kills in a row, as shown. |
| entries[].earned | record | event = 24 | Gold earned. |
| entries[].earned.gold | f32 | How much gold, as shown. | |
| entries[].earned.detail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].earned.subDetail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal | record | event = 46 or 47 | How much health, and from what. |
| entries[].heal.amount | f32 | How much health, as shown. | |
| entries[].heal.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].heal.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].heal.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].heal.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].heal.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].heal.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].heal.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].heal.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].heal.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].effect | record | event = 48 or 49 | The effect, and where it came from. |
| entries[].effect.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].effect.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].effect.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].effect.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].effect.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].effect.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].effect.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].effect.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].effect.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].effect.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].buff | record | event = 49 | What an effect of this sort carries. |
| entries[].buff.buffType | i32 | What sort of effect. | |
| entries[].buff.duration | f32 | How long it lasted, in seconds. | |
| entries[].assist | record | event = 69 | What one unit did toward a death. |
| entries[].assist.lastHit | f32 | When it last dealt damage, in match seconds. | |
| entries[].assist.physical | f32 | Physical damage it dealt. | |
| entries[].assist.magical | f32 | Magical damage it dealt. | |
| entries[].assist.true | f32 | True damage it dealt. | |
| entries[].assist.share | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.gold | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.credited | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].kill | record | event = 1 or 2 or 36 or 37 or 38 or 40 or 150 or 151 or 152 or 153 or 154 or 155 or 156 or 157 | The reward, and who shared it. |
| entries[].kill.gold | f32 | The gold the kill gave. | |
| entries[].kill.assistCount | u32 | How many of the twelve places below name a unit. | |
| entries[].kill.assists | 12 × u32 | The units that helped, then zeros. | |
| entries[].monster | record | event = 40 or 150 or 151 or 152 or 153 or 154 or 155 or 156 or 157 | Who took the monster. |
| entries[].monster.skinHash | u32 | The number the name of the killer’s look gives. | |
| entries[].monster.skin | i32 | Which look the killer wears. | |
| entries[].monster.side | u32 | The side that took it. | |
| entries[].callout | record | event = 95 | The item a player pointed out, shown as the second name followed by the first in brackets. |
| entries[].callout.item | u32 | The item, shown by name and number. | |
| entries[].callout.quantity | u32 | How many, shown as two digits. | |
| entries[].callout.first | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.second | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.side | u32 | The side of the player who pointed it out. | |
| entries[].substitution | record | event = 98 | An item the shop shows another in place of. |
| entries[].substitution.enabled | u8 | Nonzero to show the substitute in place of the original from now on; zero to stop. | |
| entries[].substitution.original | u32 | The item replaced. | |
| entries[].substitution.substitute | u32 | The item shown in its place. A client reads it only where enabled is nonzero; a server otherwise repeats original. | |
| entries[].undo | record | event = 94 | A purchase taken back. |
| entries[].undo.item | u32 | What it carries is not recorded for this range; a client does not show it. | |
| entries[].undo.part | u32 | What it carries is not recorded for this range; a client does not show it. | |
| entries[].undo.refund | f32 | The gold given back. A client takes it off the gold the unit is counted as having spent. |
Vectors (1)
In 4.16
Command 33 on events, sent by the server, reliable.
A client ignores the whole message unless it holds killer. Each entry’s size after event and source follows from event alone. An entry whose target the client does not hold is left out.
| Field | Type | Present when | What it is |
|---|---|---|---|
| killer | u32 | The unit credited with the death. | |
| span | f32 | The time the entries below cover, in seconds. | |
| sourceType | u8 | What sort of source the killer was. | |
| blobLength | u32 | How many bytes the entries below take together. A client reads exactly that many; zero, or a value above 2147483647, carries no entries. | |
| entryCount | u32 | How many entries follow. | |
| entries | count in entryCount × record | What happened to the unit before it died, packed one after another. | |
| entries[].time | f32 | When it happened, in match seconds. | |
| entries[].count | u16 | How many times. | |
| entries[].event | u8 | What sort of thing, and so which fields follow. Values: 0 removed, 1 spawned, 2 died, 4 championDied, 6 championKill, 8 singleKill, 9 doubleKill, 15 damageTaken, 16 damageDealt, 23 goldSpent, 24 goldEarned, 25 consumableBought, 26 criticalStrike, 30 inhibitorKilled, 31 inhibitorDied, 32 inhibitorRespawningSoon, 35 turretKilled, 36 turretDied, 37 turretDamaged, 38 minionKilled, 39 minionDenied, 40 monsterKilled, 41 largeMonsterKilled, 42 redBuffTaken, 43 blueBuffTaken, 44 nexusKilled, 45 nexusDied, 46 heal, 47 healCast, 48 buff, 49 crowdControl, 50 killingSpree, 57 killDuringSpree, 64 doubleKillDuringSpree, 65 tripleKillDuringSpree, 66 quadraKillDuringSpree, 69 deathAssist, 70 playerQuit, 71 playerLeft, 72 playerReconnected, 91 itemBought, 92 itemSold, 93 itemRemoved, 94 itemUndone, 95 itemCallout, 96 itemChanged, 97 undoChanged, 98 itemSubstituted, 118 minionsSpawned, 119 welcome, 120 startNoticeTwo, 121 startNoticeThree, 125 scoreboardOpened, 151 dragonKilled, 152 dragonKilledWatched, 153 dragonStolen, 154 baronKilled, 155 baronKilledWatched, 156 baronStolen, 157 spiderKilled, 158 spiderKilledWatched, 159 altarCaptured, 160 altarCapturedWatched, 161 wardPlaced, 162 wardKilled. | |
| entries[].source | u32 | The unit that did it. | |
| entries[].target | u32 | The unit it was done to. | |
| entries[].stage | u8 | event = 5 | A client reads it and shows nothing for it; a server writes zero. |
| entries[].damage | record | event = 15 or 16 | How much harm, and from what. |
| entries[].damage.physical | f32 | Physical damage. | |
| entries[].damage.magical | f32 | Magical damage. | |
| entries[].damage.true | f32 | True damage. | |
| entries[].damage.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].damage.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].damage.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].damage.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].damage.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].damage.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].damage.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].damage.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].damage.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].damage.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].spent | u32 | event = 23 | How much gold, as shown. |
| entries[].value | u32 | event = 25 or 91 or 92 or 93 or 96 or 97 or 159 or 160 | What it carries is not recorded for this range; a client does not show it. |
| entries[].critical | f32 | event = 26 | The critical strike’s damage, as shown. |
| entries[].spree | u32 | event = 50 | How many kills in a row, as shown. |
| entries[].earned | record | event = 24 | Gold earned. |
| entries[].earned.gold | f32 | How much gold, as shown. | |
| entries[].earned.detail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].earned.subDetail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal | record | event = 46 or 47 | How much health, and from what. |
| entries[].heal.amount | f32 | How much health, as shown. | |
| entries[].heal.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].heal.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].heal.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].heal.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].heal.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].heal.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].heal.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].heal.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].heal.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].effect | record | event = 48 or 49 | The effect, and where it came from. |
| entries[].effect.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 named, 2 script, 3 passive, 4 basicAttack, 5 cheat. | |
| entries[].effect.script | u32 | The spell or effect, by the number its name gives, shown by name. | |
| entries[].effect.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].effect.parentCaster | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].effect.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].effect.parent.source | bit 0 to 3 | What sort of source the parent spell or effect is, numbered as sourceKind is. | |
| entries[].effect.parent.side | bit 4 to 7 | What it means is not recorded for this range; a server writes zero. | |
| entries[].effect.parent.category | bit 8 to 11 | A client sums two entries of this sort where this, the source kinds and both spells match, and, where this is zero, the subjects match too. | |
| entries[].effect.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].effect.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].buff | record | event = 49 | What an effect of this sort carries. |
| entries[].buff.buffType | i32 | What sort of effect. | |
| entries[].buff.duration | f32 | How long it lasted, in seconds. | |
| entries[].assist | record | event = 69 | What one unit did toward a death. |
| entries[].assist.lastHit | f32 | When it last dealt damage, in match seconds. | |
| entries[].assist.physical | f32 | Physical damage it dealt. | |
| entries[].assist.magical | f32 | Magical damage it dealt. | |
| entries[].assist.true | f32 | True damage it dealt. | |
| entries[].assist.share | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.gold | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.credited | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].kill | record | event = 1 or 2 or 36 or 37 or 38 or 40 or 151 or 152 or 153 or 154 or 155 or 156 or 157 or 158 | The reward, and who shared it. |
| entries[].kill.gold | f32 | The gold the kill gave. | |
| entries[].kill.assistCount | u32 | How many of the twelve places below name a unit. | |
| entries[].kill.assists | 12 × u32 | The units that helped, then zeros. | |
| entries[].monster | record | event = 40 or 151 or 152 or 153 or 154 or 155 or 156 or 157 or 158 | Who took the monster. |
| entries[].monster.skinHash | u32 | The number the name of the killer’s look gives. | |
| entries[].monster.skin | i32 | Which look the killer wears. | |
| entries[].monster.side | u32 | The side that took it. | |
| entries[].callout | record | event = 95 | The item a player pointed out, shown as the second name followed by the first in brackets. |
| entries[].callout.item | u32 | The item, shown by name and number. | |
| entries[].callout.quantity | u32 | How many, shown as two digits. | |
| entries[].callout.first | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.second | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.side | u32 | The side of the player who pointed it out. | |
| entries[].substitution | record | event = 98 | An item the shop shows another in place of. |
| entries[].substitution.enabled | u8 | Nonzero to show the substitute in place of the original from now on; zero to stop. | |
| entries[].substitution.original | u32 | The item replaced. | |
| entries[].substitution.substitute | u32 | The item shown in its place. A client reads it only where enabled is nonzero; a server otherwise repeats original. | |
| entries[].undo | record | event = 94 | A purchase taken back. |
| entries[].undo.item | u32 | What it carries is not recorded for this range; a client does not show it. | |
| entries[].undo.parts | 7 × u32 | What they carry is not recorded for this range; a client does not show them. | |
| entries[].undo.refund | f32 | The gold given back. A client takes it off the gold the unit is counted as having spent. |
Vectors (1)
In 4.17
Command 33 on events, sent by the server, reliable.
A client ignores the whole message unless it holds killer. Each entry’s size after event and source follows from event alone. An entry whose target the client does not hold is left out.
| Field | Type | Present when | What it is |
|---|---|---|---|
| killer | u32 | The unit credited with the death. | |
| span | f32 | The time the entries below cover, in seconds. | |
| sourceType | u8 | What sort of source the killer was. | |
| entryCount | u32 | How many entries follow. | |
| entries | count in entryCount × record | What happened to the unit before it died, packed one after another. | |
| entries[].time | f32 | When it happened, in match seconds. | |
| entries[].count | u16 | How many times. | |
| entries[].event | u8 | What sort of thing, and so which fields follow. Values: 0 removed, 1 spawned, 2 died, 4 championDied, 6 championKill, 8 singleKill, 9 doubleKill, 15 damageTaken, 16 damageDealt, 23 goldSpent, 24 goldEarned, 25 consumableBought, 26 criticalStrike, 30 inhibitorKilled, 31 inhibitorDied, 32 inhibitorRespawningSoon, 35 turretKilled, 36 turretDied, 37 turretDamaged, 38 minionKilled, 39 minionDenied, 40 monsterKilled, 41 largeMonsterKilled, 42 redBuffTaken, 43 blueBuffTaken, 44 nexusKilled, 45 nexusDied, 46 heal, 47 healCast, 48 buff, 49 crowdControl, 50 killingSpree, 57 killDuringSpree, 64 doubleKillDuringSpree, 65 tripleKillDuringSpree, 66 quadraKillDuringSpree, 69 deathAssist, 70 playerQuit, 71 playerLeft, 72 playerReconnected, 91 itemBought, 92 itemSold, 93 itemRemoved, 94 itemUndone, 95 itemCallout, 96 itemChanged, 97 undoChanged, 98 itemSubstituted, 118 minionsSpawned, 119 welcome, 120 startNoticeTwo, 121 startNoticeThree, 125 scoreboardOpened, 151 dragonKilled, 152 dragonKilledWatched, 153 dragonStolen, 154 baronKilled, 155 baronKilledWatched, 156 baronStolen, 157 spiderKilled, 158 spiderKilledWatched, 159 altarCaptured, 160 altarCapturedWatched, 161 wardPlaced, 162 wardKilled. | |
| entries[].source | u32 | The unit that did it. | |
| entries[].target | u32 | The unit it was done to. | |
| entries[].stage | u8 | event = 5 | A client reads it and shows nothing for it; a server writes zero. |
| entries[].damage | record | event = 15 or 16 | How much harm, and from what. |
| entries[].damage.script | u32 | The spell, item or effect, by the number its name gives, shown by name. | |
| entries[].damage.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 item, 2 buff, 3 character, 4 basicAttack, 5 cheat, 6 unknown. | |
| entries[].damage.sourceObject | u32 | The unit it came from, or zero. | |
| entries[].damage.physical | f32 | Physical damage. | |
| entries[].damage.magical | f32 | Magical damage. | |
| entries[].damage.true | f32 | True damage. | |
| entries[].damage.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].damage.parentCaster | u32 | The unit that cast that spell or effect, or zero. | |
| entries[].damage.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].damage.parent.source | bit 0 to 3 | What sort of source the parent is, numbered as sourceKind is. | |
| entries[].damage.parent.side | bit 4 to 7 | The side of the parent’s caster. | |
| entries[].damage.parent.category | bit 8 to 11 | What sort of unit cast the parent: 0 a champion, 1 a minion, 2 a turret, 3 a pet, 4 a clone, 5 unknown. A client sums two entries where this, the source kind and the spell match. | |
| entries[].damage.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].damage.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].spent | u32 | event = 23 | How much gold, as shown. |
| entries[].value | u32 | event = 25 or 91 or 92 or 93 or 96 or 97 or 159 or 160 | What it carries is not recorded for this range; a client does not show it. |
| entries[].critical | f32 | event = 26 | The critical strike’s damage, as shown. |
| entries[].spree | u32 | event = 50 | How many kills in a row, as shown. |
| entries[].earned | record | event = 24 | Gold earned. |
| entries[].earned.gold | f32 | How much gold, as shown. | |
| entries[].earned.detail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].earned.subDetail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal | record | event = 46 or 47 | How much health, and from what. |
| entries[].heal.script | u32 | The spell, item or effect, by the number its name gives, shown by name. | |
| entries[].heal.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 item, 2 buff, 3 character, 4 basicAttack, 5 cheat, 6 unknown. | |
| entries[].heal.sourceObject | u32 | The unit it came from, or zero. | |
| entries[].heal.amount | f32 | How much health, as shown. | |
| entries[].heal.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].heal.parentCaster | u32 | The unit that cast that spell or effect, or zero. | |
| entries[].heal.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].heal.parent.source | bit 0 to 3 | What sort of source the parent is, numbered as sourceKind is. | |
| entries[].heal.parent.side | bit 4 to 7 | The side of the parent’s caster. | |
| entries[].heal.parent.category | bit 8 to 11 | What sort of unit cast the parent: 0 a champion, 1 a minion, 2 a turret, 3 a pet, 4 a clone, 5 unknown. A client sums two entries where this, the source kind and the spell match. | |
| entries[].heal.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].heal.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].effect | record | event = 48 or 49 | The effect, and where it came from. |
| entries[].effect.script | u32 | The spell, item or effect, by the number its name gives, shown by name. | |
| entries[].effect.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 item, 2 buff, 3 character, 4 basicAttack, 5 cheat, 6 unknown. | |
| entries[].effect.sourceObject | u32 | The unit it came from, or zero. | |
| entries[].effect.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].effect.parentCaster | u32 | The unit that cast that spell or effect, or zero. | |
| entries[].effect.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].effect.parent.source | bit 0 to 3 | What sort of source the parent is, numbered as sourceKind is. | |
| entries[].effect.parent.side | bit 4 to 7 | The side of the parent’s caster. | |
| entries[].effect.parent.category | bit 8 to 11 | What sort of unit cast the parent: 0 a champion, 1 a minion, 2 a turret, 3 a pet, 4 a clone, 5 unknown. A client sums two entries where this, the source kind and the spell match. | |
| entries[].effect.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].effect.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].buff | record | event = 49 | What an effect of this sort carries. |
| entries[].buff.buffType | i32 | What sort of effect. | |
| entries[].buff.duration | f32 | How long it lasted, in seconds. | |
| entries[].assist | record | event = 69 | What one unit did toward a death. |
| entries[].assist.lastHit | f32 | When it last dealt damage, in match seconds. | |
| entries[].assist.physical | f32 | Physical damage it dealt. | |
| entries[].assist.magical | f32 | Magical damage it dealt. | |
| entries[].assist.true | f32 | True damage it dealt. | |
| entries[].assist.share | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.gold | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.credited | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].kill | record | event = 1 or 2 or 36 or 37 or 38 or 40 or 151 or 152 or 153 or 154 or 155 or 156 or 157 or 158 | The reward, and who shared it. |
| entries[].kill.gold | f32 | The gold the kill gave. | |
| entries[].kill.assistCount | u32 | How many of the twelve places below name a unit. | |
| entries[].kill.assists | 12 × u32 | The units that helped, then zeros. | |
| entries[].monster | record | event = 40 or 151 or 152 or 153 or 154 or 155 or 156 or 157 or 158 | Who took the monster. |
| entries[].monster.skinHash | u32 | The number the name of the killer’s look gives. | |
| entries[].monster.skin | i32 | Which look the killer wears. | |
| entries[].monster.side | u32 | The side that took it. | |
| entries[].callout | record | event = 95 | The item a player pointed out, shown as the second name followed by the first in brackets. |
| entries[].callout.item | u32 | The item, shown by name and number. | |
| entries[].callout.quantity | u32 | How many, shown as two digits. | |
| entries[].callout.first | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.second | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.side | u32 | The side of the player who pointed it out. | |
| entries[].substitution | record | event = 98 | An item the shop shows another in place of. |
| entries[].substitution.enabled | u8 | Nonzero to show the substitute in place of the original from now on; zero to stop. | |
| entries[].substitution.original | u32 | The item replaced. | |
| entries[].substitution.substitute | u32 | The item shown in its place. A client reads it only where enabled is nonzero; a server otherwise repeats original. | |
| entries[].undo | record | event = 94 | A purchase taken back. |
| entries[].undo.item | u32 | What it carries is not recorded for this range; a client does not show it. | |
| entries[].undo.parts | 7 × u32 | What they carry is not recorded for this range; a client does not show them. | |
| entries[].undo.refund | f32 | The gold given back. A client takes it off the gold the unit is counted as having spent. |
Vectors (1)
In 4.18–4.19
Command 33 on events, sent by the server, reliable.
| Field | Type | Present when | What it is |
|---|---|---|---|
| cause | u8 | What sort of thing did it. | |
| killer | u32 | The unit credited with it. | |
| span | f32 | The time the entries below cover, in seconds. | |
| entryCount | u32 | How many entries follow. | |
| entries | count in entryCount × record | What happened to the unit before it died, packed one after another. | |
| entries[].time | f32 | When it happened, in match seconds. | |
| entries[].count | u16 | How many times. | |
| entries[].event | u8 | What sort of thing, and so which fields follow. Values: 0 removed, 1 spawned, 2 died, 4 championDied, 6 championKill, 8 singleKill, 9 doubleKill, 15 damageTaken, 16 damageDealt, 23 goldSpent, 24 goldEarned, 25 consumableBought, 26 criticalStrike, 30 inhibitorKilled, 31 inhibitorDied, 32 inhibitorRespawningSoon, 35 turretKilled, 36 turretDied, 37 turretDamaged, 38 minionKilled, 39 minionDenied, 40 monsterKilled, 41 largeMonsterKilled, 42 redBuffTaken, 43 blueBuffTaken, 44 nexusKilled, 45 nexusDied, 46 heal, 47 healCast, 48 buff, 49 crowdControl, 50 killingSpree, 57 killDuringSpree, 64 doubleKillDuringSpree, 65 tripleKillDuringSpree, 66 quadraKillDuringSpree, 69 deathAssist, 70 playerQuit, 71 playerLeft, 72 playerReconnected, 91 itemBought, 92 itemSold, 93 itemRemoved, 94 itemUndone, 95 itemCallout, 96 itemChanged, 97 undoChanged, 98 itemSubstituted, 118 minionsSpawned, 119 welcome, 120 startNoticeTwo, 121 startNoticeThree, 125 scoreboardOpened, 151 dragonKilled, 152 dragonKilledWatched, 153 dragonStolen, 154 baronKilled, 155 baronKilledWatched, 156 baronStolen, 157 spiderKilled, 158 spiderKilledWatched, 159 altarCaptured, 160 altarCapturedWatched, 161 wardPlaced, 162 wardKilled. | |
| entries[].source | u32 | The unit that did it. | |
| entries[].target | u32 | The unit it was done to. | |
| entries[].stage | u8 | event = 5 | A client reads it and shows nothing for it; a server writes zero. |
| entries[].damage | record | event = 15 or 16 | How much harm, and from what. |
| entries[].damage.script | u32 | The spell, item or effect, by the number its name gives, shown by name. | |
| entries[].damage.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 item, 2 buff, 3 character, 4 basicAttack, 5 cheat, 6 unknown. | |
| entries[].damage.sourceObject | u32 | The unit it came from, or zero. | |
| entries[].damage.physical | f32 | Physical damage. | |
| entries[].damage.magical | f32 | Magical damage. | |
| entries[].damage.true | f32 | True damage. | |
| entries[].damage.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].damage.parentCaster | u32 | The unit that cast that spell or effect, or zero. | |
| entries[].damage.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].damage.parent.source | bit 0 to 3 | What sort of source the parent is, numbered as sourceKind is. | |
| entries[].damage.parent.side | bit 4 to 7 | The side of the parent’s caster. | |
| entries[].damage.parent.category | bit 8 to 11 | What sort of unit cast the parent: 0 a champion, 1 a minion, 2 a turret, 3 a pet, 4 a clone, 5 unknown. A client sums two entries where this, the source kind and the spell match. | |
| entries[].damage.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].damage.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].spent | u32 | event = 23 | How much gold, as shown. |
| entries[].value | u32 | event = 25 or 91 or 92 or 93 or 96 or 97 or 159 or 160 | What it carries is not recorded for this range; a client does not show it. |
| entries[].critical | f32 | event = 26 | The critical strike’s damage, as shown. |
| entries[].spree | u32 | event = 50 | How many kills in a row, as shown. |
| entries[].earned | record | event = 24 | Gold earned. |
| entries[].earned.gold | f32 | How much gold, as shown. | |
| entries[].earned.detail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].earned.subDetail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal | record | event = 46 or 47 | How much health, and from what. |
| entries[].heal.script | u32 | The spell, item or effect, by the number its name gives, shown by name. | |
| entries[].heal.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 item, 2 buff, 3 character, 4 basicAttack, 5 cheat, 6 unknown. | |
| entries[].heal.sourceObject | u32 | The unit it came from, or zero. | |
| entries[].heal.amount | f32 | How much health, as shown. | |
| entries[].heal.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].heal.parentCaster | u32 | The unit that cast that spell or effect, or zero. | |
| entries[].heal.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].heal.parent.source | bit 0 to 3 | What sort of source the parent is, numbered as sourceKind is. | |
| entries[].heal.parent.side | bit 4 to 7 | The side of the parent’s caster. | |
| entries[].heal.parent.category | bit 8 to 11 | What sort of unit cast the parent: 0 a champion, 1 a minion, 2 a turret, 3 a pet, 4 a clone, 5 unknown. A client sums two entries where this, the source kind and the spell match. | |
| entries[].heal.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].heal.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].effect | record | event = 48 or 49 | The effect, and where it came from. |
| entries[].effect.script | u32 | The spell, item or effect, by the number its name gives, shown by name. | |
| entries[].effect.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 item, 2 buff, 3 character, 4 basicAttack, 5 cheat, 6 unknown. | |
| entries[].effect.sourceObject | u32 | The unit it came from, or zero. | |
| entries[].effect.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].effect.parentCaster | u32 | The unit that cast that spell or effect, or zero. | |
| entries[].effect.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].effect.parent.source | bit 0 to 3 | What sort of source the parent is, numbered as sourceKind is. | |
| entries[].effect.parent.side | bit 4 to 7 | The side of the parent’s caster. | |
| entries[].effect.parent.category | bit 8 to 11 | What sort of unit cast the parent: 0 a champion, 1 a minion, 2 a turret, 3 a pet, 4 a clone, 5 unknown. A client sums two entries where this, the source kind and the spell match. | |
| entries[].effect.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].effect.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].buff | record | event = 49 | What an effect of this sort carries. |
| entries[].buff.buffType | i32 | What sort of effect. | |
| entries[].buff.duration | f32 | How long it lasted, in seconds. | |
| entries[].assist | record | event = 69 | What one unit did toward a death. |
| entries[].assist.lastHit | f32 | When it last dealt damage, in match seconds. | |
| entries[].assist.physical | f32 | Physical damage it dealt. | |
| entries[].assist.magical | f32 | Magical damage it dealt. | |
| entries[].assist.true | f32 | True damage it dealt. | |
| entries[].assist.share | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.gold | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.credited | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].kill | record | event = 1 or 2 or 36 or 37 or 38 or 40 or 151 or 152 or 153 or 154 or 155 or 156 or 157 or 158 | The reward, and who shared it. |
| entries[].kill.gold | f32 | The gold the kill gave. | |
| entries[].kill.assistCount | u32 | How many of the twelve places below name a unit. | |
| entries[].kill.assists | 12 × u32 | The units that helped, then zeros. | |
| entries[].monster | record | event = 40 or 151 or 152 or 153 or 154 or 155 or 156 or 157 or 158 | Who took the monster. |
| entries[].monster.skinHash | u32 | The number the name of the killer’s look gives. | |
| entries[].monster.skin | i32 | Which look the killer wears. | |
| entries[].monster.side | u32 | The side that took it. | |
| entries[].callout | record | event = 95 | The item a player pointed out, shown as the second name followed by the first in brackets. |
| entries[].callout.item | u32 | The item, shown by name and number. | |
| entries[].callout.quantity | u32 | How many, shown as two digits. | |
| entries[].callout.first | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.second | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.side | u32 | The side of the player who pointed it out. | |
| entries[].substitution | record | event = 98 | An item the shop shows another in place of. |
| entries[].substitution.enabled | u8 | Nonzero to show the substitute in place of the original from now on; zero to stop. | |
| entries[].substitution.original | u32 | The item replaced. | |
| entries[].substitution.substitute | u32 | The item shown in its place. A client reads it only where enabled is nonzero; a server otherwise repeats original. | |
| entries[].undo | record | event = 94 | A purchase taken back. |
| entries[].undo.item | u32 | What it carries is not recorded for this range; a client does not show it. | |
| entries[].undo.parts | 7 × u32 | What they carry is not recorded for this range; a client does not show them. | |
| entries[].undo.refund | f32 | The gold given back. A client takes it off the gold the unit is counted as having spent. |
Vectors (1)
In 4.20
Command 33 on events, sent by the server, reliable.
| Field | Type | Present when | What it is |
|---|---|---|---|
| cause | u8 | What sort of thing did it. | |
| killer | u32 | The unit credited with it. | |
| span | f32 | The time the entries below cover, in seconds. | |
| entryCount | u32 | How many entries follow. | |
| entries | count in entryCount × record | What happened to the unit before it died, packed one after another. | |
| entries[].time | f32 | When it happened, in match seconds. | |
| entries[].count | u16 | How many times. | |
| entries[].event | u8 | What sort of thing, and so which fields follow. Values: 0 removed, 1 spawned, 2 died, 4 championDied, 6 championKill, 8 singleKill, 9 doubleKill, 15 damageTaken, 16 damageDealt, 23 goldSpent, 24 goldEarned, 25 consumableBought, 26 criticalStrike, 30 inhibitorKilled, 31 inhibitorDied, 32 inhibitorRespawningSoon, 35 turretKilled, 36 turretDied, 37 turretDamaged, 38 minionKilled, 39 minionDenied, 40 monsterKilled, 41 largeMonsterKilled, 42 redBuffTaken, 43 blueBuffTaken, 44 nexusKilled, 45 nexusDied, 46 heal, 47 healCast, 48 buff, 49 crowdControl, 50 killingSpree, 57 killDuringSpree, 64 doubleKillDuringSpree, 65 tripleKillDuringSpree, 66 quadraKillDuringSpree, 69 deathAssist, 70 playerQuit, 71 playerLeft, 72 playerReconnected, 91 itemBought, 92 itemSold, 93 itemRemoved, 94 itemUndone, 95 itemCallout, 96 itemChanged, 97 undoChanged, 98 itemSubstituted, 118 minionsSpawned, 119 welcome, 120 startNoticeTwo, 121 startNoticeThree, 125 scoreboardOpened, 151 dragonKilled, 152 dragonKilledWatched, 153 dragonStolen, 154 baronKilled, 155 baronKilledWatched, 156 baronStolen, 157 spiderKilled, 158 spiderKilledWatched, 159 altarCaptured, 160 altarCapturedWatched, 161 wardPlaced, 162 wardKilled. | |
| entries[].source | u32 | The unit that did it. | |
| entries[].target | u32 | The unit it was done to. | |
| entries[].stage | u8 | event = 5 | A client reads it and shows nothing for it; a server writes zero. |
| entries[].damage | record | event = 15 or 16 | How much harm, and from what. |
| entries[].damage.byParent | u8 | Nonzero to credit it to the parent spell and its caster rather than to the spell and its source unit; where the parent caster is unknown, a client credits the source unit. | |
| entries[].damage.script | u32 | The spell, item or effect, by the number its name gives, shown by name. | |
| entries[].damage.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 item, 2 buff, 3 character, 4 basicAttack, 5 cheat, 6 unknown. | |
| entries[].damage.sourceObject | u32 | The unit it came from, or zero. | |
| entries[].damage.physical | f32 | Physical damage. | |
| entries[].damage.magical | f32 | Magical damage. | |
| entries[].damage.true | f32 | True damage. | |
| entries[].damage.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].damage.parentCaster | u32 | The unit that cast that spell or effect, or zero. | |
| entries[].damage.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].damage.parent.source | bit 0 to 3 | What sort of source the parent is, numbered as sourceKind is. | |
| entries[].damage.parent.side | bit 4 to 7 | The side of the parent’s caster. | |
| entries[].damage.parent.category | bit 8 to 11 | What sort of unit cast the parent: 0 a champion, 1 a minion, 2 a turret, 3 a pet, 4 a clone, 5 unknown. A client sums two entries where this, the source kind and the spell match. | |
| entries[].damage.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].damage.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].spent | u32 | event = 23 | How much gold, as shown. |
| entries[].value | u32 | event = 25 or 91 or 92 or 93 or 96 or 97 or 159 or 160 | What it carries is not recorded for this range; a client does not show it. |
| entries[].critical | f32 | event = 26 | The critical strike’s damage, as shown. |
| entries[].spree | u32 | event = 50 | How many kills in a row, as shown. |
| entries[].earned | record | event = 24 | Gold earned. |
| entries[].earned.gold | f32 | How much gold, as shown. | |
| entries[].earned.detail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].earned.subDetail | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].heal | record | event = 46 or 47 | How much health, and from what. |
| entries[].heal.byParent | u8 | Nonzero to credit it to the parent spell and its caster rather than to the spell and its source unit; where the parent caster is unknown, a client credits the source unit. | |
| entries[].heal.script | u32 | The spell, item or effect, by the number its name gives, shown by name. | |
| entries[].heal.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 item, 2 buff, 3 character, 4 basicAttack, 5 cheat, 6 unknown. | |
| entries[].heal.sourceObject | u32 | The unit it came from, or zero. | |
| entries[].heal.amount | f32 | How much health, as shown. | |
| entries[].heal.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].heal.parentCaster | u32 | The unit that cast that spell or effect, or zero. | |
| entries[].heal.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].heal.parent.source | bit 0 to 3 | What sort of source the parent is, numbered as sourceKind is. | |
| entries[].heal.parent.side | bit 4 to 7 | The side of the parent’s caster. | |
| entries[].heal.parent.category | bit 8 to 11 | What sort of unit cast the parent: 0 a champion, 1 a minion, 2 a turret, 3 a pet, 4 a clone, 5 unknown. A client sums two entries where this, the source kind and the spell match. | |
| entries[].heal.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].heal.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].effect | record | event = 48 or 49 | The effect, and where it came from. |
| entries[].effect.byParent | u8 | Nonzero to credit it to the parent spell and its caster rather than to the spell and its source unit; where the parent caster is unknown, a client credits the source unit. | |
| entries[].effect.script | u32 | The spell, item or effect, by the number its name gives, shown by name. | |
| entries[].effect.sourceKind | u8 | What sort of source it was. Values: 0 spell, 1 item, 2 buff, 3 character, 4 basicAttack, 5 cheat, 6 unknown. | |
| entries[].effect.sourceObject | u32 | The unit it came from, or zero. | |
| entries[].effect.parentScript | u32 | The spell or effect it came from, by the number its name gives, shown by name. | |
| entries[].effect.parentCaster | u32 | The unit that cast that spell or effect, or zero. | |
| entries[].effect.parent | 2-byte bits | Where the spell or effect came from. | |
| entries[].effect.parent.source | bit 0 to 3 | What sort of source the parent is, numbered as sourceKind is. | |
| entries[].effect.parent.side | bit 4 to 7 | The side of the parent’s caster. | |
| entries[].effect.parent.category | bit 8 to 11 | What sort of unit cast the parent: 0 a champion, 1 a minion, 2 a turret, 3 a pet, 4 a clone, 5 unknown. A client sums two entries where this, the source kind and the spell match. | |
| entries[].effect.parent.spellLevel | bit 12 to 14 | The rank of the spell, as shown. | |
| entries[].effect.parent.unused | bit 15 | Unused; a server writes zero. | |
| entries[].buff | record | event = 49 | What an effect of this sort carries. |
| entries[].buff.buffType | i32 | What sort of effect. | |
| entries[].buff.duration | f32 | How long it lasted, in seconds. | |
| entries[].assist | record | event = 69 | What one unit did toward a death. |
| entries[].assist.lastHit | f32 | When it last dealt damage, in match seconds. | |
| entries[].assist.physical | f32 | Physical damage it dealt. | |
| entries[].assist.magical | f32 | Magical damage it dealt. | |
| entries[].assist.true | f32 | True damage it dealt. | |
| entries[].assist.share | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.gold | f32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].assist.credited | u32 | What it carries is not recorded for this range; a server writes zero. | |
| entries[].kill | record | event = 1 or 2 or 36 or 37 or 38 or 40 or 151 or 152 or 153 or 154 or 155 or 156 or 157 or 158 | The reward, and who shared it. |
| entries[].kill.gold | f32 | The gold the kill gave. | |
| entries[].kill.assistCount | u32 | How many of the twelve places below name a unit. | |
| entries[].kill.assists | 12 × u32 | The units that helped, then zeros. | |
| entries[].monster | record | event = 40 or 151 or 152 or 153 or 154 or 155 or 156 or 157 or 158 | Who took the monster. |
| entries[].monster.skinHash | u32 | The number the name of the killer’s look gives. | |
| entries[].monster.skin | i32 | Which look the killer wears. | |
| entries[].monster.side | u32 | The side that took it. | |
| entries[].callout | record | event = 95 | The item a player pointed out, shown as the second name followed by the first in brackets. |
| entries[].callout.item | u32 | The item, shown by name and number. | |
| entries[].callout.quantity | u32 | How many, shown as two digits. | |
| entries[].callout.first | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.second | bytes, 24 | As a client lays a short text out: up to fifteen characters ended by a zero byte in the first sixteen, the length as a u32, then 15 as a u32. | |
| entries[].callout.side | u32 | The side of the player who pointed it out. | |
| entries[].substitution | record | event = 98 | An item the shop shows another in place of. |
| entries[].substitution.enabled | u8 | Nonzero to show the substitute in place of the original from now on; zero to stop. | |
| entries[].substitution.original | u32 | The item replaced. | |
| entries[].substitution.substitute | u32 | The item shown in its place. A client reads it only where enabled is nonzero; a server otherwise repeats original. | |
| entries[].undo | record | event = 94 | A purchase taken back. |
| entries[].undo.item | u32 | What it carries is not recorded for this range; a client does not show it. | |
| entries[].undo.parts | 7 × u32 | What they carry is not recorded for this range; a client does not show them. | |
| entries[].undo.refund | f32 | The gold given back. A client takes it off the gold the unit is counted as having spent. |
Vectors (1)
InhibitorState
What a server sends to change the state of an inhibitor, and say how long the new state lasts. The header names the unit this is about.
In 4.1–4.17
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 42 |
| 4.11–4.17 | 43 |
| Field | Type | What it is |
|---|---|---|
| state | 2-byte bits | |
| state.duration | bit 0 to 14 | How long the state lasts, in seconds; zero where alive is set. |
| state.alive | bit 15 | Set while the inhibitor stands, with duration zero; clear while a state lasts the duration given. |
Vectors (2)
In 4.18–4.20
Command 43 on events, sent by the server, reliable.
| Field | Type | What it is |
|---|---|---|
| state | u8 | Which state. A server sends 0 as the inhibitor falls. |
| duration | u16 | Seconds the state lasts, counted down by the client. After a state of 0, the client announces once that the inhibitor returns soon, when fewer than 15 seconds remain. |
Vectors (1)
UnitDiedOnMap
What a server sends to say a unit died, for what the client draws on its map rather than on the field. The header names the unit this is about.
Revived
What a server sends to put a champion back on the field. The header names the unit this is about.
In every range of this book
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 46 |
| 4.11–4.20 | 47 |
| Field | Type | What it is |
|---|---|---|
| atX | f32 | Where it returns, along one ground axis, in world units. |
| atZ | f32 | Where it returns, along the other, in world units. |
| resource | f32 | What its spendable resource stands at on return. |
Vectors (4)
Respawned
What a server sends to bring a dead champion back at a place. The header names the champion. A client keeps the champion’s level, experience, gold, maxima and spell ranks, and plays the coming back.
In every range of this book
Carried on events, sent by the server, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 73 |
| 4.11–4.20 | 74 |
The champion comes back with full health, and for its own champion a client moves the camera onto it where the player asked for that. A client sets the champion on the nearest open ground.
| Field | Type | What it is |
|---|---|---|
| x | f32 | Where it comes back, in world units. |
| z | f32 | Where it comes back, in world units. |
| resource | f32 | Its resource, such as mana, once back. |
Vectors (3)
UseObject
What a client sends to use a unit: as its player right-clicks a unit its character data makes usable by them and off its use cooldown. The header names the sender’s champion.
In every range of this book
Carried on requests, sent by the client, reliable, under these commands:
| Builds | Command |
|---|---|
| 4.1–4.10 | 57 |
| 4.11–4.20 | 58 |
A client also sends it as a unit its champion is attacking changes side (TeamChanged), whether usable or not.
| Field | Type | What it is |
|---|---|---|
| target | u32 | The unit to use. |