아래 글은 절대 제가 쓴게 아니고 제가 예전에 어떤 현역기획자분께 메일보내서 답장 받은 글입니다.
그리고 허락없이 이런 공개게시판에 글을 올리는 점, 그분께 양해를 부탁드립니다.





전에도 몇번 글쓴적이 있는데

저는 기획은 프로그래밍 과정은 필수라고 생각하는 입장입니다.
프로그램적 마인드가 없는 기획은 그냥 아이디어일 뿐입니다.

그런건 게임 플레이하는 유저라면 다들 하나씩 갖고 있는겁니다.
근데 그걸 못해보는건; 막상 만들어 보려면 진행순서가

체계적이지 않고 빈틈이 많아 허술하기 때문입니다.
이걸 채워주는 것이 바로 프로그래머적인 사고 입니다.

"준비사항, 진행순서, 예외처리, 예상결과" 이런 요소가

깔끔하게 들어있어서 기획서만 보더라도 머리속에서 게임이

완벽하게 돌아갈수 있어야 비로서 기획서라 할 수 있을 것인데...
국내 기획하시는 많은 분들이 이쪽 부분에 치명적인 결함을

가지고 있습니다.

그래서 프로그래밍을 공부해야겠다 생각하시는 분들도 많은데
안타까운 점은 개인이든, 학원이든, 학교든간에 C++, 다이렉트 X, 소켓 프로그래밍 코스를 밟아가면서
좌절하는것입니다.
이런 걸 익혀두면 화면에 그림은 찍어볼수있겠지만;

기획에 크게 도움이 되지 않습니다.

기획자분들이 봐야할 프로그래밍 공부로 좋은 것은

"머드(MUD)" 나 "넷핵"같은 텍스트 게임 프로그래밍

이라고 생각합니다.
비록 현란한 그래픽이 없어 재미없어 보이겠지만;

게임 기획에 필요한 핵심적인 부분,
즉 플로우 흐름 제어, 예외처리, 결과예상, 전투처리, 인공지능

등등은 모두 다루어볼 수 있습니다.
반면 그닥 공부할 전문적인 지식은 거의 없습니다.

그냥 언어 사용법과 입출력 방법만 배우면 끝입니다.
남은 건 그냥 머리속 생각을 코드로 옮기는 작업일 뿐입니다.

(코드로 짜면 프로그래밍, 워드에 쓰는걸 기획서 쓴다라고

표현하죠. )





ps.
만약 기획자를 아이디어 내는 사람으로 생각한다면;

전국 pc방 돌면서 게임 플레이하시는 분들 인터뷰 하는쪽이
훨씬 더 현실적이고 값진 아이디어를 더 많이 수집하실수

있을겁니다. 온라인 게임 유저분들을 만나보면 엄청난 분들

많습니다.








--------------------------------------------------------------------------------


Forward:







알고싶은 것은



"머드(MUD)" 나 "넷핵"같은 텍스트 게임 프로그래밍



이 부분에서 텍스트 게임 프로그래밍을 공부하려면

기존의 게임 프로그래밍 공부와 배울 것이 뭐가 다른지

자세히 알고싶습니다.

(아무래도 일반적인 게임 프로그래머가 배울 분량에 비해
아주 적지않을까 예상이 되는데요)


텍스트 게임 프로그래밍을 하려면 어떤 언어를 배우는 것인지...

보통 게임프로그래머들이 배우게되는 VC++ 같은 언어가 아니고

뭔가 다른 언어인지..


시간 나실 때 답장해주시면 고맙겠습니다.









--------------------------------------------------------------------------------




Reply:







안녕하세요.

기존 일반적으로 이야기 되는 게임 프로그래밍하면
그래픽에 관련된 기술 구현에 치중된 경우가 많은데;
기획을 지망하시는 분들의 경우에는 별달리

큰 도움이 되지 않는 경우가 많습니다.
그냥 대학교로 이야기하면 문과생이 공대관련 교양 수업을 듣는데;
공업수학을 푸는 느낌이랄까요;

기획에서 필요한 가장 중요한 프로그래밍 숙달의 의의는
머리속에 내용을 프로그래밍 언어라는

논리적이고 체계적인 언어로 요점만 표현하는 것입니다.
일반 언어의 경우에는 상당히 애매하고

다의적으로 나오는데다가 서술형으로 표현되기때문에
프로그래머로 하여금 여러번 이해하게 만들 가능성이 높습니다.


프로그래밍 공부할때 목표가 있고 없고는 습득 과정에 있어서

상당히 중요한데 이런걸 이뤄내기 위해 게임을 만들어보는 건

상당히 흥미로운 목표입니다.
문제는 게임을 만들기 위해서는 그래픽 데이터를 만들거나

코딩하는것이 필요한데 이것은 다년간 상당히 기반의

지식과 경험이 요구되기때문에 기획을 공부하는 사람 입장에서는 상당히 어려운 일입니다.

반면 텍스트 게임을 만들때 순수한 프로그래밍 기능만

필요로 하기때문에

입력, 출력, 조건 처리만 알면 구현이 충분히 가능한데다
전투처리라던지, 흔히 str,dex,int, hp, mp 라 불리는 status 처리,
퀘스트 처리 등등 실제 기획할때 진행되는 내용과

상당히 밀접한 관련이 있습니다.

처음에는 무리겠지만 어느정도 실력이 쌓이면 주변의 도움을

얻어 그래픽과 사운드를 붙이는걸 해보는것도 충분히 가능합니다. (텍스트 만으로도 충분히 게임성이 있고요. )

언어 선택 문제는 텍스트는 모든 언어가 지원하는 부분이기때문에
제일 만만해 보이는 걸 선택하시면 됩니다.

c언어는 포인터 부분이 너무 난해하기 때문에 제일 비추천하고요. basic 이나 java, python 등을 추천합니다.
특히 python의 경우엔 다른 언어와의 연동이 상당히 쉽고

체계적으로 작성할 수 있기때문에 가장 활용성이 좋은 언어가

아닐까 싶습니다.

공부 방식은 일단 nethack 이나 공개된 머드 게임을 하나하나

분석하기보다는 실행해서 플레이 해보시면서 비슷한 형태를

일부 구현해보시는걸 추천합니다.
만약 주변의 도움을 얻어 컴파일에 성공하셨다면

몇몇 기능들을 조정해가면서 게임을 바꿔가면 각 기능들이

돌아가는 형태를 직접 몸으로 느껴보시는 것도 큰 도움이 되리라

생각됩니다.

좀더 쉬운 방식으로는 mmorpg 게임에 흔히 나오는

퀘스트를 구현해보시는 것도 재밌는 방법일 수 있고요 ~(-_-)~

그럼 좋은 하루 되시길 빕니다.