3 заметки с тегом

osu

Запуск osu! на Linux. Рабочий способ.

Полтора года назад я уже писал о том, как запустить osu! на Линуксе. С тех пор эта статья была самой популярной в блоге, судя по статистике. Однако, с тех пор времен изменилось, я набрался опыта, перешел на Debian 9 и т. д... Так что, встречайте — новый гайд по запуску здесь и сейчас!

Данный способ актуален для Ubuntu и производных дистрибутивов. Основан на статье на Github.

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

----------------- Для Ubuntu ----------------- 
sudo dpkg --add-architecture i386   
wget -nc https://dl.winehq.org/wine-builds/Release.key
sudo apt-key add Release.key
sudo apt-add-repository https://dl.winehq.org/wine-builds/ubuntu/
----------------- Для Linux Mint 17.x  ----------------- 
sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ trusty main'
----------------- Для Linux Mint 18.x  ----------------- 
sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ xenial main'
sudo apt-get update
sudo apt-get install --install-recommends winehq-stable

Устанавливаем скрипт winetricks. Он поможет с легкостью установить полезные компоненты Windows.

wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks
sudo mv -v winetricks /usr/local/bin

Создадим префикс и установим дополнения через winetricks, включающие в себя .NET, шрифты и прочие нужные штуки.

WINEPREFIX=~/osu-linux WINEARCH=win32 winetricks corefonts dotnet40 gdiplus d3dx9_36 cjkfonts

Префикс — это такая папка, куда будут скачиваться дополнения и, вообще, программы. Как виртуальный диск. В данном случае префиксом является ~/osu-linux. Это значит, что в Вашей домашней папке будет создана папка osu-linux. Вы можете выбрать и другую папку, если нужно. Если что-то пойдет не так, и вы захотите начать сначала, префикс лучше заменить. Папку при этом можно будет удалить.

Запустим конфигуратор:

WINEPREFIX=~/osu-linux WINEARCH=win32 winecfg

Там, на вкладке Графика, нужно проверить, чтобы стояли галочки на «Разрешить менеджеру окон декорировать окна» и «... управлять окнами Wine»

В целях уменьшения задержки будем использовать аудиодрайвер ALSA:

WINEPREFIX=~/osu-linux WINEARCH=win32 winetricks sound=alsa

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

cat > dsound.reg << "EOF"
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Wine\DirectSound]
"HelBuflen"="512"
"SndQueueMax"="3"
EOF

Выполнить файл настроек реестра:

WINEPREFIX=~/osu-linux WINEARCH=win32 wine regedit dsound.reg

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

Распаковываем архив. Далее предполагается, что папка osu! у Вас в Домашней папке.

В принципе, уже можно посмотреть на результат:

WINEPREFIX=~/osu-linux WINEARCH=win32 wine ~/osu\!/osu\!.exe

Должно работать без лагов.

Создадим лаунчер, чтобы каждый раз не писать эту команду. В качестве иконки можно взять лого с официального сайта. Скачайте, переименуйте в icon.png и положите в папку с osu!. Далее создадим файл osu.desktop либо в /usr/share/applications, либо в ~/.local/share/applications. В последнем случае лаунчер будет доступен только для текущего пользователя. Пропишем следующее содержимое в него:

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Name=osu!
GenericName=osu!
Exec=WINEPREFIX=~/osu-linux WINEARCH=win32 wine ~/osu\!/osu\!.exe
Terminal=false
Icon=/home/iriscot/osu\!/icon.png            # путь к иконке лучше сделать абсолютным
Type=Application
Categories=Game;
Comment=click the circles!
Comment[ru_RU]=играть в кружочки

В пути к иконке поставьте свое имя пользователя, а в поле Exec поменяйте путь и префикс, если вы использовали другие данные. Теперь вы сможете найти игру в списке приложений.

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

2018   Linux   osu   игры

Запуск osu! на Linux

Эта статья — архивная
Если вы хотите установить осу на линукс, смотрите подробный гайд в новой статье.
____

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

Устанавливаем Wine и winetricks к нему

sudo apt-get install wine winetricks

Делаем префикс

WINEPREFIX=${WINEPREFIX} WINEARCH=win32 wine echo lol 1>/dev/null 2>/dev/null

Через winetricks ставим Windows-библиотеки и шрифты, чтобы все работало как надо. Все скачивается само, иногда только надо прокликивать ОК.

WINEPREFIX=${WINEPREFIX} WINEARCH=win32 winetricks corefonts dotnet20 dotnet40 gdiplus d3dx9_36

Наконец мы можем запустить osu!

wine /home/iriscot/osu/osu\!.exe

После «wine» пишем путь к osu!.exe, восклицательный знак надо экранировать бэкслэшем.

Хоть данный способ и запускает осу, но при открытии списка карт начинаются лаги, по крайней мере у меня, а в консоли лезут ошибки от драйвера аудио. Если смогу пофиксить это — обновлю пост.

2017   Linux   osu   игры   хак

Хардкорная клавиатура для osu!

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

Собственно, про хардварную часть рассказывать нечего — контакты реле напрямую воткнуты в 8 и 9 порты. Резистор на 10К не требуется, ибо включен встроенный.

Скетч:

#include <Keyboard.h> //библиотека для клавы

void setup(){
  pinMode(8, INPUT_PULLUP); //выходы 8 и 9 с подтягивающим резистором
  pinMode(9, INPUT_PULLUP);
  Keyboard.begin();
  }
void loop(){
    if(digitalRead(8)==LOW){ //кнопка x
    Keyboard.press('x');
  }
    if(digitalRead(9)==LOW){ //кнопка z
    Keyboard.press('z');
  }
  delay(80); //задержка в мс. по умолчанию 80
  Keyboard.releaseAll();
}

Задержка этой клавиатуры по умолчанию равна 0.08 с, но вы можете поставить свою в скетче. Чем меньше задержка, тем чаще будет отправляться сигнал о нажатой кнопке, даже если вы нажали ее 1 раз.
Пример работы: zzxxxxzzxzxzxzzxzxzx

Вы также можете подключить любые другие кнопки (напр. Cherry MX) и вообще, все, что замыкает контакт.

2016   Arduino   diy   osu   игры   кодерство