Custom Online Subsystem

Hey there,

I’ve got another question :slight_smile: My question is: How difficult would it be to implement my own custom Online Subsystem? For example, I have a separate login server (profile service) and a separate friends server (friends service). Now I would like to be able to use these servers from UE4 by using the Online Subsystem interfaces provided by Epic.

First, I guess, I would create new classes which derive from the basic interface classes (interfaces) and implement their methods.

But where should I do this? Should I write an engine plugin? Or should I implement it in my game project or even in a custom source build of the engine itself?

Last seems to be a bit odd, since I don’t want to share my online subsystem with the rest of the world :smiley: Also, I don’t want to do all the work again for each engine update.

And then another question: If I have implemented the interfaces correctly, how can I tell my game to actually use it as the default online subsystem? I know I can change these settings in the config files (and have to link the module/s), but will UE4 be able to find my custom online subsystem? Do I have to register it under a specific name somewhere in the engine?

Thanks in advance,
Dalon

Never mind… I used the Null System as base and it seems, adding the subsystem to my game project is enough and it registers itself using it’s name.

Can you explain what you do? i want to make my own online subsystem and don’t know how to start?

1 Like

The question is why would you want to create your own OnlineSubSystem?
What Dalon did was use the Null OnlineSubSystem which (as the name implies) uses a “default” subsystem built in to the engine itself.
This can be achieved by opening the DefaultEngine.ini file (located in the …/YourGameProjectFolder/Config folder) and setting :

[OnlineSubsystem]
DefaultPlatformService=Null