multiplayer : black screen when joining a multiplayer game

Problems and solutions for installing or running FreeOrion, including discussion of bugs if needed before posting a bug report. For problems building from source, post in Compile.
Post Reply
Message
Author
joanc
Space Krill
Posts: 9
Joined: Sat Sep 11, 2010 4:28 am

multiplayer : black screen when joining a multiplayer game

#1 Post by joanc » Wed Oct 11, 2017 3:29 am

Hello,

when I try to join a game, all i got is a black screen.
I start the game, click multiplayer, join localhost, then the freeorion window is completely black.
it doesnt change, disk is not used, cpu is not used. it stays as is until i kill it, or until i kill the server.
(the hosting freeorion is fine and plays ok)

Setup :
debian testing/unstable
using debian package 0.4.7.1-1
freeorion version : v0.4.7.1 [build ???] CMake (yes, questions marks are here in the version string)
also tried with debian package 0.4.6-4, v0.4.6 [build 2016-09-16.49f9123] CMake, same results.
(I always matched the server and the client version)
tried on 2 differents computers, one with nvidia, the other with amd/ati.
In all cases, the client connects tcp to the server on port 12346, sends strings,
and then the freeorion multiplayer client window goes black. no sound, no escape, no nothing.

the problem is repeatable 100%. I can't play multiplayer.

when I try to connect to a host with no freeorion server running, it says 'timed out while attempting to connect to server'.

with the black screen, when I kill the server, it says on the client 'the connection to the server has been lost' and
normal behavior resume (i can browse menus and click items....)


here is some data about the pc with the amd graphic card :
GL_RENDERER = Gallium 0.4 on AMD KABINI (DRM 2.48.0 / 4.9.0-3-amd64, LLVM 3.9.1)
GL_VERSION = 3.0 Mesa 13.0.6
GL_VENDOR = X.Org

00:01.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Kabini [Radeon HD 8330]

tcpflow packet dump, port 12346 :

/usr/bin/tcpflow: new flow flow[127.0.0.1:57100->127.0.0.1:12346]. path: next seq num (nsn):853014343
/usr/bin/tcpflow: process_pkt..............................................................................
/usr/bin/tcpflow: new flow flow[127.0.0.1:12346->127.0.0.1:57100]. path: next seq num (nsn):1601660622
/usr/bin/tcpflow: process_pkt..............................................................................
/usr/bin/tcpflow: process_pkt..............................................................................
127.000.000.001.57100-127.000.000.001.12346: R<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE boost_serialization>
<boost_serialization signature="serialization::archive" version="14">
<player_name>Human_Player</player_name>
<client_type>1</client_type>
<client_version_string>v0.4.6 [build 2016-09-16.49f9123] CMake</client_version_string>
</boost_serialization>


/usr/bin/tcpflow: process_pkt..............................................................................

here is some data about the nividia computer
python 2.7.13-2 is installed
python 3.5.3-1 is installed

client glx vendor string: NVIDIA Corporation
client glx version string: 1.4
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce 8400 GS/PCIe/SSE2
OpenGL core profile version string: 3.3.0 NVIDIA 340.102
OpenGL core profile shading language version string: 3.30 NVIDIA via Cg compiler

Linux 4.9.0-2-amd64 #1 SMP Debian 4.9.18-1 (2017-03-30) x86_64 GNU/Linux


tcp content from : tcpflow -c -i lo 'port 12346'

/usr/bin/tcpflow: process_pkt..............................................................................
::1.54982-::1.12346: E<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE boost_serialization>
<boost_serialization signature="serialization::archive" version="14">
<player_name>Human_Player</player_name>
<client_type>1</client_type>
<client_version_string>v0.4.7.1 [build ???] CMake</client_version_string>
</boost_serialization>


/usr/bin/tcpflow: process_pkt..............................................................................

tcpdump :
23:01:45.845089 IP6 ::1.54996 > ::1.12346: Flags , seq 3673305004, win 43690, options [mss 65476,sackOK,TS val 70080884 ecr 0,nop,wscale 7], length 0
23:01:45.845121 IP6 ::1.12346 > ::1.54996: Flags [S.], seq 2008829774, ack 3673305005, win 43690, options [mss 65476,sackOK,TS val 70080884 ecr 70080884,nop,wscale 7], length 0
23:01:45.845141 IP6 ::1.54996 > ::1.12346: Flags [.], ack 2008829775, win 342, options [nop,nop,TS val 70080884 ecr 70080884], length 0
23:01:45.846647 IP6 ::1.54996 > ::1.12346: Flags [P.], seq 3673305005:3673305348, ack 2008829775, win 342, options [nop,nop,TS val 70080884 ecr 70080884], length 343
23:01:45.846679 IP6 ::1.12346 > ::1.54996: Flags [.], ack 3673305348, win 350, options [nop,nop,TS val 70080884 ecr 70080884], length 0

as we can see, connection is established and not broken.

thanks !

o01eg
Space Kraken
Posts: 176
Joined: Sat Dec 10, 2011 5:46 am

Re: multiplayer : black screen when joining a multiplayer ga

#2 Post by o01eg » Wed Oct 11, 2017 4:16 am

How do you host the game before joining?
Gentoo Linux x64, gcc-7.3, boost-1.65.0
Ubuntu Server 18.04 x64, gcc-7.3, boost-1.65.1
Welcome to multiplayer server at freeorion-test.dedyn.io.Version 0.4.8
Donates are welcome: BTC:14XLekD9ifwqLtZX4iteepvbLQNYVG87zK

joanc
Space Krill
Posts: 9
Joined: Sat Sep 11, 2010 4:28 am

Re: multiplayer : black screen when joining a multiplayer ga

#3 Post by joanc » Wed Oct 11, 2017 10:46 pm

here is what i do to start multiplayer (hosting/server) :

start freeorion,
select multiplayer
host new game
press ok
press start game
(and game starts at turn 1)

(i then use another user or another computer to connect to the server)

dbenage-cx
Programmer
Posts: 389
Joined: Sun Feb 14, 2016 12:08 am

Re: multiplayer : black screen when joining a multiplayer ga

#4 Post by dbenage-cx » Thu Oct 12, 2017 2:19 am

Hi joanc,
You will want to connect to the server with each client before clicking Start Game/Ready.
Any content posted should be considered licensed GNU GPL 2.0 and/or CC-BY-SA 3.0 as appropriate.

joanc
Space Krill
Posts: 9
Joined: Sat Sep 11, 2010 4:28 am

Re: multiplayer : black screen when joining a multiplayer ga

#5 Post by joanc » Thu Oct 12, 2017 3:08 am

Hello,

Thanks It works !

It seems to be a serious issue for usability - it should at least print "waiting server to be in 'Multiplayer Setup' screen, right ?

It was very very frustrating and I spent a few hours on it. other multiplayer games have more friendly experience.
I'll ask for a bug fix

feature request : i'd like AI to be added automatically when I load a game, exactly as if I never left it

o01eg
Space Kraken
Posts: 176
Joined: Sat Dec 10, 2011 5:46 am

Re: multiplayer : black screen when joining a multiplayer ga

#6 Post by o01eg » Thu Oct 12, 2017 4:33 am

Latest test builds shows error if you try to connect to already started game.

Yes, it's still much work in the multiplayer system to do.
Gentoo Linux x64, gcc-7.3, boost-1.65.0
Ubuntu Server 18.04 x64, gcc-7.3, boost-1.65.1
Welcome to multiplayer server at freeorion-test.dedyn.io.Version 0.4.8
Donates are welcome: BTC:14XLekD9ifwqLtZX4iteepvbLQNYVG87zK

Post Reply