핵심 요약
- 한 개발자가 2000년대 초반 도서관에서 빌려 하던 고전 CD 게임을 최신 하드웨어에서 구동하고자 리버스 엔지니어링에 도전했습니다.
- 가짜 더미 파일이 섞인 복제 방지 트릭부터 매크로미디어 디렉터 기반의 CD 검사 스크립트까지 여러 단계의 락을 분석해 우회했습니다.
- 과거 기술적 한계로 실패했던 추억의 게임 복제를 현재의 개발 지식을 활용해 직접 패치해 나가는 과정을 흥미롭게 풀어냈습니다.
요약 2000년대 초반 동네 도서관에서 빌려 한창 즐겼던 추억의 어드벤처 게임을 현대 PC에서 다시 구동하기 위해 온갖 복제 방지 기술과 씨름한 한 개발자의 역공학 과정이 화제를 모았습니다. 작성자는 어린 시절 아빠의 윈도우 95 컴퓨터로 즐겼던 독일 포인트 앤 클릭 게임인 '핀두스와 무클라들(Findus bei den Mucklas)'을 반납 후에도 계속하고 싶어 공CD에 구우려다 실패했던 기억을 떠올리며, 개발 역량을 갖춘 지금 다시 복원에 도전했다고 밝혔습니다.
과거에 구웠던 CD는 복제 방지 락과 ODD 부재로 쓸 수 없었지만, 다행히 인터넷 아카이브(archive.org)에 보존된 디스크 이미지를 확보하면서 작업이 시작되었습니다. 하지만 복원 과정은 결코 순탄치 않았습니다. 파일 추출 단계부터 고의로 깨진 디렉터리 항목을 만들어 0바이트나 256바이트짜리 가짜 더미 파일을 섞어두는 첫 번째 복제 방지 장치를 마주쳤고, 여러 추출 툴을 동원해 정상 파일을 하나하나 골라내야 했습니다.
이후 설치 프로그램을 실행해 게임을 켰지만, 두 번째 관문인 'CD를 넣으라'는 에러 팝업이 가로막았습니다. 설정 파일을 추적해 실행 파일 내부를 역공학 분석한 결과, 해당 게임이 과거 멀티미디어 저작 도구였던 매크로미디어 디렉터(Macromedia Director) 기반의 프로젝터 실행 파일이라는 사실을 밝혀냈습니다. 실행 파일 끝부분에 실제 게임 데이터인 .dxr 파일이 합쳐져 있는 구조였으며, 전용 디컴파일러 툴과 헥스 에디터를 활용해 내부 스크립트와 복제 방지 루틴을 하나씩 우회하고 패치해 나가는 흥미진진한 기술적 여정을 상세히 공유했습니다.
Sponsored · 광고