Heroine's Quest - The Herald Of Ragnarok - doesn't work at Linux

Started by alexpricker, Sun 19/04/2015 20:02:34

Previous topic - Next topic

alexpricker

I have the probleme with this game play on Linux
Code: ags

AGS: Adventure Game Studio v3.3 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2014 others
ACI version 3.3.3.0

AGS: *** ENGINE STARTUP ***
AGS: Reading config file
AGS: Initializing allegro
AGS: Setting up window
AGS: Initializing game data
AGS: Game data file: /home/chief3/games/Heroines Quest/Heroine's Quest.exe

AGS: Initializing TTF renderer
AGS: Initializing mouse
AGS: Checking memory
AGS: Initializing speech vox
Speech sample file found and initialized.
AGS: Initializing audio vox
Audio vox found and initialized.
AGS: Initializing keyboard
AGS: Install timer
Checking sound inits.
AGS: Initialize sound drivers
AGS: Install exit handler
AGS: Initialize path finder library
AGS: Load game data
AGS: Game data version: 43
AGS: Requested engine version: 3.3.0.1162
AGS: Game GUI version: 116
AGS: Built library path: ./libagsteam.so
AGS: dlopen returned: libsteam_api.so: невозможно оÃ'‚кÃ'â,¬Ã'‹Ã'‚Ã'Å' Ã'â,¬ÃÂ°ÃÂ·ÃÂ´ÃÂµÃÂ»Ã'ÐµÐ¼Ã'‹Ð¹ обÃ'ŠÐµÐºÃ'‚нÃ'‹Ð¹ Ã'„айл: НеÃ'‚ Ã'‚акого Ã'„айла или каÃ'‚алога
AGS: Built library path: /home/chief3/games/Heroines Quest/libagsteam.so
AGS: dlopen returned: libsteam_api.so: AGS: dlopen returned: libsteam_api.so: can not open shared object file: No such file or directory
AGS: Plugin loading failed, trying built-in plugins...
AGS: No built-in plugin found. Plugin loading failed!
AGS: No placeholder functions for the plugin found. The game might fail to load.
Script link failed: Runtime error: unresolved import 'AGSteam::SetAchievementAchieved^1'

I have both library in directory of game:
/home/chief3/games/Heroines Quest/libagsteam.so
/home/chief3/games/Heroines Quest/libsteam_api.so
How I can solve this probleme?

Monsieur OUXX

I can't be sure but my intuition tells me that the culprit is a custom plugin (maybe the Steam plugin? I can read "libagssteam" in the error message) -- AGS is cross-platform but (almost) all custom plugins work only on Windows.

That said, The people behind Herione's Quest are so badass that it's perfectly possible that they took advantage of the latest AGS refinements that make it much more cross-platform.

Conclusion: Go to HQ's download page. Does it say it's compatible with Linux?
 

Crimson Wizard

You need to get Steam plugin stub, the thing that simulates the presence of that plugin.
You can get standard binaries and source code here:
https://bitbucket.org/monkey0506/agsteamstub/

monkey0506

If it's failing to load libsteam_api.so that indicates that you probably copied the wrong shared library for Steam (32-bit/64-bit mismatch) or you don't even have Steam installed.

The stub is a viable option if you aren't using Steam, but I wanted to point out that this game does work with Steam for Linux.

Crimson Wizard

Quote from: alexpricker on Sun 19/04/2015 20:02:34
I have both library in directory of game:
/home/chief3/games/Heroines Quest/libagsteam.so
/home/chief3/games/Heroines Quest/libsteam_api.so

Oops, I missed this part.
Yes, if there are linux plugins already, your do not need stub.

alexpricker

Quote from: monkey_05_06 on Mon 20/04/2015 16:22:07
If it's failing to load libsteam_api.so that indicates that you probably copied the wrong shared library for Steam (32-bit/64-bit mismatch) or you don't even have Steam installed.

The stub is a viable option if you aren't using Steam, but I wanted to point out that this game does work with Steam for Linux.
I am install steam_latest.deb. Where I can find 64bit libsteam_api.so. Or I have rebuild AGS source with 32 bit options?

alexpricker

Quote from: Crimson Wizard on Mon 20/04/2015 16:36:57
Quote from: alexpricker on Sun 19/04/2015 20:02:34
I have both library in directory of game:
/home/chief3/games/Heroines Quest/libagsteam.so
/home/chief3/games/Heroines Quest/libsteam_api.so

Oops, I missed this part.
Yes, if there are linux plugins already, your do not need stub.
How I can stub plugin?

Crimson Wizard

