forum

Дилемма хитсаундов в OSU!

posted
Total Posts
6

Хотел бы попробовать поиграть с правильным оффсетом и отдельной дорожкой хитсаундов?

Да
11
55.00%
Нет
4
20.00%
Чё?
5
25.00%
Total votes: 20
Polling ended
Topic Starter
unholyghsttyper
Это перевод с английского вот этого поста: community/forums/topics/1635438

здарова

tl;dr
У OSU! есть проблемы с задержкой, из-за которых играть с настроенным оффсетом и хитсаундами не получится.
Есть простое решение решение этой проблемы, требующее слегка другого подхода к игре.

Если бы в игре была возможность синхронизировать музыку и хитсаунды в один аудиотрек, то это исправило бы некоторые проблемы с геймплеем.
Самая важная из которых - задержка, так как все аудио в игре слушалось глобального оффсета.
Единственный минус этой системы - хитсаунды будут всегда слышны, так что игрок сам должен проверять себя на ошибки с помощью звука ударов по клавиатуре или тактильным ощущениям.
Такая система реализована в игре A Dance of Fire and Ice, например

Я объяснил ситуацию пеппи, но он не берет ее в расчет потому что "... очень не люблю ритм игры, в которых проигрывание (хитсаундов) автоматизировано."
Ссылка на обсуждение: https://github.com/ppy/osu/discussions/19915

Если ты хочешь, чтоб эта идея была воспринята пеппи и его командой - напиши какой нибудь коммент в теме на гитхабе и нажми на стрелку.
Комментарии поднимают тему в топ, так что она опять попадется пеппи и его команде на глаза.
Может быть, если не сам пеппи, но его команда заметит тему и всерьез задумаются над ее реализацией.

Я уже поговорил с моими товарищами по игре и парой десятков топ игроков.
В большинстве своем те, кто поняли о чем я говорю, согласны, что такая система может быть полезной и не повредит никому, если будет опциональной.
Они сходили на гитхаб и поддержали дисскуссию, так что я знаю, что в этом вопросе я не один.

Я могу предложить небольшую демонстрацию того, как оно ощущается.
AxewB предложил как это сделать, так что ему спасибо.
Если записать хитсаунды и совместить с оригинальной дорожкой в один аудиофайл.
Заменить оригинальный файл совмещенным.
Настроить оффсет
Выключить хитсаунды
То можно примерно пощупать как оно играется

Я уже свел пару треков: https://drive.google.com/drive/folders/1Rlrca-Ca_-zzBLJuWpT1zdlCS8FDr-40?usp=sharing
Попробуй их.
Или сделай их сам, это нетрудно.
Я сделаю еще пару карт.
Или если ты уже сделал аудио, пришли его мне, я добавлю его в папку.

В общем, все.
Благодарю за уделенное время.

Q&A

- Что вообще такое эта ваша задержка?
В основном, здесь обсуждается задержка аудио
Аудио задержка это время между нажатием клавиши и когда звук выходит из колонки.
У встроенных звуковых карт задержка колеблется в районе от 30мс до 90мс. Где то больше, где то меньше.
В этом случае, звук соответственно отстает от 30мс до 90мс.

Это видео наглядно демонстрирует задержку:
https://youtu.be/U3_b4UEYoWM

- Зачем мне вообще думать об этом?
Задержка фундаментально меняет твой способ взаимодействия с любым приложением.
Особенно это касается ритм-игр.
Если твой оффсет не скорректирован, тебе нужно нажимать клавиши раньше музыки для компенсации задержки.

Что означает, что ты играешь за музыкой а не с ней.
Что в свою очередь значит, что тебе нужно не только следить за ритмом, но и держать в голове то, что тебе нельзя играть прямо под музыку, а раньше на определенное время.
Чем больше твоя задержка, тем хуже эта ситуация
Плюс, на разных машинах разная задержка, так что одинаково на двух разных компьютерах с задержкой не поиграешь.

В OSU! есть способ компенсации задержки, так что можно играть прямо под музыку.
Но в этом случае хитсаунды использовать не получится, так как их тайминги будут сбиты.
И в зависимости от режима, это либо раздражает, либо неиграбельно.

KcHecKa сделал очень хорошее видео, которое демонстрирует задержку в игре:
https://youtu.be/i3tx-jKbcpc

