I have a deck containing cards where a player can draw cards from the top or bottom of the deck (faceup), or send cards back to either the top or bottom of that deck (facedown)
Everything works perfectly. When I join the game as a different player side (offline), everything works perfectly
When connected to a server, if any player returns a card to the deck, or draws a card from the top or bottom of the deck, everything works perfectly
The issue arises when a player sends a card to the bottom of the deck
For players from other sides, the card returns to the deck faceup, and the rest of the deck
disappears. The entire deck becomes a single faceup card
For the player that issued the command, the deck is completely fine, and may continue to issue
commands to and from that deck normally
Can anyone please help identify what I may have done wrong?
TIA
I had this problem some time ago, so my memory is not fresh. The issue was how I was sending a card to the bottom of a deck. I was reversing the deck, putting a card on top, and reversing it once again. I switched to putting the card atop the deck followed by the down arrow key. This was probably a better solution in any case.
I’m sending the card back to the deck exactly how you described it - putting the card atop the deck followed by the down key
Just very strange that when connected to a server, it works fine for the person placing the card to the bottom of the deck but the deck disappears for everyone else (except for one faceup card)
I’m guessing the issue is the down arrow - sending the card back to the top of the deck works fine for everyone. And I’m guessing it’s something I have done wrong otherwise this issue would have cropped up earlier
Oh, it’s a bug alright, and a beast to fix because it needs a server. For me, just using the down arrow fixed it, but something nags at me. I think there was something else, but I can’t remember what it was. I’ve used the down arrow method quite a bit since then, and I’ve never had a problem, so I’m thinking you are doing something else.
There are a couple things you can try that might tame the beast and make it a LOT easier for maintainers to fix this. First, have both players turn on their logs before and through the event. Do the logs capture the problem? If yes, then they probably won’t need a server to reproduce it.
The second thing requires a little work. In my case, a bunch of cards in the deck vanished. Where did they go? What you might do is add a report trait to each card. A card would print a report in the chat window triggered say by the F12 key. It would print its PieceName, CurrentMap, DeckName, CurrentX, and CurrentY. Next set up a piece or toolbar button to send an F12 to all cards, which would effectively do a roll call. If you did this after the error, it would tell us where the missing cards went or if they exist at all. This could also be debugging evidence.
That’s a good idea actually. I might do just that - it will be interesting to see where the cards disappear to. Initially, I might create a simple trigger that fires when the card enters any map, which then reports back everything you said after they disappear. If I don’t get any feedback at all, then I have to assume they no longer exist and will use the key method you described
And I will make sure everything is logged while I do this. Let’s see what comes up!
In the meantime I have a work-around. Luckily for me, all the decks are in a window, and cards are dealt to another window. I made the window the decks are in private and hid the window to all other players, and restricted the dealing commands. Now, only 1 player can see the window and return cards to the deck, so if this little bug occurs, the other players will not see it