Skip to content

Advanced Stat Addition Along with a few other data points not in HotsApi #1

@Zemill

Description

@Zemill

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;

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions