Author Topic: Performance improvement for Glest multiplayer... 4 player is now practical  (Read 53133 times)

ElimiNator

  • Airship
  • ********
  • Posts: 3,391
  • The MegaGlest Moder.
    • View Profile
Its realy fun now that we can play 4 players with out it geting choppy.
Get the Vbros': Packs 1, 2, 3, 4, and 5!

Super Tom

  • Draco Rider
  • *****
  • Posts: 311
    • View Profile
Run glest3.2.4-beta1 following error:

root@tom:/usr/local/games/glest# ./glest.bin

#2 Error connecting socket for IP: 192.168.1.3 for Port: 61357 err = -1 errno = 115 [Operation now in progress]EINPROGRESS in connect() - selecting

Please tell me how to solve this problem??   Thanks

By the way: I use the operating system is: ubuntu8.10
« Last Edit: 24 January 2010, 10:27:20 by tom123 »

Super Tom

  • Draco Rider
  • *****
  • Posts: 311
    • View Profile
I tried to press "" join game button to join the Battle groups, but because the cable fault is not incorporated, and then I press "return" button, the game suddenly quit, followed by my mouse could not move, and I can only restart the computer . Is this why? Why is there such a serious problem then, I have no problem with the computer itself. Please Come help me, thank you!

By the way: It is a time of running glest3.2.4beta1 this problem!

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,239
    • View Profile
    • http://www.titusgames.de
@softcoder:
I downloaded your sourcepackage for megaglest 3.2.4_beta1.
Inside was a directory called 3.2.3_beta3, I hope this is ok.

I  said:
./autogen.sh
./configure
./jam clean
./jam

Then we started testing with this binary. We didn't manage to start any game :( .
Try 1:
First thing we saw:
server started and opened 3 splots for network players. Network player connected and was put to the last slot ( not the first open slot ).
Next player connected and was set on the 3 slot. what happend next is not really clear, but noone starts a game ( I think one of us disconnected and reconnected again ) and his client was crashed.

Try 2:
- We opened a server with only one slot open
- client one connected successfully
- we opened next slot
- client 2 connected to
- we opened third slot
- client 3 connected
Now we launched the game and every client starts to load. When loading was done and the game should start all clients crashed!!

I think there are still some serios bugs in it.

One thing we saw too is that the menu got very choppy again with only 2 players connected!
And the binary has a version number of glest 3.2.3_beta3 which is shown in the menu under the logo.

Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,239
    • View Profile
    • http://www.titusgames.de
