No announcement yet.

Difference between Client-Server and Designated Server

  • Filter
  • Time
  • Show
Clear All
new posts

    Difference between Client-Server and Designated Server

    Hey guys,

    After watching the Networking tutorials, I feel like I have a pretty good idea how to, for example, create a chess game where I can give my friend my IP and we can play together using a client-server model.

    My question is "How can I utilize the designated server?" It seems like since Clients are the ones doing actions, they should initialize all changes. If I create a chess server that waits for people to connect and matches them up so they can play chess with each other in one room (and other people play chess in other rooms). How could the client move certain people to certain instances of rooms while moving other pairs to other instances? It seems like if I don't have a client-server, I lose all server functionality.

    I guess a higher level question is "Is Unreal natively capable of supporting an MMO architecture (in terms of parties and instances) or should I look to other libraries (such as Photon)?" I'd like to know if I'm missing something huge about server implementation before I start including extra libraries. It'd be great if I could get an actual Unreal developer to weigh in on this as well, if any have the time.

    Thanks in advance!

    To start with your higher level question, Unreals networking works per world. So networking with the standard system is limited to the same map. If you want a lobby system, you should consider using a flexible message oriented middleware like ActiveMQ ( I have no clue about Photon). This way you can write the lobby decoupled from Unreals networking and write the whole lobby, chat and matchmaking stuff pretty easily.

    When you found a match between two players, you could then open a virtual server for them and load your chess map and let both of them connect. From there on, Unreals networking should be sufficient. At the end of the match you just send them back to the lobby and repeat the process.

    There is actually an UDP messaging plugin that comes with UE4, but I haven't tried it yet.