Announcement

Collapse
No announcement yet.

Advanced Sessions Plugin

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

    Originally posted by JLBXB3 View Post
    It still doesn't work... it still finds zero sessions. Does it work for you?

    Edit: Sorry mordentral, I don't think this is a problem with your plugin, seems it is an engine bug in 4.15. I'm not sure if it is happening to everyone or not though. I tried it on several computers, connections, you name it. I think it might have something to do with this, "BugFix: Fixed OSSNull server/session filtering to better match Session Settings and online OSS. Made MCP, Steam, and Null LAN queries more consistent."
    Mmmm....I don't know.

    Your project really does refuse to find sessions with my nodes (but finds them with default ones), but I have multiple projects on 4.15 currently that work just fine.

    I'll look into it more tomorrow, I didn't go into the source and make sure that you were using the right sessions version, but the front end hosting code didn't change at all for 4.15, if something on the backend changes that I am unaware of i'll need to look through it.

    *Edit*

    Ah no, they changed how they handle the UsePresence flag, change the find sessions node to search for either clients only or dedicated servers only instead of AllServers.
    Tomorrow i'll default the AllServers enum to flag PRESENCE search to true, I think before unless specifically stated otherwise they always flagged that as true. Your test project works with FindAdvancedSessions searching ClientsOnly.

    That must have been their "bugfix" was to actually have it follow that flag correctly. Before when I set it AllServers enum couldn't find Dedicated Servers at all.

    Also explains why I didn't have the problem, none of my projects are on AllServers search since they only have client side hosts and that is the default search mode.
    Last edited by mordentral; 02-24-2017, 02:10 AM.


    Consider supporting me on patreon

    My Open source tools and plugins
    Advanced Sessions Plugin
    VR Expansion Plugin

    Comment


      Originally posted by mordentral View Post
      You'll want to keep that node you had before, the RequestFriendInfo one, it applies to players that aren't actually your friend. Get friends list only loads everyone on your friends list.

      Just call the RequestFriendInfo every so often until it returns true, you can fall back to a delay node if you wish and loop it on false with a counter or timer to stop after a set time period for that widget.

      I would have made it an actual async node except the callback triggers globally for each and every inquiry so it would have been messy to incorporate into blueprint.

      SO CLOSE! We are getting all of the pertinent information, but the Display Name always comes back blank. Played a game over the web and the print strings have confirmed two different UniqueNetIDs and success at getting the Steam Info. The print string for the display name always comes back blank for the server and the client and obviously the text block in the widget does too. Here is my total set up:

      1. After Login in the GMODE, I fire a multicast event in, and pass the incoming player controller to, the GSTATE:

      Click image for larger version

