- Majority vote will still select that mode unconditionally - When there is no majority vote, the game mode is decided in a two-step process: 1. The bot will first try to select a game mode among those voted vs a random gamemode (for the purpose of this, all players who did not vote are considered to have voted for a random gamemode). For example, in an 8 player game if there are 2 votes for foolish, 2 votes for aleatoire, and 1 vote for default, one of `{foolish, foolish, aleatoire, aleatoire, default, random gamemode, random gamemode, random gamemode}` will be chosen (25% foolish, 25% alea, 12.5% default, 37.5% random gamemode) 2. If random gamemode is selected, a random mode is selected according to the base likelihoods. Votes do not modify this anymore Votes which are for majority-only modes or modes with incorrect player counts are not counted (and treated as votes for a random gamemode instead) |
||
---|---|---|
messages | ||
oyoyo | ||
roles | ||
src | ||
.gitignore | ||
.mailmap | ||
botconfig.py.example | ||
CONTRIBUTING.md | ||
gamemodes.py.example | ||
LICENSE | ||
messages.json.example | ||
README.md | ||
requirements.txt | ||
wolfbot.py |
This is the Werewolf game bot for ##werewolf on freenode. It's a fork of lycanthrope, which was the last bot used in #wolfgame before it died.
We have an active community, and we'd love for you to join us!
Running your own copy
You need Python 3.3 or newer to run the bot. Python 3.4 and higher is recommended.
SQLite3 is required for the bot's database. If compiling Python from source, you may need to install the appropriate SQLite3 development libraries for your distribution first.
Copy botconfig.py.example
to botconfig.py
and modify the settings as needed. You can also copy-paste individual settings from src/settings.py
into botconfig.py
if you want to modify them. You may also add or customize your own game modes by renaming gamemodes.py.example
to gamemodes.py
and using the same layout used in src/gamemodes.py
.
Note: you should never alter files under the src
folder directly (unless you are submitting a change to the code), use botconfig.py
and gamemodes.py
for related changes.
To start the bot, run ./wolfbot.py
. You can use --verbose
to log all raw IRC messages and --debug
to enable some debugging features. These options should not be used in production.