项目作者: Eve-ning

项目描述 :
processed osu!mania data from osu!API
高级语言:
项目地址: git://github.com/Eve-ning/osumania_data.git
创建时间: 2020-09-13T12:39:35Z
项目社区:https://github.com/Eve-ning/osumania_data

开源协议:GNU Affero General Public License v3.0

下载


osu!mania data

I extracted osu!mania data from the osu! website for data analytics.

Most information about the data can be found in the following.

https://github.com/ppy/osu-api/wiki

BEATMAPS

Only ranked & loved beatmaps are grabbed.

There are 3 entries per unique ranked beatmap.

  • Half Time
  • No Mod
  • Double Time

You can tell them apart in the mods column.

These entries only vary in the difficultyrating from what I know.

  1. "approved" : "1", // 4 = loved, 3 = qualified, 2 = approved, 1 = ranked, 0 = pending, -1 = WIP, -2 = graveyard
  2. "submit_date" : "2013-05-15 11:32:26", // date submitted, in UTC
  3. "approved_date" : "2013-07-06 08:54:46", // date ranked, in UTC
  4. "last_update" : "2013-07-06 08:51:22", // last update date, in UTC. May be after approved_date if map was unranked and reranked.
  5. "artist" : "Luxion",
  6. "beatmap_id" : "252002", // beatmap_id is per difficulty
  7. "beatmapset_id" : "93398", // beatmapset_id groups difficulties into a set
  8. "bpm" : "196",
  9. "creator" : "RikiH_",
  10. "creator_id" : "686209",
  11. "difficultyrating" : "5.744717597961426", // The amount of stars the map would have ingame and on the website
  12. "diff_aim" : "2.7706098556518555",
  13. "diff_speed" : "2.9062750339508057",
  14. "diff_size" : "4", // Circle size value (CS)
  15. "diff_overall" : "8", // Overall difficulty (OD)
  16. "diff_approach" : "9", // Approach Rate (AR)
  17. "diff_drain" : "7", // Health drain (HP)
  18. "hit_length" : "114", // seconds from first note to last note not including breaks
  19. "source" : "BMS",
  20. "genre_id" : "2", // 0 = any, 1 = unspecified, 2 = video game, 3 = anime, 4 = rock, 5 = pop, 6 = other, 7 = novelty, 9 = hip hop, 10 = electronic, 13 = folk (note that there's no 8)
  21. "language_id" : "5", // 0 = any, 1 = other, 2 = english, 3 = japanese, 4 = chinese, 5 = instrumental, 6 = korean, 7 = french, 8 = german, 9 = swedish, 10 = spanish, 11 = italian
  22. "title" : "High-Priestess", // song name
  23. "total_length" : "146", // seconds from first note to last note including breaks
  24. "version" : "Overkill", // difficulty name
  25. "file_md5" : "c8f08438204abfcdd1a748ebfae67421",
  26. // md5 hash of the beatmap
  27. "mode" : "0", // game mode,
  28. "tags" : "kloyd flower roxas", // Beatmap tags separated by spaces.
  29. "favourite_count" : "140", // Number of times the beatmap was favourited. (americans: notice the ou!)
  30. "rating" : "9.44779",
  31. "playcount" : "94637", // Number of times the beatmap was played
  32. "passcount" : "10599", // Number of times the beatmap was passed, completed (the user didn't fail or retry)
  33. "count_normal" : "388",
  34. "count_slider" : "222",
  35. "count_spinner" : "3",
  36. "max_combo" : "899", // The maximum combo a user can reach playing this beatmap.
  37. "storyboard" : "0", // If this beatmap has a storyboard
  38. "video" : "0", // If this beatmap has a video
  39. "download_unavailable" : "0", // If the download for this beatmap is unavailable (old map, etc.)
  40. "audio_unavailable" : "0" // If the audio for this beatmap is unavailable (DMCA takedown, etc.)

Columns, "max_combo", "diff_aim", "diff_speed" may be NULL.

SCORES

Only ranked & loved beatmaps are grabbed.

Only the top 100 scores are grabbed, hence note the following:

  • The top 100 may not be all No Mod
  • enabled_mods define the mods used
  • Loved scores do not have pp
  1. "score_id" : "7654321",
  2. "score" : "1234567",
  3. "username" : "User name",
  4. "count300" : "300",
  5. "count100" : "50",
  6. "count50" : "10",
  7. "countmiss" : "1",
  8. "maxcombo" : "421",
  9. "countkatu" : "10",
  10. "countgeki" : "50",
  11. "perfect" : "0", // 1 = maximum combo of map reached, 0 otherwise
  12. "enabled_mods" : "76", // bitwise flag representation of mods used. see reference
  13. "user_id" : "1",
  14. "date" : "2013-06-22 9:11:16", // in UTC
  15. "rank" : "SH",
  16. "pp" : "1.3019", //Float value , 4 decimals
  17. "replay_available" : "1" // 1 = replay is available for download, 0 = replay is unavailable

SAMPLING (2500)

In every data set, there’s a sampleset for 2500 randomly selected.

Hence:

  • SCORES_2500 may not have beatmap_id that match BEATMAPS_2500.
  • Entries of BEATMAPS_2500 may not include all 3 variations.
  • Top 100 of a single beatmap is never guaranteed.

MODS

Reference: https://github.com/ppy/osu-api/wiki

  1. enum Mods
  2. {
  3. None = 0,
  4. NoFail = 1,
  5. Easy = 2,
  6. Hidden = 8,
  7. HardRock = 16,
  8. SuddenDeath = 32,
  9. DoubleTime = 64,
  10. HalfTime = 256,
  11. Nightcore = 512, // Only set along with DoubleTime. i.e: NC only gives 576
  12. Flashlight = 1024,
  13. Perfect = 16384, // Only set along with SuddenDeath. i.e: PF only gives 16416
  14. FadeIn = 1048576,
  15. Mirror = 1073741824,
  16. }

ACKNOWLEDGEMENTS

API is supported here: https://github.com/ppy/osu-api/wiki