Case: Developing an online test service for Russian New University | Creonit
Intellectual games for children
igames.team

Intellectual games for children

SaaS app of intellectual games for Russian New University.

Project launch date — November 2018

Best event web app 2018

Telling you about how we made a service quiz for the Russian New University in record time. Registration, demo version, an online platform for qualifying rounds, and admin panel with a public part for face-to-face — read about everything below.

Customer

Russian New University is one of the largest private universities in our country. It is included in the top 100 Russian universities according to the Expert RA Rating Agency and in the Round University Ranking list.

Situation

Intellectual games for school students is the initiative of the Russian youth. In the fall of 2018, the Federal Agency raffled off a grant among educational institutions, and Russian New University  won it. But, as is often the case with grants, the deadlines for implementation were very tight and limited. If we were even a day late, we would have disrupted the event for the children. 

What are the Intellectual games event?

The games are a team competition for students of schools and specialized secondary schools from 14 to 18 years old. As part of the grant, Russian New University decided to hold two championships.

The championship for teams in Moscow and the Moscow region

  • 3 remote qualifying games
  • 3 full-time semifinals
  • The final

Russian open championship for teams from all regions of the country

  • 2 remote games

Remote games are held on the site. At the Moscow Championship, teams for the semifinals are selected based on their results. At the Russian Championship, the winners are determined based on the results of distance games. Face-to-face games, including the final, are held Russian New University — but they also need a website.

Aims

We had three tasks ahead of us:

  • To organize the registration of participants and to create an online platform for conducting the remote games.
  • Develop a management system and a public part for face-to-face tournaments so that the game can be watched by the audience.
  • Test the functionality and support the service directly during games.

And all this in two months, since the dates of each event were already approved and it was impossible to move them.

Implementation

To be sure to meet the set checkpoints, we divided the work into iterations.

 

Home page

First, we launched a beautiful main page of the site and static sections where we told about the event, explained the rules, and invited participants to register.

Sign up 

Registration takes place in two stages. At the first stage, the team submits an application and immediately gets access to the personal account. At the second stage, the team is pre-moderated and assigned a region, which affects the filtering of events on the site — for example, only Metropolitan teams receive invitations to the Moscow championship and news related to it.

Demo version

To prepare the teams for the championship, we created a demo version that allowed students not only to understand what and where to click but also to assess the complexity of the questions and their chances of winning. You could play the practice game as many times as you wanted — of course, the points for it did not go into the overall standings.

Selection game

All teams must have equal conditions at the distance qualifying games: participants simultaneously see questions, and the timer finishes counting down every second.

When the guys answer, they see the result (correct or not) and the number of players who answered correctly. And the chart is updated in real-time: the top five teams advance to the semifinals.

Qualifying games for the Moscow Championship began on November 12 at three o'clock in the afternoon. We opened access to the start of the game and provided up to 1000 simultaneous stable connections — participants and viewers.

Each question is assigned a level of difficulty — it depends on how much time the team can think about the solution and how many points they will get for the correct answer.

  • Choose one correct answer
  • Match one with the other
  • Fill in the blanks
Pavel Bondarovich
CTO
Pavel Bondarovich

The client's requirement is to allow 1000 users to connect to the game at the same time. These are both players and numerous spectators. In this case, the game state should be displayed in real-time and without delay. The team is given a limited time to respond, so every second counts!

To solve this difficult task, we wrote an application in Node.js (game manager), which communicates with the browser via socket, accepts responses, and sends users all changes that have occurred in the game. Thanks to the well-designed architecture of the game manager application, we do not load the main web server and are ready to accept significantly more than 1000 users.

Semifinals and final games

The last qualifying game ended on November 14, and on November 17 we launched the first semi-final. Each game in the semi-finals consists of three rounds.

First round. The moderator reads out the question and turns on the countdown. If a team gives a correct answer, points are awarded to it, and an incorrect answer gives the other team a chance to answer.

Second round. Before the players' Board with questions of different subjects and "weight". If the contestant gives the correct answer, they earn points for the team and a place for one player in the last round.

Third round. The final round is played as the first round. Only teams don't play in full strength. Those players who earned places in the previous round start. If the team responds correctly, they are joined by one player. The winner is the one who first gathers the entire team at the table.

For the semifinals and finals, we have developed an admin panel for managing and synchronizing the public part with it — a large screen that is visible to viewers and participants of the game, as well as viewers of the online broadcast.

Admin panel

  • panel an instance of the game with questions
  • the ability to mark who answered correctly
  • form the next round of players
  • earn and deduct points
  • start and switch rounds
  • game splash
  • screen questions
  • countdown timer
  • individual rating
  • team's rating

Ratings are updated in real-time

Pavel Bondarovich
CTO
Pavel Bondarovich

We used Vue.js to draw the game interface, it was perfect for displaying the game state in real-time. The game control panel also works in real-time on Vue.js.

A special feature of the admin panel is the possibility of multi-user work. And it was very useful, as we, for our part, provided full support during the games and made sure that everything went smoothly.

Results

Intellectual games took place! Both championships were held according to the schedule, without unpleasant surprises and disruptions. The customer then admitted that he was morally ready to display points on the projector in an Excel table, as he understood the unreality of deadlines. But we met the challenge.

2
months of work
207
registered teams
1000+
participants and 70 publications in the media

The service is not a one-time story, it can be used in the future. After the championships, Russian New University organized an internal tournament for its students. The client received a long-running project, and the project received a bronze in Tagline Awards, the event website category.

Thanks for your attention

Let's discuss your project
Irina Kozlikina
Account manager
Irina Kozlikina

We will receive your request and send you an offer within 24 hours with an approximate estimate of the development cost and clarifying questions. After that, we will call you and discuss the project’s goals and requirements. And let’s get started.

Let's discuss your project
Irina Kozlikina
Account manager
Irina Kozlikina

We will receive your request and send you an offer within 24 hours with an approximate estimate of the development cost and clarifying questions. After that, we will call you and discuss the project’s goals and requirements. And let’s get started.

Microblog