09-16-2019 06:36 AM
01-03-2020 12:23 AM
Ham1ton said:
All glory and honor goes to Turtle Rock Studios for this workaround and much personal shame to those who messed it up to start with:When we upgraded to UE4.23, we could no longer connect clients to servers. Upon investigating we found 2 problems:
UOculusNetDriver::LowLevelSend was modified to take an FInternetAddr pointer instead of an FString (due to the same change in UE4's NetDriver). The code was modified to convert that passed in FInternetAddr pointer into a string, calling FInternetAddrOculus's ToString method, which would just return the user's ID as a string instead of the correct "[id].oculus" connection string required by the SDK.
Either of these changes fixes it:
Change line 295 in NetDriverOculus.cpp (LowLevelSend) from:
FInternetAddrOculus OculusAddr(FURL(nullptr, *Address->ToString(false), ETravelType::TRAVEL_Absolute));
to
FInternetAddrOculus OculusAddr = *StaticCastSharedPtr(Address);Change line 186 in IpAddressOculus.h (ToString) from:
return OculusId.ToString();
to
return FString::Printf(TEXT("%s.oculus"), *OculusId.ToString());Unfortunately, this fix is only for the OculusOnlineSubsystem and not the standard OnlineSubsystem which some of us may be using.
hi Ham1ton and thank you for your full report of how to fix this issue
I do all of your levels to fix it but in lunching progress ue4 report this error and lunch failed.
LogPlayLevel: Error: C:/UnrealEngine-4.23/UnrealEngine-4.23/Engine/Plugins/Online/OnlineSubsystemOculus/Source/Private/OculusNetDriver.cpp(294,36): error: no matching function for call to 'StaticCastSharedPtr'
do you have an idea
thank you very much
01-03-2020 12:23 AM
Ham1ton said:
All glory and honor goes to Turtle Rock Studios for this workaround and much personal shame to those who messed it up to start with:When we upgraded to UE4.23, we could no longer connect clients to servers. Upon investigating we found 2 problems:
UOculusNetDriver::LowLevelSend was modified to take an FInternetAddr pointer instead of an FString (due to the same change in UE4's NetDriver). The code was modified to convert that passed in FInternetAddr pointer into a string, calling FInternetAddrOculus's ToString method, which would just return the user's ID as a string instead of the correct "[id].oculus" connection string required by the SDK.
Either of these changes fixes it:
Change line 295 in NetDriverOculus.cpp (LowLevelSend) from:
FInternetAddrOculus OculusAddr(FURL(nullptr, *Address->ToString(false), ETravelType::TRAVEL_Absolute));
to
FInternetAddrOculus OculusAddr = *StaticCastSharedPtr(Address);Change line 186 in IpAddressOculus.h (ToString) from:
return OculusId.ToString();
to
return FString::Printf(TEXT("%s.oculus"), *OculusId.ToString());Unfortunately, this fix is only for the OculusOnlineSubsystem and not the standard OnlineSubsystem which some of us may be using.
hi Ham1ton and thank you for your full report of how to fix this issue
I do all of your levels to fix it but in lunching progress ue4 report this error and lunch failed.
LogPlayLevel: Error: C:/UnrealEngine-4.23/UnrealEngine-4.23/Engine/Plugins/Online/OnlineSubsystemOculus/Source/Private/OculusNetDriver.cpp(294,36): error: no matching function for call to 'StaticCastSharedPtr'
do you have an idea
thank you very much
02-11-2020 02:35 PM
02-20-2020 03:16 PM
02-21-2020 10:00 AM
05-10-2021 11:37 AM - edited 05-14-2021 05:35 AM
This doesn't fix anything using 4.26 and the oculus build source of Unreal.
05-10-2021 11:38 AM - edited 05-14-2021 05:39 AM
[2021.05.12-02.27.18:202][432]LogOnlineSession: OSS: Join session: traveling to 3928780467239151.oculus [2021.05.12-02.27.18:203][432]LogGameMode: Display: Match State Changed from InProgress to LeavingMap [2021.05.12-02.27.18:203][432]LogGameState: Match State Changed from InProgress to LeavingMap [2021.05.12-02.27.18:203][432]LogNet: Browse: 3928780467239151.oculus/Game/VirtualRealityBP/Maps/Map1 [2021.05.12-02.27.18:204][432]PacketHandlerLog: Loaded PacketHandler component: Engine.EngineHandlerComponentFactory (StatelessConnectHandlerComponent)
[2021.05.12-02.27.21:288][709]LogSlate: Slate User Unregistered. User Index 8
[2021.05.12-02.27.21:289][709]LogSlate: Slate User Destroyed. User Index 8, Is Virtual User: 1 [2021.05.12-02.27.21:289][709]LogSlate: Slate User Unregistered. User Index 8
[2021.05.12-02.27.23:906][944]LogSlate: New Slate User Created. User Index 8, Is Virtual User: 1 [2021.05.12-02.27.23:906][944]LogSlate: Slate User Registered. User Index 8, Is Virtual User: 1 [2021.05.12-02.27.27:738][288]LogOnlineSession: Warning: Oculus: Session (GameSession) already exists, can't join twice
it keeps trying to load the wrong level other headset
05-14-2021 05:48 AM
Join session doesn't work finds wrong map or doesn't see map hosted set to listen.
Headset #1
[2021.05.14-12.16.46:220][ 88]LogBlueprintUserMessages: [VRGameInstance_C_2147482596] Created Session Successful!
[2021.05.14-12.16.46:221][ 88]LogGameMode: Display: Match State Changed from InProgress to LeavingMap
[2021.05.14-12.16.46:221][ 88]LogGameState: Match State Changed from InProgress to LeavingMap
[2021.05.14-12.16.46:221][ 88]LogNet: Browse: /Game/VirtualRealityBP/Maps/map2?listen
[2021.05.14-12.16.46:231][ 88]LogHMD: FSplash::DoShow
[2021.05.14-12.16.46:231][ 88]LogLoad: LoadMap: /Game/VirtualRealityBP/Maps/map2?listen
[2021.05.14-11.24.11:314][815]LogWorld: Bringing World /Game/VirtualRealityBP/Maps/map2.map2 up for play (max tick rate 0) at 2021.05.14-07.24.11
[2021.05.14-11.24.11:315][815]LogWorld: Bringing up level for play took: 0.007358
[2021.05.14-11.24.11:355][815]LogOnlineIdentity: Display: OSS: FOnlineIdentityGooglePlay::GetPlayerNickname
[2021.05.14-11.24.11:356][815]LogOnlineVoice: Oculus: Stopping networked voice for user: 0
[2021.05.14-11.24.11:356][815]LogGameMode: Display: Match State Changed from EnteringMap to WaitingToStart
[2021.05.14-11.24.11:356][815]LogGameState: Match State Changed from EnteringMap to WaitingToStart
[2021.05.14-11.24.11:356][815]LogGameMode: Display: Match State Changed from WaitingToStart to InProgress
[2021.05.14-11.24.11:362][815]LogGameState: Match State Changed from WaitingToStart to InProgress
[2021.05.14-11.24.11:362][815]LogHMD: FSplash::OnPostLoadMap Hide Auto Splash
[2021.05.14-11.24.11:363][815]LogLoad: Took 0.487080 seconds to LoadMap(/Game/VirtualRealityBP/Maps/map2)
Headset #2
[2021.05.12-02.27.18:202][432]LogOnlineSession: OSS: Join session: traveling to 3928780467239151.oculus [2021.05.12-02.27.18:203][432]LogGameMode: Display: Match State Changed from InProgress to LeavingMap [2021.05.12-02.27.18:203][432]LogGameState: Match State Changed from InProgress to LeavingMap [2021.05.12-02.27.18:203][432]LogNet: Browse: 3928780467239151.oculus/Game/VirtualRealityBP/Maps/Map1
[2021.05.12-02.27.18:204][432]PacketHandlerLog: Loaded PacketHandler component: Engine.EngineHandlerComponentFactory (StatelessConnectHandlerComponent)
[2021.05.12-02.27.21:288][709]LogSlate: Slate User Unregistered. User Index 8
[2021.05.12-02.27.21:289][709]LogSlate: Slate User Destroyed. User Index 8, Is Virtual User: 1 [2021.05.12-02.27.21:289][709]LogSlate: Slate User Unregistered. User Index 8
[2021.05.12-02.27.23:906][944]LogSlate: New Slate User Created. User Index 8, Is Virtual User: 1 [2021.05.12-02.27.23:906][944]LogSlate: Slate User Registered. User Index 8, Is Virtual User: 1 [2021.05.12-02.27.27:738][288]LogOnlineSession: Warning: Oculus: Session (GameSession) already exists, can't join twice
Why is the other headset always joining but trying to load a map that it can't load?
Server browser will show two players in the game, but the headset trying to join does nothing after a while it reloads the default map after it fails to join the wrong map.
The other headset will always see the other headsets ID, Player count set. But it wont see the correct map loaded and hosted and set to listen?
05-15-2021 05:27 AM - edited 05-15-2021 06:40 AM
Still can't get it working I've copied all of the .uproject .ini etc.. info from the sample project and now my app is crashing on the headset
Working again after rolling back and resetting and rebuilding project
disabling steamVR caused crashing but deleting intermediate folder etc. and rebuilding fixed it
05-15-2021 05:44 AM - edited 05-15-2021 06:40 AM
I've done 3 weeks of 24/7 testing, Join Session does not work atm, please need a solution or fixed source