# osu! mod calculator

[![NPM link](https://img.shields.io/badge/NPM-CB3837?style=for-the-badge&logo=npm&logoColor=white)](https://www.npmjs.com/package/osumodcalculator)
[![CodeFactor](https://www.codefactor.io/repository/github/sbrstrkkdwmdr/osumodcalculator/badge)](https://www.codefactor.io/repository/github/sbrstrkkdwmdr/osumodcalculator)

[Docs](https://sbrstrkkdwmdr.github.io/osumodcalculator)

### Installation

`npm i osumodcalculator`

### Usage

```ts
import { types, mod } from "osumodcalculator";

const mods: types.Mod[] = mod.fromString("HDDTHR"); // => ['HD', 'DT', 'HR']
```

### notes:

-   EZ & HR calculations should come before DT/HT calculations
-   OD is listed as accuracy in the osu! api
-   HP is listed as drain in the osu! api

### credits:

-   [osu! accuracy wiki](https://osu.ppy.sh/wiki/en/Gameplay/Accuracy)
-   [osu! grades wiki](https://osu.ppy.sh/wiki/en/FAQ#grades)
-   [osu! mods wiki](https://osu.ppy.sh/wiki/en/Gameplay/Game_modifier_%28lazer%29)
-   [Difficulty Settings Table](https://www.reddit.com/r/osugame/comments/6phntt/difficulty_settings_table_with_all_values/)

### Contact

[My website](https://sbrstrkkdwmdr.me)
