Osu когда нас отпустит

Обновлено: 05.07.2024

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

Ритм-геймер, люблю монтировать видео и решать математические задачи

Да, можно научиться играть в осу

Помимо этого музыкальный вкус и слух развивает. А еще это очень хороший проводник в мир ритм-игр - мобильных, аркадных, ПК, консольных. Их очень много, и не будь osu я бы не когда не начал играть в памп, а памп это спорт и круто

Да, полезна в некоторых ее аспектах, в основном развитие бокового зрения и точность наводки, но есть и другая, темная сторона, если ты вспыльчив, то у тебя будет много тильтов, соответственно из-за этого многие и бросают осу, это я говорю как профессионал (2200pp)

Держу в курсе, 2200pp на самом деле это плачевно. Но хочу сказать одно, играйте в нее ради удовольствия. И советик. Читать дальше

Отвечу про себя. Играю в osu уже год. Если говорить о положительных сторонах, то развивает упорство в прохождении карты с многими ретраями, развивает периферическое зрение и скорость отклика мозга на события на экране, выносливость "бьющей" руки (при продолжительных картах со стримами), ну и контроль "аимящей" руки, соответственно.

Osu когда нас отпустит

Артем Меткечеков

Артем Меткечеков запись закреплена

Почему у меня сняли пп? и на некоторых мапах скор сбили на старый

Владислав Травкин


Владислав Травкин

Потому-что
бтв скорее всего ребаланс, но я не уверен ибо на сайте щас все так-же пока-что
upd: да

Реализация

Теперь нам нужно найти идентификатор процесса OSU! и обработать его. Существует много разных способов сделать это, но вероятно проще всего использовать CreateToolhelp32Snapshot, а также Process32Next для перебора списка процессов.

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

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

Для последней из этих вспомогательных функций нам понадобится что-то, что будет нажимать клавишу, когда мы ее вызываем. Опять же, есть несколько способов реализовать это, но я нашел keybd_event, но SendInput будет самым легким. Поскольку keybd_event устарел, мы будем использовать SendInput,

Обязательно добавьте проверку для карт с AudioLeadIn time.

Вот где начинается настоящая забава. Возможно, вы ожидали, что эта часть будет сложной, но логика здесь на самом деле довольно прямолинейна. Мы ждем 'start time' текущего объекта, удерживаем ключ, ждем 'end time’, а затем освобождаем его. После того, как мы выпустили ключ, мы переходим к следующему объекту и продолжаем, пока не достигнем конца beatmap.

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

ПОЛНЫЙ (почти) гайд по osu!

Итак. Я впервые сел за компьютер с целью написать что-нибудь полезное (или не очень), так что это мой первый опыт в написании гайда по игре - да что тут говорить, это вообще первое мое "творение" длиннее 50ти слов, которое я выкладываю на просторы интернета. Так что попрошу не судить строго, тухлыми помидорами особо не закидывать и вообще не особо негативно реагировать. По возможности. Спасибо :)

Так, теперь к делу.

В osu я играю уже года 4, и, честно говоря, достаточно удивлен тому, что за все это время не видел крупного, хорошенького гайда по этой игре. Вот серьезно: статьи "osu за 5 минут", описывающие максимум управление, были, видосики, где ютубер, пыхтя, без каких-либо нормальных комментариев настраивал игру под себя, видел, а толкового гайда так и не нашел. Может, фигово искал. Но в любом случае, одним гайдом больше, одним меньше - без разницы. Авось, кому и пригодится.

---Устанавливаем игру---

ПОЛНЫЙ (почти) гайд по osu! Osu!, Компьютерные игры, Гайд, Гифка, Длиннопост

---Создаем аккаунт---

Сразу после запуска нас повстречает красивый артик, фоновая музычка и окно для входа в osu-аккаунт. Жмякаем "Зарегистрироваться", вводим никнейм (выбирайте с умом - сменить его можно только с платной подпиской), почту, пароль (снова осторожно, поля "введите пароль еще раз" нет, так что постарайтесь не допустить опечаток). Собственно, все - теперь вы официальный игрок. Профиль можно понастраивать на сайте.

