Funny stuff with decks

Well, not ha-ha funny, odd funny.

  1. In the Monopoly module, I want to be able to suppress the Sale commands on hotels if there are insufficient houses left (that is, less than 4 houses left in the tray). A rare circumstance, but it happens. The hotels and houses are both kept in ‘Decks’ of the same name. So, presumably, the number of pieces in the Houses deck is stored in a property called Houses_numPieces.

I set a Restrict Command on the Hotel prototype to hide the Sale command if {Houses_numPieces < 4}. But it always hides the Sale commands, even if the Houses deck is full of houses (for example, even if it has all 32 remaining). Is this the correct syntax for the condition?

  1. In the same module, it turns out that according to the official rules, the two card decks are only supposed to be shuffled once at game start, and then never again. The order of the cards remains the same throughout the game. (Who knew?) This seems like a natural for an At-Start GKC to run at game launch to do this automatically.

I have set a ‘hotkey’ on each deck to do a manual shuffle (Ctrl F).

The use of ‘hotkey’ here, however, confuses me. Is this something that can be done directly with a GKC? Because the at-start GKC is not doing the trick. (I’m assuming a GKC will only affect individual pieces, not decks themselves.)

So maybe I need to have the at-start GKC trigger some piece that has a ‘Global Hotkey’ trait set on it, which in turn triggers the shuffle?

Or is it by some other method? For example, a card deck can send a hotkey to another card deck (like having a main deck send a hotkey to a discard pile).

Can anyone clarify how this would be done?

I’ll let someone else address the shuffle problem but as far as the other…

Is the deck of houses on the main board? numPieces will only work if you are using it on the same board as the deck. If the deck is on a different board than that board you’re using the numPieces variable on, the result will always be zero. Therefore, the Sale command will always be restricted.

If they are on the same board, make sure the house deck properties has the “Perform counting of property expressions?” checked. You don’t need to add an expression, but it does need to be checked to use the numPieces variable.

Side note: Is there a reason the other decks need to be shuffled only once? If they are set to always shuffle, all that really means is that when a card is drawn, it will be a random card. If I recall my Monopoly rules from the past, I can’t think of any reason why the deck would need to be set in a specific shuffled order.

Good call, Doctor. The Houses deck is indeed on a different board, and now the situation makes sense. I wasn’t aware of this limitation on numPieces. It isn’t a very common circumstance in this particular game, so I won’t worry about it. But I will definitely add a note to the Designer’s Guide about the limitation on the property. Thanks.

As for the shuffling once: I’ve been reading on some Monopoly FAQs that the cards are only shuffled once at game start and then the order is retained. For example, see here: mospaw.com/monopoly/commonly-mis … nformation

In late stages of the game, since the order is the same, an observant player can actually predict the next card to be drawn and even base some strategy on it. This surprised me, but it’s an official rule. (I think many people are used to playing that game with house rules that the official rules can be surprising.) Previous versions of the module were set to Always Reshuffle the cards, but this turns out not to be correct.

That’s interesting. I’ve been told that most people who play Monopoly don’t really know all the official rules. Apparently, I’m one of them (grin).

Turns out I got this to work by setting up an invisible ‘shuffler’ piece, which includes a Global Hotkey (Ctrl F) and is triggered by the at-start GKC. So now both decks will auto-shuffle at game start.