-
-
Notifications
You must be signed in to change notification settings - Fork 232
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Half-Life (Steam) #55
Comments
try analyze dependencies with ldd and minimize it before running it under box86, half-life does not have too much direct dependencies. maybe need rebuild some depended libraries in minimal configuration or try versions from steam runtime |
I would like to ask, if there is anything new about running Half-Life on Box86. I would like to start Half-Life Dedicated Server and try to connect to it from other devices. It would be really great if that was possible, to install SteamCMD, download HL, HLDS and launch it. If this is possible, could someone please tell me, how to do it? I am completely new to Raspberry Pi4. I tried to install SteamCMD in other emulator, but did not have any luck with it. And I see, that this project is active. |
I have started experimenting with the full steam client now. I too had very little success with SteamCMD, especialy since to switch to python. |
Okay, so... I actually WAS able to launch SteamCMD and install HLDS. I also WAS able to launch HLDS! :) Here are some things I've noticed
With this problem, I still could see my HLDS Pi4 server on PC, but when I tried to connect, the server crashed with segmentation fault. I was able to fix this by creating folder sdk32 in folder .steam and linking that file with ln command. After that, I relaunched my server. When I tried to connect after this fix, I was successfully on the server. I could play there as on any regular server! :) After I disconnected and tried to shut down server, I got segmentation fault again, but... well, I was meaning to shut it down anyway so... same effect... :D
Here is my console log from running server:
As you can see in this log, it can not find some symbol _ZSt11__once_call. Any ideas, what it is please? Maybe some missing or outdated library? It is also missing file steamservice.so for some reason. This is something I've actually didn't notice yesterday, so either I didn't notice it or it appeared just today. Segmentation fault at the end... :( But still, was able to connect, was able to play! :)
As for my next steps, I am going to try AMX Mod X and some simple plugins as Sank sounds and so on. If it works (or even if it won't :D ) I will let you know! :) Again, great job on this project! A huge respect to all of you! :) EDIT!
It started to launch normally (just that _Symbol ZSt11__once_call not found error). But then, I got this:
Sometimes at the end I also get error like this: Any ideas, what could go wrong please? Using: EDIT 2!
No Segmentation fault so far, BUT I still keep getting this Warning, ignoring unsupported Int 3 call and after that Unsupported Int 8Ah error (the number changes after every restart). It keeps restarting itself every 10 seconds thanks to HLDS feature. |
After new commit (with Int3 calls) I was hoping, that it would fix this issue. Still no luck and now it gives me Segmentation fault even if I run it with |
metamod-p rewrites dlsym, so it will not work. You need original metamod which uses big linkent table. I do not know if it work with dproto |
I tried
I also tried So the best success so far was with |
Try build metamod-hl1 with modern compiler, gcc-2.95 version does not seems to work with box86 |
My friend compiled it for me, because I don't have x86 linux installed. He compiled Metamod AM launch console log ended with this:
Metamod P launch console log ended with this:
In both logs, again this error appeared in beginning part: So, still no luck so far :( |
libstdc++ is forgotten in metamod makefile. It may be fixed by LD_PRELOAD |
try BOX86_LD_PRELOAD=(path to x86 libstdc++) |
Tried it,, but nothing changed. Not even in startup console log. When i chose different version of library (for example the one from box86), this was still in log:
|
I was wondering, is it supposed to write something after that |
I tried to run the server the simmilar way as in Issue #115, with command:
This time, the end of console log looked like this:
I tried what was mentioned in the HL2DM issue and tried to print last 20 ARM instructions.
I have no idea what those lines mean, but maybe you can figure something out of these. |
It's a segfault (SIGSEGV), not a bus error (SIGBUS), so not the same kind of error. Here the last 20 ARM instruction are less usefull, and it would e better to have gdb backtrace (so just "bt" when there is the segfault). |
Nope, just this one:
Sometimes after that Unsupported Int 3 call it did write this: |
HalfLife was working fine at some point on steam, but it's broken again, I have to debug what is happening (some libcef madness again, probably) |
Are there those who had/have the same problem as the author of this issue? I hope there are others like me with Oracle VM.Standard.A1.Flex Free tier VM. |
Note 1: This test was run on Ubuntu 19.04 with box86 built in a 32 bit chroot, and multilib enabled on the host system
Note 2: before testing Steam games, set your status to Offline/Invisible to save your friends messaging you asking why you started one game 20+ times...
This seems to require a lot of dependencies:
libopenal1:i386 libfontconfig1:i386 libgtk2.0-0:i386 libnss3:i386 and libpng12 from https://packages.ubuntu.com/xenial-updates/libpng12-0
Also, symlink libgcrypt.so.20 to libgcrypt.so.11.
Then, a lot of missing symbols, followed by a crash. I wonder how much of this is Steam related, and if I could get a non-Steam version of the game it'd run...
log.txt
The text was updated successfully, but these errors were encountered: