The server runs on linux ubuntu 10.10 32bit and the server version is: 2.0.0-RC2a
We made the test with 4 clients connected. 3 clients were unity executables while the 4th was started in Unity.
The server extension is based on the SFS FPS one (in particular the transform stuff for the player movements is exactly the same).
After moving for about 10 minutes 3 of 4 clients were kicked.
The client that was running in unity reported these errors:
1- This error has been displayed when the client has been kicked:
Code: Select all
[SFS DEBUG] TCPSocketLayer: General error reading data from socket: Can't decode an SFSObject. Byte data is insufficient. Size: 0 byte(s) at Sfs2X.Protocol.Serialization.DefaultSFSDataSerializer.Binary2Object (Sfs2X.Util.ByteArray data) [0x00000] in <filename unknown>:0
at Sfs2X.Entities.Data.SFSObject.NewFromBinaryData (Sfs2X.Util.ByteArray ba) [0x00000] in <filename unknown>:0
at Sfs2X.Core.SFSProtocolCodec.OnPacketRead (Sfs2X.Util.ByteArray packet) [0x00000] in <filename unknown>:0
at Sfs2X.Core.SFSIOHandler.HandlePacketData (Sfs2X.Util.ByteArray data) [0x00000] in <filename unknown>:0
at Sfs2X.Core.SFSIOHandler.OnDataRead (Sfs2X.Util.ByteArray data) [0x00000] in <filename unknown>:0
at Sfs2X.Bitswarm.BitSwarmClient.OnSocketData (System.Byte[] data) [0x00000] in <filename unknown>:0
at Sfs2X.Core.Sockets.TCPSocketLayer.CallOnData (System.Byte[] data) [0x00000] in <filename unknown>:0
at Sfs2X.Core.Sockets.TCPSocketLayer.HandleBinaryData (System.Byte[] buf, Int32 size) [0x00000] in <filename unknown>:0
at Sfs2X.Core.Sockets.TCPSocketLayer.Read () [0x00000] in <filename unknown>:0
2- This is a stack trace caught by the onConnectionLost() method:
Code: Select all
disconnected for this reason: unknown
UnityEngine.MonoBehaviour:print(Object)
NetworkManager:OnConnectionLost(BaseEvent) (at Assets/Scripts/Game/SFS imported/NetworkManager.cs:135)
Sfs2X.Core.EventDispatcher:DispatchEvent(BaseEvent)
Sfs2X.SmartFox:ProcessEvents()
NetworkManager:FixedUpdate() (at Assets/Scripts/Game/SFS imported/NetworkManager.cs:56)
3- The last error is displayed continuously after the disconnection and is sent to the client by the server:
Code: Select all
[SFS DEBUG] You are not connected. Request cannot be sent: Sfs2X.Requests.ExtensionRequest
UnityEngine.Debug:Log(Object)
LobbyGUI:OnDebugMessage(BaseEvent) (at Assets/Scripts/Lobby/LobbyGUI.cs:202)
Sfs2X.Core.EventDispatcher:DispatchEvent(BaseEvent)
Sfs2X.Logging.Logger:DispatchEvent(LoggerEvent)
Sfs2X.Logging.Logger:Log(LogLevel, String)
Sfs2X.Logging.Logger:Warn(String[])
Sfs2X.SmartFox:Send(IRequest)
NetworkManager:SendTransform(NetworkTransform) (at Assets/Scripts/Game/SFS imported/NetworkManager.cs:125)
NetworkTransformSender:SendTransform() (at Assets/Scripts/Game/SFS imported/NetworkTransformSender.cs:39)
NetworkTransformSender:FixedUpdate() (at Assets/Scripts/Game/SFS imported/NetworkTransformSender.cs:31)
We didn't set anything particular in the xml files, just added 2 game rooms
BTW: this is the second test we made for this bug, the first time instead of the first error we got another one saying something like this (i apologize but we couldn't manage to save this error):
Code: Select all
"Expected SFSObject found 0".
If we find that error again we'll post ASAP.
Let us know, thanks