I want to make the game I want to play, and that game happens to be an asynchronous multiplayer game. Think Hero Academy or Hearthstone, where there are 2 players and each submits moves to a central server. Alternatively (and not ideally), clients connect to each other and play is limited to a fixed window of connection, but still there needs to be a central server to acquire new opponents.

That said, this is very much going to be a hobby type endeavor - I'm just one guy after all. This is not going to commercially support itself. If I have 100 players ever, that would be fantastic.

Given that I'm going to have to eat server costs myself, what are my options for getting a server? I don't need much bandwidth or CPU, due to the nature of async games - only the sending of the gamestate/current move, and perhaps some checking of legal moves. Going to Amazon or getting dedicated hosting seems drastically overkill for what I want.

If it makes a difference, I'm intending to learn and use Unity for this.


closed as primarily opinion-based by Engineer, Anko, concept3d, MichaelHouse Jan 6 '14 at 15:36

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    \$\begingroup\$ If you don't expect a lot of players and don't need much performance it should be more than manageable. A virtual root server is relatively cheap (I pay roughly 13 Euros per month for mine) and due to root access you should be able to set up anything you need for your game. For developmen you could use a place like digitalocean.com, where you can pay per hour up to a monthly cap for a virtual root server. \$\endgroup\$ – Christian Jan 6 '14 at 10:12
  • \$\begingroup\$ @Christian if you don't need heavy resources, then you can expect to pay much less than 13€/month, IIRC. \$\endgroup\$ – o0'. Jan 6 '14 at 14:56
  • \$\begingroup\$ @Lohoris I suppose so, it was only an example. DigitalOcean has servers capped at 5$ per month, which is one of the cheapest offers I've seen yet. \$\endgroup\$ – Christian Jan 6 '14 at 15:22
  • 1
    \$\begingroup\$ You may want to check out RakNet. It is a game networking library with a master server for server lists, and would work well if you decide to have players connect to each other. Plus, its free for noncommercial uses, or for up to $100,000 of revenue. \$\endgroup\$ – chbaker0 Jan 6 '14 at 15:29

This really depends on your actual game, the networking code, and (especially) the number of concurrent users.

However, creating some asynchronous gameplay is really trivial and easy to scale, as long as you keep your data to a manageable amount.

You won't need any expensive or powerful server for this. A typical HTTP server with scripting support (e.g. PHP, Perl, ASP, etc.) should be sufficient for a start.

There won't be permanent traffic or connections. A game client would connect to the server and use a simple HTTP request to get the status of games. It can then use a second request to download the current state of a game as well as submit it's changes/current state as a third request.

If done right, this kind of games causes hardly more traffic than some kind of blog or forums. Just make sure to not hardcode IPs. Use a (sub) domain you're in control of, that you can just redirect to a new/better server (or load balancer) if the need to do so arises later on.

As for actual server hosting, a simple hosting package for maybe 10 or 20 $ a month should be more than sufficient. You might also be able to host the server at home for a start (especially during an early beta of some kind; e.g. using a barebone system like Zotac's ZBox), but this is of course depends on your own internet connection etc. Before picking any offer, just make sure the hosting of games (not necessarily game servers) is allowed. Unless you want to write your own server from scratch, you won't need root access.


Not the answer you're looking for? Browse other questions tagged or ask your own question.