We are building a real IT company around the active children’s games “The floor is lava” and “The sea is agitated”

My name is Anatoly and I am a simple engineer from Smolensk. Our business was born on VC a year and a half ago. Back then I didn’t even think how far it would go and, especially, that it could become an IT company! Where is the offline quest, and where is the IT company? Today I want to tell you in simple language and with diagrams (don’t swear, I drew them myself) how we are building an IT infrastructure to grow into an international network of pixel gaming games in order to reach billions in revenue. And people in the comments will definitely tell you why we won’t succeed…

Content

0. Introduction for those who see the project for the first time
1. Network of offline quests in an IT context
2. Processes, technologies, architecture and microservices
3. Software registration and the path to IT company status
4. Open-source games & Roblox style
5. Why don't customers notice breakdowns?
6. Adaptation of our software for Chinese pixels
7. What are your plans next?
8. Conclusion

For those who see the project for the first time

The essence of the entertainment lies in the games on the interactive pixel floor: people must perform various game scenarios: from the usual “Hopscotch” and “The Floor is Lava”, to playing “Ping Pong” on 32 square meters of area covered with special LED pixels equipped with pressure sensors. There are both active games for speed and logical games for thinking.

Network of offline quests in an IT context

Let's take a close-up look at the architecture of our gaming network:

Key ideas:

All controllers of all gaming rooms and arenas are united into a single VPN network and connected to a single monitoring system, which allows you to observe in real time the overall picture of the state of the network of gaming establishments and monitor the main parameters of their operation and, most importantly, the number of malfunctions in gaming establishments.

Each controller has round-the-clock direct access for diagnosing and troubleshooting problems, as well as for updating software without the need for a person to be present on the other side (we do updates mainly at night, when there are no clients).

Own minimal CDN (content delivery network): centralized storage of content (games, sounds, pictures) with an automated mechanism for delivering updates to controllers.

A centralized database of reservations and clients: allows you to monitor cash flow, and in the future will allow you to organize tournaments between visitors from different cities and countries.

Another important feature is automatic software licensing: each controller receives an updated license daily. In case of problems with the franchisee and attempts to deceive, we can easily disable the software remotely, and the controller will turn into a pumpkin.

Processes, technologies, architecture and microservices

The entry point for all clients, be it a simple gaming visitor or a potential franchisee, is the Tilda website. No matter what anyone says, Tilda is a convenient tool for rapid corporate development that supports integration with most popular services.

Bukza acts as an online booking system, which allows you to configure various resources for booking and conveniently integrate this with third-party applications.

A huge layer of automation is tied to Telegram and Salebot: it includes communication with clients and signing consents, a franchise sales funnel and all further work with partners, as well as all service chats for communication and bots for notifying about problems on servers and locations.

We use the Russian analogue of Trello – YouGile – as a task tracker. It was also used to create a board for administrators to raise problems at locations and their subsequent debugging by developers, which made it possible to significantly speed up the process of debugging new software and games. For the knowledge base we use Teamly, which is also a very convenient domestic tool.

Well, all this rests on three pillars from Google: Sheets, Documents, Drive 🙂

Now let's take a closer look at location diagram:

Each game room is controlled by a controller based on a Raspberry Pi microcomputer: floor, wall buttons, sound, scoreboard, ceiling light. The controller has our control software installed with an HTTP server and a Lua machine for serving games.

The system does not require a desktop computer or laptop to operate – all control occurs from a regular tablet or even a phone.

We recently developed a new interface. Now this is not just an interface for launching games. Now it's complete Location management software: it shows customer reservations and contains scripts for the administrator to start and end a session; through it you can now create sets of games, which greatly simplifies the work on location (I started people for half an hour and forgot about them, no need to turn on each game separately).

Server part

All this is served by a zoo of microservices on several servers.

We collect all customer reservations in our database, which allowed us to create our own interface and add various kinds of statistics. Through ourselves, we connect clients from Sailbot with specific orders, which allows us to make interesting integrations with surveys to control quality and increase the amount of feedback.

We wrote a special proxy service for Sailbot, which passes all messages through itself and has a mechanism for resending in case of problems. It is also needed in order not to disclose the private API key to all partners.

We recently set up asynchronous collection of events from locations, this allows us to obtain statistics on games played and is the basis for the implementation of tournaments and leaderboards. Through the same bot we connect players into teams.

Continuous Integration & Delivery

In software development, Continuous Integration / Continuous Delivery (or CI/CD) is a combination of continuous integration and continuous deployment of software during development. CI/CD combines application development, testing and deployment.

This is how our current CI/CD processes in the company for delivering software updates to servers and locations look like in a simple diagram. The developer writes code and pushes it to GitHub, GitHub automatically or by push (for locations) launches the software build on a special runner in our VPN network, which in turn distributes it across servers and locations.

