Search Unity

What server solution is more preferable

Discussion in 'Multiplayer' started by jyky, Aug 11, 2019.

  1. jyky

    jyky

    Joined:
    May 24, 2019
    Posts:
    3
    Hello guys. Could you please share advice. Currently I have an offline game where a player plays with a bot. I want to make this game multiplayer. Until today I have never faced to multiplayer game development. By sight my game is more like “Slither.io” – doesn’t have many objects and complexity scenes, size of .apk = 22 mb.

    So can you tell what tools (Photon Server / Cloud, Unet, Nodejs or something else) are suitable for these criteria:

    When a player with a certain rating clicks the «play» button, the server automatically finds another rival player for him with the same rating and creates a room for these two players.

    -room only for 2 players, the game lasts 5 minutes;
    -Real-time game (ping should be good;
    - it is important that the server would have a database (for storing the “player name”, “password” and personal statistics for each player - the number of wins and losses).

    As for ping: the fact is that for example one player can be from the United States, and a rival in Asia. What ping will be in this case? Is it possible to make the server find two players who are located physically close. Or are there any other solutions to reduce ping?

    Currently the number of game downloads is ~20 000. (appstore + google play). I think at first time the number of online players will be ~ 500 – 5 000.


    I would be grateful for any advice.
     
  2. MrsPiggy

    MrsPiggy

    Joined:
    Jun 13, 2018
    Posts:
    154
    I have done something similar with SmartFoxServer and MySQL, running them on an EC2 instance and handling a couple thousands players (at peak). SmartFox uses a classic client-server approach so if you need a server authoritative solution it will work for you.
    Also it's very easy to integrate your own DB. Their website is www.smartfoxserver.com.

    the fact that you have players in two different regions could be tackled by matching players coming from the same region, instead of mixing them up. Especially if the game is real time you need servers that are close to the players to keep the ping low.
    yes, you can geo-locate them by finding their IP address and checking it against a geo-location database. Actually SmartFox does that via its own api, I've used it to put a small flag besides the player's profile to show their country.