* Add disabled_ids as an alias
* Fix possible AttributeErrors in get_app_info()
* Refactor logfilereader.py
* Refactor disabled_ids and fix a few bugs
* Only add active cheats to the list
* Rename disabled_tids to disabled_ids and start adding support for bids
* Add cheat information
* Add analysis block for build ids
Always remove blocked game logs
* Add ro_section to disabled_ids
* Search all potential log files for blocked games
* Add commands to block ro_sections of games
* Change order of macro command arguments
* Add new disabled_ids key to wanted_jsons
* logfilereader: Fix analysing every attachment
Now Ryuko will only analyse logs again
* logfilereader: Stop analysing message.txt
Most of the time these won't contain all the info we need anyway.
* Apply black formatting
* Small styling changes
* Add disallowed_roles for logfilereader
* macros: Fix naming and missing bot parameter
* Add disabled_tids helper
* Add pirate role to named role examples
* logfilereader: Add commands to block specific tids
* Add black formatting
* Add command to manually analyse logs
And some minor cleanup
* Remove command message when using macros
* macro: Reply to the same message as the author invoking the command
* logfilereader: Increase size of empty logs
* meme: Add reply targets
* mod: Add reply targets
* mod_timed: Add reply targets
* macro: Add aliases for macros
* macro: Fix list_macros not listing any macros
* Apply black formatting
* Added warnings:
- File permissions fix
- File not found fix
- Missing services fix
- Graphics Backend threading warning
- Software memory manager warning severity upgraded
* Small fixes:
- Use file size to track duplicate files
- Use logging module for exception warning
* Fix log analysis not showing on no game boot
* Formatting for clarity on mobile, minor rewording
* Add graphics backend to visible output
* Suggest Vulkan for AMD and Intel GPU
* Reword pr-testing message
* Remove anisotropic filtering warning
* Deduplicate mods information
* Nit: spelling error in comment
* Shorten log time message
* Increase bytes read to handle large amounts of DLC
* Add Texture Recompression to output
* Fix shadowed variables
* Recompression suggestion for Vulkan memory error
* Improve regex to deal with MB/MiB RAM measurement
* Rename Expand DRAM warning to match rewording
* Update LDN regex to detect new versions
* Handles new Ryujinx version numbering
* Add detection of ResultFsPermissionDenied and ResultFsTargetNotFound errors
* Warns on detection of old Ryujinx version
* Add LDN/Tester reaction-roles select support in Ryujinx guild with Ryuko
* Fixed Mario Kart role name
* Add "How to remove reaction" message in embed
* 1) organised to classes 2) moved a message to embed footer
And start.sh is a file i will delete it later
* Footer
* Change emoji of Splatoon 2 (paintbrush => 🦑)
* Removed a test func
* Indian English, its not my problem
* Removed attribute and use m.guild in handle_offline_reaction_*()
* More stricter type checking
* equal sign comma
Co-authored-by: Mary <thog@protonmail.com>
* Address Thog comment 1/?
* Address Thog comment 2/?
* bye bye start.sh (Address Thog comment 3/?)
* Fix a loop constant confusion
* Formated with
* A fix
* One more fix & added names loop variables
* Improve embed description once more
* Removed black bracket formatting
* add dynamic embed description
* Use the f strings
* Fix embed footer desc
* Added message editing on new game add, and generate embed in a seperate function
* Test
* added a comment
* Code refactor, bug fixes
* use get() for recieving role name
* Add pokemon/mario party superstars
* Embed changes
* Addded Pokemon BD/SP. Bruh how many games I will add in future.
* Fix P BD/SP.
Co-authored-by: choppymaster <>
Co-authored-by: Mary <thog@protonmail.com>
* Added warnings for several settings:
- Expand DRAM hack
- Memory Manager Mode
- Ignore Missing Services
- Anisotropic Filtering set to not Auto
- Debug logs enabled
- New severity level for PPTC and Shader cache warnings
* Various fixes:
- Warn for outdated keys/firmware,
- Error snippet fix when no game boots
- Embed improvements
- Improve duplicate log upload tracking to link to last uploaded file
* Larger download header range, handle larger files.
* Move notes visibility to show on startup crash
* Added vsync disabled warning and dump hash error
* Clean up controller warning to declutter empty log message
* Add .NET 6 shader warning and genericise shader init error
* Log reading capabilities to Ryuko bot (#3)
* Add log reading capabilities
- User hardware specs
- Game info
- Controller configuration
- Last error snippet in log
- Warnings when using macOS or Intel iGPU
- Warning of logs not turned on
* Allowed log reading channels moved to config
This is easier for contributors to change their config file for testing
* Fixes large files not showing error snippet
- Large files are partially downloaded and show header information which
messes with log analysis, this gets stripped.
- Finding error messages function improved
* Default logs enabled shows a green checkmark
* Better feedback with log parsing message
- Bot prints `Log parsing...` and update message once log analysis done
- Added better error logging to console
* Better handling of invalid files warning
- Also fixed typo with bot message edit function
* Refactored embed generation to make more sense
- Embed is now based off a generic json assuming Unknown values at first
- Embed fields moved closer together
- Fields with newlines joined instead of manually separated
- Intel iGPU message changed to show preference for discrete GPU's
* Refactor to be simpler and easier to read.
- Hardware, ryujinx and log analysis split into separate functions
- Regex explicitly defined for each property instead of confusing map
- Added user settings reported, shows PPTC enabled or disabled
* Game notes sorted by order of severity
Notes will appear with most severe warnings first as follows: ❌⚠️ ℹ ✅
* Analyses toggleable settings that appear in log
Currently these are: PPTC, audio backed, docked/handheld and vsync.
- Formatting change so these settings are more visible in bot embed
* Refactored user_settings, rewording of bot embed
- User settings reading handles missing log info for older versions
- `Switch Mode` (docked/handheld info) changed to `Console Mode`
- Missing firmware warning if firmware not installed
* Warning when shader cache collision detected
* Notes time elapsed in log file
- Error handling for no notes to log
* Show values for some user settings: audio, docked, missing services, resolution, shader cache and vsync
* Analyse user changeable settings
- Restructed embed to allow easier settings handling
- Changed embed formatting to deal with inline colums more cleanly
* Log file is now default function parameter
* Better sorting of analysis messages
- Now sorted alphabetically and by severity for consistency
- Show available RAM in low RAM warning
- Fix variable name misspelling
* Logging level changed to info
* Warn if bad dump in error message
* Add warning for no custom build support
* Warn user to post log in correct channel
- Warn about not supporting custom builds
- Warn to post in pr build if detected
- Warn about channels to post logs if detected in #general
* Fix logfilereader logic
* Ryuko bot fixes and improvements (#4)
* Fixes HTTPException by properly handling newline regex
* Improves information display:
- Shows settings info if no game is detected running
- Empty log warning takes up less space
- Error, Mods and Notes not shown on empty log
* Improved empty log message
- Also allow logs parsing in linux channel, as well as mentioning
when posting in non-allowed channels
* Fix ResScale parse error, better empty log message
* DM users about correct channels instead of in chat
* Fix variable spelling, clearer bad dump warning
* Shows error snippet on empty log (#6)
* Error snippet shown on empty log
- Shader cache corruption warning
* Loop to get missing info in log
* Error search handles multiple terms
- Minor spelling correction for resolution value
- User settings visible on empty log
* Fix error not being displayed if game name Unknown
* Warns about PPTC and shader caches being disabled.
- Warns about audio backend being set to Dummy
- Shows PPTC cache and shader cache enabled/disabled
Co-authored-by: Mary <1760003+Thog@users.noreply.github.com>
* Error snippet shown on empty log
- Shader cache corruption warning
* Loop to get missing info in log
* Error search handles multiple terms
- Minor spelling correction for resolution value
- User settings visible on empty log
* Fixes HTTPException by properly handling newline regex
* Improves information display:
- Shows settings info if no game is detected running
- Empty log warning takes up less space
- Error, Mods and Notes not shown on empty log
* Improved empty log message
- Also allow logs parsing in linux channel, as well as mentioning
when posting in non-allowed channels
* Fix ResScale parse error, better empty log message
* DM users about correct channels instead of in chat
* Fix variable spelling, clearer bad dump warning
* Add log reading capabilities
- User hardware specs
- Game info
- Controller configuration
- Last error snippet in log
- Warnings when using macOS or Intel iGPU
- Warning of logs not turned on
* Allowed log reading channels moved to config
This is easier for contributors to change their config file for testing
* Fixes large files not showing error snippet
- Large files are partially downloaded and show header information which
messes with log analysis, this gets stripped.
- Finding error messages function improved
* Default logs enabled shows a green checkmark
* Better feedback with log parsing message
- Bot prints `Log parsing...` and update message once log analysis done
- Added better error logging to console
* Better handling of invalid files warning
- Also fixed typo with bot message edit function
* Refactored embed generation to make more sense
- Embed is now based off a generic json assuming Unknown values at first
- Embed fields moved closer together
- Fields with newlines joined instead of manually separated
- Intel iGPU message changed to show preference for discrete GPU's
* Refactor to be simpler and easier to read.
- Hardware, ryujinx and log analysis split into separate functions
- Regex explicitly defined for each property instead of confusing map
- Added user settings reported, shows PPTC enabled or disabled
* Game notes sorted by order of severity
Notes will appear with most severe warnings first as follows: ❌⚠️ ℹ ✅
* Analyses toggleable settings that appear in log
Currently these are: PPTC, audio backed, docked/handheld and vsync.
- Formatting change so these settings are more visible in bot embed
* Refactored user_settings, rewording of bot embed
- User settings reading handles missing log info for older versions
- `Switch Mode` (docked/handheld info) changed to `Console Mode`
- Missing firmware warning if firmware not installed
* Warning when shader cache collision detected
* Notes time elapsed in log file
- Error handling for no notes to log
* Show values for some user settings: audio, docked, missing services, resolution, shader cache and vsync
* Analyse user changeable settings
- Restructed embed to allow easier settings handling
- Changed embed formatting to deal with inline colums more cleanly
* Log file is now default function parameter
* Better sorting of analysis messages
- Now sorted alphabetically and by severity for consistency
- Show available RAM in low RAM warning
- Fix variable name misspelling
* Logging level changed to info
* Warn if bad dump in error message
* Add warning for no custom build support
* Warn user to post log in correct channel
- Warn about not supporting custom builds
- Warn to post in pr build if detected
- Warn about channels to post logs if detected in #general