Do not meddle in gamedev, it will eat you up (but you will like it)

No wonder they say that gamedev is ruthless (and especially to beginners).

Rovio made Angry Birds with some forty-odd attempts, all sorts of newbies regularly fail the important task of finishing their indie pixel platformers on a unit, Bashurov banned Apple altogether, although it would seem – a whole Bashurov. In short, horror and horror.

It is all the stranger that the online web development school where I work has decided to get involved in game development and make my own game. Yes, for marketing purposes, but a game. Online, real. With players and prizes. With main currency, side currency, raids, bosses and pvp. I still can’t believe how we agreed to this.

But there is no turning back. I was at the forefront of this madness, I saw everything and I rush to tell you how to step on every possible rake when, in fact, you are teaching web development, but you are trying to make a game.


Most likely, you’ve heard from someone about layout and programming simulators from the Academy. We do a lot more, but interactive courses are a waypoint that almost all Russian-speaking front-endors have passed through (at least I hope so).

Well, there you go. Every New Year we do a little bit of good to the community and make the simulators free, wrapping it up in some kind of game mechanic in a famous setting. Then “Stranger Things”then space adventure on Javascripton, and this year they even aimed at Cyberpunk.

“Well, they swung and swung, why write about it?” – the reader will think and he will be right. That is, technically, we have been doing some kind of New Year’s games for the sixth year, but only in 2021 did we try to make a full-fledged online game with economics, raids, bosses and all that kind of MMORPG.

That is, imagine: players are divided into 170 guilds, each with its own chat, you need to defeat 7 bosses (each has its own story and location), and the PvP arena works for the most cheerful ones. Core mechanics – simulators for layout, JavaScript and PHP. That is, you decide quickly and a lot – super, keep it up. The one who solved the problem faster and more than anyone else was even given free training for a profession, which in peacetime costs so much. Well, all simulators are also free, even those that are usually paid.

I looked into the sad eyes of our developers for about two months – the whole of November and December 2020 was spent on development. On the React front, on the PHP backend and the Slim Framework. A dedicated server was allocated for the game: 1 CPU, 2 Gb Ram, 50 GB HDD (you feel an impending rake, right?).

It would seem that what could go wrong. And almost everything went (except that, unlike the real CYBERPUNK 2077, the release was not postponed). And before starting the second season (hotfix, if you like), we decided to share this so that you do not repeat our mistakes.

Rake number 1. Involvement of players

There is a thing in game development called “engagement”. That is, it is not enough to drive people into the game, it would be good if they had something to do there. To do this, we consulted with real game developers and added all sorts of mechanics to keep it interesting for a whole week.

Main mechanics: solve layout tasks and grow wiser. It’s good if you manage to earn enough game currency for the solution and pick up the main prize in the game store, which exists in a single copy. Or spend it all on discounts on other products.

But when you plan that the game will last a week, and the main prize is taken on the very first night, you understand that you have walked on a rake somewhere.

The main rake: we underestimated the tenacity of people. Players solved problems without interruptions for sleep and rest (and this is January 1!), As a result, the main prize was received in a matter of hours. Two participants were seriously fighting for him, and one of them just went to take a nap. At this time, everything happened.

We even took interview with the winner – he says, drank water, ate pizza, solved tasks. Nothing unusual.

Think ahead of how you will keep people in the game.

Rake number 2. So so economics

Levels and local currency – cybercoins – could be obtained for a lot of things. Just solve problems, fight other players in the arena, take down bosses. The money earned could be spent in the store: discounts on courses, subscriptions, skills and layout projects were sold there.

But we didn’t calculate very carefully how much currency each participant could get. As a result, there was so much money on the market that everyone who wanted to buy something bought it in the first 2-3 days. There was nothing more to offer them.

Calculate the game economy in advance and make sure that getting new levels is not too easy.

Rake number 3. Cheaters

Everyone fights against cheaters in online games, and if you’ve ever done an online game, you’ll understand me. In our case, cheaters worked from two sides – in the arena and in general in tasks.

The arena is structured like this:

  1. Two people get the same task – to design or program something.

  2. Whoever did it faster won. Money, fame, that’s it.

The main cheating mechanic was as follows

  1. Each of the 170 guilds had their own telegram chat.

  2. Participants poured answers to tasks in chat rooms.

  3. People entered the arena, saw the task, quickly searched for it in the chat, and copied and pasted the result.

Someone thought of it, yes
Someone thought of it, yes

