You are not logged in.

#1 2018-06-08 09:58:10

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

[SOLVED] Anyone had success with Albion Online?

Final edit:

(Not officially recommended! I actually ended up using debtap to convert the proper libsndio6 .deb file found directly on Debian's repo site, then installed it properly! That said, this works fine but could maybe cause AO to break in the future. Use this method if you want to see if this solves it, but tracking down the actual So file and making a package and installing is the officially recommended method. YMMV!)

I've gotten it working. If you've followed the popular Linux tutorial found on the AO forums (link below) and are running into libSDL2 errors when the game launches, but already have sndio and libSDL2 installed, then the problem is the SDL2 sndio version required is not in your system libraries (hopefully).

cd to albiononline/game_x64/Albion-Online_Data/Plugins/x86_64

ls to verify libSDL2-2.0.so.0 is there in the folder, then ldd it to check what it's linked against.

In the ldd scroll, you should see this:

 libsndio.so.6.1 => not found 

We do not have this version of sndio in our repo, nor in the AUR, but it isn't required. What I did was symlink the system lib to the one it wants:

 sudo ln -s /usr/lib/libsndio.so /usr/lib/libsndio.so.6.1 

Now try ldd again and verify libsndio.so.6.1 is found. It should look like this now:

 libsndio.so.6.1 => /usr/lib/libsndio.so.6.1 

The current version in our repo was compatible with the one AO wants, and it loads the plugin properly now when you use the run script from the tutorial.

I played around with stuff for a few hours and this is the solution that works perfectly for me on Arch. There should be no reason this breaks unless a new sndio update comes out and the symlink source ends up being incompatible with 6.1 or the unlikely event that AO devs properly remake and repack a Linux client dependent on brand new libraries. If AO breaks in a few months or something, you know where to look first.

Tutorial and video for initial instructions: https://forum.albiononline.com/index.ph … king-game/

Last edited by nannerpussy (2018-06-11 02:43:46)

Offline

#2 2018-06-08 10:40:35

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 4,710

Re: [SOLVED] Anyone had success with Albion Online?

Please post error messages and terminal output of an unmodified (restore the sdl library that it originally shipped with so we all know what we are talking about here) installation. With your given interpretation there's no telling wether you are on the mark or completely off base with your assumption.

Edit 2: There is an AUR build for this game's binary, but I run into the "!upx" support error since pacman removed support for it a while back. I also tried using pacaur thinking it didn't just invoke pacman like yaourt does, but yeah.

No helper jumbling will fix this. You should merge/overwrite or otherwise fix your .pacnew files. This whole sentence shows a severe lack of understanding of what the AUR is and how helpers relate to it, you are strongly advised to read through

https://wiki.archlinux.org/index.php/Ar … Repository
https://wiki.archlinux.org/index.php/Makepkg

as proper knowledge of these tools would immediately answer that question.

And please adjust the title to something that actually reflects your issue, always assume that there's a specific problem related to how you are attempting to do things, instead of vague wonderings if anyone has had success in doing so.

Last edited by V1del (2018-06-08 10:46:52)

Offline

#3 2018-06-08 10:46:47

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

V1del wrote:

Please post error messages and terminal output of an unmodified (restore the sdl library that it originally shipped with so we all know what we are talking about here) installation. With your given interpretation there's no telling wether you are on the mark or completely off base with your assumption.


Edit 2: There is an AUR build for this game's binary, but I run into the "!upx" support error since pacman removed support for it a while back. I also tried using pacaur thinking it didn't just invoke pacman like yaourt does, but yeah.

No helper jumbling will fix this. You should merge/overwrite or otherwise fix your .pacnew files. This whole sentence shows a severe lack of understanding of what the AUR is and how helpers relate to it, you are strongly advised to read through

https://wiki.archlinux.org/index.php/Ar … Repository
https://wiki.archlinux.org/index.php/Makepkg

as proper knowledge of these tools would immediately answer that question.

OK cool. But back to the actual question, can I replace the library with a symlink and expect it to work or is the binary going to be compiled against the library (my assumption)? If so, why does the symlink solution work long enough to load the plugin if this shouldn't be possible? The AUR package was a total after thought, the first time I've ever seen the upx error, and not the route I want to take anyway. I'm positive it's outdated as the upstream changes nearly weekly and it'll be behind and unreported because of the sheer frequency of changes an MMO makes. Like the LoL AUR build.

To recap, did not even search for a upx solution and in the past week read about the pacman support, though it may have been talking about pacman-git.

Last edited by nannerpussy (2018-06-08 10:47:44)

Offline

#4 2018-06-08 10:51:27

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 4,710

Re: [SOLVED] Anyone had success with Albion Online?

It depends on what you want to replace with a symlink, in most cases that people do think that they are fixing something with a symlink, they are actually doing something wrong and discouraged. Relevant terminal output would be useful to assess wether that is the case here or not.

The general thing to look for is that you are not symlinking an incompatible soname bump. That might look like it works at first but will fall apart as soon as some function either doesn't exist or the expected return values have changed. In terms of SDL ABI there are 2 versions, sdl1 and sdl2 minor (i.e. SDL 2.0.1 -> SDL 2.0.8) bumps can usually be symlinked safely. Which is why your talk of SDL version 3 or version 5 doesn't make any sense., which is why I'm asking you to post unchanged error messages.

It would already help if you simply posted the exact symlink replacements you used.

upx and pacman have no relation, this is a makepkg option and the fix is to fix your makepkg config by virtue of merging the necessary bits from the pacnew file.

Last edited by V1del (2018-06-08 11:06:30)

Offline

#5 2018-06-08 11:04:16

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

V1del wrote:

It depends on what you want to replace with a symlink, in most cases that people do think that they are fixing something with a symlink, they are actually doing something wrong and discouraged. Relevant terminal output would be useful to assess wether that is the case here or not.

upx and pacman have no relation, this is a makepkg option.


Here's the full output after running the initial launch script:

Found path:  /albiononline/game_x64/Albion-Online
Mono path[0] = ' /albiononline/game_x64/Albion-Online_Data/Managed'
Mono path[1] = ' /albiononline/game_x64/Albion-Online_Data/Mono'
Mono config path =  '/albiononline/game_x64/Albion-Online_Data/Mono/etc'
Preloaded 'ScreenSelector.so'
Preloaded 'libAkSoundEngine.so'
Unable to preload the following plugins:
	libSDL2-2.0.so.0

Hangs there, sometimes with a Unity3D directory notification/warning that isn't critical. The suggested fix many users follow relies on this shell script with LD_PRELOADing among other things:

#!/bin/sh
SCRIPT=$(readlink -f "$0")
SCRIPTPATH=$(dirname "$SCRIPT")
export LD_LIBRARY_PATH=/usr/lib
#export LD_LIBRARY_PATH="$SCRIPTPATH/launcher"
export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/qt/plugins/platforms
#export QT_QPA_PLATFORM_PLUGIN_PATH="$SCRIPTPATH/launcher/plugins/platforms"
export QT_PLUGIN_PATH=/usr/lib/qt/plugins
#export QT_PLUGIN_PATH="$SCRIPTPATH/launcher/plugins/"
#sed -i -e '/Screenmanager Is Fullscreen mode/d' "$HOME/.config/unity3d/Sandbox Interactive GmbH/Albion Online Client/prefs"
sed -i -e '/Screenmanager Resolution Height/d' "$HOME/.config/unity3d/Sandbox Interactive GmbH/Albion Online Client/prefs"
sed -i -e '/Screenmanager Resolution Width/d' "$HOME/.config/unity3d/Sandbox Interactive GmbH/Albion Online Client/prefs"
# Clean the directory
for file in $(ls -l launcher/ | grep -v "Albion-Online" | grep -v "launcher.log" | grep -v "version.txt")
do
if [ -f launcher/${file} ]
then
echo "Removing launcher/${file}"
rm launcher/${file}
fi
done
LD_PRELOAD=~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0 "$SCRIPTPATH/launcher/Albion-Online" 

Following the script, I'm putting this shell script into the parent directory containing the launcher directory.

There are a couple steps required before running this obviously, which I did, but the result is the same. If I symlink my system libSDL2 library (version 5) I can get past the hang, game starts with opening video, games then hangs at 1% during initialization (a common issue with Linux users and this game apparently, which usually stems from not having the sndio and libSDL2 packages installed at all.) According to another Arch user, the libSDL2 AO wants is version 2 built against egl and wayland (neither are listed dependencies, but I have them both for other things anyway). What I'm having trouble understanding is why I can get the SDL2 plugin to load, game window to open, then run into a freeze if it shouldn't be working at all. Obviously I do not know enough about the way binaries and libraries get compiled, but I do understand flatpaks and figure this game would utilize that if it had to use a very specific version no matter what. For instance it uses qt5webengine, which is a nightmare in a lot of games because the very specific version requirements. Many games will use flatpaks to solve it, I think.

Offline

#6 2018-06-08 11:09:05

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 4,710

Re: [SOLVED] Anyone had success with Albion Online?

I added a few things to my post, that should help with clearing the confusion, yes in this case it would be safe to create a symlink.

Offline

#7 2018-06-08 11:27:29

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

V1del wrote:

I added a few things to my post, that should help with clearing the confusion, yes in this case it would be safe to create a symlink.


Also, the only thing I modified from the output is /home/myrealname from the begging of the few lines. I guess I could have just done ~ to clarify that instead. But after running that script, I get an identical error UNLESS I symlink my system libSDL2 library from Steam's x86_64 directory, as suggested by others. If I do that with the symlink and run the game:

Set current directory to ~/Games/albiononline/game_x64
Found path: ~/Games/albiononline/game_x64/Albion-Online
Mono path[0] = '~/Games/albiononline/game_x64/Albion-Online_Data/Managed'
Mono path[1] = '~/Games/albiononline/game_x64/Albion-Online_Data/Mono'
Mono config path = '~/Games/albiononline/game_x64/Albion-Online_Data/Mono/etc'
Preloaded 'ScreenSelector.so'
Preloaded 'libAkSoundEngine.so'
Preloaded 'libSDL2-2.0.so.0'
Player data archive not found at `~/Games/albiononline/game_x64/Albion-Online_Data/data.unity3d`, using local filesystem

Again, changed full home path to ~ here to hide real name. But then the actual game launches and proceeds to get stuck at 1% with no further output. It does create a launcher.log, but that is useless because it closes to launch  the game binary.

I didn't want to run into permission errors by symlinking my /usr/lib SDL2 library, and besides that version is actually even higher than Steam's (current here is version 8, Steam's is version 5).

Last edited by nannerpussy (2018-06-08 11:28:51)

Offline

#8 2018-06-08 12:01:45

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 4,710

Re: [SOLVED] Anyone had success with Albion Online?

There's a good chance that whatever actual error you are receiving afterwards is unrelated to SDL2 so you might be chasing a red hering in that regard.

As mentioned the minor versions .5 .8 should usually be inconsequential and work correctly either way.

Do you get a coredump from the freeze?

Is that progress bar supposed to be a loading screen or a download screen for updates and the like?

Last edited by V1del (2018-06-08 12:04:16)

Offline

#9 2018-06-08 12:23:41

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

V1del wrote:

There's a good chance that whatever actual error you are receiving afterwards is unrelated to SDL2 so you might be chasing a red hering in that regard.

As mentioned the minor versions .5 .8 should usually be inconsequential and work correctly either way.

Do you get a coredump from the freeze?

Is that progress bar supposed to be a loading screen or a download screen for updates and the like?

Unfortunately the only coredumps I have are when libSDL completely refuses to load, but when I do a symlink workaround and freeze at 1%, I actually get no coredump (at least that I can see). It just hangs completely with no output.

Offline

#10 2018-06-10 23:51:56

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

V1del wrote:

I added a few things to my post, that should help with clearing the confusion, yes in this case it would be safe to create a symlink.

The solution was insanely simple and I was way over-thinking this. It's fixed now and reflected in my first post.

Offline

#11 2018-06-11 00:08:38

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 4,710

Re: [SOLVED] Anyone had success with Albion Online?

FWIW that's precisely the kind of symlink that you should not be doing. so.7 and so.6.1 are incompatible soname versions. It might look like it works, it might crash horribly down the line. However as this is a symlink for a single application the only thing that might get broken by it should be albion itself, so it's more or less contained that way. The real fix for this would be packaging a sndio6 package that properly provides the older version.

Offline

#12 2018-06-11 01:59:36

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

V1del wrote:

FWIW that's precisely the kind of symlink that you should not be doing. so.7 and so.6.1 are incompatible soname versions. It might look like it works, it might crash horribly down the line. However as this is a symlink for a single application the only thing that might get broken by it should be albion itself, so it's more or less contained that way. The real fix for this would be packaging a sndio6 package that properly provides the older version.

Would converting a .deb package for pacman work? Debian does have the right version available as a .deb and I'd like the simplest way possible. Also, what would be the difference if I got the correct so.6 independently and placed it manually in my system lib dir? I mean besides it not being tracked by pacman or anything, is there a scenario where a future system update could wipe it from the libs for being an orphan in a privileged place? And no, from what I understand (could be wrong) this specific library comes from an older BSD version and the devs at AO decided that's what they wanted for whatever reason. I can't imagine any thing else ever relying on this symlink and if AO ever fails horribly it'd be the first thing I'd look at.

Edit: I just went ahead and converted the Debian package using debtap from the AUR. Made the package, fixed the install path to /usr/lib and presto. Works fine and now pacman knows I want it there.

Last edited by nannerpussy (2018-06-11 02:46:56)

Offline

#13 2018-06-11 06:34:17

hagabaka
Member
Registered: 2010-12-15
Posts: 33

Re: [SOLVED] Anyone had success with Albion Online?

I made the the libsndio.so.6.1 symlink and still have the problem of being stuck at 1%. I tried with the original launcher, the launcher from the tutorial, steam-native, and steam-runtime. I even made a sndio1.2 package based on sndio which contains the proper libsndio.so.6.1, and it still doesn't work.

Just to make sure, was your original problem the same as mine, that is the game shows 1% after the intro video? And the libsndio symlink and the tutorial launcher fixes it? The tutorial launcher tries to preload ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0 , but the subdirectory ubuntu12_32/steam-runtime/amd64 doesn't exist for me. Does it for you?

In case anyone is interested, here's a PKGBUILD for the stable release of sndio which installs libsndio.so.6.1, although it doesn't fix my problem.

Last edited by hagabaka (2018-06-11 06:40:38)

Offline

#14 2018-06-11 06:40:29

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

hagabaka wrote:

I made the the libsndio.so.6.1 symlink and still have the problem of being stuck at 1%. I tried with the original launcher, the launcher from the tutorial, steam-native, and steam-runtime. I even made a sndio1.2 package based on sndio which contains the proper libsndio.so.6.1, and it still doesn't work.

Just to make sure, was your original problem the same as mine, that is the game shows 1% after the intro video? And the libsndio symlink and the tutorial launcher fixes it?

In case anyone is interested, here's a PKGBUILD for the stable release of sndio which installs libsndio.so.6.1, although it doesn't fix my problem.

Yup, the symlink inside the /usr/lib directory pointing to libSDL2-2.0.so.0.  You could also try symlinking the symlink (drop the last .0) That's all I did to fix it. What happens when you cd to the Plugins/x86_64 dir in the game folder and do a ldd on each of the three Plugins there? The ldd of libSDL2 So file should not have any "not found" errors in the report. If that is working, make sure you are using the most current sndio and libSDL2 from our repo, both 32 and 64 bit just in case. Also, when you run the script from the tutorial, what's the terminal output say? If it's a plugin problem it will give you the name and error. Three plugins should be loading and terminal output reflects it.

Last edited by nannerpussy (2018-06-11 06:43:25)

Offline

#15 2018-06-11 06:43:25

hagabaka
Member
Registered: 2010-12-15
Posts: 33

Re: [SOLVED] Anyone had success with Albion Online?

Having libsndio.so.6.1 does fix the "not found" in ldd output.

When I run the tutorial launcher I get lots of

ERROR: ld.so: object '/home/hagabaka/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.

I don't have a directory "amd64" under ~/.local/share/Steam/ubuntu12_32/steam-runtime.

However it does say all 3 plugins are preloaded when I launch the game:

Found path: /home/hagabaka/.local/share/Steam/steamapps/common/Albion Online/game_x64/Albion-Online
Mono path[0] = '/home/hagabaka/.local/share/Steam/steamapps/common/Albion Online/game_x64/Albion-Online_Data/Managed'
Mono path[1] = '/home/hagabaka/.local/share/Steam/steamapps/common/Albion Online/game_x64/Albion-Online_Data/Mono'
Mono config path = '/home/hagabaka/.local/share/Steam/steamapps/common/Albion Online/game_x64/Albion-Online_Data/Mono/etc'
Preloaded 'ScreenSelector.so'
Preloaded 'libAkSoundEngine.so'
Preloaded 'libSDL2-2.0.so.0'
Player data archive not found at `/home/hagabaka/.local/share/Steam/steamapps/common/Albion Online/game_x64/Albion-Online_Data/data.unity3d`, using local filesystem

Then again, it was displaying that before I had a libsndio.so.6.1.

Last edited by hagabaka (2018-06-11 06:45:14)

Offline

#16 2018-06-11 06:46:41

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

hagabaka wrote:

When I run the tutorial launcher I get lots of

ERROR: ld.so: object '/home/hagabaka/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.

I don't have a directory "amd64" under ~/.local/share/Steam/ubuntu12_32/steam-runtime.

However it does say all 3 plugins are preloaded when I launch the game:

Found path: /home/hagabaka/.local/share/Steam/steamapps/common/Albion Online/game_x64/Albion-Online
Mono path[0] = '/home/hagabaka/.local/share/Steam/steamapps/common/Albion Online/game_x64/Albion-Online_Data/Managed'
Mono path[1] = '/home/hagabaka/.local/share/Steam/steamapps/common/Albion Online/game_x64/Albion-Online_Data/Mono'
Mono config path = '/home/hagabaka/.local/share/Steam/steamapps/common/Albion Online/game_x64/Albion-Online_Data/Mono/etc'
Preloaded 'ScreenSelector.so'
Preloaded 'libAkSoundEngine.so'
Preloaded 'libSDL2-2.0.so.0'
Player data archive not found at `/home/hagabaka/.local/share/Steam/steamapps/common/Albion Online/game_x64/Albion-Online_Data/data.unity3d`, using local filesystem

Do you have the 64bit steam client installed? Try installing the Steam Native client from the repo, as it uses native libs over Ubuntu ones. That could be the problem. I have both clients installed. I just doubled checked and I definitely have amd64 directory there.

Edit: Worst case scenario after trying the full Native install is to navigate there, make the dir yourself and place a copy of 2-2.0.so.0 from AO's Plugins dir inside your new Steam dir. But I feel like this is definitely a Steam issue if you are missing that whole dir.

Last edited by nannerpussy (2018-06-11 06:52:12)

Offline

#17 2018-06-11 06:49:44

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

Oh, you know what the difference might be? I did NOT use the Steam install, if that's what you used. I downloaded the AO installer from their site. Make sure you are doing that as well.

Offline

#18 2018-06-11 06:52:43

hagabaka
Member
Registered: 2010-12-15
Posts: 33

Re: [SOLVED] Anyone had success with Albion Online?

I'm using the steam package from repo already. In ~/.local/share/Steam/ I have ubuntu12_32/steam-runtime/i386 and ubuntu12_64 which doesn't have a steam-runtime sub directory...

Offline

#19 2018-06-11 06:57:06

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

hagabaka wrote:

I'm using the steam package from repo already. In ~/.local/share/Steam/ I have ubuntu12_32/steam-runtime/i386 and ubuntu12_64 which doesn't have a steam-runtime sub directory...


Here is a pwd from mine:

 /home/myname/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu 

It's 100% there and full of libs. If you have both Steam Runtime and Steam Native from the repo and are using the manual download and install of AO, I legitimately can't explain the lack of a 64bit directory there. I'm trying to remember if I ever changed anything, but I use Steam literally every day with a huge library and sometimes I run our Arch Native client and sometimes the regular Runtime. Both work, all dir structures work, never ran into this problem with AO.

Offline

#20 2018-06-11 07:00:23

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

Also here's a ls from the amd64 directory for reference:

etc  installed  lib  selinux  usr

All 5 are directories, none are symlinks.

Offline

#21 2018-06-11 07:14:26

hagabaka
Member
Registered: 2010-12-15
Posts: 33

Re: [SOLVED] Anyone had success with Albion Online?

OK, my problem was that I put STEAM_RUNTIME=0 in my ~/.profile back when there wasn't a "steam-native" command, and I used it to make some game work. After removing that Steam unpacked runtime again, and now the game works. Thanks!

Last edited by hagabaka (2018-06-11 07:14:53)

Offline

#22 2018-06-11 07:16:41

nannerpussy
Member
Registered: 2017-02-15
Posts: 87

Re: [SOLVED] Anyone had success with Albion Online?

hagabaka wrote:

OK, my problem was that I put STEAM_RUNTIME=0 in my ~/.profile back when there wasn't a "steam-native" command, and I used it to make some game work. After removing that Steam unpacked runtime again, and now the game works. Thanks!

Oh yup, that'll do it. I had to use that before a couple years ago for something I can't remember now. Thanks for the PKGBUILD too, I was thinking about doing one and got lazy.

Offline

Board footer

Powered by FluxBB