Skip to content
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

Kerbal Space Program #139

Open
Botspot opened this issue Dec 17, 2020 · 60 comments
Open

Kerbal Space Program #139

Botspot opened this issue Dec 17, 2020 · 60 comments

Comments

@Botspot
Copy link
Owner

Botspot commented Dec 17, 2020

@mobilegmyt says it runs fairly well on the Pi with the help of Box86.

I haven't tried it yet, but this issue keeps it from falling off the to-do list.

@NoozAbooz
Copy link
Contributor

The only problem is we have to verify the user owns the game.

@Botspot
Copy link
Owner Author

Botspot commented Dec 17, 2020

I was thinking we could have the user download the game from Steam first.

@Itai-Nelken
Copy link
Contributor

I tried the game on both Ubuntu 20.10 and TwisterOS, the farthest I got is the loading screen on Ubuntu, on Twister it opens a black window and crashes without any errors.
also the latest version that has 32bit x86 support is 1.4.5 (latest version is 1.11).

@Itai-Nelken
Copy link
Contributor

Itai-Nelken commented Dec 17, 2020

I was thinking we could have the user download the game from Steam first.

I own the game not from steam, so maybe each user Downloads the game files from where he owns the game, and only has to point pi-apps to where it is.

@NoozAbooz
Copy link
Contributor

NoozAbooz commented Dec 17, 2020 via email

@Itai-Nelken
Copy link
Contributor

Ah, you need to open the install files and run KSP.x86 instead of the sh Itai Nelken

Thats what I ran, anyway will try again on a clean install.

@NoozAbooz
Copy link
Contributor

You might also want to try installing it from GOG games instead of steam.

@Itai-Nelken
Copy link
Contributor

You might also want to try installing it from GOG games instead of steam.

I never tried steam, I don't even have a steam account, I bought the game straight from the website.

@Itai-Nelken
Copy link
Contributor

I fixed KSP not starting for me by downgrading to mesa 20.2

@Itai-Nelken
Copy link
Contributor

takes over 30minutes to load, and seems to hang a lot of times.

@NoozAbooz
Copy link
Contributor

30 minutes to load? Only about 1 min or 2 for me.

@Itai-Nelken
Copy link
Contributor

and crashes when creating a new game.
now it doesn't even start.
@mobilegmyt what version are you using?

@Botspot
Copy link
Owner Author

Botspot commented Dec 21, 2020

I fixed KSP not starting for me by downgrading to mesa 20.2

@Itai-Nelken Before you downgraded, did you see an error similar to this?

pi@raspberrypi:~ $ "/home/pi/GOG Games/Kerbal Space Program/start.sh" "--launcher"
Running Kerbal Space Program
Box86 with Dynarec v0.1.9 96f944c8 built on Dec 21 2020 00:03:56
Set current directory to /home/pi/GOG Games/Kerbal Space Program/game
Found path: /home/pi/GOG Games/Kerbal Space Program/game/Launcher.x86
Error: Global Symbol data_start not found, cannot apply R_386_GLOB_DAT @0xb528ebbc ((nil)) in /home/pi/GOG Games/Kerbal Space Program/game/Launcher_Data/Mono/x86/libmono.so
Error: Global Symbol __data_start not found, cannot apply R_386_GLOB_DAT @0xb528ed48 ((nil)) in /home/pi/GOG Games/Kerbal Space Program/game/Launcher_Data/Mono/x86/libmono.so
Mono path[0] = '/home/pi/GOG Games/Kerbal Space Program/game/Launcher_Data/Managed'
Mono path[1] = '/home/pi/GOG Games/Kerbal Space Program/game/Launcher_Data/Mono'
Mono config path = '/home/pi/GOG Games/Kerbal Space Program/game/Launcher_Data/Mono/etc'
displaymanager : xrandr version warning. 1.5
client has 1 screens
displaymanager screen (0)(HDMI-1): 1920 x 1080
Using libudev for joystick management


Importing game controller configs
support/gog_com.shlib: line 94: 22768 Aborted                 ./"${bin_32}"
pi@raspberrypi:~ $

For me, using the GOG games installer, a black window pops up for a moment, then disappears.

@Itai-Nelken
Copy link
Contributor

Itai-Nelken commented Dec 22, 2020

I fixed KSP not starting for me by downgrading to mesa 20.2

