Debugging multiplayer network timeouts

Describe your experience with the latest version of FreeOrion to help us improve it.

Moderator: Oberlus

Forum rules
Always mention the exact version of FreeOrion you are testing.

When reporting an issue regarding the AI, if possible provide the relevant AI log file and a save game file that demonstrates the issue.
Post Reply
Message
Author
Magnate
Space Dragon
Posts: 425
Joined: Sat Nov 08, 2014 3:44 pm

Debugging multiplayer network timeouts

#1 Post by Magnate »

Hi all,

I play a lot of fairly slow multiplayer with a friend, and the network connection gets lots whenever one of us is AFK for more than about 15 mins. A dialog pops up saying "A saved game is in progress" which stays there forever unless you click Exit Without Saving, which leaves the game.

Assuming this isn't intentional, I'd be very keen to help debug it. I don't have the tools to build from source, but I'll happily install development versions, time how long it takes to crash, try reproducible things etc.

Ideally I'd like to be able to leave the game running 24/7 for days on end without anyone getting disconnected.

CC

User avatar
Dilvish
AI Lead and Programmer Emeritus
Posts: 4768
Joined: Sat Sep 22, 2012 6:25 pm

Re: Debugging multiplayer network timeouts

#2 Post by Dilvish »

I don't think that is intentional, and we're always glad to have help. The tools to build from source are free, but if you are not into programming I understand you might not want to pursue that route.

What version are you playing? You might actually be able to see some improvement with the most recent test version (here for Windows, here for MacOSX), because of some recent work that was directed towards the general issue of restoring player connections.
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

o01eg
Programmer
Posts: 2004
Joined: Sat Dec 10, 2011 5:46 am

Re: Debugging multiplayer network timeouts

#3 Post by o01eg »

I also got same issue with my public server when leaving client in multiplayer lobby. When I'd closed client the server didn't noticed about disconnection.
It works only for authenticated users. Maybe implement some "cookie" system to enable restoring connection for unauthenticated one? Or implement pinging connection with some period?
Gentoo Linux x64, gcc-11.2, boost-1.78.0
Ubuntu Server 22.04 x64, gcc-12, boost-1.74.0
Welcome to the slow multiplayer game at freeorion-lt.dedyn.io.Version 2024-03-15.b3de094.
Donations're welcome:BTC:bc1q007qldm6eppqcukewtfkfcj0naut9njj7audnm

Magnate
Space Dragon
Posts: 425
Joined: Sat Nov 08, 2014 3:44 pm

Re: Debugging multiplayer network timeouts

#4 Post by Magnate »

Dilvish wrote:I don't think that is intentional, and we're always glad to have help. The tools to build from source are free, but if you are not into programming I understand you might not want to pursue that route.

What version are you playing? You might actually be able to see some improvement with the most recent test version (here for Windows, here for MacOSX), because of some recent work that was directed towards the general issue of restoring player connections.
Thanks. Weirdly, after I wrote that, it didn't crash all night last night. But as soon as I tried to save the game this morning (anticipating a crash when I clicked End Turn), it crashed again. So I wonder if it is something to do with (auto)saving.

But the first thing is to update to the latest development version and report back. So far I've been sticking with 0.4.7.1 (which is excellent btw).

CC

o01eg
Programmer
Posts: 2004
Joined: Sat Dec 10, 2011 5:46 am

Re: Debugging multiplayer network timeouts

#5 Post by o01eg »

o01eg wrote:Maybe implement some "cookie" system to enable restoring connection for unauthenticated one?
There is one: https://github.com/freeorion/freeorion/pull/2067
Gentoo Linux x64, gcc-11.2, boost-1.78.0
Ubuntu Server 22.04 x64, gcc-12, boost-1.74.0
Welcome to the slow multiplayer game at freeorion-lt.dedyn.io.Version 2024-03-15.b3de094.
Donations're welcome:BTC:bc1q007qldm6eppqcukewtfkfcj0naut9njj7audnm

Post Reply