vpiotr
2019-03-10 11:32

Wczoraj udało mi się uruchomić Quake Champions na Linux Mint. Okazuje się że Steam ma jakąś warstwę emulacji - Proton, która umożliwia granie nawet w najnowsze gry z Windows (QC jeszcze chyba jest w fazie beta za free). Wydajność tego nie jest powalająca (na low i 2070 ledwo da się grać), ale może da radę przynajmniej grać w strategie. Co ciekawe poza wydajnością nie stwierdziłem innych problemów - dzwięk, filmy, gui - wszystko działa bez problemu w trybie high, inaczej niż z Wine, w którym każda z gier coś miała nie tak, nawet w HoMM III gdzie kursor po prostu wyłaził za ekran.

Rozszerza to znacząco liczbę tytułów które można próbować zagrać (autorzy gry mogą nawet nie mieć pojęcia że ich gra działa na Linux, chociaż są wyjątki - np. gry stosujące anty-cheaty potrafią odmówić współpracy ze względu na nierozpoznane środowisko).

Spine

HoMMM III miał wersję natywną dla Linuksa - no ale nie wiem, czy to w ogóle zadziała po tych wszystkich latach. Tam w Linuksach, szybko się binarnie wszystko zmienia (zależności...).

Pod Wine dobrze działało, ale trzeba dobrać odpowiednią wersję (PlayOnLinux pomaga w instalacji różnych wersji Wine) i odpowiednio go skonfigurować (winecfg - i możesz ustawić capture myszki + wirtualny pulpit dla Heroes 3, screenshot na dole). Bezproblemowo przeszedłem całego Red Alert 2 na Wine chociaż w bazie danych Wine gra otrzymała co najwyżej srebro ( https://appdb.winehq.org/obje[...]Class=application&iId=167 ).

winecfg

Heroes 3 jest o tyle wdzięczną grą, że można sobie też postawić VirtualBox z Windowsem XP i będzie zasuwało aż miło ;) I nie trzeba tego jakoś specjalnie konfigurować, wszystko można łatwo wyklikać.

revcorey

Z protonem jest lepiej o tyle że jest jedna firma co ma zasoby na testy i sobie portuje z nowego wine różne rzeczy kiedy chce. ale nie zawse jest miło np. na nieco starszej wersji protona original sin 2 chodził, później przestał. Rome 2 działa aż miło. Miąłem do Heros 7 za free Heros III hd też ładnie przez protona chodzi. Tu jest lista https://www.protondb.com/ czasami jak np. w przypadku original sin 2 podają jakich trzeba haków użyć. A i ważne twórcy gier widzą czy uruchamiasz ich gre na linuksie przez protona.

axelbest

Linux raczej nigdy nie będzie platforma do grania. Zawsze denerwują mnie te zależności, konfiguracje, przełączniki, kompilatory, sterowniki i setki innych problemów, których w Windowsach nie uswiadczam. Prosty przykład - na Ubuntu (bionic beaver czy jakoś tak) system blokuje ekran przy bezczynności - bezczynność polega na oglądaniu netflixa w chromie. W ustawieniach zmiany nic nie pomagają, nawet zainstalowałem jakieś Caffeine czy coś podobnego i też nic. Kolejna sprawa kursor w systemie ma inną wielkość niż w przeglądarce - no super... Zwłaszcza gdy to komputer rodziców, którzy chcą mieć większy kursor. Jeden system, różne wersje GUI i jak masz problem to znalezienie rozwiązania to sieczka, bo tu jest apt-get, tam yum, a innej wersji jeszcze coś innego. Setki dziwacznych repo, co wymagają drugie tyle równie dziwacznych zależności. Linux przypomina mi kiepski projekt w js'ie, gdzie by zainstalować jedna wtyczkę 2kb, do folderu node_modules trafia 250mb zależności. Instalując coś apt-getem też nigdy nie wiem dlaczego takie zależności muszą być zainstalowane (na plus jest tylko komunikat , że jak zależności maja duży rozmiar to jesteśmy pytani o zgodę)

Ogólnie Ubuntu to dla mnie porażka, moim zdaniem nadaje się jako system co najwyżej dla cebulakow, nie grających lub dla seniorów. Mówię tu o normalnym użytkowaniu, a nie typowym dev-use-case.

Spine

Jak dla mnie do odtwarzania filmów na Linuksie nadają się 2 apki: VLC, SMplayer. Dobrze blokują wygaszanie ekranu.

Zależności w Linuksie na dobrą sprawę zmniejszają ogólną objętość wszystkich aplikacji na dysku. Wszystkie pakiety w repozytorium korzystają ze współdzielonych bibliotek, więc jest duża szansa, że jedne zależoności są wykorzystywane przez więcej niż jedną aplikację. Na Windowsa mamy samodzielne kobyły ważące po kilka GB. A Ciebie przerażają kilkuset GB-towe zależności...

Zgoda, do nowych gier Linuks się średnio nadaje. Ale jest dużo możliwości jeśli chodzi o emulację starszych konsol ;) Jest np. OpenEmu. Albo EmulationStation.

vpiotr

Przetestowałem jeszcze kilka gierek win-only: Doom2 (działa), C&C 3 TW (działa na medium), Battlerite Royale (działa z domyślnymi ustawieniami). Quake 2 o dziwo nie działa domyślnie (po uruchomieniu od razu się zamyka). Ta opcja w Steam jest o tyle ciekawa, że nie wymaga ode mnie żadnego ściągania skryptów czy dodatkowych konfiguracji. Po prostu instaluję gierkę tak jak pod Windows. W odróżnieniu od Wine nawet nie muszę się zastanawiać co to jest "C:\Program files\Moja giera" na moim linuchu.

revcorey

@vpiotr: niezupełnie jeśli chcesz np. uruchomić original sin 2 to po instalacji z steam musisz wykonać jedną komendę w katalogu z zainstalowaną grą. Komenda jest na protondb. Sprawa prościutka i gra działa stabilnie po tym ale jednak nie ma tu full automatu.

vpiotr

@revcorey: nie znam tej gry ale dzięki za info. Przy okazji znalazłem co trzeba zrobić żeby odpalić Quake 2, podaje może komuś się przyda: right-click, Properties, General, Set Launch Options, PROTON_OLD_GL_STRING=1 %command% Po dodaniu tego działa wszystko. Więcej takich zaklęć: https://synappsis.wordpress.com/2017/05/21/steam-in-arch-linux/

vpiotr

@revcorey: tamte tipsy nie pomagają

axelbest

@Spine: na tych appkach raczej netflixa nie odpale

Wibowit

"Okazuje się że Steam ma jakąś warstwę emulacji - Proton, która umożliwia granie nawet w najnowsze gry z Windows (...) Co ciekawe poza wydajnością nie stwierdziłem innych problemów - dzwięk, filmy, gui - wszystko działa bez problemu w trybie high, inaczej niż z Wine, w którym każda z gier coś miała nie tak" - Proton jest oparty Wine: https://github.com/ValveSoftware/Proton : "Compatibility tool for Steam Play based on Wine and additional components"

vpiotr

@Wibowit: być może, ale efekt końcowy jest zupełnie różny. To mniej więcej tak jakbyś stwierdził że JVM jest napisane w C/C++.

Wibowit

No bujną masz wyobraźnię, ale zupełnie z analogią nie trafiłeś. Po skompilowaniu JVM jest totalnie niezależny od C++, a Proton jest wprost rozszerzeniem Wine i instalując Protona instalujesz też Wine (konkretnie to wersję od Valve, czyli: https://github.com/ValveSoftware/wine ). Oprócz Protona jest jeszcze np CrossOver od CodeWeavers https://en.wikipedia.org/wiki/CrossOver_(software) który w podobny sposób rozszerza Wine.

Tenonymous

Mi się udało swego czasu na Linuxie odpalić Call of Duty: Modern Warfare 2 i w sumie było przy tym żadnych problemów. Odpalone oczywiście przy użyciu Wine'a

jarekr000000

Moja najfajniejsza gra była napisana pod win16api i teraz najprostszy sposób jej uruchomienia to linux+wine oczywiscie na vmce pod windowsem 10 :-). Wiwat sens i prostota

vpiotr

@jarekr000000: to chyba zaliczyłeś combo :-) Takiej kombinacji chyba jeszcze nie widziałem.