Due to the rapid improvement of mobile devices, gaming software play an ever-growing role on smartphones and tablets. Also, due to technological advances, it is now expected that instead of games designed for a single player, we could also include our peers in the activity. As a result of smartphones being so prevalent, it is reasonable to analyse and assess the possibilities provided by them – and more specifically the Android platform, because of its popularity.
Numerous game engines have been developed to support this notion, so that the typical recurring problems would have a standardized solution – but the usage of these engines also requires additional knowledge.
The primary goal of the thesis was the development of such a multiplayer game. After the assessment of the capabilities of the available, often-used game engines, the choice was LibGDX, which is technically a modular cross-platform OpenGL wrapper and application framework, with additional functionalities, such as the handling of audio, files, and image-based textures.
The completed software is a 2D, multiplayer, competitive, real-time game. In terms of networking architecture, it is server-client based. The display is based on custom UI elements. For the implementation of networking communication, the KryoNet library was used, which is a TCP/UDP-based communication library that provides server-client architecture, and is cross-platform between Android and desktop Java, using the Kryo serialization library.
For the extension of functionalities in the application, a server-side component was created, using Spring Boot. The communication between the game and the server is done via HTTP protocol, with the use of LibGDX’s Net module.