돈 안 내고도 즐기는 게임: 오픈소스로 다시 태어난 명작들

장르별 정리도 좋은데요, 개발 언어별로 정리가 되면 수업에서 쓰기 더 좋겠다고 생각했습니다. 그럼에도 불구하고, 어마어마하게 방대하고 훌륭한 자료라고 생각해서 공유합니다.

쉬운 설명

이번에 소개해 드릴 내용은 쉽게 말해 '소스 코드까지 무료로 다 공개된 게임 모음집' 깃허브(GitHub) 저장소 이야기예요. 예전에 큰 인기를 끌었던 롤러코스터 타이쿤이나 테마 호스피탈 같은 명작 게임들을 누군가 코드로 처음부터 다시 만들어 무료로 공유해 둔 건데요. 유명 맛집의 비법 레시피를 그대로 재현해서 누구나 볼 수 있게 인터넷에 올려둔 것과 비슷하다고 보시면 됩니다. 게임을 단순히 즐기는 분들은 물론이고, 실제 코드가 어떻게 짜였는지 궁금한 분들에게도 아주 흥미진진한 구경거리가 될 거예요.

요약

'bobeff'라는 개발자가 운영하는 'open-source-games'라는 깃허브 저장소에는 처음부터 오픈소스로 만들어진 게임들과, 원래는 상업용 판매 게임이었지만 소스 코드가 공개되거나 다시 구현된 프로젝트들이 장르별로 깔끔하게 정리되어 있어요.

우주 탐험 게임인 Endless Sky와 Pioneer, 젤다 시리즈를 다시 만든 프로젝트들, 도시 건설 시뮬레이션인 OpenTTD와 OpenRCT2, 그리고 1인칭 슈팅(FPS) 게임인 Xonotic과 AssaultCube까지 정말 다양한 장르가 모여 있습니다. 각 게임마다 원본 소스 코드 링크와 함께 어떤 게임 엔진을 썼는지도 적혀 있어서, 게임을 플레이하는 것을 넘어 '이 게임은 대체 어떻게 만들어졌을까?'를 파헤쳐 보고 싶은 분들에게 딱 맞습니다.

이 저장소가 특별한 이유는 게임 개발의 문턱을 확 낮춰준다는 점이에요. 유명 상업 게임이 어떤 구조로 동작하는지 실제 코드를 들여다볼 기회는 정말 흔치 않잖아요? 그런데 이런 오픈소스 재구현 프로젝트 덕분에 누구나 공부 삼아 코드를 분석하고 직접 고쳐볼 수도 있게 된 거죠. 특히 원작 게임을 사람이 읽을 수 있는 코드로 되돌려 놓은 'Twilight Princess 디컴파일 프로젝트' 같은 시도는, 완성된 결과물을 거꾸로 뜯어보며 원리를 파악하는 리버스 엔지니어링(reverse engineering)을 공부할 때도 큰 도움이 됩니다.

활용 포인트

프로그래밍을 공부하는 학생이나 주니어 개발자라면, 이 목록에서 마음에 드는 게임을 하나 골라 깃허브 저장소를 직접 내 컴퓨터로 복사(clone)해 온 뒤 빌드해 보는 것을 추천해요. 예를 들어 OpenRCT2나 OpenTTD 같은 시뮬레이션 게임을 살펴보면 도시 건설이나 경제 시스템의 복잡한 규칙을 코드로 어떻게 풀어냈는지 배우기 좋고, Xonotic이나 Cube 2: Sauerbraten 같은 FPS 게임은 여러 사람이 동시에 즐기는 실시간 멀티플레이어 네트워크 기능을 공부하기에 안성맞춤입니다. 게임 기획자라면 CorsixTH나 Cytopia처럼 원작을 새롭게 재해석한 프로젝트들을 살펴보면서, 옛날 원작의 시스템을 현대적인 코드로 어떻게 다시 풀어냈는지 비교하고 분석하는 자료로 써도 좋습니다.

취미로 직접 게임을 만들어보고 싶은 분들에게도 훌륭한 교재가 됩니다. 이 목록에 포함된 CUBE 엔진이나 Godot(고도) 엔진을 쓴 프로젝트 코드를 참고하면, 나만의 첫 프로토타입 게임을 좀 더 수월하게 만들어볼 수 있거든요. 옛날 명작 어드벤처 게임들을 최신 컴퓨터 운영체제에서도 매끄럽게 돌아가게 해주는 ScummVM 프로젝트는, 고전 게임을 영구히 보존하고 되살리는 데 관심 있는 분들에게 훌륭한 길잡이가 되어 줍니다. 실무 개발자라면 오픈소스 라이선스 정책을 어떻게 지켜야 하는지, 커뮤니티 기여(컨트리뷰션)는 어떤 식으로 주고받는지 참고하는 용도로 들여다보셔도 좋습니다.

주의 사항

이 저장소는 관리자가 계속해서 내용을 업데이트하는 곳이라, 시간이 지나면 특정 프로젝트의 개발이 활발하게 이어지고 있는지 아니면 중단되었는지 상태가 바뀔 수 있어요. 또한 일부 프로젝트는 코드만 무료로 제공되고, 게임 그래픽이나 사운드 같은 리소스는 정품 게임을 따로 구매해 갖고 있어야만 실행되는 경우도 있습니다. 소스 코드만 오픈소스일 뿐 게임 속 알맹이(에셋)까지 완전히 공짜인 것은 아닐 수 있으니 주의 깊게 살펴보셔야 해요. 저장소의 링크나 프로젝트의 활성 상태는 언제든 달라질 수 있으므로, 프로젝트를 본격적으로 참고하기 전에 깃허브에서 최신 소식을 직접 확인해 보시는 것이 안전합니다.

자체 검증

본문에 언급된 Endless Sky, Pioneer, ScummVM, OpenRCT2, OpenTTD, Xonotic, AssaultCube 등의 게임 이름과 관련 설명은 원문 자료에 적힌 내용을 바탕으로 정확하게 정리했습니다. 우주 탐험, 도시 건설, FPS 등으로 나눈 장르 분류는 물론 CUBE, Godot, FIFE 등의 엔진 정보도 원문 기재 내용과 일치합니다. 다만 해당 저장소 관리자가 얼마나 자주 목록을 갱신하는지, 전체 등록된 프로젝트의 수가 정확히 몇 개인지는 제공된 원문 자료만으로는 확인할 수 없었음을 미리 알려드립니다.

태그

#오픈소스 #게임개발 #깃허브 #레트로게임 #리버스엔지니어링 #개발자 #취미프로젝트

원문

참고자료

← 새정보 전체 보기