examples/game/werewolves/README.md
This is a nine-players werewolves game example built using AgentScope, showcasing multi-agent interactions, role-based gameplay, and structured output handling. Specifically, this game is consisted of
Run the following command to start the game, ensuring you have set up your DashScope API key as an environment variable.
python main.py
Note:
- You can adjust the language, model and other parameters in
main.py.- Different models may yield different game experiences.
Running the example with AgentScope Studio provides a more interactive experience.
The game is built with the ReActAgent in AgentScope, utilizing its ability to generate structured outputs to
control the game flow and interactions.
We also use the MsgHub and pipelines in AgentScope to manage the complex interactions like discussion and voting.
It's very interesting to see how agents play the werewolf game with different roles and objectives.
The game is played in English by default. Just uncomment the following line in game.py to switch to Chinese.
# from prompt import ChinesePrompts as Prompts
You can replace one of the agents with a UserAgent to play with AI agents.
Just modify the model parameter in main.py to try different models. Note you need to change the formatter at the same time to match the model's output format.
The game supports Text-to-Speech functionality. To enable TTS:
In main.py:
import random
from agentscope.tts import DashScopeTTSModel
tts_model parameter in the get_official_agents function:
tts_model=DashScopeTTSModel(
api_key=os.environ.get("DASHSCOPE_API_KEY"),
model_name="qwen3-tts-flash",
voice=random.choice(["Cherry", "Serena", "Ethan", "Chelsie"]),
stream=True,
),
In game.py (optional, for moderator TTS):
import random
from agentscope.tts import DashScopeTTSModel
tts_model parameter in the moderator initialization:
tts_model=DashScopeTTSModel(
api_key=os.environ.get("DASHSCOPE_API_KEY"),
model_name="qwen3-tts-flash",
voice=random.choice(["Cherry", "Serena", "Ethan", "Chelsie"]),
stream=True,
),
Set up your API key:
DASHSCOPE_API_KEY environment variable.After enabling TTS, the game will synthesize speech for player messages and moderator announcements, providing a more immersive audio experience.