Announcement

Collapse
No announcement yet.

UWorks (Steamworks C++/BP)

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

    First of all, sorry for the delay guys, I didn't get notified of your replies.

    Originally posted by Zenteran View Post

    Hah, good to know someone else is getting gaslit trying to fix VoIP bugs... you'd think the UE4 Voip system would fully hand off to the audio system before playback, but I guess that's not how it's built =/ Thanks for the response.

    Another follow-up: Would UWorks help with my frustrations regarding "Party" vs "Game" Steam sessions? Ideally I'd have dedicated servers, but even being able to distinguish between "Lobby" listen servers and "Game" listen servers would be useful. Seemed like OSS uses Party/Presence exclusively for full-on game sessions unless you source build the Engine, and I was hoping to avoid that if possible.
    Yes, that part is a bit tangled in OSS, but in UWorks, you can create your solution exactly the way you like. Steam GameServers work as expected in any scenario, as far as I am aware. Since there is no limit to how many Steam lobbies a user can join at the same time, you can use them for parties and disregard OSS completely (the "experimental" OSU module also uses them in the back).

    Originally posted by axiao View Post
    Hi Vlad,
    Great plugin, very comprehensive. Although I'm running into some trouble setting it up for my project, here's the problem:
    1. I followed the tutorial and added a section call [UWORKS] in my defaultengine.ini and added my appid (this is given by Valve since my app appears to be approved on steam so I can generate auth token and receive my appid)
    2. When I use get leaderboard for game, I was able to put in my auth token and my appid and found the leaderboard, the print statement prints the title of the board as well as ID and sorting method.
    3. The problem occurs when I try to set score, I put in the same auth ID and appid but I get the weird error message "bad request appid invalid".
    4. When I switched teh appid to 480, the overlay works, but when I use my own appid, no overlay
    5. After googling the problem, I found a similar thread about appid (https://forums.unrealengine.com/comm...id-not-working) so now I'm wondering if there's something wrong with my config? or if my steam account isnt setup properly? I've contacted steam about not seeing a dev package in the package list, but figure I should ping you and see if we can isolate the problem.

    Thanks!

    <<EDIT>>
    Looks like it was Steam's issue. I've followed the steps suggested in the other thread and contacted steam. Got my game uploaded to the depot and launched once from Steam. Now Play in Stand Alone Game is properly connected to steam. Everything seems to click, I can get leaderboard and most importantly set entries!

    Really great plugin, worth the dollar!
    Thanks! Let me know if there's anything broken!

    Again, sorry for the delayed response to both of you!


    Versions 19-12 and 18-12 are now live on Gumroad and submitted to Epic! You can find the updated documentation here: https://www.dropbox.com/s/wi7lused6i...ation.pdf?dl=1

    The main objectives of this version were:

    - Fixing an important error which caused inconsistent behavior in callbacks.
    - Decoupling the subsystem from the core module, required for the upcoming split.
    - Updating the example project to showcase server registration via the subsystem.
    - Updating the GameServer example to showcase connecting.

    I should have noticed and fixed the above-mentioned error slightly faster, but I got arrogant and ignorant when it was brough to my attention. Therefore, I apologize and thank @Zrma for insisting as needed.

    I have also updated the packaged example project, which you can find here: https://www.dropbox.com/s/enj58np3sq...mples.zip?dl=1

    Comment


      I got plugin and it is great! It allows you to do every single thing that SteamWorks API would allow you to. Definitely recommend it, and especially now because it is on sale!

      Comment


        Has anybody been able to get voice chat working?

        Comment


          Originally posted by skeeta92 View Post
          Has anybody been able to get voice chat working?
          skeeta92 The previous forum page and the Discord are full of this question that you keep asking without telling what your problem actually is. I, and others, have pulled your tongue on Discord, trying to help out.

          There are a number of people who got it working. There used to be a rare crash when playing voice, but I've fixed it a few versions ago and that was the only problem with voice chat.

          A sum up for everyone reading this: the plugin allows you to capture microphone data using Steam's codec (it's not a 5/5 stars codec, the one used by OnlineSubsystemNull is probably more high quality; I may change it to use Steam Audio someday) and it also provides an interface for sending P2P data. How everyone designs their solution is their choice. I'm not here to hard-code my particular voice chat solution.

          Originally posted by shadoow2213
          Does this plugin support NAT puncthrough and STUN yet, so businesses or a handful of people can join without port-forwarding?
          which version would be best for this?
          shadoow2213 Yes, it supports NAT punch-through via Steam's own library, which relies on STUN/TURN/ICE based on Steam's servers. On top of that, I added my own STUN communication so that I may display the external IP to developers, because Steam doesn't display it. Punch-through has been working since V08+ (right now it's at V12).

          Comment


            Hi I just purchased the plugin. Sorry if I missed it somewhere, but is there a step by step guide to getting a first working example going? I'm primarily interested in setting up a dedicated server, and connecting to it.

            I enabled the plugin content and set the game mode to the game mode in there, set the level to the demo level and tried a stand alone launch, but the menu is blank. Just trying to get to that first working out of the box example that i can then draw from. I probably just missed the quick start or setup link somewhere, but could someone point me to it.. looked around for an hour or so now.

            Comment


              Originally posted by MagicBots View Post
              Hi I just purchased the plugin. Sorry if I missed it somewhere, but is there a step by step guide to getting a first working example going? I'm primarily interested in setting up a dedicated server, and connecting to it.

              I enabled the plugin content and set the game mode to the game mode in there, set the level to the demo level and tried a stand alone launch, but the menu is blank. Just trying to get to that first working out of the box example that i can then draw from. I probably just missed the quick start or setup link somewhere, but could someone point me to it.. looked around for an hour or so now.
              Hey!

              The current docs don't have a "quick start" guide, but I'm aware of it and will fix with the next docs overhaul.

              The steps you need to take:

              - Set the "GameInstance" to UW-GameInstance.
              - Set the "Default Game Map" to UW-Menu.
              - Set the "Default Server Map" to UW-Match.

              Then, it will work just like in the pictures, when run in standalone or from a shortcut, to simulate dedicated servers. You don't need to do anything with the UW-GameMode BP. It's embedded in the UW-Match level by default and that is the only place where it's relevant.

              Comment


                Originally posted by vlad.serbanescu11 View Post

                Hey!

                The current docs don't have a "quick start" guide, but I'm aware of it and will fix with the next docs overhaul.

                The steps you need to take:

                - Set the "GameInstance" to UW-GameInstance.
                - Set the "Default Game Map" to UW-Menu.
                - Set the "Default Server Map" to UW-Match.

                Then, it will work just like in the pictures, when run in standalone or from a shortcut, to simulate dedicated servers. You don't need to do anything with the UW-GameMode BP. It's embedded in the UW-Match level by default and that is the only place where it's relevant.
                Looks like I just missed setting the game instance class. Working now, thanks!

                Comment


                  I set up the Server and Client shortcuts like in your video. However, I'm having some trouble getting the server to show up on the 'internet' tab of steam servers. It's showing up under LAN but not internet.

                  When I run the server launcher shortcut, I get this warning message in the log:
                  [2018.07.03-06.41.32:021][149]LogUWorks: Warning: Attempted to get NetDriver information with no driver present.

                  I copied and pasted from the documentation the ini setup into my games DefaultEngine.ini.

                  but I get the same error.

                  earlier in the log I also get this warning:
                  Uworks, NetCL: 3944462, EngineVer: 2, GameNetVer: 0 (Checksum: 599446548)
                  Warning: Read Token: Bad quoted string
                  ImportText (NetDriverDefinitions): Bad quoted String at:

                  I still have the token set to 'xxx' as was in the documentation.

                  Token=xxx

                  I'm assuming this is the issue? If so, what am I supposed to put for the Token ID? (yes, i'm that new to setting up steam)
                  Anything else I might be missing for getting the Server to show up on the internet tab?
                  I took screen grabs of the full error, and warnings. If those are helpful, I can PM you those.

                  BTW I'm starting from a blank blueprint project for 4.19, and just enabled the plugin.

                  Comment


                    MagicBots I didn't get a forum notification of your new reply :/

                    There is a common error that occurs when copy-pasting the config section from the docs. This leads to the "+NetDriverDefinitions" line being split in 2 lines. Check that, make sure it's only one line and it will work.

                    The "Token=xxx" line is meant to be used with persistent GameServer accounts ( https://steamcommunity.com/dev/managegameservers ). Typically, you don't need this and you should remove the entire line.

                    Comment


                      Originally posted by vlad.serbanescu11 View Post
                      MagicBots I didn't get a forum notification of your new reply :/

                      There is a common error that occurs when copy-pasting the config section from the docs. This leads to the "+NetDriverDefinitions" line being split in 2 lines. Check that, make sure it's only one line and it will work.

                      The "Token=xxx" line is meant to be used with persistent GameServer accounts ( https://steamcommunity.com/dev/managegameservers ). Typically, you don't need this and you should remove the entire line.
                      Thanks, it looks like I had the copy and paste issue you mention.
                      I'm no longer getting the NetDriver errors, but it's still not showing up on the "internet" list.
                      Is there something else I might be missing? Other things to check?

                      There's now just one error in my log:

                      LogLoad: Error: Failed to enter /UWorks/Match/UW-Match: . Please check the log for errors.

                      I checked the log under Saved/Logs, and no errors other than this one.

                      Is there anything else I might be missing?

                      I have this warning which may be relevant:
                      [2018.07.09-10.50.16:023][ 0]LogOnline: Warning: OSS: AutoLogin missing AUTH_LOGIN=<login id>.

                      and a bunch of warnings about uassets being saved with an empty engine version, and may not be compatible, but i don't those are causing any issue.

                      Thanks again.

                      Comment


                        Originally posted by MagicBots View Post

                        Thanks, it looks like I had the copy and paste issue you mention.
                        I'm no longer getting the NetDriver errors, but it's still not showing up on the "internet" list.
                        Is there something else I might be missing? Other things to check?

                        There's now just one error in my log:

                        LogLoad: Error: Failed to enter /UWorks/Match/UW-Match: . Please check the log for errors.

                        I checked the log under Saved/Logs, and no errors other than this one.

                        Is there anything else I might be missing?

                        I have this warning which may be relevant:
                        [2018.07.09-10.50.16:023][ 0]LogOnline: Warning: OSS: AutoLogin missing AUTH_LOGIN=<login id>.

                        and a bunch of warnings about uassets being saved with an empty engine version, and may not be compatible, but i don't those are causing any issue.

                        Thanks again.
                        Listen servers use lobbies in their implementation and dedicated servers may not show in the internet list on the same machine because Steam has a limitation there.

                        The warning you pasted is harmless. It's a left-over from Epic's code, which calls a login function for some reason, but it has no effect anywhere.

                        Comment


                          No update or ETA ? There are load of errors when recompiling so i can't just update it.

                          Comment


                            From my Discord:

                            "I'm working on the 4.20 release, but no, I don't have a "release date". Every once in a while, the work I need to do on UWorks overlaps work I need to do in some other areas that have to take priority. Now I'm back to working on it."

                            Comment


                              how you get the example projects to work? Says this project does not have any source code.

                              Comment


                                Originally posted by calvin019 View Post
                                how you get the example projects to work? Says this project does not have any source code.
                                The example project is included in the plugin's content folder (check docs if you don't know how to view that in the engine). You can't work with the packaged example. That's intended only for running.

                                Comment

                                Working...
                                X