Picture

The Playtest Data Visualizer is a web tool developed for the game Curse of Mermos. It was created with the purpose of automatizing the aggregation and interpretation of playtest results. By not having to manually introduce data from playtests, the dev team can focus on design iterations.

Tech: HTML/CSS/JS/HighCharts

Live Demo: planet34.org

Source: github.com


Picture

Media

Screenshots of charts and graphs generated by PDV.

Picture

Picture

Picture


Picture

Development

The tool was developed from scratch by myself as a means to reduce time spent analyzing playtest results. The aim was to help the team focus on improvements rather than wasting time pushing data in Excel tables.

For each play session, the Curse of Mermos game generates a JSON file. Generated files contain rich metrics about how players use combat and movement as well as health statistics, potions usage and collectibles. The files generated by the game are placed by designers on a shared network folder from where the tool can read and interpret data.

Here's an example of the contents of a JSON file to see what kind of telemetry the game records.

{
    "id":"3bmgu06nsq6#1",
    "waveNo":[1,2,3,4,5,6,7,8],
    "soulsDrop":[20,36,70,62,125,183,44,122],
    "soulsCol":[20,36,67,58,112,169,44,122],
    "shardsDrop":[0,0,0,0,0,0,0,1],
    "shardsCol":[0,0,0,0,0,0,0,0],
    "healthLost":[39,60,186,67,281,383,12,126],
    "potionsUsed":[1,0,1,0,1,3,2,3],
    "revives":[0,0,1,0,1,1,0,0],
    "upgrades":[["None"],["None"],["None"],["T1AGI","T1VIT"],["T1DEX"],["T1STR"],["None"],["None"]],
    "potionsBought":[0,1,1,0,0,2,3,2],
    "glyphBought":[["None"],["None"],["None"],["None"],["None"],["None"],["None"],["None"]],
    "melee":[43,58,130,39,51,80,7,21],
    "meleeCh":[0,0,0,0,0,0,0,0],
    "range":[1,9,58,60,124,164,30,88],
    "rangeCh":[0,0,0,0,0,0,0,0],
    "strafeTime":[1,0,9,3,13,34,8,10],
    "elapsedTime":[22,38,111,60,152,179,100,15]
}

A data set is generated for each playthrough and then submitted to the development team through a simple web uploader.

When requested by designes, the PDV downloads all files within the time range and crunches the data using some JS scripts.

You can try it for yourself right here. A sample set of data is provided.