forum

Ultimate guide to low-latency osu! on Linux (rev.12)

posted
Total Posts
277
show more
lonniganseaweed
Runs perfect on Debian 8 with XFCE. i5-4690k and AMD R9 280x. Interestingly, setting it to unlimited fps matches my monitor refresh (60Hz), but it runs 240 fps just fine. However, in winecfg, with winealsa.drv running, the test sound option did not work. The dmixer terminal test and osu sound just fine though, so it is just the winecfg.
Jmart
Hey dude, I appreciate the guide, but at the step where we fix the bancho disconnecting, I follow your exact instructions of replacing the user name with my own user and executing the command ALSA_DEFAULT_PCM="plug:dmixer" WINEPREFIX=~/.wine WINEARCH=win32 wine '~/.wine/drive_c/users/<your username>/Local Settings/Application Data/osu!/osu!.exe' leads to Ubuntu saying wine cannot find this. I have replaced my user name, and i have checked to see whether the directory was correct and it indeed was correct. I dont know what is causing this issue but it is preventing me from playing online, any helpful advice would be appreciated.
Topic Starter
Franc[e]sco

Jmart wrote:

Hey dude, I appreciate the guide, but at the step where we fix the bancho disconnecting, I follow your exact instructions of replacing the user name with my own user and executing the command ALSA_DEFAULT_PCM="plug:dmixer" WINEPREFIX=~/.wine WINEARCH=win32 wine '~/.wine/drive_c/users/<your username>/Local Settings/Application Data/osu!/osu!.exe' leads to Ubuntu saying wine cannot find this. I have replaced my user name, and i have checked to see whether the directory was correct and it indeed was correct. I dont know what is causing this issue but it is preventing me from playing online, any helpful advice would be appreciated.
try ~/.osu/drive_c/users/<your username>/"Local Settings"/"Application Data"/"osu!"

note that your username is your linux username, not osu username
ZarosTenjin
hey i've followed your tutorial and got osu running which is nice 8D thanks for the guide

The thing i'm not able to do however is get OpenGL to work. I must say though trying to change the release stream from stable(fallback) to cutting edge doesnt stick. it goes back to stable fallback immediatly and says osu is up to date. Got any idea whats going wrong?

Cheers
Zaros
kaiske

ZarosTenjin wrote:

hey i've followed your tutorial and got osu running which is nice 8D thanks for the guide

The thing i'm not able to do however is get OpenGL to work. I must say though trying to change the release stream from stable(fallback) to cutting edge doesnt stick. it goes back to stable fallback immediatly and says osu is up to date. Got any idea whats going wrong?

Cheers
Zaros
Exact same for me, and I also seem to have problem that RaidMax had, I get 50~ fps on nvidia gtx 770 and proprietary drivers, so I think it is not using proper driver or somehow
arihosu
Dude, awesome! I tried to set up osu! on Linux in the past but I never got it to work fully (either there was too much sound latency, input lag or low fps, etc). I followed your guide on a clean Xubuntu install and performance seems to be on par with Windows (at least at a first glance).