Name:	Capture_GMODE.PNG
Views:	1
Size:	116.7 KB
ID:	1123867


      2. The GSTATE adds the player controller to an array of the other player controllers (This being the "server versions" of all of the controllers. and then I fire the unreplicated custom event in WIDG_LobbyPlayers which is really just a horizontal box to fill up with the player cards and I pass the array through.

      Click image for larger version

Name:	Capture_GSTATE.PNG
Views:	1
Size:	109.1 KB
ID:	1123868


      3. The WIDG_LobbyPlayers clears the children and then, for each loop, gets the built-in PlayerArray from the GSTATE and then gets the corresponding UniqueNetID. It also grabs the corresponding controller reference and passes all of that through to a newly created WIDG_PlayerCard.

      Click image for larger version

Name:	Capture_WIDG_LobbyPlayers.PNG
Views:	1
Size:	217.4 KB
ID:	1123869


      4. My guess is this is where the issue is: The newly created player card populates the information with the exposed variables. PrintStrings to confirm.

      Click image for larger version

Name:	Capture_WIDG_LobbyPlayerCard.PNG
Views:	1
Size:	423.4 KB
ID:	1123870
      Level Designer

      Boilerplate Studios

      https://twitter.com/DBBoilerplate

      Comment


        Originally posted by PDubulous View Post
        SO CLOSE! We are getting all of the pertinent information, but the Display Name always comes back blank. Played a game over the web and the print strings have confirmed two different UniqueNetIDs and success at getting the Steam Info. The print string for the display name always comes back blank for the server and the client and obviously the text block in the widget does too. Here is my total set up:

        1. After Login in the GMODE, I fire a multicast event in, and pass the incoming player controller to, the GSTATE:


        2. The GSTATE adds the player controller to an array of the other player controllers (This being the "server versions" of all of the controllers. and then I fire the unreplicated custom event in WIDG_LobbyPlayers which is really just a horizontal


        3. The WIDG_LobbyPlayers clears the children and then, for each loop, gets the built-in PlayerArray from the GSTATE and then gets the corresponding UniqueNetID. It also grabs the corresponding controller reference and passes all of that through to a newly created WIDG_PlayerCard.
        I'll get around to looking at that later


        Consider supporting me on patreon

        My Open source tools and plugins
        Advanced Sessions Plugin
        VR Expansion Plugin

        Comment


          Ok so in news regarding JLBXB3's issues with the plugin.

          I went in and checked for the AllServers functionality in the SteamSubsystem and it has a hard switch for searching either Client servers only, or Dedicated servers only. Originally I was going to just remove the AllServers option and have users search twice, but I realized that there is only one search allowed at a time. So rather than have users have to stagger the searches I am just having the plugin itself search twice and combine the two lists together.

          I should have it committed some time later today with an at least mostly functional SteamWorkshopLibrary as well.

          His main issues were unrelated and due to project setup, but it did let me find this bug and fix it, so thats good.
          Last edited by mordentral; 02-24-2017, 10:37 AM.


          Consider supporting me on patreon

          My Open source tools and plugins
          Advanced Sessions Plugin
          VR Expansion Plugin

          Comment


            Originally posted by PDubulous View Post
            SO CLOSE!
            Didn't notice that you were going for a remote name, generally people have been replicating that over.

            However in the new update I am uploading today I added a "GetSteamPersonaName" node that directly obtains that information.


            Consider supporting me on patreon

            My Open source tools and plugins
            Advanced Sessions Plugin
            VR Expansion Plugin

            Comment


              Pushed a new commit to the repository - Building the files right now to upload new binaries

              Don't download 4.15 binaries until I edit this post saying that they are uploaded.
              *Edit* Uploaded

              Changes:

              Code:
              Added "bRequireNameOnly" to the RequestSteamFriendInfo node, significantly reduces time to return
              a result as the cost of not downloading the avatar for that user.
              
              Made FindSessions AllServers option search twice, once for client servers, once for dedicated, and merge the results.
              (This fixes a bug and also ensures that steam works correctly, if you want to avoid the longer search time before showing results you could
              search one first, fill in results, and then search the second and add them in when it is complete instead).
              
              Added the following additional nodes
              
              AdvancedFreinds
              GetSteamPersonaName - To retrieve the name of a non friend from steam (requires RequestSteamFreindInfo to have sucessfully completed for that ID already)
              
              Make UniqueNetID from SteamID String - Makes a uniquenetid from a 64bit steam ID string (mostly for testing, can use IDs that are not your friends). 
              Could also be used for storing the string representation of a UniqueNetID and later converting back to retrieve information about them.
              
              Advanced Steam Workshop
              
              Get Num Subscribed Workshop Items - Returns how many workshop items the user is subscribed to for this AppID
              
              Get Subscribed Workshop Items - Returns how many items and an array of workshop item IDs for workshop item the user is subscribed to.
              
              Get Workshop Item Details - Takes a workshop item ID, returns a structure with details about that workshop item.

              New Workshop Nodes



              Example of getting a remote (non friend) users Name and Avatar on steam (should have loop count limit).
              Last edited by mordentral; 02-24-2017, 03:32 PM.


              Consider supporting me on patreon

              My Open source tools and plugins
              Advanced Sessions Plugin
              VR Expansion Plugin

              Comment


                [MENTION=4285]mordentral[/MENTION]

                Hey man would there be a reason why I'm getting two of the same Sessions from the results array? also after i package the my project its not coming up with the server details and clients read as zero and i'm unable to join it i think its mite be related to 4.15. thanks

                Comment


                  Originally posted by OverRated_AU View Post
                  [MENTION=4285]mordentral[/MENTION]

                  Hey man would there be a reason why I'm getting two of the same Sessions from the results array? also after i package the my project its not coming up with the server details and clients read as zero and i'm unable to join it i think its mite be related to 4.15. thanks
                  What subsystem are you on? There are several potential issues with the change I made yesterday that I intended to fully debug over the weekend, specifically that I think the Steam subsystem behaves differently than all other subsystems when searching for sessions.


                  Consider supporting me on patreon

                  My Open source tools and plugins
                  Advanced Sessions Plugin
                  VR Expansion Plugin

                  Comment


                    Originally posted by mordentral View Post
                    What subsystem are you on? There are several potential issues with the change I made yesterday that I intended to fully debug over the weekend, specifically that I think the Steam subsystem behaves differently than all other subsystems when searching for sessions.
                    I have all 3 enabled in my plugins but it should be setup for steams, its seems its finding a sessions for each both listen and dedicated which is why its getting double, i don't have dedicated selected when creating the session i do have the UseLAN ticked though. Thanks

                    Comment


                      Originally posted by OverRated_AU View Post
                      I have all 3 enabled in my plugins but it should be setup for steams, its seems its finding a sessions for each both listen and dedicated which is why its getting double, i don't have dedicated selected when creating the session i do have the UseLAN ticked though. Thanks
                      Yeah I found the bug, was a stupid error on my part (was adding the same results array in the second time around....).

                      will have a fix up shortly.

                      Its kind of annoying because only Steam does searches separately (the Presence flag is ignored for all other subsystems). So when using steam I have to allow for two searches and when using every other subsystem it is just one and there isn't a difference between the servers to search enums.
                      Last edited by mordentral; 02-25-2017, 03:42 PM.


                      Consider supporting me on patreon

                      My Open source tools and plugins
                      Advanced Sessions Plugin
                      VR Expansion Plugin

                      Comment


                        Originally posted by mordentral View Post
                        Yeah I found the bug, was a stupid error on my part (was adding the same results array in the second time around....).

                        will have a fix up shortly.

                        Its kind of annoying because only Steam does searches separately (the Presence flag is ignored for all other subsystems). So when using steam I have to allow for two searches and when using every other subsystem it is just one and there isn't a difference between the servers to search enums.
                        Ah yeah that does sound annoying, glad you found the issue and thanks for the reply i will test it out once its up thanks.

                        Comment


                          Originally posted by OverRated_AU View Post
                          Ah yeah that does sound annoying, glad you found the issue and thanks for the reply i will test it out once its up thanks.
                          Its uploaded


                          Consider supporting me on patreon

                          My Open source tools and plugins
                          Advanced Sessions Plugin
                          VR Expansion Plugin

                          Comment


                            Originally posted by mordentral View Post
                            Its uploaded
                            Thanks for the speedy update seems to be all working correctly now .

                            About the Voice Interface this doesn't support Attenuation's does it ? was hopping to be able to use it in a similar way to how survival games do, so if a client is within Attenuation of another they can hear there chat.

                            Comment


                              Originally posted by OverRated_AU View Post
                              Thanks for the speedy update seems to be all working correctly now .

                              About the Voice Interface this doesn't support Attenuation's does it ? was hopping to be able to use it in a similar way to how survival games do, so if a client is within Attenuation of another they can hear there chat.
                              Sadly plugins can't really mess with the default implementation of sound components for voice currently, hopefully with the total audio engine re-design in 4.16 that can be amended. With how it is currently it is just on/off which you can control by distance if you want.

                              That being said its pretty simple to achieve in an engine build.

                              Also there was a game studio talking about releasing their custom VOIP solution as a plugin that includes distance based volume and more control, you should hop on over to their marketplace section thread and vote it up, even if 4.16's sound engine and VOIP is amazing it always helps to have alternatives.


                              Consider supporting me on patreon

                              My Open source tools and plugins
                              Advanced Sessions Plugin
                              VR Expansion Plugin

                              Comment


                                Originally posted by mordentral View Post
                                Sadly plugins can't really mess with the default implementation of sound components for voice currently, hopefully with the total audio engine re-design in 4.16 that can be amended. With how it is currently it is just on/off which you can control by distance if you want.

                                That being said its pretty simple to achieve in an engine build.

                                Also there was a game studio talking about releasing their custom VOIP solution as a plugin that includes distance based volume and more control, you should hop on over to their marketplace section thread and vote it up, even if 4.16's sound engine and VOIP is amazing it always helps to have alternatives.
                                Thanks for the info, i did post on that thread about that plugin but i don't have high hopes it will get released, so the default sound capture how would i set that up to use distance thanks.

                                Comment

                                Working...
                                X