엔스헨데 한글패치 & 공략20주년 · 2006 — 2026
TRANSLATION NOTES · 작업기

한국어로 옮기면서

별의 이름과 비유, 농담을 고르고 실제 PSP 화면에서 읽히기까지의 이야기.

엔스헨데 · 한국어 패치 1.0.0

홈스타 포터블 한글패치 작업을 마쳤습니다. 에뮬레이터와 PSP에서 판타지 시어터를 끝까지 보고, PSP 두 대로 게임 공유도 확인했습니다. 마지막에는 폰트까지 ISO 안에 넣어서 파일 하나만 복사하면 쓸 수 있도록 정리했고요.

끝내고 나니 한글이 안 나오던 화면이나 멈추던 PSP가 먼저 떠오르긴 합니다. 그래도 작업기를 쓰면서 가장 이야기하고 싶은 건 번역 쪽입니다. 같은 별을 설명해도 이름과 비유, 농담이 달라서 생각보다 고민할 게 많았거든요. 어떤 기준으로 번역했고, 어떻게 작업했는지 조금 적어보려고 합니다.

분석과 도구 제작에는 Codex의 도움을 받았고, 중요한 후보는 Astra로도 따로 검토했습니다. 저는 번역 방향과 문구를 살피고, 실제 화면에서 어떻게 읽히는지 확인하며 작업했습니다. 그렇게 고른 문장을 게임 안에 넣기까지의 이야기도 함께 남겨 보겠습니다.

원문을 뽑고 보니, 이름만 바꾸면 되는 게임은 아니었습니다

먼저 시어터 자막과 천체 사전에서 번역할 원문을 뽑아 항목별로 정리했습니다. 일본어 원문과 번역문을 나란히 놓고, 별 이름과 천문 용어를 맞춰 가며 살폈습니다. 자막 한 줄만 보면 무슨 뜻인지 잘 잡히지 않는 곳도 있어서 앞뒤 설명을 함께 읽어야 할 때가 많았습니다.

이 게임은 별의 이름과 수치만 알려 주는 게 아니었습니다. 국자 모양을 떠올리게 하기도 하고, 별을 하나씩 세어 보게 하기도 합니다. 명절이나 생일 이야기를 꺼내면서 밤하늘을 설명하는 부분도 있고요. 일본어 이름을 풀어 설명하거나 발음으로 농담하는 장면도 꽤 있었습니다.

그래서 일본어와 한국어의 뜻이 맞는지만 볼 수는 없었습니다. 한국어 자막을 읽고도 같은 별을 찾을 수 있는지, 비유가 이해되는지, 화면에서 보여 주는 것과 설명이 맞는지를 같이 봤습니다. 문장은 자연스러운데 엉뚱한 별을 가리키게 되면 곤란하니까요.

초안을 만든 뒤에는 문장을 다듬고, 한국어로 옮기면서 어색해진 부분을 다시 살폈습니다. 표현만 고치면 되는 곳도 있었지만, 천문 자료를 찾아봐야 하거나 실제 장면을 보고 정해야 하는 곳도 있었습니다. 바로 반영할 수 있는 제안부터 고치고, 화면의 모양이나 별이 강조되는 순서가 중요한 문장은 따로 확인했습니다.

일본의 밤하늘은 어디까지 한국어로 바꿀까

작업하면서 자주 고민한 부분입니다. 한국어로 편하게 읽히면 좋겠지만, 게임 속 관측지까지 한국이 되는 건 아니니까요. 일본에서 보이는 하늘을 설명하는데 무심코 ‘우리나라에서는’이라고 옮기면 다른 이야기가 됩니다.

일본의 실제 지명이나 관측 조건, 그곳에서 일어난 천문 현상은 배경을 그대로 남겼습니다. 센다이에서 관측한 월식은 센다이의 월식으로 적고, 홋카이도의 월식도 그 지역에서 어떻게 보였는지 알 수 있게 했습니다. 일본에서 낮게 보이는 천체를 한국 어디에서나 같은 조건으로 볼 수 있는 것처럼 옮기지 않도록 주의했습니다.

