No announcement yet.

Online Subsystems for mobile platforms

  • Filter
  • Time
  • Show
Clear All
new posts

    Online Subsystems for mobile platforms

    Hi there,

    we're developing a small mobile game which should also come with a small multiplayer mode. I've created a little "chat level" to experiment with the networking capabilities and it worked on LAN (after I figured out that it doesn't really work inside the editor) and also between a PC and an Android system.

    However, I've spent 2 weeks of reading the documentation and several internet pages about the online subsystems but so far I haven't made much progress on it. I've read a lot about the Steam Subsystem, but since we're developing a mobile game, which should run on Android as well as on iOS (and both platforms should be able to communicate between each other) Steam doesn't seem to be the right choice. I couldn't find information about other subsystems, though. Is there somewhere a well hidden list that shows all available subsystems and the capabilities they provide? I've also read many posts that it's indeed possible to create your own subsystem (which is basically what we need, because we're not very happy about those DRM bonds and we actually don't want to use it in future projects either) but nobody ever stated how it is done after all.

    Also, I've found this Post:

    Does it mean that our project isn't possible at all? I mean, they're talking about lacking support for joining/finding/hosting sessions etc. All functions we'd really need for our game.

    Can somebody please clarify the mess about the online subsystems for me?

    Kind regards,


    I just took a look at the Source and it seems like there are no Session Functions for Google Play.
    Steam, for example, has the "OnlineSessionInterfaceSteam.h/cpp" files, in which the logic to create, find and host
    Sessions (with Steam callbacks etc) is placed.

    That does not exist for Google. I don't know if Google itself does not support it or if Epic simply did not put any
    Session stuff up for the Google Play Subsystem.

    The "OnlineSessionInterfaceIOS.h/cpp" DO exist though. So you might be able to use the Blueprint Session Nodes
    for the IOS Version of your Game (there are tons of tutorials and examples on how to use the Session Nodes).

    But i haven't worked with Mobile Subsystems yet. So it's up to you to find out if it works for IOS.

    IF there is really no implementation for Session for Google Play, you will be forced to handle the Session stuff
    either with your own Subsystem or by including the GooglePlay API and directly take care of the Session stuff
    with their API.

    Either way, you will need C++ for this.
    Open for contracted work | C++/BP (incl. Multiplayer) | Tutoring | VR

    My UE4 Blog/Page with Tutorials and more: Hit me for ALL the things!
    (Including 100+ Pages Multiplayer Network Compendium to get you started.)


      Thanks for your reply.

      The Session Nodes are working already on LAN so if there's no implementation in the google subsystem, then that's... really bad ;-)

      C++ isn't much of a problem, the description of what a online subsystem actually is in particular or what it needs to be implemented and what data it expects etc. is a problem, though.

      Are there any other Subsystems which are accessible from a mobile device?


        Hm, no idea. I searched for the "OnlineSessionInterface" in the Engine, and the only one that showed up was IOS.

        I don't think a "normal" user has tried to understand how a Subsystem actually works (me neither). Your best bet is
        to check how, for example, IOS is implemented to use Sessions. The "OnlineSessionInterface" classes could give you
        a hint. Maybe you can simply create your own "OnlineSessionInterface" class for GooglePlay and override the "Create Session"
        etc functions.

        Since it's the interface between the UE4 Session Nodes and the GooglePlay Session System (if it has one), you might need
        to include GooglePlay APIs and add the correct stuff to the Create/Find/Join Session functions.

        Sadly i can't really help with that and i doubt that a lot of people actually know how to do this.
        Open for contracted work | C++/BP (incl. Multiplayer) | Tutoring | VR

        My UE4 Blog/Page with Tutorials and more: Hit me for ALL the things!
        (Including 100+ Pages Multiplayer Network Compendium to get you started.)


          I took subsystem out and all leaderboards in app purchases, ad mob all work fine. I dont know what system is for.