In Wargaming, there is a separate unit that is engaged in ... developing a certain “platform” for publishing games. It is very difficult to explain what the Platform is, what it is and is not, but I will try.
Hello! My name is Max. And I'm working here [at Wargaming].
We have a separate division, which deals with ... is developing a certain "platform" for publishing games. My colleagues and I have a desire to tell you about the Platform and its internal “kitchen”: who we are, what we do, what technical decisions we make, what we have got, and what not. I am one of the “old” employees of this team, and in this article I want to talk about how we came to the need to create the Platform and the main stages of its development.
World of Tanks is not the first game of Wargaming, but the creation of the Platform began with it. Although the concept of [Platform] and its selection into a separate entity appeared much later.
To the game (which consists of a client and a server), first added:
Approximately this composition was able to go into closed testing, start receiving payments (presales), then - in the open and, finally, in release (in August of 2010).
Before the release of “Tanks” and for a long time after it, the main development of the platform took place in the “faster and bigger” mode. Often, raw services went to release, which then stabilized, and it was time to make other solutions for other tasks:
"Tanks" during this time were released in Europe and North America.
Then the company began to develop not only "Tanks". And here the disadvantage of what we did earlier for the Platform became obvious. Everything we developed was made for one game. Moreover, these were actually working prototypes; At the time we didn’t have enough time or hands for long testing. At that time, we thought about scaling to several games mainly theoretically.
At the core of the game servers World of Tanks, World of Warplanes, World of Warships is the BigWorld game engine and the basic tasks of integrating with the platform services could be implemented in a general way. But the teams responsible for developing each of the games have their own vision of exactly how each game should be served. That is, despite the fact that the common vector coincided, it turned out that there are a huge number of differences that came to us in the platform as separate requirements.
One part of the services (for example, the Samoletov and Ships web gaming portals) actually turned out to be the forks of the tank portal. Although the second part remained unchanged, the architecture of these services was such that each of the games required a separate copy working in production. And only a small part of the services was not difficult to modify, in order to leave a single copy for all the games in this or that region.
Work has become much more, and the constant struggle began. What is better: a single technical solution for all games or a separate one for each game? Duplication is unnecessary work, but this approach allows games to freely customize, release more often and go their own way.
When the games began to be released not only on PCs (the speech is primarily about World of Tanks on consoles and mobile devices), this affected the Platform in the most direct way. “Tanks” on these devices are not ports from a PC, they are separate, completely reworked games. But! The servers of these games, although they were reworked, did not differ much from the PC version at the very beginning.
We have the task of integrating with third-party platforms; we had to become some proxy between them and the game, take on as many interaction tasks as possible and minimize changes to the server parts of the games. First of all, these are the following tasks:
The specific work of integrating with the Microsoft and Sony APIs was done by the game developers themselves. From us, as platform developers, we needed to refine certain components and help with integration. Although we also had enough tasks related to the specifics of the work of these platforms.
Asia is a separate world. And not even one. There are a lot of nuances. Including exactly how people play games:
At a certain point in time, services began to be developed that were needed to better operate games.
From what players themselves face, this is:
And a lot of internal tools for the work of support departments, content, and others.
Then our tasks expanded further. From supporting several games made by Wargaming on the BigWorld engine (WoT, WoWP, WoWS), it was necessary to move on to supporting many other games made on completely different technologies. And not only by Wargaming.
It became obvious that many components can support several games, but not tens / hundreds. Yes, and our APIs used for integration, were very sharpened for games on BigWorld, but not for games on other technologies.
No "new" platform happened. It happened just to add a few new services and new APIs that perfectly coexist with the “classic” ones. The games that went along the new rails (from the already announced ones) were:
Well, the migration of old ones began.
The platform is - a set of services and tools for publishing games - everything that allows the player:
And for the publisher - to help the player do this, taking into account all the regional features and the wishes of game developers.
This is a story, albeit on top, with my eyes. It is not necessary to consider it official - somewhere I could be mistaken, somewhere simplified, somewhere exaggerated. But! I'd like to continue to share information. Let me know what you would be interested to know, and my colleagues and I will try to tell you about it.
PS
Thank you for the pictures Pandarama https://www.instagram.com/pandaramka/
Source: https://habr.com/ru/post/434004/