Photon vs built-in mp

Which one should I use for a game similar to planetside 2 or heroes and generals, as far as the global war is concerned? I have tried getting photon to work with UE and there is like 2 tutorials that exist online and they’re both terrible. The demo that photon gives you for UE4 doesn’t even work.

Should I even bother with this poorly documented and confusing server provider or just use the one that is built into UE? I am planning on starting small and expanding down the road.

It all depends on your needs. Unreal Engine 4 comes with a lot of net work already done so it might work in your case.

Stock UE4 net code has all what is needed to build up a multiplayer game like gears of war, unreal, a moba, etc if you need instancing, large persistent worlds, your own master server, host-migration, etc etc than you might consider integrating a middle-ware. Thus this is could be a fair amount of work, you have to implement replication, your own socket subsystem, you might need your own OSS (OnlineSubSystem), your own connection layer etc so if you have no experience with advanced networking it will be hard.

There are quite a number of options apart from Photon like RakNet or Smartfox.

thank you for your response. I do not have any substantial experience with networking. I recently graduated with a CS degree, but I never took any networking classes just coding ones. Do you think something like heroes and generals would be easier for my needs? As in possibly using a server to host a database to sync the data for the “war” screen on the client? It won’t be coded in html like h&g however, unless I had to.

For your first prototype I would go for a stock UE4 solution, you could add a database connection (there are some example in the forums) to your dedicated servers.

If it is enough for your game stick with it, if not you would could always consider a middle-ware integration later.

You would rather use an existing OSS (OnlineSubsystem) provider. UE4 comes with steamworks, live, psn etc etc. I wouldn’t start in building your own leaderboards, stats back-end because it is huge task.

to implement leaderboards and stats and stuff for my fps i would need a connection to a database anyways wouldn’t i?

just so im understanding correctly, do I need to build the leaderboards for a specific platform? Like if the game was to be released on steam then i would use steamworks, on xbox then i would use live, etc.?

what if your target platform is just a normal windows machine. does that fall into live still? I wouldn’t mind having my game on the steam network, but it would have to be greenlit for that.

Yes but the engine already has some abstraction layers build in, so you just configure them locally in the engine (each platform might needs some special configuration) and setup all things on the steamworks/psn/live backend and you should be good to go :smiley:

I would go for steamworks on PC, you get a lot of goodies from it :smiley: Geenlit is not that hard to pass these days. A good games passes for sure.

For now you can reuse some sample steamid, from the sdk for example that comes with the engine already or from the steamworks site. You do not need to pass greenlit to access the sdk.