What is the full process of going from offline game to online multiplayer with a database?
Hi,
PROBLEM: I am trying to make an online mobile game, where the multiplayer works much in the same way as say titles like "Clash of Clans", whereas players do not interact directly, instead building their own towns and battling the builds of other players, who can be offline. What I am basically looking for is a map sharing technique (others can be offline), but so far there is no need for matchmaking and the like (for online players).
What I have discovered is that I am in need of a database. Sure enough, I started looking in to what/how/where those are like, and discovered that it is quite a bad idea for a multiplayer game to access a database directly. One must also have a server, which acts as an intermediary. Naturally, I got quite confused since I am quite new to the networking field, because there are now 3 fully separate parts which need to work together to do this one seemingly small thing.
QUESTION(s): How and where do I need to write the server code, where do I publish the server? What are the means of accessing it via unity scripts? How could players upload their "maps" to the server? How does the server communicate with the database? Where should the database be hosted?
I'm not even sure that I am asking the right questions, but from what I was able to gather by searching was that nobody outlines a concise way of merging all of these things together in to one working system. I understand that there are different hosting, server and etc. solutions out there, but can a general outline of what has to be done in order to achieve such a functionality be addressed?
I would be very grateful, and I'm sure that such an outline would help others as well in figuring out what they have to learn, in a step by step manner.