Realtime Multiplayer Browser Game Development

OData support
Dr. Mezei Gergely
Department of Automation and Applied Informatics

The users have a lot of demanding requirements for computer games, eg. nice visual appearance, real-time multiplayer game mode. These features were basically impossible to implement in browsers, but with the development of modern web technologies this is no longer the case: with WebGL we are able to deliver 3D graphics that has the same performance as their native counterpart, and with WebSockets we are able to implement full-duplex communication between the client and the server, and all we need is just a regular browser.

The goal of my thesis is to present the currently available web technologies, and to build a game based on these technologies. The implementation consists of a Node.JS based server application and a browser-based JavaScript client application. The server uses PostgreSQL to store data, the communication protocol between the client and the server is based on WebSockets. The user interface is built with the React-like virtual dom based Inferno framework, and it uses WebGL for graphics.

The application was deployed to a live environment, where the server runs behind an nginx reverse proxy. The deployment process was automated with Ansible.


Please sign in to download the files of this thesis.