[DOTA2] Roster events are spammed throughout the match and have wrong data

Related Games:
Dota 2

Related app/team name (not a must if you want to keep it private):
DotaPlus

Issue Description:
Well after pick stage, and during the entire match, roster events are spammed. This is causing both performance issues, and is also something that hurts reliability.

It seems that the low level, plugin field PossibleHeroId fluctuates between an empty value, and the internal hero name, which is not a hero ID, hence there’s the HeroName field that has the same value.

Also, the low level, plugin field HeroID is either 569 or 570, regardless of the actual hero, and this is not even a proper hero ID - it seems like a random number. The only relation I can think for 570 is that it’s the Steam Game ID of Dota 2

Example:

|Update player: index = 9 Name = ...., Steam = 76561198099492370, HeroID = 570, HeroName = npc_dota_hero_zuus, PossibleHeroId = , Team = 3 Role=0 ||
|---|---|
|Update player: index = 9 Name = ...., Steam = 76561198099492370, HeroID = 570, HeroName = npc_dota_hero_zuus, PossibleHeroId = npc_dota_hero_zuus, Team = 3 Role=0 ||
|Update player: index = 9 Name = ...., Steam = 76561198099492370, HeroID = 570, HeroName = npc_dota_hero_zuus, PossibleHeroId = , Team = 3 Role=0 ||
|Update player: index = 9 Name = ...., Steam = 76561198099492370, HeroID = 570, HeroName = npc_dota_hero_zuus, PossibleHeroId = npc_dota_hero_zuus, Team = 3 Role=0 ||

In summary:

  1. Events shouldn’t appear after draft/pick stage
  2. PossibleHeroId should either be removed if it’s not needed or have a proper value, and it should stop fluctuating in value.
  3. HeroID should either be removed if it’s not needed or have a proper value. This random 570/569 makes no sense.

Can you reproduce it (exact steps to reproduce):
Use a debug DLL with debugview and just watch/play a match.

Impact for my app: [e.g. x% of the users complained about it, it’s a show-stopper]
If this is part of what causes [DOTA2] Missing hero detection then it’s very critical (not show stopper, but it hurts reliability).
Otherwise it’s just a performance issue, which by itself is also very important - it bugs with events throughout the entire match.

Do you currently have a workaround?
No.

Attached in a highlight from my debugview log, AFTER the draft stage was over, during the match itself.
TSURY-MAINPC.LOG (43.0 KB)

Hey @Tsury,

We will check it and get back to you.

Thanks