- Мой ПК - Атомный Космолет. У меня же нет задержки?
Нет. Это так не работает.
Каждая звуковая карта была сделана с мыслью, что ей нужно немного времени на обработку звука перед выводом.
Так что задержка будет независимо ни от чего.
Разница лишь в том, сколько задержки тебе придется ощутить.

- Так... почему с хитсаундами какие-то проблемы?
Хитсаунды в OSU! запрограммированы на вывод сразу как только звуковая карта их обработает.
Как объяснено выше, обработка не мгновенна.
Так что хитсаунды выводятся с задержкой в 10, 20, 30, 50, 100 миллисекунд от нажатия клавиши.
Зависимо от твоей звуковой карты.

Ты мог не замечать этого, потому что с нулевым оффсетом, основная музыка уже идет с задержкой в сколько то миллисекунд.
И при нажатии на кнопку, хитсаунды выводятся с той же задержкой.
И в таком случае хитсаунды и музыка синхронизированы.
Но все они происходят в будущем от времени нажатия на кнопку.

- Я могу играть с задержкой без проблем и если ты не можешь, то гитгудайся.
Ты играешь с задержкой.
И в этом ничего плохого нет.
Можно научиться играть с задержкой на любом уровне скилла.
Так же как люди, которые проходят дарк соулс на бананах или с голосовым управлением без урона.
Или как люди с инвалидностью учатся играть в разные игры.
Если ты вложишь время и силы, можно научиться играть как угодно.
Я имею ввиду... слепые люди как то играют в кс на глобал элит.

Но здесь не задается вопрос умения или скилла.
Это вопрос комфорта и комфортной игры.
Некоторые люди, чувствительные к задержке, вроде меня, хотели бы иметь возможность играть с хитсаундами.
Так как оффсет уже реализован.

Как оказалось, очень мало игроков, которые понимают что такое задержка и что она существует.
Даже некоторые топ игроки, с которыми я разговаривал, поначалу не поняли, что я имею ввиду.
Большинство людей не знают, нравится ли им больше играть с оффсетом или без него.
В OSU! на старте не выскакивает мастер оффсета на весь экран как в других ритм играх.
Так что этот концепт легко пропустить.

- пеппи сказал, что он пофиксит проблемы с задержкой. Зачем ему вообще твоя идея?
В его реализации есть некоторые подводные камни.
Но так как ни одно решение не идеально.
Обсудим его.

Вот цитата пеппи из дискуссии на гитхабе, которую я начал: "У нас есть планы по введению методов уменьшения аудио задержки для тех, кто чувствителен к ней. Но естественно, это потребует соответственной аппаратуры (низкая задержка это тяжело и требует хороших драйверов и поддержки железа)"
Я переведу: "Мы перепишем аудио драйвер OSU! для поддержки специализированного оборудования, чтоб вы могли использовать его в игре."

Для начала, хорошо, если бы в каждой ритм игре была поддержка ASIO или любой другой системы поддержки специализированного железа.
И я буду рад видеть, что такая возможность появилась в игре.
Но опять же, есть неудобства.

Так это... у скольких из вас дома стоит звуковуха за 100, 200, 300 баксов минимум, чтоб играть в осу с низкой задержкой?
Не забываем, что у многих аудиокарт от вра ти тельные драйвера на винде и задержка на них хуже чем на встроенных.
Так что придется проводить неплохое расследование.

Допустим, у тебя уже есть твоя верная звуковуха, готовая к сессии в осу.
Для минимальной задержки нужно будет настроить ее в высокий сэмплрейт и выставить малые значения буфера.
Это неплохо так загружает процессор.
Так что тебе нужен нормальный такой процессор.

У меня есть ноутбук. И я люблю играть в осу в кафешках.
Попивая кофеёк.
Ну и... Нормальные аудио интерфейсы обычно представляют собой такие здоровые тяжелые металлические коробищи.
Планшет тоже надо брать, не забываем.
Представь таскать все это с собой, подключать.
И да, твой ноут должен быть как минимум атомной станцией
Кстати, к товарищу со звуковухой особо тоже не походишь.

Решение, которое я предлагаю, будет работать на любой машине без дополнительных затрат на производительность или по деньгам.
Да, оно не идеально.
Придется слегка скорректировать метод своей игры.
Но это единственная проблема, которая вообще приходит мне на ум.

