Suggestion: tool for extracting replay data by interjecting game's memory

Level 1
Joined
Apr 25, 2025
Messages
1
Hello,

I am completely new here and I don't know much about Warcraft modding, I came to suggest/discuss something that's been on my mind for some time.

A quick tl;dr: I think it would be awesome if someone made a tool that would be observing the game's memory as it is playing back a replay and it would output data (such as unit positions, hero levels etc.) to a plain text file, e.g. in JSON or CSV format. I KNOW there have been attempts at extracting this data purely from replay files, but this isn't easily doable because replays only store actions and the exact game's logic is needed to actually play it. I think what I am suggesting is the next best thing and would be much easier to do (considering you already have some amazing third party tools). I will now describe more context and details.

Why would it be useful? It would allow creation of a simple offline replay viewer(s) (of course, with very simplified 2D graphics etc.), ones that wouldn't require having the game installed, wouldn't have to care about exact game version, ones that could be used on any operating system or even in the browser etc. Such a viewer could even be superior to the game e.g. in the ability to rewind time back, show real time statistics that the game doesn't show etc. It would also open up possibilities such as in depth game analysis and statistics, heatmaps of unit movement, specific patterns in play of different players and so on. Replay websites would benefit as well. Yes, digging the data out of the game would still require running the game, but over time there could be a nice collection of such converted replay to play around with. The point here is to separate the messy part of having to interject the game's memory and the part where we simply have data and can play around with them in any way, on any operating system, in any programming language etc.

I would personally very much appreciate this and would actually be interested in writing the replay player, but I can't write the data extraction tool itself as I don't own the game and I don't even have the operating system the game has to run on. I am just someone who likes to watch videos of the game, and I can only watch it when I'm on my main computer and have connection to the Internet -- a small browser-based replay viewer would allow me to also watch the replays on my off grid Raspberry Pi computer, and I think there may be more people like me. The whole community would probably appreciate it, if only for the cool statistics this could bring.

How I imagine the output data: it should be as simple as possible so that anyone can analyze it easily, i.e. JSON, CSV, plain TXT. Personally I would just make it a plain text file where each line would be a snapshot of the game state, taken in, let's say, 1 second intervals (no need for higher time resolution probably, replay viewers can interpolate to make animations smooth). Each state would just contain a list of all units and buildings currently on the map, each one with position, health etc., plus there might be some extra info (chat, player gold and lumber, projectiles, ...).

Sorry for a long post, I know demanding something from the Internet is often fruitless, but in this case I don't have the power to implement this myself. Maybe someone will get inspired :)
 
Top