-
Added a
⚠️ WARNING⚠️ in the readme to callBeatmap.free
whenever aBeatmap
instance is no longer of use to avoid risking memory leakage.const beatmap = new rosu.Beatmap(content); const attrs = new rosu.Performance().calculate(beatmap); beatmap.free();
-
Updated to rosu-pp v1.1.0
-
Mods can now be specified through more types than just
number
(#16):- an integer for bitflags
- a string for acronyms
- a single mod object as described below
- a sequence of types that deserialize into a single mod
Types that deserialize into a single mod are
- an integer for bitflags
- a string for an acronym
- a mod object
A mod object must have an
acronym: string
property and an optionalsettings?: Object
property. -
For
Difficulty
,Performance
, andBeatmapAttributesBuilder
, all fields of their constructors' fields are now also available as setters after initialization. (#14)let calc = new rosu.Difficulty({ clockRate: 1.7 }); calc.mods = "HDDT"; calc.clockRate = undefined;
- Fixed the
state
field ofPerformanceAttributes
(#9) - Removed the
wee_alloc
feature because its repository is unmaintained.
- Fixed difficulty arguments not being considered as performance attributes
- Updated to rosu-pp v1.0.0
- The binding is no longer imported under the name
rosu-pp
but asrosu-pp-js
- The binding is now powered by
Wasm
instead ofNeon
. As a result, Rust is no longer required to be installed and the library now works in non-nodejs environments like browsers. - Breaking changes ahead! There are now multiple different calculators:
Difficulty
to calculateDifficultyAttributes
,Strains
, or create gradual calculatorsPerformance
to calculatePerformanceAttributes
BeatmapAttributesBuilder
to calculateBeatmapAttributes
GradualDifficulty
to calculateDifficultyAttributes
for each hitobjectGradualPerformance
to calculatePerformanceAttributes
for each hitresult
Check out the rosu_pp_js.d.ts
file to see available types, methods, arguments, and fields. The README.md
file provides some more explanations and examples.
- Updated to rosu-pp v0.9.4.
- Updated to rosu-pp v0.9.3. Only includes some bug fixes.
- Map attributes now also include the properties
mode
,version
,nCircles
,nSliders
, andnSpinners
.
- Updated to rosu-pp v0.9.1 including the big changes in v0.9.0
- The binding interface is rewritten completely, see the readme.
- Updated to rosu-pp v0.8.0
- The calculation result now contains a
timePreempt
field for osu!standard andgreatHitWindow
for osu!standard, osu!taiko, and osu!mania. - Fixed map attributes when mods were interacting with custom clock rates
- Updated to rosu-pp v0.7.1
- Updated to rosu-pp v0.7.0
- Added
strains
method to calculate the strain values for all skills of the map's game mode
- Updated to rosu-pp v0.6.0
- The field
mode
can now be specified to convert maps to different modes - Added the typescript type
enum GameMode { Osu, Taiko, Catch, Mania }
- Bumped patch version of dependencies, including a rosu-pp update
- Now considering custom map attributes properly
- Updated to rosu-pp v0.5.1
ScoreParams
may now include additional fields:clockRate
,ar
,cs
,hp
, andod
- The return object of a calculation now also includes a
clockRate
field
- Initial release with rosu-pp v0.4.0