All the information below is already in
https://github.com/koliva8245/Heroes.ReplayParser
I am not sure the best place to put this - but the information for the advanced stats below
In Player.cs the following objects were added
public int HighestKillStreak { get; set; } = 0;
public int ProtectionGivenToAllies { get; set; } = 0;
public int TimeSilencingEnemyHeroes { get; set; } = 0;
public int TimeRootingEnemyHeroes { get; set; } = 0;
public int TimeStunningEnemyHeroes { get; set; } = 0;
public int ClutchHealsPerformed { get; set; } = 0;
public int EscapesPerformed { get; set; } = 0;
public int VengeancesPerformed { get; set; } = 0;
public int OutnumberedDeaths { get; set; } = 0;
public int TeamfightEscapesPerformed { get; set; } = 0;
public int TeamfightHealingDone { get; set; } = 0;
public int TeamfightDamageTaken { get; set; } = 0;
public int TeamfightHeroDamage { get; set; } = 0;
public int Multikill { get; set; } = 0;
public int? PhysicalDamage { get; set; } = null;
public int? SpellDamage { get; set; } = null;
You can also pick up match awards in Player.cs
public List MatchAwards { get; set; } = new List();
Experience For Each Team is grabbed from the below Object in the Replay.cs file
public List[] TeamPeriodicXPBreakdown { get; set; } = new List[2];
Draft Picks for a match are grabbed from the below object in the Replay.cs file
public List DraftOrder { get; set; } = new List();
To pick up accurate Player Teams, and Account Levels, you need to change detailedBattleLobbyParsing to True in the DataParser constructor
For replay draft order I have a table like below for storing that data, where 'type' is either ban or player pick
CREATE TABLE replay_draft_order (
replayID int(11) NOT NULL,
type tinyint(4) NOT NULL,
pick_id tinyint(4) NOT NULL,
hero int(10) unsigned NOT NULL,
PRIMARY KEY (replayID,type,pick_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
For storing experience data I have a table like below
CREATE TABLE replay_experience_breakdown (
replayID int(11) NOT NULL,
team int(11) NOT NULL,
team_level int(11) NOT NULL,
timestamp time NOT NULL,
structureXP int(11) NOT NULL DEFAULT '0',
creepXP int(11) NOT NULL DEFAULT '0',
heroXP int(11) NOT NULL DEFAULT '0',
minionXP int(11) NOT NULL DEFAULT '0',
trickXP int(11) NOT NULL DEFAULT '0',
totalXP int(11) NOT NULL,
PRIMARY KEY (replayID,team,team_level,totalXP)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
All the information below is already in
https://github.com/koliva8245/Heroes.ReplayParser
I am not sure the best place to put this - but the information for the advanced stats below
In Player.cs the following objects were added
public int HighestKillStreak { get; set; } = 0;
public int ProtectionGivenToAllies { get; set; } = 0;
public int TimeSilencingEnemyHeroes { get; set; } = 0;
public int TimeRootingEnemyHeroes { get; set; } = 0;
public int TimeStunningEnemyHeroes { get; set; } = 0;
public int ClutchHealsPerformed { get; set; } = 0;
public int EscapesPerformed { get; set; } = 0;
public int VengeancesPerformed { get; set; } = 0;
public int OutnumberedDeaths { get; set; } = 0;
public int TeamfightEscapesPerformed { get; set; } = 0;
public int TeamfightHealingDone { get; set; } = 0;
public int TeamfightDamageTaken { get; set; } = 0;
public int TeamfightHeroDamage { get; set; } = 0;
public int Multikill { get; set; } = 0;
public int? PhysicalDamage { get; set; } = null;
public int? SpellDamage { get; set; } = null;
You can also pick up match awards in Player.cs
public List MatchAwards { get; set; } = new List();
Experience For Each Team is grabbed from the below Object in the Replay.cs file
public List[] TeamPeriodicXPBreakdown { get; set; } = new List[2];
Draft Picks for a match are grabbed from the below object in the Replay.cs file
public List DraftOrder { get; set; } = new List();
To pick up accurate Player Teams, and Account Levels, you need to change detailedBattleLobbyParsing to True in the DataParser constructor
For replay draft order I have a table like below for storing that data, where 'type' is either ban or player pick
CREATE TABLE
replay_draft_order(replayIDint(11) NOT NULL,typetinyint(4) NOT NULL,pick_idtinyint(4) NOT NULL,heroint(10) unsigned NOT NULL,PRIMARY KEY (
replayID,type,pick_id)) ENGINE=InnoDB DEFAULT CHARSET=utf8
For storing experience data I have a table like below
CREATE TABLE
replay_experience_breakdown(replayIDint(11) NOT NULL,teamint(11) NOT NULL,team_levelint(11) NOT NULL,timestamptime NOT NULL,structureXPint(11) NOT NULL DEFAULT '0',creepXPint(11) NOT NULL DEFAULT '0',heroXPint(11) NOT NULL DEFAULT '0',minionXPint(11) NOT NULL DEFAULT '0',trickXPint(11) NOT NULL DEFAULT '0',totalXPint(11) NOT NULL,PRIMARY KEY (
replayID,team,team_level,totalXP)) ENGINE=InnoDB DEFAULT CHARSET=utf8;