리눅스 팁 & 테크

?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

 안녕하세요. 만화가 엄두입니다. 뭔가 하모니카 커뮤니티에 저도 기여를 해야하는데, 언제나 고수분들께 도움만 받지, 제가 도움이 되질 못하네요 ^^;; 이번에도 조심스레 도움을 청해봅니다.


제노너츠라는 게임이 있습니다. 이게 리눅스용 스팀으로 나왔는데요. 윈도우용은 한글 패치가 나왔습니다. 그러나, 리눅스용은 아예 파일 구조 자체가 달라서 적용이 안되네요. "걍 윈도우용 쓰지 뭐!" ...라고 넘기면 될 것을, 언제나 그렇듯 "이거 리눅스로 돌리면 재밌겠군 ㅎㅎㅎ" 라는 오기가 생기더군요.


 우선 윈도우용의 한글 패치 방법은 다음과 같습니다.


<윈도우>


- 한글 패치 배포처

http://aqune.tistory.com/101



 여기에서 다운 받는 파일은 다음과 같습니다.


strings.xml : 한글 번역 파일입니다.

arial.mvec

tahoma.mvec

xenonauts.mvec

xenopedia.mvec : mvec라는 확장자(듣도보도 못한;;;) 를 가진 글꼴 파일입니다. 아마도 한글을 나타내기 위한 한글 글꼴으로 추정됩니다.


이 파일들을 다음 경로에 붙여넣습니다.


설치한 하드 드라이브:\SteamLibrary\steamapps\common\Xenonauts\assets


스트링 파일을 다운 받은 한글 패치 스트링 파일로 덮어써주고...


윈도우 파일 1.png


폰트 파일도 살포시 덮어줍니다.


윈도우 파일 2.png


이러면 처음에는 이랬던 게임이


제노너츠 영어.jpg


이렇게... 바뀝니다!


제노너츠 한글.jpg


버뜨... 그러나...; 리눅스 버젼은 문제가 있습니다. 바로 파일 구조 자체가 아예 다르다는 것이지요. 리눅스 스팀 버젼의 제노너츠 파일구조는 다음과 같습니다.


<리눅스>


/home/사용자 아이디/.steam/steam/steamapps/common/Xenonauts/assets

-우선 경로는 이렇구요.


리눅스 파일 1.png


 리눅스 스팀버젼과 윈도우 버젼의 가장 결정적 차이는 저것입니다. 파랑색 네모로 쳐진 대사 파일은 있습니다. 때문에 대사는 한글로 바꿀 수가 있지만, 윈도우 버젼에는 있었던 폴더 파일이 없기 때문에 한글 폰트를 깔 수가 없게 되버렸다는 것이죠. 아마도 윈도우 버젼의 폰트 폴더 기능을 대체하는 것으로 추정되는 font.php 라는 파일이 존재할 뿐입니다.


 혹시나 싶어 한글 폰트는 놔두고, 한글 대사 파일인 strings.xml 파일만 바꾸어 게임을 실행하였더니, 예상대로 모든 글씨가 아예 안나오더군요. 허허허... 게임의 신은 리눅스를 버리셨단 말인가... ;ㅂ;/


 이러던 차에, 영어로 구글링을 해보니 다음과 같은 글이 있었습니다.

https://steamcommunity.com/app/223830/discussions/0/490121928340900380/


 이 글을 쓰신 분께서도 저처럼 리눅스용 제노너츠 게임을 즐기려 하셨던 모양이에요. 그러나, 이상하게도 게임 그래픽은 잘 나오는데, 게임 안의 글자들이 모조리 사라졌다고 합니다. (앞서 제가 말씀드렸던 리눅스 스팀 제노너츠에서 한글 글꼴을 설치하지 못한 채로 한글 대사 파일을 덮어씌웠을 때의 증상과 완전히 똑같았습니다 ! )


 다행히도 prometheanfire 라는 닉을 쓰시는 능력자분이 댓글로 해결책을 적어주셔서 잘 해결된 듯 합니다. 구글 번역기가 영 신통찮아 원문 그대로 올리겠습니다. (글 도중도중에 이상하게 깨지는 문자들이 있었는데, 이건 하모니카 홈페이지에서 처리를 못하더라구요. 그래서 원문과는 조금 달라졌습니다. 원문 그대로를 보시려면 조금 수고스러우시더라도 위의 링크로 접속해주시면 고맙겠습니다.)


