D
D
dollar2019-10-08 12:57:23
Data synchronization
dollar, 2019-10-08 12:57:23

How to design the modification system in an online session game in such a way as to avoid the problem of out-of-sync mods of different versions?

I don't consider purely client mods.
I don't consider pure server mods either.
But mods that affect both the client side and the server side are affected by this problem. It occurs when a mod author releases a new version of that mod. As a result, on all servers where the game is running and the mod is installed, it instantly becomes outdated. New players who want to join the server download the mod from the repository, but the version is different. The host is forced to restart the server in order to sync the installed mods. The wildest thing happens when non-creatures change in fashion, then this is a complete incompatibility of mod versions.
The obvious solution that suggests itself is to let the server distribute its own mods. But this is not very good for a number of reasons. For example, if the host is a player with a narrow channel, then downloading a heavy mod will result in lag in the game itself. Even a light mod will result in short-term lags. Therefore, I am looking for directions in which the solution is not limited to downloading from the server.
Moreover, the new version of the mod may be compatible with the previous one. For example, the author corrected a typo in the text of the description of some phenomenon (it will only affect the client), and did not affect the core of the mod and other functionality. That is, it is 100% compatible. I would like to take into account such moments so that the host does not have to restart the server every time the mod is updated. Otherwise, if there are a lot of mods, then you will need to do this often, which reduces the impression of the game for everyone.

Answer the question

In order to leave comments, you need to log in

1 answer(s)
S
Saboteur, 2019-10-08
@dollar

The question is not clear.
Are you talking about a specific game that has already implemented mods?
If you are talking about your own, then implement updating mods so that the server is not overloaded every time. Do moderation of mods, make authorized users who can upload mods. Why does it slow down if the host is a player with a narrow channel? It is not necessary to connect this player to the game. The mod can be downloaded slowly into a separate folder, and only then applied to the server, and the rest of the players will already receive the mod from the server, and not from the player. Again, you can overload the server between sessions, and not in the middle of the game.
It is hardly possible to adequately answer your question without understanding how the game server works, what its schedule is, how many players are in the session and how often to reconnect and a bunch of other details.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question