In the future, I would like to set up a similar process for the pixel-games game repository for instant and, most importantly, automatic delivery of game updates to partners, but this will require a review and organization of the testing process.

Software registration and the path to IT company status

Among the additional requirements is the presence of a computer program registered in the register of the Ministry of Digital Development of Russia with a demonstration that it generates income. This is what we are doing now. The software has already been previously registered with Rospatent.

A small but important step towards subsequent registration in the Ministry of Digital Development register and becoming an IT company. All this will provide an opportunity to receive various advantages and benefits, and, I hope, will increase the trust of potential partners.

Open-source games & Roblox style

In previous articles, I have already briefly mentioned our open-source games and a special platform for their development and testing. I’ll repeat myself a little and update the information.

We have open game development systemthis is a very important point, but which not everyone fully understands:

– firstly, we have a visual game designer “The floor is lava”, where any bored administrator can practice frame-by-frame rendering of the game;

– and secondly, we have our own online editor for developing game scripts in a simple scripting language Lua, which any intelligent student can master in a few evenings, while the source code of our games is publicly open in a repository on GitHub, which makes learning even easier.

https://github.com/pixel-quest/pixel-games

All this allows us (and you, if you wish) to easily, quickly and cheaply develop new games and constantly expand the collection. And most recently, we introduced a gamepad into the gameplay, which adds great variety to the game mechanics and makes it possible to have fun even while sitting on the couch.

Why Roblox-style? Roblox allows players to earn money from content, and in the future we want to do something similar. We are ready to allocate a percentage of revenue to pay third-party developers. And on YouTube, our game “Safe Color” is constantly compared to the games “Color blocks” or “Block party” from Roblox, although when I developed it, I didn’t know anything about Roblox yet…

Why don't customers notice breakdowns?

Obviously, electronics fail, and here is a very important point: how to make sure that the game remains functional and the client does not leave the establishment dissatisfied? To do this, we have provided a mechanism for troubleshooting pixels and buttons, both software and hardware. This means that a stuck/broken pixel is disabled at the hardware level (so as not to clog the common data bus with garbage) and removed from the game at the algorithm level (so that game tasks are not assigned to it). In this case, as a rule, the pixel is able to continue emitting light and does not stand out from the crowd in any way.

This approach allows us not to cancel or reschedule client records even with more than 20 faulty pixels on the floor. At the same time, the gameplay remains comfortable enough to NOT receive a negative response.

We have a separate block on the monitoring dashboard for defective pixels and buttons, so we monitor the number of breakdowns and fix them in a timely manner.

The dashboard is slowly growing

The dashboard is slowly growing

A prerequisite for the development of a new game is the processing of defective pixels so that the game remains playable. Now we are even moving towards using AI to automatically detect false positives and troubleshoot such pixels.

Adaptation of our software for Chinese pixels

It's no secret that the Chinese also produce similar pixel gaming platforms and sell them all over the world. They can easily be found on Alibaba using the search term Activate Games. And, as I mentioned, we also bought ourselves such a platform for experiments, but this does not mean at all that we will abandon our own production and start stupidly reselling China, as several “franchises” in the country are already doing.

What are your plans next?

We drag the infrastructure into Yandex Cloud, because it has become too difficult to manage the zoo of our scattered servers; in the cloud it will be much easier and more efficient, although a little more expensive. I hope we can cover part of the costs through Skolkovo grants.

We have added a new photo-manager service, which will be responsible for storing photos and videos from locations in the S3 cloud storage, and we are implementing it into the location management interface. We will drag S3 into other parts of the system, such as storing audio tracks and pictures for games.

We designed the architecture and started implementing leaderboards and tournaments: soon you will be able to compete with other Pixel Quest visitors across the country, see your results on the website and receive notifications from a bot that someone has beaten you.

Our distant plans include getting off Bukza and developing our own reservation system. We also need internal interfaces for convenient content management: games, sounds, pictures. This is necessary for localization and entry into other markets. We want to develop our Lua game development environment and provide access to the masses.

In terms of design, there are plans to move towards waterproof design and installation in open areas. We already have all the technical solutions to implement this, we will test the technology soon and will definitely tell you about it.

Conclusion

I'm an artist, I see it that way! But I will be glad to any constructive criticism and outside views. I am ready for criticism and advice. In fact, there is a real shortage of people with whom you can discuss architectural/software/circuit solutions.

Who is interested in following the development of the project in real time, subscribe to the telegram channel @pixel_quest. I write there exclusively myself about once every 4-7 days, I don’t let marketers in, I talk more about the technical side of the project with a gradual focus on IT, and I additionally publish monthly financial reports for all network locations.

Similar Posts

Leave a Reply

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