(don't mind the screenshot artifact)

My specs:
AMD Athlon II x4 620
ATI RadeonHD 6850
8GB ram

to ZarosTenjin and kaiske, I had the same problem, whenever I click on Cutting Edge the game would automatically go back to Stable (fallback). What I did is start the game in Windows, set it to Cutting edge there and then just copy the files over to the Linux partition, worked like a charm for me.
Topic Starter
Franc[e]sco
rev.6
added arihosu's advice for problems with switching to cutting edge
changed polling rate to 500hz because 1000hz can cause xorg to lag even on good cpu's
TheTanadu
hey, I have problem when I must connect to buncho.
I have that massage - what I can do if I don't have that? :o
http://i.imgur.com/f2lac6q.png
Someone could help? ;o
Topic Starter
Franc[e]sco

TheTanadu wrote:

hey, I have problem when I must connect to buncho.
I have that massage - what I can do if I don't have that? :o
http://i.imgur.com/f2lac6q.png
Someone could help? ;o
try
~/.osu/drive_c/users/<your username>/"Local Settings"/"Application Data"/"osu!"/"osu!.exe"
TheTanadu
exe not found :o but.. I do all of this in your post my master :D
http://imgur.com/WTGFf6g
Just crsor is like if I must something write. ;-; :D
Topic Starter
Franc[e]sco

TheTanadu wrote:

exe not found :o but.. I do all of this in your post my master :D
http://imgur.com/WTGFf6g
Just crsor is like if I must something write. ;-; :D
forgot to replace the wine profile
~/.wine/drive_c/users/<your username>/"Local Settings"/"Application Data"/"osu!"/"osu!.exe"
TheAussie
I have one problem with osu, the audio skips,pops, crackles and ive followed the guide. maybe you can help me? remotely or something.
TheTanadu
;_; I try but when I make that, I got "bash" to write something - first time I have problem with wine ;-; :D
http://imgur.com/zrNhuRd
or I'm stupid ;-;
TheAussie

TheTanadu wrote:

;_; I try but when I make that, I got "bash" to write something - first time I have problem with wine ;-; :D
http://imgur.com/zrNhuRd
or I'm stupid ;-;
Try This.

'~/.wine/drive_c/users/<your username>/Local\ Settings/Application\ Data/osu\!/osu\!.exe'
Topic Starter
Franc[e]sco

TheTanadu wrote:

;_; I try but when I make that, I got "bash" to write something - first time I have problem with wine ;-; :D
http://imgur.com/zrNhuRd
or I'm stupid ;-;
remove the single quote at the beginning
Topic Starter
Franc[e]sco

TheAussie wrote:

I have one problem with osu, the audio skips,pops, crackles and ive followed the guide. maybe you can help me? remotely or something.
does it also crackle during alsa audio tests?
TheAussie

Franc[e]sco wrote:

TheAussie wrote:

I have one problem with osu, the audio skips,pops, crackles and ive followed the guide. maybe you can help me? remotely or something.
does it also crackle during alsa audio tests?
No, it was when i switched to PulseAudio for OBS, but i have configured settings a bit different since then and it doesn't seem to be happening.
Nato Morichika
Can't get ce or beta run on wine :<

What I had installed in osu's prefix:
nat@nat ~ % ./winetricks list-installed       
baekmuk
corefonts
dotnet20
dotnet20sp1
dotnet30sp1
dotnet35
dotnet40
dotnet45
eufonts
gdiplus
gdiplus_winxp
msxml3
takao
unifont
wenquanyi
./winetricks list-installed 4.95s user 2.81s system 87% cpu 8.899 total

But when I try to switch to ce or beta, it automatically switch back to stable fallback. So I switch that on Windows as suggested. osu! did update itself to ce on Windows, but when I try to run it with wine, osu!update shows up and 'update' osu to stable fallback version... :I

I am not on linux, but OS X, not sure if that matter.
Topic Starter
Franc[e]sco

MagicNAT wrote:

Can't get ce or beta run on wine :<

What I had installed in osu's prefix:
nat@nat ~ % ./winetricks list-installed       
baekmuk
corefonts
dotnet20
dotnet20sp1
dotnet30sp1
dotnet35
dotnet40
dotnet45
eufonts
gdiplus
gdiplus_winxp
msxml3
takao
unifont
wenquanyi
./winetricks list-installed 4.95s user 2.81s system 87% cpu 8.899 total

But when I try to switch to ce or beta, it automatically switch back to stable fallback. So I switch that on Windows as suggested. osu! did update itself to ce on Windows, but when I try to run it with wine, osu!update shows up and 'update' osu to stable fallback version... :I

I am not on linux, but OS X, not sure if that matter.

why not use the beta osx build since you're on osx? maybe there are more graphical support issues with wine on osx
http://osx.ppy.sh/

also if it might help this is the list installed from a working install:
loli@jigoku:~$ WINEPREFIX=~/.wine WINARCH=win32 winetricks list-installed
corefonts
dotnet20sp1
dotnet20
dotnet30sp1
dotnet35
dotnet40
dotnet45
gdiplus
gdiplus_winxp
msxml3
takao
vcrun2008
vcrun2010
AGRX
peppy said its not possible to run anything else than stable on osx Wine build atm. Have to wait for native client ;/
Nato Morichika

Franc[e]sco wrote:

MagicNAT wrote:

Can't get ce or beta run on wine :<

What I had installed in osu's prefix:
nat@nat ~ % ./winetricks list-installed       
baekmuk
corefonts
dotnet20
dotnet20sp1
dotnet30sp1
dotnet35
dotnet40
dotnet45
eufonts
gdiplus
gdiplus_winxp
msxml3
takao
unifont
wenquanyi
./winetricks list-installed 4.95s user 2.81s system 87% cpu 8.899 total

But when I try to switch to ce or beta, it automatically switch back to stable fallback. So I switch that on Windows as suggested. osu! did update itself to ce on Windows, but when I try to run it with wine, osu!update shows up and 'update' osu to stable fallback version... :I

I am not on linux, but OS X, not sure if that matter.

why not use the beta osx build since you're on osx? maybe there are more graphical support issues with wine on osx
http://osx.ppy.sh/

also if it might help this is the list installed from a working install:
loli@jigoku:~$ WINEPREFIX=~/.wine WINARCH=win32 winetricks list-installed
corefonts
dotnet20sp1
dotnet20
dotnet30sp1
dotnet35
dotnet40
dotnet45
gdiplus
gdiplus_winxp
msxml3
takao
vcrun2008
vcrun2010
:D I had successfully runs it. Just enable the hide version option from wine, and osu! allows me to update.



Seems like this option is only available though wine-staging.
Topic Starter
Franc[e]sco
just finished testing my setup on gentoo and it runs smoothly at an average of 0.39ms frame time (almost 3k fps). Will update the guide with gentoo-related stuff tomorrow
NoYzE
Thx for the guide. I somehow got it running in Debian but not very good. Some Pulse/Alsa problems first, then background and Skin problems. Now some other problems with latency. For some reason Debian has no low-latency or rt-kernel for newer releases, because they say it's in the kernel already or something like that. I hope to see some native love for linux with the upcoming .NET Core but knowing peppy i doubt it^^
Topic Starter
Franc[e]sco
btw I managed to get both pulse and osu running in realtime scheduling on gentoo, I'm kinda busy atm but I will eventually update the guide
NoYzE
Besides the osu rant about deleting background makes it aaaangry i got the issues fixed now. (Bad idea to use the same config you used with windows) I have to use alsa directly and set offset to excactly -30 though, but i get latency < 1ms.
Topic Starter
Franc[e]sco

NoYzE wrote:

Besides the osu rant about deleting background makes it aaaangry i got the issues fixed now. (Bad idea to use the same config you used with windows) I have to use alsa directly and set offset to excactly -30 though, but i get latency < 1ms.

the winealsa.drv patch should chip off at least 10ms off that -30, also I suggest setting that as the map's offset, not global offset because at least 15-20ms of it are keyboard input latency caused by wine, because the audio sounds spot-on. or at least that's my case.
wobbol
To all the Arch Linux people: trying to keep 32bit software to a minimum, package lib32-gnutls is nessary for cuttingedge to aquire a connection to the OSU! server.

#glxinfo is here
# pacman -S mesa-demos

##
### get a good alsa interface for wine here
##

#make sure you have multilib
# nano /etc/pacman.conf

#install wine-stageing (just happens to be avalable from multilib)
# pacman -Syu wine-staging

#quell naggboxes about no geko or mono being avalable (these packages are not used to my knoledge)
# pacman -S wine_gecko wine-mono

#winetricks
# pacman -S winetricks


#install 32 bit libs for alsa(probably need more for pulse)
# pacman -S lib32-alsa-lib lib32-alsa-plugins

#
##Test wine audio here
#

#osu! requires gnutls (will also quiet some errors when installing dotnet45)
# pacman -S lib32-gnutls

#
## install dotnet45 corefonts
## download and install osu!


If switching to cutting edge gives you some trouble try what MagicNAT did
I had successfully runs it. Just enable the hide version option from wine, and osu! allows me to update.



Seems like this option is only available though wine-staging.
P.S. Please forgive my formatting :o im dead.
Jerod212
Is it helping to hide the wine version? Because when I do that a lot of number just dissapear in osu, everything work fine and i'm able to play but i'm not sure if a notice a cursor lag or not (i'm using a bamboo tablet)
Espionage724
Hmm, is using a lowlatency kernel recommended nowadays? I've asked the question in other places, and the general consensus was that it was pretty pointless on general-use workstations unless you did work with mechanics and machinery that require low latency. Not sure if it helps osu! that much vs a standard kernel, but unless osu! is the only thing you're doing on that computer to not care, throughput will be lower.

From my understanding, modded kernels and even SteamOS that advertise the use of a lowlatency kernel have tweaks done to it to also make it worthwhile for general desktop usage.

For Ubuntu and Debian, I'd recommend XanMod kernel: http://xanmod.org/

Liquorix is also an alright choice for Ubuntu and Debian: http://liquorix.net/

For openSUSE, pontostroy's drm-next kernel is nice (not certain if it's actually latency-optimized or if it's just bleeding-edge): http://download.opensuse.org/repositori ... /drm-next/

For Arch, Gentoo, and anyone wanting to manually patch the kernel for whatever distro they use, pf-kernel also looks really interesting: https://pf.natalenko.name/


And two other notes for the guide; disabling mouse acceleration with xset can be problematic or just not work depending on the input library being used (pretty sure it doesn't work at all with libinput). There's an Arch wiki page somewhere with a few better methods. Also the PPA link for Wine Staging is outdated (the staging wiki has the new PPA; too lazy to copy/paste atm lol).
Topic Starter
Franc[e]sco
I'm using the ck kernel on gentoo, I dunno if it actually improves input lag / game performance but might as well use it.

Also thanks for the info on the ppa & mouse accel.
AGRX
is possible to apply any of these fixes on mac osx wine wrapper? performance is kinda weak...
Howl
As a tl;dr of what a fellow arch linux user previously said, you need to do some tweaks before starting osu!, otherwise it won't start.

To make HTTPS work, and thus make the connection to the update server work, you need to do the following (assuming you have the multilib repository set up):

sudo pacman -S samba lib32-gnutls

At least, that did it for me (running Antergos)
Topic Starter
Franc[e]sco

Howl wrote:

As a tl;dr of what a fellow arch linux user previously said, you need to do some tweaks before starting osu!, otherwise it won't start.

To make HTTPS work, and thus make the connection to the update server work, you need to do the following (assuming you have the multilib repository set up):

sudo pacman -S samba lib32-gnutls

At least, that did it for me (running Antergos)
with wine-staging it worked out of the box for me on gentoo, but I guess it depends on the distro and architecture
Howl

Franc[e]sco wrote:

with wine-staging it worked out of the box for me on gentoo, but I guess it depends on the distro and architecture

Probably had to specify it's more an Arch Linux thing, I guess :P Perhaps you installed the 32-bit version of gentoo, thus gnutls was already 32-bit?

Anyway, after setting up osu! for 2 straight hours, I can say it now works almost like a charm. The only problem left is the icons, but I guess I can live without them. I can't be bothered to dig deep to find out the source of the problem.
Splooshie

Jerod212 wrote:

Is it helping to hide the wine version? Because when I do that a lot of number just dissapear in osu, everything work fine and i'm able to play but i'm not sure if a notice a cursor lag or not (i'm using a bamboo tablet)
I had the same issue. I turned off the hide wine version option after updating osu and that fixed the numbers.
Topic Starter
Franc[e]sco

Howl wrote:

Franc[e]sco wrote:

with wine-staging it worked out of the box for me on gentoo, but I guess it depends on the distro and architecture
Probably had to specify it's more an Arch Linux thing, I guess :P Perhaps you installed the 32-bit version of gentoo, thus gnutls was already 32-bit?

Anyway, after setting up osu! for 2 straight hours, I can say it now works almost like a charm. The only problem left is the icons, but I guess I can live without them. I can't be bothered to dig deep to find out the source of the problem.
nah I'm on 64 bit but I think gentoo manages multiarch stuff a bit differently than arch so that's probably why
- MoonRider
thanks for the guide. works perfect on ubuntu 15.10!
I can already feel the difference.
AGRX
again, does anyone know if there are fixes that can lower latency on mac wine wrapper ? some winetricks or registry hacks ?... :(
Maybe i should give a linux a try because installing win on my machine is not possible at this moment.
Topic Starter
Franc[e]sco

Agrrox wrote:

again, does anyone know if there are fixes that can lower latency on mac wine wrapper ? some winetricks or registry hacks ?... :(
Maybe i should give a linux a try because installing win on my machine is not possible at this moment.
I don't own a mac, sorry. But you could try manually setting up wine instead of using the osx build, although it will probably end up performing the same.
n54
I'm having a problem on arch.
Sound works fine but osu cant connect, error is
fixme:ras:RasEnumConnectionsW RAS support is not implemented! Configure program to use LAN connection/winsock instead!
lib32-gnutls is installed.
The error occurs as soon as i install dotnet45 in my wineprefix. With dotnet20 it works, but then the only working osu version is the stable one.
Any ideas on that?
show more
Please sign in to reply.

New reply