Description

In a world powered by cloud computing where human interaction seems to affect application behavior at real-time, video games seem to be stuck in a “synchronous state”. It is true that nowadays updates to game installations happen asynchronously, but these updates always rely on application re-starts.

Current implementations for these purposes rely on traditional paradigms for point-to-point communications using the Internet Protocol through socket programming. However, as the world embraces the move to cloud computing some new API’s have emerged becoming game changers for network programming as we know it today.

The goal of this project is to evaluate existing asynchronous cloud-based client-server (RESTFUL) communication API’s as an option to stream content to running applications, like games, without having to break the player’s immersion with an abrupt application re-launch.

Features

  • Asynchronous data listening system, which runs in a different thread.
  • ASP.NET Web API interface with game data such as user preferences and stats.
  • GET communication between Server (API) and the Client (GAME). E.g., Things like tile colors or other simple properties update when changes occur in the server at run-time.
  • PUSH communication between Server (API) and the Client (GAME). E.g., user data is collected and pushed to the server.
  • Large data retrieval at run-time (asynchronously).
  • Send from Simple admin panel files such as textures and alter the looks of the game at run-time.

Technical Detalis

  • OpenGL
  • Win32
  • C++
  • Multi-threading
  • Casablanca
  • ASP.NET Web API

Checkout the Source Code  for this game at GitHub.