Here you go, keep in mind that I can run this through nvidia as well if you want testing with that.


I also attached an lddtree of the binary and didn't see anything missing. Also, fonts at the end.

https://gist.github.com/prometheanfire/fc7b514cf22c7f037eae


It looks like you might be using arial, which might not be available on all installations. Here's an strace with a grep for the font. Another font might get better results, the startup binary refrences this as well


Applicationassets/fonts/arial.mve


assets/fonts.pfp refrences this as well

fonts/arial.mvecu,,fonts/tahoma.mvec,>fonts/xenonauts.mvec oke fonts/xenopedia.mvec


stat64("assets/fonts.pfp", {st_mode=S_IFREG|0755, st_size=209208, ...}) = 0

access("assets/fonts.pfp", R_OK) = 0

open("assets/fonts.pfp", O_RDONLY|O_LARGEFILE) = 10

read(10, "PFPK\4\0\0\0\20fonts/arial.mvecu\0\0\0,,\1"..., 131072) = 131072

stat64("assets/fonts.pfp", {st_mode=S_IFREG|0755, st_size=209208, ...}) = 0

access("assets/fonts.pfp", R_OK) = 0

open("assets/fonts.pfp", O_RDONLY|O_LARGEFILE) = 9

read(9, "PFPK\4\0\0\0\20fonts/arial.mvecu\0\0\0,,\1"..., 117) = 117

read(9, "PFPK\4\0\0\0\20fonts/arial.mvecu\0\0\0,,\1"..., 131072) = 131072

writev(9, [{";\3\5\0\4\0 \4\0\0\0\0\0\0\0\0\24\0\24\0;\3\5\0\5\0 \4\0\0\0\0"..., 88}, {"XFree86-Bigfont", 15}, {"\0", 1}], 3) = 104


Also, I'd be intrested if you are using xft to match fonts to what the system has. iirc, xft is used to match fonts.


# fc-match Arial