ПОЛНЫЙ (почти) гайд по osu! Osu!, Компьютерные игры, Гайд, Гифка, Длиннопост

ПОЛНЫЙ (почти) гайд по osu! Osu!, Компьютерные игры, Гайд, Гифка, Длиннопост

---Настраиваем всё и вся---

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

Жмем большущую центральную кнопку и переходим в раздел Options.

1) Вкладка "Общее". Если нужно - меняем язык.

2) Вкладка "Графика". Ограничение FPS ставим на Optimal, по желанию можно включить счетчик FPS. Обязательно проверьте, что пункт "Обнаруживать снижение производительности" активен (ну мало ли). Советую включить полноэкранный режим, если вдруг у вас osu работает иначе (в оконном режиме немного снижается производительность). "Render in native resolution" нужно лишь тем, кто все-таки наплевал на мои советы и решил оставить osu в окне :) В разделе детализации - все на ваш выбор, стопроцентно отключить стоит только "комбо-всплески" - дико раздражают абсолютно всех. Не забываем, что каждый пункт здесь - плюсик к нагрузке на видеокарту, так что если у вас старенький слабенький компухтер - смело можете отключать все, кроме ползущих слайдеров. В разделе главного меню - все на ваш выбор.

3) Вкладка "Игра". Затемнение фона сразу ставим на максимум. Почему? Да потому что, во-первых, еще один пункт нагрузки к видеокарте, а во-вторых - когда научитесь основам и потихоньку начнете проходить все более сложные карты, фон будет попросту мешать - гораздо легче играть на черном монохроме, поверьте) "Don't change dim level. " - отключаем, если у вас почему-то этот пункт активен. Проверяем, что прогресс - "Справа сверху (круг)", шкала точности - "отклонение от нуля". Можно отметить "Всегда показывать нажимаемые клавиши" (но это уже чисто на мой вкус). ОБЯЗАТЕЛЬНО отметьте пункт про первую ноту в Hidden-e, если он по какой-то причине отключен - крайне полезная штука.

4) Вкладка "Звук". Советую поставить "Игнорировать хитсаунды". Что это и почему так? Хитсаунды - это, как можно понять из перевода, звуки, воспроизводящиеся при нажатии на элементы в процессе игры (чуть позже объясню подробнее). Суть в том, что иногда попадаются карты, создатели которых добавляют свои звуки и элементы скинов - и частенько они весьма раздражают игроков, отвлекая от игры. Во избежание этого мы и ставим этот пункт; теперь звуки всегда будут одни и те же, встроенные в скин (подробнее ниже).

5) Вкладка "Скин". Самая глобальная вещь в настройках. Скин - это полные настройки отображения игры, от меню до игровых элементов. Скинов существуют тысячи, на любой вкус. Дружеский совет: смените дефолтный скин на какой-нибудь другой, какой больше понравится - вы все равно когда-нибудь это сделаете. Лично мой выбор - Informous либо Rafis. Первый подойдет для начальных сложностей, где-то до Hard-ов, а уже с Insane-ов предпочтительнее Rafis (подробнее о сложностях ниже). Разумеется, это лишь мой выбор.

Также в этой вкладке отмечаем пункты "Игнорировать скины всех карт" (вспоминаем про хитсаунды) и "Свой курсор из скина".

6) Вкладка "Управление". Пожалуй, самый важный момент. Начнем с чувствительности - ее стопроцентно нужно увеличить: насколько конкретно - зависит от вашего: а) размера экрана; б) выставленной чувствительности на самой мыши (если у вас она поддерживает такую функцию); в) ваших личных предпочтений; г) наконец, от устройства (мышь или планшет). Экспериментируйте, в общем. По остальным настройкам: включаем "Прямой ввод", отключаем "Отображать активную область. ", отключаем кнопки мыши (случайно нажмете - привет, промах, так что лучше отключить). Насчет волн при нажатии - это, скорее, относится к графике: хотите такую красоту - включайте :)

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

---Разбираемся с управлением---

