Cockatrice: unable to rejoin private room on reconnect

Created on 22 Nov 2020  路  7Comments  路  Source: Cockatrice/Cockatrice

@ebbit1q Here's what I just did:

  • My friend created a password protected room on Chickatrice
  • I entered the room, placed some cards in the table
  • Took off my internet connection, got this:

image

  • Reconnected, verified my internet is fine, and then clicked OK on the error dialog above.

  • The following dialog appeared immediately:

image

I chose Chickatrice again, added the same username and password that I used in the first time, and then the following error message appeared:

image

Also, at this moment the game room that was open (paused in the last state before I lost connection) closed itself automatically.

_Originally posted by @papb in https://github.com/Cockatrice/Cockatrice/issues/3939#issuecomment-731636267_

App - Cockatrice Bug Defect - Basic Medium Priority

All 7 comments

I chose Chickatrice again, added the same username and password that I used in the first time, and then the following error message appeared:

image

Do you possibly use an unregistered account for joining Chickatrice? @papb


It's totally normal to receive that exact message on every single connect (as unregistered user on Chickatrice) as the server tries to join all server rooms on connect. Chickatrice has one room which is only accessible for registered users...
Untitled

That's not an issue with Chickatrice, but Cockatrice. (--> https://github.com/Cockatrice/Cockatrice/issues/2470)


I know that this doesn't help with your private game room, but we need to pinpoint the exact problem first.

Hello! Thank you @ebbit1q for creating this for me, I missed the part in which you said to create a new ticket instead of commenting there.

Debug Log:

Client Version: 2.7.0 (2019-03-04)
Client Operating System: Windows 7 SP 1 (6.1)
Build Architecture: 64-bit
Qt Version: 5.9.7
System Locale: pt_BR
Install Mode: Portable
---------------------------------------------------------------------------
Portable mode enabled
Theme changed: "Default"
SoundEngine: disabling sound
Sound theme changed: "Default"
SoundEngine: disabling sound
Language changed: ""
main(): starting main program
Spoilers Disabled
CardDatabase::loadCardDatabases start
[CockatriceXml3Parser] Trying to parse:  "E:/Portable/Cockatrice/data/cards.xml"
[CockatriceXml3Parser] Parsing failed: wrong version 4
[CockatriceXml4Parser] Trying to parse:  "E:/Portable/Cockatrice/data/cards.xml"
main(): MainWindow constructor finished
main(): ui.show() finished
[CardDatabase] loadCardDatabase(): Path = "E:/Portable/Cockatrice/data/cards.xml" Status = 0 Cards = 21752 Sets= 506
[CockatriceXml3Parser] Trying to parse:  "E:/Portable/Cockatrice/data/tokens.xml"
[CockatriceXml3Parser] Parsing failed: wrong version 4
[CockatriceXml4Parser] Trying to parse:  "E:/Portable/Cockatrice/data/tokens.xml"
[CockatriceXml4Parser] Unknown item "info" , trying to continue anyway
[CardDatabase] loadCardDatabase(): Path = "E:/Portable/Cockatrice/data/tokens.xml" Status = 0 Cards = 22235 Sets= 506
[CardDatabase] loadCardDatabase(): Path = "E:/Portable/Cockatrice/data/spoiler.xml" Status = 4 Cards = 22235 Sets= 506
CardDatabase::loadCardDatabases success

Do you possibly use an unregistered account for joining Chickatrice? @papb

Hi @tooomm, yes I think I do. In fact I didn't even know there was such a thing as registering an account. What I've always done is simply put a random name into the username input:

image

Sometimes I also created a random password, sometimes I just click connect without typing a password. In my first few connections, I wondered why the password field existed, since it didn't seem to make any difference. Since it worked regardless, I stopped thinking about it.

I think reconnecting to games for unregistered accounts isn't implemented at all, do we need to add this?
@papb you should try registering, also your client is 5 versions behind :)

I think reconnecting to games for unregistered accounts isn't implemented at all, do we need to add this?
@papb you should try registering, also your client is 5 versions behind :)

Unregistered accounts are like Magic tokens. Once an unregistered account disconnects, it ceases to exist. There's nothing to reconnect to as an unregistered user as there are no entities to store and we don't have a method to guarantee it's the same user and not a malicious actor. Feature, not a bug.

You're right, we don't want to get into conflicts about people taking over their games with same named unregistered accounts. A way could be implemented that circumvents this by having a set timer that the name stays alive with a stored token on the client side but I guess this us just getting too complex for something as easily solved as using an email address.

Awesome!! Thank you all very much. I will try using a registered account.

:rocket:

Was this page helpful?
0 / 5 - 0 ratings

Related issues

tooomm picture tooomm  路  5Comments

micomicoa picture micomicoa  路  5Comments

Daenyth picture Daenyth  路  5Comments

tooomm picture tooomm  路  6Comments

P-rus picture P-rus  路  6Comments