Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stanriders/webperformancecalculator
https://github.com/stanriders/webperformancecalculator
asp-net-core osu pp ppy
Last synced: 18 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/stanriders/webperformancecalculator
- Owner: stanriders
- License: mit
- Created: 2019-10-25T13:41:28.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-10-06T20:46:53.000Z (about 1 year ago)
- Last Synced: 2024-10-28T20:16:57.680Z (2 months ago)
- Topics: asp-net-core, osu, pp, ppy
- Language: HTML
- Homepage: https://newpp.stanr.info/
- Size: 359 KB
- Stars: 12
- Watchers: 2
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WebPerformanceCalculator
https://newpp.stanr.info/## API
**[GET] `/api/version`**
Get calculation module update date and commit `hash / name`---
**[GET] `/api/top?offset=0&limit=50&search=chocomint&order=desc&sort=localPp&country=KR`**
Get leaderboard page
Params:
* `search` - Player name or jsonname, doesn't work with `country`
* `sort` - Which field results should be sorted by
* `order` - Which order (`asc`/`desc`) should results be order by
* `country` - Country acronym to get a country leaderboard page, doesn't work with `search`
* `offset` - How many rows to skip
* `limit` - How many rows to return (max 500)---
**[GET] `/api/player/cookiezi`**
Get user profile
Params:
* `name` - Player user id or nickname---
**[GET] `/api/queue`**
Get current queue---
**[POST] `/api/queue?player=nathan on osu`**
Add player to queue and returns current queue
Params (url encoded):
* `player` = Player nickname or ID---
**[POST] `/api/maps/calculate`**
Calculate map pp values for 90-100 acc values
Params (json):
* `Map` - Beatmap ID, can't be BeatmapSet ID
* `Mods` - Array of mod abbreviations---
**[GET] `/api/maps/probabilitychart/129891?mods=HDDT`**
Get miss probability data for calculated map
Params:
* `mapId` - Beatmap ID
* `mods` - Joined string of mod abbreviations---
**[GET] `/api/highscores`**
Get current top scores sorted by local PP---
**[GET] `/api/countries`**
Get all known countries in the player database---
## Running
```dotnet WebPerformanceCalculator.dll```
### appsettings.json
```
{
"Urls": "http://localhost:5001",
"Key": "abcdefghjklmnopqrstuvwxyz0123456789", // admin/worker endpoints access key"HighscoreThreshold": 699.5, // pp threshold for /highscores/
"CalcsPerHourPerUser": 15, // how many profiles one user can calc in an hour"CalculatorPath": "/home/pp/osu-tools/bin/netcoreapp3.1", // path to a PerformanceCalculator.dll for map calculation
"CalculationModuleFileName": "osu.Game.Rulesets.Osu.dll",
"CalculationModuleUpdateLink": "http://localhost/osu.Game.Rulesets.Osu.dll", // URL from which workers should download calc updates"CommitHashFileName": "commithash" // path to file with commit hash, can be relative
}
```---
## Running workers
```dotnet WebPerformanceCalculator.Worker.dll```### appsettings.json
```
{
"CalculatorPath": "/home/pp/osu-tools/bin/netcoreapp3.1", // path to a PerformanceCalculator.dll
"CalculationModuleFileName": "osu.Game.Rulesets.Osu.dll",
"APIKey": "", // osu! API v1 key"GetWorkEndpointAddress": "http://localhost:6000/api/workers", // endpoint to get work data from, GET
"SubmitWorkEndpointAddress": "http://localhost:6000/api/workers", // endpoint to submit work data to, POST
"PollingRate": 1000, // how often to poll work endpoint
"Key": "abcdefghjklmnopqrstuvwxyz0123456789" // worker endpoints access key
}
```
ASP.NET 5.0