Что нужно делать в osu? Проходить карты. Все. Больше ничего. Крайне интересная игра, да?))

Для начала разберемся, что вообще из себя представляют карты и какие они бывают. Карта - это, грубо говоря, уровень в osu. Чуть менее грубо говоря - это набор элементов (ноты=круги, слайдеры и спиннеры), появляющиеся под ритм песни в таком порядке, чтобы их удобно было проходить, ведя курсор по линии. Нет, не умею объяснять, совершенно. Держите гифку:

ПОЛНЫЙ (почти) гайд по osu! Osu!, Компьютерные игры, Гайд, Гифка, Длиннопост

Как нам всем этим делом управлять? Все просто: наводим курсор в центр (начала) элемента и в нужный момент, когда кружок вокруг элемента достигает его границ, жмем клавишу Z или X. По мере возрастания сложности карт вам уже придется играть сразу обеими клавишами, готовьтесь - одним пальцем вы попросту не будете успевать нажимать элементы вот в таких вот местах:

ПОЛНЫЙ (почти) гайд по osu! Osu!, Компьютерные игры, Гайд, Гифка, Длиннопост

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

ПОЛНЫЙ (почти) гайд по osu! Osu!, Компьютерные игры, Гайд, Гифка, Длиннопост

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

К слову, в osu одна из встроенных карт - обучающая. Впрочем, насчет ее полезности возникают вопросы - к примеру, я ее впервые увидел месяца через 4 после того, как начал играть))

---Качаем карты---

С управлением разобрались - самое время попробовать поиграть! А для этого нам нужно найти несколько карт. Но для начала разберемся, какие они бывают и что мы вообще скачивать собрались.

Перво-наперво, карты разделяются по сложности. У каждой карты есть название сложности и та же сложность, но в звездах. Название сложности присваивает создатель карты; это может быть как какое-нибудь стандартное "Easy"/"Normal"/"Hard"/"Insane" (от самого легкого к самому сложному), так и полностью выдумка автора. Например, когда в одном наборе карт (про наборы чуток ниже) собирают карты от разных создателей, имена мапперов (создателей) частенько прописывают в сложностях, и в итоге мы видим что-то вроде "Akitoshi's Hard", "Nely's Advanced" и т.д. Ниже приведен список наиболее часто встречающихся названий (от легкого к сложному):

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

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

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

Наконец, о поиске карт. Можно искать по названию, исполнителю, источнику (название аниме/игры/фильма/etc), тегам. Кроме того, обратите внимание на фильтры: можно найти карты лишь определенного режима игры (к слову, этот гайд именно про osu!, а не другие режимы, вроде osu!taiko или osu!mania), статусу рейтинга (по умолчанию поиск ведется лишь по "проверенным" картам, т.е., рейтинговым, одобренным и любимым), жанру, языку и т.д. Для загрузки нужно лишь нажать на соответствующий значок.

ПОЛНЫЙ (почти) гайд по osu! Osu!, Компьютерные игры, Гайд, Гифка, Длиннопост

Либо можно перейти на страницу карты и скачать оттуда, если, к примеру, вы не хотите загружать карту с видео (тем же опенингом).

ПОЛНЫЙ (почти) гайд по osu! Osu!, Компьютерные игры, Гайд, Гифка, Длиннопост

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

---Оценивание прохождения---

Каждая ваша попытка попасть по элементу строго оценивается системой. В зависимости от того, насколько точно и вовремя вы нажали на элемент, osu может дать вам одну из 4х оценок: 300 - все в шоколаде, вы молодец; 100 - то ли опоздали/поспешили чуток, то ли кривовато жмякнули; 50 - любо сильно опоздали/поспешили, либо очень криво нажали, либо немного опоздали/поспешили И кривовато жмякнули; промах - ну, тут no comments, все очевидно. По итогам того, как много у вас "не-300-овых" попаданий, вы получаете одну из следующих оценок за прохождение карты: SS (идеально, все 300), S, A, B, C, D. Не забываем и о том, что в левом верхнем углу у вас есть "шкала хитпоинтов" (не знаю, как официально называется, я ее так именую :P ), которая сокращается с каждым не-300-овым попаданием или промахом и восполняется, когда вы идеально попадаете по элементам. Обнулится - вы проиграли. Все просто. Кроме того, за каждое попадание вы получаете очки (справа сверху) и комбо (слева снизу). Комбо влияет на количество получаемых за попадание очков. Промахнулись - комбо падает в ноль, приток очков за попадания резко снижается. Подробнее обо всем этом, а также базовую информацию по модам, можно почитать тут.

