yairm210 / Unciv

Open-source Android/Desktop remake of Civ V

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Prevent people from joining games with old versions

ofetios opened this issue · comments

I think we should add the game version used to create the game with in gameInfo and gameInfoPreview and prevent people from joining games using an older version

And then display a simple message like "You need to update the game to x.x.x in order to play in this game"

There isn't any reason you'd want to use an older version

Already doing that right now, PR soon.

This will cause more problems than it solves.

This will cause more problems than it solves.

Like what? Not having this causes problems and forward compatability is probably impossible/unfeasable to do

Imagine if we add espionage or a new civ in the game and someone chooses that civ and your game doesn't have it. What would happen then?

Imagine if we add espionage or a new civ in the game and someone chooses that civ and your game doesn't have it. What would happen then?

Obviously it would

cause more problems than it solves.

lol

Like what? Not having this causes problems and forward compatability is probably impossible/unfeasable to do

The problem is for Unciv even if you see that you do not have the latest Unciv version popup and want to update Unciv you can't. Google Play doesn’t roll out 100% at once, And only a tiny bit of players actually uses Github Releases.

So, after implementing this, a portion of players be it 10% would be unable to make moves (A portion of GP + Github latest users). In a 3/4 player game that would always cause problems cause GP only let's you update not downgrade. Someone would always be unable to join a Game.

Ditch partial rollout in GP first if you want to implement this. Else this is not for Unciv.

In other games they rollout in Google Play 100% first before telling player to update their game @alexban011
As you said that other games uses this in Discord.

lol

The real problem is partial rollout. And users complain every time when a game breaking change happens because they see their game break and can do nothing about it. Preventing people from joining games doesn’t solve this underlying problem, just mask it behind a popup.

It's nonsense.

If you want to do anything about it then learn to flag Pull Requests that might cause game breaking change in Multiplayer and do 100% rollout when such a Pull Request is merged. Otherwise, this is not a solution.

A notice of old version, proceed at own risk could already do wonders too.
It seems a bit unnecessary to implement a hard-coded access denial purely for making sure everyone plays the latest version.

Additionally, I'd rather not be hindered to update my server to version x + 1 because some users want to finish their version x game.

Then you're gonna send broken saves to the server..

purely for making sure everyone plays the latest version

its purely so people don't start games which will 100% break

hindered to update my server

The server won't need to update. This is done locally, the server doesn't need to know what version of the game the users have