별의 옛 이름도 모두 한국 이름으로 바꾸지는 않았습니다. 페가수스 사각형과 안드로메다의 별들을 묶어 부르는 ‘깃발별’은 일본에서 쓰던 이름이라고 밝혀 두었습니다. 사각형이 깃발이고, 이어지는 별들이 깃대라는 식으로 모양을 풀어 주면 처음 듣는 이름이어도 화면을 따라갈 수 있었습니다. 비슷하게 생긴 한국의 다른 별자리 이름을 가져와 같은 것처럼 붙이지는 않았고요.

칠석도 문맥에 따라 달랐습니다. 견우와 직녀가 만나는 이야기는 우리에게 익숙하게 옮길 수 있었습니다. 반면 음악 설명에서 소원을 적은 종이쪽지를 나무에 매다는 풍습이 나올 때는 ‘일본 칠석에는’이라고 적었습니다. 같은 칠석 이야기라도 그 문장이 무엇을 설명하는지 보고 정했습니다.

스바루를 좀생이별로

우리말 이름을 살릴 수 있는 곳은 반갑게 바꿨습니다. 대표적인 예가 플레이아데스성단입니다. 원문의 ‘스바루’라는 이름을 설명하던 부분을 한국어판에서는 ‘좀생이별’을 소개하는 내용으로 옮겼습니다.

플레이아데스성단이라는 이름도 함께 남겼습니다. 같은 성단을 우리말로는 좀생이별, 옛 천문기록에서는 묘성이라고 불렀다는 식으로 이어 주었습니다. 시어터에서 들은 이름을 사전에서도 알아볼 수 있도록 관련 설명도 함께 맞췄고요. 같은 대상을 가리키는 이름인지는 강릉시의 좀생이별 소개 같은 자료로 확인했습니다.

이름을 바꿀 때는 어디까지 같은 천체인지도 조심해서 봤습니다. 예를 들어 ‘남쪽 플레이아데스’라는 다른 성단을 설명하는 문장에서는, 비교 대상으로 나오는 플레이아데스성단에만 우리말 이름을 덧붙였습니다. 남쪽 플레이아데스 자체를 좀생이별이라고 부르지는 않았습니다.

장수를 축하하는 이야기도 손을 봤습니다. 일본에서 빨간 조끼를 선물하거나 나이에 따라 잔치를 여는 이야기는 가족이 생신을 축하하는 이야기로 풀었습니다. 다만 뒤에 나오는 77년 된 빛과 77광년 거리의 별까지 칠순에 맞춰 70으로 바꿀 수는 없었습니다. 생신 이야기는 익숙하게 읽히도록 고쳐도, 별과 숫자의 연결은 그대로 두어야 했습니다.

농담은 옮겨도 별은 놓치지 않게

일본어 말장난은 특히 어려웠습니다. 발음이 비슷해서 웃기는 문장을 그대로 풀어 쓰면, 별자리 이야기를 하다가 갑자기 일본어 수업이 시작되는 느낌이 나기도 했거든요.

북두칠성 장면에는 일본어 이름의 글자를 별에 하나씩 대응시켜 외우는 방법이 나왔습니다. 여기에 한국어 이름만 넣어서는 설명이 이어지지 않았습니다. 그래서 별이 차례로 강조되는 순서에 맞춰 ‘하나, 둘, 셋…’ 하고 일곱 별을 세도록 바꿨습니다. 다음 장면도 다시 별을 세다가 미자르 곁의 희미한 알코르를 찾아보는 흐름으로 정리했습니다. 일본어 글자를 몰라도 화면을 보며 같이 따라갈 수 있으면 좋겠다고 생각했습니다.

국자에 비유하는 부분에서는 일본 신사의 물국자를 써 본 적이 있어야 이해되는 설명을 덜었습니다. 대신 긴 손잡이와 물을 담는 부분의 모양을 떠올릴 수 있게 옮겼습니다. 화면에 보이는 모양은 같으니, 그 모양을 어떻게 설명할지 바꾼 셈입니다.