parts of the server logfile:
Code: [Select]
....
In [glest_game/network/server_interface.cpp::addSlot] START
In [glest_game/network/server_interface.cpp::addSlot] END
In [glest_game/network/server_interface.cpp::broadcastMessageToConnectedClients] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 19, bytesSent = 788
In [glest_game/network/server_interface.cpp::broadcastMessageToConnectedClients] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 18, bytesSent = 788
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] select detected data imaxsocket = 19...
In [hasDataToRead] FD_ISSET true for socket 19...
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] socketTriggeredList->size() = 2
In [glest_game/network/server_interface.cpp::update] hasData == true
In [glest_game/network/server_interface.cpp::update] calling slots[i]->update() for slots[i]->getSocket()->getSocketId() = 19
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 20
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 9
In [glest_game/network/connection_slot.cpp::update] got nmtSynchNetworkGameDataStatus
In [glest_game/network/network_interface.cpp::receiveMessage]
In [glest_game/network/network_message.cpp::receive] dataSize = 20
In [glest_game/network/connection_slot.cpp::update] client data synch ok
In [glest_game/network/server_interface.cpp::update] calling connectionSlot->getNextMessageType() for slots[i]->getSocket()->getSocketId() = 19
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] select detected data imaxsocket = 19...
In [hasDataToRead] FD_ISSET true for socket 18...
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] socketTriggeredList->size() = 2
In [glest_game/network/server_interface.cpp::update] hasData == true
In [glest_game/network/server_interface.cpp::update] calling slots[i]->update() for slots[i]->getSocket()->getSocketId() = 18
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 20
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 9
In [glest_game/network/connection_slot.cpp::update] got nmtSynchNetworkGameDataStatus
In [glest_game/network/network_interface.cpp::receiveMessage]
In [glest_game/network/network_message.cpp::receive] dataSize = 20
In [glest_game/network/connection_slot.cpp::update] client data synch ok
In [glest_game/network/server_interface.cpp::update] calling connectionSlot->getNextMessageType() for slots[i]->getSocket()->getSocketId() = 18
In [glest_game/network/connection_slot.cpp::update] accepted new client connection
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 20, bytesSent = 84
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] select detected data imaxsocket = 20...
In [hasDataToRead] FD_ISSET true for socket 20...
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] socketTriggeredList->size() = 3
In [glest_game/network/server_interface.cpp::update] hasData == true
In [glest_game/network/server_interface.cpp::update] calling slots[i]->update() for slots[i]->getSocket()->getSocketId() = 20
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 84
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 1
In [glest_game/network/connection_slot.cpp::update] got nmtIntro
In [glest_game/network/network_interface.cpp::receiveMessage]
In [glest_game/network/network_message.cpp::receive] dataSize = 84
In [glest_game/network/connection_slot.cpp::update] got name [p60X2]
In [glest_game/network/connection_slot.cpp::update] sending NetworkMessageSynchNetworkGameData
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 20, bytesSent = 788
In [glest_game/network/server_interface.cpp::update] calling connectionSlot->getNextMessageType() for slots[i]->getSocket()->getSocketId() = 20
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] select detected data imaxsocket = 20...
In [hasDataToRead] FD_ISSET true for socket 20...
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] socketTriggeredList->size() = 3
In [glest_game/network/server_interface.cpp::update] hasData == true
In [glest_game/network/server_interface.cpp::update] calling slots[i]->update() for slots[i]->getSocket()->getSocketId() = 20
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 20
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 9
In [glest_game/network/connection_slot.cpp::update] got nmtSynchNetworkGameDataStatus
In [glest_game/network/network_interface.cpp::receiveMessage]
In [glest_game/network/network_message.cpp::receive] dataSize = 20
In [glest_game/network/connection_slot.cpp::update] client data synch ok
In [glest_game/network/server_interface.cpp::update] calling connectionSlot->getNextMessageType() for slots[i]->getSocket()->getSocketId() = 20
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 20, bytesSent = 2066
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 19, bytesSent = 2066
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 18, bytesSent = 2066
In [waitUntilReady] START
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 8
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 3
In [glest_game/network/network_interface.cpp::receiveMessage]
In [glest_game/network/network_message.cpp::receive] dataSize = 8
In [waitUntilReady] networkMessageType==nmtReady
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 8
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 3
In [glest_game/network/network_interface.cpp::receiveMessage]
In [glest_game/network/network_message.cpp::receive] dataSize = 8
In [waitUntilReady] networkMessageType==nmtReady
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 8
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 3
In [glest_game/network/network_interface.cpp::receiveMessage]
In [glest_game/network/network_message.cpp::receive] dataSize = 8
In [waitUntilReady] networkMessageType==nmtReady
In [waitUntilReady] PART B (telling client we are ready!
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 20, bytesSent = 8
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 19, bytesSent = 8
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 18, bytesSent = 8
In [waitUntilReady] END
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 20, bytesSent = 904
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 19, bytesSent = 904
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 18, bytesSent = 904
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 3
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] select detected data imaxsocket = 20...
In [hasDataToRead] FD_ISSET true for socket 20...
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] socketTriggeredList->size() = 3
In [glest_game/network/server_interface.cpp::update] hasData == true
In [glest_game/network/server_interface.cpp::update] hasData == true
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] START closing socket = 20...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] END closing socket = -1...
[shared_lib/sources/platform/posix/socket.cpp::isConnected] DISCONNECTED SOCKET error while peeking isconnected socket data, err = -1, errno = 104 [Connection reset by peer]
In [glest_game/network/server_interface.cpp::update] socketTriggeredList[i] = 0
In [glest_game/network/server_interface.cpp::update] slots[i]->getSocket() == NULL
In [glest_game/network/connection_slot.cpp::update] calling close...
In [glest_game/network/connection_slot.cpp::close] START
In [shared_lib/sources/platform/posix/socket.cpp::~Socket] START closing socket = -1...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] START closing socket = -1...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] END closing socket = -1...
In [shared_lib/sources/platform/posix/socket.cpp::~Socket] END closing socket = -1...
In [glest_game/network/connection_slot.cpp::close] END
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 2
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 2
In [glest_game/network/server_interface.cpp::broadcastMessage] before removeSlot
In [glest_game/network/server_interface.cpp::removeSlot] START
In [glest_game/network/connection_slot.cpp::~ConnectionSlot] START
In [glest_game/network/connection_slot.cpp::close] START
In [glest_game/network/connection_slot.cpp::close] END
In [glest_game/network/connection_slot.cpp::~ConnectionSlot] END
In [glest_game/network/server_interface.cpp::removeSlot] END
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 19, bytesSent = 904
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 18, bytesSent = 904
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 2
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 2
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 2
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] select detected data imaxsocket = 19...
In [hasDataToRead] FD_ISSET true for socket 19...
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] socketTriggeredList->size() = 2
In [glest_game/network/server_interface.cpp::update] hasData == true
In [glest_game/network/server_interface.cpp::update] hasData == true
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] START closing socket = 19...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] END closing socket = -1...
[shared_lib/sources/platform/posix/socket.cpp::isConnected] DISCONNECTED SOCKET error while peeking isconnected socket data, err = -1, errno = 104 [Connection reset by peer]
In [glest_game/network/server_interface.cpp::update] socketTriggeredList[i] = 0
In [glest_game/network/server_interface.cpp::update] slots[i]->getSocket() == NULL
In [glest_game/network/connection_slot.cpp::update] calling close...
In [glest_game/network/connection_slot.cpp::close] START
In [shared_lib/sources/platform/posix/socket.cpp::~Socket] START closing socket = -1...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] START closing socket = -1...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] END closing socket = -1...
In [shared_lib/sources/platform/posix/socket.cpp::~Socket] END closing socket = -1...
In [glest_game/network/connection_slot.cpp::close] END
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] select detected data imaxsocket = 18...
In [hasDataToRead] FD_ISSET true for socket 18...
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] socketTriggeredList->size() = 1
In [glest_game/network/server_interface.cpp::update] hasData == true
In [glest_game/network/server_interface.cpp::update] hasData == true
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] START closing socket = 18...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] END closing socket = -1...
[shared_lib/sources/platform/posix/socket.cpp::isConnected] DISCONNECTED SOCKET error while peeking isconnected socket data, err = -1, errno = 104 [Connection reset by peer]
In [glest_game/network/server_interface.cpp::update] socketTriggeredList[i] = 0
In [glest_game/network/server_interface.cpp::update] slots[i]->getSocket() == NULL
In [glest_game/network/connection_slot.cpp::update] calling close...
In [glest_game/network/connection_slot.cpp::close] START
In [shared_lib/sources/platform/posix/socket.cpp::~Socket] START closing socket = -1...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] START closing socket = -1...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] END closing socket = -1...
In [shared_lib/sources/platform/posix/socket.cpp::~Socket] END closing socket = -1...
In [glest_game/network/connection_slot.cpp::close] END
In [glest_game/network/server_interface.cpp::broadcastMessage] before removeSlot
In [glest_game/network/server_interface.cpp::removeSlot] START
In [glest_game/network/connection_slot.cpp::~ConnectionSlot] START
In [glest_game/network/connection_slot.cpp::close] START
In [glest_game/network/connection_slot.cpp::close] END
In [glest_game/network/connection_slot.cpp::~ConnectionSlot] END
In [glest_game/network/server_interface.cpp::removeSlot] END
In [glest_game/network/server_interface.cpp::broadcastMessage] before removeSlot
In [glest_game/network/server_interface.cpp::removeSlot] START
In [glest_game/network/connection_slot.cpp::~ConnectionSlot] START
In [glest_game/network/connection_slot.cpp::close] START
In [glest_game/network/connection_slot.cpp::close] END
In [glest_game/network/connection_slot.cpp::~ConnectionSlot] END
In [glest_game/network/server_interface.cpp::removeSlot] END
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

