springlobby / springlobby

SpringLobby is a free cross-platform lobby client for the Spring RTS project
https://springlobby.springrts.com
GNU General Public License v2.0
81 stars 45 forks source link

rejoing a running game seems to not work always #552

Open abma opened 9 years ago

abma commented 9 years ago

when trying to join a game under linux the connection failed due to "incorrect password" when one previously had joined the same game under windows.

in other words:

spectating a game, then switching computer and then spectating the same again using the same username leads to:

"invalid password" message from spring

not sure how/if that can changed without changing lobby server

abma commented 9 years ago

hmm, in theory the lobby server (re)sends the password:

http://springrts.com/dl/LobbyProtocol/ProtocolDescription.html#JOINEDBATTLE:server

abma commented 9 years ago

practically it does send it, too:

https://github.com/spring/uberserver/blob/master/protocol/Protocol.py#L1857

abma commented 9 years ago

oh, springlobby very likely overwrites the password which is already set

edit:

oh, its more worse: when a client disconnects, the password is deleted/lost at lobby server

specing commented 6 years ago

So this is an uberserver bug?

abma commented 6 years ago

no: thats a missing feature i guess. switching computers and then rejoin the same battle with the same username is a VERY specific problem.

basicly spring should allow to add a new user with a different password when this happens. idk if spads or spring fails here.

as workarround uberserver could store all users / passwords and delete users which aren't inside the battle when a battle ends.

not sure if its worth the work as thats a VERY unusual usecase.