I am developing an MMORPG, where I have 3 maps.
Map 1: runs offline, it is the start map, it only serves to login, or register a new account, it is connected by API’s to the database. When you login successfully, it sends you to the second map.
Map 2: runs offline. After a successful login, this map allows you to view, create or delete a character. It establishes the connection with the 3 map, which is the dedicated server map. After you select one of your characters to play, this map takes you to the dedicated server.
Map 3: works online, it is the dedicated server. I need to spawn the character chosen by the player on this map, bringing all the character’s unique information (name, level, exp, etc.). The problem is happening here. I’ll explain.
I am using the game instance to run the APIs for registration, login, get character information, create characters, delete characters, log out, and everything is working perfectly on the first and second maps. When I enter the map of the dedicated server, although all this information is still saved in the game instance of each client, the server does not read it. It seems that he starts using the game instance of the server itself, which does not have any unique information from each client. So for testing, after several failures and alternative attempts, I got the solution closest to working. I put in GameInstance 2 variables as “RepNotify” (character class and name). This way I managed to pass these variables into an array structure and add all the players that connect to the server, and span each one, but as the variable is “RepNotify” the server does not update the class and neither the name and as a result, only the first player is able to correctly enter his character on the server, and all that enter next are a copy of the first.
I need to understand how I can make the dedicated server read individually the variables that the GameInstance of each client was acquiring during the process of login and character selection, keeping this information when the player finally accesses the dedicated server.