Arimo-Regular.ttf: "Arimo" "Regular"


 제가 위의 해결책에서 주목하는 부분은 다음과 같습니다. 앞서 글꼴 파일이라고 말씀드렸던, 그러나 리눅스용 제노너츠 게임파일에는 존재하지 않았던 arial.mvec, tahoma.mvec, xenonauts.mvec, xenopedia.mvec. 이 4형제 파일이 윗 글에는 명시되어 있습니다. 저는 다음과 같이 추정합니다. 아마도 위의 글꼴 파일을 수동으로 게임에 연결시킨게 아닐까요? 때문에 게임 상에서 다시 글자가 출력될 수 있게 된 것일테구요. 만약 이런 방법이 가능하다면, 제가 다운 받았던 한글 글꼴 파일을 저 네 파일 대신 연결하여, 한글 텍스트를 출력하게 만들수 있을 것 이라는 희망이 생겼습니다! 때문에 고수분들께 질문드리겠습니다.


 위의 영어와 숫자가 섞인 명령문 비스무리한 글들은 리눅스의 어떤 부분을 나타내는 것인가요?


 터미널에 치는 명령문 인가요? 아니면 아까 제가 의심스럽다고 말씀드렸던 fonts.pfp 파일같은걸 에디터 프로그램으로 열어서 수정한 결과물일까요? 어떤 것인지만 알아도 제가 뭔가 해볼수 있는 여지가 생길 것 같아요. 만약 이 문제가 해결 된다면, 한국 제노너츠 관련 커뮤니티들에 이 정보를 공유하여 더 많은 한국 리눅스 유저 분들이 불편함 없이 게임 하실 수 있도록 하겠습니다. 고수분들의 도움 간절히 부탁드리겠습니다.


 날씨도 더운데 긴 글 끝까지 읽어주시고 함께 고민해주신 당신께 감사드립니다. 좋은 하루 되세요~!

  • ?
    Moordev 2017.07.05 21:12

    저는 그 게임이 없기 때문에 알 수가 없지만 일단 알아낸 것은 다음과 같습니다.


    1. mvec포맷은 Playground SDK라는 개발도구에 있는 Playmate Font maker라는 툴로 만든 것입니다. TTF파일의 벡터글리프를 변환한 방식이라고 하지요. 원본 mvec파일에는 ASCII만 들어있지만 한글패치를 위해 말그대로 한글을 쑤셔넣은 듯 합니다. 어쨌건 mvec가 해당 게임에 쓰인 특별한 방식이지만 만드는 것도 어렵지 않음을 의미합니다.


    2. 문제는 저 pfp파일인데 저거 QuickBMS란 툴로 풀립니다. 풀면 안에 fonts란 폴더가 나온다고 하는데요. http://www.goldhawkinteractive.com/forums/index.php?/topic/3816-exract-pfp-archives/


    굳이 그럴 것도 없이 윈도우 버전처럼 fonts란 폴더를 만들고 한글이 들어있는 4개의 mvec파일을 넣으면 될 수도 있습니다. fonts.pfp파일은 확장자를 bak정도로 바꾸고요. 예전에 렌파이란 놈이 rpa라는 것을 굳이 풀지 않아도 rpa안의 폴더트리 구조 그대로 만들어서 파일을 넣으니까 파일이 바뀌더군요. 이것도 그럴 수 있습니다.

  • ?
    만화가엄두 2017.07.05 23:32

     말씀하신대로 하였더니 문제가 해결되었어요! 해결 방법은 다음과 같습니다.


    1. /home/사용자 아이디/.steam/steam/steamapps/common/Xenonauts/assets 폴더 안에 fonts 라는 폴더를 만들고, 한글 패치용 글꼴 파일 arial.mvec, tahoma.mvec, xenonauts.mvec, xenopedia.mvec. 이 네 파일을 집어넣습니다.


    2. 그리고 /home/사용자 아이디/.steam/steam/steamapps/common/Xenonauts/assets 안에 있는 strings.xml 파일을 한글패치용 strings.xml 파일로 덮어씁니다.


    3. 리눅스용 스팀을 열어 훈훈하게 게임을 즐깁니다.


     이 해결방법은 리눅스용 제노너츠에 유저 제작 모드를 씌우는 방법까지 알아낸다음, 글로 정리하여 관련 커뮤니티에 걸어두겠습니다. 귀중한 시간 내주셔서 문제 해결에 도움주신 Moordev 님께 감사드립니다! 좋은 하루 되시길~!

  • ?
    휘베스드님로인 2017.07.07 07:58

    대부분 스팀에서 리눅스도 지원하는 게임은 기본 한글 지원 게임도 많고 


    그게 아니더라도 보통은 압축파일만 풀어서 설치된 디렉토리에 덮어쓰면 되거나 


    조금 많이 어려워봐야 패치파일이 EXE 로 되어서 귀찮은 점 빼고는 할만하다 생각했는데 


    아예 구조 자체가 윈도우용이랑 리눅스용 자체가 다른 것도 있군요 ㄷㄷㄷㄷㄷㄷ  고생하셨네요 

  • ?
    휘베스드님로인 2017.07.07 09:40

    아 그리고 생각해보니까


    스팀 게임들 중에  한글 표기가 ㅁㅁㅁㅁㅁ 이런식으로 레프트 4 데드나 몇몇 게임들에서 깨지는 경우가 있었는데 


    sudo apt-get install ttf-wqy-zenhei 를 통해서 아시아 폰트 설치하면 보통 해결됐습니다. 


    다만 게임 내에서 한글입력이 안 되는 부분은 방법이 없는 것 같더라구요 


  • ?
    만화가엄두 2017.07.07 17:26

     처음엔 생소하다보니 '헉?! 뭐야?? 윈도우랑 다르잖아? 으아아아 ;ㅂ;' 하면서 괜히 쫄았었는데, 지금 다시 살펴보니 크게 다른 것도 없네요 ㅎㅎㅎ. 그냥 위에서 적어놓은대로 fonts 폴더의 유무정도가 차이점이었던 거 같습니다. 리눅스용 엑스컴 에너미 위딘은 아예 파일들 자체가 달라서 꽤 당황했었던 기억이 나네요.


     지금 에지간한 문제들은 다 해결된 것 같은데, 이런식으로특이하게도게임내대사들의띄어쓰기가모두사라져버리는현상이발생하였습니다.하하.또구글링하며해결방법들을찾아봐야겠네요. 아시아 폰트에 대한 정보 감사드립니다. 장마철 건강 조심하시길!

  • profile
    행복한펭귄 2017.07.07 11:12

    게임에 대한 시도 정말 도전적이고 좋은 정보입니다.

    이런 정보들이 빠르게 공유되고 알려져서 많은 사람들이 좋은 게임을 자신이 원하는 플랫폼에서 즐거이 즐겼으면 합니다. 가능하면 리눅스 시스템의 성능을 최대한 올려서 돌아간다면 더욱 좋겠다고 봅니다.


    게임은 놀이이기도 하지만, 시장이요 문화이기에 절대로 놓쳐서는 안 되는 매우 중요한 핵심이라고 보입니다.

  • ?
    만화가엄두 2017.07.07 17:27

     자꾸 자잘한 문제들이 생겨서 하나씩 정리해가고 있는중입니다. 모두 정리되는대로 게시글 형태로 만들어 사람들과 공유하려구요. 자꾸자꾸 공유하다보면 언젠가 리눅스도 훌륭한 게임머신이 될거라는 희망이 있습니다.

  • ?
    Moordev 2017.07.09 00:44

    그리고 스타크래프트 배틀넷에서 한글이 ㅁㅁㅁㅁ 나오는 경우에는 굴림 폰트를 설치하면 해결됩니다. 다만 EULA같은 저작권이 거슬리는데 만약 폰트 라이센스가 걸리시는 분들은  http://moordev.tistory.com/attachment/cfile2.uf@2617884D59415FCD4353A7.7z


    이것을 설치하면 해결됩니다. 가짜굴림이라고 이름만 굴림이고 내용물은 나눔고딕과 그 친구들로 구성된 파일입니다. 이걸로 Wine에서 한글 출력에 문제 있는 오래된 프로그램은 해결이 될 수 있습니다. 제가 만드는 커스텀버전은 일단 이건 넣고 보지요. 몇몇 웹사이트에서 가독성이 좋아지는 부가 효과가 있거든요. (굴림으로 나오는 일부 이상한 부분이 나눔고딕으로 힌팅이 적용되어서 나옵니다.)


    일단 이걸로 해결 본 것이 스타크래프트 배틀넷하고 롤러코스터 타이쿤1 정도군요.


    그리고 리눅스로 하는 게임머신에 저도 관심이 많은데요. 같이 노하우를 공유해볼까요?

  • profile
    행복한펭귄 2017.07.09 09:37

    매우 좋은 생각입니다.

    아무래도 Moordev님과 같이 전문적(?)으로 실제적으로 많이 경험해 보신분들의 구체적인 팁과 의견과 생각이 발전적인 정보를 제공할 것으로 기대됩니다.

    앞으로도 꾸준하게 좋은 정보 계속 부탁드리겠습니다.

    감사합니다.

  • ?
    만화가엄두 2017.07.11 00:12

     와... 리눅스 게이밍 환경에 대해 엄청난 연구를 해오셨군요. 대단하십니다.


     저는 리눅스로 할 만한 게임이 생길 때만 찔끔찔끔 해결책을 찾다보니 리눅스 게이밍 노하우라는건 거의 없습니다 ㅎㅎㅎ. 다만, 이렇게 작으나마 노하우가 생긴다면, 바로바로 커뮤니티에 정보를 공유하겠습니다. 앞으로도고수분들의 도움 부탁드릴게요! 언제나 도와주셔서 감사합니다~


