EsportsLAB is an unique project that has the potential to revolutionize the world of gaming. Its purpose is to support esports teams as well as individual players in understanding what determines their level of performance in the game. Integration of data gathered from multiple sources and deep multidimensional analysis carried out by the platform enable players and their coaches to consciously head towards better and better results.
What is EsportsLAB ?
EsportsLAB is an interdisciplinary project that combines over five years of academic research in the fields of cognitive science and artificial intelligence with the knowledge acquired by professional gamers, analysts, coaches and esports managers. The aim of this project is to build an application that will help players improve their skills in context of selected games. Thanks to this innovative platform, esports players will be able to understand what and to what extent drives their individual performance.
How does it work?
The system collects data from multiple sources:
- observations of in-game behaviour (player’s position, movement timing, etc.),
- statements — surveys carried out sequentially over a specified period of time,
- data collected by wearable devices (Garmin, Fitbit),
- cognitive ability tests,
- examinations of player’s mental and physical health.
Collected data is aggregated and prepared for processing. The system enables extraction of data sets appropriate for manual analysis, but such an analysis would be very difficult because of vast number of variables. That is why the analysis is performed with the use of machine learning algorithms. Aggregated, processed and properly visualised data will enable players and coaches to check what could have caused results of a particular game. The system will also suggest areas that should be improved by the player in order to achieve better results.
This applies both to physical and to mental spheres as well as to strategic and tactical aspects of a particular game. Insights generated by the system are analysed and verified by experts: analysts and experienced players working on the project.
What distinguishes EsportsLAB from other projects of this type?
There are several companies that analyse and provide data for players. However, very few players know how established indicators can be used in order to systematically improve their skills. EsportsLAB is distinguished by the fact of emphasising that the information provided by this service contains context of the situation and data “uncontaminated” by the behaviour of other players. EsportsLAB delivers indicators assessing purely individual skills of the player. In addition to context, the player receives indications of the most effective methods of improving skills requiring enhancing. As a result EsportsLAB is the first complete tool for professional gamers.
What was our contribution to the development of this project?
EsportsLAB is a non-standard project requiring imagination, knowledge and experience in many different areas: working with huge amounts of diverse data as well as integrating research processes and players’ environments. All these factors also require a great deal of experience in solution design and system architecture. The process of creating the foundations of EsportsLAB system was an extremely interesting challenge, in which we could utilise our experience connected with many different areas.
We had to analyse the needs of EsportsLAB team. The next step was developing the concept of the system and creating a technological solution enabling managing and organising ways of sharing data between EsportsLAB research team members. Relevant analyses are carried out primarily through automated processes, in particular through machine learning and data analysis services of Azure cloud.
At the beginning of the project we met EsportsLAB team and conducted workshops with the purpose of:
- Understanding concepts and ideas of EsportsLAB team.
- Collecting, ordering and analysing requirements.
- Identifying main performers and their roles in the system.
- Systematizing and defining key processes taking place within the solution.
- Defining external systems that should be included in the project.
- Designing the initial logical architecture of the solution.
This analysis allowed us and EsportsLAB team to systematize project assumptions and expectations. During this process we jointly developed concept of implementation of the project (including the creation of MVP). We have clarified which requirements are the most important when it comes to their potential value to EsportsLAB team. This in turn allowed us to develop a project roadmap.
It was necessary to correctly understand the needs of the project and to plan the work properly. On the other hand, it was also very interesting and developing due to the very attractive scope of the project.
This analysis was very important from the perspective of EsportsLAB team – it enabled them to:
- Systematise and exchange the knowledge between leaders of individual teams.
- Practically define and describe the scope of work.
- Define priorities and plan the project.
At pre-implementation analysis stage, we also determined ecosystems of which games will be processed at the first stage of project development (League of Legends and Counter-Strike) — this enabled us to establish with which platforms (and for what purpose) we should integrate.
Designing architecture of the solution in the context of needs connected with integration of Big Data structures and integration of external systems with internal EsportsLAB systems.
Conducted analysis revealed that the application will ultimately have to aggregate and process huge amounts of data — data in the form of information collected for the purposes of performing analyses, as well as data generated by users. Designing process required us to predict the ultimate size of the data volume that can be processed within the system and select the appropriate tools. Being aware of the scale and amount of data, as well as being aware of the need to build a system ready for the new data sources, a system that needs to be scalable on various levels, we designed big data environment based on our Core IG system supported by Azure Cloud services:
- Azure Data Lake – data storage,
- Azure Service Bus – process queuing,
- Azure Cosmos DB – storing file registry data.
Designing logical and technical architecture of the solution we decided to use microservices. The application was divided into independent services (like for example authorization server and research application) cooperating with each other. This approach enables effective management of the solution performance in view of the future increase of the project scale. That is why we used Azure Kubernetes for management of the application.
Another important element of the technical concept was defining scope of data and methods of communication with external systems that served as sources of knowledge about players and games (HLTV, RIOT).
Finally, we created a model of data acquisition scheme and model of data storage. These models enabled proper data usage by all ML and AI mechanisms.
And finally, a few words about the cooperation
In case of such an advanced, specific and unique project one of the most important success factors is the creation of environment for transparent cooperation between project team members. We created communication space based on Jira and Confluence systems, thanks to which we were able to efficiently carry out activities connected with technical and design works as well as manage knowledge transfer.
Thanks to a properly conducted analysis and good communication with the EsportsLAB team, we were able to quickly create a solution that laid the foundations for the ecosystem of project planned by EsportsLAB. We are excited about the further development of the project and we are very happy that we could be a part of it.