I think i don't know what to say about it maybe
Warning
You should not host this bot yourself, it is annoying
Invite this hosted instance if you want to maybe try it
Make sure you have the following installed:
- Python (3.6 or higher)
- PostgreSQL
- Git
I think you should use a virtual environment to manage dependencies:
# Create a virtual environment
python -m venv myenv
# Activate the virtual environment
# For Windows
myenv\Scripts\activate
# For macOS / Linux
source myenv/bin/activate
Also ensure all required Python modules are installed or it won't work ever:
(./venv)
pip install -r requirements.txt
This bot uses PostgreSQL for its database (finally)
the PostgreSQL schema in question
CREATE TABLE public.profiles (
id bigint NOT NULL,
socials jsonb DEFAULT '{}'::jsonb,
cake jsonb,
exp bigint DEFAULT 0,
level bigint DEFAULT 0,
levels_enabled boolean DEFAULT true,
profile_private boolean DEFAULT false,
tests_enabled boolean DEFAULT false,
rep_value bigint DEFAULT 0,
rep_time bigint DEFAULT 0,
follows jsonb DEFAULT '{"followers": [], "following": []}'::jsonb
);
ALTER TABLE public.profiles OWNER TO postgres;
CREATE TABLE public.reminders (
id bigint NOT NULL,
task text,
private boolean,
channel text,
reminder_id text NOT NULL,
remind_time bigint
);
ALTER TABLE public.reminders OWNER TO postgres;
CREATE TABLE public.servers (
id bigint NOT NULL,
levels_enabled boolean DEFAULT true,
welcome_type numeric DEFAULT 0,
features BOOLEAN DEFAULT TRUE
);
ALTER TABLE public.servers OWNER TO postgres;
ALTER TABLE ONLY public.profiles
ADD CONSTRAINT profiles_pkey PRIMARY KEY (id);
ALTER TABLE ONLY public.servers
ADD CONSTRAINT servers_pkey PRIMARY KEY (id);
By default the bot connects to localhost
and uses the database catness-db
and the password catness
You can change it in playground.py
- Rename
config.toml.example
to remove theexample
- Fill in the API keys and also the other things in
config.toml
Here's an example of how config.toml
should look:
### super secret things
[keys]
TOKEN = "YOUR_DISCORD_TOKEN_HERE"
LASTFM = "YOUR_LASTFM_API_KEY_HERE"
STEAM = "YOUR_STEAM_API_KEY_HERE"
TENOR = "YOUR_TENOR_API_KEY_HERE"
MAKESWEET = "YOUR_MAKESWEET_API_KEY_HERE"
OPENAI = "YOUR_OPENAI_API_KEY_HERE"
### actual config
[bot_config]
prefix = "!"
report_channel = 1234
### statuses the bot will cycle through.
catchphrases = [
]
[db_config]
user = "postgres"
password = "admin"
database = "catness-db"
command_timeout = 30
max_size = 10
min_size = 5
[ids]
### user IDs for contributors
contributors = [
]
### user IDs for friends
special = [
]
### user IDs for the bot owners (Include yourself)
owners = [
]
There are a few hardcoded variables (can't be bothered to list them)
To customize the emojis used in the bot, replace the emojis in ./utils/data.py
with those that you uploaded to a server
Defaults are found in ./media/emoji_images/
Important
I just wanted to write this for fun
You can use this setup guide to test your bot before making pull requests
If i find out what you did i will be very upset
These colored things are very pretty
I would very very love it if you could maybe contribute if you have maybe nice ideas
- Fork and clone
- Make the changes
- Pull request then have some rest and then i will merge it one day
making readmes is very fun