Ported new osu! PP & difficulty rework (2026.702.1 / osu-tools) — available for reference / review
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 139
- Forks
- 69
- PR merge metrics
- No merged PRs in 30d
Description
Hello @MaxOhn,
I've (gemini) ported the latest osu! difficulty and performance rework (matching osu-tools / ppy.osu.Game.Rulesets.Osu version 2026.702.1) into a fork here: https://github.com/Raregendary/rosu-pp-gemini
I wanted to open this issue to let you know in case you'd like to inspect it, use it as a reference, or adapt parts of it.
What was done:
- New evaluators: Ported
SnapAimEvaluator,FlowAimEvaluator,AgilityEvaluator, andReadingEvaluator. - Skills rewritten:
Aim: Updated with the new peak strain system and evaluator integration.Speed: Updated with harmonic scale weighting and per-object difficulty tracking.Reading: Added reading skill and attributes.
- Performance calculator: Integrated reading PP, cognition value, speed deviation, and estimated slider breaks.
- Formula & Star Rating updates: Updated the new star rating calculation and difficulty rating formulas.
Verification & Testing:
- All 217+ existing unit/gradual tests pass.
- Verified PP and difficulty outputs against C#
PerformanceCalculator(osu-tools) across various real maps and mod combinations (both stable and lazer rulesets), matching within ±0.05 tolerance. - Note on benchmarks: I have only verified numerical correctness and test passes; I haven't run comprehensive performance/allocation benchmarks yet.
Transparency Note:
This implementation was done with the assistance of an AI agent (Gemini 3.8) referencing the official C# osu! ruleset source. Since I wasn't sure what your policy is on AI-assisted contributions, I didn't want to open a direct PR without asking first.
Feel free to check out the branch, cherry-pick anything helpful or not :)
I have manually tested this and verified for osu standard with nm/hr/hd/cl modes, nothing else was tested by me.
The things we do so we don't have to use the c# library but have it natively in rust xD
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the fork at https://github.com/Raregendary/rosu-pp-gemini with osu-tools / ppy.osu.Game.Rulesets.Osu version 2026.702.1, focusing on the listed evaluators, skills, performance calculator, and formula changes. Review the existing 217+ unit and gradual tests, then compare outputs against the C# PerformanceCalculator; completion would require deciding which ported parts to adapt and validating the stated tolerance across supported maps and mods.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, rust
- Domain
- game-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100