농담이 나올 때마다 새 한국어 농담을 만들지는 않았습니다. 라스알게티의 발음 농담은 별 이름의 뜻을 알려 주는 문장으로, 화살자리의 일본어 말장난은 화살 모양을 설명하는 문장으로 다듬었습니다. 억지로 웃기는 말을 넣기보다는 그 장면에서 알려 주려는 내용을 살리고 싶었습니다.

음성은 일본어 원음을 그대로 사용합니다. 그래서 이렇게 바꾼 자막은 원음과 단어 하나하나가 맞아떨어지지는 않습니다. 그 차이를 염두에 두고, 자막이 나오는 순서와 그림에서 강조하는 부분을 보며 자연스럽게 이어지는지 확인했습니다.

2026년에 다시 읽는 천문 설명

오래된 게임이다 보니 과학 설명을 어디까지 고칠지도 고민했습니다. 근거가 분명한 오류나 오래된 설명은 고치되, 추측해야 하는 부분은 함부로 바꾸지 않기로 했습니다.

명왕성은 단순히 크기가 작아서 행성에서 빠진 것처럼 읽히지 않도록 분류 설명을 다듬었습니다. 크기도 JPL의 행성 물리 자료를 찾아보고, 본문에는 반지름 약 1,188km, 연결되는 자막에는 지름 약 2,376km로 맞췄습니다. 사전과 시어터에서 서로 다른 값을 이야기하지 않도록 관련 문장을 함께 살폈습니다.

목성·토성과 천왕성·해왕성을 설명할 때는 거대 가스 행성과 거대 얼음 행성을 구분했습니다. 해왕성은 짙은 파란색으로 기억하기 쉽지만, 원본 영상을 다시 분석한 옥스퍼드대 연구 설명을 참고해 문장을 고쳤습니다. 천왕성과 비슷한 옅은 청록빛이고, 푸른 기운이 조금 더 있다는 설명으로 다듬었습니다. 다만 게임 속 행성 그림은 원본 그대로입니다.

숫자를 전부 최신 값으로 바꾼 것은 아닙니다. 발견할 때마다 달라지는 위성 수는 또 다른 숫자로 고정하기보다, 많은 위성이 있고 그중 갈릴레이 위성 네 개가 유명하다는 설명으로 정리했습니다. 앞서 이야기한 나이와 별의 거리처럼 숫자 자체가 장면의 구성에 들어가 있는 경우도 따로 살펴야 했고요.

2026년에 확인할 수 있는 자료를 바탕으로 다시 검토했지만, 고친 범위는 확인한 설명문과 거기에 이어지는 자막까지입니다. 일본어 음성이나 천체 계산 엔진, 원작의 달력 범위는 새로 만들지 않았습니다. 어떤 문장을 고치고 어떤 문장을 남겼는지, 그 이유도 함께 정리해 두었습니다.

고른 문장을 실제 게임에 넣기까지

번역문을 정한 뒤에는 항목별로 원문과 맞춰 게임에 넣었습니다. 문장이 길어지면 저장 공간과 참조 위치도 함께 조정해야 했습니다. 시어터 대본에서는 음성과 진행을 제어하는 정보를 그대로 두고, 같은 별 이름이 자막과 사전에 다르게 남지 않았는지도 확인했습니다.

글자를 보여 주는 방식도 화면마다 달랐습니다. 메뉴나 시어터 제목처럼 이미지에 그려진 글자는 따로 고쳤습니다. 선택할 때와 선택하지 않을 때 다른 이미지가 나오는 곳은 양쪽을 함께 봤습니다. 검색 분류도 가나를 한글로 바꾸기만 해서는 안 됐습니다. 한국어 이름으로 원하는 천체를 찾아갈 수 있도록 정리해야 했습니다.

그런데 에뮬레이터에서는 잘 보이던 한글이 PSP에서는 밑줄처럼 나왔습니다. 폰트를 읽는 과정과 파일 형식, 메모리 확보 문제를 나눠 확인한 뒤에야 실기에서도 글자가 제대로 나왔습니다. 한글이 보이기 시작하니 이번에는 자막이 조금 작고 얇더군요. 크기와 획을 보강하고, 숫자와 괄호도 같은 자막 글꼴로 맞췄습니다.

