We found some serious multiplayer related bugs :'(
( update: I added a bug report for this too:
https://sourceforge.net/tracker/?func=browse&group_id=300350&atid=1266776)
- You cannot chat in the connect state any more. If you try it, server crashs and due to this the client too.
Here the last words of the server debug logfile:
[2010-04-10 12:03:59] In [glest_game/network/connection_slot.cpp::update] accepted new client connection
[2010-04-10 12:03:59] In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 18, bytesSent = 84
[2010-04-10 12:03:59] In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] select detected data imaxsocket = 18...
[2010-04-10 12:03:59] In [hasDataToRead] FD_ISSET true for socket 18...
[2010-04-10 12:03:59] In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] socketTriggeredList->size() = 1
[2010-04-10 12:03:59] In [glest_game/network/server_interface.cpp::update] hasData == true
[2010-04-10 12:03:59] In [glest_game/network/server_interface.cpp::update] calling slots[i]->update() for slot = 1 socketId = 18
[2010-04-10 12:03:59] In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 84
[2010-04-10 12:03:59] In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 1
[2010-04-10 12:03:59] In [glest_game/network/connection_slot.cpp::update] got nmtIntro
[2010-04-10 12:03:59] In [glest_game/network/network_interface.cpp::receiveMessage]
[2010-04-10 12:03:59] In [glest_game/network/network_message.cpp::receive] dataSize = 84
[2010-04-10 12:03:59] In [glest_game/network/connection_slot.cpp::update] got name [u]
[2010-04-10 12:03:59] In [glest_game/network/server_interface.cpp::update] calling connectionSlot->getNextMessageType() for slots[i]->getSocket()->getSocketId() = 18
[2010-04-10 12:04:00] Broadcasting on port [61357] the message: [p60X2:116.110.155.177:172.20.100.101]
[2010-04-10 12:04:00] In [shared_lib/sources/platform/posix/socket.cpp::execute Line: 1153]
[2010-04-10 12:04:01] Broadcasting on port [61357] the message: [p60X2:116.110.155.177:172.20.100.101]
[2010-04-10 12:04:01] In [shared_lib/sources/platform/posix/socket.cpp::execute Line: 1153]
[2010-04-10 12:04:01] In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] select detected data imaxsocket = 18...
[2010-04-10 12:04:01] In [hasDataToRead] FD_ISSET true for socket 18...
[2010-04-10 12:04:01] In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] socketTriggeredList->size() = 1
[2010-04-10 12:04:01] In [glest_game/network/server_interface.cpp::update] hasData == true
[2010-04-10 12:04:01] In [glest_game/network/server_interface.cpp::update] calling slots[i]->update() for slot = 1 socketId = 18
[2010-04-10 12:04:01] In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 130
[2010-04-10 12:04:01] In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 6
[2010-04-10 12:04:01] In [glest_game/network/connection_slot.cpp::update] got nmtText
[2010-04-10 12:04:01] In [glest_game/network/network_interface.cpp::receiveMessage]
[2010-04-10 12:04:01] In [glest_game/network/network_message.cpp::receive] dataSize = 130
[2010-04-10 12:04:01] In [glest_game/network/connection_slot.cpp::update] chatText [u: hi] chatSender [p60-4600x2] chatTeamIndex = -1
[2010-04-10 12:04:01] In [glest_game/network/server_interface.cpp::update] #1 about to broadcast nmtText chatText [u: hi] chatSender [p60-4600x2] chatTeamIndex = -1 for SlotIndex# 1
[2010-04-10 12:04:01] In [glest_game/game/chat_manager.cpp::updateNetwork] got nmtText [u: hi] for team = -1
[2010-04-10 12:04:01] In [glest_game/game/chat_manager.cpp::updateNetwork] Added text to console
- If a client connects to a server and then chooses to quit while still in the menu, the server currently crashes.
Here the last words of the server debug logfile:
[2010-04-10 11:54:57] Broadcasting on port [61357] the message: [p60X2:116.94.126.177:172.20.100.101]
[2010-04-10 11:54:57] In [shared_lib/sources/platform/posix/socket.cpp::execute Line: 1153]
[2010-04-10 11:54:58] In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] select detected data imaxsocket = 18...
[2010-04-10 11:54:58] In [hasDataToRead] FD_ISSET true for socket 18...
[2010-04-10 11:54:58] In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] socketTriggeredList->size() = 1
[2010-04-10 11:54:58] In [glest_game/network/server_interface.cpp::update] hasData == true
[2010-04-10 11:54:58] In [glest_game/network/server_interface.cpp::update] calling slots[i]->update() for slot = 1 socketId = 18
[2010-04-10 11:54:58] In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 130
[2010-04-10 11:54:58] In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 6
[2010-04-10 11:54:58] In [glest_game/network/connection_slot.cpp::update] got nmtText
[2010-04-10 11:54:58] In [glest_game/network/network_interface.cpp::receiveMessage]
[2010-04-10 11:54:58] In [glest_game/network/network_message.cpp::receive] dataSize = 130
[2010-04-10 11:54:58] In [glest_game/network/connection_slot.cpp::update] chatText [u has chosen to leave the game!] chatSender [p60-4600x2] chatTeamIndex = -1
[2010-04-10 11:54:58] In [glest_game/network/server_interface.cpp::update] #1 about to broadcast nmtText chatText [u has chosen to leave the game!] chatSender [p60-4600x2] chatTeamIndex = -1 for SlotIndex# 1
[2010-04-10 11:54:58] In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] START closing socket = 18...
[2010-04-10 11:54:58] In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] calling shutdown and close for socket = 18...
[2010-04-10 11:54:58] In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] END closing socket = -1...
[2010-04-10 11:54:58] [shared_lib/sources/platform/posix/socket.cpp::peek] DISCONNECTED SOCKET error while peeking socket data, err = 0, errno = 11 [Resource temporarily unavailable]
[2010-04-10 11:54:58] In [glest_game/game/chat_manager.cpp::updateNetwork] got nmtText [u has chosen to leave the game!] for team = -1
[2010-04-10 11:54:58] In [glest_game/game/chat_manager.cpp::updateNetwork] Added text to console
[2010-04-10 11:54:58] In [glest_game/network/connection_slot.cpp::update] calling close...
[2010-04-10 11:54:58] In [glest_game/network/connection_slot.cpp::close] START
[2010-04-10 11:54:58] In [shared_lib/sources/platform/posix/socket.cpp::~Socket] START closing socket = -1...
[2010-04-10 11:54:58] In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] START closing socket = -1...
[2010-04-10 11:54:58] In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] END closing socket = -1...
[2010-04-10 11:54:58] In [shared_lib/sources/platform/posix/socket.cpp::~Socket] END closing socket = -1...
[2010-04-10 11:54:58] In [glest_game/network/connection_slot.cpp::close] END
[2010-04-10 11:54:58] Broadcasting on port [61357] the message: [p60X2:116.94.126.177:172.20.100.101]
[2010-04-10 11:54:58] In [shared_lib/sources/platform/posix/socket.cpp::execute Line: 1153]
If you open a custom game ( without beeing in multiplayer ) and you start to "chat" with the enter key, glest instantly crashes :/
and one last not so serious problem:
If a server has a slot open and on the client someone clicks like mad on the "Find LAN Games" button, the client crashes.