Super Tom

  • Draco Rider
  • *****
  • Posts: 311
    • View Profile
These issues have not really been resolved. Glest3.2.4beta1 when will this release, we need a real glest3.2.4beta1, Thanks!

softcoder

  • MegaGlest Team
  • Battle Machine
  • ********
  • Posts: 2,238
    • View Profile
Ok I "think" I found the start crash issue (random crash just when client games are about to start.

Updates at:

mega glest - http://soft-haus.com/glest/code/megaglest-source-3.2.4-beta1.7z
regular glest patch - http://soft-haus.com/glest/code/glest_patch_2010_jan_24.diff

Super Tom

  • Draco Rider
  • *****
  • Posts: 311
    • View Profile
glest 3.2.4beta1 error started to have:

In [shared_lib / sources / platform / posix / socket.cpp:: ~ Socket] START closing socket = 10 ...

In [shared_lib / sources / platform / posix / socket.cpp:: disconnectSocket] START closing socket = 10 ...

In [shared_lib / sources / platform / posix / socket.cpp:: disconnectSocket] END closing socket = -1 ...

In [shared_lib / sources / platform / posix / socket.cpp:: ~ Socket] END closing socket = -1 ...

# 2 Error connecting socket for IP: 192.168.1.102 for Port: 61357 err = -1 errno = 115 [Operation now in progress] EINPROGRESS in connect () - selecting

I click "join game" button to add the game to Versus, when to end a battle, press "return" button to return to the game main menu when the game came straight out, just this time could not move my mouse pointer , you can tell me why?  Please answer me, thank you!

By the way: This is the latest version of the beta1 errors generated!
« Last Edit: 25 January 2010, 09:13:46 by tom123 »

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,239
    • View Profile
    • http://www.titusgames.de
@softcoder: I can test it this evening ( currently at work ...).
One thing, can you try to keep the versions separated ( beta2/beta3 ..... ) and set it in the game too? This would be great and helps everyone to know what he tested exactly. You will get more version related error reports with this!
( ingame versions numbers are set in source/glest_game/facilities/game_util.cpp )
« Last Edit: 25 January 2010, 12:49:41 by titi »
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

Super Tom

  • Draco Rider
  • *****
  • Posts: 311
    • View Profile
 click "join game" button to add the game to Versus, when to end a battle, press "return" button to return to the game main menu when the game came straight out, just this time could not move my mouse pointer , you can tell me why?  Please answer me, thank you!

By the way: This is the latest version of the beta1 errors generated!

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,239
    • View Profile
    • http://www.titusgames.de
Test result for the last beta:
Good!:
- We played a four player game without problems!!! Very stable, very fast. ( but we only played one 4 player game yet )
- We played another 2 player vs 1 CPU-Mega game without any problems

Problems we found:
- connection order is random, you never know which slot will be yours. ( first connect should be first open slot, 2 connect second slot .... Or much better but new server can configure the player/slots )
- server crashes when chatting with one player connected and one additional slot open.
- if clients connects and disconnects with one 2 open slots server crashes.
- This very good new counter (when a game starts and you have to wait for the slowest machine) only works on the server, clients always show 0.

I think errors are very clear so logfiles are not needed in this case.
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

Omega

  • MegaGlest Team
  • Dragon
  • ********
  • Posts: 6,167
  • Professional bug writer
    • View Profile
    • Personal site
We didn't test anything yet because the kids should not play computer the whole day  ;).
Jeeze, and I thought you were a decent guy up till now...  :D
Edit the MegaGlest wiki: http://docs.megaglest.org/

My personal projects: http://github.com/KatrinaHoffert

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,239
    • View Profile
    • http://www.titusgames.de
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

softcoder

  • MegaGlest Team
  • Battle Machine
  • ********
  • Posts: 2,238
    • View Profile
All reported problems reproduced and patched:

Updates at:

mega glest - http://soft-haus.com/glest/code/megaglest-source-3.2.4-beta1.7z
regular glest patch - http://soft-haus.com/glest/code/glest_patch_2010_jan_25.diff

I won't be looking at any new features until we get the networking stuff solid first, so everyone let me know how this version works out.

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,239
    • View Profile
    • http://www.titusgames.de
Test results:
The gaming itself was stable and non choppy again, chatting and so on worked fine.
But there is still trouble with the connect menu:

- connect to a non exsiting server ( any ip where no glest is running ) :
Game freezes for some seconds and comes back. If you now press the "return" button glest client crashes

- server opens with more than 1 open slot
client connects/disconnects several times -> server crash

- clients still connect to any open slot, not the first one ( top down order )

( Please give the clients new version numbers today we already get mixed up with the different glest3.2.4_beta1 versions .... )
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

softcoder

  • MegaGlest Team
  • Battle Machine
  • ********
  • Posts: 2,238
    • View Profile
Strange, I am not able to reproduce the following:

- connect to a non exsiting server ( any ip where no glest is running ) :
Game freezes for some seconds and comes back. If you now press the "return" button glest client crashes

- server opens with more than 1 open slot
client connects/disconnects several times -> server crash

- clients still connect to any open slot, not the first one ( top down order )

I will try (and get the boys to try)

Are you saying each change I make you want me to give the build a new name? If so would I call it 3.2.4 beta2, then beta 3 etc?

( Please give the clients new version numbers today we already get mixed up with the different glest3.2.4_beta1 versions .... )

Thanks

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,239
    • View Profile
    • http://www.titusgames.de
You don't get all these errors?
Strange, I am not able to reproduce the following:

- connect to a non exsiting server ( any ip where no glest is running ) :
Game freezes for some seconds and comes back. If you now press the "return" button glest client crashes

- server opens with more than 1 open slot
client connects/disconnects several times -> server crash

- clients still connect to any open slot, not the first one ( top down order )

I will try (and get the boys to try)
Maybe I used the wrong version?
Quote
Are you saying each change I make you want me to give the build a new name? If so would I call it 3.2.4 beta2, then beta 3 etc?

( Please give the clients new version numbers today we already get mixed up with the different glest3.2.4_beta1 versions .... )

Thanks
yes, every version a new number! Maybe the bugs i found are a result of this version trouble?
I download again and try it....

Update:
More infos for the the first error:
My server usually runs at 172.20.100.103 , but today he got the 172.20.100.104 from the DHCP server. So we tried to contact the 103.
after trying to connect the game feezes ( or is extremly slow )  and when you press the return button on the client after this, it crashes. Reproducable every time here.

the log of the client( first I successfully connected to 103 )
Code: [Select]
#2 Error connecting socket for IP: 172.20.100.103 for Port: 61357 err = -1 errno = 115 [Operation now in progress]EINPROGRESS in connect() - selec
ting
Apparent recovery for connection sock = 15, err = 1, errno = 0
Valid recovery for connection sock = 15, err = 1, errno = 0
#2 Error connecting socket for IP: 172.20.100.104 for Port: 61357 err = -1 errno = 115 [Operation now in progress]EINPROGRESS in connect() - selec
ting
In [glest_game/main/program.cpp::setState] START
In [glest_game/main/program.cpp::setState] A
In [glest_game/main/program.cpp::setState] B
In [glest_game/main/program.cpp::setState] C
In [glest_game/main/program.cpp::setState] END
In [glest_game/main/program.cpp::setState] START
In [glest_game/main/program.cpp::setState] A
In [glest_game/main/program.cpp::setState] B
In [glest_game/main/program.cpp::setState] C
In [glest_game/main/program.cpp::setState] END
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 84
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 1
In [glest_game/network/network_interface.cpp::receiveMessage]
In [glest_game/network/network_message.cpp::receive] dataSize = 84
In [glest_game/network/client_interface.cpp::updateLobby] got NetworkMessageIntro
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 15, bytesSent = 84
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 15, bytesSent = 130
In [glest_game/network/client_interface.cpp::close] START
In [shared_lib/sources/platform/posix/socket.cpp::~Socket] START closing socket = 15...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] START closing socket = 15...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] END closing socket = -1...
In [shared_lib/sources/platform/posix/socket.cpp::~Socket] END closing socket = -1...
Couldn't process event: Error in delayed connection() 113 - No route to host
 (Error: Operation now in progress)
