Strawberry Puff Bot is a feature-rich Discord gacha bot where you can collect, upgrade, and battle with unique "puffs." Roll for new puffs, manage your lineup, compete in PvP battles, and track your stats—all with charming artwork and interactive commands. Customize your experience with settings, shop for items, and enjoy ongoing updates, all within your server!
- 🎲 Roll for Puffs: Collect random puffs of varying rarities and abilities.
- 📊 Track & Compare Stats: View your collection progress and compare with other users.
- ⚔️ PvP Battles & Lineups: Build lineups and battle friends using unique puff skills.
- 🛒 Shop & Feed: Buy items and feed your puffs to boost their power.
- ⚙️ Customizable Settings: Adjust notifications, preferences, and get help—all in one place.
- ✨ Ongoing Updates: New features and puffs added regularly!
This bot is live and is available for you to add to your Discord server whenever you want!
The bot's discord username is Strawberry Puff Bot#3856 and its App ID is 1338650603617910817. Please use this if you need help verifying my bot. Also on the bot's profile the "Copy Link" option links to the Guild Install link provided above.
By the way, currently I don't have the capabilities to have the bot running 24/7, so expect there to be lots of downtime for bot usage. Although. there happens to be a setting that pings you on startup if you're worrying about when you can play with the bot. Other then that, have fun playing with this passion project I made and make sure to thank @orchadork for the drawings!!!
Please ensure your Python version is 3.6.X and greater1. The code will not run on any earlier version of Python.
-
Clone the repository:
git clone https://github.com/TurtleGod7/Strawberry-Puff-Bot.git
-
Navigate to the project directory:
cd Strawberry-Puff-Bot -
Install the dependencies:
python -m pip install -r requirements.txt
- Preferably make this in a venv named
.venv2
- Preferably make this in a venv named
-
Create a
.envfile in the root directory of the repository and add your Discord bot token3 and Admin users:DISCORD_TOKEN=your_token_here ADMIN_USERS=discord_user_id_1,discord_user_id_2,etc.
-
Change Flags (Optional)
Change personal information about your repository in
main.pyin the### Control Variablessection at the top4 and change TABLE_CREATION variable to True if you want to wipe the previous data5TABLE_CREATION = True GIT_USERNAME = "Your_Github_Username" GIT_REPO = "Your_Github_Repository_Name"
-
Start the bot:
python main.py
The repository is organized as follows:
Strawberry-Puff-Bot/
├── assets/
│ ├── database/
│ │ ├── puffs.db # DB for puffs
│ │ └── users.db # DB for user data
│ ├── profile/ # Where banners are stored
│ ├── puffs/ # Where puff .pngs are stored
│ └── tables/
├── src/
│ ├── main.py # Main script
│ └── helpers/
│ ├── battlefunctions.py # Functions for pvp
│ ├── daemons.py # Daemons
│ ├── errorclasses.py # Classes for errors
│ └── flags.py # Flags used in main script
├── .env.example # Used for secrets (You need to make your own)
├── requirements.txt
├── README.md
└── LICENSEContributions are welcome! Please fork the repository and create a pull request with your changes. I'm also working on a website for the bot and I would love for some support on that.
This project is licensed under the GNU General Public License. See the LICENSE file for details.
For any questions or suggestions, please open an issue or contact me.
The code was written by @TurtleGod7 and the puffs were drawn and created by @orchadork.
Footnotes
-
I've only tested this code on python 3.9.6 on my Mac but in theory it should work on 3.7.X and greater. ↩
-
If you need help creating a venv, I've found this to be useful when I first set it up. ↩
-
If you need help with retrieving your bot's token, refer to this Github Wiki Page for more information ↩
-
This is optional due to the images being referenced from the online repository. Do note that when you make changes like adding new images, they will only show up on Discord if your images have been pushed to GitHub. So please change these strings only if you change images ↩
-
If you want to wipe any data, make sure you create two databases at these file paths (relative): assets/database/puffs.db (HIGHLY UNRECOMMEND TO WIPE) assets/database/users.db ↩