Plugin stub is here: https://bitbucket.org/monkey0506/agsteamstub/overview
Build it from source.
The stub will force game to run, but Steam stuff (achievements) won't work.

alexpricker

What option I have to use for compile each file? And what I should do with compled file?
Can I put this file in folder with game and libstean.so?

Crimson Wizard

Quote from: alexpricker on Thu 23/04/2015 13:22:14
What option I have to use for compile each file? And what I should do with compled file?
Can I put this file in folder with game and libstean.so?
Hmm, I now noticed that the repository does not contain any makefile. :confused:
Should wait for author to make an explanation then...

UPD. Did you try using compiled binaries? https://bitbucket.org/monkey0506/agsteamstub/downloads


UPD2: I googled the "64-bit libsteam_api.so" and found this: http://steamcommunity.com/app/280040/discussions/1/540744934357919937/
May this be related?

alexpricker

I use this binary and after that I create this Topic.
I thank you for trying help me but this post cant solve probleme, I have no idea what game have 64 bit version of libsteam_api.so

Crimson Wizard

Quote from: alexpricker on Thu 23/04/2015 20:13:09
I use this binary and after that I create this Topic.
These binaries I refered in my last post are the ones of the *stub*, not actual plugin. They should not try to load libsteam_api.so; at least I hope they won't.

alexpricker

But with in this game we have trouble. What else I can do for solving probleme? Who can test this game on Linux?

alexpricker

Code: ags

export LD_LIBRARY_PATH=~/.local/share/Steam/SteamApps/common/Demise\ of\ Nations\ -\ Rome/libs/natives/libsteam_api.so
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":. && ags Heroine\'s\ Quest.exe

But now I have another probleme
Code: ags

AGS: Game GUI version: 116
AGS: Built library path: ./libagsteam.so
AGS: dlopen returned: libsteam_api.so: not right ELF: ELFCLASS32
AGS: Built library path: /home/chief3/games/Heroines Quest/libagsteam.so
AGS: dlopen returned: libsteam_api.so: not right ELF: ELFCLASS32
AGS: Plugin loading failed, trying built-in plugins...
AGS: No built-in plugin found. Plugin loading failed!
AGS: No placeholder functions for the plugin found. The game might fail to load.
Script link failed: Runtime error: unresolved import 'AGSteam::SetAchievementAchieved^

Crimson Wizard

Quote from: alexpricker on Thu 23/04/2015 20:34:46
But with in this game we have trouble.
I just want to make this clear, did you try the library from this link?
https://bitbucket.org/monkey0506/agsteamstub/downloads

This not the real steam plugin. It has same name, but it is supposed to work differently and not require libsteam_api.so.
Was it exactly the library you tried first?
I just want to be sure we talk of same thing.

monkey0506

The agsteamstub source can be compiled with gcc. I don't have a makefile because I just used Code::Blocks. It should be built as "libagsteam.so". I recall using "-fPIC" and of course "-m32" for the 32-bit variant. I set the rpath of the full plugin, but I don't think I did that for the stub. I will confirm any other settings later, when I have it in front of me.

The stub does not in any way reference libsteam_api.so or the Steamworks API, so any errors of that sort mean you definitely still have the full plugin, not the stub.

alexpricker

I use only your library from BitBucket and have this
Code: ags

AGS: Install exit handler
AGS: Initialize path finder library
AGS: Load game data
AGS: Game data version: 43
AGS: Requested engine version: 3.3.0.1162
AGS: Game GUI version: 116
AGS: Built library path: ./libagsteam.so
AGS: dlopen returned: libsteam_api.so: can not open shared object file: No such file or directory
AGS: Built library path: /home/chief3/games/Heroines Quest/libagsteam.so
AGS: dlopen returned: libsteam_api.so: нcan not open shared object file: No such file or directory
AGS: Plugin loading failed, trying built-in plugins...
AGS: No built-in plugin found. Plugin loading failed!
AGS: No placeholder functions for the plugin found. The game might fail to load.
Script link failed: Runtime error: unresolved import 'AGSteam::SetAchievementAchieved^1'

I dont have any library namen libagssteam.so on PC.

Monsieur OUXX

This is why I never ever use Linux. "Oh you want to run this game? Ever heard of the -m32 compiling switch?" ;)(roll)
 

alexpricker


monkey0506

Hmm... Actually, I just recalled that I hosted the full plugin on the "Downloads" page of the stub, because my other host deleted my account. That's probably confusing... I was just looking for somewhere to host the full plugin.

In any case, have you tried building the stub from source? Or, you know, since you have Steam installed, just downloading/launching the game from the Steam client?

SMF spam blocked by CleanTalk