728x90

KOEI 83

삼국지4PK 일판에 한글을 출력시키는 과정. (1부)

삼국지4 파워업키트는 우리나라에 도스판과 윈도우95판 두 종류로 발매된 적이 있다. 도스판은 도스박스를 통해 구동이 가능하지만, 윈도우95판은 실행파일이 32bit임에도 불구하고, 윈도우10에서 바로 실행되지 않는다. DDrawCompat 패치까지 하면 게임 실행은 가능하지만 검은 화면에 게임 창만 덩그러니 열려있는 살풍경한 모습으로 플레이할 수 밖에 없다. 그리고 BGM 재생을 하려면 CD를 반드시 삽입해야 하므로, 완벽히 구동하는데 애로사항이 이만저만이 아니다. 그러므로 삼국지4PK도 스팀판 실행파일을 뜯어고쳐서 한글이 출력되도록 하는 수밖에 없다. 1. 저장 폴더 문제 삼국지4PK를 스팀 런처로 실행하니 '데이터 파일 오픈에 실패했습니다' 라는 문구가 뜨고 무장 얼굴도 제대로 표시가 안 되는 등의 ..

삼국지4PK 스팀 일본어판 한글 출력 패치.

* 주의사항 본 패치는 삼국지4PK 스팀 일본어판의 [스팀 클라우드 지원]을 위한 파일을 포함하고 있습니다. 스팀 클라우드 지원이 필요없는 분들은 첨부파일 내의 설명 텍스트 파일를 참조해주시기 바랍니다. 또한 본 패치에는 다음과 같은 구성이 포함되어 있습니다. 1. 외부에서 메시지를 읽어들이고, 한국어 조사 처리를 해 주는 '외부 메시지 읽기 런처' 2. 256컬러 모드 체크 없이 게임 실행이 가능하게 해 주는 'CDS95Util' (대항해시대3에서 사용되던 것) 정발판 메시지 이식 도중에 발견된 오역이나 오타는 최대한 교정했지만, 검수를 하지 못했기 때문에 문장이 어색하게 출력되는 경우가 많습니다. 이건 천천히 수정하도록 하겠습니다. * 패치파일 다운로드 여기 클릭 (Google Drive) (비번 :..

삼국지5PK 일판에 한글을 출력시키고 말겠다. (4부)

(3부에 이어서 계속) 13. 덜어내기 작업 완료 마침내 덜어내기 작업까지 완료되었다. 덜어낸 문장은 약 1600개 정도다. 이제 메시지 쪽은 잘못 옮겨 적거나 제어코드를 빼먹은 게 아닌 이상 건드릴 것이 없다. 14. 메시지 파일에서 %s로 들어오는 문장의 조사 처리 지원 한글판 문장 이식이 끝나고, 계속 이런 곳 저런 곳 돌아다니면서 제대로 출력되고 있는지 확인하고 있었다. 그런데... 이런 문장이 떴다. "재야 장수의 병사은 변경할 수 없습니다." 아니... 분명히 앞의 '사' 자 때문에 '는' 으로 바뀌어야 하는데, 왜 '은'으로 출력되는거지? 도스창을 보니까... 아하... '병사' 로 문장이 안 들어오고 '%s' 로 들어와서 그런 거였다. %s는 C언어에서 문자열을 취급하는 애인데... 그러면..

KOEI/삼국지 시리즈 2022.02.16 (1)

삼국지5PK 일판에 한글을 출력시키고 말겠다. (3부)

(2부에 이어서 계속...) * 안내 본문에서 말하는 '메시지 파일' 은 MESSAGE.s5를 말하는 것이 아닌, MESSAGE.s5를 LS11 압축해제하고 나온 56개의 메시지 파일을 의미하는 것입니다. 11. 외부 메시지를 읽어들이는 런처 제작 지난번의 '메시지 파일 용량 제한 문제' 를 돌파하기 위해 나는 예전에 보았던 '런처 한글화' 방식을 떠올렸다. 런처 한글화 방식을 이용해서 메시지 파일에는 m00000 이런 식으로 치환 번호를 쓰고, 외부 메시지 파일(.txt)에는... m00000>=테스트입니다. 이런 식으로 치환할 메시지를 입력하는 것이다. 다행히도 런처의 기본 소스는 '코에이 게임 연구소' 카페에서 얻을 수 있었다. (링크) 이 분에게는 대항해시대2 윈도우95판 한글화 때 엔딩 메시지 ..

삼국지5PK 일판에 한글을 출력시키고 말겠다. (2부)

(1부에 이어서 계속...) 6. 뒷 바이트가 0xFE인 문자들이 ?로 뜨는 문제 지난 1부에서, 뒷 바이트가 0xFD, 0xFE로 끝나는 글자들이 게임 내에서 ?로 출력되는 문제가 있다고 말한 적이 있었다. 어셈블리 수정을 통해 0xFD 글자들은 출력시키는 데 성공했으나 0xFE 글자들은 여전히 출력이 ?로 뜨는 상태다. ?로 뜨는 이유는, 뒷 바이트가 0xFE에서 0x7E로 바뀌었기 때문이다. 여기서 나는 또 다른 꼼수가 생각났다. 뒷 바이트가 0x7E면 +0x80해서 무조건 0xFE로 만들면 어떨까? 왜냐하면 한국어 인코딩(CP949)은 애당초 뒷 바이트에 0x7E를 사용하지 않기 때문에, 0xB07E... 0xB17E... 이런 문자 코드 자체가 존재하지 않는다. 따라서 무조건 0xFE로 바꿔도 ..

삼국지5PK 일판에 한글을 출력시키고 말겠다. (1부)

1. 서론 작년 12월부터 갑자기 뭔가에 홀린 것 마냥 스팀판 삼국지 시리즈를 구입하고 한글 출력 패치를 만들기 시작한 나는, 10PK부터 차례대로 밑으로 내려가면서 한글 출력 패치를 만들기 시작했다. 10PK와 9PK는 폰트 파일이 따로 있기 때문에 폰트만 재작업을 하고 메시지 파일은 정발판에서 가져오는 식으로 해결했다. 8PK, 7PK, 6PK는 노시디 패치된 정발판 실행파일이 윈도우10에서 테스트 모드가 아니여도 작동된다는 점을 이용하여 비교적 쉽게 해결할 수 있었다. 그러나 삼국지5PK (그리고 나중에 작업해야 할 4PK)는 그러한 방식이 통하지 않는다. 정발판 실행파일을 쓰려고 하면... 5PK는 일단 16비트 실행파일이라 64bit 윈도우에서는 바로 작동되지 않는다. winevdm이라는 프로그..

삼국지5PK 스팀 일본어판 한글 출력 패치.

* 주의사항 본 패치는 삼국지5PK 스팀 일본어판의 [스팀 클라우드 지원]을 위한 파일을 포함하고 있습니다. 또한 실행파일의 메시지 파일 읽기 용량 제한으로 인해 외부에서 메시지를 읽어들이는 런처 파일도 포함되어 있습니다. 스팀 클라우드 지원이 필요없는 분들은 첨부파일 내의 설명 텍스트 파일를 참조해주시기 바랍니다. * 패치파일 다운로드 여기 클릭 (Google Drive) 분할압축 파일이므로 둘 다 다운로드 받아야 합니다. (외부 메시지 읽기 런처가 바이러스 취급을 받을 수도 있는데, 그럴 때는 각자 컴퓨터에 맞게 예외 조치를 해 주세요.) * 간단한 설명 (가급적이면 압축파일 내의 설명 텍스트 파일을 참조하시기 바랍니다.) 7z.001 파일을 반디집으로 열어서 압축을 풀고, 압축을 푼 폴더 내의 모든..

KOEI/삼국지 시리즈 2022.02.15 (8)