As a result, those who solved tasks honestly in a few minutes had to compete with results in a few seconds. Of course, this spoiled the impression of the project for honest players, and also influenced the engagement.

But it’s okay – in the second season we left the arena, but added some restrictions, which, of course, we will not talk about. But if you are suddenly a cheater, you can go in and check.

There will always be players who will try to trick you. There is no escape from this, but it is better to immediately cut off the obvious places for cheating.

Rake number 5. Game balance

There were 7 bosses in the game – every day there was a raid, where all the participants gathered, solved tasks and inflicted damage on the bosses. The more people knock the boss down together, the greater the final prize for the victory. At the same time, every day the bosses are getting stronger, that is, it was necessary to collect more people to defeat them.

Grandma is one of the bosses
Grandma is one of the bosses

As it was in reality: people wanted to inflict damage, but there was no way, since each raid had a limited number of tasks, and the bosses had too much health. And also due to problems with the economy (everything was bought and sold), the activity for the last raids decreased, as a result, out of seven bosses, only the first three were “dropped”.

In the second season, there will be only two bosses, and we also recalculated the economy so that it would not be like last time. And, of course, the first prize will go away only after defeating the last boss.

All parts of the game affect balance – economics, meta, and engagement are important here. If there is a bias somewhere, then everything will fall.

That’s all about game design. But not a single game design.

Rake number 6. What’s going on here?

This is my personal editorial pain.

Our entire department planned that the game would have a big beautiful story about characters and bosses: plot, setting, different locations, jokes and tricks, and all these things. We wrote a huge document about bosses, the city of Skriptomsk (this is instead of Night City) and in general everything that happens in the mysterious world of cyberpunk. In short, there is never a Doom plot at all.

Some of the iterations
Some of the iterations

At some point, we realized that there was not a story, but a booth, sat down and simplified. Tested on strangers and simplified again. Someone again did not understand what the game was, and we simplified again. So it felt like a hundred thousand miles of iterations passed, and we got the final text. Nicely laid out and posted on the main page.

But even then, it was hard for outsiders to understand what they fit into. There were always those who asked in chats what was going on, and each time we patiently explained. We cried, swore (mostly at ourselves), but explained.

In the second season, they simplified it further – for this, the task tracker added the task “Rewrite the text of the main page so that even a bear could understand it”. Well, they rewrote it.

Rewrite the texts so that even a bear can understand them

Rake number 7. Technical problems

Not everything went smoothly with the technical part either. These problems are not directly related to game design, but are related to a large, busy project taking place in real time. If you are doing something like this now, I’ll tell you.

Last year’s server fell. On the first raid, the game crashed: there was not enough server power and everything went smoothly. The main site worked, but the server with the game was not so agile, because we underestimated the required power. In the end, everything was decided after the server was improved. At least for a while.

Themselves annoyed. After the launch, the developers had to finalize the architecture. Some places were written in such a way that several hits were generated with one visit to the raid page, as a result, conditional 1000 concurrent users generated from 2 to 3 thousand API requests. For a single-processor server, this turned out to be too much and he again solemnly lay down, leaving the developers to deal with it at night.

Bugs. Where without them. Witnesses say the monitoring rang all week. There were crooked requests, scoring in the wrong way and in the wrong place, undefined on sale (mom). Throughout the week, the development has been fixing various bugs – literally day and night – and support supported the suffering and started tickets. There were a lot of interesting dialogues in the working chats, which still cannot be posted here due to censorship.

Development says this happened due to lack of testing and tight deadlines. This is logical – we aimed at complex game mechanics that needed to be worked out better. Some problems, for example, only come out under heavy load. In such cases, of course, it is possible to carry out load testing, but there was little time, and we do not yet have a dedicated load testing department.

But all this is not scary. The main thing is to understand where the problems happened, to realize the mistakes and fix them. In addition to all this, we decided to share our experience, and I hope that it was at least a little bit useful.


Do not mess with game development if you are not sure that you can withstand all this. We had a New Year’s week of nerves, pain, improvements, simplifications, bugs, and underfields on sale. It was hard.

But we liked it and we want more. Therefore, we took into account the mistakes and launched the second season just before the May holidays – and it starts today at midnight. There are fewer bosses, more activity, and less room for cheaters. AND free exercise equipment, and even those that are usually paid.

The main prize of the second season – course on professional website layout, and here it is already in 16 hours not to get rid of. Come, if you haven’t figured out how to spend 11 weekends yet (well, or seven, whoever has it).

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *