Botterino allows automation of hosting and posting of /r/picturegame coordinates rounds
When running botterino, if you win a round, your round will automatically be posted. It will reply with 'x' or '+correct' to any comments on your round automatically, with configurable tolerances.
- All the files you interact with will live in the botterino-config folder which is located:
- windows:
C:\Users\your username\botterino-config
- mac:
/Users/<your username/botterino-config
- linux:
~/botterino-config
These files are created for you the first time you run the bot
- windows:
- You must have Python installed on your computer
- If on windows it is best to install python from the microsoft store
- Install the bot
- open a terminal or command prompt window and type the following command:
pip install botterino
- open a terminal or command prompt window and type the following command:
- You must create a Reddit app and add authentication details in
botterino-config/praw.ini
; seesample-praw.ini
(on github) for an example- Give app any name you choose, such as 'botterino'
- Choose 'script' as app type
- Fill in 'redirect URI' with
http://localhost:8080
(This is irrelevant unless OAuth2 is used,but it's a required field) - Once created, you'll have a 'secret', copy/paste that as
client_secret
in botterino-config/praw.ini - You'll also have a less obvious client id, in the top left under the app name and the words 'personal use script' - copy/paste that into
client_id
in praw.ini
- Fill out the rest of 'botterino-config/praw.ini' with your Reddit username/password as well as anything you want for
user_agent
- add round(s) in botterino-config/rounds/rounds.yaml. See sample-rounds.yaml on botterino github page for information on round syntax and types of features supported.
- run with
python -m botterino
- The ui can be launched with
python -m botterino.ui
- Through the ui you can automatically populate rounds.yaml and start/stop the bot
Rounds are kept in the 'rounds/rounds.yaml' file, see 'sample.yaml' for some examples
- Add round(s) to 'botterino-config/rounds/rounds.yaml'
- Open a terminal or command prompt and type
python -m botterino
- Then all you have to do is win. Until you win, botterino will do nothing
- When you win, the top round in rounds.yaml is posted as soon as you are approved to host
Any new rounds added to 'botterino-config/rounds/rounds.yaml' while the app is running will automatically be added to the queue, no need to restart. Once a round is complete, it will be moved to 'botterino-config/rounds/archive.yaml'.
Botterino can be used on a round that is already live
This is useful for cases where
- You post manually and decide you would like bot to host
- Bot posts for you but crashes during hosting for some reason
- Will use the top round in rounds.yaml
url
field should be omitted
- Run with
python -m botterino.failure
Botterino can schedule hints and post them automatically.
The file botterino-config/hints.yaml
will be scanned for entries with the same key
as the corresponding entry in botterino-config/rounds.yaml
. See sample-hints.yaml
for syntax.
Options such as correct message and incorrect message can be customized in botterino-config/config.ini
Update this botterino with
pip install --upgrade botterino
- Bot does not run, crash message shows 403 error, everything in praw.ini looks correct
- try a different user agent
This botterino uses colorful output. If you see strange output like this on windows then download Windows terminal from the Microsoft store.