AI 에이전트로 고전 게임 한글화를 자동화? 방법론을 담은 스킬이 등장했습니다
어릴 때 오락실에서 보던 게임, 혹은 PC방 초창기에 즐기던 JRPG가 생각나시나요? 일본어나 영어만 가득해서 스토리를 포기한 채 조작만 즐겼던 기억이 있다면, 이 글이 반가울 겁니다. 최근 GeekNews(GN)에 올라온 "Show GN" 포스팅 하나가 레트로 게임 커뮤니티와 AI 개발자 사이에서 조용히 퍼지고 있습니다. 주인공은 고전 게임 한글화 방법론 전체를 에이전트 스킬로 정리한 프로젝트입니다.
무슨 일이 있었나 — "Show GN"이 터뜨린 작은 혁신
GeekNews의 "Show GN"은 Hacker News의 "Show HN"과 같은 포맷입니다. 개발자가 자신이 만든 프로젝트를 커뮤니티에 직접 소개하는 자리죠. 이번에 올라온 것은 단순한 번역 스크립트가 아닙니다. 고전 게임을 한글화하는 전 과정을 AI 에이전트가 단계별로 수행할 수 있도록 정리한 스킬(skill) 파일입니다.
핵심은 '방법론의 코드화'입니다. 숙련된 한글화 패치 제작자가 수십 년에 걸쳐 쌓아온 노하우 — ROM에서 텍스트를 추출하는 법, 고정폭 폰트 제약 안에서 번역하는 법, 수정된 문자열을 다시 바이너리에 삽입하는 법 — 를 LLM이 이해하고 실행할 수 있는 구조화된 지시문으로 변환한 것입니다.
고전 게임 한글화가 왜 어려웠나 — 배경 이해
고전 게임 한글화는 단순 번역이 아닙니다. 다음 세 가지 기술적 장벽이 늘 발목을 잡았습니다.
첫째, 텍스트 추출 문제입니다. 1980~90년대 게임은 텍스트를 데이터베이스에 깔끔하게 저장하지 않았습니다. 타일 기반 폰트, 독자적인 인코딩 테이블, 특수 제어 문자(줄바꿈, 대기, 이름 삽입 코드 등)가 뒤섞여 있습니다. 어느 바이트가 대화문이고 어느 바이트가 게임 로직인지 역분석해야 합니다.
둘째, 공간 제약 문제입니다. 고전 게임 ROM은 용량이 작습니다. 영어 "Attack"은 6바이트지만, 한글 "공격"은 UTF-8로 6바이트, EUC-KR로 4바이트입니다. 언뜻 비슷해 보이지만, 폰트 타일 자체를 ROM에 새로 추가해야 하므로 공간 계획이 복잡해집니다. 번역 자체보다 자리를 만드는 작업이 훨씬 어렵습니다.
셋째, 맥락 단절 문제입니다. 추출된 텍스트는 맥락이 없습니다. "IT"라는 문자열이 대명사인지 IT 업계를 뜻하는지, 게임을 직접 플레이하며 확인하지 않으면 알 수 없습니다. 전통적인 한글화 팀은 역할을 분리해 — 역분석 담당, 번역 담당, 테스트 담당 — 수개월에서 수년을 소비했습니다.
에이전트 스킬이 이 문제를 어떻게 푸는가
이번 프로젝트의 접근법은 영리합니다. AI 에이전트에게 "이 ROM을 한글화해줘"라고 던지는 방식이 아닙니다. 대신 각 단계를 명확한 서브태스크로 분해하고, 에이전트가 각 단계에서 어떤 도구를 쓰고 어떤 판단을 내려야 하는지를 스킬 파일에 정의합니다.
구조를 단순화하면 이렇습니다:
- 탐색 단계: ROM 바이너리를 읽고 텍스트처럼 보이는 영역을 식별. 알려진 인코딩 패턴(ASCII, Shift-JIS 등)을 먼저 시도하고, 실패하면 빈도 분석으로 커스텀 인코딩 테이블을 추정.
- 추출 단계: 확인된 오프셋과 인코딩 규칙을 바탕으로 텍스트를 CSV 또는 JSON 형태로 추출. 제어 코드는 플레이스홀더(`[WAIT]`, `[NAME]` 등)로 보존.
- 번역 단계: 추출된 텍스트를 LLM이 한글로 번역. 이때 공간 제약(최대 바이트 수), 게임 장르와 분위기, 캐릭터 말투 등을 프롬프트에 포함해 맥락을 보완.
- 삽입 단계: 번역된 텍스트를 원래 오프셋에 다시 기록. 길이 초과 시 에이전트가 자동으로 축약을 시도하거나 사용자에게 선택지를 제시.
- 검증 단계: 수정된 ROM을 에뮬레이터로 구동해 크래시 여부와 텍스트 깨짐을 확인. 가능하면 스크린샷 비교까지 자동화.
이 흐름을 무시하면, AI에게 단순히 "번역해줘"라고 요청할 때와 결과가 크게 달라집니다. 체계적인 방법론이 있어야 에이전트가 중간에 길을 잃지 않고 끝까지 완주할 수 있습니다.
실제로 따라해볼 수 있는 3단계
이 방법론에 관심이 생겼다면, 지금 당장 시작할 수 있는 단계가 있습니다. 완전 자동화보다는 반자동 워크플로우로 접근하는 것이 현실적입니다.
1단계 — 도구 환경 구성
먼저 `Tile Molester`, `Crystaltile2`, `HxD` 같은 ROM 편집 도구를 설치합니다. 이들은 수십 년간 한글화 팀이 써온 검증된 도구입니다. 여기에 Python 스크립트 환경을 추가해 바이너리 조작을 자동화할 준비를 합니다. Claude나 GPT-4o 같은 LLM API는 번역 단계에 연결합니다.
2단계 — 작은 게임으로 파이프라인 테스트
처음부터 대작 JRPG에 도전하면 실패합니다. 텍스트 줄 수가 수천 개이고 커스텀 인코딩이 복잡하기 때문입니다. 공개 도메인 게임이나 텍스트가 적은 아케이드 게임으로 파이프라인을 먼저 검증하세요. 성공 경험 하나가 방법론 전체를 검증해줍니다.
3단계 — 에이전트 스킬을 자신의 환경에 맞게 포팅
공개된 스킬 파일을 그대로 쓰기보다, 자신이 작업할 게임의 특성(플랫폼, 언어, 인코딩)에 맞게 수정합니다. 이 과정 자체가 방법론에 대한 깊은 이해를 가져다주고, 이후 프로젝트에 재사용할 수 있는 나만의 스킬 라이브러리가 됩니다.
왜 이 흐름이 중요한가 — AI 시대의 문화 보존
이 프로젝트가 단순한 기술 데모 이상으로 의미 있는 이유가 있습니다.
전통적으로 고전 게임 한글화는 소수의 헌신적인 자원봉사자에 의해 유지됐습니다. ROM 해킹 기술을 아는 사람, 일본어나 영어에 능통한 사람, 수개월을 무보수로 작업할 수 있는 사람이 동시에 충족되어야 했습니다. 그 결과 수천 개의 고전 게임 중 한글화된 것은 극소수입니다.
AI 에이전트가 방법론을 체계화하고 반복 작업을 자동화하면, 번역 능력과 열정만 있는 사람도 한글화에 기여할 수 있는 시대가 열립니다. ROM 해킹 기술의 진입 장벽이 낮아지는 것이죠. 이는 단순한 게임 취미를 넘어 디지털 문화 유산 보존이라는 가치와도 맞닿습니다.
이 흐름을 다른 각도에서 보면, 에이전트 스킬 설계 방식의 좋은 레퍼런스이기도 합니다. 복잡한 도메인 지식을 AI가 실행 가능한 단계로 분해하는 방법론은, 게임 한글화 외에도 법률 문서 번역, 기술 매뉴얼 현지화, 소프트웨어 주석 한글화 등 다양한 분야에 적용할 수 있습니다.
6개월 뒤, 이 방식이 확산된다면 어떻게 될까요? 지금 방법론을 이해하고 자신의 워크플로우에 적용해둔 사람은 훨씬 앞선 위치에 있을 겁니다. 고전 게임 한글화는 시작점일 뿐입니다.
댓글