Skip to main content

Quantum version of the werewolves party game.

Project description

Quantum Werewolf

Quantum Werewolf is a game based on the party game "The Werewolves of Millers Hollow" (known as "Weerwolven van Wakkerdam" to Dutch audiences) with a quantum mechanical twist: Players play in a superposition of possible games of werewolves!

Installation

The game is published on PyPI and can be installed using pip as follows:

$ pip install quantumwerewolf

Usage

Start the game in a terminal by running the quantumwerewolf command in a terminal.

About

What is "The Werewolves of Millers Hollow"?

The Werewolves of Millers Hollow is a classic(al) party game where each player (save the game master) gets a secret role card assigned to them. There are two teams: the werewolves and the village (consisting of all roles except the werewolves). At night, each player secretly takes an action corresponding to their role: The seer gets to see another player's card; Cupid can make two players fall in love; and the werewolves choose who they will eat that night. During the day, all players vote on another player to be lynched. The village's goal is to kill all werewolves, and the werewolves' goal is to kill all non-werewolves. When only one faction is left, they win.

What is the quantum twist?

The quantum twist introduced in Quantum Werewolf is a superposition of roles. This means that every player is every role at once, and gets to take actions corresponding to all roles at night. Of course, the superposition can be collapsed by measurements. Currently, there are two ways of measuring the superposition:

  1. A player uses his Seer action to look at someone else's role, partially collapsing the superposition (and introducing entanglement!);
  2. A player dies, which reveals his role to all players, collapsing the superposition quite a bit.

Since there is no way of knowing the final gamestate (in fact, your actions influence what the final measurement will be), it is important to players to "crack" the permutations and try to make the superposition collapse in their favour. The game is very complex, and honestly isn't much fun to play with your grandma. However, it can be used as an education tool for superpositions, or as a way to pit physicists against each other in cracking the code.

What are the rules?

Game setup

When you start a game of quantum werewolf, you are first prompted to enter the names of all participating players. After entering and confirming the list of players, you are presented with the standard role selection of a number of werewolves and the seer. You may refuse this role selection and choose the amount of werewolves as well as the additional roles.

A game of quantum werewolf needs at least 1 werewolf, optional roles are:

  • Seer: Inspects the identity of a player each night, revealing their role to the seer.
  • Cupid: Chooses two players to fall in love during the first night. Whenever one of the lovers dies, the other dies as well. The lovers win if they are the only 2 players left, regardless of role.
  • Hunter: Whenever the hunter dies, they may choose to kill another player.

You should decide on the rules to follow during the day phase. For example a popular vote with a mayor as tiebreaker.

Night phase

During the night all special roles get to take their specific actions. In quantum werewolf all players will take all their actions in turns. During your turn you must specify how you would act as each role. You are only promted for actions corresponding to roles for which you have a non-zero probability to be. At the start of your turn you will be shown all the players that are still alive and the current distribution of your own role. During your action as a werewolf you will be shown what the probability is that the other players are a werewolf together with you. Furthermore after the first round and if cupid is in the game, you will also be shown the likelihood that each other player is your lover.

Day phase

At the start of the day phase all players that have died during the night will be revealed, as will their roles (this is a measurement and partially collapses the game). After the reveal, the players are presented with the current state of the game in which all players and their chances of being each role is tabulated. All players in the table are anomymous except for dead players. The order of the players is random, but fixed throughout the game.

All players that are still alive must now discuss whoever they will lynch. This discussion is separate from the interface of the game. You should decide beforehand on the format of this discussion and how the lynch target will be decided.

References

Original "Schrödinger's Wolves" puzzle by Steven Irrgang in the 2008 CISRA puzzle competition: https://web.archive.org/web/20080719133809/http://puzzle.cisra.com.au/D-5-Schroedingers-Wolves.pdf

Original solution and explanation: https://web.archive.org/web/20181116123708/https://puzzle.cisra.com.au/2008/quantumwerewolf.html

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

quantumwerewolf-3.6.1.tar.gz (17.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

quantumwerewolf-3.6.1-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

Details for the file quantumwerewolf-3.6.1.tar.gz.

File metadata

  • Download URL: quantumwerewolf-3.6.1.tar.gz
  • Upload date:
  • Size: 17.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.21

File hashes

Hashes for quantumwerewolf-3.6.1.tar.gz
Algorithm Hash digest
SHA256 258cbb65e1e43261a0f169b6f779c509277251d933e7c6a48fd442078f0c5fdf
MD5 02b9f7482635f0ca4332dd36056560fe
BLAKE2b-256 e9ae50fa0a605a8d116ca2afc183b0b8727d3a7339fd5a4f7ccc6da59ef02544

See more details on using hashes here.

File details

Details for the file quantumwerewolf-3.6.1-py3-none-any.whl.

File metadata

File hashes

Hashes for quantumwerewolf-3.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c5ae16c6e97a12ad5200af91164a9356da4ef95bf5adc577fbf60c5408f57d62
MD5 502a78bc67f1db7b6836f75f7f08a657
BLAKE2b-256 896f7972268a11d631ddc86643b22f869a37849f4b0130a370481a758a86b21b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page