4.13 OnlineSubsystem Documentation?

I’m trying to move a project to 4.13; and the change with making the OnlineSubsystem a plugin has potentially permanently halted our engine upgrades.

The OnlineSubsystem (notably Steam) is lacking many features that we have resolved ourselves, and why 4.13 is still on the v132 SDK is head turning…

However, now that it is a plugin; I’m unable to carry over our engine modifications that relied on the previous integration. I’ve attempted to add the needed OnlineSubsystem modules in the Engine.Build.CS file, but have run in to issues at every turn.

If I Dynamically Load them, my #include headers cannot be found for things like the OnlineSubsystemUtils.h file.
If I try to make the modules either Private or Public Dependencies; VS spits out circular reference warnings (EXEC: error : Action graph contains cycle!) and fails.

I’d much prefer to adapt to the new design, rather than re-integrating the OSS code back into the engine, but I’m at a loss on how to properly get the engine to utilize the online subsystem plugins.

I also wanted information about the Online Framework plugin, as that looks to have some components of interest, yet google didn’t seem to find any documentation on it.

The core engine files where I must have this access are in LocalPlayer, World, and GameSession.

Please skip any comments regarding how to implement the OnlineSubsystem plugin in to my project, as my issue is pre-project. I rely on these features within the engine itself, and it is too complex to resolve with overrides within child classes in the project.
I’ve reviewed the 4.13 Transition forum thread, and sadly I seem to be alone in this boat.


Documentation for the new features and how to implement them would be nice. Perhaps I should look through the UDN files in the source; that probably contains what I’m looking for.
As for the OnlineSubSystem problem; I’ve spent 2 days trying to access the plugins within the engine; whereas it took me only a couple of hours to bring the OSS code back in to the engine instead of it being a plugin.

Some quick tweaks to the Engine and OSS Module build.cs files and returning a few #include entries and I’m back in business.

Now, I’m just going through the 4.13 transition pains…
I’ve chased out the

  • “AttachTo” changes
  • “AttachParent” changes
  • “DetachFrom” changes
  • Begin/End Overlap Delegate Signature changes
  • PreLoad Map Signature changes
  • ActiveSound nixing the GetComponent function
  • Issues with accessing the Animation Montage class methods
  • GameplayTaskOwnerInterface::OnTaskActivated causing LNK2001 errors
  • GameplayTaskOwnerInterface::OnTaskDeactivated causing LNK2001 errors

I’ve got some time, but will need to figure out how I’m going to manage user settings for volumes now that direct access to the audio classes is going away…

Edit: As Wisefao commented below, adding the GameplayTasks module to my project fixed the LNK2001 errors.

The irony with all of this is… that while the features of 4.13 are very very impressive; the only component I really “needed” is the “IsFocusable” option for 3D Widget Components.

My project now compiles and I’m ready to get back in to the Editor and look for deprecated Blueprints.

Not sure I understand most of whats going on but this is what i managed to search online. i hope it helps :).
you probably stumble on this too but i thought why not post it anyway it might help. good luck. maybe you need to add “GameplayTasks” to the public or private modules.


Module GameplayTasks
Header Runtime/GameplayTasks/Classes/GameplayTaskOwnerInterface.h


HAHA!!! Bingo! Wisefao just won the “perfect timing” prize!

I refreshed the page to edit my comment with that very statement. Adding the GameplayTasks module to my project build file did the trick for the LNK errors.