User features:

  • More generous full history. All tracked players are now eligible for full history, and we’ve increased our processing rate to approximately 100 users a day.
  • Longer untrack period. Untracking now happens after 7 days, rather than 3.
  • Socket-updating requests. You can now see live progress of your requests.
  • Heatmaps v2. Improved position data for more precise heatmaps.
  • Ward maps. Ward locations for each player.
  • Runes. See a record of the runes activated by each player.
  • Last hit table. A table of last hits every 5 minutes.
  • Unified player dashboard/profiles. Many users seem to use the profile only, so we now make it your “dashboard” as well, and display your last visit so you don’t forget to stay logged in.
  • Sentiment analysis. We now analyze the content of match chats for positivity/negativity.
  • Player trends tab. See data aggregated across a player’s matches, including ward placements, mean build times, laning, and averages/records. See histograms of key stats such as Kills/Deaths/Assists. Filter aggregations by hero to determine your performance on specific heroes.
  • Category team “wins”. We now mark which team “won” a statistical category in each match.
  • More per-match stats. Check out lane efficiency to see how well each player performed in lane, as well as number of neutral, tower, and courier kills.

UI improvements:

  • Chat team colors
  • Graph tooltips now sorted by value
  • Merged Heroes and Matchups, reorganized layout
  • Added documentation to graphs page for alt-click functionality
  • Improved percentage display of winrate (green for 50%+, red otherwise)

Bugfixes:

  • Login cookies were set to expire on browsing session end. They should now expire after a year instead.
  • Filtered all Meepo/Meepo kills in the kill log.

Backend (developer features):

  • Support for distributed parsers. Refactored the parse worker so that additional workers can be added as parse drones.
  • Parse data v5. The parser now emits an event stream of JSON objects, which is aggregated by JavaScript.
  • Optimized queries. $exists is evil in MongoDB. We were using it four times on the status page, leading to slow load times.
  • Using Clarity 2.0 for improved performance and maintainability (and hopefully future Source 2 support).

Thank you for all your continued support! If you like what we’re doing, please consider some cheese! It’s what keeps us running.