- Я хочу точно знать, сколько задержки у моей звуковой карты в игре. Есть ли способ это узнать?
Да.
Есть способ узнать твою задержку до одной-двух миллисекунд.
Этот конкретный способ исключает человеческие ошибки и не нужно гадать при игре.

Теперь это карта.
Читай описание.
beatmapsets/1840268#osu/3779693

На этом все.

Закругляемся.
Так. Ну думаю, пока что все.
Не стесняйся писать, если я не прав
Или прав...
Напиши что ты думаешь об этой всей ситуации пеппи по ссылочке.
И в принципе, моя личка открыта.

И, естественно, большинство писанины тут чисто с моей колокольни

Удачного дня и не забывай пить водичку.
TicClick
правильно ли я понимаю, что:
- не очень хочется нажимать клавиши на условные t миллисекунд раньше?
- проблема усугубляется тем, что универсальный оффсет двигает только аудиодорожку, но не хитсаунды, и, как следствие, любые попытки исправить рассинхронизацию обречены на провал (в том числе и из-за очереди на аудиокарте, которую точно никак не избежать)?
- поскольку у тебя несколько комплектов железа с разной итоговой задержкой, то привыкнуть по-нормальному и не получится?

скажу так: для меня поиграть 10-15-20 минут и синхронизироваться с игрой на всю оставшуюся жизнь предпочтительнее, чем убрать из игры значительную часть обратной связи. поскольку это ритм-игра, где необходимо слушать музыку и нажимать в ритм, наличие обратной связи¹ критически важно. убрав интерактивные хитсаунды, ты будешь оценивать попадания на глаз, а не на слух.

проведу аналогию: поскольку не у всех игроков достаточно мощные компьютеры, и не все могут быстро реагировать на появляющиеся паттерны, я предлагаю в едином демократическом порыве пойти ещё дальше (нет, не нахуй) и показывать игроку вместо интерактивной карты идеальный заранее записанный реплей, а статистику попаданий рассчитывать потом. заодно и на хитбёрстах сэкономим, потому что рисовать лишние спрайты по ходу действия — значит лишний раз нагружать видеокарту (а она у меня, может быть, встроенная).

разумеется, вариант «слышать хоть что-то синхронизированное» лучше, чем вариант «слышать ёбаную мешанину», поэтому я вяло (примерно на 6%) поддерживаю эту идею ради тех, кто не может или не хочет привыкать.

всем хорошего дня, не забывайте мыться, дышать, ну и так далее.

---

¹ звуковой, не визуальной, потому что геймплей основан на интуитивном восприятии музыки, а не стратегии в реальном времени и чтении шкалы погрешностей с мыслями «так, я тут нажал на 15 мс позже, нужно собраться и нажать на 15 мс раньше на следующей ноте»
Libadushek
В чем проблема написать прогу для фьюза отдельной песни с хсами? Аудиодорожку же спокойно можно менять в ранкнутых мапах
Нечто похожее впринципе делает осутрейнер
TicClick

Livbadushek wrote:

В чем проблема написать прогу для фьюза отдельной песни с хсами? Аудиодорожку же спокойно можно менять в ранкнутых мапах
Нечто похожее впринципе делает осутрейнер
несколько причин:
- это просят далеко не первый раз, а функциональность затрагивает основу игры, значит, и разбираться с ней основному разработчику
- видимо, у достаточно большого числа игроков аудиокарты не очень (что странно — как мне кажется, распаянная на материнке аудиокарта встречается чаще всего, ну не может же быть столько херового железа)
- никто не гарантирует, что менять содержимое ранкнутых карт можно будет всегда

к слову, пока смотрел, как часто просили другую обработку хитсаундов, наткнулся на community/forums/topics/1602658?n=1 (благо поддержку ASIO всё-таки добавили в какой-то момент) — unholyghost, может, это подойдёт тебе?

(кстати, вот мысли пеппи, который заявляет заявлял шесть лет назад, что фактический лаг чаще всего на уровне 10 мс, под которые должно быть ОЧЕНЬ легко подстроиться — буквально те 10-15-20 минут один раз в жизни, про которые я говорил, может, даже меньше: community/forums/topics/428222?n=12)
Topic Starter
unholyghsttyper

Livbadushek wrote:

