-
Notifications
You must be signed in to change notification settings - Fork 80
Changelog
dom edited this page Oct 19, 2025
·
9 revisions
Update System Overhaul
-
New Flags Introduced:
-
--betaPulls code directly from the repository (unstable). -
--no-venvSkips virtual environment setup (may cause dependency issues). -
--repairForces updates to restore missing or modified files.
-
-
Improved Update Logic:
- Fetches releases directly instead of relying on patch files.
- Automatically backs up modified cogs to the
cogs.bakdirectory. - Uses SHA hashing for efficient file comparison.
- Cleans obsolete dependencies automatically.
- Advises repair when missing files are detected rather than failing silently.
Alliance Improvements
-
Performance and Reliability
- Member additions now operate at one member per second.
- Fully respects API rate limits.
- Centralized queue system managed via
login_handler.py. - Enhanced error handling and feedback mechanisms.
-
Enhanced Member Management
- Accepts both comma- and newline-separated FID lists.
- Prevents duplicate entries before API submission.
- Improved validation and progress tracking.
Control System Overhaul
-
Speed Enhancements
- Alliance control operations optimized to one member per second.
- Removed unnecessary delays between checks.
-
Logging and Maintenance
- Introduces
log/alliance_control.txtfor activity tracking. - Automatic log rotation (1 MB max, 1 backup).
- Reduces console clutter.
- Removes invalid FIDs (Error 40004) and maintains audit records.
- Introduces
Gift Operations Upgrade
-
New OCR Engine
- Lightweight ONNX model replaces older OCR dependencies.
- Fully compatible with Python 3.13+ and Alpine Linux.
-
Interface Enhancements
- New “Settings” button for channel and CAPTCHA management.
- Instant and periodic gift code validation.
- On-demand history scans (up to 75 messages).
- Smart FID prioritization for faster redemption.
- Option to clear redemption cache.
- Detailed error logs available in
log/gift_ops.txt.
Login Handler (New Cog)
-
Centralized API Management
- Ensures one login per second without overlap.
- Dual-API system with automatic fallback.
- Queue system to prevent simultaneous operations.
- Integrated with Alliance Cogs; more integrations planned.
Attendance System (New Cog)
-
Event Tracking Features
- Tracks attendance for Bear, Foundry, SvS, and other events.
- Maintains historical data for repeated absences.
-
Reporting Options
- Supports Matplotlib-based visual reports and formatted text reports.
- Exports data to CSV, TSV, or HTML.
-
Interactive Controls
- Includes buttons for marking, viewing, and configuring attendance.
Minister Scheduling (New Cog)
-
SvS Preparation Management
- Simplifies scheduling for Construction, Research, and Training days.
- Supports both slash commands and interactive buttons.
-
Channel Integration
- Dedicated channels per prep day with automatic slot updates.
- Detailed logging for all minister activities.
-
Slash Commands
-
/minister_add,/minister_remove,/minister_list,/minister_clear_allfor full management control. - Global admin settings for clearing or resetting data.
-
- Implemented a self-hosted GitLab repo as a backup in case GitHub fails us again.
- The bot now checks GitHub first, then falls back to GitLab if needed.
- The bot automatically creates and manages Python virtual environments.
- Prevents dependency conflicts and ensures smooth setup.
- Fully supports both Windows and Unix-based systems.
- Automatically skips venv creation inside Docker/Kubernetes/CI environments.
- Better troubleshooting help, including the direct Visual C++ Redistributable x64 link.
- Startup now auto-reinstalls dependencies if broken or missing on startup.
- It also auto-installs missing cogs from source if they are not found on startup.
- Should reduce install/update issues across the board.
- Web editor? History, at least for now.
- Thanks to @Destrimna, you can now manage all notifications directly via Discord buttons.
- Old notifications (Embed or Message) remain fully editable.
- Added “Repeat on specific days” for recurring event scheduling.
- Replaced the crusty old
wosland.comPHP API with a modern, self-hosted Python version. (it's almost the same, but it smells new) - Gift codes now auto-sync across all bot instances again. Enjoy the easy and efficient shared redeeming!
- Includes solid validation logic to block broken or invalid codes before they break the system.
- Redemptions now follow alliance order instead of chaotic parallel execution.
- Fixed the dreaded “Sign Error” caused by sneaky right-to-left (RTL) marker characters
- Removed dependency on external websites for backup creation.
- Two backup options now available. Sent to you directly via Discord DM or saved manually to the server
- Backups are 100% under your control. Use it wisely. Or don't.
- Removed all remaining Relo branding from Support and Startup.
- Startup now proudly shows off OCR status like it's something to brag about.
- Removed outdated “Buy me a coffee” link. No coffee for scammers. ☕🚫
- "Check for Updates" button works again and compares your version file with the latest release tag on our Github.
- Tons of minor fixes and improvements.
- For the full list of
bugsfeatures, visit GitHub Issues
- 💾 More robust file handling & backups during updates
Now gracefully sidesteps Windows' favorite pastime: locking files for no reason. May yourmain.pylive a long, crash-free life. - ✅
ddddocrinstallation verification added
Checks thatddddocrand its clingy dependencies are actually installed. No more “I installed it, I swear” gaslighting. - 🎯 Selective
--ignore-requires-pythonusage
Only applies the Python rule-bending toddddocr, instead of every package. Because not every package needs special treatment. - 🐛 Verbose flag added for package installs
Need to know exactly how the package installation broke? There’s a --verbose flag for that now. - 🧾 Added
coloramaandrequeststo requirements
Two more packages join the cult. Because everything is better when you add some color to it. - 🚫 Gift code validation delayed to redemption time
Codes added via "Create Gift Code" or the Gift Code Channel are no longer validated immediately. Instead:- They are stored in DB with status
pending - On first use (or during periodic validation):
- If valid: ✅ marked as
valid - If invalid: ❌ redemption stops, status updated to
invalid
- If valid: ✅ marked as
- Only validated codes hit the giftcode API (once implemented), reducing unnecessary API traffic.
- They are stored in DB with status
- 🔄 New “Change Test FID” button for admins
Admins can now swap out the test ID used for validating and testing codes. Default: Relo’s ID. Change it. Or don’t. I’m not your dad. - 🔙 Removed Yolo’s favorite back button from CAPTCHA Settings
The back button on CAPTCHA Settings is gone. Yes, really. It’s gone. Are you happy now, @Destrimna? - 🐞 Miscellaneous bug fixes
Squashed several minor but persistent gremlins. - 📣 Bear Trap notifications now persist even if the channel disappears
Previously, if the channel went poof (due to temporary Discord rate limits, for example), all notifications got disabled. That’s been fixed.
- 🔁 Replaced EasyOCR with ddddocr — Faster, lighter, smarter. Like trading a fax machine for a laser cannon.
- 🛠️ Force-installs ddddocr v1.5.6 with --ignore-requires-python — Because Python 3.13 broke it, but we broke it back.
- 🧠 Optimized gift code redemption loops — Now redeems faster while expertly dodging the rate-limit police.
- 🔥 Removed dusty old GPU config junk — No one needed it, especially not our new friend ddddocr. It’s in a nice farm upstate with the other unused settings.
- 🛡️ Bundled certifi in main.py — Fixes those annoying SSL issues on AWS and friends. Big thanks to @destrimna for reporting, rather than rage-quitting.
- 🧩 Fixed "All Alliances" feature — It works now. Because @destrimna sent in the fix. MVP.
- 📉 Trimmed log file and legacy file bloat — Your hard drive can breathe a bit better.
- 📊 Improved OCR Settings statistics page — More stats. More clarity. Slightly less shame.
- ♻️ Fixed duplicate install checks on startup & updated main.py to work with our new repository and update method. We pray that it works.
- ⬇️ Reset the version numbering to start from 1.0.0 for a clean slate. And better vibes. Mostly for the vibes.