A Discord bot for monitoring new CS:GO item listings based on specific search parameters. This bot checks for new items, alerts only for unseen items, and supports dynamic configuration via Discord commands.
- Track Listings: Monitor CS:GO item listings from CSFloat.
- Dynamic Configuration: Update search parameters, such as item name, rarity, and price, directly through Discord commands.
- Database Integration: Keep track of seen listings using SQLite, ensuring notifications are only sent for new items.
- Batch Notifications: Efficiently send alerts to Discord while respecting rate limits.
- Python 3.10+
- Install Python from the official website.
- Dependencies
- Use
pipto install the required dependencies.
- Use
-
Clone the repository:
git clone https://github.com/icryo/degeneracy cd degeneracy -
Install the dependencies:
pip install -r requirements.txt -
Configure the bot:
- Update the
config.pyfile with your API tokens, Discord bot token, and webhook URL.
- Update the
-
Initialize the database:
- The database (
csfloat_bot.db) is automatically created when you run the bot.
- The database (
-
Run the bot:
python bot.py
| Command | Description |
|---|---|
!set_parameter <param> <value> |
Set search parameters dynamically. |
!set_frequency <seconds> |
Update the monitoring interval (minimum 10 secs). |
!check |
Manually trigger a listing check. |
!all |
Fetch and display all available listings. |
!bot_help |
Display a list of all available commands. |
You can set the following search parameters dynamically:
market_hash_name: The name of the item (e.g.,★ M9 Bayonet | Fade).min_float: Minimum float value.max_float: Maximum float value.rarity: Item rarity.paint_seed: Specific paint seed.paint_index: Specific paint index.user_id: Listings by a specific user.collection: Item collection (e.g.,set_bravo_ii).min_price: Minimum price (in cents).max_price: Maximum price (in cents).
Example:
!set_var market_hash_name ★ M9 Bayonet | Fade
!set_var max_price 10000
The bot uses an SQLite database (csfloat_bot.db) to track seen listings:
- Listings are stored by their unique
listing_id. - Alerts are only sent for new, unseen items.
Contributions are welcome! Feel free to submit issues or pull requests.
-
Fork the repository.
-
Create a new branch:
git checkout -b feature-name -
Commit your changes:
git commit -m "Add new feature" -
Push to your branch:
git push origin feature-name -
Open a pull request.
This project is licensed under the MIT License.