How to go on developing a multiplayer game like this

Hi! i’m trying to do a game for learning purposes / fun and i’m having some troubles figuring out how to go about developing.

Some of the requirements are:

  • You can have player only gameplay wich is saved into a shared database and restored from that database when loggin again.

  • You can move on a shared world that is driven by the same database, with spawned actors that each player can interact with from their own instance, and this information being saved into the database.

(i.e.: one dedicated server with a baloon on the midle of the map, when one player touches the baloon, the baloon “touched times” is incremented by 1.

This change on the baloon “touched times” should be replicated to the other players, with the players not necesarely seeing each other / interacting at all. And also, this “touched times” being saved on the database to be used in order to restore the baloon in case of a server restart.

this is a very rudimentary diagram of what it should look like.

as a reference, i’m trying to imitate the basic setup of the game Art of conquest (Art of Conquest Gameplay - YouTube)

I already have the Dediserver communication with the database established, using a mysql database with a c# webapi and VaRest plugin on UE4. But not sure how to approach the “Your world → Shared world” Content in UE4 in a secure way.

this is not intended to be a AAA multiplayer game played by thousands.
If i can run this on my pc and play with some friends while still being secured enough to trust the client information and learning on the process of doing it, i’ll be happy with it.

Any idea is appreciated, thanks in advance.