@Itai-Nelken Before you downgraded, did you see an error similar to this?

pi@raspberrypi:~ $ "/home/pi/GOG Games/Kerbal Space Program/start.sh" "--launcher"
Running Kerbal Space Program
Box86 with Dynarec v0.1.9 96f944c8 built on Dec 21 2020 00:03:56
Set current directory to /home/pi/GOG Games/Kerbal Space Program/game
Found path: /home/pi/GOG Games/Kerbal Space Program/game/Launcher.x86
Error: Global Symbol data_start not found, cannot apply R_386_GLOB_DAT @0xb528ebbc ((nil)) in /home/pi/GOG Games/Kerbal Space Program/game/Launcher_Data/Mono/x86/libmono.so
Error: Global Symbol __data_start not found, cannot apply R_386_GLOB_DAT @0xb528ed48 ((nil)) in /home/pi/GOG Games/Kerbal Space Program/game/Launcher_Data/Mono/x86/libmono.so
Mono path[0] = '/home/pi/GOG Games/Kerbal Space Program/game/Launcher_Data/Managed'
Mono path[1] = '/home/pi/GOG Games/Kerbal Space Program/game/Launcher_Data/Mono'
Mono config path = '/home/pi/GOG Games/Kerbal Space Program/game/Launcher_Data/Mono/etc'
displaymanager : xrandr version warning. 1.5
client has 1 screens
displaymanager screen (0)(HDMI-1): 1920 x 1080
Using libudev for joystick management


Importing game controller configs
support/gog_com.shlib: line 94: 22768 Aborted                 ./"${bin_32}"
pi@raspberrypi:~ $

For me, using the GOG games installer, a black window pops up for a moment, then disappears.

@Botspot I don't own the GOG version, I bought it straight from the kerbalspaceprogram.com, so I didn't have the GOG stuff.
It said the box86 stuff, Importing game controller configs, and then aborting.
And a black window opens, then closes when it says aborting

@Itai-Nelken
Copy link
Contributor

@Botspot KSP isn't free and has no demo version as far as I know, just wanted to point that out because in #185 you wrote that only free apps or apps with a free demo can be on pi-apps

@Botspot
Copy link
Owner Author

Botspot commented Jan 3, 2021

@Botspot KSP isn't free and has no demo version as far as I know, just wanted to point that out because in #185 you wrote that only free apps or apps with a free demo can be on pi-apps

Technically there is a demo version. But that's off-point. You are correct: MC Java and MC Bedrock will require an indirect monetary payment in order to play.

I feel that despite their cost, both of the above, and KSP, would fit well in Pi-Apps. I will clarify this in #185. Thanks for bringing this up, @Itai-Nelken.

@Itai-Nelken
Copy link
Contributor

this might help: ptitSeb/box86#273 (comment)

@Itai-Nelken
Copy link
Contributor

@Botspot
I got pretty far with the schroot method, see this ptitSeb/box86#308.
I got as far as to install all dependencies for meson to not abort, but now ninja build fails.
here is the file where I am writing everything I'm doing: ksp-rpi.txt

@Pythonic456
Copy link

Pythonic456 commented Feb 1, 2021

You definitely can get it to work.
Except for the fact that the terrian is at 100M, making it (possibly) unplayable. But I am working on it.

@Itai-Nelken
Copy link
Contributor

You definitely can get it to work.
Except for the fact that the terrian is at 100M, making it (possibly) unplayable. But I am working on it.

the terrain is ok for me, I got to orbit and back.
I was using mesa 20.2, stock clock speeds on TwisterOS.

@Botspot
Copy link
Owner Author

Botspot commented Feb 1, 2021

On Mesa 20.2, there was no terrain for me, but at 100m my rockets kept exploding. (So probaby an invisible ground layer or something like that)

I just moved the rocket to the top of the VAB and gave it some attachment towers. That way it started above the 100m zone. XD

@Pythonic456
Copy link

@Botspot How do you move it to the top of the VAB?

@Botspot
Copy link
Owner Author

Botspot commented Feb 1, 2021

@Botspot How do you move it to the top of the VAB?

  • Grab the center-piece of the rocket, then press-n-hold Page Up to ascend until you reach the ceiling of the VAB.
  • Then attach some launch towers to the rocket.
  • Then, on the right side, arrange your action groups so that on stage 1, pressing Space will release the launch towers, and start your engines simultaneously.
  • Launch.