В чем проблема написать прогу для фьюза отдельной песни с хсами? Аудиодорожку же спокойно можно менять в ранкнутых мапах
Проблемы в этом нет.
Но это не самое лучшее решение, так как придется это делать каждый раз, когда ты меняешь сложность и для каждой карты и скина.

Если пеппи сможет это реализовать, что не выглядит так сложно, как переписывание драйверов, то не нужна будет отдельная аудиодорожка.
Тайминги хитсаундов будут просто браться из файла карты и читаться по ходу игры.
Звуки для хитсаундов будут браться либо из самой карты, либо из скина. Галочка на это уже имеется

TicClick wrote:

правильно ли я понимаю, что:
- не очень хочется нажимать клавиши на условные t миллисекунд раньше?
- проблема усугубляется тем, что универсальный оффсет двигает только аудиодорожку, но не хитсаунды, и, как следствие, любые попытки исправить рассинхронизацию обречены на провал (в том числе и из-за очереди на аудиокарте, которую точно никак не избежать)?
- поскольку у тебя несколько комплектов железа с разной итоговой задержкой, то привыкнуть по-нормальному и не получится?

скажу так: для меня поиграть 10-15-20 минут и синхронизироваться с игрой на всю оставшуюся жизнь предпочтительнее, чем убрать из игры значительную часть обратной связи. поскольку это ритм-игра, где необходимо слушать музыку и нажимать в ритм, наличие обратной связи¹ критически важно. убрав интерактивные хитсаунды, ты будешь оценивать попадания на глаз, а не на слух.

проведу аналогию: поскольку не у всех игроков достаточно мощные компьютеры, и не все могут быстро реагировать на появляющиеся паттерны, я предлагаю в едином демократическом порыве пойти ещё дальше (нет, не нахуй) и показывать игроку вместо интерактивной карты идеальный заранее записанный реплей, а статистику попаданий рассчитывать потом. заодно и на хитбёрстах сэкономим, потому что рисовать лишние спрайты по ходу действия — значит лишний раз нагружать видеокарту (а она у меня, может быть, встроенная).

разумеется, вариант «слышать хоть что-то синхронизированное» лучше, чем вариант «слышать ёбаную мешанину», поэтому я вяло (примерно на 6%) поддерживаю эту идею ради тех, кто не может или не хочет привыкать.

всем хорошего дня, не забывайте мыться, дышать, ну и так далее.

---

¹ звуковой, не визуальной, потому что геймплей основан на интуитивном восприятии музыки, а не стратегии в реальном времени и чтении шкалы погрешностей с мыслями «так, я тут нажал на 15 мс позже, нужно собраться и нажать на 15 мс раньше на следующей ноте»
Да, все три пункта ты понял абсолютно правильно.

Насчет обратной связи я не совсем с тобой согласен. Обратная связь со слухом все еще остается.
Просто на игре с нулевым оффсетом ты слушаешь разницу между аудиодорожкой и хитсаундами.
А в этом решении будешь слушать разницу между аудиодорожкой и звуками клавы/тактильными ощущениями от клавы (что удобно, можно оба)
Так делают игроки в манию. В видео от KcHecKa это наглядно видно.
Он не просто так снимал звук с клавиатуры.

Плюс, никто не отменял хитсаунды промахов и спиннеров, я думаю, что они должны остаться включенными.

И такая же система в A dance of Fire and Ice, где хитсаунды не генерируются игроком и буквально все игроки слушают свою клавиатуру.

TicClick wrote:

(кстати, вот мысли пеппи, который заявляет заявлял шесть лет назад, что фактический лаг чаще всего на уровне 10 мс, под которые должно быть ОЧЕНЬ легко подстроиться — буквально те 10-15-20 минут один раз в жизни, про которые я говорил, может, даже меньше: community/forums/topics/428222?n=12)
Я вскоре добавлю в пост инструкцию по нахождению своей точной задержки.
Но насчет 10 миллисекунд это конечно пеппи загнул.
Ни у одного моего знакомого, с которым мы нашли его задержку, задержка не была меньше 30мс.
У некоторых она доходит до семидесяти.
У меня специализированный интерфейс Tascam US-4x4. Он выдает минимум 25мс.

И да, где-то на десяти миллисекундах начинается задержка, которую можно услышать только тренированным ухом. И в принципе можно играть.
RainSeason
Im in.
Please sign in to reply.

New reply