Forum Discussion
gavmacca
8 years agoProtege
UE4 Blueprints - Oculus Find Sessions Matchmaking (0 results found)
Hi there,
I have been trying to setup multiplayer sessions with the Oculus Sub System enabled, on UE 4.18.3. I have the entitlement check working correctly, I can successfully create a match.
However, the issue is that when I use the find sessions matchmaking node, it fires the success output but the results array size is always 0. (Note: I'm only hosting one session at a time so thats why I get the first result in the array, but the array size is always 0 regardless).
Here is the setup of my blueprint: https://image.prntscr.com/image/HOS-lW6zQ_mdQ7Z6A3q6Jw.png
Is there any particular steps I need to take to get a blueprint session result correctly?
Thank you.
I have been trying to setup multiplayer sessions with the Oculus Sub System enabled, on UE 4.18.3. I have the entitlement check working correctly, I can successfully create a match.
However, the issue is that when I use the find sessions matchmaking node, it fires the success output but the results array size is always 0. (Note: I'm only hosting one session at a time so thats why I get the first result in the array, but the array size is always 0 regardless).
Here is the setup of my blueprint: https://image.prntscr.com/image/HOS-lW6zQ_mdQ7Z6A3q6Jw.png
Is there any particular steps I need to take to get a blueprint session result correctly?
Thank you.
11 Replies
Replies have been turned off for this discussion
- gavmaccaProtegetrying to do the open id.oculus results in this:
(from output log)
LogGameMode: Display: Match State Changed from InProgress to LeavingMap
LogGameState: Match State Changed from InProgress to LeavingMap
LogNet: Browse: 2313632185328952.oculus//Game/Maps/MainMenu
LogTemp: Display: ParseSettings for GameNetDriver
LogTemp: Display: ParseSettings for IpNetDriver_0
LogTemp: Display: ParseSettings for PendingNetDriver
LogInit: WinSock: Socket queue 32768 / 32768
LogInit: WinSock: I am Tesla-PC (192.168.1.66:0)
PacketHandlerLog: Loaded PacketHandler component: Engine.EngineHandlerComponentFactory (StatelessConnectHandlerComponent)
LogNet: Game client on port 7777, rate 500000
LogNet: Host name resolution failed with 48
LogNet: NetworkFailure: PendingConnectionFailure, Error: 'Your connection to the host has been lost.'
LogGameMode: Display: Match State Changed from LeavingMap to Aborted
LogGameState: Match State Changed from LeavingMap to Aborted
LogNet: DestroyNamedNetDriver IpNetDriver_0 [PendingNetDriver]
LogExit: PendingNetDriver IpNetDriver_0 shut down - gavmaccaProtegeThank you for the reply. @imperativity
For the Oculus team, there just seems to be no way of doing Oculus sessions with blueprints.
Has your team successfully created Oculus sessions and joined them via blueprints? In 4.18.3 I can't seem to get it to work at all.
I have the subsystem active with the entitlement check working. It even comes up on the clients oculus app that they recently met my player in a game.
If the team has managed to create/join sessions using the oculus subsystem with blueprints, can you let me know what steps you guys have taken to make it work?
Thanks. - LostMyEdHonored GuestI would also be interested in how to get this working with blueprints, thanks
- gavmaccaProtegeSorry for the confusion there, on my original post I did mention the reason why I did that, it was because if the find sessions node returned success (I was only hosting one session at a time), I would get the first result of the sessions in order to join.
However if I did a array.length on the return from the blueprint node it would give me 0 results even if success fired, I assumed that if success fired it would have atleast 1 index in the array but it was always empty. (I did not provide a screenshot for this part)
Can you ask the team if Oculus sessions successfully works via blueprints only in 4.18.3? As everything I have tried is not working. Any examples or anything to get it sucessfully working would be a great help. Or if they have it working in 4.19?
Should I be able to join via command line of open <OculusID>.oculus? because that approach gives me the error of my second post and does not work.
Thanks! - pieterdubExplorerHi there @gavmacca !
I just build a sample to test this and it was working for me. This was in 4.18.3 pulled from the Oculus Git. Are you running the version downloaded from Epic or the Oculus Git repo? I haven't tested this against the Epic version yet which is a little behind, but I don't think any changes have gone in recently in this area.
Here is what I did:
One user creates a session for a browse type matchmaking pool:
when the create session is successful, I call open level with a mapname?Listen
The other user looks for a match:
For simplicity I am just joining the first session in the array. When join session executes, it is creating the network connection and traveled to the server's level.
In my client log:[2018.02.22-23.10.51:933][216]LogBlueprintUserMessages: [SceneUI_C_0] Joined session[2018.02.22-23.10.51:948][216]LogNet: Browse: 1064536240248618.oculus//Game/Main[2018.02.22-23.10.51:948][216]LogTemp: Display: ParseSettings for GameNetDriver[2018.02.22-23.10.51:948][216]LogTemp: Display: ParseSettings for OculusNetDriver_0[2018.02.22-23.10.51:948][216]LogTemp: Display: ParseSettings for PendingNetDriver[2018.02.22-23.10.51:948][216]LogNet: Verbose: Connecting to host: unreal://1064536240248618.oculus//Game/Main[2018.02.22-23.10.51:949][216]PacketHandlerLog: Loaded PacketHandler component: Engine.EngineHandlerComponentFactory (StatelessConnectHandlerComponent)[2018.02.22-23.10.53:885][337]LogNet: Verbose: 1064536240248618 changed network connection state[2018.02.22-23.10.53:885][337]LogNet: Verbose: 1064536240248618 is connected[2018.02.22-23.10.54:013][344]LogHandshake: SendChallengeResponse. Timestamp: 11.366853, Cookie: 030197107019074165250164101198091070016001122246111073193083[2018.02.22-23.10.54:029][345]LogNet: Verbose: InitSequence: IncomingSequence: 1310, OutgoingSequence: 4971, InitInReliable: 286, InitOutReliable: 875[2018.02.22-23.10.54:029][345]LogNet: UPendingNetGame::SendInitialJoin: Sending hello. [UNetConnection] RemoteAddr: 1064536240248618.oculus, Name: OculusNetConnection_0, Driver: PendingNetDriver OculusNetDriver_0, IsServer: NO, PC: NULL, Owner: NULL[2018.02.22-23.10.54:045][346]LogNet: Verbose: PendingLevel received: Challenge[2018.02.22-23.10.54:061][347]LogNet: Verbose: PendingLevel received: Welcome
One thing to note, is that I packaged up my build to use the OculusNetDriver since running in editor would use the IPNetDriver. Can you try to package your build and see if you have the same fail result? Make sure you have this in your DefaultEngine.ini:[/Script/Engine.GameEngine]+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="/Script/OnlineSubsystemOculus.OculusNetDriver",DriverClassNameFallback="/Script/OnlineSubsystemUtils.IpNetDriver")[/Script/OnlineSubsystemOculus.OculusNetDriver]NetConnectionClassName="/Script/OnlineSubsystemOculus.OculusNetConnection"
Your log looks like it is trying to use the IPNetDriver with an Oculus Address:
LogNet: Browse: 2313632185328952.oculus//Game/Maps/MainMenu
LogTemp: Display: ParseSettings for GameNetDriver
LogTemp: Display: ParseSettings for IpNetDriver_0
That might be where the issue lies. If you package up your build with the OculusNetDriver definition in the DefaultEngine.ini it may work as it did for me. Please let us know! - AnonymousNot applicableMany thanks for posting this @pieterdub ! Until now I had thought unreal multiplayer on Gearvr was not possible with blueprints and was always hoping this would be fixed! Perfect timing as we are in the early stages of planning a multiplayer mobile vr game! :)
- gavmaccaProtegeThanks @pieterdub!
I have been using the epic binary version from the launcher. I will try all of this out and let you know!
Many thanks! - gavmaccaProtegeOkay so I have some results.
4.18.3 binary/launcher version does not work at all with Oculus online sessions.
4.19 preview DOES work but leads to another issue.
4.18.3 Oculus source build gives me crashes when Oculus is active and I try switching maps (new maps, reopening the same map, i've tried everything) in a packaged build, even just a regular open level call, I have cut out the unnessecary info on the log and attached the exact point where I call an open level and it crashes, there should be an attach link on this post. This only happens on the oculus source engine version of the engine and ONLY when the the oculus headset is active.
I have a really strange issue with 4.19 in the project that eventually leads to a crash. Our scene uses a render capture 2d and in 4.19 it prints this constantly in the log and eventually leads to a crash:
[2018.02.27-18.58.37:767][540]LogRenderer: Reallocating scene render targets to support 256x256 Format 10 NumSamples 1 (Frame:542).
[2018.02.27-18.58.37:768][540]LogRenderer: Reallocating scene render targets to support 2720x1600 Format 10 NumSamples 1 (Frame:542).
[2018.02.27-18.58.37:768][540]LogHMD: Allocating Oculus 2720 x 1600 depth rendertarget swapchain
Any help would be greatly appreciated! - MrComfortProtegeAny update on this? It seems like I can not find any session with this BP setup on 4.20...
- www.ModHaus.infoProtege
Same goes for 4.25... MetaStoreHelp
- www.ModHaus.infoProtege
Just found out the fix for this. Seems Facebook/Oculus tightened their privacy regulations recently. You have submit a data use checkup from the data use checkup portion of your developer dashboard (under the project name).
Data use checkup.
https://forums.oculusvr.com/t5/Unreal-Development/Get-Oculus-Identity-returns-No-Logged-In-user/m-p/837522
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device
Other Meta Support
Related Content
- 1 year ago