번역문만 읽을 때와 PSP 화면에서 영상을 보며 읽을 때는 느낌이 또 달랐습니다. 긴 문장이 잘리지 않는지, 두 줄 자막도 편하게 읽히는지 확인하고 그 후보로 시어터를 장시간 검수했습니다. 모든 영상이 끝까지 정상적으로 나오는 걸 확인하고 나서야 한숨 돌릴 수 있었습니다.

다른 PSP에도 한국어로 보내기

게임 공유는 따로 손봐야 했습니다. PSP 두 대를 놓고 시험했는데, 일본판 원본에서는 잘되던 공유가 한글판에서는 접속 안내 뒤 메뉴로 돌아왔습니다.

알고 보니 공유는 본편 ISO를 통째로 보내는 방식이 아니었습니다. ISO 안에 들어 있는 별도 수신 프로그램을 다른 PSP로 보내 실행하는 구조였습니다. 수신 프로그램의 화면과 문장, 폰트도 따로 한글화해야 했던 거죠. 전송할 수 있는 크기 안에 들어가도록 내용을 보존한 채 압축하고, 실제로 받은 뒤 실행되는 과정도 확인했습니다.

전송에 성공한 뒤에도 문제가 남았습니다. PSP 로고 뒤에서 멈추기도 하고, 한글 타이틀까지 나온 뒤에 진행하면 멈추기도 했습니다. 수신 프로그램이 메모리를 초기화하는 방식과 공유용 폰트에 남아 있던 문제를 각각 고쳐야 했습니다. 실기 시험을 너무 많이 반복하게 된 뒤에는, 다음 후보를 만들기 전에 실행하지 않고 확인할 수 있는 부분부터 더 좁혀 보기로 했습니다.

마지막에는 받는 PSP에서도 한글 타이틀을 지나 밤하늘로 정상 진입했습니다. 본편에서 고른 표현과 이름을 다른 PSP에서도 이어서 볼 수 있게 되어 특히 반가웠습니다.

마무리할 때는 본편 폰트도 ISO 안에서 읽도록 바꿨습니다. 배포 패치로 만든 ISO가 실기에서 확인한 성공본과 완전히 같은지도 확인했습니다. 받으시는 분은 가지고 계신 원본에 패치를 적용한 ISO 하나만 사용하시면 됩니다.

좀생이별처럼 반갑게 바꾼 이름도 있었고, 일본의 이야기라고 밝혀 남긴 문장도 있었습니다. 농담을 옮기기 어려운 곳은 별을 찾는 설명으로 다듬었고, 오래된 과학 설명은 자료를 찾아보며 고쳤습니다. 이렇게 옮긴 문장을 실제 밤하늘 화면과 함께 끝까지 읽을 수 있게 되었으니, PSP 쪽 작업은 마쳤다고 할 수 있겠더군요.

Vita에서도 밤하늘을 보고 싶어서

PSP 쪽이 끝났으니 이제 정말 마무리라고 생각했는데, Vita의 Adrenaline에서도 한번 켜 보고 싶었습니다. Vita 화면에서 이 밤하늘을 보고 싶었거든요. 그런데 일본판 원본부터 검은 화면만 나오더군요. 정품 소프트를 가지고 PSP에서 쓰고 있었던 터라, 이 작품이 Vita에서도 되는지는 그동안 따로 생각해 보지 않았습니다.

찾아보니 2012년 다운로드판 배포 당시 세가의 안내문에도 Vita에서는 플레이할 수 없고 PSP만 대응한다고 적혀 있었습니다. 이번에 처음 알았습니다. 그래도 Adrenaline에서 실행할 방법이 있을지 궁금해서, 성공한 PSP판은 그대로 보관해 두고 시작 과정을 더 따라가 봤습니다.

