1차 공개일 · 8월 18일1차 강의가 모두 공개됩니다
TECH 으로 돌아가기
TECH HACKER NEWS 오늘 8분 읽기 42 READS

BBS 도어 게임 'SRE'를 만든 아미트 파텔, 코드로 배운 게임 설계의 원리

BBS 도어 게임 'SRE'를 만든 아미트 파텔, 코드로 배운 게임 설계의 원리
SOURCE IMAGE · HACKER NEWS

1990년, 고등학교를 졸업하고 대학에 들어가기 전 여름에 한 청년이 BBS 도어 게임 '솔라 렐름스 엘리트(Solar Realms Elite, SRE)'를 완성했다. 만든 사람은 아미트 파텔(Amit Patel)로, 이후 프로그래밍 언어, 과학 장비, 데이터 분석과 시각화, 복잡계 시뮬레이션, 경제 모델링, 인공지능, 웹 소프트웨어까지 폭넓은 분야를 거쳤고 지금은 게임 개발자를 위한 인터랙티브 참고 자료를 만들고 있다. 2013년 1월 이메일로 진행된 인터뷰에서 그는 이 게임이 어떻게 자신의 학습 방식과 관심사에서 자라났는지를 담담하게 풀어냈다. 국내 실무자에게도 낯설지 않은, '제품이 곧 학습 실험이었던' 개발자의 궤적이다.

만들면서 배운다는 태도

파텔의 출발점은 초등학교의 TRS-80과 집에서 쓰던 코모도어 64였다. 테이프 드라이브로 프로그램 하나를 불러오는 데 30분이 걸리던 시절, 그는 도서관에서 빌린 책과 컴퓨터에 딸려 온 매뉴얼로 독학했다. 특히 데이비드 알(David Ahl)의 'Computer Basic Games'는 프로그램을 직접 입력하고, 실행해 보고, 규칙을 바꿔 다시 평가하는 순환을 가능하게 해 준 텍스트북이었다. 그는 '읽고 → 실험하고 → 다시 읽는' 방식이 가장 잘 맞았다고 말한다. IBM PC-XT에서는 볼랜드의 저렴한 도구, 즉 50달러짜리 터보 파스칼을 통해 BASIC 바깥으로 나섰고 C, C++, 프롤로그까지 익혔다. 수백 달러짜리 전문 도구가 흔하던 시대에 이 가격 접근성이 그의 학습 폭을 결정했다는 대목은, 도구의 비용이 곧 진입 장벽이라는 오래된 진실을 다시 확인시킨다.

이 태도는 SRE의 세부에 고스란히 남아 있다. 설정 프로그램에는 메뉴, 대화상자, 겹치는 창, 제목 표시줄, 단축키, 스크롤바가 그가 직접 만든 UI 툴킷으로 구현됐다. 원격 접속자에게는 단축키를 강조한 메뉴가 제공됐고, '3k'를 입력하면 '3000'으로 확장되는 입력 필드도 있었다. 숫자에 콤마를 넣고, '1 planet'과 '1 planets'의 복수 처리를 정확히 다루는 등 세부에 집착했다. 겉으로 드러나지 않는 최적화도 있었다. 색이 자주 바뀌는 화면을 위해 문자 단위로 최적의 ANSI 코드 시퀀스를 계산하는 색상 최적화기를 짰고, BBS와 게임이 메모리를 공유했기에 오버레이로 용량을 줄였으며, 플레이어의 게임플레이·상태 표시줄·시삽 명령이 각각의 협력적 스레드로 도는 자체 멀티태스킹 시스템까지 넣었다.

조건으로 프로그래밍한다는 발상

인터뷰에서 가장 흥미로운 대목은 그가 중학생 시절 컴퓨터 매장에서 울티마의 창작자 리처드 개리엇을 만난 일화다. 개리엇은 퍼즐을 '취해야 할 행동'이 아니라 '충족해야 할 조건'으로 프로그래밍했기에 여러 해법이 가능했다고 설명했다. 협곡 건너편의 레버를 텔레키네시스로 당겨 다리를 내리도록 의도한 퍼즐에서, 한 테스터는 동료를 죽여 시신을 건너편에 던지고 부활 주문을 걸어 그 동료가 레버를 당기게 하는 전혀 다른 해법을 찾아냈다. 만약 '플레이어의 행동'을 트리거로 짰다면 불가능했을 일이, '레버의 상태'를 트리거로 삼았기에 가능했다. 명사-동사 구조의 UI 이야기와 함께 이 대화는 파텔을 객체지향적 사고로 이끌었다. 상태 기반 설계가 행동 기반 설계보다 유연하다는 이 교훈은 오늘의 게임 로직과 이벤트 시스템 설계에도 그대로 유효하다.