Restarting audio source because of buffer underrun.

Update2:
I forgot to mention, I used the megaglest package.
« Last Edit: 26 January 2010, 21:48:08 by titi »
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

Omega

  • MegaGlest Team
  • Dragon
  • ********
  • Posts: 6,167
  • Professional bug writer
    • View Profile
    • Personal site
Concerning version numbering, I admit that I think that a new number should only be version, including minor, should only be used for at least one new or changed feature. I can't help but feel that bug fixes should either be a micro number (a forth one, like 3.2.2.x) or a letter (like how GAE did: 0.2.12b).

Of course, the choice is yours and its not too big of a deal. On the other hand, if a bug is major, or there was a lot of changes, perhaps a minor (or sub [2nd] number is needed).

This might be interesting: http://en.wikipedia.org/wiki/Software_versioning
Edit the MegaGlest wiki: http://docs.megaglest.org/

My personal projects: http://github.com/KatrinaHoffert

softcoder

  • MegaGlest Team
  • Battle Machine
  • ********
  • Posts: 2,238
    • View Profile

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,239
    • View Profile
    • http://www.titusgames.de
Looks good! I didn't find any more problems at the moment!

Now lets test a bit with online gaming...
Everyone who reads this, lets test the new megaglest!
What do you need to have a compatible/playable version?