그 과정에서 게임이 시작할 때 PSP용 외장 GPS를 준비하는 부분을 찾았습니다. 이 GPS는 인터넷으로 위치를 받는 기능이 아니라, 별도 수신기를 연결해 현재 위치를 자동으로 얻는 부가 기능입니다. 이 처리를 사용하지 않는 후보를 따로 만들어 보기로 했습니다. 위치와 시각을 직접 고르는 기능은 남겨 두고, GPS를 준비하고 갱신하는 부분부터 종료할 때의 처리까지 함께 살폈습니다.

그렇게 만든 159번이 Vita에서 켜졌습니다. 한글 메뉴가 나오고, 밤하늘과 시어터에 들어갔다가 정상으로 종료되는 것까지 보니 정말 반가웠습니다. GPS가 유일한 원인이라고 단정할 수 있는 내부 오류 기록을 얻은 것은 아닙니다. 다만 이 처리를 제외했을 때 실제로 실행할 수 있다는 결과는 확인했습니다.

실행되는 것을 확인한 뒤에는 Vita에서도 시어터의 모든 영상을 끝까지 재생했습니다. 사운드도 장시간 틀어 두었고, Vita 호환판의 게임 공유가 정상적으로 동작하는 것도 확인했습니다.

그래서 PSP·PPSSPP용 기본판과 GPS 연동을 제외한 Vita·Adrenaline 호환판을 나눠 배포하기로 했습니다. 번역과 글꼴, 시어터와 공유 프로그램은 같습니다. 사용하는 기기에 맞는 파일을 고르시면 되고, 위치를 직접 지정해 밤하늘을 보는 기능은 두 판 모두 그대로 쓸 수 있습니다. GPS 수신기 자체는 따로 시험하지 못했습니다. 그래서 기본판도 GPS 동작을 확인했다고 적지 않고, 원래 처리를 보존한 것으로 구분해 두었습니다.

조금 더 기술적인 이야기 — 151번 기본판과 159번 호환판

여기부터는 게임 안쪽을 어떻게 고쳤는지 궁금한 분들을 위한 이야기입니다. 앞에서는 번역 이야기를 많이 했지만, 그 문장을 실제 PSP에서 읽을 수 있게 만드는 데도 시간이 꽤 걸렸습니다. PSP 기본판으로 실기에서 성공한 것은 151번 후보이고, 뒤이어 만든 Vita 호환판은 159번입니다. 여기까지 오는 동안에는 한글이 안 뜨는 후보, 글자는 나오는데 간격이 맞지 않는 후보, 공유는 되는데 받는 PSP에서 멈추는 후보도 있었습니다.

### 글자를 바꾸는 일과 폰트를 쓰게 하는 일

게임은 원래 일본어 문자 코드를 읽어 글자를 그립니다. 한글을 넣으려면 사용하지 않는 문자 코드와 한글 글리프를 연결하고, 그 코드가 들어왔을 때 준비한 폰트를 쓰도록 출력 경로를 고쳐야 했습니다. 자막과 사전은 역할에 맞춰 글꼴과 크기도 구분했습니다.

폰트는 PSP에서 쓰는 PGF 형식으로 만들었습니다. 여기서 겪은 문제가 에뮬레이터에서는 읽히는 파일이 실기에서는 제대로 읽히지 않는 것이었습니다. 폰트 안의 표가 정렬된 방식, 글리프가 저장된 위치, 크기와 간격 정보를 하나씩 맞춰 봤습니다. 한글이 밑줄처럼 나오던 문제도 파일 열기, 폰트 정보 조회, 글자 그리기를 나눠 확인하며 원인을 좁혔습니다.

메모리 쪽도 고쳤습니다. 원래 할당 경로에서 처리하지 못하는 폰트 요청에 대응할 수 있도록 메모리를 확보하고 해제하는 부분을 보완했습니다. 필요한 메모리를 받는 것뿐 아니라, 다 쓰고 나서 올바르게 돌려주는 과정도 함께 살폈습니다. 마지막에는 이렇게 확인한 폰트와 수정 내용을 유지하고, 외부 파일을 읽던 경로만 ISO 안으로 바꿨습니다.

### 공유 프로그램은 따로 부팅하는 또 하나의 실행물

