LINUX.ORG.RU
решено ФорумGames

Не запускаются игры на Mono

 , , , ,


0

1

Периодически не запускаются следующие игры из стима: Robocraft, Unturned, Rust. Т.е. однажды они все-таки запускались, но какой-то систематики выявить не удалось, кроме разве того, что если одна из них не запускается, то и остальные не запускаются тоже. Все их объединяет то, что они используют для работы собственную поставку Mono (судя по всему идентичную у всех).

При попытке запуска у каждой из игр крашится процесс (выхлоп у всех тоже идентичный):

$ ./Unturned.x86_64 
Set current directory to /home/radius/.local/share/Steam/SteamApps/common/Unturned
Found path: /home/radius/.local/share/Steam/SteamApps/common/Unturned/Unturned.x86_64
Mono path[0] = '/home/radius/.local/share/Steam/SteamApps/common/Unturned/Unturned_Data/Managed'
Mono path[1] = '/home/radius/.local/share/Steam/SteamApps/common/Unturned/Unturned_Data/Mono'
Mono config path = '/home/radius/.local/share/Steam/SteamApps/common/Unturned/Unturned_Data/Mono/etc'
displaymanager : xrandr version warning. 1.5
client has 4 screens
displaymanager screen (0)(DP-1): 1920 x 1200
Using libudev for joystick management


Importing game controller configs
/dev/input/js0: driver version: 2.1.0 (20100)
/dev/input/js0: fd 4, buttons 11, axes 8, name Xbox Gamepad (userspace driver)
/dev/input/js0: axis  0: raw      0, mapped 0.000000
/dev/input/js0: axis  1: raw      0, mapped 0.000000
/dev/input/js0: axis  2: raw      0, mapped 0.000000
/dev/input/js0: axis  3: raw      0, mapped 0.000000
/dev/input/js0: axis  4: raw -32767, mapped 0.000000
/dev/input/js0: axis  5: raw -32767, mapped 0.000000
/dev/input/js0: axis  6: raw      0, mapped 0.000000
/dev/input/js0: axis  7: raw      0, mapped 0.000000
Assigning joystick 1
/dev/input/js1: driver version: 2.1.0 (20100)
/dev/input/js1: fd 5, buttons 11, axes 8, name Xbox Gamepad (userspace driver) #2
/dev/input/js1: axis  0: raw      0, mapped 0.000000
/dev/input/js1: axis  1: raw      0, mapped 0.000000
/dev/input/js1: axis  2: raw      0, mapped 0.000000
/dev/input/js1: axis  3: raw      0, mapped 0.000000
/dev/input/js1: axis  4: raw -32767, mapped 0.000000
/dev/input/js1: axis  5: raw -32767, mapped 0.000000
/dev/input/js1: axis  6: raw      0, mapped 0.000000
/dev/input/js1: axis  7: raw      0, mapped 0.000000
Assigning joystick 2
Аварийный останов (core dumped)

В системном логе следующее:

янв 06 14:40:12 desktop systemd-coredump[10327]: Process 10288 (Unturned.x86_64) of user 1000 dumped core.
                                                    
                                                    Stack trace of thread 10288:
                                                    #0  0x00007f474ba8b5f8 raise (libc.so.6)
                                                    #1  0x00007f474ba8ca7a abort (libc.so.6)
                                                    #2  0x00007f4748825976 n/a (libmono.so)
                                                    #3  0x00007f47487c88e4 n/a (libmono.so)
                                                    #4  0x00007f474d336d60 __restore_rt (libpthread.so.0)
                                                    #5  0x0000000000b4acfa n/a (Unturned.x86_64)
                                                    #6  0x0000000000b05bd2 n/a (Unturned.x86_64)
                                                    #7  0x0000000000b07352 n/a (Unturned.x86_64)
                                                    #8  0x0000000000b07717 n/a (Unturned.x86_64)
                                                    #9  0x00000000007f635f n/a (Unturned.x86_64)
                                                    #10 0x00000000007f9294 n/a (Unturned.x86_64)
                                                    #11 0x00000000007fdf20 n/a (Unturned.x86_64)
                                                    #12 0x00000000007fe00b n/a (Unturned.x86_64)
                                                    #13 0x00000000008f3a18 n/a (Unturned.x86_64)
                                                    #14 0x00000000418b1408 n/a (n/a)

Причем все они вылетают не сразу, а на каком-то этапе загрузки. А Rust вылетает только после нажатия кнопки запуска в лаунчере. И нет, отключение геймпада никак не влияет. Запускать пробовал с разными оконными менеджерами и без них вообще (в отдельных иксах) - тоже никак не влияет.

Мысль такая, что моно из поставки игры не дружит с какими-то системными библиотеками. Но где хоть логи нормальные найти? Или как подсунуть игре свой моно? Система кстати Linux desktop 4.3.3-2-ARCH #1 SMP PREEMPT Wed Dec 23 20:09:18 CET 2015 x86_64 GNU/Linux, видеодрайвер nvidia 358.16-3

★★★★

А bastion из стима работает? А то у меня только нодрм из бандла работала, тоже что-то с моно.

wakuwaku ★★★★
()
Ответ на: комментарий от wakuwaku

Да, бастион работает. Также как и Rogue Legacy. У них видимо другие версии моно.

Radius ★★★★
() автор топика

Пф... Вчерась ставил малому второй бордель под офтопег (по ссылке узнал много интересного), т.к. первый он в ператке прошел — выяснилось, што... Периодически оно по неизвестным причинам не запускается даже после полной переустановки из-за «не сошедшегося кэша»... А потом после перезагрузки - внезапно запускается без танцев с бубном вообще. Можыт дело не в бобинемоно — а в том как стим накатывает-перенакатывает :)

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 1)
Ответ на: комментарий от exception13

Не помогло. И стим и игру отдельно пробовал запускать.

Radius ★★★★
() автор топика
Ответ на: комментарий от Reedych

ругается примерно так:

Found path: /home/radius/.local/share/Steam/SteamApps/common/Rust/rust
Unable to load mono library from /home/radius/.local/share/Steam/SteamApps/common/Rust/rust_Data/Mono (x86_64)
Failed to load mono

я пытался найти какие-то конфиги, в которых можно изменить путь к моно, но такое ощущение что там все захардкожено. Остается еще вариант с подменой либ, но там черт ногу сломит...

Radius ★★★★
() автор топика

По какой-то причине эти козлы не хотят выложить свой Bastion (Linux) на GOG, хотя Transistor под Linux есть.

anonymous
()
Ответ на: комментарий от Radius

Это у тебя игра от похмелья так, подожди его пока отрезвеет

Reedych ★☆
()

Проблема почти решилась! Виноват оказался все-таки геймпад. Точнее даже не сам геймпад, а драйвер геймпада xboxdrv (поэтому видимо передергивание самого геймпада никак не влияло). Заменил на ядреный xpad (который пилят вольвовцы) и все заработало... кроме rust. Странно что он до этого аж 1 раз умудрился нормально запуститься. Я уже наслышан конечно про это творение говнокодерской мысли, а теперь столкнулся с ним на практике. Есть предложения? Или лучше вернуть деньги и не сношать себе мозг?

Radius ★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.