Feedback on replay file distribution

Hey Everyone,
We are looking for your feedback. We are considering methods to distribute large numbers of replays to use locally for purposes such as machine learning. We are testing out our content distribution system with this first batch containing 28 replays, around 2 from each of our top 15 players top algos, indexed by match ID.

https://storage.googleapis.com/terminal-cdn/replays/batch-00001.zip

We already have ideas about how we will reduce the size of replay files, and know more metadata could be useful. We are looking for feedback about what aspects of this system you find most useful and what you are using the replays for so we can optimize which ones and how we distribute them.

3 Likes

i am currently training a NN by letting it play against itself. i have had mediocre success with my best parameter set reaching ~1200 elo. being able to automatically download the latest replays of my algo could be used to train it against more relevant opponents. also i would need to parse the replays and that seems to be harder than initially expected. a guide how the replay files are to be interpreted would help me a lot.

PS:
I thought about an algo that trains right on the spot while playing on your servers, but it is impossible to transfer state between matches. Is there any chance this will ever change?

We try to be pretty active in supporting everyone with things like this. Creating cool and unique solutions is what software engineering is all about. However, I think there are a few issues with letting a NN algo train itself on our servers unsupervised. The number of matches it gets would probably be too low to be useful without supplimentation, it would be difficult to debug/monitor/test, we would have to support re-downloading your algo so you could fork it, and allowing any aspect of a given match to be ‘permanent’ has some security considerations.

Because of these issues, I think local training might be more effective. I gave a detailed response because having an algo training itself on our servers is a dream a lot of engineers have had both internally and from players, but I don’t think it is feasable or ideal.

ok, so sadly no transfer of state between matches.
anyway, is there any documentation on how to interpret .replay files?
in a earlier post you said, you would overhaul the .replay format, is that still planned?

If you are referring to plans to add debug info to replays, I don’t think we are planning on doing that. We may end up cleaning it up and documenting it better at some point, but I am not sure what the plans are there either. I might be able to give you a more solid answer if I bring it up in an engineering meeting later this week. I’ll add this to my notes.