공유 수신 프로그램에는 본편과 별개의 실행 코드와 자료가 들어 있었습니다. 본편을 고친다고 공유 쪽에 같은 수정이 따라가는 구조는 아니었습니다. 실제 공유 모듈을 살펴보니 전송 파일에 8MiB 길이 제한이 있었고, 한글 자료를 넣은 파일은 이 제한을 넘고 있었습니다.

그래서 내용을 보존하면서 gzip으로 압축한 뒤 공유용 PBP 실행 파일로 묶었습니다. 압축이 제대로 풀리는지, 선언된 크기와 실제 결과가 같은지, 원래 실행 내용이 유지되는지 확인했습니다. 다만 용량을 줄여 전송할 수 있게 된 뒤에도, 받는 PSP에서 실행할 때 생기는 문제는 따로 고쳐야 했습니다.

수신 프로그램을 메모리에 올릴 때 0으로 시작해야 하는 영역이 있습니다. 흔히 BSS라고 부르는 부분인데, 이 영역의 초기화도 살폈습니다. 본편에서 이미 고쳤던 PGF 형식 문제가 공유용 내장 폰트에는 남아 있어서 이것도 따로 수정했습니다. 그래서 전송에 성공하는지, 한글 타이틀이 나오는지, 타이틀을 지나 실제로 글자를 쓰는 화면까지 들어가는지를 나눠 확인했습니다.

### 매번 원본에서 다시 만들고, 같은 결과인지 확인하기

통합 후보를 만들 때는 이전 시험 ISO 위에 패치를 계속 덧씌우지 않고 원본에서 다시 만들었습니다. 고칠 위치의 원래 내용이 예상과 맞는지 먼저 확인하고, 파일이 커지면 저장 위치와 게임의 위치표도 함께 맞췄습니다. 수정하려던 범위 밖에서 이유를 알 수 없는 차이가 생기면 성공한 것으로 보지 않았습니다.

실행 파일의 주소 연결과 폰트 자료를 검사하고, 같은 입력으로 따로 만든 결과가 일치하는지도 비교했습니다. 중요한 실행 후보는 별도 리뷰도 거쳤습니다. 그래도 이런 검사만으로 자막이 읽기 편한지, 실제 무선 수신이 되는지까지 알 수는 없습니다. 게임을 실행해서 확인하는 과정도 함께 진행했습니다.

### 최종본에서 마친 검증

에뮬레이터에서는 전 메뉴를 확인했습니다. 천체 사전과 검색, 설정, 화면 이동과 복귀를 살피고 판타지 시어터도 장시간 재생했습니다. PSP 실기에서는 한글이 나오는지에 더해 자간과 오른쪽 잘림, 자막의 크기와 획을 조정한 결과까지 봤습니다. 시어터의 모든 영상을 끝까지 재생하고, HOME으로 종료한 뒤 기본 메뉴로 돌아오는 것도 확인했습니다.

게임 공유는 PSP 실기 2대로 직접 확인했습니다. 본편에 이어 다른 PSP로 보내는 공유 프로그램도 한글로 사용할 수 있게 됐습니다.

최종 151번에서는 ISO 안의 폰트로 한글 메뉴와 자막이 나오고 정상 종료되는 것을 확인했습니다. 앞서 장시간 검수한 자막·글꼴과 공유에 성공한 프로그램은 그대로 유지했습니다. 배포용 차분 패치를 수정하지 않은 원본에 적용했을 때도 이 최종본과 전체 해시가 같았습니다.

기본판은 에뮬레이터 전 메뉴와 장시간 시어터, PSP 본편 실기와 공유를 받는 PSP까지 검수했습니다. Vita 호환판도 Vita·Adrenaline에서 기동과 밤하늘·시어터 전편·사운드 장시간 재생·종료 복귀, 게임 공유까지 확인했습니다. 두 판 모두 이렇게 확인한 뒤 배포합니다. 한글이 처음 보였을 때부터 여기까지 오는 데 꽤 오래 걸렸네요. 무엇을 어디까지 확인했는지는 검증 기록에 따로 적어 두었습니다.

화면 밖을 누르거나 Esc로 닫을 수 있습니다.