The Binary:
Here is the official binary release for for this test ( currently linux32 only ):
http://www.titusgames.de/megaglest3.2.4-1-beta1_i386_linux_bin.tar.bz2

The Data:
Lets simply start with the official glest data from glest 3.2.2:
( best way to get it is installing glest 3.2.2 with this installer: http://www.liflg.org/?catid=6&gameid=87)

At 9:00 AM boardtime we meet in the irc


 http://webchat.freenode.net/?channels=glest
« Last Edit: 27 January 2010, 19:20:02 by titi »
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

GonArchimago

  • Guest
The Binary:
Here is the official binary release for for this test ( currently linux32 only ):
http://www.titusgames.de/megaglest3.2.4-1-beta1_i386_linux_bin.tar.bz2

It only works in Linux ???  >:( >:(

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,239
    • View Profile
    • http://www.titusgames.de
I have no working windows here and I cannot build windows binaries. I think you have to wait.
I think both developers are using linux so this is the focussed platfom for the moment, but there will be windows binaries available if everything works ( or someone builds them )
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,239
    • View Profile
    • http://www.titusgames.de
First online result, an ingame crash  :'( :

The client crashed while playing
last lines of the client log:
Code: [Select]
...
In [glest_game/network/network_message.cpp::receive] dataSize = 904
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 904
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 5
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 904
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 5
In [glest_game/network/network_interface.cpp::receiveMessage]
In [glest_game/network/network_message.cpp::receive] dataSize = 904
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] START closing socket = 18...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] END closing socket = -1...
[shared_lib/sources/platform/posix/socket.cpp::isConnected] DISCONNECTED SOCKET error while peeking isconnected socket data, err = 0, errno = 11 [Resource temporarily unavailable]
Exception: Disconnected
Game
World
Minimap
Tech tree
Tileset
Cells

the server ( I hope I got the important part ):
Code: [Select]
...
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 16, bytesSent = 904
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] select detected data imaxsocket = 16...
In [hasDataToRead] FD_ISSET true for socket 16...
In [shared_lib/sources/platform/posix/socket.cpp::hasDataToRead] socketTriggeredList->size() = 1
In [glest_game/network/server_interface.cpp::update] hasData == true
In [glest_game/network/server_interface.cpp::update] hasData == true
In [glest_game/network/server_interface.cpp::update] socketTriggeredList[i] = 1
In [glest_game/network/server_interface.cpp::update] calling slots[i]->update() for slots[i]->getSocket()->getSocketId() = 16
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() dataSize = 904
In [glest_game/network/network_interface.cpp::getNextMessageType] socket->getDataToRead() iPeek = 1, messageType = 5
In [glest_game/network/connection_slot.cpp::update] got nmtCommandList
In [glest_game/network/network_interface.cpp::receiveMessage]
In [glest_game/network/network_message.cpp::receive] dataSize = 904
In [glest_game/network/server_interface.cpp::update] calling connectionSlot->getNextMessageType() for slots[i]->getSocket()->getSocketId() = 16
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 16, bytesSent = 904
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1

