How (And Why!) We Create Next-Gen Maps With Random Events

Recon Mission 2023 introduced random events for four well-known locations (Himmelsdorf, Ruinberg, Prokhorovka, and Safe Haven). We wanted to provide you with more tactical options and fresh combat scenarios, as well as opportunities to improvise in non-standard situations.

Having completed testing of random events, we analyzed nearly 400,000 questionnaires. And 86.8% of respondents enjoyed playing on maps with random events!

We’re adding these maps to the next Common Test, so you will have a chance to try them in their latest form before they go to the live servers. In the meantime, here's a sneak peek at how we created them!

New Technology, New Maps

You may ask: why did we introduce random events for only four maps, and not for all or at least half of them? And why are we only finalizing them now, six months after the completion of the Recon Mission test?

The fact is that the entire process of creating maps with random events is very long, labor-intensive, and time-consuming. It requires a lot of time and resources (design team, QA, developers, etc.), as well as new tools and advanced technologies. We simply did not have the technical capability to implement random events on all existing maps in a short time.

Specifically for this feature, we have started developing a special new tool based on one of the most advanced technologies in the GameDev industry. This tool is still in its "first draft version", and we continue to develop it. But we can now make the process of implementing random events much easier, faster, and more efficient. Scroll down to find out more!


Preparation for Testing

We began preparing for testing random events in April 2023. Adding dynamic scenarios to a large number of maps required a new approach to automation, as well as special tools for creating such content. But at that time, we simply did not have the technical ability to create such dynamic scenarios. Therefore, we chose only four maps and a couple of events, and manually configured them for each of the battlefields.

Since this was only the initial testing phase, we did not attempt to make their current state and mechanics final. For us, this was a kind of “pen test” to check what we had at that moment and what tools and technologies were needed.

It quickly became clear that manually setting up dynamic events for over 40 maps in the game was too time-consuming and inefficient. Therefore, we were faced with the challenge of creating a new tool that would automate and scale (simplify the production) of such content.

Core Gameplay Framework: Innovative Technology for Creating New Generation Game Content

To take up this challenge, we have implemented the Core Gameplay Framework (CGF) technology into World of Tanks. This is a variation of the Entity Component System, one of the most modern and trending technologies in the GameDev industry.

It was already present in the game in some form, but its functionality and flexibility were clearly not enough for the full realization of dynamic events. In fact, we had to greatly improve this technology and implement it into World of Tanks in a profoundly new format.

About CGF Technology


Previously, when creating content, we could only interact with vehicles. CGF technology is a kind of constructor that allows you to provide various objects (not vehicles) in the gaming environment with their own properties and connections. It allows you to change and manage properties and parts of objects. Accordingly, you can interact with each object with a behavioral logic that is different from vehicle logic.

CGF is used to create functional game content with a high degree of automation and scalability. With the help of CGF, we now can quickly create and configure random events in a simpler and more convenient format.


New Tools

We've also created special design tools that allow us to use this technology to create rich random scenarios. In fact, we've implemented a new editor similar to the one that we use to create maps.

Thanks to this, objects on maps (excluding vehicles or static buildings) can be divided into parts and acquire their own unique properties and trajectories. They obey the general rules of physics, influence the environment, and operate according to the same physics logic as our vehicles.

Previously, we assembled each specific random event scenario manually. Now, thanks to CGF technology and the tools created to work with it, random events are created on the server synchronously for all players.

Now let's look under the hood of this technology and see how we create random events in practice.

Step 1: Selecting a Map

Creating random events begins with selecting a suitable map. It is important to note that we do not take into account map popularity or ban statistics. Instead, we focus on two key parameters:

  • Variety of gameplay
  • Map type: open, city, or mixed

We choose locations with an environment that allows for various options and possible random event scenarios. For example, on Himmelsdorf, there is a spacious central square, allowing for the possibility of crushing a large object, such as a zeppelin.

And one of the most important gameplay areas on Prokhorovka is an alley where you could potentially crash a plane.

Step 2: Analysis of Potential Events

In the next step, we make a list of all possible random events that could potentially happen on a particular map. At the same time, when choosing a scenario, we prefer it to be unique. And the more unique the scenario, the better.

In addition, we assess the exclusivity of the event and what new tactical possibilities it opens up for gameplay. The more decisions players can make in battle, the better. 

Step 3: Heatmap Analysis and Event Zone Selection

One of the main elements of battle progress is the location of vehicles on the map. To implement a random event scenario, it is necessary to analyze heat maps showing the highest concentration of players in certain areas. They help us understand where on a specific map we can expand the scope of tactical possibilities and make the gameplay more variable, with different options for a battle’s development.

We also take into account your feedback and our own expertise to determine the most suitable event zone.

Everything we have talked about so far is analytics and preliminary preparation. Once we have received and analyzed all of the above information, the real work of creating random events begins.

We evaluate the final state and format of the gameplay of the random event zone after its interaction with the object. If necessary, we make changes—adding or removing driveways, cover, buildings, etc.

Our final goal is to carefully reconfigure the playing area in a way that opens up new opportunities for exciting gameplay and gives you a choice of fresh tactics that you can utilize.

In other words, we do not begin to create random events immediately, with the launch of a falling plane or an arriving train. Instead, we first aim to finalize the game format of the event zone on a specific map.

Step 4: Creating a Prototype

Then we start creating and testing a prototype. There may be several of them, depending on what new gameplay opportunities and tactics a particular scenario will open. For testing, we use so-called "gray boxes"—the simplest geometric shapes (cubes, rectangles, etc.) that act as building materials and imitate any objects.

After testing the prototype, we make final edits and start adding various details and objects to it.

Step 5: Selecting Objects and Scenarios for a Random Event

At this stage, we choose:

  • Space: land, air, or water.
  • Active object: airplane, airship, train, car, etc.
  • Target (destroyable) object with which the active object will interact: building, bunker, bridge, pier, etc.
  • Condition of objects after destruction. It is necessary to understand where parts of objects remain after destruction, their quantity, and exact location.
  • Place and trajectory on the map, taking into account visibility and terrain, so that the player can see the progress of a random event from the very beginning.

As a result, we understand that if we have water space, then we can have a ship that crashes into the pier. If it is air, then it will be a falling plane or airship.

A destroyed object can break up into either one large or several medium-sized fragments, depending on the scenario. All of them can break off into separate parts with their own trajectories.

Step 6 (Final): Visualizing and Finishing the Scenario

Finally, we fill the scenario with additional details and make the final selection of objects (models) based on their relevance to a particular event. For example, if we need to destroy a castle with a large aircraft, but we do not have such an aircraft at our disposal, then we replace it with a more suitable object—a plane.

We also select and refine visual effects to add more realism, entertainment, and a cinematic feel. At the same time, we never forget that, as a result of a random event, new tactical opportunities should open up, and the gameplay should become more varied and interesting.

Done! A spectacular next-gen map with an incredible random event is ready! 

What’s Next?

In the near future we aim to release four maps (Himmelsdorf, Ruinberg, Prokhorovka, and Safe Haven) with refined random events that will be available during the Common Test. Get ready to participate and share your impressions!

We continue to actively work on expanding the pool of next-gen maps with random events, so they may be introduced into the game in the near future. Stay tuned!

Discuss on Discord