Customer

A Russian startup company.

Objective and solution

Customer had a vision of a next generation MMORPG (massive multiplayer online role playing game) but it had no expertise in client-server multiplayer games with high numbers of online users.

Our research and development group was asked to prepare general architectural recommendations and build a prototype of the game server.

The main requirements for the single game server instance were:

  • High availability (no less than 99.999%)
  • Ability to handle up to 10 thousand simultaneous connections
  • Minimal network load. Users with 3G connection of 2048 Kbytes/sec should be able to play.

Solution:

  • Created custom binary protocol on top of UPD with delivery guarantee support for critical messaging scenarios
  • Network load minimized by sending only “deltas” - personalized chunks of data that actually changed.
  • High availability was assured by a Microsoft IIS web farm with load balancing

Project highlights

  • First version of working prototype was able to handle more than 2000 connections
  • Custom protocol that unified ideas of UDP broacasting and multicasting allowed significantly decrease load on network
  • Plugin based architecture weakened dependencies between server components and streamlined development process