Announcement

Collapse
No announcement yet.

Advanced Sessions Plugin

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

    Originally posted by JLBXB3 View Post
    The non dedicated server, doesn't work either. The Example blueprint doesn't work as well. :/ I have no idea what to do, if you say it works I really have no idea. I tried on two different computers and I used all the same steps I used for previous versions.
    When not using dedicated servers, turn on bUsePresence on create session, it defaults to off with dedicated server hosting because they can't use it but its technically an option for normal sessions (though generally also required to be on for them).

    I have multiple projects that package out fine and find other players fine in 4.15, you can give me a copy of your connection nodes if you want and I can look through them.

    *Edit* I'm curious if you still have issues if you use online subsystem null and a LAN host? Or use the default nodes to begin with? Generally the only difference is that the plugin may still be an engine version behind in binaries and throws "Incompatible Build ID" into the log and rejects results and requires a re-build. The searching for sessions code is pretty much the same except for when filters are involved.



    Originally posted by Positivity View Post
    Hallo, i expirance same problem of not finding Session in steam with Find Session Advanced but I can find session with original Find Session. So Create Advanced Session works fine and plugin and steam is setup correctly, I use my own SteamAppId, no 480. Engine is compiled from source. Project is cooked in Shipping build. UE 4 version 4.14.3.
    That sounds like a filters issue (searching for a filter that doesn't exist). 4.14 is also confirmed as working and there have been no changes to the FindSessions official node since November of 2016.
    Last edited by mordentral; 02-23-2017, 10:48 AM.


    Consider supporting me on patreon

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

    Comment


      I have Question does it can happan if i have nothing pluged in thous Filters ?
      This is how its Setup For Finding session: https://gyazo.com/3138e3db948cd520cddbb8b55a4455ec
      And this is how its setup Create Session : https://gyazo.com/10bf7d4b4fdd4afe30e2d21d9bc1515d
      Use Lan is False in that picture.
      Maybe My setup is wrong ? or im missing something ?
      3d Artisit / Generalist
      Portfolio : https://positivity.artstation.com/

      Comment


        Originally posted by Positivity View Post
        I have Question does it can happan if i have nothing pluged in thous Filters ?
        This is how its Setup For Finding session: https://gyazo.com/3138e3db948cd520cddbb8b55a4455ec
        And this is how its setup Create Session : https://gyazo.com/10bf7d4b4fdd4afe30e2d21d9bc1515d
        Use Lan is False in that picture.
        Maybe My setup is wrong ? or im missing something ?
        You have max search results set to 0 in the FindSessionsNode, in Steam at least the code should print a warning to console that you won't find any sessions with that set to 0. The default NULL subsystem doesn't use that variable from what I can find in code so LAN and NULL subsystem tests would work fine with it but steam "should" fail. I will also note that you have a "GitLan" node hooked up to the standard FindSessions node but not up to the Advanced sessions node, it is being checked in the CreateAdvancedSessions node though so if true then there will be a mismatch for LAN mode between finding and creating sessions.

        Other than that, you would need to post your log file so I could see what warnings print out.


        Consider supporting me on patreon

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

        Comment


          I wish i was able to get any logs, Shiping builds and logs are not friends .. I tryed setting Max Search Results to some number but it didnt help, On Simple Find session i can leave it 0 and i can see Servers in Server list. Oh and that bool i disconnected after the Test. I will try to make deveoloper build to maybe get some logs. Thanks
          3d Artisit / Generalist
          Portfolio : https://positivity.artstation.com/

          Comment


            Originally posted by Positivity View Post
            I wish i was able to get any logs, Shiping builds and logs are not friends .. I tryed setting Max Search Results to some number but it didnt help, On Simple Find session i can leave it 0 and i can see Servers in Server list. Oh and that bool i disconnected after the Test. I will try to make deveoloper build to maybe get some logs. Thanks
            Yes you can leave that at zero in non steam builds, in steam builds it is supposed to return 0 with that set to 0, if it isn't than that in itself is a bug.

            Package a developer build and run with -log in the command line with a shortcut.


            Consider supporting me on patreon

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

            Comment


              My steam Id is returning a random number every time. someone know why this is happening? on the tutorial video it was working fine with the same number

              Comment


                I started adding in the Steam Workshop API as being supported in the plugin today. I noticed some recent reports of users wanting blueprint access to it. Will be a bit of testing before its ready for release but proof of concept is already functional.


                Consider supporting me on patreon

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

                Comment


                  Hi mordentral,

                  We are building player cards for each player as they join the server. I wont run through all of the particulars, but we are getting the PlayerArray after LogIn and then pulling the UniqueNetIDs from there. It all works, refreshes and everything, except the name always seems to be the player on the local controller 0. The avatar is correct, but the name is wrong. I have nothing bound that I can tell and I just add a player card widget for each player in the array. You can see the player card hook up below. Could this be a bug perhaps?


                  Click image for larger version

Name:	Capture.PNG
Views:	1
Size:	167.0 KB
ID:	1123848


                  Click image for larger version

Name:	Capture2.PNG
Views:	1
Size:	146.6 KB
ID:	1123849
                  Level Designer

                  Boilerplate Studios

                  https://twitter.com/DBBoilerplate

                  Comment


                    Originally posted by PDubulous View Post
                    Hi mordentral,

                    We are building player cards for each player as they join the server. I wont run through all of the particulars, but we are getting the PlayerArray after LogIn and then pulling the UniqueNetIDs from there. It all works, refreshes and everything, except the name always seems to be the player on the local controller 0. The avatar is correct, but the name is wrong. I have nothing bound that I can tell and I just add a player card widget for each player in the array. You can see the player card hook up below. Could this be a bug perhaps?
                    *Edit* Whoops thats the indentity interface

                    Identity interface is local users only. You can get the player name directly from the GetFreindInfo() node and then breaking the FreindInfo structure.

                    For the record there IS a virtual const char *GetFriendPersonaName( CSteamID steamIDFriend ) function in Steam, but the Identity Interface in UE4 calls const char* PersonaName = SteamFriendsPtr->GetPersonaName() for both local users and UniqueNetIDs.

                    I actually assume that is a bug in their implementation.........that or Epic REALLY wanted to enforce the Identity interface being local users only.


                    You should also note btw that RequestSteamFriendInfo is an async request, you are not going to get results back right away. If you want a higher res image you may need to wait for it to be downloaded first.

                    *Edit* Forgot to mention, the RequestSteamFriendInfo returns true if the information is fully downloaded, false if it hasn't finished downloading yet.
                    Last edited by mordentral; 02-23-2017, 08:25 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
                      *Edit* Whoops thats the indentity interface

                      Identity interface is local users only. You can get the player name directly from the GetFreindInfo() node and then breaking the FreindInfo structure.

                      For the record there IS a virtual const char *GetFriendPersonaName( CSteamID steamIDFriend ) function in Steam, but the Identity Interface in UE4 calls const char* PersonaName = SteamFriendsPtr->GetPersonaName() for both local users and UniqueNetIDs.

                      I actually assume that is a bug in their implementation.........that or Epic REALLY wanted to enforce the Identity interface being local users only.


                      You should also note btw that RequestSteamFriendInfo is an async request, you are not going to get results back right away. If you want a higher res image you may need to wait for it to be downloaded first.

                      *Edit* Forgot to mention, the RequestSteamFriendInfo returns true if the information is fully downloaded, false if it hasn't finished downloading yet.
                      Thanks for all of that info. I did read your notes about requesting the info, I think I just never took it out. I'll take a look at all of that then. Thanks for all your work on this plug in. Its awesome!.
                      Level Designer

                      Boilerplate Studios

                      https://twitter.com/DBBoilerplate

                      Comment


                        mordentral, I upload two project files. One in 4.14 and one in 4.15, everything exactly identical with 4.14 working and 4.15 not working. Both engines are completely untouched with no plugins. I used the appropriate AS plugin version for each project. Only two blueprints are added a gameMode and a pawnBP. The pawn contains all code, press C to create a sessions, and press J to find sessions.

                        In the config files both add the following to the "DefaultEngine.ini" file
                        [/Script/Engine.GameEngine]
                        !NetDriverDefinitions=ClearArray
                        +NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="/Script/OnlineSubsystemSteam.SteamNetDriver",DriverClassNameFallback="/Script/OnlineSubsystemUtils.IpNetDriver")

                        [OnlineSubsystem]
                        DefaultPlatformService=Steam
                        PollingIntervalInMs=20

                        [OnlineSubsystemSteam]
                        bEnabled=true
                        SteamDevAppId=480
                        GameServerQueryPort=27015
                        bRelaunchInSteam=false
                        GameVersion=1.0.0.0
                        bVACEnabled=1
                        bAllowP2PPacketRelay=true
                        P2PConnectionTimeout=90

                        [/Script/OnlineSubsystemSteam.SteamNetDriver]
                        NetConnectionClassName="/Script/OnlineSubsystemSteam.SteamNetConnection"

                        Both have the following in the Build.cs
                        PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "OnlineSubsystem", "OnlineSubsystemUtils" });
                        and this is also in the Build.cs
                        DynamicallyLoadedModuleNames.Add("OnlineSubsystemSteam");

                        Both have the following added to the Target.cs
                        bUsesSteam = true;

                        Here is the 4.14.3 project (this works)
                        Here is the 4.15.0 project (this does not work)

                        Comment


                          Originally posted by JLBXB3 View Post
                          mordentral,

                          Thats not how you set up steam anymore, its a plugin, you might have gotten it to work in 4.14 but it def won't in 4.15.

                          Enable the steam plugin and remove the inclusions from your target files (*edit* and build.cs files), if you didn't notice I removed the references to the modules from the sessions plugin when they made this change.

                          This is from the 4.15 project you uploaded





                          *Edit* Also be warned that I had migration fail on a project moving over to plugin steam instead fo direct reference. Something was funky about when this switched over.
                          Last edited by mordentral; 02-23-2017, 11:05 PM.


                          Consider supporting me on patreon

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

                          Comment


                            It looks like, if I'm reading the tool tips correctly, that I need to call "Get Friends" first? I assume that's the Get and Store Friends List and if so, what is the World Context Object for that? Is there more documentation on these somewhere? Here is what I have. If I can get this all figured out, Ill do a tutorial on it!

                            EDIT: It current returns as empty for the listen server. The controller is passed through from the Event Login.

                            Click image for larger version

Name:	Capture3.PNG
Views:	1
Size:	181.8 KB
ID:	1123866
                            Last edited by PDubulous; 02-23-2017, 11:13 PM.
                            Level Designer

                            Boilerplate Studios

                            https://twitter.com/DBBoilerplate

                            Comment


                              Originally posted by PDubulous View Post
                              It looks like, if I'm reading the tool tips correctly, that I need to call "Get Friends" first? I assume that's the Get and Store Friends List and if so, what is the World Context Object for that? Is there more documentation on these somewhere? Here is what I have. If I can get this all figured out, Ill do a tutorial on it!
                              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.
                              Last edited by mordentral; 02-23-2017, 11:16 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
                                Thats not how you set up steam anymore, its a plugin, you might have gotten it to work in 4.14 but it def won't in 4.15.

                                Enable the steam plugin and remove the inclusions from your target files (*edit* and build.cs files), if you didn't notice I removed the references to the modules from the sessions plugin when they made this change.

                                This is from the 4.15 project you uploaded

                                *Edit* Also be warned that I had migration fail on a project moving over to plugin steam instead fo direct reference. Something was funky about when this switched over.
                                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."
                                Last edited by JLBXB3; 02-24-2017, 12:39 AM.

                                Comment

                                Working...
                                X