Search Unity

Updating client app

Discussion in 'Multiplayer' started by caranubis, Feb 19, 2023.

  1. caranubis

    caranubis

    Joined:
    Mar 20, 2015
    Posts:
    1
    Hi,
    I am new to multiplayer.
    My plan is to create a mobile game, android and ios, where players would compete in 5 minute realtime matches. Then, I would update the app frequently with balance changes, new mechanics etc. As a result the new version wouldn't be compatible with old one.
    What is the common practice to handle this?
    Apps update only through wifi, so it might take weeks before some users update, and by that time they will be several versions behind. I don't really want to support 10 different client versions on the server, since the game might change so much in this time that rankings and economy would be different and not even compatible with new ones.
    Also players would only be able to match against others with same version, which might not exist.
    I also don't want to force user to agree to update since that would be a bad experience.
    How do established game studios handle this issue?
     
  2. CodeSmile

    CodeSmile

    Joined:
    Apr 10, 2014
    Posts:
    6,005
    There is only few viable options:

    • players will only matchmake with other players using the same app version
    • if players can look for „nearby devices running the app“ they can see all available devices running the app including the app version and whether it is compatible with their own. the reason why players should also see mismatching app versions is to prevent them from suspecting the issue is with their device or network.
    • app checks online what the current „live“ app version is, and if it doesn‘t match, prevents the user from joining games and notifies the user about the mandatory update
    Since you seem to run game simulation on the server, the server has authority, therefore you are almost obligated to roll out mandatory updates. You would actually risk fragmenting the user base if you allowed several versions which means quickly waning interest in the game altogether, not to mention development and support nightmares.
     
    caranubis likes this.