...
...

In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 16, bytesSent = 904
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 16, bytesSent = 904
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 16, bytesSent = 904
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 16, bytesSent = 904
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::broadcastMessage] before sendMessage
In [shared_lib/sources/platform/posix/socket.cpp::send] sock = 16, bytesSent = 904
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::update] socketTriggeredList.size() = 1
In [glest_game/network/server_interface.cpp::broadcastMessage] #1 before removeSlot for slot# 3
In [glest_game/network/server_interface.cpp::removeSlot] START
In [glest_game/network/connection_slot.cpp::~ConnectionSlot] START
In [glest_game/network/connection_slot.cpp::close] START
In [shared_lib/sources/platform/posix/socket.cpp::~Socket] START closing socket = 16...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] START closing socket = 16...
In [shared_lib/sources/platform/posix/socket.cpp::disconnectSocket] END closing socket = -1...
In [shared_lib/sources/platform/posix/socket.cpp::~Socket] END closing socket = -1...
In [glest_game/network/connection_slot.cpp::close] END
In [glest_game/network/connection_slot.cpp::~ConnectionSlot] END
In [glest_game/network/server_interface.cpp::removeSlot] END
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

softcoder

  • MegaGlest Team
  • Battle Machine
  • ********
  • Posts: 2,238
    • View Profile
Updates at:

mega glest - http://soft-haus.com/glest/code/megaglest-source-3.2.4-2-beta1.7z
regular glest patch - http://soft-haus.com/glest/code/glest_patch_2010_jan_27-1.diff

Thanks

P.S. many of these bugs are from original glest network code but are showing up since the network code runs faster.

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,239
    • View Profile
    • http://www.titusgames.de
If anyone has time to test come to the irc, I'm online for the next 2 hours!

 http://webchat.freenode.net/?channels=glest

the current binary:
A.) http://www.titusgames.de/megaglest3.2.4-1-beta1_i386_linux_bin.tar.bz2
B.) http://www.titusgames.de/glest_3.2.4-2-beta1_i386_linux.7z

download A) and replace glest.bin with the one from B) . ( I currently have problems with uploading thats why it is a bit complicated )

( I also learned today that i have to add more libs to a binary distribution they are included in A) now. Thanks PolitikerNeu )
« Last Edit: 27 January 2010, 20:47:07 by titi »
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

 

anything