Skip to content

Godototot/Telegram-Werwolf-Bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Telegram-Werwolf-Bot

A telegram bot that assists the narrator of a game of Werwolf.

Table of Content

Goal

The goal of this bot is to take away the boring and tiresome work that comes with narrating a game of Werwolf while still leaving the narrator enough room to make the game interesting and deal with unexpected situations

Technologies

Project is created with: Python: 3.8.10 with python-telegram-bot 13.8.1 with python-dotenv 0.19.2

Using the Bot

Bot Key

The unique key for the telegram bot is hidden in a personal '.env'-file. To use the code with your own bot, create this file inside the config folder and write:

BOT_KEY='key'

Permissions

To work properly the bot has to be an Admin in the group he is added to.

Commands

General

  • start : first interaction with the bot. They greet you
  • list_players : returns list of all players, sorted in "alive" and "dead"
  • list_roles : returns list of all roles that are used in this game
  • rules [rolename] : prints either all rules or the description of a specific role

Narrator

  • n_join : you join the game as the narrator if there is no narrator yet
  • start_join : starts the joining-phase and allows players to join
  • end_join : ends the joining-phase
  • choose_roles : can be executeed after joining phase has ended. let's the narrator choose the roles based on a pre-set list and the number of players
  • distr_roles : can be executed after joining phase has ended. distributes the (special) roles from the chosen list to all players
  • vote [name1][opt name2][opt name 3] : starts the voting process. The bot writes each player in PC and let's them choose one from the names through custom keyboard
  • vote_for [name][vote] : allows the narrator vote for a player
  • results : ends the voting process and returns the result in the group chat
  • kill [name] : changes the players state to dead and removes their right to write in the group chat
  • good morning : gives all alive players the rights to write in the group chat
  • good night : removes every players rights to write in the group chat
  • reset : deletes all information, including the narrators id

Player

  • join : the player has to add a name and is then added to the game. Can only be used during joining phase
  • cancel : cancels the joining process of this player
  • change_vote : can be used during the voting process to change the vote after it has already been locked in

About

A telegram bot that assists the narrator of a game of Werwolf.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages