Announcement

Collapse
No announcement yet.

Does Epic have any immediate plans to finish the Steam Online Subsystem?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    [PROGRAMMING] Does Epic have any immediate plans to finish the Steam Online Subsystem?

    I am a self-admitted UE4 fanboy, but even I have to admit that this is kind of beyond the "Steam-In-UE4" meme now.

    The Steam OSS in UE4 is in a real sorry state of disrepair - there are endless threads both on the forums and answerhub demonstrating basic Steam functionality either not working correctly or missing entirely. For example, the infamous 'Dedicated Server With Steam Is A Joke' thread repeatedly resurfaces to the top of the C++ forum because the process is still so involved and obfuscated.

    I understand that since Epic are not working on any Steam-based titles (and let's be honest, it's unlikely they ever will be from now on) - and I'd like to think there aren't any business-driven motivations behind this - but a significantly massive portion of the UE4 user base is shipping games to Steam, and while savvy programmers/developers like myself are capable of implementing this stuff - we are either unable to share our efforts because of time or contractual obligations, or in the rare occurence somebody creates a pull request it goes largely ignored until it's out-of-date.

    I've found myself spending a couple of weeks implementing user stats and entitlements because the engines interfaces for this are non-existent - but I am unable to share my implementations due to contractual obligations. We've also made several drastic improvements to the Steam implementation that we are also unable to share.

    I know Epic are busy - but my main purpose for this thread is to draw attention to how light-on-implementation some of the OSS interfaces are in Unreal in the hope it ends up on somebodies radar. If the OSS-system is going to exist at all, it should really be complete. UE4 has been out over five years now and we're still contending with this all the time.

    And yes I am aware of UWorks and various other third-party implementations - but none of these are implemented in a platform-agnostic way, which is a deal-breaker for multiplatform games (which is an increasingly common standard nowadays).

    I don't mean to rant - but the engine has been public for >5 years and I honestly think to only addition to the OSS in that time has been Steam Authentication - and even that took 20 releases to get to. The engine doesn't even update to the latest Steam SDK with each release. I'd really like to get this changed, either through Epic or via the community on their behalf.

    #2
    BTW - this extends to the console platforms as well, but those are even harder to talk about because of the nature of console development.

    Comment


      #3
      While I do agree that the Online Subsystem Steam plugin could use some work, the problem is that keeping every plugins that deal with third parties up to date would take away a lot of resources that could be spent on the core of the engine. That's why UE4 is open source, so that there is a potential for those updates to be done. Unfortunately, contractual obligations often means that potential updates for the plugin won't be added. Steam is one of the more "important" third party to keep up to date, but it is still a third party nonetheless.
      Personally, we only use the authentication system of the Online Subsystem Steam and handle all of the other Steam features through our own SDK.

      A little rant from me, but I think Steam is honestly the main problem here. There are many solutions out there that offers the same stuff Steam does but isn't limited to the Steam platform itself.

      Also, isn't Epic developing their Epic Online Services which would take care of Steam integration in the process?

      Comment


        #4
        Steam rarely if ever makes drastic changes to the SDK that would require a rewrite, and Epic update all other platforms to the latest versions with each release. For some reason Steam is an exception.

        Comment


          #5
          For some reason Steam is an exception.

          Epic has brought the most dangerous weapon of console wars "exclusivity" to the peaceful world of the PC. So I guess not giving much support to the enemy is part of this war.

          Comment


            #6
            Correct me, if I'm wrong.
            Recently they made the first meaningful update for Steam subsystem in years, while they're developing own store. I doubt there's any hostility against Steam and developing Steam-friendly engine. They simply didn't use Steam for a game that brought them billions of dollars.

            From engineer point of view probably the most effective now would be to ship the first version of the Epic Online Services.
            - They already won't manage to release all features this year, probably all devs related to online services are busy.
            - It makes sense to focus now on rebuilding their Fortnite infrastructure - working on major platforms, cross-platform, handling over 200 million players - for general use. Not only with Unreal. And then look at the existing subsystems and update them.
            Last edited by Doctor Ergot; 08-10-2019, 06:41 AM.

            Comment


              #7
              Companies are not human beings, I don't think there is real hostility just a business strategy.
              But until Tim manages to rule the world and the galaxy should give more support to developers who use steam.

              My first game when I went to projects settings -> Platforms I was surprised not to see a section for steam.
              Surprised I went to look for documentation at docs.unrealengine.com ... nothing
              Luckily I found this in the forums something completely unofficial
              https://forums.unrealengine.com/comm...m-achievements

              From the point of view of a developer, the unreal customer, would expect more support to the largest online store a light years from the rest.
              Especially since the chances of your game being published in the epic store are remote. My first game is boring and the second have sex.

              Hail Epic!

              Comment


                #8
                Originally posted by DomusLudus View Post
                My first game when I went to projects settings -> Platforms I was surprised not to see a section for steam.
                The fact someone would expect Steam to be found under "Platform" is terrifying. Just get to show that Steam is way too bloated.

                With all of its pointless features, Steam pretty much needs to be an SDK instead of just a simple API to make calls to.
                Valve wants Steam to be an exclusive Online Service SDK, they want everyone to use their features only and nothing else.
                It means that to develop online features for anything outside of Steam, you need another SDK like Playfab, Epic Online Services or an in-house solution to do it.
                Most devs won't notice this problem because this is specifically an Online Service problem, so using another online SDK will take care of Steam features for you, but the simple fact that those SDKs NEED to go through so many hoops, to the point of taking as much development time as adding an actual platform like XboxOne or PS4 in, just to make Steam works is a massive problem.

                It's also why I don't see OnlineSubsystemSteam going anywhere. Steam is way too big for a simple plugin to take care of it. Epic Online Services will do a much better job at providing what people need for Steam.
                Last edited by ANameTooLongToFi; 08-12-2019, 03:27 PM.

                Comment


                  #9
                  We like steam's online subsystem, but feel some of the features should be contained within our game's own platform. Opted to develop our own custom online subsystem api for wordpress. We look forward to working with EOS, which will have priority for integration over Steam. If we did elect to use Steams API, we would develop it from scratch to use a simpler HTTP interface. I don't see any particular reason for Epic to invest more into it, when the community could take on that responsibility.
                  GOD of DREAMs: A Unique FTPS/RPG Sandbox MMO

                  Comment


                    #10
                    Perhaps Valve could provide a plugin for Steam for UE? They recently released a SteamVR Input plugin. It is in there interest to make it as easy as possible

                    https://www.casualdistractiongames.com

                    Comment


                      #11
                      Originally posted by ANameTooLongToFi View Post
                      The fact someone would expect Steam to be found under "Platform" is terrifying. Just get to show that Steam is way too bloated.
                      .
                      I guess you think that a platform is only when its external appearance is different, but what defines a platform is that it needs unique options that you can have defined and concentrated in one place, without needing to remember them every time you do a build. And steam falls into that category.

                      Comment


                        #12
                        Originally posted by DomusLudus View Post
                        For some reason Steam is an exception.

                        Epic has brought the most dangerous weapon of console wars "exclusivity" to the peaceful world of the PC. So I guess not giving much support to the enemy is part of this war.
                        Please stop. Origin existed way way before EGS.

                        Comment


                          #13
                          Originally posted by OptimisticMonkey View Post
                          Perhaps Valve could provide a plugin for Steam for UE? They recently released a SteamVR Input plugin. It is in there interest to make it as easy as possible
                          I was thinking this myself, it benefits Valve way more than it benefits Epic in supporting this, it would certainly entice people to support Steam more if they knew the subsystem were officially provided by Valve rather than a third party. The ideal solution would be them working together so that one of the largest gaming online stores and one of the most used gaming engines are easy to use together, that said Epic support plenty of other Platforms and Stores and it must cost them to the point its more efficient for them to have the centralized Epic Online Services.

                          People have been quick to level criticism at Epic in regards to Steam but as far as I can tell Valves golden child status lets them offload costs to other developers, I would highly recommend reaching out to Valve on this topic and perhaps asking them if they have resources to spare for all of those UE4 developers using their platform

                          Comment


                            #14
                            MonsOlympus, excellent post!

                            It's funny when people hate Epic for EGS. Epic is forcing cross-platform future while Sony, Steam (or most of platform holders) would love to close their gardens.
                            Obviously there's nothing evil in that, it's just bussiness. Although Steam is charging small developers 30% but big guys pays 20% - only because they could afford their own stores eventually. Like EA, Ubisoft, Blizzard and CDP did...

                            In fact, the best for us would be to have common API for all the stores. Store-specific features for multiplayer games should be optional, just a bonus. Something you opt-in after making your game works on every platform and store.

                            Comment


                              #15
                              i totally agree

                              but lets hope they do great job with Epic Online Services , looking forward to it
                              and i hope they documents it well bc for now its document is very bad for Newbies

                              Comment

                              Working...
                              X