Hello guys, my name is Lucas, today im here because a question who is smashing my mind.
I was mading a MMORPG Game, using EXTERNAL C++ SERVER SIDE, but in the middle of the process i was find some dificulties, one of them is the NavMesh, to i can SECURE movements i need to get NavMesh SERVERSIDE Validation, so, how i cant export the NavMesh, i start to read about DEDICATED SERVERS in Unreal, but, this “Method” you makes the SERVER SIDE, Inside the CLIENT SIDE blueprints, so, this makes a little bit hard to understand some things.
So i want to ask about:
1 - When i make a Build for Dedicated Server, this build will not build VISUALS/SOUNDS/ETC… Right?
2 - When i make a Build for Clients, they cant open a “Local Server” using ?Listen in command panel, getting all my dedicated server structure?
I really want to know how this is handled by Unreal
Typically this is true. Servers do not render (no GPU), they do not play sounds, nor particle fx (in most cases).
Client builds cannot be used as a server. They lack all the needed code, subsystems to actually host.
For example Game modes only exist on the server build. Clients do not get copies of these. Even if the client calls get game mode it will never return a value. It will always be invalid (null/empty).
It works in the editor, but not in a packaged build.
Players List is stored in the Game State PlayerArray. Game State is replicated to all connected clients. You can create custom variables in your GameState class and have them set to replicate.
Also need to note that Game State itself is initialized by the Game Mode and resides solely on the server. The replicated values are passed down to clients.