1
0
mirror of https://github.com/ppy/osu.git synced 2026-05-19 05:09:54 +08:00

Merge pull request #25697 from smoogipoo/fix-mania-conversion

Fix precision issue when converting mania beatmaps
This commit is contained in:
Bartłomiej Dach
2023-12-07 12:49:41 +01:00
committed by GitHub
Unverified
19 changed files with 615 additions and 32 deletions
@@ -18,10 +18,12 @@ namespace osu.Game.Rulesets.Mania.Tests
[TestFixture]
public class ManiaBeatmapConversionTest : BeatmapConversionTest<ManiaConvertMapping, ConvertValue>
{
protected override string ResourceAssembly => "osu.Game.Rulesets.Mania";
protected override string ResourceAssembly => "osu.Game.Rulesets.Mania.Tests";
[TestCase("basic")]
[TestCase("zero-length-slider")]
[TestCase("20544")]
[TestCase("100374")]
public void Test(string name) => base.Test(name);
protected override IEnumerable<ConvertValue> CreateConvertValue(HitObject hitObject)
@@ -18,7 +18,7 @@ namespace osu.Game.Rulesets.Mania.Tests
[TestFixture]
public class ManiaBeatmapSampleConversionTest : BeatmapConversionTest<ConvertMapping<SampleConvertValue>, SampleConvertValue>
{
protected override string ResourceAssembly => "osu.Game.Rulesets.Mania";
protected override string ResourceAssembly => "osu.Game.Rulesets.Mania.Tests";
[TestCase("convert-samples")]
[TestCase("mania-samples")]
@@ -12,7 +12,7 @@ namespace osu.Game.Rulesets.Mania.Tests
{
public class ManiaDifficultyCalculatorTest : DifficultyCalculatorTest
{
protected override string ResourceAssembly => "osu.Game.Rulesets.Mania";
protected override string ResourceAssembly => "osu.Game.Rulesets.Mania.Tests";
[TestCase(2.3493769750220914d, 242, "diffcalc-test")]
public void Test(double expectedStarRating, int expectedMaxCombo, string name)
File diff suppressed because one or more lines are too long
@@ -0,0 +1,449 @@
osu file format v9
[General]
StackLeniency: 0.4
Mode: 0
[Difficulty]
HPDrainRate:5
CircleSize:4
OverallDifficulty:5
ApproachRate:6
SliderMultiplier:1.7
SliderTickRate:2
[Events]
//Background and Video events
//Break Periods
2,98678,112295
2,185757,200967
//Storyboard Layer 0 (Background)
//Storyboard Layer 1 (Fail)
//Storyboard Layer 2 (Pass)
//Storyboard Layer 3 (Foreground)
//Storyboard Sound Samples
//Background Colour Transformations
3,100,163,162,255
[TimingPoints]
695,530.973451327434,4,2,1,20,1,0
33457,-100,4,2,1,25,0,0
33988,-100,4,2,1,30,0,0
34386,-100,4,1,0,30,0,0
38649,-100,4,1,1,30,0,0
42897,-100,4,1,0,30,0,0
47144,-100,4,1,1,30,0,0
51530,-100,4,2,1,20,0,0
56978,571.428571428571,4,2,1,20,1,0
58692,845.070422535211,4,2,1,20,1,0
60248,530.973451327434,4,2,1,20,1,0
60740,-100,4,1,1,30,0,0
61555,-66.6666666666667,4,1,1,30,0,0
62219,-100,4,1,0,40,0,0
78148,-100,4,1,0,30,0,0
78413,-100,4,1,0,35,0,0
78679,-100,4,1,0,40,0,0
78944,-100,4,1,0,45,0,0
79210,-100,4,1,0,40,0,0
96466,-100,4,2,1,30,0,0
132285,-100,4,2,1,20,0,0
149453,-100,4,1,1,35,0,0
153790,-100,4,2,1,40,0,0
157639,-100,4,1,1,35,0,0
162020,-100,4,2,1,40,0,0
166158,-100,4,1,0,40,0,0
201733,-100,4,2,1,20,0,0
219099,-133.333333333333,4,2,1,20,0,0
221024,-100,4,1,1,30,0,0
221290,-100,4,1,0,30,0,0
[HitObjects]
256,192,15562,12,0,17155
72,120,17686,5,8
128,224,17951,1,0
185,119,18217,1,0
246,220,18482,1,0
128,224,18748,2,0,B|161:262|208:264,1,85,4|0
309,213,19279,2,0,B|297:169|325:120,2,85,0|0|8
309,213,20075,5,0
309,332,20341,1,0
206,272,20606,1,8
309,213,20871,2,0,B|336:117|261:56,1,170,4|0
205,272,21933,6,0,B|183:307|125:328,1,85,8|0
149,256,22464,2,0,B|114:281|45:280,1,85,0|0
101,216,22995,2,0,B|16:264|-56:176|16:72|104:128,1,255,4|0
149,136,24057,6,0,B|170:100|229:80,1,85,8|0
205,149,24588,2,0,B|239:123|309:125,1,85,0|8
253,189,25119,2,0,B|349:144|413:221,1,170,4|8
240,336,26181,5,8
288,264,26447,1,0
344,328,26712,2,0,B|391:339|440:328,1,85,0|0
488,270,27243,2,0,B|424:256|392:200,1,85,4|0
329,230,27774,2,0,B|328:176|386:142,1,85,0|0
363,69,28305,2,0,B|328:40|280:56,2,85,8|0|0
312,136,29102,1,0
224,120,29367,2,0,B|192:168|256:240|224:296,1,170,4|8
96,240,30429,6,0,B|83:195|56:160,1,85,8|0
96,88,30960,2,0,B|83:132|56:168,1,85,0|0
59,164,31491,2,0,B|129:182|187:167|254:149|323:168,1,255,4|0
312,165,32553,6,0,B|302:210|256:237,1,85,8|0
312,166,33084,2,0,B|321:120|368:94,1,85,8|0
312,166,33615,2,0,B|318:204|374:193|426:183|450:247,1,170,8|8
200,232,34677,5,4
119,169,34942,1,0
57,248,35208,1,8
137,311,35473,1,0
200,232,35739,5,0
248,302,36004,1,0
318,254,36270,1,8
270,183,36535,1,0
200,232,36801,6,0,B|120:272|120:272|40:224,1,170,0|8
130,183,37597,1,0
200,232,37863,2,0,B|280:192|280:192|368:240,1,170,0|8
167,111,38925,6,0,B|134:71|98:65,1,85,8|0
167,112,39456,2,0,B|115:116|90:142,1,85,4|0
167,112,39987,2,0,B|120:192|176:248|240:312|152:368,1,255,8|0
173,351,41048,6,0,B|142:305|80:288,1,85,8|0
173,351,41579,2,0,B|194:299|175:238,1,85,4|0
173,351,42110,2,0,B|237:351|253:303|269:255|341:263,1,170,8|8
128,144,43172,5,4
208,176,43438,1,0
288,144,43703,1,8
368,176,43969,1,0
408,272,44234,5,0
312,312,44500,1,0
216,272,44765,1,8
120,312,45031,1,0
48,240,45296,5,0
160,272,45562,1,0
272,240,45827,1,8
384,280,46093,1,0
496,240,46358,2,0,B|448:208|448:208|496:176|504:128|442:127,1,170,0|8
152,128,47420,6,0,B|122:167|120:224,1,85,8|0
88,128,47951,2,0,B|95:177|133:218,1,85,4|0
121,204,48482,2,0,B|140:296|264:280|308:368,1,255,8|0
308,368,49544,6,0,B|293:318|324:264,1,85,8|0
368,348,50075,2,0,B|322:323|305:263,1,85,4|0
324,200,50606,2,0,B|274:214|203:224|142:108|131:56|243:32|243:120|211:160|107:136,1,340,8|2
369,216,52730,5,2
176,312,53792,2,0,B|166:217|64:144,1,170,0|0
179,150,54588,1,0
120,88,54854,2,0,B|107:176|38:232,1,170,2|0
464,320,55916,6,0,B|392:252|288:280,1,170,0|0
280,104,56978,6,0,B|312:192|416:208,1,170,2|0
192,160,58120,2,0,B|182:224|112:240,1,85,2|0
24,240,58692,6,0,B|72:240|88:272,1,56.6666666666667,6|0
224,296,59325,2,0,B|240:200|200:120,1,170
316,136,60513,5,0
400,156,60778,2,0,B|408:100|364:56,1,85,10|0
320,16,61309,1,2
160,112,61840,6,0,B|95:104|28:135,1,127.499996200204,8|0
160,112,62371,6,0,B|80:168|96:296,1,170,4|8
176,280,63168,1,0
224,208,63433,2,0,B|280:288|392:264,1,170,0|8
456,184,64230,1,0
328,144,64495,1,8
416,248,64761,1,0
408,112,65026,1,8
336,232,65292,1,0
388,182,65557,1,8
256,288,66088,5,8
256,288,66354,1,0
256,288,66619,2,0,B|200:360|72:368,1,170,0|8
44,308,67416,1,0
87,234,67681,2,0,B|163:279|207:386,1,170,0|8
256,288,68478,1,0
400,120,68743,5,8
328,256,69009,1,0
400,120,69274,1,8
264,184,69540,1,0
400,120,69805,1,8
400,120,70336,6,0,B|395:173|368:200,1,85,8|0
213,255,70867,2,0,B|279:198|383:198,1,170,4|8
329,125,71663,1,0
248,104,71929,2,0,B|184:168|80:152,1,170,0|8
200,224,72725,1,0
272,339,72991,5,8
151,276,73256,1,0
267,204,73522,1,8
204,322,73787,1,0
287,272,74053,1,8
287,272,74584,6,0,B|336:256|368:208,1,85,8|0
372,140,75115,2,0,B|323:206|324:308,1,170,0|8
240,288,75911,1,0
160,248,76177,2,0,B|216:176|320:216,1,170,0|8
272,136,76973,1,0
200,88,77239,6,0,B|216:136|192:176,1,85,8|0
160,248,77770,2,0,B|160:296|208:320,1,85,8|0
328,232,78301,5,0
233,133,78566,1,8
297,15,78832,1,8
432,40,79097,1,8
453,176,79363,6,0,B|448:240|384:272|328:232,1,170,4|8
286,306,80159,1,0
203,288,80424,2,0,B|208:224|272:192|328:232,1,170,0|8
404,231,81221,1,0
408,160,81486,5,8
360,288,81752,1,0
472,216,82017,1,8
336,208,82283,1,0
440,296,82548,1,8
288,320,83079,5,8
288,320,83345,1,0
288,320,83610,2,0,B|200:314|128:248,1,170,0|8
88,320,84407,1,0
56,240,84672,2,0,B|133:287|176:392,1,170,0|8
163,274,85469,1,0
296,216,85734,5,8
165,75,86000,1,0
99,178,86265,1,8
282,97,86531,1,0
184,264,86796,1,8
184,264,87327,6,0,B|159:295|110:299,1,85,8|0
23,247,87858,2,0,B|91:300|192:261,1,170,4|8
245,326,88655,1,0
293,254,88920,2,0,B|213:198|109:246,1,170,0|8
181,302,89717,1,0
165,166,89982,5,8
141,302,90247,1,0
205,182,90513,1,8
109,278,90778,1,0
229,214,91044,1,8
376,132,91575,6,0,B|424:140|464:100,1,85,8|0
464,192,92106,2,0,B|456:280|352:320,1,170,0|8
300,256,92902,1,0
228,212,93168,2,0,B|268:116|164:60,1,170,0|8
100,32,93964,1,0
84,116,94230,2,0,B|116:156|108:212,1,85,8|0
188,160,94761,2,0,B|188:208|232:244,1,85,8|0
296,196,95292,2,0,B|320:236|349:239|399:242|379:198|379:198|334:185|358:245|368:276|440:260|480:316|416:356,1,340,8|4
256,192,96486,12,8,98478
264,192,113345,5,8
264,192,113876,1,8
264,192,114407,5,0
172,236,114672,1,8
184,336,114938,1,0
284,356,115203,1,8
340,268,115469,1,8
304,100,116000,1,8
304,100,116531,1,0
272,336,117062,5,8
248,200,117327,1,0
376,152,117593,1,8
376,152,118124,1,8
376,152,118655,5,0
240,128,118920,1,8
376,192,119186,1,0
496,152,119451,1,8
376,224,119717,1,8
376,224,120247,1,8
376,224,120778,1,0
376,224,121309,5,8
264,296,121575,1,0
256,160,121840,1,8
256,160,122371,1,8
256,160,122902,1,0
256,160,123433,5,8
168,264,123699,1,0
312,280,123964,1,8
312,280,124495,1,8
312,280,125026,1,0
312,280,125557,5,8
200,200,125823,1,0
312,280,126088,1,8
312,280,126619,1,8
312,280,127150,5,0
416,200,127416,1,8
432,336,127681,1,0
416,200,127947,1,8
312,280,128212,1,8
312,280,128743,1,8
312,280,129274,5,8
264,152,129540,1,8
136,192,129805,1,8
184,320,130071,1,12
88,120,132460,6,0,B|127:224|104:304,1,170,2|0
424,264,133522,2,0,B|384:159|408:80,1,170
448,168,134318,2,0,B|369:240|297:240,1,170,4|0
301,158,135115,2,0,B|277:206|309:262,1,85
395,295,135646,2,0,B|323:263|227:287,1,170,0|2
176,88,136708,6,0,B|134:57|80:64,1,85
176,88,137239,2,0,B|221:64|264:64,1,85,8|0
176,88,137770,2,0,B|137:175|196:220|272:272|208:344,1,255,4|0
136,328,138832,6,0,B|83:306|40:328,1,85
136,328,139363,2,0,B|184:312|224:328,1,85,2|0
300,296,139894,2,0,B|300:198|388:200|468:200|452:104,1,255,4|0
372,100,140955,1,0
292,72,141221,6,0,B|250:102|244:152,2,85,0|8|0
332,148,142017,1,4
388,212,142283,2,0,B|414:243|465:241,1,85
440,148,142814,2,0,B|400:172|388:213,1,85
236,232,143345,1,0
204,84,143610,1,0
356,64,143876,1,0
388,212,144141,2,0,B|350:295|228:308,1,170,4|0
96,304,145203,6,0,B|96:208,1,85
144,203,145734,2,0,B|144:288,1,85,8|0
192,272,146265,2,0,B|192:176|192:176|192:120|256:112,1,170,4|0
312,56,147062,1,0
392,120,147327,6,0,B|392:208,1,85
336,221,147858,2,0,B|336:136,1,85,8|0
280,152,148389,2,0,B|280:256|280:256|264:272|280:288|280:288|296:304|280:320|280:320|248:336|280:352|280:352|312:368|312:368|280:376|224:384,1,340,4|4
172,322,149717,5,0
136,248,149982,1,8
64,208,150247,1,0
147,112,150513,5,0
224,80,150778,1,0
304,112,151044,1,8
384,88,151309,1,0
336,192,151575,6,0,B|280:272|176:264,1,170,0|8
408,216,152637,2,0,B|429:173|464:152,1,85,0|0
360,80,153168,2,0,B|376:168|304:264,1,170,8|0
256,288,153964,5,2
192,240,154230,1,4
272,208,154495,1,0
229,134,154761,2,0,B|276:214,1,85,0|2
160,248,155292,1,4
120,136,155557,1,0
229,134,155823,6,0,B|331:134,1,85,0|2
408,208,156354,2,0,B|312:208,1,85,4|0
216,256,156885,2,0,B|272:280|264:352|208:344|192:296|256:272|328:312,1,170,0|4
456,224,157947,5,0
400,136,158212,1,0
456,224,158478,1,8
392,304,158743,1,0
456,224,159009,1,0
288,232,159540,5,8
200,283,159805,1,0
176,184,160071,1,0
176,184,160601,5,8
278,184,160867,1,0
176,184,161132,2,0,B|88:184,1,85
24,88,161663,2,0,B|192:88,1,170,8|0
280,88,162460,1,2
240,168,162725,1,4
360,48,163256,5,0
280,88,163522,1,2
240,168,163787,2,0,B|344:168,1,85,4|0
376,240,164318,2,0,B|320:312,1,85,2|0
248,304,164849,2,0,B|200:232,1,85,6|0
288,240,165380,2,0,B|288:136|288:136|286:82|344:72,1,170,6|8
480,104,166442,6,0,B|416:168|416:296,1,170,4|8
336,280,167239,1,0
288,208,167504,2,0,B|232:288|120:264,1,170,0|8
56,184,168301,1,0
184,144,168566,1,8
96,248,168832,1,0
104,112,169097,1,8
176,232,169363,1,0
124,182,169628,1,8
272,256,170159,5,8
272,256,170424,1,0
272,256,170690,2,0,B|310:339|428:329,1,170,0|8
487,259,171486,1,0
423,179,171752,2,0,B|340:241|340:329,1,170,0|8
251,346,172548,1,0
260,193,172814,5,8
340,321,173079,1,0
260,193,173345,1,8
404,249,173610,1,0
260,193,173876,1,8
112,120,174407,6,0,B|117:173|144:200,1,85,8|0
309,191,174938,2,0,B|225:225|117:191,1,170,0|8
184,128,175734,1,0
264,104,176000,2,0,B|328:168|432:152,1,170,0|8
312,224,176796,1,0
240,339,177062,5,8
361,276,177327,1,0
245,204,177593,1,8
308,322,177858,1,0
225,270,178124,1,8
225,270,178655,6,0,B|176:256|144:208,1,85,8|0
32,256,179186,2,0,B|120:256|192:312,1,170,0|8
272,288,179982,1,0
352,248,180247,2,0,B|296:176|192:216,1,170,0|8
240,136,181044,1,0
325,129,181309,6,0,B|322:176|285:217,1,85,8|0
167,291,181840,2,0,B|170:244|207:203,1,85,8|0
327,289,182371,2,0,B|280:286|239:249,1,85,8|0
160,120,182902,2,0,B|216:112|248:152|272:192|336:192,1,170,8|4
256,192,183699,12,4,185557
80,104,202017,5,2
152,219,202283,1,0
16,224,202548,2,0,B|88:208|158:111,1,170,8|0
226,87,203345,1,0
304,120,203610,2,0,B|352:120|400:104,1,85,2|0
304,120,204141,2,0,B|336:88|344:32,1,85,0|0
341,45,204672,6,0,B|429:77|450:203,1,170,8|0
360,184,205469,1,0
304,120,205734,2,0,B|264:96|240:48,1,85,2|0
304,120,206265,2,0,B|311:76|344:32,1,85,0|0
408,88,206796,5,4
472,168,207062,1,0
392,224,207327,1,0
304,280,207593,1,0
224,208,207858,2,0,B|309:237|393:224,1,170
472,168,208655,1,0
408,88,208920,6,0,B|368:166|402:252,1,170,8|0
504,280,209717,1,0
403,319,209982,2,0,B|459:276|475:151,1,170,4|0
408,88,210778,1,0
384,200,211044,5,2
240,160,211309,1,0
264,304,211575,1,0
296,224,211840,2,0,B|336:137|464:136,1,170,2|0
296,224,212637,6,0,B|243:220|208:161,1,85,2|0
163,324,213168,2,0,B|244:308|308:204,1,170,8|0
296,136,213964,1,0
264,56,214230,2,0,B|232:96|192:136,1,85,4|0
208,120,214761,2,0,B|200:72|168:32,1,85
175,42,215292,2,0,B|155:86|98:112,1,85,2|0
50,53,215823,2,0,B|98:69|122:109,1,85,0|0
117,102,216354,1,4
168,344,216885,6,0,B|167:287|131:246,1,85
88,160,217416,2,0,B|48:248|96:328,1,170,8|0
144,264,218212,1,0
224,296,218478,2,0,B|328:312|368:216,1,170,6|0
363,110,219274,2,0,B|259:246|139:206|147:94|275:70|355:198|130:268,1,446.249986700714,2|8
160,112,221663,6,0,B|80:168|96:296,1,170,4|8
176,280,222460,1,0
224,208,222725,2,0,B|280:288|392:264,1,170,0|8
456,184,223522,1,0
328,144,223787,5,8
416,248,224053,1,0
408,112,224318,1,8
336,232,224584,1,0
388,182,224849,1,8
240,256,225380,5,8
240,256,225646,1,0
240,256,225911,2,0,B|184:328|76:314,1,170,0|8
3,315,226708,1,0
89,315,226973,2,0,B|184:302|240:374,1,170,0|8
314,332,227770,1,0
252,194,228035,5,8
116,130,228301,1,0
252,194,228566,1,8
140,298,228832,1,0
252,194,229097,1,8
400,120,229628,6,0,B|352:112|288:144,1,85,8|0
203,191,230159,2,0,B|287:225|395:191,1,170,0|8
330,124,230955,1,0
248,104,231221,2,0,B|152:96|80:152,1,170,0|8
200,224,232017,1,0
272,339,232283,5,8
151,276,232548,1,0
267,204,232814,1,8
204,322,233079,1,0
287,270,233345,1,8
287,270,233876,6,0,B|335:254|367:206,1,85,8|0
464,288,234407,2,0,B|368:272|304:344,1,170,0|8
226,317,235203,1,0
165,256,235469,2,0,B|224:192|336:208,1,170,0|8
272,136,236265,1,0
199,63,236531,2,0,B|152:80|120:128,1,85,8|0
203,184,237062,2,0,B|167:218|165:267,1,85,8|0
312,264,237593,5,8
440,264,237858,1,8
256,144,238124,1,8
496,144,238389,1,0
256,192,238655,12,4,240778
File diff suppressed because one or more lines are too long
@@ -0,0 +1,126 @@
osu file format v5
[General]
StackLeniency: 0.7
Mode: 0
[Difficulty]
HPDrainRate:2
CircleSize:5
OverallDifficulty:2
SliderMultiplier:1
SliderTickRate:2
[Events]
//Background and Video events
//Break Periods
//Storyboard Layer 0 (Background)
//Storyboard Layer 1 (Failing)
//Storyboard Layer 2 (Passing)
//Storyboard Layer 3 (Foreground)
//Storyboard Sound Samples
//Background Colour Transformations
3,100,163,162,255
[TimingPoints]
7460,466.735154027506,4,1,0,100
[HitObjects]
80,56,7693,1,0
120,96,8043,1,0
176,104,8393,1,0
216,104,8626,1,0
256,104,8860,1,0
296,168,9326,5,0
296,208,9560,1,0
296,248,9793,1,0
216,256,10260,1,0
176,256,10493,1,0
136,256,10727,1,0
136,136,11427,5,0
136,72,11777,1,0
192,72,12127,1,0
232,72,12360,1,0
272,72,12594,1,0
280,152,13060,5,0
280,192,13294,1,0
280,232,13527,1,0
360,240,13994,1,0
400,240,14227,1,0
440,240,14461,1,0
256,192,14927,12,0,16561
256,192,16794,12,0,18078
192,96,18661,6,0,B|312:96,1,100
288,176,19595,2,0,B|168:176,1,100
192,256,20528,2,0,B|312:256,1,100
304,176,21462,2,0,B|240:176|248:88,1,100
168,104,22395,5,0
128,104,22628,2,0,B|296:368,1,300
328,352,24262,5,0
368,352,24495,1,0
368,232,25195,1,0
368,192,25429,1,0
280,104,26129,5,0
240,104,26362,2,0,B|40:352,1,300
88,336,27996,5,0
128,336,28229,1,0
136,216,28929,1,0
136,176,29163,1,0
256,176,29863,5,0
312,176,30213,1,0
352,176,30446,2,0,B|360:264|360:280|360:272|272:272,1,150
208,232,31730,5,0
208,168,32080,1,0
208,104,32430,1,0
248,104,32663,1,0
248,104,32780,1,0
120,160,33597,5,0
120,216,33947,1,0
120,256,34180,2,0,B|352:256,1,225
344,216,35464,6,0,B|200:128,1,150
176,136,36397,2,0,B|176:288,1,150
296,288,37564,6,0,B|296:208,1,75
296,152,38264,2,0,B|296:104,2,25
248,32,39197,1,0
208,32,39431,1,0
168,32,39664,1,0
168,72,39898,2,0,B|168:136,4,50
104,128,41298,5,0
168,136,41648,1,0
208,184,41998,1,0
232,216,42231,1,0
344,248,42931,5,0
344,208,43165,1,0
344,168,43398,1,0
304,168,43631,1,0
264,168,43865,1,0
224,168,44098,1,0
184,168,44332,1,0
144,168,44565,1,0
104,176,44798,6,0,B|32:240|160:272,1,150
192,272,45732,2,0,B|280:272|320:200,1,150
320,160,46665,2,0,B|248:96|176:136,1,150
144,144,47599,2,0,B|48:168,1,75
112,256,48532,6,0,B|256:336,1,150
280,320,49466,2,0,B|416:240,1,150
408,200,50399,2,0,B|256:136,1,150
232,144,51333,2,0,B|80:208,1,150
56,216,52266,5,0
96,216,52499,1,0
152,216,52849,2,0,B|248:216,1,75
328,88,54133,5,0
328,88,54366,1,0
328,88,54600,1,0
248,88,55066,5,0
248,88,55300,1,0
248,88,55533,1,0
256,168,56000,6,0,B|184:168,1,50
144,168,56583,1,0
144,168,56700,1,0
104,168,56933,1,0
264,168,57867,5,0
264,168,58100,1,0
264,168,58334,1,0
344,168,58800,5,0
344,168,59034,1,0
344,168,59267,1,0
@@ -1,27 +1,27 @@
osu file format v14
[Difficulty]
HPDrainRate:6
CircleSize:4
OverallDifficulty:7
ApproachRate:8.3
SliderMultiplier:1.6
SliderTickRate:1
[TimingPoints]
500,500,4,2,1,50,1,0
13426,-100,4,3,1,45,0,0
14884,-100,4,2,1,50,0,0
[HitObjects]
96,192,500,6,0,L|416:192,2,320
256,192,3000,12,0,4000,0:0:0:0:
256,192,4500,12,0,5500,0:0:0:0:
256,192,6000,12,0,6500,0:0:0:0:
256,128,7000,6,0,L|352:128,4,80
32,192,8500,6,0,B|32:384|256:384|256:192|256:192|256:0|512:0|512:192,1,800
256,192,11500,12,0,12000,0:0:0:0:
512,320,12500,6,0,B|0:256|0:256|512:96|512:96|256:32,1,1280
256,256,17000,6,0,L|160:256,4,80
256,192,18500,12,0,19450,0:0:0:0:
216,231,19875,6,0,B|216:135|280:135|344:135|344:199|344:263|248:327|248:327|120:327|120:327|56:39|408:39|408:39|472:150|408:342,1,1280
osu file format v14
[Difficulty]
HPDrainRate:6
CircleSize:4
OverallDifficulty:7
ApproachRate:8.3
SliderMultiplier:1.6
SliderTickRate:1
[TimingPoints]
500,500,4,2,1,50,1,0
13426,-100,4,3,1,45,0,0
14884,-100,4,2,1,50,0,0
[HitObjects]
96,192,500,6,0,L|416:192,2,320
256,192,3000,12,0,4000,0:0:0:0:
256,192,4500,12,0,5500,0:0:0:0:
256,192,6000,12,0,6500,0:0:0:0:
256,128,7000,6,0,L|352:128,4,80
32,192,8500,6,0,B|32:384|256:384|256:192|256:192|256:0|512:0|512:192,1,800
256,192,11500,12,0,12000,0:0:0:0:
512,320,12500,6,0,B|0:256|0:256|512:96|512:96|256:32,1,1280
256,256,17000,6,0,L|160:256,4,80
256,192,18500,12,0,19450,0:0:0:0:
216,231,19875,6,0,B|216:135|280:135|344:135|344:199|344:263|248:327|248:327|120:327|120:327|56:39|408:39|408:39|472:150|408:342,1,1280
@@ -52,14 +52,18 @@ namespace osu.Game.Rulesets.Mania.Beatmaps.Patterns.Legacy
/// <returns>The column.</returns>
protected int GetColumn(float position, bool allowSpecial = false)
{
// Casts to doubles are present here because, although code is originally written as float division,
// the division actually appears to occur on doubles in osu!stable. This is likely a result of
// differences in optimisations between .NET versions due to the presence of the double parameter type of Math.Floor().
if (allowSpecial && TotalColumns == 8)
{
const float local_x_divisor = 512f / 7;
return Math.Clamp((int)MathF.Floor(position / local_x_divisor), 0, 6) + 1;
return Math.Clamp((int)Math.Floor((double)position / local_x_divisor), 0, 6) + 1;
}
float localXDivisor = 512f / TotalColumns;
return Math.Clamp((int)MathF.Floor(position / localXDivisor), 0, TotalColumns - 1);
return Math.Clamp((int)Math.Floor((double)position / localXDivisor), 0, TotalColumns - 1);
}
/// <summary>