GitHub | Documentation | Become a Patron

IPv6 - Error from Colyseus Room (Unity) *Added Stacktrace



  • Hello everyone,
    I was trying out my game with 4 remote friends. It seemed that the only one who could not actually connect to the game was the one having IPv6. Is this a known issue? Not yet implemented or I should post this as an issue on github?

    Edit* I will post the stack trace when I return home.



  • Attaching Stacktrace:
    IPv6 Should be on the last Error (Invalid Cast Exception)

    (Filename: C:/Users//*/BattleClient.cs Line: 39)

    Let's connect the client!
    UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object)
    UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
    UnityEngine.Logger:Log(LogType, Object)
    UnityEngine.Debug:Log(Object)
    <Start>c__Iterator0:MoveNext() (at C:*****\Assets\Code\Networking\BattleClient.cs:44)
    UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

    (Filename: C:///BattleClient.cs Line: 44)

    System memory in use before: 261.0 MB.
    System memory in use after: 223.2 MB.

    Unloading 24 unused Assets to reduce memory usage. Loaded Objects now: 1874.
    Total: 5.725704 ms (FindLiveObjects: 0.700780 ms CreateObjectMapping: 0.042195 ms MarkObjects: 0.987023 ms DeleteObjects: 3.994849 ms)

    WebSocketSharp Open!
    UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object)
    UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
    UnityEngine.Logger:Log(LogType, Object)
    UnityEngine.Debug:Log(Object)
    <Connect>c__Iterator1:<>m__1(Object, EventArgs) (at C:*****\Assets\Plugins\WebSocket\WebSocket.cs:245)
    WebSocketSharp.Ext:Emit(EventHandler, Object, EventArgs)
    WebSocketSharp.WebSocket:open()
    WebSocketSharp.<ConnectAsync>c__AnonStorey10:<>m__C(IAsyncResult)
    System.Runtime.Remoting.Messaging.AsyncResult:Invoke(AsyncResult)
    System.Runtime.Remoting.Messaging.AsyncResult:System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
    System.Threading.ThreadPoolWorkQueue:Dispatch()
    System.Threading._ThreadPoolWaitCallback:PerformWaitCallback()

    (Filename: C:/*****/Assets/Plugins/WebSocket/WebSocket.cs Line: 245)

    Let's join the room!
    UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object)
    UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
    UnityEngine.Logger:Log(LogType, Object)
    UnityEngine.Debug:Log(Object)
    <Start>c__Iterator0:MoveNext() (at C:*****\Assets\Code\Networking\BattleClient.cs:47)
    UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

    (Filename: C:///BattleClient.cs Line: 47)

    Connected to server. Client id: BJEY7TXVQ
    UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object)
    UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
    UnityEngine.Logger:Log(LogType, Object)
    UnityEngine.Debug:Log(Object)
    BattleClient:OnOpenHandler(Object, EventArgs) (at C:*\Assets\Code\Networking\BattleClient.cs:81)
    Colyseus.Client:ParseMessage(Byte[]) (at C:*
    \Assets\Plugins\Colyseus\Client.cs:191)
    Colyseus.Client:Recv() (at C:*\Assets\Plugins\Colyseus\Client.cs:84)
    <Start>c__Iterator0:MoveNext() (at C:*
    \Assets\Code\Networking\BattleClient.cs:73)
    UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

    (Filename: C:///BattleClient.cs Line: 81)

    Ready to connect to room!
    UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object)
    UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
    UnityEngine.Logger:Log(LogType, Object)
    UnityEngine.Debug:Log(Object)
    <Start>c__Iterator0:<>m__1(Object, EventArgs) (at C:*\Assets\Code\Networking\BattleClient.cs:53)
    Colyseus.Room:SetConnection(Connection) (at C:*
    \Assets\Plugins\Colyseus\Room.cs:108)
    Colyseus.Client:ParseMessage(Byte[]) (at C:*\Assets\Plugins\Colyseus\Client.cs:203)
    Colyseus.Client:Recv() (at C:*
    \Assets\Plugins\Colyseus\Client.cs:84)
    <Start>c__Iterator0:MoveNext() (at C:*****\Assets\Code\Networking\BattleClient.cs:73)
    UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

    (Filename: C:///BattleClient.cs Line: 53)

    WebSocketSharp Open!
    UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object)
    UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
    UnityEngine.Logger:Log(LogType, Object)
    UnityEngine.Debug:Log(Object)
    <Connect>c__Iterator1:<>m__1(Object, EventArgs) (at C:*****\Assets\Plugins\WebSocket\WebSocket.cs:245)
    WebSocketSharp.Ext:Emit(EventHandler, Object, EventArgs)
    WebSocketSharp.WebSocket:open()
    WebSocketSharp.<ConnectAsync>c__AnonStorey10:<>m__C(IAsyncResult)
    System.Runtime.Remoting.Messaging.AsyncResult:Invoke(AsyncResult)
    System.Runtime.Remoting.Messaging.AsyncResult:System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
    System.Threading.ThreadPoolWorkQueue:Dispatch()
    System.Threading._ThreadPoolWaitCallback:PerformWaitCallback()

    (Filename: C:/*****/Assets/Plugins/WebSocket/WebSocket.cs Line: 245)

    InvalidCastException: Specified cast is not valid.
    at Colyseus.Room.ParseMessage (System.Byte[] recv) [0x00029] in C:*
    \Assets\Plugins\Colyseus\Room.cs:153
    at Colyseus.Room.Recv () [0x00016] in C:*
    \Assets\Plugins\Colyseus\Room.cs:83
    at Colyseus.Client.Recv () [0x0003e] in C:*
    \Assets\Plugins\Colyseus\Client.cs:89
    at BattleClient+<Start>c__Iterator0.MoveNext () [0x002bb] in C:*
    *\Assets\Code\Networking\BattleClient.cs:73
    at UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) [0x00027] in <e3b5432eb0ec46cea77514145fd3cca9>:0

    (Filename: <e3b5432eb0ec46cea77514145fd3cca9> Line: 0)*