게임과 관련된 글이나 영상을 보신 경험이 있으시다면, 한 번 쯤은 지나치게 상업성을 추구하는 게임을 비판하는 내용을 보신 적이 있으리라 생각합니다. 소액 결제, 사행성 조장, DLC 유료화 등의 단어들만 봐도 알 수 있듯이, "나쁜 게임"이라는 단어가 주는 이미지는 대체로 상업성 추구와 연결되는 경우가 잦습니다. 이처럼 "상업성을 추구하는 게임"을 비판하는 내용이 많은 것에 비해, "대중화를 추구하는 게임"을 비판하는 내용은 찾기 쉽지 않습니다. 비판은 커녕, "대중성"이라는 단어는 대중친화적인 게임, 모두가 함께 즐길 수 있는 게임, 과 같이, 항상 긍정적 이미지와 연결되어 왔습니다. 이는 어떻게 보면 당연한 현상입니다. 게임이 대중화된다면 많은 사람들에게 게임이라는 문화를 알릴 수 있게 되고, 좋아하..
"적을 조준하고 쏜다" 이 단순하고도 중독적인 플레이방식은 FPS 장르를 지난 몇 십년 동안 가장 인기있는 게임 장르중 하나로 자리매김하게 만들었습니다. 오늘날 FPS의 명맥은 끊기기는 커녕, 어느 때보다도 다양한 형태로 이어져 내려오고 있습니다. 오버워치 (병과 기반 하이퍼 팀 FPS) 배틀그라운드 (배틀로얄 FPS) 레인보우 식스 시즈 (병과 기반 택티컬 팀 FPS) 둠 이터널 (싱글 플레이어 하이퍼 FPS) 콜 오브 듀티 워존 (택티컬 FPS) 발로란트 (병과 기반 하이퍼/택티컬 팀 FPS) 등 다양한 장르의 FPS 게임들이 대중의 사랑을 받으며 성공을 거두고 있습니다. 그러나 여기, 홀로 웃지 못하는 FPS 장르가 하나 있습니다. 한 때 FPS 전체를 대표했던 장르이자, FPS의 최전성기를 이끌던..
지오파이트 게임 소개 - 링크 왜 C/C++이 아니라 파이썬으로 만들었나요?사실 지오파이트를 파이썬으로 작성한 가장 큰 이유는 제가 대학에 입학해 생애 처음으로 접한 프로그래밍 언어가 파이썬이었기 때문입니다. 지오파이트 개발을 시작한 건 대학교 1학년 1학기였고, 제가 당장 가장 능숙하게 사용할 수 있는 언어는 파이썬이었습니다. 자연스럽게 지오파이트도 파이썬으로 작성하게 되었습니다. 물론 파이썬을 선택한 게 단순히 이 때문만은 아닙니다. 또 하나의 이유는 바로 생산성입니다. "게임 로직의 복잡성을 통한 전략의 다각화"를 추구하는 정통 로그라이크 장르의 특성상, 지오파이트 역시 굉장히 복잡한 게임 로직을 가지고 있습니다. 이처럼 게임 로직이 복잡한 고전 로그라이크 장르의 게임은 개발하는데 상당히 오랜 시간..
AsciiArena 2020년 4월 경, 프로그래밍을 처음 접하고 얼마 지나지 않아 제작을 시작했습니다. 순수 파이썬만을 사용해 제작했으며, 지오파이트의 모체가 되는 게임입니다. 원래 이 게임의 기획안은 로그라이크가 아닌, 이차원 그리드 위에서 캐릭터들끼리 전투를 하는 단순한 게임이었지만, 제작하며 좀 더 욕심이 생겨 로그라이크로 개발 방향을 변경하게 되었습니다. 콘솔창 위에 문자를 띄우는 방식으로 그래픽을 출력하며, 제가 아직 객체지향의 개념을 익히기 전이라 상속과 같은 OOP의 개념을 사용하지 않고 제작되었습니다. (3천줄 정도의 .py 파일 하나 위에서 모든 게임 로직이 다 동작합니다.) 아주 원시적인 수준의 패스파인딩, 엔티티 별 속도 차별화, 인벤토리, 근접 및 원거리 공격, 로그 등 기초적인 ..
이번 포스트에서는 "게임 속 스토리"에 대해 다뤄볼 생각입니다. 본격적인 내용을 다루기 전에, 게임에 있어 스토리란 그저 부가적인 요소에 불과하다고 바라보는 시각 또한 존재한다는 점을 짚고 넘어가고 싶습니다. "비디오 게임에게 스토리란, 포르노 영화에서의 스토리와 같다. 스토리가 있을 것이라고 짐작할 순 있지만, 크게 중요하지 않다." 라는 존 카멕의 말은 두고두고 회자될 정도로 수많은 논란을 불러일으킨 말이고, 해당 발언을 지지하는 측과 반대하는 측으로 나뉘어 공방을 벌이는 모습은 오늘날에도 심심치 않게 찾아볼 수 있습니다. 저는 개인적으로 게임에는 스토리가 굉장히 중요한 부분으로 작용할 수 있다고 생각합니다. 하지만 동시에 스토리가 긍정적인 효과를 줄 수 있는 게임들과 그렇지 않은 게임이 모두 존재한..
개발 기간: 2020. 12월경 개발 소요시간: 3시간 개발 엔진: 유니티 개발 언어: C# 개발 목적: 유니티 엔진의 기초적인 사용법을 익히기 위해 게임 소개: "Aerial Rocket"이라는 가제로 제작된 게임 프로토타입입니다. 로켓을 쏴서 적을 공중에 띄우고 공중의 적을 맞추어 죽이는 하이퍼FPS 게임을 목표로 시험삼아 제작해보았으며, 완성된 게임을 만들기보다는 중요한 기능들을 구현해보는 데 초점을 두었습니다. 안정적으로 작동하는 1인칭 플레이어 컨트롤러, 투사체 발사 기능, 로켓 넉백, 로켓 점프 등 게임의 코어 요소들을 제작해보았고, Mirror API를 활용해 LAN 서버를 통한 아주 간단한 멀티플레이 기능도 추가해보았습니다. (서버 관련 API를 사용해보는 것에 의미를 두었기 때문에 제대로..
어느덧 2020년도 끝나가네요... 어느 때보다도 정신없이 한 해가 지나간 것 같습니다. 2020년은 게임이라는 매체에게도 다사다난했던 해였습니다. 게임 산업은 2020년을 기점으로 큰 전환점을 맞았다고 말할 수 있을 정도로 2020년의 다양한 사건들이 게임 전반에 미친 영향은 대단히 크다고 생각합니다. 코로나로 인한 신규 게이머 대거 유입을 비롯해 플레이스테이션5와 엑스박스X의 출시, 언리얼 엔진5의 공개, 각종 문제들에 휘말린 여러 트리플A 게임들까지, 2020년은 굵직굵직한 사건들로 게임 산업 전반을 뒤흔들어 놓았습니다. 하지만 개인적으로는 2020년에서 주목해야 할 가장 흥미로운 부분은 바로 "코로나로 인한 게임 트랜드의 변화"라고 생각합니다. 2020년의 어떻게 게임 트랜드는 어떠했는지, 코로나..
개발 기간: 2020. 9월 경부터 시간 날때마다 틈틈히 제작 개발 소요시간: 약 30시간 개발 엔진: 언리얼 엔진4 개발 언어: C++ 90%, 블루프린트 10% 개발 목적: 언리얼 엔진의 사용법과 언리얼4의 C++ 문법들을 익히기 https://www.youtube.com/watch?v=W14sIYrtRhE https://www.youtube.com/watch?v=W14sIYrtRhE 구현한 기능들: AnimMontage, Blendspace를 이용한 캐릭터 애니메이션 캐릭터 걷기, 달리기, 점프 체력, 스태미나 시스템 UMG를 사용한 간단한 UI 접촉 시 파괴되는 엔티티들 (폭탄, 동전, 검) 스위치를 밟으면 열리는 문 움직이는 플랫폼 간단한 효과음 사용 플레이어를 쫓아오는 AI 콜리전을 이용한 근..
> "게임의 첫 10분은 그 뒤 이어지는 10시간만큼이나 중요하다" 라는 말이 있습니다. 네, 그냥 제가 만들어 낸 말입니다. 하지만 이는 꽤 사실에 가까운 말이기도 합니다. 사람의 첫 인상이 중요하듯이, 게임의 첫 인상은 게임 내적으로 굉장히 중요한 역할을 맡습니다. 더구나 그 게임이 앵그리버드 같은 캐주얼한 게임이 아니라, 플레이어가 게임 속 세계에 몰입해야 하는 종류의 게임이면 더더욱 그렇습니다. 오늘 제가 소개해드릴 게임도 그런 종류의 게임입니다. 그리고 이 게임은, 비디오 게임의 역사에서도 손꼽힐 정도의 그야말로 "게임 도입부의 교과서" 같은 완벽한 도입부를 보여줍니다. 제가 소개할 게임은 바로 바이오쇼크 입니다. 더보기 사실 바이오쇼크는 도입부 뿐만 아니라 게임 전체적으로 뛰어난 퀄리티를 보여..
로그라이크의 아버지, 로그(Rogue) 이 게임의 제목은 , 한국어로는 정도가 되겠습니다. 로그는 그 제목처럼 플레이어가 도적이 되어 던전 곳곳을 탐험하는 게임입니다. 플레이어의 목표는 던전 최하층에 있는 "옌도의 아뮬렛"이라는 아이템을 지상으로 가져오는 것이며, 이 과정에서 플레이어는 수많은 몬스터들과 마주하게 됩니다. 오늘날의 관점에서 보면 로그는 그다지 특별할 게 없는 게임일지도 모릅니다. 그러나 로그는 둠, 테트리스와 어깨를 나란히 할 만큼 게임사에 큰 족적을 남긴 게임이고, RPG 장르에도 막대한 영향을 끼친 게임입니다. 로그는 현대적인 시점에서 보았을 때 부족한 부분이 많은 게임입니다. 로그의 그래픽은 아스키 코드(ASCII)로 이루어져 있고, UI는 오직 숫자와 문자들로만 제작되어 있습니다...
Geophyte (지오파이트) 장르: 정통 로그라이크 개발 기간: 2020. 04. 08. ~ 2021.11.05. (업데이트 잠정 중단) 알파 릴리즈: 2021. 10. 04. 개발 엔진: 없음. tcod 라이브러리 기반 자체제작 프레임워크 사용중 개발 언어: Python 3 (관련 글) 사용 라이브러리: tcod (libtcod와 SDL의 python wrapper), numpy, PyAudio 개발 목적: 취미 무료 다운로드: https://gamesm1th.itch.io/geophyte Geophyte by gamesm1th An Open-source Traditional Roguelike gamesm1th.itch.io 소스 코드: https://github.com/hagukin/Geophyte..
Last Hero와 Final Hero는 제가 초등학교 2~4학년 정도였을 때 RPG MAKER XP로 제작한 쯔꾸르 게임입니다. 두 작품 모두 끝까지 완성하지는 못했지만, 2시간 이상의 플레이 타임 정도 분량은 제작했던 걸로 기억합니다. Last Hero는 제가 초등학교 때 만든 공책 게임(공책에 그림 등을 그려 진행하는 게임)을 PC로 옮겨보려는 시도에서 탄생한 게임이고, 제가 생애 처음으로 만든 PC게임입니다. Final Hero는 Last Hero에 기능과 스토리를 추가해서 만든 게임으로 세계에 흩어진 몇 개의 스톤을 모아 악마를 봉인하는 게 주된 내용입니다. (지금 생각해보면 어벤져스의 플롯과 상당히 유사하네요) Final Hero에는 간단한 이펙트와 AI, 그리고 전투 시스템이 마련되어 있습니..