List of Articles
번호 제목 추천 수 글쓴이 날짜 조회 수
공지 유튜브 프리미엄 우회 결제 - 우크라이나 file 1 Kevin 2023.12.17 3983
공지 리눅스에서 자기 노트북의 모델명이 무엇인지 궁금할때는 dmidecode file 1 Kevin 2023.12.17 284
공지 하드웨어 호환성을 확인하고 싶을 때는 linux-hardware.org 를 사용해보세요 file 0 Kevin 2023.11.23 642
공지 하모니카 7.0 카카오톡 hidpi 설정하기 1 file 0 Kevin 2023.11.22 415
공지 리브레오피스에서 hwp 사용하기 4 file 0 타조 2023.10.11 916
741 [설문조사] 당신이 애용하는 리눅스 비디오 에디터는? 5 0 행복한펭귄 2016.04.02 5754
740 [책 소개] 공짜 소프트웨어로 사무 환경 구축하기 (오피스 절감 프로젝트) 2 file 0 행복한펭귄 2016.01.07 5747
739 김프 플러그인 설치하여 포토샵처럼 사용해보자! file 0 행복한펭귄 2016.02.26 5737
738 [질문] RAD(Rapid Application Develope) Programming Language? 5 0 행복한펭귄 2016.01.13 5715
737 [문의] 자동로그인을 해제는 어떻게 해야 할까요 ㅜㅜ? 4 file 0 푸른악마 2017.09.04 5715
736 리눅스용 스카이프 클라이언트 새버전 공개 2 file 0 행복한펭귄 2016.08.14 5712
735 이전에 말했던 우분투 기반의 게이밍판 현재 진행상황입니다. 8 0 Moordev 2017.08.10 5709
734 리눅스 민트 18 시나몬 버전 리뷰 기사 3 0 행복한펭귄 2016.07.08 5684
733 리눅스 민트 18 업그레이드에 관한 내용 1 file 0 행복한펭귄 2016.07.17 5680
732 Scribus DTP(DeskTop Publishing) 관련 국내 책은 없네요. 0 행복한펭귄 2016.01.13 5674
731 아티스트, 뮤지션, 에디터를 위한 리눅스 배포판 안내 2 file 0 행복한펭귄 2016.08.04 5639
730 [잡담] 무엇이 진정 가장 중요한 문제인가? 8 0 행복한펭귄 2016.07.12 5624
729 ODF로 문서간의 호환성 확보하기 0 행복한펭귄 2016.03.22 5616
728 rufus 2 0 string 2016.05.17 5604
727 서지스윈@IT 블로그매거진 (리눅스 파트) 2 0 행복한펭귄 2016.04.02 5598
726 Ndivia 367.35 리눅스 그래픽 드라이버 런칭 소식 1 file 0 행복한펭귄 2016.07.17 5592
725 [질문] 리눅스민트 패널에 대하여 4 file 0 리눅스초짜 2017.06.24 5590
724 Vector Graphic Tool InkScape 국내책도 없네요. 0 행복한펭귄 2016.01.13 5566
723 [잡담] 슈퍼 컴퓨터 이야기 file 0 행복한펭귄 2016.03.24 5563
» <해결됨!> 제노너츠 리눅스 버젼에 한글 패치를 깔고 싶습니다! 10 file 0 만화가엄두 2017.07.05 5562
Board Pagination Prev 1 ... 5 6 7 8 9 10 11 12 13 14 ... 47 Next
/ 47
CLOSE