MemeLord is a Discord bot that allows users to submit memes and get rewarded with Bitcoin SV (BSV) when their memes receive 10 reactions. The bot tracks meme submissions, reactions, and handles payouts. Additionally, it awards badges for various milestones.
- Meme Submission: Users can submit memes by uploading an image.
- Reaction Tracking: The bot tracks reactions to memes and rewards users when their memes get 15 reactions.
- Payouts: Users receive 10,000 satoshis for each meme that reaches 10 reactions. Additional bonuses are awarded for earning badges.
- Badges: Users earn badges for submitting their first meme, earning 50,000 sats, and earning 100,000 sats.
- Winning Meme Announcement: Winning memes are posted in a designated channel with a congratulatory message.
- Python 3.7+
- Discord bot token
- Bitcoin SV wallet private key
- Environment variables for configuration
-
Clone the repository:
git clone https://github.com/ishalliveforever/memelord.git cd memelord
-
Create a virtual environment and activate it:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install the required packages:
pip install -r requirements.txt
-
Create a
.env
file with the following variables:DISCORD_TOKEN=your-discord-bot-token WALLET_PRIVATE_KEY=your-wallet-private-key WINNING_CHANNEL_ID=your-channel-id PRIVATE_CHANNEL_ID=your-channel-id
-
Run the bot:
python meme.py
-
In Discord, use the command
/memelord
to submit a meme. Upload an image to complete the submission. -
Users will be notified in the original channel when their meme reaches 10 reactions and wins 10,000 satoshis.
-
Winning memes will be posted in the specified channel with the message "This meme has been approved by 1Sat Society. Pump our bags!"
Contributions are welcome! Please submit a pull request or open an issue for any suggestions or improvements.
This project is licensed under the MIT License.
### Final Steps
1. **Activate Virtual Environment**:
If not already done, activate your virtual environment:
```sh
source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install Requirements:
Install the required Python packages listed in the
requirements.txt
file:pip install -r requirements.txt
-
Create .env File:
Create a
.env
file in the root directory of your project with the following content:DISCORD_TOKEN=your-discord-bot-token WALLET_PRIVATE_KEY=your-wallet-private-key WINNING_CHANNEL_ID=your-channel-id PRIVATE_CHANNEL_ID=your-channel-id
-
Run the Bot:
Start the bot by running:
python meme.py
-
Meme Submission:
- Users submit memes by typing
/memelord
and uploading an image. - The bot checks for valid image formats (png, jpg, jpeg, gif).
- Users submit memes by typing
-
Reaction Tracking:
- The bot tracks reactions to the submitted memes.
- Users cannot add reactions to their own memes.
- Each user can only add one reaction that counts towards the total.
-
Payouts:
- When a meme receives 10 reactions, the user is awarded 10,000 satoshis.
- A congratulatory message is sent in the original channel.
-
Badges:
- Users earn badges based on their achievements:
- Normie Badge: First meme submission.
- Based Memer: Earned after accumulating 50,000 satoshis, along with a 50,000 sats bonus.
- Memelord: Earned after accumulating 100,000 satoshis, along with a 100,000 sats bonus.
- Users earn badges based on their achievements:
-
Winning Meme Announcement:
- Winning memes are posted in a specified channel with the message "This meme has been approved by . Pump our bags!"
By following these steps and understanding the features, you should have a fully functional MemeLord bot running in your Discord server.
Donate