So I shifted some of my time back to seeing how much information I can extract from protobuf replays for the purposes of RL and the currently github committed Radiant game I recently played (I was the TA) that lasted approx 21 min (slightly less actually) I get the following counts based on animation activities by the 5 players/bots on my team:
This is the mapping of the animation keys to what they mean:
As you can see, almost 69% of all "work" done by the bots is "moving", 9.4% (1503 & 1504) is on "attacks / right-clicks". As a result, this just re-affirms that pathing/navigation is the largest facet of bot behavior to tackle.
UPDATE:
Also, here is the same for the actual ability/items used as reported by "AbilityEvent" protobuf messages:
Code:
[1500] Count: 5921, Perct: 19.55% [1502] Count: 20826, Perct: 68.78% [1503] Count: 2335, Perct: 7.71% [1504] Count: 525, Perct: 1.73% [1510] Count: 312, Perct: 1.03% [1511] Count: 192, Perct: 0.63% [1512] Count: 28, Perct: 0.09% [1513] Count: 76, Perct: 0.25% [1514] Count: 51, Perct: 0.17% [1534] Count: 14, Perct: 0.05%
Code:
{ "key": "ACTIVITY_IDLE", "value": 1500 }, { "key": "ACTIVITY_IDLE_RARE", "value": 1501 }, { "key": "ACTIVITY_RUN", "value": 1502 }, { "key": "ACTIVITY_ATTACK", "value": 1503 }, { "key": "ACTIVITY_ATTACK2", "value": 1504 }, { "key": "ACTIVITY_ATTACK_EVENT", "value": 1505 }, { "key": "ACTIVITY_DIE", "value": 1506 }, { "key": "ACTIVITY_FLINCH", "value": 1507 }, { "key": "ACTIVITY_FLAIL", "value": 1508 }, { "key": "ACTIVITY_DISABLED", "value": 1509 }, { "key": "ACTIVITY_CAST_ABILITY_1", "value": 1510 }, { "key": "ACTIVITY_CAST_ABILITY_2", "value": 1511 }, { "key": "ACTIVITY_CAST_ABILITY_3", "value": 1512 }, { "key": "ACTIVITY_CAST_ABILITY_4", "value": 1513 }, { "key": "ACTIVITY_CAST_ABILITY_5", "value": 1514 }, { "key": "ACTIVITY_CAST_ABILITY_6", "value": 1515 }, { "key": "ACTIVITY_OVERRIDE_ABILITY_1", "value": 1516 }, { "key": "ACTIVITY_OVERRIDE_ABILITY_2", "value": 1517 }, { "key": "ACTIVITY_OVERRIDE_ABILITY_3", "value": 1518 }, { "key": "ACTIVITY_OVERRIDE_ABILITY_4", "value": 1519 }, { "key": "ACTIVITY_CHANNEL_ABILITY_1", "value": 1520 }, { "key": "ACTIVITY_CHANNEL_ABILITY_2", "value": 1521 }, { "key": "ACTIVITY_CHANNEL_ABILITY_3", "value": 1522 }, { "key": "ACTIVITY_CHANNEL_ABILITY_4", "value": 1523 }, { "key": "ACTIVITY_CHANNEL_ABILITY_5", "value": 1524 }, { "key": "ACTIVITY_CHANNEL_ABILITY_6", "value": 1525 }, { "key": "ACTIVITY_CHANNEL_END_ABILITY_1", "value": 1526 }, { "key": "ACTIVITY_CHANNEL_END_ABILITY_2", "value": 1527 }, { "key": "ACTIVITY_CHANNEL_END_ABILITY_3", "value": 1528 }, { "key": "ACTIVITY_CHANNEL_END_ABILITY_4", "value": 1529 }, { "key": "ACTIVITY_CHANNEL_END_ABILITY_5", "value": 1530 }, { "key": "ACTIVITY_CHANNEL_END_ABILITY_6", "value": 1531 }, { "key": "ACTIVITY_CONSTANT_LAYER", "value": 1532 }, { "key": "ACTIVITY_CAPTURE", "value": 1533 }, { "key": "ACTIVITY_SPAWN", "value": 1534 }, { "key": "ACTIVITY_KILLTAUNT", "value": 1535 }, { "key": "ACTIVITY_TAUNT", "value": 1536 },
UPDATE:
Also, here is the same for the actual ability/items used as reported by "AbilityEvent" protobuf messages:
Code:
<ITEMS> [1], Count: 36, Perct 2.34% <-- blink dagger [16], Count: 1, Perct 0.07% <-- branches (yes, I planted a tree with an ironwood branch) [34], Count: 5, Perct 0.33% <-- magic stick [36], Count: 112, Perct 7.29% <-- magic wand [38], Count: 3, Perct 0.20% <-- clarity [39], Count: 2, Perct 0.13% <-- flask [40], Count: 6, Perct 0.39% <-- dust [41], Count: 82, Perct 5.34% <-- bottle [42], Count: 8, Perct 0.52% <-- observer ward [44], Count: 25, Perct 1.63% <-- tango [45], Count: 1, Perct 0.07% <-- courier (1 courier) [46], Count: 105, Perct 6.84% <-- tpscroll [48], Count: 10, Perct 0.65% <-- BoTs [63], Count: 2, Perct 0.13% [79], Count: 4, Perct 0.26% [92], Count: 16, Perct 1.04% <-- urn of shadows [100], Count: 2, Perct 0.13% [102], Count: 4, Perct 0.26% [131], Count: 3, Perct 0.20% [172], Count: 8, Perct 0.52% [180], Count: 42, Perct 2.73% <-- arcane boots [185], Count: 6, Perct 0.39% [188], Count: 4, Perct 0.26% [216], Count: 1, Perct 0.07% [237], Count: 1, Perct 0.07% [241], Count: 1, Perct 0.07% [254], Count: 11, Perct 0.72% <-- glimmer cape [257], Count: 2, Perct 0.13% <ABILITIES> [5040] Count: 66, Perct: 4.30% -- lina_dragon_slave [5041] Count: 54, Perct: 3.52% -- lina_light_strike_array [5043] Count: 9, Perct: 0.59% -- lina_laguna_blade [5094] Count: 34, Perct: 2.21% -- sven_storm_bolt [5096] Count: 22, Perct: 1.43% -- sven_warcry [5097] Count: 11, Perct: 0.72% -- sven_gods_strength [5182] Count: 47, Perct: 3.06% -- faceless_void_time_walk [5185] Count: 7, Perct: 0.46% -- faceless_void_chronosphere [5194] Count: 65, Perct: 4.23% -- templar_assassin_refraction [5195] Count: 44, Perct: 2.86% -- templar_assassin_meld [5197] Count: 51, Perct: 3.32% -- templar_assassin_psionic_trap [5198] Count: 42, Perct: 2.73% -- templar_assassin_trap [5226] Count: 39, Perct: 2.54% -- dragon_knight_breathe_fire [5227] Count: 19, Perct: 1.24% -- dragon_knight_dragon_tail [5229] Count: 10, Perct: 0.65% -- dragon_knight_elder_dragon_form [5263] Count: 49, Perct: 3.19% -- omniknight_purification [5264] Count: 17, Perct: 1.11% -- omniknight_repel [5266] Count: 6, Perct: 0.39% -- omniknight_guardian_angel [5353] Count: 32, Perct: 2.08% -- spirit_breaker_charge_of_darkness [5354] Count: 23, Perct: 1.50% -- spirit_breaker_empowering_haste [5356] Count: 12, Perct: 0.78% -- spirit_breaker_nether_strike [5548] Count: 72, Perct: 4.69% -- bristleback_viscous_nasal_goo [5549] Count: 104, Perct: 6.77% -- bristleback_quill_spray [5637] Count: 49, Perct: 3.19% -- oracle_fortunes_end [5638] Count: 5, Perct: 0.33% -- oracle_fates_edict [5639] Count: 41, Perct: 2.67% -- oracle_purifying_flames [5640] Count: 8, Perct: 0.52% -- oracle_false_promise [5651] Count: 21, Perct: 1.37% -- winter_wyvern_arctic_burn [5652] Count: 36, Perct: 2.34% -- winter_wyvern_splinter_blast [5653] Count: 21, Perct: 1.37% -- winter_wyvern_cold_embrace [5654] Count: 6, Perct: 0.39% -- winter_wyvern_winters_curse [5691] Count: 11, Perct: 0.72% -- faceless_void_time_dilation
Comment