Skip to content

Fanyatsu/osu-requests-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

osu! Requests Bot

Very simple osu! beatmap requests bot for Twitch streamers written in Python using ossapi, twitchio and irc libraries

This project was inspired by Ronnia bot. Take a look: https://github.com/aticie/ronnia

Features

  • Sending beatmap links from Twitch chat to In-Game osu! messages
  • Responding to beatmap and profile links with general information
  • Support for mods in beatmap requests (with star rate recalculation)
  • Skipping requests handling from channel owner and users from ignore list
  • Cooldown between In-Game osu! messages to avoid getting restricted

Screenshots

Click here to view via Imgur or use spoilers below

1. Beatmap request on Twitch

Beatmap request on Twitch

2. Beatmap request on Twitch (with mods)

Beatmap request on Twitch (with mods)

3. Profile links handling

Profile links handling

4. In-Game osu! messages

In-Game osu! messages

Setup

Warning Python 3.7 or higher is required!

  1. Clone the repo - git clone https://github.com/Fanyatsu/osu-requests-bot.git
  2. Open the directory where repo was cloned - cd osu-requests-bot
  3. Install python dependencies - pip install -r requirements.txt

Note Generally windows uses py -m pip and linux uses python3 -m pip

  1. Fill the configuration file config/settings.py (please, read the comments)
  2. Finally, run the bot using run.py file in the main directory

Troubleshooting

Errno 13 "Permission denied"

Grant your user write permissions to the osu_requests.log file

Websocket connection was closed: None

This message appears each time Twitch WS connection is lost (usually at RECONNECT events)
If you see it during startup, restart the bot

Bot does not respond to links on Twitch chat

Twitch can reject messages if you have enabled one of follower-only / subscriber-only / emote-only chat modes
Disable conflicting feature or make the bot either a channel moderator or VIP. Moderators and VIPs bypass restrictions
If its still not working, check the next option

My requests are ignored when sent to my own chat
# config/settings.py

# Whether to skip (ignore) requests from Twitch channel owner
# Skip - True | Don't skip - False
SKIP_CHANNEL_OWNER_REQUESTS = False
There is a delay between requests and responses

Typically it takes from 0.5 to 1.5 seconds for the bot to respond. If you are experiencing longer intervals, continue reading.
Twitch: Check "Non-moderator chat delay" option under the "Moderation" settings section of your channel
osu!: Known issue that is already fixed on Lazer. See https://osu.ppy.sh/wiki/Help_centre/Upgrading_to_lazer#fnref-stable-chat

Support

Please let me know if you have any questions - www.fanyat.su

Credits

aticie - Main idea, IRC code, beatmap links patterns
tybug - Help & enhancements in ossapi library
aeongdesu - Mirror download links idea

About

osu! beatmap request bot for your Twitch chat

Resources

Stars

Watchers

Forks

Languages