Hope that helps.

@ghost
Copy link

ghost commented Mar 11, 2021

Ain't this game very heavy?

@Itai-Nelken
Copy link
Contributor

@Dell-Glitch it's not really heavy, but because the only version that runs with box86 is very old (1.2.2) it's lighter than the newest version (1.11 I think) and it runs at ok speeds on the pi4 4gb no overclock.

@ghost
Copy link

ghost commented Mar 11, 2021

@Itai-Nelken I was thinking it was heavy because my xbox one lags sometimes on ksp but it's prob a preformace issue

@Pythonic456
Copy link

@Dell-Glitch You could try lowering the graphics settings... if you haven't already.
:)

@ghost
Copy link

ghost commented Mar 12, 2021

@Pythonic456 it's when i turn off my engines in space is where i lag but when i turn them on the lag stops

@Botspot
Copy link
Owner Author

Botspot commented Mar 13, 2021

BTW, if it's planned for pi-apps to install a demo version like doom, this might help: https://forum.kerbalspaceprogram.com/index.php?/topic/183849-how-do-i-download-the-demo/&do=findComment&comment=3586448

Interesting. I'll give it a try.

@ghost
Copy link

ghost commented Mar 15, 2021

BTW, if it's planned for pi-apps to install a demo version like doom, this might help: https://forum.kerbalspaceprogram.com/index.php?/topic/183849-how-do-i-download-the-demo/&do=findComment&comment=3586448

Interesting. I'll give it a try.

Did it work?

@Botspot
Copy link
Owner Author

Botspot commented Mar 15, 2021

Did it work?

Nope, I couldn't even get Steam to launch.

pi@raspberrypi:~ $ /usr/bin/steam
Running Steam on raspbian 10 32-bit
STEAM_RUNTIME is enabled by the user
Pins up-to-date!
/home/pi/.local/share/Steam/steam.sh: line 403: /home/pi/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/bin/steam-runtime-check-requirements: cannot execute binary file: Exec format error
steam-runtime-check-requirements failed with an unexpected nonzero exit status. Trying to continue
/home/pi/.local/share/Steam/ubuntu12_32/steam
/home/pi/.local/share/Steam/steam.sh: line 749: /home/pi/.local/share/Steam/ubuntu12_32/steam: cannot execute binary file: Exec format error

@Botspot
Copy link
Owner Author

Botspot commented Mar 17, 2021

BTW, if it's planned for pi-apps to install a demo version like doom, this might help: https://forum.kerbalspaceprogram.com/index.php?/topic/183849-how-do-i-download-the-demo/&do=findComment&comment=3586448

Interesting. I'll give it a try.

Did it work?

Nope. @vedforeal tried his best. No luck. Squad seems to have completely removed the demos from everywhere. There are a few Windows KSP demo downloads, but we need the Linux ones. So far I haven't found any downloads for those.

@ghost
Copy link

ghost commented Mar 17, 2021 via email

@Botspot
Copy link
Owner Author

Botspot commented Mar 17, 2021

We can use wine x86 but that doesn't support 64bit

