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

Mini Motorways (1127500) #7950

Closed
2 tasks done
theofficialgman opened this issue Jul 30, 2024 · 8 comments
Closed
2 tasks done

Mini Motorways (1127500) #7950

theofficialgman opened this issue Jul 30, 2024 · 8 comments
Labels
Game compatibility - Unofficial Games not expected to work without issues

Comments

@theofficialgman
Copy link

Compatibility Report

  • Name of the game with compatibility issues: Mini Motorways
  • Steam AppID of the game: 1127500

System Information

I confirm:

  • that I haven't found an existing compatibility report for this game.
  • that I have checked whether there are updates for my system available.

steam-1127500.log

Symptoms

Game does not launch

Reproduction

Install game. Try to launch with any proton version.

@kisak-valve kisak-valve added the Game compatibility - Unofficial Games not expected to work without issues label Jul 30, 2024
@kisak-valve
Copy link
Member

Hello @theofficialgman, a header only log tells us that something went awry before the game itself got a chance to start. What filesystem are you using with /media/garrett/HDD/games/pc games? The general recommendation is to use a Linux native filesystem with Proton.

If you completely close Steam, then run steam from a terminal, are there any hints in the terminal spew when you tell Steam to start the game?

@theofficialgman
Copy link
Author

Hello @theofficialgman, a header only log tells us that something went awry before the game itself got a chance to start. What filesystem are you using with /media/garrett/HDD/games/pc games? The general recommendation is to use a Linux native filesystem with Proton.

All Proton installations and Steam Linux runtimes themselves are on an ext4 filesystem. Windows native games are on an exFAT filesystem (since I share this with a Windows 11 install).

If you completely close Steam, then run steam from a terminal, are there any hints in the terminal spew when you tell Steam to start the game?

chdir "/media/garrett/HDD/games/pc games/SteamLibrary/steamapps/common/Mini Motorways"
ERROR: ld.so: object '/home/garrett/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/garrett/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/home/garrett/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/garrett/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/garrett/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
Adding process 4482 for gameID 1127500
Adding process 4483 for gameID 1127500
Adding process 4484 for gameID 1127500
Adding process 4485 for gameID 1127500
x86_64-linux-gnu-capsule-capture-libs: warning: we are assuming "_el_fn_sh_complete" to be private, but it's just a guess
i386-linux-gnu-capsule-capture-libs: warning: we are assuming "_el_fn_sh_complete" to be private, but it's just a guess
pressure-vessel-wrap[4484]: N: Not replacing "/etc/vulkan/explicit_layer.d" with tmpfs: Path "/etc" is reserved by the container framework
pressure-vessel-wrap[4484]: N: Not replacing "/etc/vulkan/implicit_layer.d" with tmpfs: Path "/etc" is reserved by the container framework
Adding process 4600 for gameID 1127500
Proton: Upgrading prefix from None to 9.0-200 (/media/garrett/HDD/games/pc games/SteamLibrary/steamapps/compatdata/1127500/)
Traceback (most recent call last):
  File "/home/garrett/.local/share/Steam/steamapps/common/Proton 9.0 (Beta)/proton", line 1567, in <module>
    g_session.init_session(sys.argv[1] != "runinprefix")
  File "/home/garrett/.local/share/Steam/steamapps/common/Proton 9.0 (Beta)/proton", line 1477, in init_session
    g_compatdata.setup_prefix()
  File "/home/garrett/.local/share/Steam/steamapps/common/Proton 9.0 (Beta)/proton", line 793, in setup_prefix
    self.migrate_user_paths()
  File "/home/garrett/.local/share/Steam/steamapps/common/Proton 9.0 (Beta)/proton", line 771, in migrate_user_paths
    os.symlink(src=link, dst=old)
PermissionError: [Errno 1] Operation not permitted: '../AppData/Local' -> '/media/garrett/HDD/games/pc games/SteamLibrary/steamapps/compatdata/1127500/pfx/drive_c/users/steamuser/Local Settings/Application Data'
Uploaded AppInterfaceStats to Steam
Removing process 4600 for gameID 1127500
Removing process 4485 for gameID 1127500
Removing process 4484 for gameID 1127500
Removing process 4483 for gameID 1127500
Removing process 4482 for gameID 1127500

Moving Mini Motorways to the ext4 does resolve the issue. Is this something that can be resolved in Proton? I was under the impression that as long as Proton itself resided on a linux native filesystem it didn't matter where the games resided as long as they were readable.

@theofficialgman
Copy link
Author

theofficialgman commented Jul 30, 2024

The issue likely stems from this #82 (comment)

For each game using proton, a wineprefix is created in <steam_library>/steamapps/compatdata/< game_id>/pfx/ which also contains those directories in their 'dosdevices' directory.

It would be good if proton could attempt to create the wineprefix for the game within a linux native partition (if the user has multiple steam libraries configured like myself). that would resolve this issue.

@theofficialgman
Copy link
Author

this is configurable I have found with STEAM_COMPAT_DATA_PATH. If I set that to some path on a linux native partition it works even when the game is located on exFAT

It would be very beneficial to have this configurable like the above comment so users do not need to configure a unique path manually on a linux native partition for each game with the variable listed.

@theofficialgman
Copy link
Author

theofficialgman commented Jul 30, 2024

partially related to ValveSoftware/steam-for-linux#6958 (comment)
@kisak-valve I hope that this gets looked into again

@theofficialgman
Copy link
Author

By using the shell debugging I was able to create an environment variable that corresponds to the steam install directory with a unique path per game
https://gitlab.steamos.cloud/steamrt/steam-runtime-tools/-/blob/main/docs/slr-for-game-developers.md#running-in-an-interactive-shell

mkdir -p $STEAM_COMPAT_CLIENT_INSTALL_PATH/steamapps/compatdata/$STEAM_COMPAT_APP_ID; STEAM_COMPAT_DATA_PATH=$STEAM_COMPAT_CLIENT_INSTALL_PATH/steamapps/compatdata/$STEAM_COMPAT_APP_ID %command%

This command includes a fix to automatically create the directory on startup if it does not already exist (since this is a requirement).

@kisak-valve
Copy link
Member

(since I share this with a Windows 11 install)
Sharing a Steam library folder between OSes is not supported and can lead to undefined behavior (noted at https://github.com/ValveSoftware/steam-for-linux/blob/master/RelNotes.md#installation).

the game is located on exFAT
This is the root of your problem. exFAT lacks some filesystem features needed by Proton. This is being tracked at #3835.

@theofficialgman
Copy link
Author

I'll close this as it's unrelated to the game itself.

@theofficialgman theofficialgman closed this as not planned Won't fix, can't repro, duplicate, stale Jul 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Game compatibility - Unofficial Games not expected to work without issues
Projects
None yet
Development

No branches or pull requests

2 participants