A python library that emulates the osu! stable client
Project description
osu.py
osu.py is a python library that emulates part of the online functionality of the osu! stable client.
IMPORTANT:
Use this library at your own risk! I am not responsible for anything that can happen to your account. If you want to test it out on a private server, you can set the server
attribute when initializing the client.
You can install this package with pip:
pip install osu
Or build it manually:
git clone https://github.com/Lekuruu/osu.py.git
cd osu.py
pip install setuptools
python setup.py install
Features
- Receiving player stats
- Sending/Receiving chat messages
- Up to 12 clients (Tournament Client)
- Spectating
- Avatars
- Comments
- Replays
- Scores/Leaderboards
- osu!direct
- Documentation
- (Multiplayer)
Example
Here is a small example of how to use this package:
from osu.bancho.constants import ServerPackets
from osu.objects import Player
from osu import Game
# Initialize the game class
game = Game(
USERNAME,
PASSWORD
)
# Simple message handler
@game.events.register(ServerPackets.SEND_MESSAGE)
def on_message(sender: Player, message: str, target: Player):
if message.startswith('!ping'):
sender.send_message('pong!')
# Run the game
game.run()
You can also run tasks, independent of server actions:
# Example of a task, running every minute
@game.tasks.register(minutes=1, loop=True)
def example_task():
...
This project is also a good example and it was also the reason why I even started this project.
If you have any questions, feel free to contact me on discord: lekuru
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.