These codes are intended to emulate the card game we modified for fun ( in a 2021 Las Vegas trip lol ). I already forgot the name of the original game every our modification is based on. But it's pretty much similar to UNO. We pair each two players so the game becomes a little bit more strategy (sort of, just a little), imitating Bridge.
With these codes we wanna try to find the flaws in the game balance. Hopefully we can modify more to make it better.
一副去掉两张Joker的扑克牌,52张
四名玩家围坐,互相对面的是一队,逆/顺时针依次出牌,谁先出光自己所有的牌,这一队就能获胜。
每名玩家拥有三种牌,桌面上的暗牌,桌面上的明牌,手牌。 最开始,向每个玩家派发3张桌面暗牌,3张桌面明牌,剩下的都是手牌。游戏开始,出牌的规则有:
- 除非是第一个出牌,或者是游戏重置后第一个出牌,你的出牌的数字都必须大于等于上一家出的牌。
- 有四张功能牌,分别是2,3,9,10,2是跳过自己的出牌回合,3是跳过自己和下一家的出牌回合,跳过回合意味着下一个出牌的人要应对你本来应该应对的牌,9会要求下一家出小于9的牌,10会收集所有玩家的手牌并且 洗牌重新均匀发给大家,而打出的10会被排除在游戏外,之后由你的下家来应对你本来应该应对的牌。这四种功能牌可以任意的你的回合出,也就是不受上一家出牌限制。
- 如果没有不小于上一家出牌的普通牌,也没有功能牌,那么就要收回场上所有的牌,并且游戏重置,你再出一张牌来开始新的一回合。
- 必须出完手牌,才能出桌面上的明牌;必须出完桌面上的明牌,才能出桌面上的暗牌,因为你不知道暗牌是什么,所以你是任意挑选一张,翻开,然后判定出牌是否符合上述规则,如果不符合,比如说你翻开的暗牌不是 功能牌,又比上一家出牌要小,那你就要回收场上所有的牌,如规则3。
- 所有的手牌和桌面上的明牌,在出牌时数量和花色都不重要,比如说上家出了一个黑桃4,你可以一起出方片4和梅花4,或者说上家出了两张,你可以接一张。
- 在获胜之前,也就是打出最后一张牌时,你不能打出功能牌。如果最后一张是功能牌,那你就需要收回场上所有的牌,然后如规则3。
The codes are currently implemented in Python 3.7.
Run
python game.py
- Totally random choice from all available moves
Winnings:
Player 0 | Player 1 | Player 2 | Player 3 |
---|---|---|---|
2441 | 2402 | 2545 | 2612 |
Iterations: