Tools for osu!.
This is part of a group of projects which are used in live deployments where the deployed version is critical to producing correct results. The master
branch tracks ongoing developments. If looking to use the correct version for matching live values, please consult this wiki page for the latest information.
- A desktop platform with the .NET 6.0 SDK installed.
- When working with the codebase, we recommend using an IDE with intelligent code completion and syntax highlighting, such as the latest version of Visual Studio, JetBrains Rider or Visual Studio Code.
- These instructions assume you have the the CLI git client installed, but any other GUI client such as GitKraken will suffice.
- Note that there are additional requirements for Windows 7 and Windows 8.1 which you may need to manually install if your operating system is not up-to-date.
- Clone the repository (
git clone https://github.com/ppy/osu-tools
) - Navigate to each tool's directory (i.e.
cd PerformanceCalculator
) and follow the instructions listed in the tool's README.- PerformanceCalculator - A tool for calculating the difficulty of beatmaps and the performance of replays.
- PerformanceCalculatorGUI - A GUI tool for calculating the difficulty of beatmaps, changes in profile scores and leaderboards.
Most relevant code is in the main ppy/osu repository. To make any meaningful changes you will likely need to edit that as well.
- Clone all relevant repos into the same directory
git clone https://github.com/ppy/osu-tools
git clone https://github.com/ppy/osu
- Run the
./UseLocalOsu.ps1
powershell script (or./UseLocalOsu.sh
) to use your local copy of ppy/osu
- Clone all relevant repos into the same directory
git clone https://github.com/ppy/osu-tools
git clone https://github.com/ppy/osu
- Navigate to
osu
repository and checkout version you want to run
cd osu
git remote add smoogi https://github.com/smoogipoo/osu.git
git fetch smoogi branch_name
git checkout -b branch_name smoogi/branch_name
- Run the
./UseLocalOsu.ps1
powershell script (or./UseLocalOsu.sh
) to use your local copy of ppy/osu
When it comes to contributing to the project, the two main things you can do to help out are reporting issues and submitting pull requests.
Note that while we already have certain standards in place, nothing is set in stone. If you have an issue with the way code is structured, with any libraries we are using, or with any processes involved with contributing, please bring it up. We welcome all feedback so we can make contributing to this project as painless as possible.
For those interested, we love to reward quality contributions via bounties, paid out via PayPal or osu!supporter tags. Don't hesitate to request a bounty for your work on this project.
osu!'s code, framework, and tools are licensed under the MIT licence. Please see the licence file for more information. tl;dr you can do whatever you want as long as you include the original copyright and license notice in any copy of the software/source.
Please note that this does not cover the usage of the "osu!" or "ppy" branding in any software, resources, advertising or promotion, as this is protected by trademark law.
Please also note that game resources are covered by a separate licence. Please see the ppy/osu-resources repository for clarifications.