Skip to main content

osu-native-py

PyPI Version Python Version License

Python wrapper for osu-native, providing difficulty and performance calculation for all osu! modes.

Example

Calculating performance

from osu_native_py.wrapper.calculators import create_difficulty_calculator
from osu_native_py.wrapper.calculators import create_performance_calculator
from osu_native_py.wrapper.objects import Beatmap
from osu_native_py.wrapper.objects import Mod
from osu_native_py.wrapper.objects import ModsCollection
from osu_native_py.wrapper.objects import Ruleset
from osu_native_py.wrapper.objects import ScoreInfo

BEATMAP_PATH = "/path/to/file.osu"


beatmap = Beatmap.from_file(BEATMAP_PATH)
ruleset = Ruleset.from_id(0)
mods = ModsCollection.create()

for mod_name in ["DT", "CL"]:
    mod = Mod.create(mod_name)
    mods.add(mod)

score = ScoreInfo(
    accuracy=0.94,
    max_combo=116,
    count_great=65,
    count_meh=0,
    count_ok=6,
    count_miss=0,
)

diff_calc = create_difficulty_calculator(ruleset, beatmap)
diff_attrs = diff_calc.calculate(mods)

perf_calc = create_performance_calculator(ruleset)
perf_attrs = perf_calc.calculate(ruleset, beatmap, mods, score, diff_attrs)

print(perf_attrs.total)

Installation

pip install osu-native-py

Supported Platforms

  • Windows: x64
  • Linux: x64, ARM64, ARM
  • macOS: ARM64 (Apple Silicon)

Thanks to

Release files for osu-native-py 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for osu-native-py 0.1.1
File
osu_native_py-0.1.1-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
osu_native_py-0.1.1-py3-none-manylinux_2_38_x86_64.whl Python 3 none Linux glibc 2.38+ x86-64 Details
osu_native_py-0.1.1-py3-none-manylinux_2_38_armv7l.whl Python 3 none Linux glibc 2.38+ ARMv7l Details
osu_native_py-0.1.1-py3-none-manylinux_2_38_aarch64.whl Python 3 none Linux glibc 2.38+ ARM64 Details
osu_native_py-0.1.1-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 48.0 MB

Release files / osu_native_py-0.1.1-py3-none-win_amd64.whl

Download URL osu_native_py-0.1.1-py3-none-win_amd64.whl
Size 7.5 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
063494fea9f9c6634c46ef87a6712a03688e41c6540230e344229d22462e6870
BLAKE2b-256 checksum
How to use checksums
686149e2eb428a4e00a43c0c2dc42f6a59abc1a4a2d47992b52cf2215118b2f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / osu_native_py-0.1.1-py3-none-manylinux_2_38_x86_64.whl

Download URL osu_native_py-0.1.1-py3-none-manylinux_2_38_x86_64.whl
Size 7.9 MB
Tags Linux glibc 2.38+ x86-64 Python 3
SHA-256 checksum
How to use checksums
bb986ad2b758a61f56aea561e0161008db7ee374eba53fde2b584bed1241be5f
BLAKE2b-256 checksum
How to use checksums
e3b752e0b9070c450076b114c0153ff79bdd7ac41be4da5eadf8a7d43eb6be45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / osu_native_py-0.1.1-py3-none-manylinux_2_38_armv7l.whl

Download URL osu_native_py-0.1.1-py3-none-manylinux_2_38_armv7l.whl
Size 17.6 MB
Tags Linux glibc 2.38+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
2994b86cc6630bbde4947f9e808fd97aac7e52da01692326013ca9d701f3c5f4
BLAKE2b-256 checksum
How to use checksums
547aa82b3e9c8fd72170d8c7fab878571501b6fdfc6bdf7b24fdd73be3c562b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / osu_native_py-0.1.1-py3-none-manylinux_2_38_aarch64.whl

Download URL osu_native_py-0.1.1-py3-none-manylinux_2_38_aarch64.whl
Size 7.6 MB
Tags Linux glibc 2.38+ ARM64 Python 3
SHA-256 checksum
How to use checksums
b4d12244653dd59add6ce245f2097862f63de1b01743e2bb2b2f542b5d19802b
BLAKE2b-256 checksum
How to use checksums
0aed8b1fc03d5398e1b2e239ff87a982e73d6cf43ade2e7f124cd0877b2cf593
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / osu_native_py-0.1.1-py3-none-macosx_11_0_arm64.whl

Download URL osu_native_py-0.1.1-py3-none-macosx_11_0_arm64.whl
Size 7.4 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
711caca7c942674e8d4a6ad0526e0358e47f3aba51322e310793122931414e7f
BLAKE2b-256 checksum
How to use checksums
d6c44ba84a4605db5517e83f49bb93f6fc5387142e12de93099365d91613c563
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.1.1 This release

5 release files

0.1.0

1 release file

0.0.3

1 release file

0.0.2

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page