@rian8337/osu-droid-replay-analyzer 4.0.0-beta.0 → 4.0.0-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -379,11 +379,9 @@ class ThreeFingerChecker {
379
379
  */
380
380
  difficultyAttributes;
381
381
  /**
382
- * The strain threshold to start detecting for 3-fingered section.
383
- *
384
- * Increasing this number will result in less sections being flagged.
382
+ * The true scale of objects.
385
383
  */
386
- static strainThreshold = 175;
384
+ trueScale;
387
385
  /**
388
386
  * The distance threshold between cursors to assume that two cursors are
389
387
  * actually pressed with 1 finger in osu!pixels.
@@ -464,11 +462,16 @@ class ThreeFingerChecker {
464
462
  od: this.beatmap.difficulty.od,
465
463
  mods: this.difficultyAttributes.mods.filter((m) => m.isApplicableToDroid() &&
466
464
  !osuBase.ModUtil.speedChangingMods.some((v) => v.acronym === m.acronym)),
467
- }).calculate();
465
+ }).calculate({ mode: osuBase.Modes.droid, convertDroidOD: false });
468
466
  this.isPrecise = this.difficultyAttributes.mods.some((m) => m instanceof osuBase.ModPrecise);
469
467
  this.hitWindow = new osuBase.DroidHitWindow(stats.od);
470
468
  this.strainNoteCount =
471
469
  this.difficultyAttributes.possibleThreeFingeredSections.reduce((a, v) => a + v.lastObjectIndex - v.firstObjectIndex + 1, 0);
470
+ const circleSize = new osuBase.MapStats({
471
+ cs: this.beatmap.difficulty.cs,
472
+ mods: this.difficultyAttributes.mods,
473
+ }).calculate({ mode: osuBase.Modes.droid }).cs;
474
+ this.trueScale = (1 - (0.7 * (circleSize - 5)) / 5) / 2;
472
475
  }
473
476
  /**
474
477
  * Checks whether a beatmap is eligible to be detected for 3-finger.
@@ -601,10 +604,12 @@ class ThreeFingerChecker {
601
604
  const validOccurrences = [];
602
605
  for (let j = 0; j < cursorInstance.occurrenceGroups.length; ++j) {
603
606
  const group = cursorInstance.occurrenceGroups[j];
604
- if (group.startTime < firstObjectHitTime ||
605
- group.endTime > lastObjectHitTime) {
607
+ if (group.startTime < firstObjectHitTime) {
606
608
  continue;
607
609
  }
610
+ if (group.startTime > lastObjectHitTime) {
611
+ break;
612
+ }
608
613
  if (this.breakPointAccurateTimes.some((v) => group.startTime >= v.startTime &&
609
614
  group.endTime <= v.endTime)) {
610
615
  continue;
@@ -715,7 +720,7 @@ class ThreeFingerChecker {
715
720
  findDragIndex(sectionObjects, sectionReplayObjectData, cursorIndexes) {
716
721
  const hitWindow50 = this.hitWindow.hitWindowFor50(this.isPrecise);
717
722
  for (let i = 0; i < sectionObjects.length && cursorIndexes.every((v) => v !== -1); ++i) {
718
- const object = sectionObjects[i];
723
+ let object = sectionObjects[i];
719
724
  const objectData = sectionReplayObjectData[i];
720
725
  if (object instanceof osuBase.Spinner ||
721
726
  objectData.result === exports.HitResult.miss) {
@@ -726,6 +731,11 @@ class ThreeFingerChecker {
726
731
  objectData.accuracy === Math.floor(hitWindow50) + 13) {
727
732
  continue;
728
733
  }
734
+ if (object.droidScale !== this.trueScale) {
735
+ // Deep copy the instance so that we can assign scale.
736
+ object = osuBase.Utils.deepCopy(object);
737
+ object.droidScale = this.trueScale;
738
+ }
729
739
  const objectPosition = object.getStackedPosition(osuBase.Modes.droid);
730
740
  const hitTime = object.startTime + objectData.accuracy;
731
741
  // Observe the cursor position at the object's hit time.
@@ -1042,7 +1052,7 @@ class TwoHandChecker {
1042
1052
  od: this.calculator.beatmap.difficulty.od,
1043
1053
  mods: this.calculator.mods.filter((m) => m.isApplicableToDroid() &&
1044
1054
  !osuBase.ModUtil.speedChangingMods.some((v) => v.acronym === m.acronym)),
1045
- }).calculate();
1055
+ }).calculate({ mode: osuBase.Modes.droid, convertDroidOD: false });
1046
1056
  this.hitWindow = new osuBase.DroidHitWindow(stats.od);
1047
1057
  this.hitWindow50 = this.hitWindow.hitWindowFor50(calculator.mods.some((m) => m instanceof osuBase.ModPrecise));
1048
1058
  // this.csvString = `Mods,${
@@ -1637,10 +1647,6 @@ class SliderCheeseChecker {
1637
1647
  * The 50 osu!droid hit window of the analyzed beatmap.
1638
1648
  */
1639
1649
  hitWindow50;
1640
- /**
1641
- * The difficulty ratings of sliders that were cheesed.
1642
- */
1643
- cheesedDifficultyRatings = [];
1644
1650
  /**
1645
1651
  * @param beatmap The beatmap to analyze.
1646
1652
  * @param data The data of the replay.
@@ -1654,129 +1660,212 @@ class SliderCheeseChecker {
1654
1660
  od: this.beatmap.difficulty.od,
1655
1661
  mods: this.difficultyAttributes.mods.filter((m) => m.isApplicableToDroid() &&
1656
1662
  !osuBase.ModUtil.speedChangingMods.some((v) => v.acronym === m.acronym)),
1657
- }).calculate();
1663
+ }).calculate({ mode: osuBase.Modes.droid, convertDroidOD: false });
1658
1664
  this.hitWindow50 = new osuBase.DroidHitWindow(stats.od).hitWindowFor50(this.difficultyAttributes.mods.some((m) => m instanceof osuBase.ModPrecise));
1659
1665
  }
1660
1666
  /**
1661
1667
  * Checks if relevant sliders in the given beatmap was cheesed.
1662
1668
  */
1663
1669
  check() {
1664
- if (this.difficultyAttributes.difficultSliders.length === 0) {
1670
+ if (this.difficultyAttributes.difficultSliders.length === 0 ||
1671
+ (this.difficultyAttributes.sliderFactor === 1 &&
1672
+ this.difficultyAttributes.flashlightSliderFactor === 1 &&
1673
+ this.difficultyAttributes.visualSliderFactor === 1)) {
1665
1674
  return {
1666
1675
  aimPenalty: 1,
1667
1676
  flashlightPenalty: 1,
1668
1677
  visualPenalty: 1,
1669
1678
  };
1670
1679
  }
1671
- this.checkSliderCheesing();
1672
- return this.calculateSliderCheesePenalty();
1680
+ const cheesedDifficultyRatings = this.checkSliderCheesing();
1681
+ return this.calculateSliderCheesePenalty(cheesedDifficultyRatings);
1673
1682
  }
1674
1683
  /**
1675
1684
  * Checks for sliders that were cheesed.
1676
1685
  */
1677
1686
  checkSliderCheesing() {
1678
- // Current loop indexes are stored for efficiency.
1679
- const cursorLoopIndexes = osuBase.Utils.initializeArray(10, 0);
1680
- const acceptableRadius = this.beatmap.hitObjects.objects[0].getRadius(osuBase.Modes.droid) * 2;
1681
- for (const difficultSlider of this.difficultyAttributes
1682
- .difficultSliders) {
1687
+ const { objects } = this.beatmap.hitObjects;
1688
+ const cheesedDifficultyRatings = [];
1689
+ // Current loop indices are stored for efficiency.
1690
+ const cursorLoopIndices = osuBase.Utils.initializeArray(10, 0);
1691
+ const circleSize = new osuBase.MapStats({
1692
+ cs: this.beatmap.difficulty.cs,
1693
+ mods: this.difficultyAttributes.mods,
1694
+ }).calculate({ mode: osuBase.Modes.droid }).cs;
1695
+ const scale = osuBase.CircleSizeCalculator.standardCSToStandardScale(circleSize);
1696
+ const acceptableRadius = 64 * scale * 2.4;
1697
+ // Sort difficult sliders by index so that cursor loop indices work properly.
1698
+ for (const difficultSlider of this.difficultyAttributes.difficultSliders
1699
+ .slice()
1700
+ .sort((a, b) => a.index - b.index)) {
1683
1701
  if (difficultSlider.index >= this.data.hitObjectData.length) {
1684
1702
  continue;
1685
1703
  }
1686
- const object = (this.beatmap.hitObjects.objects[difficultSlider.index]);
1687
- const objectStartPosition = object.getStackedPosition(osuBase.Modes.droid);
1688
1704
  const objectData = this.data.hitObjectData[difficultSlider.index];
1689
- // If a slider break occurs, we disregard the check for that slider.
1690
- if (objectData.accuracy === Math.floor(this.hitWindow50) + 13) {
1705
+ // If a miss or slider break occurs, we disregard the check for that slider.
1706
+ if (objectData.result === exports.HitResult.miss ||
1707
+ objectData.accuracy === Math.floor(this.hitWindow50) + 13) {
1691
1708
  continue;
1692
1709
  }
1693
- let isCheesed = false;
1694
- for (let j = 0; j < this.data.cursorMovement.length; ++j) {
1695
- if (isCheesed) {
1696
- break;
1697
- }
1698
- const cursorGroups = this.data.cursorMovement[j].occurrenceGroups;
1699
- for (let k = cursorLoopIndexes[j]; k < cursorGroups.length; k = ++cursorLoopIndexes[j]) {
1700
- const group = cursorGroups[k];
1701
- if (group.startTime < object.startTime - this.hitWindow50) {
1710
+ let object = objects[difficultSlider.index];
1711
+ if (object.droidScale !== scale) {
1712
+ // Deep clone the object so that we can assign scale properly.
1713
+ object = osuBase.Utils.deepCopy(object);
1714
+ object.droidScale = scale;
1715
+ }
1716
+ const objectStartPosition = object.getStackedPosition(osuBase.Modes.droid);
1717
+ // These time boundaries should consider the delta time between the previous and next
1718
+ // object as well as their hit accuracy. However, they are somewhat complicated to
1719
+ // compute and the accuracy gain is small. As such, let's settle with 50 hit window.
1720
+ const minTimeLimit = object.startTime - this.hitWindow50;
1721
+ const maxTimeLimit = object.startTime + this.hitWindow50;
1722
+ // Get the closest tap distance across all cursors.
1723
+ const closestDistances = [];
1724
+ const closestGroupIndices = [];
1725
+ for (let i = 0; i < this.data.cursorMovement.length; ++i) {
1726
+ const cursorGroups = this.data.cursorMovement[i].occurrenceGroups;
1727
+ let closestDistance = Number.POSITIVE_INFINITY;
1728
+ let closestIndex = cursorGroups.length;
1729
+ for (let j = cursorLoopIndices[i]; j < cursorGroups.length; j = ++cursorLoopIndices[i]) {
1730
+ const group = cursorGroups[j];
1731
+ if (group.endTime < minTimeLimit) {
1702
1732
  continue;
1703
1733
  }
1704
- if (group.startTime > object.startTime + this.hitWindow50) {
1734
+ if (group.startTime > maxTimeLimit) {
1705
1735
  break;
1706
1736
  }
1707
- if (group.down.position.getDistance(objectStartPosition) >
1708
- acceptableRadius) {
1709
- continue;
1710
- }
1711
- // Track cursor movement to see if it lands on every tick.
1712
- let occurrenceLoopIndex = 1;
1713
- let isSliderFulfilled = true;
1714
- const { allOccurrences } = group;
1715
- for (let l = 1; l < object.nestedHitObjects.length; ++l) {
1716
- if (!isSliderFulfilled) {
1717
- break;
1718
- }
1719
- const tickWasHit = objectData.tickset[l - 1];
1720
- if (!tickWasHit) {
1721
- continue;
1737
+ if (group.startTime >= minTimeLimit) {
1738
+ const distance = group.down.position.getDistance(objectStartPosition);
1739
+ if (closestDistance > distance) {
1740
+ closestDistance = distance;
1741
+ closestIndex = j;
1722
1742
  }
1723
- const nestedObject = object.nestedHitObjects[l];
1724
- const nestedPosition = nestedObject.getStackedPosition(osuBase.Modes.droid);
1725
- while (occurrenceLoopIndex < allOccurrences.length &&
1726
- allOccurrences[occurrenceLoopIndex].time <
1727
- nestedObject.startTime) {
1728
- ++occurrenceLoopIndex;
1729
- }
1730
- if (occurrenceLoopIndex === allOccurrences.length) {
1731
- continue;
1743
+ if (closestDistance <= acceptableRadius / 2) {
1744
+ break;
1732
1745
  }
1733
- const occurrence = allOccurrences[occurrenceLoopIndex];
1734
- const prevOccurrence = allOccurrences[occurrenceLoopIndex - 1];
1746
+ }
1747
+ // Normally, we check if there are cursor presses within the group's active time.
1748
+ // However, some funky workarounds are used throughout the game for replays, so
1749
+ // for the time being we only check for cursor distances across the group.
1750
+ const { allOccurrences } = group;
1751
+ for (let k = 1; k < allOccurrences.length; ++k) {
1752
+ const occurrence = allOccurrences[k];
1753
+ const prevOccurrence = allOccurrences[k - 1];
1754
+ let distance = Number.POSITIVE_INFINITY;
1735
1755
  switch (occurrence.id) {
1736
- case exports.MovementType.move: {
1737
- // Interpolate cursor position during nested object time.
1738
- const t = (nestedObject.startTime -
1739
- prevOccurrence.time) /
1740
- (occurrence.time - prevOccurrence.time);
1741
- const cursorPosition = new osuBase.Vector2(osuBase.Interpolation.lerp(prevOccurrence.position.x, occurrence.position.x, t), osuBase.Interpolation.lerp(prevOccurrence.position.y, occurrence.position.y, t));
1742
- const distance = cursorPosition.getDistance(nestedPosition);
1743
- if (distance > acceptableRadius) {
1744
- isSliderFulfilled = false;
1745
- }
1746
- break;
1747
- }
1748
1756
  case exports.MovementType.up:
1749
- if (prevOccurrence.position.getDistance(nestedPosition) > acceptableRadius) {
1750
- isSliderFulfilled = false;
1751
- break;
1757
+ distance =
1758
+ prevOccurrence.position.getDistance(objectStartPosition);
1759
+ break;
1760
+ case exports.MovementType.move:
1761
+ for (let mSecPassed = Math.max(prevOccurrence.time, minTimeLimit); mSecPassed <=
1762
+ Math.min(occurrence.time, maxTimeLimit); ++mSecPassed) {
1763
+ const t = (mSecPassed - prevOccurrence.time) /
1764
+ (occurrence.time - prevOccurrence.time);
1765
+ const cursorPosition = new osuBase.Vector2(osuBase.Interpolation.lerp(prevOccurrence.position.x, occurrence.position.x, t), osuBase.Interpolation.lerp(prevOccurrence.position.y, occurrence.position.y, t));
1766
+ distance =
1767
+ cursorPosition.getDistance(objectStartPosition);
1768
+ if (closestDistance > distance) {
1769
+ closestDistance = distance;
1770
+ closestIndex = j;
1771
+ }
1772
+ if (closestDistance <=
1773
+ acceptableRadius / 2) {
1774
+ break;
1775
+ }
1752
1776
  }
1753
1777
  }
1778
+ if (closestDistance > distance) {
1779
+ closestDistance = distance;
1780
+ closestIndex = j;
1781
+ }
1782
+ if (closestDistance <= acceptableRadius / 2) {
1783
+ break;
1784
+ }
1754
1785
  }
1755
- if (!isSliderFulfilled) {
1756
- isCheesed = true;
1786
+ }
1787
+ closestDistances.push(closestDistance);
1788
+ closestGroupIndices.push(closestIndex);
1789
+ if (cursorLoopIndices[i] > 0) {
1790
+ // Decrement the index. The previous group may also have a role on the next slider.
1791
+ --cursorLoopIndices[i];
1792
+ }
1793
+ }
1794
+ const cursorIndex = closestDistances.indexOf(Math.min(...closestDistances));
1795
+ const closestDistance = closestDistances[cursorIndex];
1796
+ if (closestDistance > acceptableRadius / 2) {
1797
+ cheesedDifficultyRatings.push(difficultSlider.difficultyRating);
1798
+ continue;
1799
+ }
1800
+ const group = this.data.cursorMovement[cursorIndex].occurrenceGroups[closestGroupIndices[cursorIndex]];
1801
+ let isCheesed = false;
1802
+ // Track cursor movement to see if it lands on every tick.
1803
+ let occurrenceLoopIndex = 1;
1804
+ const { allOccurrences } = group;
1805
+ for (let i = 1; i < object.nestedHitObjects.length; ++i) {
1806
+ if (isCheesed) {
1807
+ break;
1808
+ }
1809
+ const tickWasHit = objectData.tickset[i - 1];
1810
+ if (!tickWasHit) {
1811
+ continue;
1812
+ }
1813
+ const nestedObject = object.nestedHitObjects[i];
1814
+ nestedObject.droidScale = scale;
1815
+ // Special treatment for slider tail where its treated as a "legacy tail" in osu!standard.
1816
+ // In that case, its time is assumed to be 36ms behind the slider's end time. However, that
1817
+ // is not the case for osu!droid.
1818
+ if (nestedObject instanceof osuBase.SliderTail) {
1819
+ nestedObject.startTime = object.endTime;
1820
+ nestedObject.endTime = object.endTime;
1821
+ }
1822
+ const nestedPosition = nestedObject.getStackedPosition(osuBase.Modes.droid);
1823
+ while (occurrenceLoopIndex < allOccurrences.length &&
1824
+ allOccurrences[occurrenceLoopIndex].time <
1825
+ nestedObject.startTime) {
1826
+ ++occurrenceLoopIndex;
1827
+ }
1828
+ if (occurrenceLoopIndex === allOccurrences.length) {
1829
+ continue;
1830
+ }
1831
+ const occurrence = allOccurrences[occurrenceLoopIndex];
1832
+ const prevOccurrence = allOccurrences[occurrenceLoopIndex - 1];
1833
+ switch (occurrence.id) {
1834
+ case exports.MovementType.move: {
1835
+ // Interpolate cursor position during nested object time.
1836
+ const t = (nestedObject.startTime - prevOccurrence.time) /
1837
+ (occurrence.time - prevOccurrence.time);
1838
+ const cursorPosition = new osuBase.Vector2(osuBase.Interpolation.lerp(prevOccurrence.position.x, occurrence.position.x, t), osuBase.Interpolation.lerp(prevOccurrence.position.y, occurrence.position.y, t));
1839
+ const distance = cursorPosition.getDistance(nestedPosition);
1840
+ isCheesed = distance > acceptableRadius;
1757
1841
  break;
1758
1842
  }
1843
+ case exports.MovementType.up:
1844
+ isCheesed =
1845
+ prevOccurrence.position.getDistance(nestedPosition) > acceptableRadius;
1759
1846
  }
1760
1847
  }
1761
1848
  if (isCheesed) {
1762
- this.cheesedDifficultyRatings.push(difficultSlider.difficultyRating);
1849
+ cheesedDifficultyRatings.push(difficultSlider.difficultyRating);
1763
1850
  }
1764
1851
  }
1852
+ return cheesedDifficultyRatings;
1765
1853
  }
1766
1854
  /**
1767
1855
  * Calculates the slider cheese penalty.
1768
1856
  */
1769
- calculateSliderCheesePenalty() {
1770
- const summedDifficultyRating = this.cheesedDifficultyRatings.reduce((a, v) => a + v, 0);
1857
+ calculateSliderCheesePenalty(cheesedDifficultyRatings) {
1858
+ const summedDifficultyRating = Math.min(1, cheesedDifficultyRatings.reduce((a, v) => a + v, 0));
1771
1859
  return {
1772
- aimPenalty: 1 -
1773
- summedDifficultyRating * this.difficultyAttributes.sliderFactor,
1774
- flashlightPenalty: 1 -
1860
+ aimPenalty: Math.max(this.difficultyAttributes.sliderFactor, Math.pow(1 -
1861
+ summedDifficultyRating *
1862
+ this.difficultyAttributes.sliderFactor, 2)),
1863
+ flashlightPenalty: Math.max(this.difficultyAttributes.flashlightSliderFactor, Math.pow(1 -
1775
1864
  summedDifficultyRating *
1776
- this.difficultyAttributes.flashlightSliderFactor,
1777
- visualPenalty: 1 -
1865
+ this.difficultyAttributes.flashlightSliderFactor, 2)),
1866
+ visualPenalty: Math.max(this.difficultyAttributes.visualSliderFactor, Math.pow(1 -
1778
1867
  summedDifficultyRating *
1779
- this.difficultyAttributes.visualSliderFactor,
1868
+ this.difficultyAttributes.visualSliderFactor, 2)),
1780
1869
  };
1781
1870
  }
1782
1871
  }
@@ -1947,29 +2036,15 @@ class ReplayAnalyzer {
1947
2036
  hash: rawObject[3],
1948
2037
  cursorMovement: [],
1949
2038
  hitObjectData: [],
2039
+ accuracy: new osuBase.Accuracy({ n300: 0 }),
2040
+ rank: "",
1950
2041
  };
1951
- if (resultObject.replayVersion >= 3) {
1952
- resultObject.time = new Date(Number(rawObject[4].readBigUInt64BE(0)));
1953
- resultObject.hit300k = rawObject[4].readInt32BE(8);
1954
- resultObject.hit100k = rawObject[4].readInt32BE(16);
1955
- resultObject.score = rawObject[4].readInt32BE(32);
1956
- resultObject.maxCombo = rawObject[4].readInt32BE(36);
1957
- resultObject.accuracy = new osuBase.Accuracy({
1958
- n300: rawObject[4].readInt32BE(12),
1959
- n100: rawObject[4].readInt32BE(20),
1960
- n50: rawObject[4].readInt32BE(24),
1961
- nmiss: rawObject[4].readInt32BE(28),
1962
- });
1963
- resultObject.isFullCombo = !!rawObject[4][44];
1964
- resultObject.playerName = rawObject[5];
1965
- resultObject.rawMods = rawObject[6].elements;
1966
- resultObject.convertedMods = osuBase.ModUtil.droidStringToMods(this.convertDroidMods(rawObject[6].elements));
1967
- // Determine rank
2042
+ const determineRank = () => {
1968
2043
  const totalHits = resultObject.accuracy.n300 +
1969
2044
  resultObject.accuracy.n100 +
1970
2045
  resultObject.accuracy.n50 +
1971
2046
  resultObject.accuracy.nmiss;
1972
- const isHidden = resultObject.convertedMods.some((m) => m instanceof osuBase.ModHidden || m instanceof osuBase.ModFlashlight);
2047
+ const isHidden = resultObject.convertedMods?.some((m) => m instanceof osuBase.ModHidden || m instanceof osuBase.ModFlashlight) ?? false;
1973
2048
  const hit300Ratio = resultObject.accuracy.n300 / totalHits;
1974
2049
  switch (true) {
1975
2050
  case resultObject.accuracy.value() === 1:
@@ -2004,6 +2079,24 @@ class ReplayAnalyzer {
2004
2079
  default:
2005
2080
  resultObject.rank = "D";
2006
2081
  }
2082
+ };
2083
+ if (resultObject.replayVersion >= 3) {
2084
+ resultObject.time = new Date(Number(rawObject[4].readBigUInt64BE(0)));
2085
+ resultObject.hit300k = rawObject[4].readInt32BE(8);
2086
+ resultObject.hit100k = rawObject[4].readInt32BE(16);
2087
+ resultObject.score = rawObject[4].readInt32BE(32);
2088
+ resultObject.maxCombo = rawObject[4].readInt32BE(36);
2089
+ resultObject.accuracy = new osuBase.Accuracy({
2090
+ n300: rawObject[4].readInt32BE(12),
2091
+ n100: rawObject[4].readInt32BE(20),
2092
+ n50: rawObject[4].readInt32BE(24),
2093
+ nmiss: rawObject[4].readInt32BE(28),
2094
+ });
2095
+ resultObject.isFullCombo = !!rawObject[4][44];
2096
+ resultObject.playerName = rawObject[5];
2097
+ resultObject.rawMods = rawObject[6].elements;
2098
+ resultObject.convertedMods = osuBase.ModUtil.droidStringToMods(this.convertDroidMods(rawObject[6].elements));
2099
+ determineRank();
2007
2100
  }
2008
2101
  if (resultObject.replayVersion >= 4) {
2009
2102
  const s = rawObject[7].split("|");
@@ -2083,7 +2176,7 @@ class ReplayAnalyzer {
2083
2176
  const replayObjectData = {
2084
2177
  accuracy: 0,
2085
2178
  tickset: [],
2086
- result: 0,
2179
+ result: exports.HitResult.miss,
2087
2180
  };
2088
2181
  replayObjectData.accuracy =
2089
2182
  replayDataBuffer.readInt16BE(bufferCounter);
@@ -2111,41 +2204,41 @@ class ReplayAnalyzer {
2111
2204
  resultObject.hitObjectData.push(replayObjectData);
2112
2205
  }
2113
2206
  // Parse max combo, hit results, and accuracy in old replay version
2114
- if (resultObject.replayVersion < 3 && this.beatmap) {
2115
- let hit300 = 0;
2116
- let hit300k = 0;
2117
- let hit100 = 0;
2118
- let hit100k = 0;
2119
- let hit50 = 0;
2120
- let hit0 = 0;
2121
- let grantsGekiOrKatu = true;
2207
+ if (resultObject.replayVersion < 3) {
2122
2208
  const objects = (this.beatmap instanceof osuDifficultyCalculator.DroidDifficultyCalculator ||
2123
2209
  this.beatmap instanceof osuRebalanceDifficultyCalculator.DroidDifficultyCalculator
2124
2210
  ? this.beatmap.beatmap
2125
- : this.beatmap).hitObjects.objects;
2211
+ : this.beatmap)?.hitObjects.objects;
2212
+ let grantsGekiOrKatu = true;
2126
2213
  for (let i = 0; i < resultObject.hitObjectData.length; ++i) {
2127
2214
  // Hit result
2128
2215
  const hitObjectData = resultObject.hitObjectData[i];
2129
- const isNextNewCombo = i + 1 !== objects.length ? objects[i + 1].isNewCombo : true;
2216
+ const isNextNewCombo = objects
2217
+ ? i + 1 !== objects.length
2218
+ ? objects[i + 1].isNewCombo
2219
+ : true
2220
+ : false;
2130
2221
  switch (hitObjectData.result) {
2131
2222
  case exports.HitResult.miss:
2132
- ++hit0;
2223
+ ++resultObject.accuracy.nmiss;
2133
2224
  grantsGekiOrKatu = false;
2134
2225
  break;
2135
2226
  case exports.HitResult.meh:
2136
- ++hit50;
2227
+ ++resultObject.accuracy.n50;
2137
2228
  grantsGekiOrKatu = false;
2138
2229
  break;
2139
2230
  case exports.HitResult.good:
2140
- ++hit100;
2231
+ ++resultObject.accuracy.n100;
2141
2232
  if (grantsGekiOrKatu && isNextNewCombo) {
2142
- ++hit100k;
2233
+ resultObject.hit100k ??= 0;
2234
+ ++resultObject.hit100k;
2143
2235
  }
2144
2236
  break;
2145
2237
  case exports.HitResult.great:
2146
- ++hit300;
2238
+ ++resultObject.accuracy.n300;
2147
2239
  if (grantsGekiOrKatu && isNextNewCombo) {
2148
- ++hit300k;
2240
+ resultObject.hit300k ??= 0;
2241
+ ++resultObject.hit300k;
2149
2242
  }
2150
2243
  break;
2151
2244
  }
@@ -2153,55 +2246,7 @@ class ReplayAnalyzer {
2153
2246
  grantsGekiOrKatu = true;
2154
2247
  }
2155
2248
  }
2156
- resultObject.hit300k = hit300k;
2157
- resultObject.hit100k = hit100k;
2158
- resultObject.accuracy = new osuBase.Accuracy({
2159
- n300: hit300,
2160
- n100: hit100,
2161
- n50: hit50,
2162
- nmiss: hit0,
2163
- nobjects: hit300 + hit100 + hit50 + hit0,
2164
- });
2165
- // Determine rank
2166
- const totalHits = resultObject.accuracy.n300 +
2167
- resultObject.accuracy.n100 +
2168
- resultObject.accuracy.n50 +
2169
- resultObject.accuracy.nmiss;
2170
- const isHidden = resultObject.convertedMods?.some((m) => m instanceof osuBase.ModHidden || m instanceof osuBase.ModFlashlight) ?? false;
2171
- const hit300Ratio = resultObject.accuracy.n300 / totalHits;
2172
- switch (true) {
2173
- case resultObject.accuracy.value() === 1:
2174
- if (isHidden) {
2175
- resultObject.rank = "XH";
2176
- }
2177
- else {
2178
- resultObject.rank = "X";
2179
- }
2180
- break;
2181
- case hit300Ratio > 0.9 &&
2182
- resultObject.accuracy.n50 / totalHits < 0.01 &&
2183
- !resultObject.accuracy.nmiss:
2184
- if (isHidden) {
2185
- resultObject.rank = "SH";
2186
- }
2187
- else {
2188
- resultObject.rank = "S";
2189
- }
2190
- break;
2191
- case (hit300Ratio > 0.8 && !resultObject.accuracy.nmiss) ||
2192
- hit300Ratio > 0.9:
2193
- resultObject.rank = "A";
2194
- break;
2195
- case (hit300Ratio > 0.7 && !resultObject.accuracy.nmiss) ||
2196
- hit300Ratio > 0.8:
2197
- resultObject.rank = "B";
2198
- break;
2199
- case hit300Ratio > 0.6:
2200
- resultObject.rank = "C";
2201
- break;
2202
- default:
2203
- resultObject.rank = "D";
2204
- }
2249
+ determineRank();
2205
2250
  }
2206
2251
  this.data = new ReplayData(resultObject);
2207
2252
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/constants/MovementType.ts","../src/data/CursorOccurrence.ts","../src/data/CursorOccurrenceGroup.ts","../src/data/CursorData.ts","../src/constants/HitResult.ts","../src/data/ReplayData.ts","../src/analysis/ThreeFingerChecker.ts","../src/analysis/objects/IndexedHitObject.ts","../src/analysis/TwoHandChecker.ts","../src/analysis/SliderCheeseChecker.ts","../src/ReplayAnalyzer.ts","../src/data/ReplayObjectData.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null],"names":["MovementType","Vector2","HitResult","Accuracy","MapStats","ModUtil","ModPrecise","DroidHitWindow","MathUtils","BreakPoint","Circle","Spinner","Slider","Modes","Interpolation","Utils","Beatmap","DroidAPIRequestBuilder","Readable","Parse","javaDeserialization","ModHidden","ModFlashlight","DroidDifficultyCalculator","RebalanceDroidDifficultyCalculator"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/constants/MovementType.ts","../src/data/CursorOccurrence.ts","../src/data/CursorOccurrenceGroup.ts","../src/data/CursorData.ts","../src/constants/HitResult.ts","../src/data/ReplayData.ts","../src/analysis/ThreeFingerChecker.ts","../src/analysis/objects/IndexedHitObject.ts","../src/analysis/TwoHandChecker.ts","../src/analysis/SliderCheeseChecker.ts","../src/ReplayAnalyzer.ts","../src/data/ReplayObjectData.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null],"names":["MovementType","Vector2","HitResult","Accuracy","MapStats","ModUtil","Modes","ModPrecise","DroidHitWindow","MathUtils","BreakPoint","Circle","Spinner","Slider","Utils","Interpolation","CircleSizeCalculator","SliderTail","Beatmap","DroidAPIRequestBuilder","Readable","Parse","javaDeserialization","ModHidden","ModFlashlight","DroidDifficultyCalculator","RebalanceDroidDifficultyCalculator"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rian8337/osu-droid-replay-analyzer",
3
- "version": "4.0.0-beta.0",
3
+ "version": "4.0.0-beta.10",
4
4
  "description": "A replay analyzer for analyzing osu!droid replay files.",
5
5
  "keywords": [
6
6
  "osu",
@@ -31,9 +31,9 @@
31
31
  "url": "https://github.com/Rian8337/osu-droid-module/issues"
32
32
  },
33
33
  "dependencies": {
34
- "@rian8337/osu-base": "^4.0.0-beta.0",
35
- "@rian8337/osu-difficulty-calculator": "^4.0.0-beta.0",
36
- "@rian8337/osu-rebalance-difficulty-calculator": "^4.0.0-beta.0",
34
+ "@rian8337/osu-base": "^4.0.0-beta.9",
35
+ "@rian8337/osu-difficulty-calculator": "^4.0.0-beta.10",
36
+ "@rian8337/osu-rebalance-difficulty-calculator": "^4.0.0-beta.10",
37
37
  "java-deserialization": "^0.1.0",
38
38
  "unzipper": "^0.10.11"
39
39
  },
@@ -45,5 +45,5 @@
45
45
  "publishConfig": {
46
46
  "access": "public"
47
47
  },
48
- "gitHead": "88a370f41b92185bf46aa7f2b06fdbbf70e2d198"
48
+ "gitHead": "1c0b73e79e1887eca9692548ff553fec1e750e31"
49
49
  }
@@ -391,12 +391,8 @@ interface ReplayInformation {
391
391
  maxCombo?: number;
392
392
  /**
393
393
  * The accuracy achieved in the play.
394
- *
395
- * Only available in replay v3 or later.
396
- *
397
- * If `map` is defined in analyzer (either in `Beatmap` or `StarRating` instance), this will be analyzed using beatmap hitobject information and replay hitobject data for replay v1 and v2.
398
394
  */
399
- accuracy?: Accuracy;
395
+ accuracy: Accuracy;
400
396
  /**
401
397
  * Whether or not the play achieved the beatmap's maximum combo.
402
398
  *
@@ -417,12 +413,8 @@ interface ReplayInformation {
417
413
  rawMods?: string;
418
414
  /**
419
415
  * The achieved rank in the play.
420
- *
421
- * Only available in replay v3 or later.
422
- *
423
- * If `map` is defined in analyzer (either in `Beatmap` or `StarRating` instance), this will be analyzed using beatmap hitobject information and replay hitobject data for replay v1 and v2.
424
416
  */
425
- rank?: string;
417
+ rank: string;
426
418
  /**
427
419
  * Enabled modifications during the play in osu!standard format.
428
420
  *
@@ -662,10 +654,6 @@ declare class SliderCheeseChecker {
662
654
  * The 50 osu!droid hit window of the analyzed beatmap.
663
655
  */
664
656
  private readonly hitWindow50;
665
- /**
666
- * The difficulty ratings of sliders that were cheesed.
667
- */
668
- private readonly cheesedDifficultyRatings;
669
657
  /**
670
658
  * @param beatmap The beatmap to analyze.
671
659
  * @param data The data of the replay.
@@ -717,11 +705,9 @@ declare class ThreeFingerChecker {
717
705
  */
718
706
  readonly difficultyAttributes: ExtendedDroidDifficultyAttributes | ExtendedDroidDifficultyAttributes$1;
719
707
  /**
720
- * The strain threshold to start detecting for 3-fingered section.
721
- *
722
- * Increasing this number will result in less sections being flagged.
708
+ * The true scale of objects.
723
709
  */
724
- private static readonly strainThreshold;
710
+ private readonly trueScale;
725
711
  /**
726
712
  * The distance threshold between cursors to assume that two cursors are
727
713
  * actually pressed with 1 finger in osu!pixels.