연속과 이산, 그리고 반복의 힘

SRE는 행성 1000개든 1001개든 큰 차이가 없는 '연속적' 성격의 객체를 다뤘다. 파텔은 그 반대편, 즉 개체 하나하나가 고유하고 중요한 '이산적' 세계를 탐구하고 싶어 했다. 그래서 체스에서 영감을 얻은 '플래니터리 컨퀘스트'는 유한한 판과 유한한 말을, 미출시작 '실버 킹덤스'는 모든 마을에 이름과 특성을 부여했다. 화면 기반에 방향키를 쓰는 UI 실험도 플래니터리 컨퀘스트에서 시도했다. 그러나 이 실험작들은 끝내 SRE만큼 다듬어지지 않았다. 이유는 단순하다. SRE는 사용자가 많아 피드백이 끊이지 않았고, 그 피드백으로 계속 튜닝과 밸런싱을 거치며 나아졌다. 사용자와 반복이 없는 프로젝트는 아무리 아이디어가 좋아도 성장하지 못했다는 것이 그의 솔직한 회고다.

주목할 점은 파텔이 표절이나 모방이 아니라 독립적 설계를 통해 유사해 보이지만 전혀 다르게 플레이되는 게임을 만들었다는 사실이다. 그는 유사 장르인 '스페이스 엠파이어 엘리트'를 제대로 플레이한 기억이 없다고 말한다. 그래서 그 게임의 BBS 간(inter-BBS) 협력·경쟁 구조를 이해하지 못한 채, 함무라비류 게임을 오래 만들며 쌓은 자기만의 설계를 적용했다. 그 결과 SRE는 경제·군사·외교·인구 사이의 트레이드오프를 개인이 연구하는 성격이 강한 게임이 됐다.

비즈니스가 만든 완성도

파텔은 SRE를 상품으로 판 경험 자체가 큰 배움이었다고 강조한다. 장기적인 고객 지원, 여러 해에 걸친 코드 유지보수, 버전 관리, 부정행위 방지와 암호화, 크랙과 불법 복제 대응, 마케팅과 가격 책정까지 학생이 좀처럼 겪지 못하는 것들을 몸으로 익혔다. 흥미롭게도 그는 무료로 뿌렸을 때보다 유료로 팔았을 때 더 많은 사람이 게임을 즐겼다고 회고한다. 수익과 지속적인 상호작용이 그를 이 프로젝트에 더 많은 시간과 에너지를 쏟게 만들었고, 결국 게임을 훨씬 낫게 만들었다는 것이다. 사업의 압력이 오히려 품질의 동력이 되는 역설이다.

SRE는 파텔 혼자의 성과가 아니었다. 형인 메훌이 게임을 완성해 셰어웨어로 팔자고 독려했고, 기술은 파텔이 사업은 메훌이 맡는 분업으로 SRGames가 시작됐다. 이후 둘은 각자 기술과 사업을 겸했고, 파텔은 모뎀 통신·BBS 연동·UI·메시징·암호화 같은 인프라 라이브러리를 제공해 메훌의 게임(AC6, BRE)이 그 위에 얹히도록 했으며 일부는 무료로 공개해 다른 개발자들이 게임을 만들 수 있게 했다. 등록 방식은 개인이 아니라 BBS 시삽 단위였다. 파텔은 SRE와 다른 일을 합쳐 4년간 연 6천 달러 넘는 학비를 댔다고 추정하는데, 이는 1500건이 넘는 등록에 해당한다. 오늘의 게임 규모와 비할 바는 아니지만, 학습을 위한 실험으로 시작한 취미가 대학 학비를 감당하는 사업으로 자라난 여정은 그 자체로 하나의 설계 사례로 읽힌다.

SOURCE · HACKER NEWS
원문 전체 보기 → https://breakintochat.com/blog/2013/02/18/amit-patel-creator...
SHARE
NEXT · CHOOSE

변화를 읽었다면,
내가 만들 수익 구조를 고릅니다.

정보를 더 모으는 데서 멈추지 않고, 광고·외주·판매·중개·구독 중 내 상황에 맞는 출발점을 정해보세요.

21가지 수익 구조 살펴보기
처리 중...