1.0.1 • Published 10 months ago

@kasuga/osu-utils v1.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
10 months ago

Osu Utils

Useful functions for osu! all game modes.

Installation

npm install @kasuga/osu-utils

Documentaion

Accuracy

Osu!
const accuracy = calculateAccuracy({
  mode: 0,
  count300: 1892,
  count100: 32,
  count50: 28,
  countMiss: 0,
});
Osu!taiko
const accuracy = calculateAccuracy({
  mode: 1,
  count300: 1892,
  count100: 32,
  countMiss: 0,
});
Osu!catch
const accuracy = calculateAccuracy({
  mode: 2,
  count300: 1892,
  count100: 32,
  count50: 28,
  countMiss: 0,
  countKatu: 0.5,
});
Osu!mania
const accuracy = calculateAccuracy({
  mode: 2,
  count300: 1892,
  count100: 32,
  count50: 28,
  countMiss: 0,
  countKatu: 0.5,
  countGeki: 0,
});

Mods

const mods = transformModsToString(8 + 24);
// Result -> HDDT

Rank

Osu!
const accuracy = calculateAccuracy({
  mode: 0,
  count300: 1892,
  count100: 32,
  count50: 28,
  countMiss: 0,
});

const rank = calculateRank({
  mode: 0,
  count300: 1892,
  count100: 32,
  count50: 28,
  countMiss: 0,
  accuracy,
});
Osu!taiko
const accuracy = calculateAccuracy({
  mode: 1,
  count300: 1892,
  count100: 32,
  countMiss: 0,
});

const rank = calculateRank({
  mode: 1,
  accuracy,
});
Osu!catch
const accuracy = calculateAccuracy({
  mode: 2,
  count300: 1892,
  count100: 32,
  count50: 28,
  countMiss: 0,
  countKatu: 0.5,
});

const rank = calculateRank({
  mode: 2,
  accuracy,
});
Osu!mania
const accuracy = calculateAccuracy({
  mode: 3,
  count300: 1892,
  count100: 32,
  count50: 28,
  countMiss: 0,
  countKatu: 0.5,
  countGeki: 0,
});

const rank = calculateRank({
  mode: 3,
  accuracy,
});

Performance (PP)

We use Rosu PP and Axios internally.

1. Get Beatmap

You must pass the beatmap ID, not the SetId.

const beatmap = await getBeatmap(3696791);

If you were calculating PP for a game mode other than Osu!, you must convert the beatmap.

beatmap.convert(GameMode.Taiko);
2. Get Performance
const performance = calculatePerformance(beatmap, {
  mods: 8 + 64, // HDDT
});
console.info(performance);
1.0.1

10 months ago

1.0.0

10 months ago