I'd be surprised if Wine could even run KSP. Complicated things usually don't work. :(

@ghost
Copy link

ghost commented Mar 17, 2021 via email

@Botspot
Copy link
Owner Author

Botspot commented Mar 17, 2021

qemu?

We'd already have to use an emulator to get the Linux version running. (the box86 emulator which is faster)
QEMU would just be slower, and would still need the Linux version of KSP as well.

@ghost
Copy link

ghost commented Mar 17, 2021

qemu?

We'd already have to use an emulator to get the Linux version running. (the box86 emulator which is faster)
QEMU would just be slower, and would still need the Linux version of KSP as well.

ok

@Painadath
Copy link
Contributor

Does it added yet

@NoozAbooz
Copy link
Contributor

@Botspot In that case, we should just make it use user-provided game files.

@VolkerSchlegel
Copy link

I saw the issue on the box86 repo, have those issues been resolved?
Is it playable(if you wouldn't crash at 100m) on a pi 4(8GB RAM)?
I'm really impressed that the pi can even run it :D

@NoozAbooz
Copy link
Contributor

I saw the issue on the box86 repo, have those issues been resolved?
Is it playable(if you wouldn't crash at 100m) on a pi 4(8GB RAM)?
I'm really impressed that the pi can even run it :D

Not playable but it runs fine for a modern game on a pi

https://www.youtube.com/watch?v=0YqOAY-WZ14&

@ghost
Copy link

ghost commented May 23, 2021

I like that

@VolkerSchlegel
Copy link

Ok, what about the issue where it crashes into terrain at 100m?

@ghost
Copy link

ghost commented May 25, 2021

Ok, what about the issue where it crashes into terrain at 100m?

100m/s or 100m in height?

@Pythonic456
Copy link

It's 100m in height. I had this issue too, but open the debug menu (Alt-F12 I think), and set your elevation to 100m.

@VolkerSchlegel
Copy link

ah, ok thanks 👍

@Pythonic456
Copy link

👍

@virat2010
Copy link

wow, insteresting

@Br0wnie007
Copy link

Has Anyone tried using The 64bit version of the game With Box64

@Pythonic456
Copy link

Pythonic456 commented Dec 3, 2022

Funny enough just yesterday I was having a go at getting that working. I was getting close, I will see if I can actually get it working today. As expected the performance is worse compared to using old versions (like 1.2.2 is the last x86 version if I recall correctly).

Edit: Forgot to mention that the latest version of KSP uses OpenGL 3.2, which at least by default the Pi 4 does not have support for. I have looked into somehow getting a newer version working but for now I am testing different versions of KSP to find the latest one the Pi 4 can run. Will update this comment once found.

@Itai-Nelken
Copy link
Contributor

The latest version of KSP does run with box64, unfortunately, as @Pythonic456 mentioned, it requires opengl 3.2+ which as far as I know the pi4 gpu doesn't support. Anyway, from the performance on an rk3399 device, I don't think it will be playable on the pi 4.

@Pythonic456
Copy link

Pythonic456 commented Dec 3, 2022

I tested three different versions with about the same gap between.
In practice the screen recording does not make any difference to the FPS of KSP.

1.0.5: Runs ok, runs at 5-15 fps, takes ~10 min to load menu screen, renders on GPU, playable if you're willing to put up with the low FPS and limited part selection (Edit: "limited part selection", expansions prevent the game from loading).

ksp1.0.5.mp4

For these following two versions I used LIBGL_ALWAYS_SOFTWARE=true to render in software rather than the GPU as they require OpenGL 3.2+.

1.5.1: Runs terribly, takes ~20 min to load menu screen, only playable if you enjoy imposing mental pain on yourself.

_ksp1.5.1.mp4

1.12.4: Snail in treacle, used ~9GB of RAM (i am glad i had ZRAM installed) and takes ~2 hours to load the menu screen.

ksp1.12.4.mp4

There is the possibility of wrapping OpenGL (this stackexchange post),
but this probably wouldn't improve performance much and might not run at all due to empty wraps.

All of these tests were on a Pi 4 4GB with no overclock. Overclocking might potentially help a bit
with software GL. This is a relatively heavy game as it is and the Pi is underpowered. I wonder if
Squad or the KSP devs would be willing to provide source code from before the game was released,
for possibility of compiling and optimising for arm.

@Botspot
Copy link
Owner Author

Botspot commented Dec 9, 2022

There used to be a free KSP test game - that cost no money to buy. That in combination with the upcoming release of KSP2, and we may just be able to convince the devs to release the source code for the free version.

@Pythonic456
Copy link

Maybe some kind of petition would be in order. Not sure on how we'd do that (YouTube/ThePetitionSite), but it might be enough to persuade them along with what you mentioned.

@Pythonic456
Copy link

https://youtube.com/watch?v=ngLEwJTOROs I made a quick how to if anyone finds this thread and doesn't know how to run KSP on a Pi.

@everypizza1
Copy link
Contributor

You definitely can get it to work. Except for the fact that the terrian is at 100M, making it (possibly) unplayable. But I am working on it.

Only 100M and you think that's a lot? Genshin is 119GB.

@Pythonic456
Copy link

@everypizza1 100M meaning the terrain is at 100 meters in height, whereas it should be grounded at 0 meters.
Also, that's an interesting idea... Genshin on a Pi... hmm...

@everypizza1
Copy link
Contributor

everypizza1 commented Jul 22, 2023 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

10 participants