WebSocket 8889/HTML5 to work (crashes server) and Android/iOS networking to work with server (client crashes)

this bug is tracked on jira: UE-30880 (server crash when using websocket net drivers) – and is currently in progress (actively being worked on).

there is also jira: UE-25492 (connecting html5 clients to server) – this is anticipated to function once UE-30880 bug hunt is fixed.

apologies for the crash. please stand by.

Currently the Experimental WebSocket server on UE4 (dedicated) Windows 64-bit server (compiled with VS2015) crashes when HTML5 tries to connect to the server at ws://a.b.c.d:8889. Instead of making WebSockets as an substitute communications method on the server (instead of OnlineSubsystem), can you make it so that it will support both on the server? This would allow all networking systems to connect to the same server at same time, depending on what platform the game is on (Windows 64-bit/Steam/HTML5/Android/iOS).

You have stated in some wiki/answer post that Android networking/connectivity should work out of the box if the server/client(s) were compiled/packaged with the same version of the game. Currently this is not so.I’m not able to connect a working Windows Dedicated Server from Android Client (1R4u2), while i’m able to connect with Windows 64-bit Client just fine. The Android Client “loads” for a while when executing “open a.b.c.d” command from console, but then crashes and shows the splash screen again with the default offline level.

Build: Source 4.12.2 with recent setup.bat updates

Repro:

  1. Make a Release 4.12.3 third person blueprint game
  2. Package/Launch Android ETC1 to the device (and Win64 client to prove server is working)
  3. Change Project Editor version to the Source & Generate
  4. Open in Visual Studio 2015 Community Edition with add-ons
  5. Make a server executable as instructed in A new, community-hosted Unreal Engine Wiki - Announcements - Unreal Engine Forums
  6. Run Dedicated Server on some external IP other than localhost/127.0.0.1 such as a Windows 2012 R2 VPS
  7. Attempt to run a “open a.b.c.d” command from android UE4 console (~ from adb key simulation etc)
  8. Watch the Android client crash/reload on Samsun Galaxy S6 (Android version 6)

Here are some additional details of previous crashes if they help you:

Instructions used:

Detailed Development Server Error Message:

[2016.06.20-07.32.45:601][208]LogNet: NotifyAcceptingConnection: Server TheMeetingRoom accept
[2016.06.20-07.32.45:797][208]PacketHandlerLog: Loaded PacketHandler component: Engine.EngineHandlerComponentFactory (StatelessConnectHandlerComponent)
[2016.06.20-07.32.46:011][208]LogNet: NotifyAcceptedConnection: Name: TheMeetingRoom, TimeStamp: 06/20/16 10:32:46, [UNetConnection] RemoteAddr: dsl-hkibra****-.dhcp.inet.fi, Name: WebSocketConnection_0, Driver: GameNetDriver WebSocketNetDriver_0, IsServer: YES, PC: NULL, Owner: NULL
[2016.06.20-07.32.46:011][208]LogNet: AddClientConnection: Added client connection: [UNetConnection] RemoteAddr: dsl-hkibra
-
****.dhcp.inet.fi, Name: WebSocketConnection_0, Driver: GameNetDriver WebSocketNetDriver_0, IsServer: YES, PC: NULL, Owner: NULL
[2016.06.20-07.32.46:020][208]LogNetSerialization:Error: FBitReader::SetOverflowed() called
[2016.06.20-07.32.46:042][208]LogWindows: Windows GetLastError: The operation completed successfully. (0)
[2016.06.20-07.32.47:226][208]LogWindows:Error: === Critical error: ===
LowLevelFatalError [File:C:\UnrealEngine-release\Engine\Source\Runtime\Engine\Classes\Engine/NetConnection.h] [Line: 561]
Pure virtual not implemented (UNetConnection::RemoteAddressToString)

[2016.06.20-07.32.47:237][208]LogExit: Executing StaticShutdownAfterError
[2016.06.20-07.32.47:261][208]LogWindows: FPlatformMisc::RequestExit(1)
[2016.06.20-07.32.47:262][208]Log file closed, 06/20/16 10:32:47