Please, somebody make an example voice chat
Iām having some trouble getting my project to compile for Linux (for a dedicated server), it appears to be some sort of ordering issue. Here are the errors Iām getting.
mainFrameActions: Packaging (Linux): UnrealBuildTool: D:\Repositories\AfterDays\Plugins\AdvancedSessionsPlugin\Source\AdvancedSessions\Private\AdvancedFriendsGameInstance.cpp(10,4) : warning: field 'SessionInviteAcceptedDelegate' will be initialized after field 'bCallFriendInterfaceEventsOnPlayerControllers' -Wreorder]
MainFrameActions: Packaging (Linux): UnrealBuildTool: , SessionInviteAcceptedDelegate(FOnSessionUserInviteAcceptedDelegate::CreateUObject(this, &ThisClass::OnSessionInviteAcceptedMaster))
MainFrameActions: Packaging (Linux): UnrealBuildTool: ^
MainFrameActions: Packaging (Linux): UnrealBuildTool: D:\Repositories\AfterDays\Plugins\AdvancedSessionsPlugin\Source\AdvancedSessions\Private\AdvancedFriendsGameInstance.cpp(12,4) : warning: field 'PlayerTalkingStateChangedDelegate' will be initialized after field 'bEnableTalkingStatusDelegate' -Wreorder]
MainFrameActions: Packaging (Linux): UnrealBuildTool: , PlayerTalkingStateChangedDelegate(FOnPlayerTalkingStateChangedDelegate::CreateUObject(this, &ThisClass::OnPlayerTalkingStateChangedMaster))
MainFrameActions: Packaging (Linux): UnrealBuildTool: ^
MainFrameActions: Packaging (Linux): UnrealBuildTool: D:\Repositories\AfterDays\Plugins\AdvancedSessionsPlugin\Source\AdvancedSessions\Private\AdvancedFriendsGameInstance.cpp(13,4) : warning: field 'bEnableTalkingStatusDelegate' will be initialized after field 'bCallVoiceInterfaceEventsOnPlayerControllers' -Wreorder]
MainFrameActions: Packaging (Linux): UnrealBuildTool: , bEnableTalkingStatusDelegate(true)
MainFrameActions: Packaging (Linux): UnrealBuildTool: ^
MainFrameActions: Packaging (Linux): UnrealBuildTool: D:\Repositories\AfterDays\Plugins\AdvancedSessionsPlugin\Source\AdvancedSessions\Private\CreateSessionCallbackProxyAdvanced.cpp(69,29) : error: implicit conversion of NULL constant to 'int32' ( 'int') -Werror,-Wnull-conversion]
MainFrameActions: Packaging (Linux): UnrealBuildTool: Sessions->CreateSession(NULL, GameSessionName, Settings);
MainFrameActions: Packaging (Linux): UnrealBuildTool: ~~~~~~~~ ^~~~
MainFrameActions: Packaging (Linux): UnrealBuildTool: 0
[QUOTE=Chaoss;438994]
Iām having some trouble getting my project to compile for Linux (for a dedicated server), it appears to be some sort of ordering issue. Here are the errors Iām getting.
mainFrameActions: Packaging (Linux): UnrealBuildTool: D:\Repositories\AfterDays\Plugins\AdvancedSessionsPlugin\Source\AdvancedSessions\Private\AdvancedFriendsGameInstance.cpp(10,4) : warning: field 'SessionInviteAcceptedDelegate' will be initialized after field 'bCallFriendInterfaceEventsOnPlayerControllers' -Wreorder]
MainFrameActions: Packaging (Linux): UnrealBuildTool: , SessionInviteAcceptedDelegate(FOnSessionUserInviteAcceptedDelegate::CreateUObject(this, &ThisClass::OnSessionInviteAcceptedMaster))
MainFrameActions: Packaging (Linux): UnrealBuildTool: ^
MainFrameActions: Packaging (Linux): UnrealBuildTool: D:\Repositories\AfterDays\Plugins\AdvancedSessionsPlugin\Source\AdvancedSessions\Private\AdvancedFriendsGameInstance.cpp(12,4) : warning: field 'PlayerTalkingStateChangedDelegate' will be initialized after field 'bEnableTalkingStatusDelegate' -Wreorder]
MainFrameActions: Packaging (Linux): UnrealBuildTool: , PlayerTalkingStateChangedDelegate(FOnPlayerTalkingStateChangedDelegate::CreateUObject(this, &ThisClass::OnPlayerTalkingStateChangedMaster))
MainFrameActions: Packaging (Linux): UnrealBuildTool: ^
MainFrameActions: Packaging (Linux): UnrealBuildTool: D:\Repositories\AfterDays\Plugins\AdvancedSessionsPlugin\Source\AdvancedSessions\Private\AdvancedFriendsGameInstance.cpp(13,4) : warning: field 'bEnableTalkingStatusDelegate' will be initialized after field 'bCallVoiceInterfaceEventsOnPlayerControllers' -Wreorder]
MainFrameActions: Packaging (Linux): UnrealBuildTool: , bEnableTalkingStatusDelegate(true)
MainFrameActions: Packaging (Linux): UnrealBuildTool: ^
MainFrameActions: Packaging (Linux): UnrealBuildTool: D:\Repositories\AfterDays\Plugins\AdvancedSessionsPlugin\Source\AdvancedSessions\Private\CreateSessionCallbackProxyAdvanced.cpp(69,29) : error: implicit conversion of NULL constant to 'int32' ( 'int') -Werror,-Wnull-conversion]
MainFrameActions: Packaging (Linux): UnrealBuildTool: Sessions->CreateSession(NULL, GameSessionName, Settings);
MainFrameActions: Packaging (Linux): UnrealBuildTool: ~~~~~~~~ ^~~~
MainFrameActions: Packaging (Linux): UnrealBuildTool: 0
Using GCC? Appears to be complaining that some of the class fields are initialized in a different order than they are declared in the class itself, it doesnāt matter for these classes but it is complaining about it anyway. You can use the compile flag āw-Wno-reorderā to have it ignore it from what I looked up, but I will go through and re-order them to make GCC stop complaining by default anyway.
Also Iāll changes that NULL to a 0x00 so that it stops complaining about that as well. When the 10.1 version comes up it will have those fixes (it was working fine without re-compile but that gives me a reason to update now), let me know if you get anything else, I donāt use GCC and donāt mind making it fully compatible now that linux is an official compile enviroment.
[QUOTE=Chaoss;438622]
You my friend, are an absolute saint! This is EXACTLY what I was looking forā¦ can you put this on the Marketplace?
I only found it through word of mouth.
Epic doesnāt allow free content on the marketplace that isnāt their own I donāt think, I would have to assign a charge to it and it is a plugin and those are only just getting supported in the marketplace now. I have considered it in the past since it would be far easier to manage versions for people and there wouldnāt be as many mixups. It might be time to look into it, it is pretty stable now (havenāt actually changed code in a while).
[QUOTE=thedark174;438810]
Please, somebody make an example voice chat
āDefaultEngine.iniā
[Voice]
bEnabled=true
If you want to force push to talk then add the line below
āDefaultGame.iniā
[/Script/Engine.GameSession]
bRequiresPushToTalk=true
Then in the game attached to a button press add: āStart Networked Voiceā, and when the button is depressed āStop Networked Voiceā for push to talk.
As far as everything else, the more advanced stuff can be ignored unless you specifically want to unregister or register new players manually for voice. The default subsystem automatically registers all players for voice.
Muting a player takes their NetworkID and mutes them to you.
New version built under 4.10.1 is uploaded, includes fixes for the GCC specific warnings and error.
[QUOTE=;439277]
New version built under 4.10.1 is uploaded, includes fixes for the GCC specific warnings and error.
That appears to have fixed that, however both your and the default sessions node have a bad interaction with the SteamSDK when running as a dedicated server. Could you possibly include the āpresenceā setting in your next update. Currently the error we get if you create a session as a dedicated server isā¦
[2015.12.18-21.03.35:876] 0]Log file open, 12/18/15 21:03:35
[2015.12.18-21.03.35:876] 0]LogModuleManager:Warning: ModuleManager: Module 'HTTPChunkInstaller' not found - its StaticallyLinkedModuleInitializers function is null.
[2015.12.18-21.03.35:877] 0]LogPlatformFile: Not using cached read wrapper
[2015.12.18-21.03.35:877] 0]LogInit:Display: RandInit(454237160) SRandInit(454237161).
[2015.12.18-21.03.35:877] 0]LogTaskGraph: Started task graph with 4 named threads and 8 total threads.
[2015.12.18-21.03.35:877] 0]LogStats: Stats thread started at 0.070919
[2015.12.18-21.03.35:877] 0]LogInit: Version: 4.10.1-0+++depot+UE4-Releases+4.10
[2015.12.18-21.03.35:877] 0]LogInit: API Version: 0
[2015.12.18-21.03.35:878] 0]LogInit: Compiled (64-bit): Dec 9 2015 02:01:26
[2015.12.18-21.03.35:878] 0]LogInit: Compiled with Visual C++: 19.00.23026.00
[2015.12.18-21.03.35:878] 0]LogInit: Build Configuration: Development
[2015.12.18-21.03.35:878] 0]LogInit: Branch Name: ++depot+UE4-Releases+4.10
[2015.12.18-21.03.35:878] 0]LogInit: Command line: -log
[2015.12.18-21.03.35:878] 0]LogInit: Base directory: F:/Shared Folder/AfterDaysBuilds/Build0.02.3/WindowsNoEditor/AfterDays/Binaries/Win64/
[2015.12.18-21.03.35:878] 0]LogInit: Rocket: 0
[2015.12.18-21.03.35:881] 0]LogInit: Using libcurl 7.41.0
[2015.12.18-21.03.35:881] 0]LogInit: - built for x86_64-pc-win32
[2015.12.18-21.03.35:881] 0]LogInit: - supports SSL with WinSSL
[2015.12.18-21.03.35:881] 0]LogInit: - other features:
[2015.12.18-21.03.35:881] 0]LogInit: CURL_VERSION_SSL
[2015.12.18-21.03.35:881] 0]LogInit: CURL_VERSION_IPV6
[2015.12.18-21.03.35:881] 0]LogInit: CURL_VERSION_ASYNCHDNS
[2015.12.18-21.03.35:881] 0]LogInit: CURL_VERSION_LARGEFILE
[2015.12.18-21.03.35:881] 0]LogInit: CURL_VERSION_IDN
[2015.12.18-21.03.35:881] 0]LogInit: CurlRequestOptions (configurable via config and command line):
[2015.12.18-21.03.35:881] 0]LogInit: - bVerifyPeer = true - Libcurl will verify peer certificate
[2015.12.18-21.03.35:881] 0]LogInit: - bUseHttpProxy = false - Libcurl will NOT use HTTP proxy
[2015.12.18-21.03.35:881] 0]LogInit: - bDontReuseConnections = false - Libcurl will reuse connections
[2015.12.18-21.03.35:881] 0]LogInit: - CertBundlePath = nullptr - Libcurl will use whatever was configured at build time.
[2015.12.18-21.03.35:881] 0]LogOnline:Display: STEAM: Loading Steam SDK 1.35
[2015.12.18-21.03.37:223] 0]LogInit: WinSock: version 1.1 (2.2), MaxSocks=32767, MaxUdp=65467
[2015.12.18-21.03.37:235] 0]LogInit: Presizing for 0 objects not considered by GC, pre-allocating 0 bytes.
[2015.12.18-21.03.37:240] 0]LogInit: Object subsystem initialized
[2015.12.18-21.03.37:241] 0]LogInit: Selected Device Profile: [WindowsServer]
[2015.12.18-21.03.37:241] 0]LogInit: Applying CVar settings loaded from the selected device profile: [WindowsServer]
[2015.12.18-21.03.37:247] 0]LogInit: Computer: CHAOSS-PC
[2015.12.18-21.03.37:247] 0]LogInit: User: chaos
[2015.12.18-21.03.37:248] 0]LogInit: CPU Page size=4096, Cores=12
[2015.12.18-21.03.37:248] 0]LogInit: High frequency timer resolution =2.734373 MHz
[2015.12.18-21.03.37:249] 0]LogMemory: Memory total: Physical=31.9GB (32GB approx)
[2015.12.18-21.03.37:250] 0]LogMemory: Platform Memory Stats for WindowsServer
[2015.12.18-21.03.37:250] 0]LogMemory: Process Physical Memory: 51.99 MB used, 51.99 MB peak
[2015.12.18-21.03.37:251] 0]LogMemory: Process Virtual Memory: 68.41 MB used, 68.41 MB peak
[2015.12.18-21.03.37:251] 0]LogMemory: Physical Memory: 12611.84 MB used, 32657.73 MB total
[2015.12.18-21.03.37:251] 0]LogMemory: Virtual Memory: 347.19 MB used, 134217728.00 MB total
[2015.12.18-21.03.37:863] 0]LogTextLocalizationManager: No specific translations for ('en-US') exist, so ('en') translations will be used.
[2015.12.18-21.03.37:967] 0]LogInit: Selected Device Profile: [WindowsServer]
[2015.12.18-21.03.38:165] 0]LogModuleManager:Warning: ModuleManager: Module 'XAudio2' not found - its StaticallyLinkedModuleInitializers function is null.
[2015.12.18-21.03.38:302] 0]LogObj: 23903 objects as part of root set at end of initial load.
[2015.12.18-21.03.38:302] 0]LogUObjectAllocator: 4894584 out of 0 bytes used by permanent object pool.
[2015.12.18-21.03.38:313] 0]LogEngine: Initializing Engine...
[2015.12.18-21.03.38:317] 0]LogInit: Texture streaming: Disabled
[2015.12.18-21.03.38:322] 0]LogNet: Browse: /Game/Maps/ADServerEntry?Name=Player
[2015.12.18-21.03.38:322] 0]LogLoad: LoadMap: /Game/Maps/ADServerEntry?Name=Player
[2015.12.18-21.03.38:340] 0]LogMemory: Platform Memory Stats for WindowsServer
[2015.12.18-21.03.38:340] 0]LogMemory: Process Physical Memory: 101.84 MB used, 101.84 MB peak
[2015.12.18-21.03.38:340] 0]LogMemory: Process Virtual Memory: 162.00 MB used, 162.00 MB peak
[2015.12.18-21.03.38:341] 0]LogMemory: Physical Memory: 12669.96 MB used, 32657.73 MB total
[2015.12.18-21.03.38:342] 0]LogMemory: Virtual Memory: 478.49 MB used, 134217728.00 MB total
[2015.12.18-21.03.38:342] 0]LogMemory:
[2015.12.18-21.03.38:343] 0]LogMemory: Allocator Stats for binned:
[2015.12.18-21.03.38:343] 0]LogMemory: Current Memory 93.71 MB used, plus 3.03 MB waste
[2015.12.18-21.03.38:344] 0]LogMemory: Peak Memory 97.15 MB used, plus 1.21 MB waste
[2015.12.18-21.03.38:344] 0]LogMemory: Current OS Memory 96.74 MB, peak 98.35 MB
[2015.12.18-21.03.38:345] 0]LogMemory: Current Waste 0.47 MB, peak 0.49 MB
[2015.12.18-21.03.38:345] 0]LogMemory: Current Used 93.71 MB, peak 97.15 MB
[2015.12.18-21.03.38:346] 0]LogMemory: Current Slack 2.57 MB
[2015.12.18-21.03.38:346] 0]LogMemory: Allocs 109958 Current / 880992 Total
[2015.12.18-21.03.38:347] 0]LogMemory:
[2015.12.18-21.03.38:347] 0]LogMemory: Block Size Num Pools Pools Cur Allocs Total Allocs Min Req Req Mem Used Mem Slack Mem Waste Efficiency
[2015.12.18-21.03.38:348] 0]LogMemory: ---------- --------- --------- ---------- ------------ ------- ------- -------- --------- --------- ----------
[2015.12.18-21.03.38:348] 0]LogMemory: 8 0 0 0 0 8 0 0K 0K 0K 100.00%
[2015.12.18-21.03.38:349] 0]LogMemory: 16 4 4 12295 196818 16 16 192K 64K 0K 100.00%
[2015.12.18-21.03.38:349] 0]LogMemory: 32 12 12 20212 99122 17 32 631K 137K 48K 93.75%
[2015.12.18-21.03.38:350] 0]LogMemory: 48 8 8 8299 37267 33 48 389K 123K 47K 90.82%
[2015.12.18-21.03.38:350] 0]LogMemory: 64 17 17 16459 71030 49 64 1028K 60K 101K 90.72%
[2015.12.18-21.03.38:350] 0]LogMemory: 80 9 9 6907 49685 65 80 539K 37K 37K 93.58%
[2015.12.18-21.03.38:352] 0]LogMemory: 96 5 5 3198 32816 82 96 299K 21K 20K 93.75%
[2015.12.18-21.03.38:353] 0]LogMemory: 112 3 4 1605 18395 98 112 175K 17K 11K 94.27%
[2015.12.18-21.03.38:353] 0]LogMemory: 128 36 36 18266 39128 114 128 2283K 21K 83K 96.40%
[2015.12.18-21.03.38:354] 0]LogMemory: 160 9 16 3400 48024 129 160 531K 45K 39K 93.23%
[2015.12.18-21.03.38:355] 0]LogMemory: 192 15 15 4971 88581 162 192 932K 28K 73K 92.40%
[2015.12.18-21.03.38:355] 0]LogMemory: 224 3 3 781 70597 194 224 170K 22K 12K 93.75%
[2015.12.18-21.03.38:356] 0]LogMemory: 256 21 37 5154 45627 226 256 1288K 56K 110K 91.82%
[2015.12.18-21.03.38:356] 0]LogMemory: 288 5 5 1102 33279 258 288 309K 11K 18K 94.38%
[2015.12.18-21.03.38:357] 0]LogMemory: 320 4 4 623 9002 290 320 194K 61K 10K 96.09%
[2015.12.18-21.03.38:357] 0]LogMemory: 384 12 12 1941 15770 322 384 727K 38K 67K 91.28%
[2015.12.18-21.03.38:358] 0]LogMemory: 448 13 13 1745 7739 385 448 763K 68K 47K 94.35%
[2015.12.18-21.03.38:358] 0]LogMemory: 512 4 4 386 3441 450 512 193K 63K 13K 94.92%
[2015.12.18-21.03.38:359] 0]LogMemory: 576 6 6 300 1289 516 576 168K 214K 9K 97.66%
[2015.12.18-21.03.38:360] 0]LogMemory: 640 8 9 93 1006 578 640 58K 452K 5K 99.02%
[2015.12.18-21.03.38:360] 0]LogMemory: 704 8 9 194 968 642 704 133K 379K 5K 99.02%
[2015.12.18-21.03.38:361] 0]LogMemory: 768 3 3 171 1528 705 768 128K 64K 2K 98.96%
[2015.12.18-21.03.38:361] 0]LogMemory: 896 3 3 187 556 769 896 163K 29K 5K 97.40%
[2015.12.18-21.03.38:362] 0]LogMemory: 1024 3 3 152 280 897 1024 152K 40K 7K 96.35%
[2015.12.18-21.03.38:362] 0]LogMemory: 1168 2 2 64 334 1026 1166 73K 55K 4K 96.88%
[2015.12.18-21.03.38:363] 0]LogMemory: 1360 4 5 187 1703 1172 1360 248K 7K 13K 94.92%
[2015.12.18-21.03.38:364] 0]LogMemory: 1632 8 8 304 527 1368 1632 484K 26K 33K 93.55%
[2015.12.18-21.03.38:364] 0]LogMemory: 2048 7 7 142 469 1633 2048 284K 164K 31K 93.08%
[2015.12.18-21.03.38:365] 0]LogMemory: 2336 2 2 47 2574 2050 2336 107K 21K 12K 90.63%
[2015.12.18-21.03.38:365] 0]LogMemory: 2720 4 4 85 163 2342 2717 225K 30K 17K 93.36%
[2015.12.18-21.03.38:366] 0]LogMemory: 3264 6 7 120 823 2721 3264 382K 1K 21K 94.53%
[2015.12.18-21.03.38:366] 0]LogMemory: 4096 12 12 185 434 3265 4096 740K 28K 75K 90.23%
[2015.12.18-21.03.38:367] 0]LogMemory: 4672 7 7 86 797 4104 4657 392K 56K 13K 97.10%
[2015.12.18-21.03.38:367] 0]LogMemory: 5456 4 5 48 140 4673 5385 255K 1K 26K 89.84%
[2015.12.18-21.03.38:368] 0]LogMemory: 6544 6 7 53 134 5492 6537 338K 46K 24K 93.75%
[2015.12.18-21.03.38:368] 0]LogMemory: 8192 4 6 29 427 6560 8192 232K 24K 40K 84.38%
[2015.12.18-21.03.38:370] 0]LogMemory: 9360 4 4 23 83 8200 9360 210K 46K 11K 95.70%
[2015.12.18-21.03.38:372] 0]LogMemory: 10912 3 3 15 36 9383 10816 159K 33K 11K 94.27%
[2015.12.18-21.03.38:372] 0]LogMemory: 13104 2 2 6 37 10976 13056 76K 52K 3K 97.66%
[2015.12.18-21.03.38:373] 0]LogMemory: 16384 4 7 16 51 13120 16384 256K 0K 27K 89.45%
[2015.12.18-21.03.38:373] 0]LogMemory: 21840 10 11 29 70 16400 20592 618K 22K 108K 83.13%
[2015.12.18-21.03.38:374] 0]LogMemory: 32768 5 6 10 45 22960 32640 320K 0K 58K 81.88%
[2015.12.18-21.03.38:374] 0]LogMemory:
[2015.12.18-21.03.38:375] 0]LogMemory: 19520K allocated in pools (with 2662K slack and 1296K waste). Efficiency 93.36%
[2015.12.18-21.03.38:376] 0]LogMemory: Allocations 109891 Current / 880796 Total (in 305 pools)
[2015.12.18-21.03.38:376] 0]LogMemory:
[2015.12.18-21.03.38:378] 0]LogModuleManager:Warning: ModuleManager: Module 'GameplayDebugger' not found - its StaticallyLinkedModuleInitializers function is null.
[2015.12.18-21.03.38:379] 0]LogAIModule: Creating AISystem for world ADServerEntry
[2015.12.18-21.03.38:380] 0]LogWorld: Game class is 'ADManager_C'
[2015.12.18-21.03.38:381] 0]LogNet:Display: SteamNetDriver_0 bound to port 7777
[2015.12.18-21.03.38:381] 0]LogNet: GameNetDriver SteamNetDriver_0 IpNetDriver listening on port 7777
[2015.12.18-21.03.38:382] 0]LogWorld: Bringing World /Game/Maps/ADServerEntry.ADServerEntry up for play (tick rate 30) at 2015.12.18-21.03.38
[2015.12.18-21.03.38:382] 0]LogWorld: Bringing up level for play took: 0.000469
[2015.12.18-21.03.38:382] 0]LogBlueprintUserMessages: [ADServerEntry_C_1] ADServer Initialized.
[2015.12.18-21.03.38:384] 0]LogBlueprintUserMessages: [ADServerEntry_C_1] Initializing session...
[2015.12.18-21.03.38:384] 0]LogInit:Display: Game Engine Initialized.
[2015.12.18-21.03.38:385] 0]LogWindows:Error: Windows GetLastError: The operation completed successfully. (0)
[2015.12.18-21.03.38:385] 0]LogLoad: Full Startup: 2.83 seconds (BP compile: 0.00 seconds)
[2015.12.18-21.03.38:641] 5]LogThreadingWindows:Error: Runnable thread OnlineAsyncTaskThreadSteam DefaultInstance crashed.
[2015.12.18-21.03.38:641] 5]LogWindows:Error: === Critical error: ===
Assertion failed: SteamUtilsPtr [File:C:\Program Files\Epic Games\UnrealEngine-release\Engine\Source\Runtime\Online\OnlineSubsystemSteam\Private\OnlineSessionAsyncLobbySteam.cpp] [Line: 434]
Crash in runnable thread OnlineAsyncTaskThreadSteam DefaultInstance
[2015.12.18-21.03.38:641] 5]LogExit: Executing StaticShutdownAfterError
[2015.12.18-21.03.38:641] 5]LogWindows: FPlatformMisc::RequestExit(1)
[2015.12.18-21.03.38:641] 5]Log file closed, 12/18/15 21:03:38
Changing presence from āfalseā to ātrueā seems to have fixed the issue, exposing the setting would be ideal though.
Yeah I noted before that exposing presence would probably be something I should do at some point, uploading a new build where I expose it (and every other missing setting that I had defaulted to a value), the create advanced sessions node is a monster of booleans now but it has them all on it.
Upload will be live when the build is complete.
Edit Build is uploaded
[QUOTE=;441152]
Yeah I noted before that exposing presence would probably be something I should do at some point, uploading a new build where I expose it (and every other missing setting that I had defaulted to a value), the create advanced sessions node is a monster of booleans now but it has them all on it.
Upload will be live when the build is complete.
Edit Build is uploaded
Itās the classic āItās better to have it than not need it, than need it and not have itā, after all this is ADVANCED sessions plugin, so itās better to have all the options exposed. Weāre almost there I believe and the session now created on the dedicated server, however Iām running into some issues finding the now created session. I simply cannot see it when i find session :s.
In the dedicated server log Iām getting some warnings which may or may not be preventing the session from being advertised to the master server. These wereā¦
[2015.12.21-22.01.06:765] 39]LogOnline:Warning: STEAM: Server setting ,SESSIONFLAGS:651 overflows Steam SetGameTags call
[2015.12.21-22.01.06:766] 39]LogScript:Warning: StartSessionCallback - Invalid player state
This was with the older plugin where I just changed bUsesPresence from true to false. The newer version with the correct settings checked produces the same following warnings and I am still unable to find the created session. I should note that the SteamNetDriver does initialize and the integration seems to work, the server detects if I close the Steam client, so the connection is there. The session does also create (it doesnāt fail). I am completely at a loss as to why i cannot find the created session :s
edit: I should add that I can ācreateā a session as the client and am able to find said session over the net. The dedicated server is where the problem seems to be.
Thanks! Works perfectly. It is unbelieveable that Epic didnāt include Session filtering in this engine! One of the most important thing in whole multiplayer. Multiplayer with different maps or game modes was impossible to create without this.
[QUOTE=Chaoss;441375]
Itās the classic āItās better to have it than not need it, than need it and not have itā, after all this is ADVANCED sessions plugin, so itās better to have all the options exposed. Weāre almost there I believe and the session now created on the dedicated server, however Iām running into some issues finding the now created session. I simply cannot see it when i find session :s.
In the dedicated server log Iām getting some warnings which may or may not be preventing the session from being advertised to the master server. These wereā¦
[2015.12.21-22.01.06:765] 39]LogOnline:Warning: STEAM: Server setting ,SESSIONFLAGS:651 overflows Steam SetGameTags call
[2015.12.21-22.01.06:766] 39]LogScript:Warning: StartSessionCallback - Invalid player state
This was with the older plugin where I just changed bUsesPresence from true to false. The newer version with the correct settings checked produces the same following warnings and I am still unable to find the created session. I should note that the SteamNetDriver does initialize and the integration seems to work, the server detects if I close the Steam client, so the connection is there. The session does also create (it doesnāt fail). I am completely at a loss as to why i cannot find the created session :s
edit: I should add that I can ācreateā a session as the client and am able to find said session over the net. The dedicated server is where the problem seems to be.
Appears to be this: [Bug Report] Steam Server Settings always exceed k_cbMaxGameServerTags - Platform & Builds - Epic Developer Community Forums
I donāt think i can fix it through a plugin, it is a hard limit of 128 characters for the session data string and that includes the owning player id, all of the text based settings, and the optional ones you add in.
if (GameTagsString.Len() + NewKey.Len() < k_cbMaxGameServerTags **(128)**)
{
GameTagsString += NewKey;
}
else
{
UE_LOG_ONLINE(Warning, TEXT("Server setting %s overflows Steam SetGameTags call"), *NewKey);
}
That is the problem there, if it overflows it doesnāt pass in the remaining keys and just sends half formed. The only way I can think of getting around that with a plugin would be to copy the steam subsystem and re-write the offending section to use smaller key strings and not pass in un-used ones, I have gone into this from the beginning trying to avoid re-writing any of the steam subsystem as this is intended to compliment their implementation, not override it. The most obvious fix would be removing that like 20 character long server name that is always generated automatically off of the player ID to make more space in the string but that is hardcoded into the subsystem.
Hello! I implemented a proximity voice system and I would like to share with you.
I implemented this system with the help of āVictory Pluginā.
To implement this system needs to be done:
- Install in your project āVictory Pluginā
- Create Sound Class (http://imgur.com/xXYChFe)
- In Project Settings set this class (http://imgur.com/cYGADj0)
- Make a chart like mine (http://imgur.com/AaIus84 and http://imgur.com/7L08ByT)
And
Source: https://github.com/thedark174/ProximityVoipProject
P.S: This system is certainly not perfect and needs some work
P.S.S: And I apologize for bad English
[QUOTE=thedark174;441758]
Hello! I implemented a proximity voice system and I would like to share with you.
I implemented this system with the help of āVictory Pluginā.
To implement this system needs to be done:
- Install in your project āVictory Pluginā
- Create Sound Class (Imgur: The magic of the Internet)
- In Project Settings set this class (Imgur: The magic of the Internet)
- Make a chart like mine (Imgur: The magic of the Internet and Imgur: The magic of the Internet)
And
Source: MEGA
Package Project: MEGA
P.S: This system is certainly not perfect and needs some work
P.S.S: And I apologize for bad English
Nice, I just wish per actor volume was possible with the current sound system. Good to see you figured out how to use the voice system.
Hello! First of all, like many others did before, i have to tell you that you did a great job so far with this plugin. Exactly what i was looking for
I now have two questions:
-
what are all the (new) bool-options in the ācreateAdvancedSessionā-Node for that came with the 4.10-version?
-
I have a game with 2 different races (each one with 10 Players) fighting each other. To control, that none of these teams get more than 10 players, i made two session-property-integer, that count the current amount of players per race, so that, if a session already has 10 players of race A, no more player of this race will find that session. But of course, i have to update one of this integers everytime a player joins/leaves the session. And therefore i have two other questions: is there already an event implemented, that fires, when a player joins or leaves a session? And can a client use the āUpdateSessionā-Node or can this one just be called by the server?
[QUOTE=FriendlyFire1;447996]
Hello! First of all, like many others did before, i have to tell you that you did a great job so far with this plugin. Exactly what i was looking for
I now have two questions:
-
what are all the (new) bool-options in the ācreateAdvancedSessionā-Node for that came with the 4.10-version?
-
I have a game with 2 different races (each one with 10 Players) fighting each other. To control, that none of these teams get more than 10 players, i made two session-property-integer, that count the current amount of players per race, so that, if a session already has 10 players of race A, no more player of this race will find that session. But of course, i have to update one of this integers everytime a player joins/leaves the session. And therefore i have two other questions: is there already an event implemented, that fires, when a player joins or leaves a session? And can a client use the āUpdateSessionā-Node or can this one just be called by the server?
Server only for the update session node, but there is a built in event for new players. Pretty sure it is āPostLoginā in the GameMode, just bind to that and update the session as needed. The new bool options are for advanced use, they allow you to turn off advertising the server and a few other things, unless you are running a dedicated server I would leave them default.
Hello - First let me say this is a great plugin and thanks so much for making this public and free!
I have a request. This may not be the place/plugin for this but Iām gonna toss it out there just in case. I am currently trying to implement passing arguments to my server on client connect. I am following the tutorial here. The only thing I really need is to override the InitNewPlayer in GameMode. I can do this but it sure would be great if this function were exposed to BP. Would that be something you would consider adding to this plugin or is that out of scope for your feature set?
Many thanks for considering!
[QUOTE=antsonthetree;449447]
Hello - First let me say this is a great plugin and thanks so much for making this public and free!
I have a request. This may not be the place/plugin for this but Iām gonna toss it out there just in case. I am currently trying to implement passing arguments to my server on client connect. I am following the tutorial here. The only thing I really need is to override the InitNewPlayer in GameMode. I can do this but it sure would be great if this function were exposed to BP. Would that be something you would consider adding to this plugin or is that out of scope for your feature set?
Many thanks for considering!
Itās possible to add but I donāt think it is a good fit for this plugin. Mostly because I donāt want to bloat the classes too much and doing it correctly would require providing overrides for the Playercontroller AND the gamemode. Also the classes would be mostly empty as the functions required are only a few lines long.
There also is very rarely ever a case where I can see this being required, as you generally can use an RPC after connecting to retrieve additional information and passing parameters in with the connection string is probably a sign of bad game flow design more than anything else.
Hi - thanks for the quick reply and I do understand your concerns. Fair enough. Out of curiosity what would need to be changed in the PlayerController to do it correctly? You can PM that if it is too off topic.
You probably donāt need to as you sound like you are manually calling open on an IP and can tack them on. However for a plugin it would be far cleaner to have a string array in the player controller that is appended to the connection string to pass on.
Ok I see - yes Iām just manually adding it to my open call. Thanks for the info!
Is there a way to make a group vice chat like guild has own chat channels when they make or similar ?
[QUOTE=demonith88;450987]
Is there a way to make a group vice chat like guild has own chat channels when they make or similar ?
With the engines current sound system (they are overhauling it though) you would have to manage registering and de-registering people to achieve something close to that.