Announcement

Collapse
No announcement yet.

Advanced Sessions Plugin

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

    Originally posted by CalaveraX View Post
    Do you have any tutorial or documentation on how to achieve this? i would really appreciate that!
    There a simple image at the bottom on the OP about it "Example of hosting a session with additional parameters" this should be all you need to get the idea how it works.

    Comment


      Yeah but i have two issues with that, that only allows me to add some string in extra settings, not a players array, but my principal issue, is that those extra properties are setted at the moment of creating the server. But i need that to update to search for all the connected players and look at theirs scores.

      (Thinking a little more, i could set that value with the mmr of the host, and then the new connections check for a proximity to that value before joining)

      Regards.

      Comment


        Originally posted by CalaveraX View Post
        Yeah but i have two issues with that, that only allows me to add some string in extra settings, not a players array, but my principal issue, is that those extra properties are setted at the moment of creating the server. But i need that to update to search for all the connected players and look at theirs scores.

        (Thinking a little more, i could set that value with the mmr of the host, and then the new connections check for a proximity to that value before joining)

        Regards.
        There is an update session node that updates the lobby. I could provide access to requesting the steam lobby information but Valve doesn't allow SteamIDs to be crawlable by players not in the lobby itself so you can't retrieve a player list that you can use for something like that (just names). So to do an MMR check in any sane manner you would either want to register the server on some backend of yours, or calculate the average mmr and store and update that in the lobby settings.

        *Edit* Generally for a full featured MMR system you'll want some backend that tracks users across servers. There are some specific matchmaking tools for Steam but they aren't currently exposed for blueprint, I have been considering it as a next logical step now that steam is moved into its own module.
        Last edited by mordentral; 03-03-2017, 09:32 AM.


        Consider supporting me on patreon

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

        Comment


          Thanks

          I think gonna go with the option of setting the "Server MMR" with the Host MMR at start, and then the joining clients will check againsnt that value to decide if they enter or not.

          Comment


            Hi. Thank you very much for the great plugin !. Been working and everything came out well, just that when compiling I get an error that does not let the compilation and looked at the internet but I still do not know how to solve it. To discard that is not my project, create a new one where I just put the plugin and do nothing with BP and I get the same error when compiling, this error does not exit if I turn off the plugin. I'm using version 4.14.3. A thousand thanks in advance for the help.


            LogTempisplay: Executing iPhonePackager certificates Engine -bundlename com.YourCompany.AbsolutZero
            LogTempisplay: CWD: C:\Program Files\Epic Games\UE_4.14\Engine\Binaries\DotNet\IOS
            LogTempisplay: Initial Dir: C:\Program Files\Epic Games\UE_4.14
            LogTempisplay: Env CWD: C:\Program Files\Epic Games\UE_4.14\Engine\Binaries\DotNet\IOS
            LogTempisplay: BranchPath = CHISE/C/Program Files/Epic Games/UE_4.14/Engine/Binaries --- GameBranchPath = CHISE/C/Program Files/Epic Games/UE_4.14/Engine/Binaries
            LogTempisplay: IPP ERROR: Application exception: System.IO.DirectoryNotFoundException: No se puede encontrar una parte de la ruta de acceso 'C:\Users\yvasq\AppData\Local\Apple Computer\MobileDevice\Provisioning Profiles'.
            LogTempisplay: en System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
            LogTempisplay: en System.IO.FileSystemEnumerableIterator`1.CommonInit()
            LogTempisplay: en System.IO.Directory.EnumerateFiles(String path, String searchPattern)
            LogTempisplay: en iPhonePackager.CodeSignatureBuilder.FindProvisions(String CFBundleIdentifier)
            LogTempisplay: en iPhonePackager.Program.Main(String[] args)
            LogContentBrowser: Native class hierarchy updated for 'HierarchicalLODOutliner' in 0.0003 seconds. Added 1 classes and 2 folders.
            LogLoad: (Engine Initialization) Total time: 24.17 seconds
            LogLoad: (Engine Initialization) Total Blueprint compile time: 4.33 seconds
            LogExternalProfiler: Found external profiler: VSPerf
            LogExternalProfiler: Using external profiler: VSPerf
            LogOcInput: OculusInput pre-init called
            LogContentStreaming: Texture pool size now 1000 MB
            LogRenderer: Reallocating scene render targets to support 1096x576 NumSamples 1 (Frame:2).
            LogAssetRegistry: Asset discovery search completed in 21.6350 seconds
            LogCollectionManager: Rebuilt the object cache for 1 collections in 0.000017 seconds (found 0 objects)
            LogCollectionManager: Fixed up redirectors for 1 collections in 0.000080 seconds (updated 0 objects)
            LogDirectoryWatcher: A directory notification for '../../../Engine/Plugins/' was aborted.
            LogDirectoryWatcher: A directory notification for 'E:/Impulse/Plugins/' was aborted.
            LogDirectoryWatcher: A directory notification for '../../../Engine/Plugins/' was aborted.
            LogDirectoryWatcher: A directory notification for 'E:/Impulse/Plugins/' was aborted.
            UATHelper: Empaquetado (Windows (64-bit)): Running AutomationTool...
            UATHelper: Empaquetado (Windows (64-bit)): Automation.ParseCommandLine: Parsing command line: -ScriptsForProject=E:/Impulse/AbsolutZero.uproject BuildCookRun -nocompile -nocompileeditor -installed -nop4 -project=E:/Impulse/AbsolutZero.uproject -cook -stage -archive -archivedirectory=C:/Users/yvasq/Videos -package -clientconfig=Development -ue4exe=UE4Editor-C
            md.exe -pak -prereqs -nodebuginfo -targetplatform=Win64 -build -CrashReporter -utf8output
            UATHelper: Empaquetado (Windows (64-bit)): Automation.Process: Setting up command environment.
            UATHelper: Empaquetado (Windows (64-bit)): BuildCookRun.SetupParams: Setting up ProjectParams for E:\Impulse\AbsolutZero.uproject
            UATHelper: Empaquetado (Windows (64-bit)): Project.Build: ********** BUILD COMMAND STARTED **********
            UATHelper: Empaquetado (Windows (64-bit)): CommandUtils.Run: Run: C:\Program Files\Epic Games\UE_4.14\Engine\Binaries\DotNET\UnrealBuildTool.exe UE4Game Win64 Development -remoteini="E:\Impulse" -noxge -generatemanifest -NoHotReload
            UATHelper: Empaquetado (Windows (64-bit)): UnrealBuildTool: ERROR: No modules found to build. All requested binaries were already part of the installed engine data.
            UATHelper: Empaquetado (Windows (64-bit)): CommandUtils.Run: Run: Took 0,7715512s to run UnrealBuildTool.exe, ExitCode=5
            UATHelper: Empaquetado (Windows (64-bit)): Program.Main: ERROR: AutomationTool terminated with exception: AutomationTool.CommandUtils+CommandFailedException: Command failed (Result:5): C:\Program Files\Epic Games\UE_4.14\Engine\Binaries\DotNET\UnrealBuildTool.exe UE4Game Win64 Development -remoteini="E:\Impulse" -noxge -generatemanifest -NoHotReload. See l
            ogfile for details: 'UnrealBuildTool-2017.03.03-09.25.39.txt'
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.CommandUtils.RunAndLog(String App, String CommandLine, String Logfile, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback)
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.CommandUtils.RunAndLog(CommandEnvironment Env, String App, String CommandLine, String LogName, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback)
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, String CommandLine, String LogName, Dictionary`2 EnvVars)
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, FileReference Project, String Target, String Platform, String Config, String AdditionalArgs, String LogName, Dictionary`2 EnvVars)
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.UE4Build.BuildWithUBT(String TargetName, UnrealTargetPlatform TargetPlatform, String Config, FileReference UprojectPath, Boolean ForceMonolithic, Boolean ForceNonUnity, Boolean ForceDebugInfo, Boolean ForceFlushMac, Boolean DisableXGE, String InAddArgs, Boolean ForceUnity, Dictionary`2 EnvVars)
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.UE4Build.Build(BuildAgenda Agenda, Nullable`1 InDeleteBuildProducts, Boolean InUpdateVersionFiles, Boolean InForceNoXGE, Boolean InUseParallelExecutor, Boolean InForceNonUnity, Boolean InForceUnity, Boolean InShowProgress, Dictionary`2 PlatformEnvVars, Nullable`1 InChangelistNumberOverride, Dict
            ionary`2 InTargetToManifest)
            UATHelper: Empaquetado (Windows (64-bit)): en Project.Build(BuildCommand Command, ProjectParams Params, Int32 WorkingCL, ProjectBuildTargets TargetMask)
            UATHelper: Empaquetado (Windows (64-bit)): en BuildCookRun.DoBuildCookRun(ProjectParams Params)
            UATHelper: Empaquetado (Windows (64-bit)): en BuildCookRun.ExecuteBuild()
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.BuildCommand.Execute()
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.Automation.Execute(List`1 CommandsToExecute, CaselessDictionary`1 Commands)
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.Automation.Process(String[] Arguments)
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.Program.MainProc(Object Param)
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.InternalUtils.RunSingleInstance(Func`2 Main, Object Param)
            UATHelper: Empaquetado (Windows (64-bit)): en AutomationTool.Program.Main()
            UATHelper: Empaquetado (Windows (64-bit)): Program.Main: AutomationTool exiting with ExitCode=5 (5)
            UATHelper: Empaquetado (Windows (64-bit)): BUILD FAILED

            Comment


              [MENTION=4285]mordentral[/MENTION] have you tested a package project by any chance, this the issue i get and you can't join the session its invalid it seems, but it works just fine in the editor.



              Comment


                Originally posted by OverRated_AU View Post
                [MENTION=4285]mordentral[/MENTION] have you tested a package project by any chance, this the issue i get and you can't join the session its invalid it seems, but it works just fine in the editor.



                Yes, many times, so have many users of the plugin, if you are running a dedicated server you should check the logs because the maximum tag length for dedicated servers is far lower than for lobby servers and it throws out all flags after it hits the maximum limit (for steam).

                You use of player names stored in extra settings may work for lobby sessions but if you host a dedicated server it likely won't.


                If you aren't running as dedicated then run with -log and check for subsystem errors.


                Consider supporting me on patreon

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

                Comment


                  Originally posted by mordentral View Post
                  Yes, many times, so have many users of the plugin, if you are running a dedicated server you should check the logs because the maximum tag length for dedicated servers is far lower than for lobby servers and it throws out all flags after it hits the maximum limit (for steam).

                  You use of player names stored in extra settings may work for lobby sessions but if you host a dedicated server it likely won't.


                  If you aren't running as dedicated then run with -log and check for subsystem errors.

                  I'm not saying its a problem with your plugin, i get the same problem even using the engines nodes on 4.15 i didn't have a issue in 4.14.

                  Comment


                    Originally posted by OverRated_AU View Post
                    I'm not saying its a problem with your plugin, i get the same problem even using the engines nodes on 4.15 i didn't have a issue in 4.14.
                    Yeah run with log to check for errors, I packaged one to test locally and aside from the normal lan to lan on same computer issues it worked fine.

                    That being said a lot of people are reporting issues with sessions on 4.15, though they didn't change that much on the backend. Might see some 4.15.1 fixes?
                    Last edited by mordentral; 03-03-2017, 01:07 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 run with log to check for errors, I packaged one to test locally and aside from the normal lan to lan on same computer issues it worked fine.

                      That being said a lot of people are reporting issues with sessions on 4.15, though they didn't change that much on the backend. Might see some 4.15.1 fixes?
                      Yeah there doesn't seem to be any related errors, the search find it and its ping but thats about it even all the extra options are lost in the search, it odd it works just fine in the editor but package is a whole another story, your probably right its probably a bug lol.

                      Comment


                        sorry to bother people again. I have tried running a foreach loop with all players connected and muting remote talkers that are not in my team and it doesn't seem to work. Do I need to register them all as a local talker first? I see the node has a local user number that I am currently just leaving at 0. Should this be plugged into anything?

                        Comment


                          Originally posted by Ka0s2003uk View Post
                          sorry to bother people again. I have tried running a foreach loop with all players connected and muting remote talkers that are not in my team and it doesn't seem to work. Do I need to register them all as a local talker first? I see the node has a local user number that I am currently just leaving at 0. Should this be plugged into anything?
                          If you only have the one local player than 0 is correct, players are auto registered for voice when they connect by Epic, the Unregister / Register functions are there for if you want to remove them and / or add them back later.

                          Muting remote talkers should work though, you may have to wait a little bit for the Player structures to replicate over if you are doing it right as you load, the UniqueNetIDs wouldn't be valid yet otherwise.


                          Consider supporting me on patreon

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

                          Comment


                            I'm pretty sure this was asked before, but is there a way to get a connection working with localhost / 127.0.0.1? So i can run it twice on one pc?
                            @CarstenZarbock - Follow me on Twitter, thank you

                            Comment


                              Click image for larger version

Name:	mutingplayers.jpg
Views:	1
Size:	113.4 KB
ID:	1124491

                              like this?

                              I tried just the player controller one and now going to build and test using the player state one
                              Last edited by Ka0s2003uk; 03-08-2017, 01:16 PM.

                              Comment


                                Originally posted by Ka0s2003uk View Post

                                like this?

                                I tried just the player controller one and now going to build and test using the player state one
                                No, not like that, get the game state and the player array to get the unique net ID (GetUniqueNetIdFromPlayerState). The GetUniqueNetIDFromPlayerController is for client side only. You are trying to get other users Net Ids so you need to go through the replicated player state array to get valid results.

                                Your second test idea should work.


                                Consider supporting me on patreon

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

                                Comment

                                Working...
                                X