Announcement

Collapse
No announcement yet.

Advanced Sessions Plugin

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

    Hi. I have struggled with the voice stuff now for some time. It looks like everything is working except unmute. I think i have tested everything but it feels like i have hit a wall.
    Currently running 4.13 over steam. push to talk enabled.

    If i as a server mute another client i cant find a way to unmute them. (just as i type this i don't think i have tested it being the client and muting the server.)

    I might be missing something obvious..

    Thanks for the plugin anyway and have a nice weekend

    Comment


      Originally posted by mordentral View Post
      Not a mistake, the plugin has steam functions separated into a different module now so that you can remove the module if not publishing to steam. It will let me go deeper into steam features in the future without complicating mobile and other platforms.
      Does this mean, I can use AdvancedSteamSessions only, if we only deploy to steam or do I still need the other plugin?

      Comment


        Originally posted by adipFTW View Post
        Does this mean, I can use AdvancedSteamSessions only, if we only deploy to steam or do I still need the other plugin?
        You still need the other one, the steam one just contains steam only blueprint.


        Consider supporting me on patreon

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

        Comment


          Originally posted by MagnusAnder View Post
          Hi. I have struggled with the voice stuff now for some time. It looks like everything is working except unmute. I think i have tested everything but it feels like i have hit a wall.
          Currently running 4.13 over steam. push to talk enabled.

          If i as a server mute another client i cant find a way to unmute them. (just as i type this i don't think i have tested it being the client and muting the server.)

          I might be missing something obvious..

          Thanks for the plugin anyway and have a nice weekend
          Just tested with 4.15.1 and it works!!

          Comment


            how does the anti cheat work ?

            Comment


              Originally posted by MagnusAnder View Post
              Just tested with 4.15.1 and it works!!
              Sorry I didn't notice that you said 4.13, 4.13 had multiple voice engine bugs that they fixed in 4.14 (and I think 1 in 4.15).


              Consider supporting me on patreon

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

              Comment


                How do I use this for RegisterServer() for a dedicated server on steam? Can I just call

                UCreateSessionCallbackProxyAdvanced::CreateAdvancedSession(); in my GameSession -> RegisterServer()

                Is WorldContextObject just a UWorld pointer? So could I use GetWorld()

                Also, what am I supposed to input for PlayerController() if I'm trying to host a dedi?

                Also, for this http://i.imgur.com/OgsKSOm.png is there a list of the different properties? What's the difference between GAMENAME and Server name? I noticed all of my servers being named "Unreal Test!" before I checked your plugin out and I didn't want to have to alter the GAMEDESC macro (forgot what class) in the engine files so I'm hoping this will help me out.

                Again http://i.imgur.com/hMBvTsH.png, for the "Open Level" portion do I need to make it open a new map if I want "this" map to be the map the server uses? Seems redundant if I set the Server Default map to this map.

                Where should I be calling CreateAdvancedSession (for a dedi server)? GameMode? I was under the impression it should be called in "GameSession=>RegisterServer()" but GameSession is not blueprintable. So how would I do this in BPs? Or is there a way to use this function inside of C++?
                Last edited by poke1103; 04-05-2017, 11:36 AM.

                Comment


                  Originally posted by mordentral View Post
                  Is player in session probably only works for clients yes, the clients shouldn't need to call it themselves. I haven't ran into the Find Session info returning nothing if it is the host, in fact the only way to test it would have been client to host so you might have something wrong.





                  I can't fix that in a plugin sadly unless I redefine names and I really shouldn't #undef / #define engine constants.
                  The "overflow sessionflags" ******** is still there, what would I need to do on my end to repair this issue? Is it actually even doing anything? It's still showing up on LAN (but I need it to show up globally). What ports do I need forwarded? Just 7777?

                  Comment


                    See below for responses

                    Originally posted by poke1103 View Post
                    How do I use this for RegisterServer() for a dedicated server on steam? Can I just call

                    UCreateSessionCallbackProxyAdvanced::CreateAdvancedSession(); in my GameSession -> RegisterServer()

                    Is WorldContextObject just a UWorld pointer? So could I use GetWorld()

                    UWorld is a valid world context yes, but I don't think any of MY nodes need one passed in unless you are trying to use them inside a gamemode blueprint

                    Also, what am I supposed to input for PlayerController() if I'm trying to host a dedi?

                    When hosting dedicated it doesn't even use the passed in player controller, don't pass one in.

                    Also, for this http://i.imgur.com/OgsKSOm.png is there a list of the different properties? What's the difference between GAMENAME and Server name? I noticed all of my servers being named "Unreal Test!" before I checked your plugin out and I didn't want to have to alter the GAMEDESC macro (forgot what class) in the engine files so I'm hoping this will help me out.

                    These are custom properties that you make, I would actually suggest using shorter names IE: GN = GameName to save on flag space

                    Again http://i.imgur.com/hMBvTsH.png, for the "Open Level" portion do I need to make it open a new map if I want "this" map to be the map the server uses? Seems redundant if I set the Server Default map to this map.

                    You need to open up a map as Listen, default is not a listen server, also that is when the gamemode registers the server, you manually call Register Server instead and not do the map load if you wish.

                    This is how the game mode auto registers on first load, it checks for a valid session. This is why in blueprints the reload makes the server known.
                    Code:
                    	if (GetNetMode() != NM_Standalone)
                    	{
                    		// Attempt to login, returning true means an async login is in flight
                    		if (!UOnlineEngineInterface::Get()->DoesSessionExist(World, GameSession->SessionName) &&
                    			!GameSession->ProcessAutoLogin())
                    		{
                    			GameSession->RegisterServer();
                    		}
                    	}


                    Where should I be calling CreateAdvancedSession (for a dedi server)? GameMode? I was under the impression it should be called in "GameSession=>RegisterServer()" but GameSession is not blueprintable. So how would I do this in BPs? Or is there a way to use this function inside of C++?

                    See above answer, create the session first.
                    Last edited by mordentral; 04-05-2017, 01:10 PM.


                    Consider supporting me on patreon

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

                    Comment


                      Originally posted by poke1103 View Post
                      The "overflow sessionflags" ******** is still there, what would I need to do on my end to repair this issue? Is it actually even doing anything? It's still showing up on LAN (but I need it to show up globally). What ports do I need forwarded? Just 7777?
                      Whatever ports you are using for the dedicated.....for steam: https://support.steampowered.com/kb_...8571-GLVN-8711

                      Overflow session flags is still there yes, shorten as many flag names as you can, pack information as tightly as possible.


                      Consider supporting me on patreon

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

                      Comment


                        Originally posted by mordentral View Post
                        Whatever ports you are using for the dedicated.....for steam: https://support.steampowered.com/kb_...8571-GLVN-8711

                        Overflow session flags is still there yes, shorten as many flag names as you can, pack information as tightly as possible.
                        I don't actually know what that means though. Does it stop people from connecting? What are session flags?

                        Also, how does GetNetMode() == NM_Dedicated work? Is it based on the build? If I build as a dedicated it will be considered a Dedicated net mode? If I package normally would it just be NM_Client or something similiar? I want to know if there is a way to save files only to the server (basically, only call game mode "CreateSession" on server, only save files on server, etc). Would putting if(GetNetMode() == NM_Dedicated) {} make it so that whatever is within the curly braces will only be called on the server? I'm talking specifically about the dedicated server. There are certain things I don't want the client to ever run. Like my file saving...etc

                        Comment


                          Originally posted by poke1103 View Post
                          I don't actually know what that means though. Does it stop people from connecting? What are session flags?

                          Also, how does GetNetMode() == NM_Dedicated work? Is it based on the build? If I build as a dedicated it will be considered a Dedicated net mode? If I package normally would it just be NM_Client or something similiar? I want to know if there is a way to save files only to the server (basically, only call game mode "CreateSession" on server, only save files on server, etc). Would putting if(GetNetMode() == NM_Dedicated) {} make it so that whatever is within the curly braces will only be called on the server? I'm talking specifically about the dedicated server. There are certain things I don't want the client to ever run. Like my file saving...etc
                          You should probably look up how Authority works in the engine rather than asking me, a full tutorial / documentation reading would be faster and more informative.

                          Session flags are just additional parameters for the server that the client retrieves with the session information.


                          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 should probably look up how Authority works in the engine rather than asking me, a full tutorial / documentation reading would be faster and more informative.

                            Session flags are just additional parameters for the server that the client retrieves with the session information.
                            I already know how authority works. I just don't know if there is a way to differentiate between what is a SERVER BUILD (keyword: build) and a client. If a client connects to map and they are not connected to the server they become the authority. However, I don't want this automatic functionality. A server RPC will still run in this instance, simply because the default option unreal has is to make the client authority. if (Role == Role_Authority) {} only detects whether or not that actor has authority over that object. What I need is to know if there is a difference between GetNetMode() and Role, and what the difference is.

                            Edit:

                            You know I think I'm retarded. https://docs.unrealengine.com/latest...ode/index.html <-- This tells me what I needed to know.
                            Last edited by poke1103; 04-05-2017, 02:22 PM.

                            Comment


                              Uhm, so for some reason the FindAdvancedSessions() is just failing. What steps should I be taking to debug this?

                              Comment


                                Originally posted by poke1103 View Post
                                Uhm, so for some reason the FindAdvancedSessions() is just failing. What steps should I be taking to debug this?
                                Check the log, any plugin related errors show up in there.


                                Consider supporting me on patreon

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

                                Comment

                                Working...
                                X