Cross platform networking in Unreal Engine

I’m currently working on a game in which we would very much like to implement cross platform (PC, console, mobile) multiplayer. When messing around with Unity, I found that Photon Networking was perfect because it was easy to set up and it was cross platform. However, the Photon Networking SDK that is available for Unreal Engine only supports PC and mobile. So, my question is as follows: how can I do cross platform networking in Unreal Engine? I know Unreal has built in networking support, but I am not at all familiar with it. If need be, I’ll use that, but I’d prefer something like Photon Networking. Photon has uses their own servers to run games using the Photon Networking, which means users don’t need to configure and run their own server for their games. I’d prefer something like that, but if that’s not possible, I’m comfortable enough with servers and networking in general that I’d be okay with that. Tutorials, advice from your experiences, and whatever else you have to say about this topic is all very much appreciated. And if it makes much of a difference, the game I’m working on is turnbased.

On every platfrom internet works the same, connecting to unreal server works the same regardless on which platform both server and client runs on. Problem is combining online services to make your users connect to servers more seamlessly, not to mention console manufacture will force you to use PSN and Xbox Live. That might be reason why Photon don’t support consoles. If not online services and need to use them on consoles, there would be 0 problems.

You will most likely be forced to use them at minimal level, only for identification, because matchmaking services definitly won’t work with crossplatfrom, same as many other other user interactions. It’s definitly possible as Rocket League does that with UE3 (but i’m not sure how much onlinesubsyetems are diffrent there), thing is they use there own online service to support matchmaking and server connections and use PSN and Steam just to identify users and parties. The bigger problem would be PSN<->Xbox Live interaction which i don’t think Sony and MS let you do it.

Youy will definitly need to use C++ for this

Thank you, that’s very informative. In your opinion, do you think it would be worth it for us to add cross platform networking? Or should we just do PC and mobile cross platform networking using Photon and have Xbox One and PS4 have networking only with themselves? We’re only a two person team, and I’m doing the entirety of the coding. The person I’m working with is doing all the modeling, artwork, etc.

The way i seen Photon work in UE4, the you might diffrence in behavior as Photon use it’s own replication protocol (or else you use it just for matchmaking ando ther services), but if you manage to make your game work on Photon and Unreal replication then it’s ok. Just try to make it work on both and see if it fit your workflow, if yes then you can pull something out one way or another.

Hi,

i’m not specialist at crossplatforming, so i maybe wrong:

  1. as mentioned above network delivery the same on every device, it’s TCP/UDP
  2. if UE4 nativly support packaging for all platforms you want, then you don’t need invent own wheel, just use “replication”, “rep notify” on variables and relevancy property on actors, use check function called “switch has authority” and custom events with their replications settings like “multicast”, “run on server”, “run on owning clients”

live examples on networking see in launche->learn->content example project (it’s below same name leading to just docs), after downloading it open library in launcher and create project, then start it and File->Open Level “networking”, there are fine examples of all mentioned above

Thank you for you input. I’ll try both Unreal and Photon and see what works for me.

Problem is he wants to use Photon which as i know use it’s own replication, using wierd odd actor thing :stuck_out_tongue:

then i can’t imagine how hard would be UE4 replication replacment, because probably wanted team of hardcore C++ coders to achieve it and for what cost and for what pros and cons? what can’t be done with UE4’s replication compared to Photon’s?

p.s. Photon’s site tell’s there are 3 million active users every day and from this point Photon seems so popular, that i never heard about it and don’t know any single game on it - compare to UE, there’re around 300 games including AAA class https://en.wikipedia.org/wiki/List_of_Unreal_Engine_games , forget mention Photon isn’t free and UE4 is, still think which use? :stuck_out_tongue:

The reason I want to use Photon is that the people who make Photon also host their own servers that I can use for networking that are already set up to work perfectly with the client side Photo SDK. I don’t know how to set up a server to work with Unreal’s networking SDK, so that’s why I’m hesitant to use Unreal’s networking. If I had some sort of guide to setting up a server to work with Unreal networking, I’d use that. I know how to work with servers and basic networking, but I don’t know how to set up Unreal specific servers and networking.

Edit: In addition, Photon has matchmaking all set up already, so that’s one fewer thing that I have to worry about in the development of this game.

Well to jurge which is the best for you we would need to know what kind of game you making and there mechanics. But i don’t know much about Photon features, i know about it since you not first one mention it in UE4 community,

Well not everything is perfect in UE4, UE4 replication is not that good for MMO and too big for turn based games

Also you didn’t heard about it most likely because it’s popular in mobile.

Actually we do offer Photon Client SDKs for console platforms that work happily with Unreal Engine 4. We just can’t just put them into our download section where everyone can access them, because the console manufacturers require us to verify through their devnets that you are an officially registered developer for a certain console, before we can provide the Client SDK for that console to you. Please drop us an email if you are interested in Photon console SDKs.