Note: The code's in line doc is written in Python 3.10, so it may not be compatible with older versions of Python. For example, def foo(self) -> List | None:
. In this example the "|" character is not supported by older version of Python.
- You have a standard deck of 52 cards. AKA cards 2 - 10 and Ace - King.
- You have at least 2 players, but no more than 53 players.
- You win the game by being the only player not eliminated.
- Each player has a number. At the start of round 1 player 1 goes first and so on.
- Each player must type the suit and value of a card in the deck (i.e. Hearts 2). After that card has been called no other player can call that card. If they do then they are eliminated. So if player 1 types, "Hearts 2" and player 2 types, "Hearts 2" player 2 loses the round and is eliminated.
- If all 52 cards have been called then the player who was supposed to go next is eliminated. For example, If 51/52 cards have been called and player 1 calls Hearts 2 (assuming rule 5 is NOT broken) then player 2 is eliminated because they were supposed to go next and there are no more cards in the deck to call.
- Any player can remove the most recent card from the deck (even if no card has been called yet) as long as there is at LEAST 1 card in the deck that has NOT been called yet. For example, if all 52 cards have been called then the next player cannot ask to remove the top card. You can ask to remove the top card only ONCE per round. If you attemp to remove more than once per round your eliminated and the next round starts.
- If a player calls a card that does not exist in the standard deck they are eliminated.
- At the start of each round the deck resets, so there are 52 callable cards at the start of each round.
- At the end of each round a player WILL be eliminated (see rules 5 - 8). After a player is eliminated the player who is susposed to go next will go last. For example, if there are 5 players and player 2 is eliminated, then player 3 will go last and player 4 will go next, so the order at the start of the next round will be 4, 5, 3, 1.
- After a player calls a card everyone has 0.5 second to view the card that the player just called.
- Python 3.10 or greater