updated pp-gen README
This commit is contained in:
+45
-53
@@ -1,69 +1,61 @@
|
|||||||
# pp-gen
|
# pp-gen
|
||||||
|
|
||||||
Small script to calculate difficulty and performance points related values for a given list of map ids.
|
Small script to calculate difficulty and performance points related values for a given folder containing `.osu` files.
|
||||||
|
|
||||||
### How to use
|
### How to use
|
||||||
|
|
||||||
- Rename `.env.example` to `.env` and put proper values for both of its variables:
|
- Rename `.env.example` to `.env` and put proper values for both of its variables:
|
||||||
- `PERF_CALC_PATH` is going to be something like `C:/osu-tools/PerformanceCalculator/bin/Release/net5.0/PerformanceCalculator.dll`
|
- `PERF_CALC_PATH` is going to be something like `C:/osu-tools/PerformanceCalculator/bin/Release/net5.0/PerformanceCalculator.dll`
|
||||||
- `MAP_PATH` is the path to the folder containing a bunch of `{map_id}.osu` files
|
- `MAP_PATH` is the path to the folder containing a bunch of `{map_id}.osu` files
|
||||||
- Since `PerformanceCalculator.dll` won't print the stars for a map simulation by default, you will need to make a tiny adjustment to a file in the osu-tools repo. In `osu-tools/PerformanceCalculator/Simulate/SimulateCommand.cs`, add the following line to the other lines that look similar:
|
- `MAP_TAKE` is the amount of maps for which values will be calculated
|
||||||
```cs
|
- `MAP_SKIP` is the amount of maps that will be skipped in the `MAP_PATH` folder after each calculation
|
||||||
o["Stars"] = difficultyAttributes.StarRating;
|
|
||||||
```
|
|
||||||
Don't forget to recompile osu-tools via `dotnet build -c Release` after making the change.
|
|
||||||
- Run `cargo run --release`. The program will use the `PerformanceCalculator.dll` to calculate the values and then store them in `output.json`.
|
- Run `cargo run --release`. The program will use the `PerformanceCalculator.dll` to calculate the values and then store them in `output.json`.
|
||||||
|
|
||||||
### Output format
|
### Output format
|
||||||
|
|
||||||
The calculated values for each map for multiple different mod combinations will be stored in a JSON array. The array elements will be of the following form:
|
The calculated values for each map for multiple different mod combinations will be stored in a JSON array. The array elements will be of the following form:
|
||||||
- osu:
|
```js
|
||||||
```js
|
{
|
||||||
{
|
"score": {
|
||||||
"mode": 0,
|
"mode": integer,
|
||||||
"map_id": integer,
|
"map_id": integer,
|
||||||
"aim": double,
|
"mods": [string],
|
||||||
"speed": double,
|
"total_score": integer,
|
||||||
"accuracy": double,
|
"acc": double,
|
||||||
"flashlight": double,
|
"combo": integer,
|
||||||
"od": double,
|
"stats": {
|
||||||
"ar": double,
|
"perfect": integer?,
|
||||||
"mods": "HD, HR", // comma + whitespace separated string of mod abbreviations ("None" for nomod)
|
"great": integer,
|
||||||
"stars": double,
|
"good": integer?,
|
||||||
|
"ok": integer,
|
||||||
|
"meh": integer,
|
||||||
|
"miss": integer,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"performance": {
|
||||||
|
"aim": double?,
|
||||||
|
"speed": double?,
|
||||||
|
"acc": double?,
|
||||||
|
"flashlight": double?,
|
||||||
|
"effective_miss_count": double?,
|
||||||
|
"scaled_score": double?,
|
||||||
|
"difficulty": double?,
|
||||||
"pp": double,
|
"pp": double,
|
||||||
}
|
},
|
||||||
```
|
"difficulty": {
|
||||||
- taiko:
|
|
||||||
```js
|
|
||||||
{
|
|
||||||
"mode": 1,
|
|
||||||
"map_id": integer,
|
|
||||||
"accuracy": double,
|
|
||||||
"strain": double,
|
|
||||||
"mods": "HD, HR", // comma + whitespace separated string of mod abbreviations ("None" for nomod)
|
|
||||||
"stars": double,
|
"stars": double,
|
||||||
"pp": double,
|
"max_combo": integer,
|
||||||
|
"aim": double?,
|
||||||
|
"speed": double?,
|
||||||
|
"flashlight": double?,
|
||||||
|
"slider_factor": double?,
|
||||||
|
"stamina": double?,
|
||||||
|
"rhythm": double?,
|
||||||
|
"colour": double?,
|
||||||
|
"ar": double?,
|
||||||
|
"od": double?,
|
||||||
|
"great_hit_window": double?,
|
||||||
|
"score_multiplier": double?,
|
||||||
}
|
}
|
||||||
```
|
}
|
||||||
- catch:
|
```
|
||||||
```js
|
|
||||||
{
|
|
||||||
"mode": 2,
|
|
||||||
"map_id": integer,
|
|
||||||
"mods": "HD, HR", // comma + whitespace separated string of mod abbreviations ("None" for nomod)
|
|
||||||
"stars": double,
|
|
||||||
"pp": double,
|
|
||||||
}
|
|
||||||
```
|
|
||||||
- mania:
|
|
||||||
```js
|
|
||||||
{
|
|
||||||
"mode": 3,
|
|
||||||
"map_id": integer,
|
|
||||||
"accuracy": double,
|
|
||||||
"strain": double,
|
|
||||||
"mods": "HD, HR", // comma + whitespace separated string of mod abbreviations ("None" for nomod)
|
|
||||||
"stars": double,
|
|
||||||
"pp": double,
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|||||||
Reference in New Issue
Block a user