여기서 직접 다운로드 받았습니다. 플레이스토어를 사용하지 못하는 곳을 위해 만들어진 APK미러 사이트로 웹에서 직접 APK를 받을 수 있습니다.
아시아판이니까 당연히 한국어가 있겠죠?
파일은 xapk란 이상한 것인데 사실 그냥 Zip형태입니다. 그냥 일반 압축프로그램으로 풀립니다. 그리고 그 안에는 우리에게 익숙한 apk파일과 obb파일이 있는 형태입니다.
물론 다들 알다시피 apk파일과 obb파일도 그냥 zip입니다. 그냥 압축해제가 됩니다. 우리는 여기서 /Android/obb/com.chorusworldwide.theroom 까지 들어가서 main.15.com.chorusworldwide.theroom.obb 파일까지 압축을 해제해버립니다.
obb파일도 그냥 일반 압축파일로 인식된다.
그리고 /assets/bin/Data 까지 들어가면... 이제 Unity3D 에셋 파일들이 등장합니다!
Linux용 Steam에서 Steam Play(Proton)을 사용해서 이런저런 많은 게임을 구동했습니다. 하지만 Wine도 완벽하지 않고 그것을 기반으로 한 Proton도 완벽하지 않기 때문에 모든 게임이 구동되는 것이 아닙니다. 그래서 Protontricks 같은 각종 트릭을 써서 구동을 하고 있습니다. (https://moordev.tistory.com/284)
하지만 게임 구동이 안 되는 것이 Wine문제일 수도 있고 DXVK 문제일 수도 있습니다. 사실 DXVK이전에 WineD3D로 기존 Direct3D게임을 OpenGL로 구동하는 방법이 있었습니다. 이쪽은 느리긴 하지만 구동 자체는 완벽합니다.
보통 DXVK문제로 Steam Play에서 오류가 나는 경우는 다음과 같습니다.
The Island : In To The Mist란 게임으로 GameMaker2 엔진을 사용했고 DirectX11을 요구합니다. 그런데 저 오류 코드는 VRAM관련 오류인데 제 시스템에서 오류가 날 이유가 없습니다. 이 게임은 VRAM을 512MB만을 요구하거든요. 그러니까 하드웨어 문제가 아니라는 의미입니다. 결론은 Proton의 문제란 것이고 이걸 해결 하는 방법은 간단합니다. DXVK를 써서 Vulkan 모드로 구동하지 않고 WineD3D로 OpenGL모드로 구동하게 하면 됩니다.
Vulkan 드라이버 설치 및 SteamPlay를 활성화 했다는 가정하에 이야기 하겠습니다.
여깁니다. 어차피 무료이니 여기서 다운로드 버튼을 눌러보면 리눅스, 맥, 윈도버전을 다운로드 받을 수 있게 해놓았겠지요.
하하... 게임이 마음에 들면 기부해 달라고 하네요. 네 마음에 드신다면 여기서 필요한 만큼 금액을 적어서 Paypal이나 기타 방법으로 기부를 하시면 됩니다. 일단 저는... 무료로 해보기 위해서 "No, Thanks. Just take me Download." 를 위치고 다운로드를 하기로 했습니다. 그런데 10달러정도는 기부할 만한 게임입니다. 여러가지 의미로 말이지요...
펭귄그림이 윈도용과 함께 있군요. 그러니까 윈도용과 리눅스용은 공용판이었나 봅니다. Windows용을 다운로드 받으면 되겠군요.
Liquidsky 접속이 제대로 안 되기 시작한지 어언 2달 하고도 반 정도, 결국 게임을 하고 싶다는 희망은 다시 저에게 힘겨운 사투가 되었습니다.
Liquidsky가 돌아가던 때에는 어떤 게임도 클라우드로 굴릴 수 있어서 마음놓고 구매했는데 갑자기 이 방법이 안 되니 할 게임도 골라서 해야 하더군요. 그래서 리눅스 지원 게임을 우선 순위로 두고 이런 저런 게임을 다시 시작했습니다. 일단 Liquidsky가 안 되니 어쩔 수 없지요. 그냥 우분투에서 돌릴 수 있는 게임들이 필요하게 되었다고나 할까요. 일단 Wine으로 돌리는 것은 제외했습니다. 생각보다 리눅스 지원 게임이 많더군요. 제 스팀에만 45개의 게임이 리눅스를 지원한다고 나오네요.
그리하여 이번에는 리눅스를 지원하는 리눅스에 미치고 게임에도 미친 답없는 저같은 사람들을 위한 필수 구매(?)게임들을 소개하고자 합니다. 일부는 다른 사람에게 소개받은거라 저도 아직 구매하지 않은 게임도 있습니다. 조만간 세일하면 살려고 합니다.
1. Dust: An Elysian Tail
일명 먼지. 인디 게임이지만 완성도 높고 2D의 깔끔함을 알 수 있는 플랫포머 게임입니다. 스토리는 기억을 잃은 주인공이 어쩌고 저쩌고... 로 시작하는 그러한 스토리지만 동물 형태의 캐릭터들과 함께 깔끔한 화면으로 호평을 받은 게임입니다. 한국어패치도 여기(http://egloos.zum.com/hanfield/v/1130056)에서 다운로드 받아서
~/.steam/steam/steamapps/common/Dust An Elysian Tail 경로에다가 넣어주시면 아무 문제 없이 한국어로 플레이가 가능합니다.
2. Transport Fever
홈페이지에서 제공하는 스크린샷을 퍼왔다. 각종 MOD의 힘으로 여러가지 교통수단들이 지원된다!
교통 시뮬레이션 게임으로 OpenTTD의 후계자 취급을 받는 게임입니다. 전작인 Train Fever는 한국어를 지원했었는데 무슨일인지 이번작에서는 한국어가 사라졌습니다. 하지만 그딴거 몰라도 게임하는데 지장없는 것이 이런 스타일의 게임 특징이지요. 리눅스에서는 그래픽 설정에서 약간의 에러가 있는데 그래픽을 최상으로 맞추면 문제 없이 돌아갑니다. (옵션을 끄면 일부가 깨지더군요.)
3. Saints Row 시리즈
스크린샷은 그냥 직접 찾아보기를 권한다.
어딘가 맛이간 GTA 시리즈라는 이명을 안고 있는 게임입니다. GTA와 비슷한 하지만 또 그렇지도 않은 오픈월드 약빤게임 세인츠로우 시리즈입니다. 리눅스 지원을 한다는 소식을 듣고 정말 환호 했었지요. 문제는 한국어인데 리눅스 버전에서는 한국어패치가 먹히지 않습니다. 정식으로 한국어로 나온 것이 H2인터랙티브에서 유통한 버전뿐인데 문제는 윈도우용만 유통했다는 겁니다. 아쉽지만 리눅스에서 돌아만 가줘도 감지덕지... 하지만 어딘가 맛이 간 센스는 죽지 않았으니 리눅스에서 돌리는 것으로 한 번쯤은 구입해보시는 것도 좋습니다. (나온지 꽤 되어서 할인도 자주 합니다!)
4. Skullgirls
망할 스크린샷 찍는 도중에 캐릭터들이 구석으로 밀려났다... 뭐 이래...
애니메계열 격투게임 중 꽤나 유명한 게임입니다. 기존의 대다수 2D 격투게임이 도트기반 캐릭터 애니메이션을 택했다면 이 쪽은 그냥 고화질 동화 기반 애니메이션이 기반이 되었습니다. 무슨말인지 모르시면 그냥 해보시면 압니다. 다만 캐릭터가 약간 호불호가 갈리는 디자인이라 싫어하는 사람은 많이 싫어합니다. 그냥 6버튼 격투 게임이라고 생각하시면 편합니다.
5. 문명
아주 유명한 짤방.
문명이 리눅스가 지원된다는 사실을 알고 계셨나요? 네, 시드마이어 이 놈은 결국 3대 OS를 모두 지원함으로서 모든 PC게이머들에게 타임머신을 태워버렸습니다.
더 이상 자세한 설명은 생략하겠습니다.
6. Valve사의 게임들
Half-Life 시리즈
Left 4 Dead 시리즈
Counter Strike 시리즈
Portal 시리즈
Team Fortress 시리즈
이 들의 공통점은 3편이 없다는 것 말고도 SteamOS를 만든 Valve사의 게임답게 리눅스를 모두 지원합니다. 그리고 앞으로도 Valve사의 게임들은 리눅스를 지원할 가능성이 높습니다.
네 그러니까 하프라이프3가 나온다면 그 때도 리눅스가 지원될 가능성이 높은 것이지요. 문제는 하프라이프3가 안 나온다는 것이지만.
이 외에도 오픈소스 게임인 StepMania나 Ren'Py로 만든 비주얼노벨 등이 있지만 이 쪽은 제외했습니다. 이외에도 다른 추천할만한 리눅스 지원 게임이 있다면 댓글 부탁드리겠습니다.
리눅스를 다른 사람들에게 별로 추천하지 못하는 이유 중 하나가 응용프로그램, 그 중에서도 게임이 안 된다는 것이 주 원인입니다. 우분투 8.04 시절에 Compiz의 화려한 효과를 보여주면 사람들은 우와~ 했지만 언제나 돌아오는 질문은 "근데 이거 게임 되냐?"였습니다. 그 당시에 제가 할 수 있던 대답은 하나였지요.
"스타 정도는 삽질하면 돌아가."
네 삽질 좀 해야 스타가 돌아가던 시절이었습니다. 물론 스타가 돌아간다는 사실 만으로도 행복하던 시절이기도 했지요. 물론 리눅스용 게임으로 퀘이크가 있기는 했지만 지금이나 그때나 퀘이크는 아는 사람만 아는 게임이었습니다. 퀘이크라고 해봐야 "그게 뭔데?"라는 질문만 돌아올 정도였으니 예시로 들기에는 부적절했습니다. 그래서 하는 수 없이 그 당시에도 꾸준한 인기가 있었던 스타크래프트를 예로들었지요.이후에 Wine이 꾸준히 개발되며 호환성을 상당히 확보했고 표준 Windows API가 아닌 특이한 방법으로 만들어진 게임이 아닌 이상 어쨌건 게임이 되긴 되는 시대까지 되었습니다. Wine이 거의 완벽한 호환성을 갖추게 된 때가 아마도 2009~2010년이 되었을 때였을 것입니다.
그리하여 Wine을 이용해서 수많은 윈도용 게임을 리눅스에서 할 수 있게 되었습니다. 물론 패키지게임의 경우 DRM들이 문제를 왕창 일으키기는 했지만 No-CD, No-DVD 패치들이 인터넷에 돌아다녔기 때문에 보통 이를 이용해서 해결했습니다.
우분투 10.04시절 롤러코스터 타이쿤3 구동 스크린샷 저의 Daum블로그에 올렸던 스크린샷입니다.
그래픽은 기본 wine으로 구동 음악은 DirectX9 라이브러리 설치후 설정으로 해결
어쨌건 이제 리눅스에서 게임이 안 된다는 말은 옛말이된지 오래되었습니다. 다만 Wine을 이용한 방법은 생각 외로 복잡해서 설치하는 사람에게 고통을 자주 안겨주었습니다. 그 때 해결 방안을 함께 알려준 물건이 바로 PlayonLinux입니다.(http://www.playonlinux.com) 이전에도 포스팅을 했었지만 PlayonLinux는 Wine만으로 게임하기가 너무 불편하고 힘들자 Wine을 버전별로 관리하게 하고 각 프로그램마다 가상 윈도(즉, Wine의 FakeWindows를 말합니다.)설정을 다르게 해서 게임 별로 관리하기 쉽게 만든 것이 특징입니다. 지금은 게임 외의 다른 프로그램도 지원하지만요.
무엇보다 게임설치에 필요한 라이브러리(DirectX같은 것을 말하는 것입니다.)를 자동으로 미리 설치해주고 설치를 쉽게 하도록 안내해주고 있어서 이 프로그램을 이용하면서 리눅스에서의 윈도 게임은 쉽고 빠르게 즐길 수 있게 됩니다. 사실 PlayonLinux 이전에도 Wine을 편하게 쓰기 위해서 많은 시도가 이루어져 왔습니다. Wine-doors라던가 Cedega(이것은 자체 개발한 유료 라이브러리인 WineX라는 것을 이용합니다.)라던가 많이 있었지만 PlayonLinux와 Cedega와의 차이는 사용 라이브러리가 Wine이냐 WineX냐의 차이였고 Wine-doors는 그냥 Wine을 GUI로 쓰고자 하는 경우에 가까웠습니다. winetricks(https://code.google.com/p/winetricks/)를 통해 라이브러리르 설치하는 것도 물론 없었고요. PlayonLinux의 설치스크립트 같은 것은 없었습니다. PlayonLinux가 지금은 게임 만큼이나 다른 일반 프로그램설치도 지원하지만 지금도 게임이 제일 많이 리스트에 있습니다. 그것이 사실 처음에는 게임에 특화 시켰던 흔적 이라고도 볼 수 있습니다.
하지만 PlayonLinux는 모든 게임을 자동으로 완벽하게 해주지는 못했습니다. 바로 No-CD,DVD패치가 법적인 문제가 있어서 이용자가 따로 패치를 하도록 구성을 할 수밖에 없었기 때문입니다. "패치만 해주면 되는데 상관없지 않나?"라고 생각하시는 분들도 있을 수 있는데 처음 쓰는 사람에게는 그것도 은근히 고역입니다. 게다가 No-CD,DVD패치를 구글링 해야하는 수고도 필요했고요. 그런데 이때 DRM-FREE를 표방한 사이트가 등장하게 됩니다. 바로 GOG.com입니다. 이 GOG.com에서 파는 게임들은 따로 패치를 하는 수고로움이 없어졌기에 PlayonLinux에 리스트업됩니다. 이 때 상당히 업데이트가 잦았던 것으로 기억합니다. GOG.com에 새로운 게임이 올라오면 그 순간 새 설치리스트가 올라올 정도였습니다.
DRM-FREE게임을 판매하는 GOG.com
이제는 윈도용 뿐만 아니라 리눅스게임도 팔고 있습니다.
이제 리눅스에서는 Wine의 힘을 얻고 윈도용으로 출시된 게임들을 할 수 있게 되었습니다. 하지만 인간의 욕심은 끝이 없지요. 컴퓨터의 최고 성능을 끌어내야 하는 게임에서 Wine을 한번 거쳐야 한다는 사실은 게임에게는 좀 부족했었던 것 같습니다. 특히 네이티브 리눅스 지원게임과 윈도게임을 Wine으로 돌리는 것은 정말 큰 차이가 났습니다. 이후로 리눅서들은 리눅스 네이티브 게임을 갈망했는데 이를 한번에 뚫어준 것은 다름 아닌 세계 최대 게임유통사(?) Valve였습니다.
스팀에서 팔고있는 리눅스 지원 게임들 자그마치 600여개가 넘어간다. 그 중에서 문명5도 포함되어져 있다.
Valve는 아시는 대로 Steam이란 거대 유통망을 가지고 있는 회사입니다. 그리고 PlayonLinux에 따로 Steam이 있을 정도로 Steam을 이용한 게임을 돌리기 위한 노력도 정말 많이 있었습니다. 그런데 어느날 Valve는 Mac용 Steam을 발표하면서 FAQ부분에 의미심장한 부분이 추가되게 됩니다.
Q : Linux용은 없나요?
A : 아직 Linux용은 개발되지 않았습니다. 하지만 Wine을 이용해서 Windows용 Steam을 실행해 볼 수 있습니다.
정말 이렇게 나와있었습니다. 아마도 Mac용이 출시 된다고 했을 때 Linux용에 대한 문의가 많았던 것 같습니다. 그래서인지 Wine으로 실행이 가능하다고 친절(?)하게 답을 달아주었습니다. 실제로 이 때 Wine으로 Valve사 게임은 충분히 돌아갔으므로 틀린 말은 아니었지요. 하지만 이 일이 기폭제가 되었을지는 잘 모르겠습니다. 어느날 Valve는 갑자기 Linux용 Left4Dead2를 시연하면서 Linux용 Steam을 발표하게 됩니다. Steam의 전부는 아니지만 Steam의 이용 목적이라고 할 수 있던 Valve사의 게임을 Linux로 포팅 하겠다는 발표도 빼놓지 않았습니다. 리눅스 커뮤니티는 전부 뒤집어졌습니다. 어떤 분은 이런 글을 남기셨더군요.
"Valve가 리눅스로 도망간 내 지갑을 또 노리고 있다."
어쨌건 이로써 Lefrt4Dead나 TeamFortress2 등의 굵직한 게임들이 리눅스 네이티브로 출시되게 되었습니다. 물론 리눅스용이 따로 있었던 게임들도 Steam을 통해서 리눅스용을 구입할 수 있게 되었습니다.
사실 이렇게 되어버린 것도 시장경제논리에 따른 것입니다. 그 원인은 Microsoft가 만든 것이고요. 무슨 말이냐면 Microsoft가 WindowsStore를 Windows8에 끼워넣자 Valve는 Steam의 영향력이 줄어들 것이라 생각하고는 Windows외의 도피처를 생각하게 됩니다. 사실 Microsoft의 윈도 끼워넣기로 잘 나가던 회사가 망한 것이 한둘이 아님을 감안하면 충분히 예상은 가능했지요. 이 때 Valve가 생각한 것이 바로 리눅스였던 것입니다. MacOSX도 있지만 어차피 얘네도 앱스토어가 있어서 자신들이 직접 게임을 팔겠다고 나서기 충분한 상황이었습니다. 지금도 실제로 팔고 있고요. 그 다음 플랫폼은 바로 리눅스입니다. 점유율은 다른 OS에 비하면 박살이기는 했지만 충분히 경쟁력은 있다고 생각했음이 분명합니다. 어쨌건 Valve는 결국 리눅스 중에서도 특히 데스크탑용으로 많이 쓰이는 우분투 용으로 Steam은 출시되게 됩니다. 그리고 우분투 게이머들은 환호했구요. (물론 그들의 지갑은 가벼워졌다고 합니다.)
그런데 Valve는 Microsoft를 보면서 한 가지 더 생각한 것이 있었던 것 같습니다. Microsoft가 자신의 플랫폼을 가지고 시장을 좌지우지 한다고 판단한 것인지 Vavle는 리눅스를 기반으로 한 SteamOS를 발표하게 됩니다. 이미 자사 게임들을 리눅스 용으로 내놓았고 리눅스용 게임도 충분하니 이 SteamOS도 크게 꿀릴 것인 없다고 판단한 모양입니다. 아니면 Steam의 점유율을 새로운 플랫폼 창조로 잇겠다는 극히 Valve스러운 행보일 수도 있고요.
이 SteamOS는 리눅스를 기반으로 한 또 다른 OS이기도 하지만 오로지 Steam만을 위한 OS이기도 합니다. 사실 일반 적인 리눅스 데스크탑에 Steam을 설치한 것과는 크게 다르지 않습니다만 필요한 것만 설치하고 다른 것은 일체 배제함으로써 OS를 게임용으로 최적화를 가능케 한 면이 있지요.
그리고 이 SteamOS를 기반으로 소위 SteamBox란 것도 있고 터치패드를 이용한 Steam용 게임패드도 개발중에 있습니다. 즉, Steam을 이용해서 거실의 최강자 Microsoft와 Sony 그리고 Nintendo의 자리까지 노리겠다는 수로 보입니다. 어찌보면 Micorosoft에게 복수한 것이 아닐까 생각이 들 정도네요.
하지만 이 SteamOS의 성공을 판가름할 열쇠도 다름 아닌 리눅스용 게임들입니다. Valve는 WindowsPC에서 스트리밍해서 플레이 가능케 하겠다고 하는데 그래봐야 리눅스 네이티브 보다 성능이 떨어질 것은 뻔합니다. 다시 한번 말씀드리지만 게임이란 하드웨어의 성능을 제일 많이 필요로 하는 프로그램입니다. 스트리밍만으로 부족할 가능성이 높습니다. 무엇보다 아직까지도 스트리밍이 구현되었다는 소리를 못 들었습니다. 스트리밍의 성능이 어느정도 나올지는 일단 나와봐야 알 것 같고 현재 SteamOS에서 돌아가는 것은 오로지 리눅스용 게임들 뿐입니다. 이 게임 중에 킬러컨텐츠는 얼마나 있을까요? SteamOS가 성공하면 리눅스는 이제 게임하기 어려운 OS가 아니게 될 것입니다. 다른 프로그램을 몰라도 게임하나 만큼은 자신있는 플랫폼이 될 수도 있습니다. 제 나름대로는 이 SteamOS가 꼭 성공하기를 바랄뿐입니다.
제가 리눅스를 처음 접했던 시절에는 정말 게임하기 힘들었습니다. 아니 애초에 게임을 하려고 한 발상자체가 말이 안 되던 시절이기도 했지요. 그런데 이제 7년정도 지나가니 리눅스가 게임 전용 플랫폼이 되기도 하네요. 덕분에 요즘에는 몇몇 친구들 한정해서 우분투 써보라고 하기도 합니다. 왜냐하면 게임도 잘 돌아간다고 얘기해 줄 수 있거든요.
Long Live The Queen 프린세스메이커의 패러디 게임이라고 하는데 죽을일이 없는(가끔 가출은
하더만...) 프린세스 메이커와는 다르게 잘못된 선택은 곧 죽음인 살얼음판의 프린세스메이커라고 한다고해서 가격도 싸길래 냉큼
질러보았다.(사실 리눅스 지원인것도 한 몫했다. 리눅스 지원 게임이 그리 많지는 않으니..최근 개인프로젝트로 돌릴까 하는
클라우드게이밍도 스팀이 리눅스를 지원하면 그냥 클라우드 데스크탑에 스팀만 띄워주면 되니까 쉬워진다.)
일단 냉큼 지르고 영어의 압박을 간단히 떨친후(사실 영어로 되어있어서 반대로 게임하기 수월했다.) 뭐가뭔지 몰라(...) 공략을 찾던 중 이 게임이 Ren'Py라는 엔진으로 만들어졌다는 것을 알았다.
Ren'Py...
이름에 왠지 Py가 들어가는데다가 MacOSX, Linux, Windows를 전부 지원한다? 혹시 이거 Python?하고
스팀설치 폴더에 들어가서 뜯어본결과 Python맞더만...그것도 PyGame이라는 엔진을 비주얼노벨용으로 만든게 Ren'Py고
PyGame이 안드로이드도 지원하기 때문에 Ren'Py도 안드로이드 지원이 가능하다고 되어있었다.
그러나. 이 게임은 스팀에서 판매하기에 안드로이드 지원이 될 턱이 없었고 스크립트 언어인 Python이라면 별 저항없이 안드로이드에 이식이 되지 않을까 하던중 RenPy SDK에서 안드로이드 지원이 가능하다는 것을 찾아내었다.
흐음...이걸 일단 안드로이드에 이식해 보기로 하고 결국 휴일에 삽을 들고 말았다...에라이.
자 안드로이드 포팅(?)을 위한 준비물을 우선 말해보도록 하겠다. 여기서는 우분투같은 리눅스 환경에서 작업하는 것으로 되어있습니다. Mac이나 Windows는 스팀게임의 경로나 안드로이드폰 연결방법등이 다릅니다.
5. 손을 댈 Ren'Py로 만들어진 게임(여기선 Long Live The Queen 되시겠다. 이건 Steam관련 스크립트가 있긴 하지만...스팀없이도 실행되는 것을 확인)
6. rpatool https://github.com/Shizmob/rpatool rpa나 rpi등으로 이미지나 음악들이 압축 되어있는 경우 어쩔 수 없이 이 파일들을 풀어 해쳐놓아야 안드로이드에서 실행이 된다. 아니면 다른 방법이 있을 수도 있는데 방법을 잘 모르겠다.(...)
7. 삽질을 위한 안드로이드 기반 기기(에뮬레이터는 비추)
8. adb 안드로이드개발 홈페이지에서 다운로드 받던지 아니면 sudo apt-get install android-tools-adb
*. 당신의 삽질력
일단 되었으면 JDK와 Python을 설치하자.
그리고 Ren'Py SDK를 적당한곳에 압축을 풀고 RAPT를 Ren'Py SDK의 압축 푼곳에다가 같이 압축을 풀어넣자.
압축 풀기가 완료되었다면 renpy.sh를 실행해서 Ren'Py런처가 실행이 잘 되는지 우선 보도록 하자. 되었다면 예시로 같이 들어있는 것도 실행해 보고 이것저것 하다가 일단 종료.
이
제 스팀에서 Ren'Py게임을 구입하자. 아니면 조금 뒤적거리면 무료로 좋은 게임을 배포하기도 하니 잘 찾아보자. 걔중엔
지하철에서 하기에는 조금 엄한물건도 있기는 하지만....여기서는 아까 말했던 Long Live The Queen(이하 LLQ)을
이용하도록 하자. 그리고 꼭 한번 실행시켜주자. 가끔 스팀이 제대로 다운로드 안 하고 다 됐다고 사기치는 경우가 있어서
그런것이니 한번은 꼭 실행시켜보도록 하자.
실행이 확인 되었으면
~/.local/share/Steam/SteamApps/common 로가면 당신이 그동안 스팀에다가 쏟아부은 결과물들이 들어가
앉아 있다. 여기서 Long Live The Queen이란 이름의 폴더째로 일단 복사하자.
복사한
폴더는 위의 Ren'Py SDK와 RAPT의 압축을 풀어넣은 곳에다가 붙여넣기 하면 된다. 다시 한번 renpy.sh를
실행해보자. LongLifeTheQueen이 보이는가? 오른쪽에 Android라고 보이는가? 여기에 보면 Emulation으로
실행을 해볼 수 있다!!!! 그.러.나. 여기서 실행하면 당연하다는 듯이 에러난다. 이 에러를 잡는 것이 바로 이 삽질의
핵심이다.
삽질의 처음은 로그를 뜯어보는 것이다. 로그를 한번보자. glpatch.rpy가 에러가
났다고 나온다. 하지만 게임폴더를 아무리 뒤져도 rpy파일은 보이지 않는다. 사실 파이썬을 써보면 알겠지만 속도를 위해 한번
바이트코드로 컴파일하게 되는데 렌파이도 비슷한 원리로 스크립트를 컴파일 해 놓은 것이다. 즉 로그에서 rpy라고 나오는 파일이
사실 rpyc를 말하는 것으로 생각해도 좋다.
암튼 glpatch라는 놈이 문제라고 되어있는데 이미
컴파일되어있는 스크립트를 어떻게 해볼 수는 없고 한번 제거해보도록 하자.즉 삭제! 그리고 빈파일을 하나 만들어서
glpatch.rpy라고 하나 만들어 놓자. 빈 파일이기 때문에 아무런 내용은 없지만 그렇다고 파일이 없으면 그건 그것대로 또
에러가 난다. 말그대로 patch라고 되어있는 걸로 봐서 OpenGL관련 문제를 해결한 패치로 보인다. 그러나 안드로이드에서는
저게 도리어 문제를 일으키니 패치를 없애도록 하자. 그리고 한번 게임을 실행해보면 glpatch.rpyc가 생성되어있는 것을 알 수
있다. rpy가 빈파일이므로 rpyc도 빈내용으로 만들어진 바이트코드가 된다. 이걸로 한 가지 알 수 있는 것은 저 패치는
PC에서만 통하는 것으로 보인다는 것. 아마 Nvidia나 ATI드라이버 호환내용이 아니었을까?
왠 아이콘 이미지를 못 찾는다고 뜬다.(icon-big.png)ignore 버튼을 누르니 이번엔 배경이미지를 못찾는다고 하고 배경음악도 못찾는다고 하고..
이 파일들 아까 Game폴더에 없었는데?
사실 이것의 경우는 안드로이드용 렌파이의 문제일것으로 보인다. 게임 개발자나 회사에서 감추고픈(?) 이미지나 음악들이 떠돌아다니는 것을
싫어하기에 Ren'Py에서는 rpa라는 파일로 압축+암호화를 하는데 이게 안드로이드 내에서 정상적으로 복호화가 진행이 되지 않은
것이다. 잘 뒤져보면 llq.rpa란 파일이 보인다. 아마 못찾는다고 뜬 파일들은 이 안에 다 있을 것이다. 그럼 이걸 풀어서
game폴더에 흩뜨려 놓으면 정상적으로 실행이 될 것이다.
그럼 무엇으로 복호화를 할까? 아주 간단하게도 rpatool을 이용하면 된다. 이 것도 하나의 파이썬 스크립트로 되어있는데 그냥 game폴더에 넣어주자. 그리고 cd명령으로 game폴더까지 들어간다음
./rpatool.py -x llq.rpa
이러면 암호화되었던 것들이 압축이 싹풀리면서 보이게 된다. 그럼 이제 rpatool하고 llq.rpa파일은 필요없어졌으니 삭제하자. 겸사겸사 bytecode.rpyb파일도 삭제해주고.
이제 다시 빌드하고 폰에 넣으면?
타이틀화면 입성! 게임까지 입성이다!!!
오오..
힘든 사투였다.오오..근데 이 게임을 지하철에서 하는 건 좀 무리 아니려나...
2014. 7 .26 우선 안드로이드 포팅을 하는 방법을 올린 유튜브 영상이다. 본인이 찍었으며 이 방법을 통해서 만들어진 결과물을 마음대로 배포하지를 않기를 바란다. 만들어진 결과물은 개인적으로만 사용하고 꼭 스팀에서 구입한 것을 이용하자. 공식홈페이지에서 구입한 것은...잘 모르겠다.