osu!performance
This is the program computing "performance points" (pp), which are used as the official player ranking metric in osu!.
Compiling
osu!performance runs on Windows and Linux. It should also compile and run on Mac OS X, but this has not been tested. The build environment is set up using CMake as follows.
Windows
Open the command line and navigate to the root folder of this repository.
c:\osu-performance> mkdir Build
c:\osu-performance> cd Build
c:\osu-performance\Build> cmake ..
Now the Build folder should contain a Visual Studio project for building the program.
Linux
On Linux you need to install the MariaDB MySQL connector, cURL, and clang packages. Afterwards, run a terminal of your choice.
/osu-performance$ mkdir Build
/osu-performance$ cd Build
/osu-performance/Build$ cmake ..
/osu-performance/Build$ make
Usage
After compilation, an executable named Client_OS is placed in the Bin folder. It accepts the following arguments:
-
-m <id>
This option controls the gamemode for which pp is computed. id can have the following values:
Standard Taiko Catch the beat osu!mania 0 1 2 3 -
-r
If this option is present, then the pp values of all existing scores are re-computed. Otherwise, only new pp values are computed.
-
-f
If this option is not present, then a child process is created, which starts this program a second time as a child process with the same options and -f enabled additionally. Whenever this child process terminates, after 5 seconds it is restarted. The purpose of this option is to ensure, that crashes and errors do not interrupt the computation of pp values.
Configuration options beyond these parameters, such as the MySQL server configuration, can be adjusted in Bin/Data/Config.cfg.
Licence
osu-performance is licensed under AGPL version 3 or later. Please see the licence file for more information. tl;dr if you want to use any code, design or artwork from this project, attribute it and make your project open source under the same licence.