Что такое BPM и offset в osu!?
Тайминг — невидимая сетка, на которой строится любая beatmap. Вот как она устроена.
BPM — удары в минуту
BPM — это скорость пульса песни: сколько долей проходит за одну минуту. В треке на 120 BPM доля звучит каждые 500 мс, в треке на 180 BPM — примерно каждые 333 мс. В osu! BPM задаёт сетку тайминга — набор моментов, на которые могут приходиться ноты. Ноты ставятся на доли и на их деления (половинки, четверти и так далее), поэтому правильно затайминженная карта ощущается намертво привязанной к музыке.
Offset — где начинается 1-я доля
Offset — это время в миллисекундах от начала аудиофайла, на которое приходится первая доля. Песни редко начинаются ровно с доли — обычно сначала идёт короткая пауза или тихое вступление. BPM говорит, на каком расстоянии друг от друга линии сетки; offset — где сетка начинается.
Почему тайминг решает судьбу карты
В ритм-игре всё исходит из того, что сетка верная. Если BPM неправильный, ноты постепенно уползают с доли — в начале нормально, через минуту играть невозможно. Если неправильный offset, каждая нота раньше или позже на одну и ту же величину, и ваша точность падает, как бы хорошо вы ни играли. Мапперы тратят немало сил, чтобы выставить тайминг ещё до первой ноты, а песням со сменой темпа нужно несколько тайминг-поинтов.
Как узнать BPM песни
- Найдите в интернете: поищите «<название песни> BPM» — сайты вроде songbpm.com или tunebat.com покрывают большую часть изданной музыки. Если ощущается вдвое медленнее, удвойте значение (70 против 140).
- Отстучите сами: откройте сайт «tap BPM» (например, taptempo.io) и стучите в такт около 15 секунд.
- Редактор osu!: закиньте песню в osu!, откройте редактор → Timing → отстучите или воспользуйтесь встроенной оценкой BPM. Заодно вы сразу получите offset.
Нужно ли делать это на DanceGAI?
Нет. DanceGAI определяет BPM и offset автоматически, когда генерирует карту osu! mania по вашей песне, — загрузили вы её или импортировали по ссылке на beatmap в osu!: ИИ сам находит сетку тайминга, прежде чем расставлять ноты, так что вводить ничего не нужно. Но понятия выше всё равно полезно знать: по ним вы узнаете (и сможете описать) проблему с таймингом в любой beatmap — сгенерированной или сделанной вручную.