(Epic icon by @AdriTheDreamer)
On9 Word Chain Bot hosts games of word chain in Telegram groups.
- On9 Word Chain Bot (Live Version)
- Official Group
- Word Additions Channel
- Make required letter game more reasonable
- Group leaderboard
- Switch from Markdown to HTML completely
- i18n for text strings
Python 3.7+
PostgreSQL 11+
2 Telegram bots
It is highly recommended that you turn off privacy mode for On9 Word Chain Bot via @BotFather, which is on by default. Otherwise, leaving privacy mode on, the bot will only receive players' answers when they reply to the bot.
Rename config_format.json to config.json
and edit the following constants:
TOKEN
*: A Telegram bot token.ON9BOT_TOKEN
*: Another Telegram bot token for the virtual player bot.DB_URI
: A PostgresSQL database URI.PROVIDER_TOKEN
*#: A Telegram payment provider token.OWNER_ID
: Telegram user id of the bot owner.ADMIN_GROUP_ID
^: Telegram group id of the bot admin group. Error messages and word addition requests are sent here.OFFICIAL_GROUP_ID
^: Telegram group id of the official group of the bot.WORD_ADDITION_CHANNEL_ID
^: Telegram channel id of the channel to announce word additions.VIP
: A list of Telegram user ids designated as VIPs.VIP_GROUP
: A list of Telegram group ids designated as VIP groups.
*: Obtained via BotFather.
#: Optional if payment-related functions are commented out.
^: Set to the same throwaway group if these features are not used.
Create the required tables in your PostgreSQL database by running init.sql.
Install and update dependencies with pip install -Ur requirements.txt
.
Run python -m on9wordchainbot
.