ПОЛНЫЙ (почти) гайд по osu! Osu!, Компьютерные игры, Гайд, Гифка, Длиннопост

ПОЛНЫЙ (почти) гайд по osu! Osu!, Компьютерные игры, Гайд, Гифка, Длиннопост

На этом я, пожалуй, закругляюсь. Мы уже скачали, установили и настроили игру, разобрались с управлением и научились качать новые карты на свое усмотрение. К слову - можете поудалять встроенные, если хотите, лично меня, например, они лишь раздражали. Скоро (надеюсь), если этот пост соберет хоть какую-то относительно положительную реакцию (*готовит бункер для защиты от тухлых помидоров*), напишу еще пару статеек по этой игре. Разберем подробнее моды, рейтинги, отвечу на вопросы, если такие будут в комментах. Удачки всем.

OSU! Relax (основы)

Привет, Хабр! Представляю вашему вниманию перевод статьи Adventures in osu! game hacking.

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

Основной анализ beatmap

Итак, как мы будем разбирать beatmap? Мы можем разобрать все, начиная от названия песни, заканчивая настройками сложности. (Мы будем держать вещи простыми и анализируем только моменты времени, объекты попадания и некоторые значения, относящиеся к слайдеру.)

В стандартном режиме игры мы имеем дело с тремя типами объектов: кругом попадание, ползунком и счетчиком. В документации для формата файла .osu указано, что все объекты имеют такие составляющие: X, Y, время, тип. Все они будут включены в нашу структуру.

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

Получение игрового времени

Существует несколько различных способов сделать это, но самый простой — с помощью Cheat Engine. Если вы параноик, как я, вы можете сделать эту часть в автономном режиме, в конце концов, было много известных случаев автоматических запретов, связанных с использованием Cheat Engine. По крайней мере, убедитесь, что вы вышли из своего OSU!, прежде чем продолжить.

Начните с открытия Cheat Engine. Если OSU! пока не запущена, запустите её сейчас. Нажмите на значок в верхнем левом углу, чтобы открыть список процессов, отсюда выберите OSU!.exe и нажмите „Attach debugger to process”. Вернитесь к OSU. Теперь убедитесь, что никакая музыка не играет. Вы можете сделать это в главном меню, щелкнув на значок остановки в правом верхнем углу.

Теперь вернитесь к Cheat Engine, введите 0 в поле «Значение» и выполните первое сканирование. Как только оно будет закончено, вы увидите больше миллиона результатов. Мы сократим это до нескольких. Вернитесь к OSU! и снова начните воспроизведение музыки. Теперь вернитесь к Cheat Engine, установите для типа сканирования значение «Увеличенное значение» и нажмите «Следующее сканирование». Это значительно уменьшит количество результатов. Продолжайте нажимать кнопку «Следующее сканирование», пока не останется с несколько результатов.

Мы почти получили его. Все, что осталось сейчас, — это динамически получать это значение. Вот почему мы использовали отладчик Cheat Engine раньше. Щелкните правой кнопкой мыши на каждый адрес и выберите <> в раскрывающемся меню. Некоторые из них нам не подходят, но вы должны найти тот, который при разборке выглядит аналогичным.

Я загрузил базовый внешний сигнатурный сканер, который мы будем использовать позже в нашей реализации.

Обратите внимание, что указанная выше подпись относится только к каналу Stable (Latest) release. Подписи, вероятно, будут отличаться по каналам Stable (Fallback), Beta и Cutting Edge (Experimental), но процесс его поиска будет таким же, как и выше.

Читайте также: