리눅스에서 스팀게임 글 올린지 얼마나 됐다고 바로 특정 게임 삽질기를 하나 더 올립니다. 이쪽은 생각지도 못한 일이 일어났습니다.
https://www.youtube.com/watch?v=5o4h4bbk4yw


자그마치 스팀덱에서 DJMAX Respect V 가 실행된다는 것입니다. 그동안 XineCode때문에 실행이 안 됐었는데 Xinecode측에서 수정한건지 아니면 네오위즈에서 수정한것인지 스템덱에서 윈도우 설치 없이 잘 된다고 합니다.

그렇다면 일반 리눅스 PC에서도 잘 되지 않을까 싶은데.... 한번 테스트 해봤습니다.

...결론부터 말씀드리자면 2022년 6월 현재 그냥 Proton으로는 실행이 안 되고 GE-proton이라는 커스텀 버전의 Proton을 설치해야 실행이 잘 됩니다.

GE-proton의 설치방법은
https://github.com/GloriousEggroll/proton-ge-custom/releases

 

Releases · GloriousEggroll/proton-ge-custom

Compatibility tool for Steam Play based on Wine and additional components - GloriousEggroll/proton-ge-custom

github.com

여기서 GE-proton의 tar.gz파일을 다운받습니다. 이쪽은 업데이트가 잦으므로 최신판일 수록 좋습니다.

그리고 우분투를 비롯한 리눅스에서 숨김파일을 보이게 합니다. 단축키는 보통 Ctrl+H 입니다.
그리고 .steam 폴더를 찾아 들어갑니다. (스팀이 설치 되어 있을 때 설치가 안 되어 있다면 한번 설치하고 로그인까지 해두시면 됩니다.)

compatibilitytools.d 라는 폴더를 만들거나 이미 있다면 해당 폴더로 들어갑니다.

그리고 여기에 아까 다운로드 받은 GE-proton의 압축을 풉니다.

그러면 compatibilitytools.d/GE-proton-X-XX 형태의 폴더가 만들어 질 것입니다. 그리고 스팀을 다시 껐다가 켭니다. 정 모르겠으면 그냥 컴퓨터를 껐다 켭시다

그리고 스팀을 켜고 라이브러리에서

DJMAX RESPECT V의 오른쪽 버튼을 눌러 속성에 들어갑니다.

그리고 호환탭에 들어가면 강제로 Steam 플레이 호환도구 사용하기를 체크하시면 GE-Proton을 선택할 수 있게됩니다.

이제 DJMAX를 실행하면 깨끗하게 실행이 됩니다!!!!

스팀덱이후로 리눅스 게이밍이 상당히 좋아지네요...

22.07.25
Proton-GE를 굳이 설치하지말고 스팀에서 Proton 7.0이상을 쓰면 아무 문제없이 실행됩니다.

이제 더 이상의 삽질은 없습니다. 그냥 DJmax를 설치하고 실행버튼만 누르면 끝입니다.

 

====22.09.21========

 

성능이슈가 있어서 이리저리 돌려보다가 알아냈습니다. 조금이라도 성능을 뽑아내기 위한 설정법입니다.

 

우선 스팀에서 DJMAX RESPECT V에 속성으로 들어갑니다.

그리고 시작옵션에 다음과 같이 적습니다.

 

DXVK_FRAME_RATE=60 %command% -force-d3d12 

 

이렇게 하면 48프레임 나오던것이 52프레임정도로 조금 상승합니다. 이 성능문제는 안티치트가 문제라고 하는데 안티치트를 해제할 수가 없으니 억지로 성능을 끌어올리는 방법입니다. 물론 성능이 좋다면 DXVK_FRAME_RATE를 조정해주셔도 됩니다. 게임내에 프레임고정기능이 있지만 사실상 정상적으로 작동하지 않아서 사용하는 방법입니다.

 

23. 7. 16 성능이슈가 해결되었습니다

원인은 정확히 모르지만 NTUserDisplayConfig 함수가 문제였습니다

기존에는 User32에 함수를 했는데 User32가 아닌 win32u에 들어있는 함수를 사용해야 정상적으로 된다는군요.

 

https://github.com/ishitatsuyuki

 

ishitatsuyuki - Overview

Low level plumber & diver. ishitatsuyuki has 159 repositories available. Follow their code on GitHub.

github.com

이분이 해결해 주셨습니다. 일본인 같은데 드라이버레벨에서 이걸 잡아주셨네요

https://gitlab.winehq.org/wine/wine/-/merge_requests/2957

 

win32u: Move QueryDisplayConfig from user32. (!2957) · Merge requests · wine / wine · GitLab

This allows access to the in-process cached monitor list and reduces the number of registry calls issued for QueryDisplayConfig (in case of no change) from 4 x monitors...

gitlab.winehq.org

해당 Wine 패치입니다. Wine8.0에서 적용이 가능하며 그에 따라 Steam의 Proton 8.0에서도 적용이 가능합니다

 

 

https://drive.google.com/file/d/1XCMXRoN2mZVY8YSIZ_KWprZM6IS77s02/view?usp=sharing

 

ge-proton-8-djmax.tar.gz

 

drive.google.com

그래서 GE-Proton에 해당 패치를 적용해서 배포합니다. 

다만 glibc의 버전이 2.37이상에서 작동될겁니다. (제가 사용하는 환경(Debian unstable)에서 컴파일 하다보니 그렇게 됐습니다.) 일단 위의 방법대로 compatibilitytools.d 폴더에 압축을 푸는 방식으로 설치하시고 강제로 호환성 체크를 해주세요.

 

아마도 해당 패치가 머지가 될것으로 보이니 이후에 정식 업데이트된 후에는 정상적인 게임이 가능할 겁니다.

,