File tree Expand file tree Collapse file tree 1 file changed +13
-4
lines changed
sc2reader/factories/plugins Expand file tree Collapse file tree 1 file changed +13
-4
lines changed Original file line number Diff line number Diff line change @@ -100,21 +100,30 @@ def APMTracker(replay):
100
100
above actions divided by the number of seconds played by the player (not
101
101
necessarily the whole game) multiplied by 60.
102
102
"""
103
+
104
+ speed_multiplier = 1
105
+ if replay .expansion == 'LotV' :
106
+ speed_multiplier = 1.4
107
+
108
+ game_seconds_per_second = 1.4
109
+ if replay .expansion == 'LotV' :
110
+ game_seconds_per_second = 1.4
111
+
103
112
for player in replay .players :
104
113
player .aps = defaultdict (int )
105
114
player .apm = defaultdict (int )
106
115
player .seconds_played = replay .length .seconds
107
116
108
117
for event in player .events :
109
118
if event .name == 'SelectionEvent' or 'AbilityEvent' in event .name or 'Hotkey' in event .name :
110
- player .aps [event .second ] += 1.4
111
- player .apm [int (event .second / 60 )] += 1.4
119
+ player .aps [event .second / speed_multiplier ] += game_seconds_per_second
120
+ player .apm [int (event .second / 60 / speed_multiplier )] += game_seconds_per_second
112
121
113
122
elif event .name == 'PlayerLeaveEvent' :
114
- player .seconds_played = event .second
123
+ player .seconds_played = event .second / speed_multiplier
115
124
116
125
if len (player .apm ) > 0 :
117
- player .avg_apm = sum (player .aps .values ())/ float (player .seconds_played )* 60
126
+ player .avg_apm = sum (player .aps .values ())/ float (player .seconds_played )* 60 * speed_multiplier
118
127
else :
119
128
player .avg_apm = 0
120
129
You can’t perform that action at this time.
0 commit comments