Eric Botti commited on
Commit
1108bdd
·
1 Parent(s): c7c80d3

README Updates

Browse files
Files changed (3) hide show
  1. GAME_RULES.MD +18 -0
  2. README.md +16 -15
  3. src/prompts.py +3 -18
GAME_RULES.MD ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ## Game Rules
2
+
3
+ You are playing a social deduction game where every player pretends the be the same animal.
4
+ During the round each player gets a turn to describe themselves using an "I"-statement as if they were the animal.
5
+ All but one of players know what animal they are pretending to be, collectively these players are called the Herd.
6
+ The remaining player, known as the Chameleon, does not know what animal the others are pretending to be.
7
+ The Chameleon must blend in by providing details about the animal using context from other players.
8
+ The Herd must be careful not to give away too much information with their responses so that Chameleon deduce the animal.
9
+
10
+ After all players have spoken, two thing will happen:
11
+ 1. The Chameleon will guess what animal the other players are pretending to be
12
+ 2. The Herd will vote on who they think the Chameleon is.
13
+
14
+ The game is played in rounds, and the first player to reach 7 points wins. Points are awarded during a round as follows:
15
+ - If the majority of the Herd does not vote for the Chameleon, the Chameleon gets +1 point
16
+ - If the Chameleon guesses the animal correctly, they get +1 point
17
+ - If a member of the Herd votes for the Chameleon, they get +1 point
18
+ - If the Chameleon is unable to guess the animal, each member of the Herd gets +1 point
README.md CHANGED
@@ -2,26 +2,27 @@
2
 
3
  *A social deduction game powered by LLMs*
4
 
5
- ## Game Rules
6
 
7
- Chameleon is a social deduction game (a la Mafia, Among Us, etc.) about blending in, and finding out who doesn't belong.
8
 
 
9
 
10
  At the start of the game, each player is assigned one of two roles:
11
- - **The Herd**: The herd is a group of players who are all the same animal. They are trying to identify the chameleon hidden amongst them, while keeping the true animal a secret.
12
- - **The Chameleon**: The chameleon is pretending to be part of the herd. Their goal is to identify what animal the herd is while remaining undetected.
13
 
14
- Each round, all players say something about themselves, in the form of a "I am a/have/do/etc..." sentence in 10 words or less.
15
 
16
- After all players have spoken, the Chameleon is given the choice to guess what animal the herd is. If they guess correctly, they win. If they guess incorrectly, the herd wins.
17
 
18
- If the Chameleon chooses not to guess the herd then votes on what player they think the Chameleon is.
19
- If the majority of the herd votes for the Chameleon, the herd wins. If the majority of the herd votes for a member of the herd, the Chameleon wins.
 
 
 
 
 
 
 
20
 
21
- Example Round:
22
- *The secret animal is an owl Owl*
23
- Herd player 1: I have sharp claws.
24
- Herd player 2: I am a creature of the night.
25
- Herd player 3: I soar the skies looking for prey.
26
- Herd player 4: I have a keen eye.
27
- Chameleon: I am a predator.
 
2
 
3
  *A social deduction game powered by LLMs*
4
 
5
+ [Play Now](https://huggingface.co/spaces/ericbotti/chameleon)
6
 
7
+ ## Description
8
 
9
+ Chameleon is a social deduction game (a la Mafia, Among Us, etc.) about blending in, and figuring out who doesn't belong.
10
 
11
  At the start of the game, each player is assigned one of two roles:
12
+ - **Herd**: The herd is a group of players who are all the same animal. They are trying to identify the chameleon hidden amongst them, while keeping the true animal a secret.
13
+ - **Chameleon**: This player is pretending to be part of the herd. Their goal is to identify what animal the herd is while remaining undetected.
14
 
15
+ See the [game rules file](GAME_RULES.md) for more details.
16
 
17
+ ## Running the Game
18
 
19
+ The Easiest way to play the game is to use [Hugging Face Space Demo](https://huggingface.co/spaces/ericbotti/chameleon)
20
+
21
+ If you want to run the game locally, you can clone the repository and run the game using the command line or the Streamlit app.
22
+
23
+ 1. **Using the command line**:
24
+ - Run `python src/main.py` from the root directory
25
+
26
+ 2. **Using the Streamlit App**:
27
+ - Run `streamlit run src/app.py` from the root directory
28
 
 
 
 
 
 
 
 
src/prompts.py CHANGED
@@ -8,24 +8,9 @@ def format_prompt(prompt_name, **kwargs):
8
  return fetch_prompt(prompt_name).format(**kwargs)
9
 
10
 
11
- _game_rules = '''\
12
- You are playing a social deduction game where every player pretends the be the same animal.
13
- During the round each player gets a turn to describe themselves using an "I"-statement as if they were the animal.
14
- All but one of players know what animal they are pretending to be, collectively these players are called the Herd.
15
- The remaining player, known as the Chameleon, does not know what animal the others are pretending to be.
16
- The Chameleon must blend in by providing details about the animal using context from other players.
17
- The Herd must be careful not to give away too much information with their responses so that Chameleon deduce the animal.
18
-
19
- After all players have spoken, two thing will happen:
20
- 1. The Chameleon will guess what animal the other players are pretending to be
21
- 2. The Herd will vote on who they think the Chameleon is.
22
-
23
- The game is played in rounds, and the first player to reach 7 points wins. Points are awarded during a round as follows:
24
- - If the Chameleon remains undetected, they get +1 point
25
- - If the Chameleon guesses the animal correctly, they get +1 point
26
- - If a member of the Herd votes for the Chameleon, they get +1 point
27
- - If the Chameleon is unable to guess the animal, each member of the Herd gets +1 point
28
- '''
29
 
30
  _assign_herd = """\
31
  You are a **{herd_animal}**, keep this secret at all costs and figure which player is not really a {herd_animal}
 
8
  return fetch_prompt(prompt_name).format(**kwargs)
9
 
10
 
11
+ # Get game rules from GAME_RULES.md
12
+ with open("GAME_RULES.md", "r") as file:
13
+ _game_rules = file.read()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14
 
15
  _assign_herd = """\
16
  You are a **{herd_animal}**, keep this secret at all costs and figure which player is not really a {herd_animal}