CS:GO How to Design Gameplay Map Layouts (Complete In-Depth Guide)

CS:GO 게임 플레이에 쓰이는 맵을 어떻게 디자인해야 할까?(완벽하고 철저한 가이드)




안녕하세요, 라인스터입니다. 9번째 번역입니다. 예상치 못한 눈이 내리고 날이 풀리나 싶었는데 미세먼지가 가득한 날입니다. 이번은 글은 FPS 게임에서 사용되는 맵을 어떤 방식으로 디자인 해야 하는 가에 대한 가이드 글입니다. 기본적인 맵의 레이아웃을 설계하는 것부터 시작해서, 각종 격전 포인트를 설정할 때의 것까지 상세하게 작성되어 있습니다. 해당 글은 Worldofleveldesign에서 가져왔습니다. 원문 링크는 다음과 같습니다: http://www.worldofleveldesign.com/categories/csgo-tutorials/csgo-how-to-design-gameplay-map-layouts.php 역자의 가이드 및 잡설이 포함되는 내용은 (역자 주:)로 표기했습니다.






모두 글로 이루어진 튜토리얼이고, 기록합니다:

어떻게 Counter-Strike의 게임 플레이와 경쟁할 수 있는 맵을 디자인할 수 있을까?

(역자 주: 카운터 스트라이크는 Valve에서 발매한 FPS 게임입니다. 수많은 시리즈로 출시 되었으며, 넥슨 코리아에서 온라인 버전으로 출시 하기도 했습니다)


이 튜토리얼에서 당신이 배우게 될 것들입니다:


  • 게임의 중요한 요소들을 사용해서 맵의 레이아웃을 설계하는 방법
  • 전략과 선택을 제공하는 경로의 설정 방법
  • Choke point의 설정 방법(역자 주: 협곡과 같은 특정 지형적인 특색을 말합니다. 자세한 내용은 영문 위키피디아의 Choke Point 항목을 참고하세요)
  • 두 팀이 만나게 될 장소를 어떻게 결정하는가(Choke Point에서)
  • 어떻게 맵의 밸런스를 맞추는가?
  • 게임의 흐름과 속도 조절 방법
  • 기록: 카운터 스트라이크에 초점을 둔 예시를 제시할 것입니다. 하지만 공격과 방어의 형태나, 공격 혹은 탐색/파괴의 방식을 가진 멀티플레이어 맵을 디자인 하는 레벨 디자이너에게는 이 심층 가이드에서 큰 이득을 얻을 수 있을 것입니다.


카운터 스트라이크에는 긴 플레이 타임을 가진 많은 맵들이 있습니다. 서버는 1개 혹은 2개의 맵을 위해서 분리되어 있고, 계속해서 순환하지요. 약 10년간 카운터 스트라이크를 플레이한 후에, 전 스스로 질문을 던지기 시작했습니다. Chateau, prodigy 그리고 havana와 같은 맵들은 잊혀지는 반면에, dust, dust2, inferno, office, nuke같은 맵들은 왜 인기가 있을까요? 이런 맵들은 다른 맵들과 어떤 것들이 다를까요? (역자 주: 앞에 것들은 전부 카운터 스트라이크에 등장하는 맵입니다)


괜찮은 맵의 레이아웃에는 다음이 포함됩니다


  • 훌륭한 게임의 흐름과 속도 조절
  • 플레이어와 팀의 숙련도가 승패를 결정하고, 맵의 디자인에 있어서 한 쪽에 유리하게 돌아가지 않는 밸런스
  • 몇 번의 게임 플레이로 쉽게 배울 수 있도록 간단하고 기억하기 쉬운 맵
  • 일부 정식 맵의 게임 플레이와 경쟁 구도를 가질 수 있는 지 여부(Dust 2, Office, Nuke, Train, Inferno와 같이)
  • 다른 사람들과 즐길 있고, 다운로드하여 플레이할 있음
  • 길을 선택할 있는 전략이 포함됨
  • 다양한 방식의 플레이 스타일을 제공함(저격모드, 작은 , 투명모드)
  • 게임과 경쟁할 있는 게임 플레이
  • 일단 재밌어야


위에 서술한 것들은 경쟁력 있는 멀티 플레이 맵의 디자인 요소 중의 일부일 뿐입니다. 사실 많은 목록들이 존재하지만, 그것들을 전부 나열해보면 당신은 어떤 것들을 당신의 맵에 포함시킬 것인지에 대해서 혼란스러울 것입니다.


이제 서술한 내용은 카운터 스트라이크에 등장하는 맵의 어떻게 디자인 하는가에 대한 연구입니다. 경우 Counter-Strike: Global Offensive 예시로 사용할 것입니다. 하지만 이것은 출시된 어떤 Counter-Strike 버전이라도 통용됩니다.


저는 CS:GO 등장하는 유명한 맵들을 심층깊게 분석해볼 것이고, 이러한 맵들이 그런 구조로 디자인 되었는지 분석할 것입니다. 저는 어떤 것들이 좋은 맵을 만드는 , 그리고 좋은 게임 플레이와 게임의 흐름과 속도를 만드는 분석할 것입니다. 저는 여러분에게 여러분의 맵에 어떻게 해야 그러한 요소를 사용할 있는 말해줄 거에요.




가이드 글은 카운터 스트라이크를 플레이 하지 않는 사람들에게도 통용될까요?


, 공격과 방어의 형태나, 공격 혹은 탐색/파괴의 방식을 가진 멀티플레이어 맵을 디자인 하는 레벨 디자이너에게는 이 심층 가이드에서 큰 이득을 얻을 수 있을 것입니다. 제 통찰의 많은 부분은 수많은 멀티플레이어 게임을 해보면서 직접 학습한 것들입니다.


1인칭 슈팅 게임을 위한 좋은 멀티플레이어 레벨 디자인의 요소들은 크게 변하지 않습니다. 어떤 기술을 적용 하느냐는 차이가 있을 수 있지만, 핵심 요소는 그대로 유지 되지요.


튜토리얼에서 여러분이 배우게 것입니다:


당신이 카운터 스트라이크 또는 다른 fps게임의 레벨 디자인에서 어떤 것들을 배우기 위해서 중요한 것.


  • 게임의 중요한 요소들을 사용해서 맵의 레이아웃을 설계하는 방법
  • 전략과 선택을 제공하는 경로의 설정 방법
  • Choke point의 설정 방법
  • 두 팀이 만나게 될 장소를 어떻게 결정하는가(Choke Point에서)
  • 어떻게 맵의 밸런스를 맞추는가?
  • 게임의 흐름과 속도 조절 방법
  • 그리고 많은 것들이 있지요...



이제 시작해봅시다...


시작하기


맵의 레이아웃을 잡기 시작하는 것은 어렵지만, 꼭 그것을 해야할 필요는 없습니다.


당신을 당신이 만드는 맵을 위해서 아이디어를 짜내기 시작했습니다. 어떤 장소일까? 어떤 테마일까? 어떤 게임 타입일까?(폭탄 설치 모드 혹은 인질 구출 모드) 맵의 요소들이 어디에 위치하게 될까?


일단 당신이 아이디어를 구상한 후에, 바로 맵을 그리는 것은 불완전한 맵으로 가는 방법입니다. 어떤 사람들에게는 효과적이었겠지만, 경우에는 그렇지 않았어요. 튜토리얼을 참고해보세요. Why i’vs failed for years at level design and what I did about it(http://www.worldofleveldesign.com/categories/level_design_tutorials/why-i-failed-for-years-at-level-design-and-game-environments.php)


게임 플레이 레이아웃으로 시작하는 것이 최선입니다. 위에서 내려다본 시점에서 스케치를 하고, 그리고 당신의 맵이 어떤 플레이가 것인지 설계도를 그리세요. 단계에서 많은 것들이 정해져야 합니다.




  • 맵이 어떤 방식으로 플레이 되는가?
  • 맵이 어떤 전개로 흘러갈 것인가?
  • 맵에 얼마나 많은 길들이 포함되어 있는가?
  • 맵의 목표 지점이 어디에 있는가?
  • 캐릭터의 재생성 포인트가 어디에 있는가?
  • 어떤 팀이 공격을 하고, 어떤 팀이 방어를 하는가?
  • 폭탄 설치 지점에 얼마나 많은 경로가 제공되는가?
  • 목표 지점을 방어하기 위한 곳이 어디인가?
  • 맵에서 특수한 지형이 어디에 있는가?
  • 팀이 스폰 포인트에서 맵의 특수 지형이나 오브젝트에 도달해서 서로 만나기 위해서 초가 걸리는가?


글에서 끝에서 당신은 모든 질문에 답을 있게 겁니다.


이 단계에서 할 것:


  • 당신의 아이디어를 정의하세요. 당신이 만들고 싶은 지역과 테마는 무엇인가요? 당신의 맵은 어디에 위치해 있을까요?
  • 아이디어를 정의하기 위한 방법은 문서를 참고하세요
  • 저는 또한 사전 제작을 위한 설계도를 제공할 것입니다. 설계도는 제가 여러분들에게 어떻게 자신만의 레벨과 게임 환경을 디자인하는지 가르쳐주는 사용될 것입니다.


다음은 당신의 맵을 아는 거로 시작하는 중요한 단계입니다.


게임을 알아라


게임을 위한 좋은 맵을 만들기 위해서, 당신은 게임을 수도 없이 플레이해봐야 하고, 게임에 대해서 아주 작은 것까지 자세히 알아야 합니다.


“…게임 자체를 친밀감이 있도록 파악하고, 게임의 하위 섬세한 부분들도 모두 파악해서 당신이 지식들을 포지셔닝 있도록 하세요에픽 게임즈의 리드 레벨 디자이너인 JumBrown.


만약 당신이 게임의 구체적인 메카니즘을 알지 못한다면, 카운터 스트라이크나 다른 게임들의 좋은 맵들을 만들 없습니다. 당신은 FPS 레벨 디자인의 중요한 요소를 아마 알고 있을 겁니다. 하지만 만약 당신이 디자인한 맵을 많이 플레이 해보지 않는다면, 당신은 해당 게임의 잠재력으로 가득한 맵을 디자인할 없을 겁니다.


핵심 요소들은 당신이 좋은 맵을 설계하는 것을 시작할 도움이 것이지만, 당신은 해당 게임에 있는 게임 메카니즘과 레벨 디자인을 필요로 합니다.


카운터 스트라이크를 많이 플레이 하세요. 먼저 게임에 등장하는 모든 맵들에서 좋은 인상을 얻는 것이 우선입니다. 아래에 있는 독특한 맵들을 많이 플레이 하세요.


  • Dust
  • Dust 2 
  • Inferno
  • Italy
  • Office
  • Aztec
  • Nuke
  • Train
  • Mirage


위의 것들은 필수적인 맵들입니다. 각각의 맵들은 밸런스가 맞고, 재미있고, 경쟁 모드에 주로 사용되고, 시간을 떼우기에도 좋지요.


일단 당신이 공식 맵들에서 좋은 경험을 얻었다면, 유저들이 제작한 커스텀 맵들을 플레이 해보세요. Workshop 유저들이 콘텐츠를 만들어 내기에 아주 쉽게 되어 있습니다. 저는 가장 유명하고, 다운로드 수가 많은 맵에 초점을 맞출 거에요.




당신이 플레이를 , 당신은 각각의 맵을 관찰하고 분석해야 합니다. 맵에서 저항군과 테러리스트 플레이 해보세요.


여기 당신이 플레이 주의를 기울여야 하는 부분에 대한 것들이 있습니다.


  • 얼마나 많은 지형적인 특색이 존재하는가? 그들은 어디 있는가?
  • 맵의 밸런스가 맞는가? 맵에서 팀이 이득이 많은 경우가 있는가? 팀이 다른 팀보다 승률이 높은 경우가 있는가?
  • 게임의 흐름과 속도는 어떻게 되는가? 맵에서 경로는 충분하고, 각각의 지점은 전략적으로 연결되어 있는가?(선택지의 의미에서)
  • 맵의 특수한 지점에서 만나 전투를 시작하기에 얼마나 시간이 소모되는가?
  • 어떤 팀이 특수 지점을 먼저 획득하는가?(이점을 얻는가)
  • 각각의 팀이 스폰되고 만나기 위해서 얼마나 많은 길이 존재하는가?
  • 맵에서 얼마나 많은 길들이 서로 연결되어 있는가?
  • 맵이 다양한 플레이 스타일을 지원하는가? 어떤 맵은 스나이퍼에게 친화적이고, 어떤 맵은 근접 전투에 특화되어 있는가?


여기 제가 플레이 하는 것을 좋아하는 맵에 포함된 것들에 대한 레벨 디자인 노트가 있습니다.




여기 게임 플레이 타이밍에 대한 가지 노트가 있습니다. 각각의 팀이 특수 지점에서 만나기 위해서 얼마나 시간이 걸리느냐에 대한 것이지요.




일단 당신이 많이 플레이를 해보면, 당신은 게임에 대해서 많은 것들을 알게될 것이고, 성공적인 맵을 위해서는 어떤 게임 기술들이 요구되는지 알게 것입니다.


게임을 하는 동안 어떤 팀에 속할 , 당신은 게임을 플레이해볼 있고, 테스트 가능한 빌드를 가질 수는 없습니다. 당신은 여전히 이러한 요소들에 대해서 배우고, 활용해야 하지요. 만약 당신이 디자인하고자 하는 맵을 위한 게임을 플레이 해볼 없다면, 당신은 여전히 다른 게임들로부터 FPS 게임 레벨 디자인의 수많은 요소들을 배울 있습니다. 당신이 레벨 디자인하게 게임과 비슷한 게임플레이 구조를 지닌 게임을 찾아보세요. 예를 들어, 카운터 스트라이크는 오브 듀티와 게임 구조가 비슷하다고 느낄 있죠. 개임은 명백하게 다른 게임이지만, 카운터 스트라이크를 하는 사람들과 오브 듀티에 매료된 사람들은 비슷한 플레이 방식을 보여주는 경우가 있지요. 레벨 디자인에 대한 통찰력은 게임에서 다른 게임으로 바뀔 있습니다. 왜냐하면 외의 부분에서 비슷한 게임 타입이면서 게임 구조가 비스므리 하기 떄문이지요. 이제 좋은 레벨 디자인의 요소에 대해서 배우고, 방향성을 세워봅시다.


단계에서 :


  • 해당 게임의 구조를 배울 목적과, 유명한 맵들의 레이아웃을 배울 목적을 가지고 게임을 플레이하는 시간을 할애하세요.
  • 당신의 아이디어나 맵의 레이아웃을 기록하기 위해서 스케치북이나, 레벨 디자인/게임일지을 가까이 두세요
  • 당신이 찾은 어떤 재미있는 게임플레이 구조를 기록하세요


시나리오


일단 당신이 맵을 위한 생각을 떠올렸다면, 맵이 폭탄 설치 맵인지, 인질 구조 맵인지 결정하세요. 폭탄 설치 맵이 인질 구조 맵보다 많이 플레이 되는 경향이 있습니다.


당신은 폭탄 설치와 인질 구조 맵을 공격과 방어를 위해서 단순화할 있어요. 많은 FPS 게임들은 공격/방어 시나리오를 위해서 그들만의 수정된 방식을 가지고 있지요.


인질 구출 (cs_prefix)에서, 저항군 팀은 공격을 하고, 테러리스트 팀은 방어를 하지요. 폭탄 설치 (de_prefix)에서, 테러리스트 팀은 공격을 하고, 저항군 팀은 방어를 합니다.


카운터 스트라이크에서는 비공식적으로 맵과 게임 방식을 만들 있어요. 몇몇 예를 들자면 FY(fight yard), ka(knife arena), aim and deathmatch 등이 있지요. 이러한 게임 방식은 맵의 레이아웃을 생각할 필요가 없어요. 가이드에서 우리는 폭탄 설치와 인질 구출 맵에 초점을 겁니다. 하지만 만약 당신이 제가 여기서 공유해주는 것들을 배운다면, 저런 비공식적인 게임 방식을 디자인하는 거의 쉬워질 겁니다.


단계에서 :


당신의 맵에서 진행되길 원하는 게임 타입을 결정하세요. 폭탄 설치 맵인가요 혹은 인질 구출 맵인가요?


레이아웃 설계를 시작합시다


일단 당신이 맵이 폭탄 설치일지, 인질 구출일지 정한다면, 다음 단계는 게임플레이에 대한 레이아웃을 그려보는 것입니다. 스케치북을 가져와서, 레이아웃에 대한 아이디어를 그려보세요. 당신이 만들기 원하는 것에 대한 어떤 게임 플레이 테마다, 장소에 대해서 적어 내려가세요.


제가 과정에서 생각하기 시작한 것들입니다:


  • 맵에 얼마나 많은 핵심 길목과, 경로가 존재하는가?
  • 주요 경로 대신에 맵에서 얼마나 많은 길들이 서로 연결되어 있는가?
  • 향해야만 하는 특수 지점이 어디인가?
  • 내가 원하는 특수 지점과 스폰 포인트의 위치는 어디인가?
  • 맵이 얼마나 다양한 게임플레이 타입을 지원할 것인가? (스나이퍼를 위한 긴맵, 근접 전투를 위한 작은 )
  • 참고자료를 위한사진을 수집하기 시작하세요


당신의 맵을 생각하거나, 탐험하는 것을 시작하세요. 단계 동안, 당신은 맵의 레이아웃을 그리는 집중하지 마세요. 우리는 과정은 나중에 실시할 것입니다. 단순히 당신이 참고 자료를 보고 떠오르는 서로 다른 생각들에 대한 스케치만 하고, 당신이 만들고 싶은 맵을 많이 플레이 해봐서 통찰력을 얻으세요. 이제, 당신은 정보 수집을 하는 겁니다.




당신의 스케치와 그림 실력은 그렇게 예쁠 필요는 없어요. 스케치를 하는 과정은 빠르게 진행되야만 합니다. 저는 종종 수십 장의 스케치를 하고, 아주 지저분한 설계도 많이 겪었죠.


저는 어떤 것을 머릿 속에 계속 유지하지 않아요. 제가 아이디어가 떠오를 , 그걸 적어내려가고, 스케치 하지요. 저는 어떤 맵을 디자인 하는 과정에 있을 때는 항상 스케치할 있는 것들을 들고 다녀요.


또한 저는 사진 참고자료를 모으기 시작했습니다. 이를 통해서 맵의 경로와, 위치 그리고 특수 지점에 대한 지식을 확장하는 도움을 주지요.


단계에서 :


  • 떠오르는 생각을 설계도 형식으로 스케치 하세요. 실제로 사용될 수준으로 자세하게 기록하지는 않아도 되고, 단순히 떠오르는 아이디어를 기록할 정도로 적어내려가세요.
  • 당신의 맵에 대한 사진 참고 자료 수집을 시작하세요. Images.google.com 가서, 당신의 맵이 위치한 지역을 검색해보세요. 그리고 당신의 프로젝트의 폴더 사진 참고자료폴더에 모으는 것을 시작하세요.


경로


우리는 디자인의 핵심 부분으로 진입합니다. 경로를 설정하는 것이지요.


카운터 스트라이크에 있는 각각의 맵들은 경로, 특수 지점, 연결된 경로와 오브젝트들이 존재합니다.


경로 각각의 팀들이 특수 지점이나 오브젝트에 접근하기 위한 경로입니다. 연결 경로는 서로의 주 경로를 연결하여, 플레이어에게 전략적인 선택을 부여하는 경로입니다. 연결 경로는 나중에 다루도록 하지요.


당신이 저항군이던, 테러리스트이던, 주 경로는 각각의 팀을 주로 전투가 벌어질 장소인 특수 주점으로 이끌 겁니다. 만약 공격팀이 특수 지점에 도달한다면, 그들은 폭탄을 설치하거나 인질을 구출하게 되겠죠.


de_dust 맵을 예로 들어보죠. Dust는 간단한 레이아웃을 하고 있습니다. 이 맵은 2개의 주 경로를 가지고 있습니다 - 지하 경로와, 궁궐과 같은 곳이죠. 이것들이 테러리스트 팀에서 취할 수 있는 주 경로입니다.




당신은 맵에서 경로를 디자인 해야 합니다. 과정은 단순해요. 스폰 지점에서 폭탄 설치 지점이나 인질이 위치한 지역까지 2개에서 3개의 경로를 설정하세요. 3개보다 많으면 됩니다. 만약 당신이 Valve에서 만든 카운터 스트라이크 글로벌 오펜시브의 공식 맵을 적이 있다면, 맵들은 2개나 3개의 경로만 포함하고 있다는 것을 있어요.


경로를 만들 , 공격팀의 시각에서 해당 지점을 생각하기 쉽다는 사실을 알게 되었습니다.


폭탄 설치 맵에서, 테러리스트 팀은 공격팀이고, 저항군팀은 방어팀입니다. 인질구출 모드에서 구출팀은 공격을 하고, 거점 팀은 방어를 하지요.


저는 공격팀으로 시작했습니다. 저는 펜과 종이를 이용해서, 스폰 포인트로부터 오브젝트까지의 경로를 화살표로 그렸죠. 과정은 아주 쉬워요. 폭탄 설치 맵에서, 저는 폭탄 설치 지점부터 시작했고, 어떤게 공격팀이 폭탄 설치 지점을 공격할까 생각하기 시작했어요. 플레이어들이 어떤 경로를 선택하고, 어디에서 싸울까요? 그렇다고 해서 제가 방어팀의 측을 생각하지 않는다는 것이 아니에요. 제가 경로를 설정할 , 공격팀의 측면에서 먼저 생각 뿐이에요. 각각의 경로는 연결 경로들을 포함하고 있다는 사실을 기억하세요. 저는 연결 경로를 경로로 세지 않습니다. 저는 우선 경로를 단순하게 디자인 하는 것에 초점을 두는 거에요.


여기 제가 경로 디자인의 가지 스케치가 있습니다. 얼마나 간단하고 쉽게 했는지 보세요. 저는 흐름과 게임플레이에 대해서 생각을 하고 있습니다. 최종 레이아웃이 아니죠. 때때로 저는 경로의 화살표를 그리고, 다른 때는 맵의 구역들을 생각하죠.




경로는 여러분의 디자인에 있어서 핵심입니다.


제가 여러분들에게 카운터 스트라이크에 있는 공식 맵들의 디자인에 대해서 이해할 있게 해드릴게요. 만약 스크린샷이 보이지 않는다면, 위에 있는 가이드 영상을 보고, 확실히 내용을 파악할 있도록 하세요.


Dust 2: 4개의 경로. B 향할 있는 위쪽 터널; 중간 지점으로 향할 있는 중문; A 향할 있는 좁고 길목; A 길쭉한 구조




Inferno: 3개의 경로. A로 향할 수 있는 중문과 두 번째 문; A로 향할 수 있는 아파트; B중간에 위치한 B.




Train: 3개의 경로. B 향할 있는 보조 경로; A 향하는 길에 만나는 중간 지점; A 향하기 위한 보조 경로




만약 당신이 인질 구출 맵을 만든다면, 같은 원리가 더해집니다. 저항군 입장에서만 생각해야만 해보세요.


여기 보시면 인질 구출 모드와 폭탄 설치 모드에 대한 공식 맵이고, 폭탄 설치를 위한 경로와 특수 지역들이 표시되어 있습니다.


Italy: 3개의 경로를 포함합니다. 뒷골목이나 아파트에서 빠져나와서 폭탄 설치 지점으로 가기 위해서는 중간에 위치한 상점가로부터 시작되는 홀을 지나야 합니다. (Italy 아마도 처음에는 3개의 경로가 있다고 보여지지만수많은 보조 경로가 있습니다.




당신이 향하게 되는 모든 경로들은 맵의 오브젝트로 향하게 됩니다.


수비팀은 같은 수의 경로를 갖게 겁니다. 수비자들은 오브젝트를 지켜야만 하기 떄문에 일반적으로 상에서 많이 전진하지 않고, 경로 외에 추가적으로 지켜야할 길목은 존재하지 않습니다.


단계에서, 당신은 팀의 생성 지점과 오브젝트의 위치를 기록해야 합니다. 이건이 아마 변화를 이끌어낼 겁니다. 상의 경로를 표시하고, 테러리스트와 저항군의 리스폰 지점을 표기하고, 오브젝트의 생성 지점을 표시해보세요. 저는 간단하게 CT Spawn이라고 표기하고, 플레이어들이 생성되는 지점은 T Spawn이라고 표기합니다. 그리고 오브젝트의 위치는 X 표시하지요.


단계에서 :


  • 얼마나 많은 경로가 당신의 맵에 존재할지 결정하세요. 당신은 dust 같이 2개의 경로를 배치할 건가요? 아니면 Inferno, Dust2 또는 Mirage처럼 세련되게 것인가요?
  • 당신이 생각하는 경로를 그려보세요. 과정은 단순하게 그려내야 합니다. 직선의 형태로 그려내고, 공격팀의 시점에서 생각하세요.
  • 당신이 생각하고 있는 맵의 경로를 만들 , 해당 지역에 대한 지식과 분위기에 대한 지식이 있다면 도움이 겁니다. 사진 참고자료를 사용하는 것이 경로를 디자인하는 도움을 거에요.


특수 지점


특수 지점(조종실이나 좁은 통로와 같은) 공격팀의 입장에서 방어팀이 저항하는 것을 처음 만나게 되는 곳입니다. 공격팀은 오브젝트에 도달하기 위해서 이러한 특수 지점을 거쳐야만 하지요. 특수 지점은 전투가 벌어질 있도록 흥미롭게 디자인 되어야만 합니다.


특수 지점은 de_nuke(Back Room/Hut/Squeaky areas), de_inferno(Apartments) 같이 좁은 전투 장소를 지향하고 디자인 되어야만 합니다.




아니면 de_dust2(Long A) de_aztec(Bridge) 같이 저격을 위한 거리가 있을 수도 있겠죠.




공격팀을 특수 지점을 이동시킵니다. 그리고 그들이 그러한 병목지점에서 해야할 일은 다음과 같죠:


  • 그것들을 이용해서 싸우거나, 혹은
  • 방향을 바꿔서 다른 특수 지점이 존재하는 경로로 우회해서 다른 전략을 사용하는 것이지요.


특수 지점은 공격팀이 맵의 목표 오브젝트에 도달하기 길목에 배치되어야만 합니다. 그래서 만약 당신이 3개의 경로를 설정한다면, 3개의 특수 지점을 포함하고 있는 것이지요. 각각의 특수지점은 하나의 경로에 할당되구요.


특수 지점의 설계에 있어서 타이밍은 굉장히 중요해집니다. 당신은 팀이 특수 지점에 동시에 도착하는 것을 바라겠죠. 수비팀에 약간의 유연성을 부여합니다. 수비팀이 공격팀보다 초정도 일찍 도착해서 자리를 잡기 편하게 해주는 것이지요. 타이밍은 폭탄 설치맵에서 굉장히 중요합니다. 인질 구축 맵에서, 테러리스트팀은 단순히 스폰 지점 근처에 있는 인질 구변에서 대기만 하면 되기 때문에 이 타이밍은 크게 중요하지 않습니다.



특수 지점 디자인의 원리 6: “인질 구출 맵의 특수 지점은 굉장히 동적입니다. 인질의 구출은 폭탄 설치 맵과 같이 아주 정확하거나, 정확한 타이밍에 도달하는 것을 요구하지 않습니다. 이는 테러리스트팀이 공격적으로 행동하느냐, 수비적으로 행동하느냐에 따라서 특수 지점이 이동하기 때문입니다. 그래서 인질 구출 맵을 디자인할 , 당신은 수비팀의 입장에서 그들이 어떻게 맵을 플레이 것인지 생각해야 합니다.


다음 글을 읽어보세요: CSGO 6 Principles of Choke Point Design Tutorial(http://www.worldofleveldesign.com/categories/csgo-tutorials/csgo-principles-choke-point-level-design.php)



각 팀의 도착 타이밍은 게임 레벨 에디터의 BSP 설계도 제작 단계에서 결정됩니다. 당신은 각각의 팀이 리스폰 지점에서부터 특수 지점까지 도달하는 데 얼마나 시간이 걸리는 지 결정해야 합니다. 각각의 시간이 동일하게 될 때까지 디자인을 계속 수정해보세요.


특수 지점을 디자인한다는 것은 각각의 팀이 그 장소를 통해서 전투를 치른다는 것입니다.


2개 이상의 경로(통로)에 하나의 특수 지점으로 통해서,  플레이어의 시야에 다른 플레이어가 보이지 않게 되는 일을 피하세요.


예를 들자면:


Dust(지하도와 위쪽의 계단) - 양측 다 동시에 볼 수 있고, 해당 특수 지점에 대한 전략적인 선택을 제공합니다.




Dust(위쪽 터널), 오브젝트에 대해서 하나의 출입구를 제공하죠.




따라서 하나의 특수 지점에 대해서 동시에 없는 2 이상의 출입구를 배치하지 마세요. 당신이 특수 지점을 컨트롤 있게 된다면, 당신은 게임 플레이를 컨트롤할 있게 됩니다.


de_train 봅시다. 모든 공격 경로는 통로나 출입구로 좁고 통로를 지나야 하고, 그렇게 함으로써 공격팀과 방어팀이 싸우도록 하고 있습니다. 만약 특수 지점이 아주 크고, 넓고, 하나의 특수 지점에 대해서 여러 개의 경로를 제공하고 있다면, 전투의 속도와 흐름, 그리고 맵의 밸런스를 파괴할 것입니다. 그런 방식은 아마 공격팀에게 이점을 제공하겠죠. 폭탄 설치 지점까지 향하는 경로가 접근하기 쉽다면, 방어를 위한 자리를 잡기 전에 폭탄을 설치하게 겁니다.




가지 예를 봅시다


Dust: 지하도로 되어 있는 특수 지점을 봅시다. 시야를 가질 있는 특수 지점이고, 폭탄 설치 지점은 높은 곳에서 있어서 이점을 제공하고 있습니다.




Aztec: 다리와 개의 문이 있습니다. 다리는 시야 거리를 가지고, 개의 길거나 짧은 시야를 제공하고 있습니다. 다리는 점프해서 내려가거나 물을 통한 경로를 제공하지만, 위험부담이 있지요.




여기 CS:GO 특수 지점 디자인에 관한 블로그를 보면, 공식 맵에서의 특수 지점에 대해서 심도 깊게 알아볼 있습니다. (나중에 추가할게요!)


단계에서 :


  • 특수 지점을 성공적으로 디자인하기 위해서, 당신은 각각의 맵에 오브젝트가 어디에 위치하고 있는 알아야 합니다. 일단 인질 구출인지, 폭탄 설치인지부터요. 특수 지점을 공격팀의 입장에서 극복해야 하는 난관으로 위치시켜야 해요.
  • 넓게 개방된 공간을 하나의 지점으로 집중시키는 것을 확실히 하세요. 터널이나, 문이나, 통로와 같이 말이죠. 공격팀을 그런 특수 지점으로 보내세요.
  • 타이밍을 알아차리세요. 각각의 팀이 특수 지점에 도착하는 것은 동시에 이루어져야 합니다. 아니면, 방어팀이 적절하게 방어를 준비하기 위해서 약간 빠르게 도착하게 하세요. 이러한 타이밍은 레벨 에디터에서 맵의 설계도를 그릴 정해집니다.


연결 경로


일단 당신이 경로와 특수 지점을 그려냈다면, 연결 통로를 디자인할 때입니다.


연결 경로 각각의 주 경로를 지어주고, 플레이어에게 전략적인 선택을 제공하는 것입니다. 각기 다른 주 경로에서 경로를 바꿀 수 있는 기회를 제공하죠.


여러분은 공격팀이 그들의 진행 방향을 바꾸기 위해서 스폰 지점으로 돌아가는 것을 바라지 않을 거에요. 두 개의 주 경로 사이에서 연결될 길을 제공함으로써 방법을 제공하세요. 게임 플레이를 더 역동적이고 흥미롭게 만들어줄 겁니다.


Dust 2의 예를 봅시다. 만약 테러리스트 팀이 위쪽 터널을 통해서 왼쪽으로 향한다면, 그들은 계속해서 나아가 B 폭탄 설치 지점으로 가거나, 길을 바꿔서 아래쪽 터널을 통해 중앙에 있는 이중문을 통과할 수 있겠죠. 그들은 해당 지점을 통해서 A 지점이나 B 지점으로 향할 수 있습니다.




연결 경로의 다른 예는 de_inferno 등장하는 크롤링 공간과 중간의 건초더미입니다. (역자 : 크롤링 공간이란 건물의 낮은 바닥 아래에 여분의 추가 공간을 부여하는 것을 말합니다. 공간으로 통해서 습기가 올라오는 것을 막거나, 파이프나 배선 작업을 수도 있지요)




Dust에서, 개의 경로는 선택을 제공합니다. 궁전 형식의 인테리어는 개의 경로를 가지고 있고, 왼쪽 혹은 오른쪽의 입구가 있습니다. 아래쪽 길은 위쪽으로 올라갈 있는 비탈길을 제공하거나, 계단을 통해서 육교로 향할 수도 있지요.




저는 우선 개의 경로 사이에 있는 하나의 연결 경로에 대해서 초점을 맞추겠습니다. 일단 당신이 카운터 스트라이크에 있는 레벨을 낫게 바꿀 있다면, 당신은 많은 옵션을 더할 있어요. 단순하게 하는 것을 기억하세요. 당신의 설계도를 복잡하게 하지 마세요. 전략을 제공하되, 균형이 맞고 단순하게 하세요.


모든 경로에 이러한 연결 경로에 대한 옵션을 가지진 않습니다. Dust 2에서, 만약 당신이 A(폭탄 설치 지점의 오른쪽) 접하게 된다면, 당신은 폭탄 설치 지점을 가기 위해서 하나의 경로만 가지게 되지요. Italy에서, 일단 단신이 집회장의 통로를 지난다면, 반대쪽으로 나아가거나 되돌아가야만 합니다.




연결 통로를 만든다는 것은 단순합니다. 일단 경로를 그려보세요. 과정에서 저는 공격팀의 입장에서 경로를 살펴봅니다. 어디서, 그리고 어떻게 제가 각각의 경로가 연결될 시각화 합니다. 어디서 공격팀이 전략을 바꿀 있게 될까요?


연결 통로는 아래 그림에서 붉은색으로 표시된 지점입니다.




저는 같은 방어팀의 입장에서도 합니다. 방어팀이 어떻게 해야 다양한 연결 경로를 이용해서 오브젝트가 있는 지역에 도달할 생각해요.


제가 카운터 스트라이크의 공식 맵을 보여주면서 연결 경로의 가지 예를 보여줄게요.


Train: 사다리와 전체 A 지역은 내부적으로 연결되어 있습니다.




Nuke: 위쪽의 A 향하는 사다리와 배관이 있습니다.




Inferno: A 근처에 도서관이 있고, B에는 건물의 잔해와 공원이 있습니다.




단계에서 :


  • 당신의 경로에 대한 설계도를 그리고, 연결 통로로 채우기 시작하세요. 공격팀의 입장이라고 초점을 맞추세요. 어떻게 해야 공격팀이 연결 경로를 이용해서 전략을 더할 생각해보세요.
  • 방어팀의 입장에서 같은 반복하세요.
  • 연결 경로와 경로의 설계가 마음에 때까지 같은 반복하세요.


오브젝트와 스폰 지점


오브젝트의 위치와 스폰 위치로 되돌아갑시다. 설계하는 되풀이 하는 것을 기반으로 두고, 당신의 스폰 지점과 오브젝트의 위치는 계속해서 바뀔 겁니다.


단계에서 :


  • 새로운 오브젝트와 스폰 지점에 대해서 표시하세요.


이제 모든걸 집어넣고, 당신의 설계도를 만들어 봅시다.


설계도를 그리는 - 모든 것을 하나로 집어넣다.


저는 이게 받아들이기 힘들다는 알아요. 그러면 요점을 향해서 전체 과정을 빠르게 살펴볼게요. 당신이 이걸 이해한다면, 당신은 모든 빠르게 집어넣을 있을 거에요.


저는 당신이 당신의 아이디어를 종이에 그려 내려가길 바라요. 만약 당신이 시작할 이걸 했다면 말이죠. 이제 단계별로 알아봅시다.


  • 저항군과 테러리스트팀이 생성된 지점을 넣으세요. 공격팀은 어디고, 방어팀은 어디일까요?
  • 당신의 맵에서 공격을 위해서 얼마나 많은 경로를 제공할 것인지 결정하세요. 경로를 그려보세요. 개에서 개의 경로만 설정하세요. 기억해야할 공격팀의 입장에서 먼저 생각하는 것이 쉽다는 것입니다. 과정은 단순하게 진행하세요.
  • 특수 지점이 어디에 위치할 것인지 그려보세요. 각각의 경로는 공격팀이 특수 지점으로 향하기 위한 길입니다. 게임 플레이에 있어서 병목 현상은 공격팀이 이러한 특수 지점을 돌파하기 위해서 이거나, 오브젝트에 도달하기 위해서 발생합니다.
  • 일단 당신이 경로와 특수 지점을 그려냈다면, 연결 경로를 결정하세요. 경로를 설정하고, 특수 지점에 도달하기 전에 선택과 전략을 위해서 연결 경로를 더해보세요. 모든 경로가 연결 경로를 가지진 않습니다. 특수 지점에서 바로 연결 경로를 만들지는 마세요.




과정 이후에, 당신은 사려 깊게 디자인되고, 밸런스와 흐름, 전략에 집중한 게임 플레이에 대한 설계를 마칠 겁니다.


당신이 필요로 하는 만큼 설계도를 다시 그리되, 너무 많은 시간을 소모하지는 마세요. 종이에 설계도를 그리는 것은 당신이 레벨 에디터에서 참고 자료를 만드는 도움을 겁니다.


우리는 이제 종이에 그린 설계도를 완성했어요. 우리가 만든 종이 설계도는 BSP 차단 단계에서 우리에게 도움을 가이드가 것입니다.


Free player movement and static worlds

플레이어들의 자유로운 활동과 정적인 게임 세상


안녕하세요, 라인스터입니다. 이제 날씨가 따뜻해지기 시작했네요. 카페 가는 길에 코트를 벗어야 할 정도였습니다. 8번째 번역글입니다. 이번 글은 Gamasutra에서(https://www.gamasutra.com/blogs/DavidStark/20180105/312556/Free_player_movement_and_static_worlds.php) 찾은 글입니다.  또한 이 글은 원저자인 David Stark에게 허락을 받고 진행되는 번역글이며, 제 블로그에 게시됩니다. 번역자의 의견이 추가되는 부분은 (역자 주:)로 표기하였습니다.


플레이어들의 자유로운 활동과 정적인 게임 세상


게임은 플레이어가 어디든지 자유롭게 활동할 있는 오픈 월드를 포함할 있고, 또는 게임에서 이야기가 진행됨에 따라서 변화하는 세상을 포함할 수도 있습니다. 만약 다를 가지고 있다면, 플레이어는 게임 콘텐츠의 많은 부분을 겪어보지 못하게 되겠지요. 여기에 사이에서 조율을 하는 것들이 있습니다. 비록...


그래서 저는 RPG 게임 스카이림(역자 : Bethesda에서 개발한 ARPG게임)에서 겪은 문제에 대해서 생각해본 적이 있습니다.


스카이림에서, 플레이어가 가장 먼저 발견할 있는 것은 크고 무서운 용들이 돌아왔다는 것입니다. 그리고 주요 이야기는 용들의 귀환에 대해서 다루지요. 하지만 게임에는 당신이 여유롭게 즐길 있는 수백 개의 보조 임무가 존재합니다. 사실, 일단 제가 용과 마주친 이후에 가장 가까운 마을에 비틀거리면서 도착한 후에 가장 먼저 일어난 일은 반지를 배송하는 임무였습니다. 그리고 어떤 좋은 사람이 저에게 단검을 제작하는 법을 알려주었죠.




하지만 당신의 캐릭터에 대해서 생각해보세요. 당신의 캐릭터가 시점에서 반지에 대해서 관심을 갖거나, 대장장이 일에 관심을 가질까요? 아마도 아닐거고, 용에 대한 것들이 당신의 마음 속에 깊게 자리 잡고 있겠죠?


그리고 사실, 당신은 이런 방식으로 스카이림을 플레이할 있습니다. 용의 위협에 대해서 심각하게 받아들이고, 가능한 빨리 사람들에게 경고하고 방어를 준비하겠죠. 이러한 플레이 방식은 또한 게임에서 대부분의 것들을 건너뛰는 것을 의미합니다.


하지만 당신은 또한 모든 보조 임무를 수행할 있습니다. 용들은 당신이 어떻게 단검을 만드는 지에 대해 배우거나 사람들의 사랑스러운 삶을 고치는 방법을 배우는 것을 정중하게 기다리고, 당신은 주요 임무를 다시 수행하기로 결정한 후에야 극도로 긴장된 이야기에 도달할 것입니다.




스카이림에서 어떤 방식으로 플레이어들의 움직임과 게임 세계의 시간이 흘러가는 가에 대한 도표입니다. 플레이어(파랑색) 공간 안에서 자유롭게 움직이는 것이 가능하지만, 시간은 그들이 모험을 지속할 있는 특별한 지점(빨간색) 도달하기 전까지 고정되어 있습니다.


, 몇몇 사람들은 이런 모순을 신경쓰지 않습니다. 하지만 저나 다른 많은 사람들은 이것이 불신에 대한 완충장치를 파괴한다고 생각합니다. 이건 역할 수행 게임이에요. 아직은 게임이 저에게 별나면서, 어떻게든 중요하지 않은 일에 시간을 투자하는 산만한 사람의 역할을 바라고 있습니다.


모든 이야기 중신의 게임들이 스카이림 같진 않을 거에요. 여기 문제를 해결하는 가지 방법이 있습니다.


고정된 세계




Sunless Sea(역자 : Failbetter Games에서 제작한 RPG 게임) 고정된 세계의 좋은 예입니다. 스카이림과 같이, 당신은 어떤 상황에서도 당신이 가고싶은 곳이나, 하고싶은 것을 있어요. 하지만 게임에는 어떤 타이밍을 요구하는 중요 이야기가 없습니다.


게임속 세계는 용들에게 위협받고 있지 않고, 당신이 그걸 해결하기 위해서 어떤 위치에 속하지 않아도 됩니다. 당신은 돈이나, 명성, 또는 그밖에 다른 것들 승리 조건을 선택할 있습니다.


하지만 결국, 게임 세계가 고정되어 있다는 것이 드러납니다. 아마도, 모든 힘들은 서로를 향해서 움직이고 있지만, 실제론 아무 것도 움직이고 있지 않습니다. 당신이 어떤 당파의 일원이 되어 승리를 가져왔을 , “축하합니다!”라는 문구가 지나갈 것이지만, 게임 세상에서는 아주 약간 혹은 아무 것도 변하지 않습니다.




Sunless Sea에는 플레이어의 움직임과 게임 세계의 시간이 있습니다. 플레이어(파랑색) 자유롭게 행동할 있지만, 게임 세계는 (거의) 정지되어 있지요. (게임 세계를 영구적으로 변화시키는 일부 사건이 있습니다. 스카이림과는 다르게, 이걸 수행하는 순서는 상관 없습니다)


사건들의 연속된 선형 구조




Choice of Games(https://www.choiceofgames.com) 대부분의 연속된 선형 구조의 게임에 있어서 훌륭한 작업을 해왔습니다. 일부 편차가 존재하긴 하지만, 반복되는 것은 없죠. 그럼에도 불구하고 플레이어들은 의미 있는 선택을 있습니다. 플레이어들은 그들이 어디로 향할 지에 대해서 아주 간간, 혹은 어떤 정보도 입력하지 않지만, 그들의 결정은 결국 게임의 통계와 국가를 바꾸고 끝에 도달하게 됩니다.




Choice of Games 게임에서 플레이어의 움직임과 게임 세계의 시간입니다. 플레이어는 어디로 가야할 지에 대해서 거의 통제하지 못합니다, 그리고 이야기 전체에 걸쳐서 플레이어의 움직임은 고정된 길로 통제됩니다(빨간색). 선택이나 통계에 대해서 선택지에 대한 일부 변화할 있는 조건이 있습니다, 그리고 이야기는 보통 게임의 끝에서 크게 갈라집니다. 하지만 플레이어는 타임라인의 어떤 부분에서 멈춰있는 것을 선택할 없습니다.


소규모의 정적인 세계에서 연속된 선형 구조




Deus Ex(역자 : Ion Storm에서 개발한 액션 롤플레잉 FPS 게임) 또는 최근에 Dishonored(역자 : Arkane Studios에서 개발한 1인칭 잠입 액션 게임) 방식을 사용했습니다. 게임의 레벨들은 아주 크고, 충분히 자유로운 움직임과 다양한 플레이어의 행동을 허용합니다. 하지만 일단 레벨을 완료하면, 게임은 강제로 다음 레벨로 플레이어를 보내버리죠.


해당 레벨이 얼마나 정적인 지는 그리 중요하지 않습니다. 왜냐하면 당신은 그곳에서 그리 시간을 보내지 않을 것이기 때문입니다. 플레이어는 Deus Ex 번째 레벨에서 현실 시간으로 10시간을 지낼 있습니다. 그리고 다시 돌아올 없죠. 그래서 게임은 플레이어에게 자유로운 행동을 부여하는 대신에, 게임의 타임라인에 따른 모험을 따르도록 하죠.




Deus Ex에서 플레이어의 움직임과 게임 세계 시간입니다. 게임은 시간이 흐르지 않는 거대한 오픈 월드 같은 레벨에서 플레이어의 행동을 자유롭게 있도록 하고(파랑색), 레벨 구간에 따른 타임라인이 흐르도록 합니다(빨간삭).


정적인 게임 세계 혹은 강요되는 움직임


우리는 게임 세계에서 플레이어의 움직일 있는 능력, 혹은 게임 세계 자체의 진행을 제한할 필요가 있습니다.


만약 플레이어들이 그들이 가고싶어 하는 곳으로 어디든 움직일 있거나, 게임 세계의 흐름이 자기 멋대로 움직인다면, 이건 플레이어가 콘텐츠의 많은 부분을 놓친다는 것을 의미합니다. 공간이나 시간에 있어서 1차원적인 목록 대신에, 플레이어가 선형적인 경로로 이동할 공간 X 시간의 2차원적인 공간입니다. 이것은 게임에 투입된 대부분의 작업들이 실제로는 플레이 되지 않는다는 것을 의미합니다. 이는 게임이 제공하는 경험의 양과 비교할 많은 노력이 필요하다는 것을 의미합니다.


Deus Ex 오픈 월드에서의 선형 구조에 대한 접근 방식은 타협을 해결책입니다. 하지만 방식은 발생할 있는 일들에 대해서 이중으로 구속합니다. 플레어는 단일 오픈 월드에서 자유롭게 행동할 없고, 게임의 이야기는 꽤나 선형적으로 진행되어야 필요가 있습니다. 사실, 처음의 Deus Ex 게임의 끝에서 마지막 결정을 내리기 전까지는 전체에 걸쳐서 완벽하게 고정된 이야기로 진행됩니다.


통계 수치의 변화를 따라가기


Choice of Games 플레이어의 행동의 제약을 완화하기 위해서 이것을 합니다. 플레이어는 어떤 일이 일어날 지에 대한 순서를 선택할 없는 반면에, 여전히 미래에 어떤 일이 일어날 것인지, 혹은 어떤 결과로 다가올 지에 영향을 끼칠 있는 일들에 대해서 선택을 있습니다.


Dishonored 하나의 통계, chaos rating 대한 추적을 정확하게 합니다. chaos rating 레벨을 변화시키고 게임의 끝에서 어떤 결말을 맞이할 것인지에 영향을 끼치죠.


그래서 시간의 흐름에 따라서 플레이어의 선택이나 게임 세계의 진행을 통계로 저장할 있도록 인코딩하면, 다시 사건 공간들은 1차원적인 목록으로 감소하고, 어느 정도 제어된 통계인 선택지를 허용합니다. 게임에서 발생되는 사건들은 통계값을 기반해 전반적으로 교채되거나, 세부적인 내용이 조절될 있고, 반응성 있는 게임 세계를 만듭니다.


통계를 기반으로 사건을 선택하기


당신은 플레이어의 선택과 게임 세계의 진행 다의 통계에 대해서 부호화할 있습니다. , 게임의 사건들이 통계에 기반을 것들에서 선택됩니다. 그럼에도 불구하고, 손으로 콘텐츠를 가지고 시뮬레이션 풍의 게임을 만듭니다. The king of Chicago(https://web.archive.org/web/20040404061317/www.channelzilch.com/doug/battle.htm)은 이 분야를 개척했습니다.


이 방법의 주요 문제는 다른 사건들은 전혀 일어나지 않는 반면에, 일부 사건이 발생되는 것이 유지될 것이라는 가능성이 존재한다는 것입니다.


위와 같이, 전체 플레이 흐름은 플레이어의 공간과 게임 세계의 통계를 통해 선형적인 경로를 따르게 됩니다. 이론적으로는 이 경로가 게임에서 발생할 수 있는 전체 사건들에 대해서 한 번쯤은 모두 건들게 됩니다. 만약 한 공간에 계속 있는다면, 게임의 이야기가 반복이 될 것이고, 만약 그들을 접하지 않고 대부분의 사건들을 지나치게 된다면 많은 노력들이 쓸모 없는 것이 됩니다.


그래서 노력이 낭비되는 것과 스카이림의 문제를 피하며 게임에 넣을 수 있는 구체적인 것이 무엇일까요?


오픈 월드 레벨에서의 선형 구조에 대한 더 많은 통계


각 샌드박스 수준의 레벨을 대체하지 않고, 조작하는 여러 다른 통계는 노력으로 쌓은 모래성을 무너뜨리지 않고 플레이어의 결정에 더욱 반응성 있는 게임 세계를 만들 수 있습니다.


전체 게임 시간에 걸쳐서 약간의 수정을 가하는 정적인 세계


이러한 방식으로 하기 위해, 시간이 지나는 것에 따라 기회를 제거하여 플레이어가 좌절감에 빠지는 일이 없도록 해야 합니다. 그리고 더욱 효과적으로 하기 위해서는, 대부분의 경우에서, 시간의 흐름에 따라 같은 콘텐츠를 여러 버전으로 만들 필요 없이 세부적인 항목을 변경할 수 있어야 합니다.




Sunless Sea 정적 게임 세계에서의 변종입니다. 플레이어는 자유롭게 행동할 있지만, 그들이 움질일 때마다 시간은 천천히 움직이고, 게임 세계의 변화가 부분적으로 진행됩니다. 각각의 장소는 아마 시간 구간마다 1개에서 3개의 변화점을 가지고 있겠죠.


통계 중심의 접근방식


끝으로, 통계에 기반하여 플레이어의 행동을 부드럽게 조절하거나 사건들의 세부 사항을 조절할 있는 공간을 통해서 게임은 반복 요소나 낭비 없이 플레이어의 선택과 시간의 흐름 다에 대한 통계를 조절할 있습니다.




게임의 통계를 기반하여 사건들을 추려내는 . 차원은 더이상 시간과 공간에 얽메이지 않습니다. 오히려 이것은 고차원의 통계 공간을 2D 표현한 것입니다. 전체 게임 플레이 흐름은 공간을 통과하는 복잡한 경로가 되며, 발생하는 사건들은 현재의 통계를 기반으로 선택됩니다.


그래서, 결말은 어떻게 될까요? 동적인 게임 세계에서 플레이어의 자유로운 움직임은 반드시 보이지 않는 콘텐츠로 이어집니다. 플레이어의 움직임을 제한하거나 게임 세계를 정적으로 만드는 것은 게임이 살아있다는 느낌을 주지 않죠. 이를 개선하려면 플레이어의 움직임을 미묘하게 제한하고, 게임 세계를 너무 많이 바꾸지 않고, 통계를 활용하여 완전히 다시 만들지 않으며 콘텐츠들을 변화시켜야 합니다.


Color in games: An in-depth look at one of game design's most useful tools

게임을 제작할  가장 유용한 도구중 하나인 색을 살펴봅시다.


안녕하세요, 라인스터입니다. 3월이 시작 되었네요 ^^. 이제 좀 날씨가 따뜻해졌으면 좋겠는데, 풀릴 생각을 안 하네요. 7번째 번역글입니다. 이번 글은 Gamasutra에서(https://www.gamasutra.com/blogs/HermanTulleken/20150729/249761/Color_in_Games.php) 찾은 글입니다.  또한 이 글은 원저자인 Herman Tulleken에게 허락을 받고 진행되는 번역글이며, 제 블로그와 GDF에 게시됩니다(http://gdf.inven.co.kr/index.php?/topic/421-번역게임을-제작할-때-가장-유용한-도구중-하나인-색을-살펴봅시다/). 번역자의 의견이 추가되는 부분은 (역자 주:)로 표기하였습니다.


게임을 제작할 가장 유용한 도구중 하나인 색을 살펴봅시다.



글은 동료인 Jonathan Bailey 함께 작성했습니다.


물리학, 생태학, 심리학, 아트, 그리고 디자인과 같은 다양한 분야에 걸친 색채에 대한 지식. 이러한 것들은 감정를 형성해야 하는 그래픽 아티스트나, 기능을 강조해야 하는 게임 디자이너, 그리고 마케터들에게 아주 유용한 도구입니다. 글에서 우리는 게임에 있는 색채에 대해서 살펴볼 것입니다. 색채의 기능이나, 색감이 어떤 식으로 발전 되었는지, 그리고 생태학이 어떤식으로 인식에 있어서 우리에게 영향을 미치는 지에 대해서요.


게임에서 색의 기능


색각의 주요한 기능은 어떤 물체를 더 쉽게 발견할 수 있게 하는 것입니다, 그리고 게임에서는 색을 실제로 그러한 용도로 사용하고 있죠. 우리는 게임에서 사과를 빨간색으로 만들죠, 그 이유는 실제 세계에서도 빨간색이기 때문입니다. 그래서 우리는 게임에서 사과를 더 쉽게 판별할 수 있죠. 하지만 색은 아트나 디자인, 영화에서처럼 게임에서도 많은 기능을 합니다. 이번 섹션에서는 이러한 것들을 설명 해드리겠습니다.


감정


색은 감정을 불러일으키는 가장 강력한 방법입니다.


다음은 같은 장면을 다른 색으로 구성한 예입니다. 각각의 장면은 전혀 다른 기분이 들죠




색보정은 번의 작업(필름을 조절해서)으로 게임의 색감을 바꾸는 유명한 방법입니다. 보통을 게임의 분위기를 바꾸기 위해서죠. 여기 이미지를 다른 색으로 보정한 예가 있습니다.




때때로, 색의 변화는 감정적인 영향을 줄이는 도움이 되기도 합니다. 예를 들어, 폭력적인 요소를 감소시키기 위해서, 몇몇 게임들은 심의를 통과하기 위해서 피를 초록색으로 표시하죠(독일같은 나라요).


브랜드화와 패션


색은 게임의 브랜드화에 중요한 역할을 하며, 어떤 게임인지 바로 인지하는 도움을 줍니다. 파랑색과 주황색의 Portal(역자 : Valve 퍼즐액션 게임), 밝은 빨강색의 Mirror’s Edge(역자 : EA 파쿠르 기반 액션 게임), 고기를 연상시키는 붉은 색의 Super Meat Boy(역자 : Team Meat에서 제작한 플랫폼 게임), 푸른 보라색의 Super Mario Bros, 핫핑크의 Hotline Miami(역자 : Dennaton Games에서 제작한 탑다운 액션 게임) 같이요.



게다가, 게임을 식별하게 하기 위해서, 색은 또한 플레이어들에게 어떤 정보를 전달하는 용도로도 사용됩니다. 예를 들어 밝은 색상은 보통 캐주얼 게임에서 많이 사용 되고, 반면에 흐린 색상은 코어 게임들에 사용됩니다.



(캐주얼 게임)


(FPS 게임)


게임에 들어가는 색감은 보통 당시의 패션에 의해 영향을 받기도 합니다. 아래의 색상 예시는 30년에 걸쳐 각각 4개의 해에 유행했던 것들입니다.




2012년에는 푸른색과 갈색, 오렌지색이 가장 두드러집니다. Xaphan 게임을 사실에 가깝게 하기 위해 활기를 줄이고(게임을 보다 균일하고 단색으로 만들기 위해), 그림자와 전역 조명의 사용을 위해서라고 추측했습니다. 다른 많은 게임들은 현실감있게 하기 위해서 의도적으로 채도를 줄이고, 착색을 이용했습니다.




시각적 계층 구조


게임 화면의 구성요소들은 자연스럽게 중요도에 따라서 계층 구조를 형성하게 됩니다. 예를 들어, 플레이어, 다음으로 , 다음으로 상호작용이 가능한 오브젝트, 배경요소가 있겠죠. 색은 이러한 시각 계층 구조를 명확하게 만들어줄 있습니다. 그림이나 영화와 같은 시각적인 작업에서, 이런 원리는 보는 사람들이 어떤 것이 중요하는가에 대한 도움을 제공합니다. 상호작용과 관련된 작업의 경우, 이것은 중요해집니다. 왜냐하면 사람들이 어딜 가야하는지, 누굴 공격해야 하는지, 무엇을 주워야 하는 등을 인지하는 도움을 주기 때문이죠.


명암, 채도, 색조는 모두 중요한 요소를 구별하는데 사용될 있습니다.



(명암에 집중한 )


(채도에 집중한 )


(색조에 집중한 )


게임 개발자를 위한 시각적 계층 구조에 대한 가이드를 확인해보세요(http://purplepwny.com/blog/visual_hierarchy_for_game_developers_a_practical_guide_to_making_important_stuff_seem_important.html)


진행감


색은 플레이어들이 진행감을 제공할 수 있습니다. 시간 또는 장소의 변화에 대한 감각이요. 예를 들어 Journey(역자 주: thatgamecompany에서 제작한 감성 어드벤처 게임)에서, 분위기의 변화는 색감의 변화를 따라가죠.




Geometry Dash(RobTopGames에서 제작한 리듬 아케이드 게임) 배경은 무지개빛 색상이고, 이것은 게임의 단계가 달라졌다는 것을 인지시키기 위한 부가적인 목적이 있습니다.( 생각은 아래 콘텐츠의 변화에서 다루도록 하겠습니다)




기술


몇몇 게임들은 새로운 기술을 위해서 색을 이용합니다.


Exit Palette 색의 조합 기술을 사용하는 퍼즐 게임입니다. 게임의 목표는 각각 다른 색으로 칠해진 오브젝트를 이용해서 각각의 레벨에서 출구에 도달하는 것이지요. 각각 서로 다른 색상은 다른 특징을 가지고 있고(플레이어를 날아오르게 한다던가), 올바른 색의 조합은 독특한 기능을 하거나, 퍼즐을 푸는 중요한 기능을 합니다.





Hue 플레이어가 특정 오브젝트를 사라지게 하기 위해서 색조를 변경해야 하는 게임입니다.





게임 DayZ 염료 기술이 적용되어 있고, 이는 주요색상이 포함된 열매들을 사용해서 원단을 염색하고, 옷감의 색을 바꿀 있는 시스템입니다. 열매들을 다른 비율로 조합해서, 2번째, 3번째의 색상을 얻을 있죠.




일부 게임들은 그들의 기술을 사용해서 색을 구분하는 어려움을 겪습니다. The color! 각각 다른 색상으로 이루어진 격자에서 정사각형을 찾는 게임이고, 게임이 진행됨에 따라서 많은 격자와 인접한 색이 나타납니다. Speciman 플레이어에게 검은 배양 접시에 있는 개의 얼룩에서 배경과 같은 색을 가진 얼룩을 확인하도록 합니다.


Blendoku 플레이어에게 가로세로 방식의 격자에서 명암 순서대로 여러 색상을 배치하도록 합니다. Huedoku 같은 게임 진행 방식이지만, 격자가 있지요. 게임들은 Online Color Challenge 비슷합니다. 플레이어들에게 4개의 색상표를 주고 명암 순서대로 배치하는 게임이지요.


Brandseen 색상 기억(또는 브랜드 인지도) 의존하는 게임입니다. 플레이어들은 유명한 브랜드의 색상을 기억에 의존하여 일치시켜야 하고, 얼마나 맞췄는 지에 따라서 점수를 얻게 되지요.


시그니쳐와 식별자


게임에서의 색은 각각의 요소를 구분하는데 쓰이거나, 플레이어들의 해당 요소의 특징을 알리는 사용됩니다.


식별자


색상 식별자(glyph, 글리프라고도 합니다) 게임의 구성 요소를 무리짓거나, 분리시키는 사용됩니다. 다른 팀을 구분 짓는다던가, 게임의 캐릭터나 지역을 구분할 때도 쓰이죠.


(Age of Empire)


색상 글리프는 라벨을 붙이기 쉬워야 하며, 게임 장면에 있는 다른 식별자나 중간색들과 상호 배타적어야야 합니다. 식별자는 Kill Zone(Guerilla Games에서 제작한 FPS 시리즈) 같은 게임이나 Rise of Nations(Big Huge Games에서 제작한 RTS게임) 같은 게임에서 일반적으로 사용됩니다.


(Kill Zone)


(Rise of Nations)


시그니쳐


시그니쳐는 플레이어들에게 게임 등장 요소(지형이나 아이템과 같은) 특징을 설명해주는 사용됩니다. 아이템이나 지형의 색상은 그것이 상호작용이 가능한지 여부와, 어떤게 그것을 이용하는 지에 대한 것들을 말해줍니다.


Mirrors Edge runner 모드에서, 플레이어의 게임 진행에 도움이 되는 오브젝트는 붉은색으로 강조됩니다.


(Mirrors Edge)


게임 Witness(Thekla INC에서 제작한 퍼즐 게임)에서, 특별한 지역은 명암을 다르게 해서 시그니쳐를 알려주죠.


Portal 2 포탈을 보죠. 물체를 집어넣기 위한 포탈은 푸른색으로 표현되고, 물체를 가져오기 위한 포탈은 오렌지색으로 표현됩니다.


(Portal 2)


Pirates of the Caribbean Online(역자 : 케리비안의 해적 온라인) (다른 많은 게임들에서는) 포션이 무엇으로 만들어졌는지에 따라서 다른 색상으로 표현 되지요.


(Pirates of the Caribbean Online)


콘텐츠의 변화


색상의 변화는 게임에서 콘텐츠를 증가시키는 값싼 방법입니다.


추상적인 아트를 가진 게임에서는 게임의 레벨이 아주 비슷하게 보이므로, 결과적으로 게임의 깊이가 낮아보이기 쉽습니다. 레벨 간에 배경의 색을 바꾸는 것은 시각적으로 전혀 다르게 보이고, 플레이어들에게 게임의 다양성과 깊이에 대해서 나은 경험을 갖게 합니다. Splice(Cipher Prime에서 개발한 세포를 만드는 감각적인 디자인을 가진 퍼즐 게임) 방식을 사용한 예지요.




Winy Wings(Andreas Illegerd에서 제작한 앞으로 멀리 나아가 점수를 내는 모바일 게임)에서나 Blowfish RescueNoctua Software Limited에서 제작한 cut the lope 같은 아케이드 게임) 같은 게임들에서, 끊임없는 색의 변화를 위한 알고리즘을 사용합니다. 여기 게임의 진행에 따라서 절차적으로 팔레트를 생성가는 기법에 대한 글이 있습니다(http://devmag.org.za/2012/07/29/how-to-choose-colours-procedurally-algorithms/).


(Tiny Wings)


(Blowfish Rescue)


우리는 또한 유니티 플러그인 Colors(https://www.assetstore.unity3d.com/en/#!/content/29345) 만들었죠, 이것과 같이.




색의 변화는 또한 많은 콘텐츠를 위해서 사용됩니다. 팔레트의 교체(아래에서 설명할게요) 장소가 여전히 문제일 , 적과 아이템의 수를 늘릴 있는 유명한 방법이었습니다. 오늘날, 색의 변화는 여전히 콘텐츠를 늘리기 위한 방법으로 유명하지요. 기법은 색이 식별자로 사용될 종종 사용됩니다.




기술


게임이 검은 화면에 흰색과 초록색의 그래픽으로 소개된 이후로, 기기에 보여지는 색의 범위는 극적으로 증가했습니다. 이러한 변화는 게임을 더욱더 현실감있게 보여지도록 이끌었죠.


Galaxian(1978)(역자 : 문단에서 표현되는 게임은 갤러그와 같은 고전 게임입니다. 별도의 주석을 달지 않도록 하겠습니다) RGB 색상표를 사용한 게임입니다. 그때까지는 게임에서 보여지는 유일한 색상은 셀로판지와 판지 배경을 사용해서 제작 되었죠.


편집자: 우리가 첫 번째 컬러 게임에 대해서 실수를 한 것 같습니다. 이 시기 이전에 적은 컬러를 사용한 게임이 있었죠. 정확한 사실은 약간 애매하지만, Wimbledon(1974), Color Gotcha(1973)이 최초로 언급될 만한 후보입니다. Galaxian은 아마도 사양한 색상의 스프라이트를 사용한 첫 번째 게임입니다. 최초의 “진정한” 컬러 아케이드 비디오 게임은 무엇일까요? Keith Smiths는 색을 사용한 첫 게임(http://allincolorforaquarter.blogspot.kr/2012/09/what-was-first-true-color-arcade-video.html)을 찾아보았습니다. (의견에 링크를 공유해준 Nicholas Ralabate에게 감사를 표합니다)


(Galaxian)


편집자: 다음 문단은 일부 부정확한 내용을 수정하기 위해서 다시 작성된 부분입니다. (해당 부분을 지적해준 Mikie Simons에게 감사를 표합니다)


몇몇 256색 이상을 특징으로하는 초기의 기기는 482개의 색을 동시에 보여주고(512색까지 가능하지만)  4096색(65536색까지 가능한) Neo Geo(1990)를 갖춘 PC엔진(1987)이었습니다.


256색 이상의 것을 특징으로 한 초기의 기기는 482색(512색까지 가능한)을 특징으로 한 PC엔진과, 4096색(65536색까지 가능한)을 특징으로 하는 Neo Geo(1990)였습니다. 1994년의 플레이 스테이션은 16.7백만 색상의 표현을 기록했죠.


Colour Lovers(http://www.colourlovers.com/blog/2011/11/03/the-colorful-history-of-video-games-infographic-2)은 비디오 게임에서의 색의 역사에 대한 멋진 인포그래픽을 만들었죠. 아래에 그중 일부가 있어요.




기기의 영역(프린티너, 텔레비젼이나 LCD 화면과 같은) 해당 기기에서 재생할 있는 색의 공간을 뜻합니다. 대부분의 화면을 가진 기기에서는 주로 빨강, 초록, 파랑색을 사용해서 화면을 그리지요. 가지 색상의 조합은 삼각형 내부에 있는 영역에 대한 표현을 가능케 합니다.




기술의 발전은 각각의 장비들이 넓은 영역을 표현할 있도록 이끌었고, 이에따라 게임이 많은 색을 표현할 있도록 도와주었습니다. 우리가 있는 모든 영역을 표현할 있는 장비는 아직 실현불가능한 목표입니다. 하지만 장비들은 이에 점점 가까워지고 있어요. 몇몇의 프로젝터들은 영역을 넓히기 위해서 많은 색을 사용합니다. 예를 들어, Brilliant Color(http://www.ti.com/dlp-chip/overview.html) 프로젝터지요. 레이저 비디오 프로젝터(https://en.wikipedia.org/wiki/Laser_video_display)는 3개의 레이저를 사용해서 오늘날 디스플레이 장비들이 표현할 수 있는 최대의 색 영역을 표현합니다(인간이 볼 수 있는 색상의 90%정도요). 이는 레이저가 단색의 표현에 있어서 아주 정확하다는 사실에서 비롯되었습니다.


지각할 수 있는 색의 수를 늘리기 위한 오래된 기술


팔레트 바꿔치기는 8비트와 16비트 게임에서 그래픽 콘텐츠의 분량을 늘리고, 2D 스프라이트를 추가로 제작해야 하는 부담을 줄이기 위해서 사용했습니다. 게임 캐릭터와 아이템의 다양성을 늘리기 위한 간단한 방법은 같은 스프라이트를 재사용하는 것이지만, 다른 색상 팔레트를 사용했습니다.




팔레트 바꿔치기는 또한 게임의 서로 다른 장면들 사이에서 사용할 있는 색의 종류를 증가시켰습니다. 3D 렌더링이나 33비트 트루 컬러 게임 이전에, 팔레트 사이클링(http://www.effectgames.com/effect/article-Old_School_Color_Cycling_with_HTML5.html)은 물이나 불, 다른 환경 애니메이션을 그리기 위해서 S.P.Y Special Project Y(https://www.arcade-museum.com/game_detail.php?game_id=9391)와 같은 게임에서 사용되었습니다. 컬러 사이클링이 단일 이미지와 256색 팔레트를 사용하는 것으로 발전되었죠(당시엔 모든 그래픽 카드가 할 수 있는 거였어요). 눈에 보이는 이펙트(또는 애니메이션)은 팔레트 사이에서 색이 바뀌면서 마치 픽셀이 실제로 움직이는 것과 같은 착각을 주었습니다.







디더링(역자 : 렌더링 용어 하나입니다 안티에일리싱과 비슷한 효과를 낸다고 생각하시면 같습니다) 서로 다른 색상의 픽셀을 인터리빙하여 겉으로 보이는 색의 갯수를 늘리는 사용되는 기술입니다. 예를 들어, yellow-green 색상을 얻기 위해서, 노랑색과 초록색의 체커 보드 패턴이 사용될 있습니다. 당신은 아래에 있는 알라딘의 스크린샷과 같이, 모래언덕과 구름이 디더링된 것을 있지요.




색의 생물학


색은 물체에서 반사되어 눈의 망막에 도달하는 빛의 광선이 뇌에서 감지되어 보여집니다. 하지만, 서로 다른 색깔은 다른 생물학적 효과를 가질 있으며, 모든 사람들이 같은 색상을 보진 않습니다. 이것이 많은 게임에서 플레이어의 경험(https://www.livescience.com/21275-color-red-blue-scientists.html) 있어서 영향을 있지요.


생물학적 영향의 가지 예는 우리가 어떻게 붉은색을 보느냐입니다. 붉은 광선은 망막 뒤에 초점을 맞추고, 망막을 아픙로 당기기 위해 수정체가 볼록하게 되도록 합니다. 그러므로, 우리는 빨간색의 영역이 앞으로 나아가고 있다고 인지하지요. 이것은 아마 우리가 Mirror’s Edge 같은 게임에서 붉은색이 우리의 시선을 사로잡고, 활용되는 지에 대해서 설명될 있습니다. 또는 따뜻한 계열의 색이 차가운 계열의 옆에 있으면 전진하는 느낌을 주는 지에 대해서 설명할 있습니다.


게임에서의 색맹


색맹 또는 색약은 정상적인 조명 조건에서 색을 보거나 색상의 차이를 감지할 없거나, 영역이 감소합니다.


색맹은 12명의 남자 , 혹은 200명의 여자 1명꼴로 발생합니다. 가장 일반적인 색맹은 - 색맹이며, 이로 인해 적색과 녹색의 색조를 구별하는 어려움이 있습니다. 아래의 이미지는 일반적인 시각을 가진 사람들의 색상이고(왼쪽), 오른쪽은 - 색맹이 보는 색입니다.




대다수의 게임이 색맹인 플레이어를 위해서 제작되어지지 않았지만, 많은 게임들이 색상 외의 시각적인 단서(모양, 글자, 패턴) 제공함으로써 디자인 과정에서 색맹을 고려하기 시작했습니다.


1인칭 슈팅 게임의 공통적인 문제는 상대팀을 구별하는 사용되는 붉은색과 녹색의 지표입니다. 유명한 해결책(Call of Duty: Black Ops에서 사용된) 파랑색과 주황색의 교체 수단을 제공하는 것이지요. Treyarch(Call of Duty: Black ops 제작사) 색맹인 게임 테스터를 고용하는 것까지 발전했습니다.




(https://kotaku.com/what-its-like-to-play-games-when-youre-colorblind-1606030489) 색맹인 사람들이 게임을 한다는 것이 어떤 의미인지에 대해서 설명해주고 있스빈다.


불가능한 색깔들


불가능한 색상(또는 숨겨진 색상) 망막의 기능으로 인해 동시에 없는 색상으로, 생물학적으로 없는 색상입니다. 불가능한 색상은 색의 조합으로 이루어지지 않고, “적갈색또는황색으로 보이는 색상과 같은 색상이 비슷하게 보이는 것과 같은 겁니다.


적색 빛은 망막의 원뿔 세포를 자극하려 우리가 붉은색을 보도록 하고, 녹색 빛은 원뿔 세포를 억제하여 녹색을 보게 합니다. 대부분의 색상이 이러한 뉴련의 효과를 혼합하여 표현되는 반면에, 빨강과 녹색의 빛은 서로 상쇄 되므로 동시에 없습니다. 현상은 파랑색과 노란색의 경우에도 발생합니다.


불가능한 색상이 실제로 있음을 입증하기 위해서 수많은 실험이 진행되었습니다. 실험에는 시야 추적 장치 또는 원뿔 세포가 피로해지는 운동을 하는 것이 포함됩니다. 최근에 Oculus Rift(VR 기기) 불가능한 색상을 보기 위해 Diatomic Number(역자 : 게임을 아는 분은 제보 부탁드립니다 ==...) 같은 게임에 사용 되었습니다.


(Diatomic Number)


Player’s Journey in War Robots

War Robots에서 플레이어들의 여정


안녕하세요, 라인스터입니다. 늦었지만 새해복 많이 받으세요. 다들 본가도 다녀오고, 여행도 다녀오셨나요? 저는 원래 이번에 구입한 몬스터 헌터 엔딩이나 보려고 했는데, 어쩌다보니 계속 일이 생겨서 두 시간밖에 플레이 하지 못했네요. 6번째 번역글입니다. 이번 글은 Gamasutra에서(https://www.gamasutra.com/blogs/VadimBulatov/20171219/311892/8203Players_Journey_in_War_Robots.php) 찾은 글입니다. 이 글의 저자인 Vadim Bulatov는 Wargaming의 마케팅팀에서 근무 중인 분입니다. 또한 이 글은 원저자인 Vadim Bulatov에게 허락을 받고 진행되는 번역글이며, 제 블로그에 게시됩니다. 번역자의 의견이 추가되는 부분은 (역자 주:)로 표기하였습니다.


War Robots에서 플레이어들의 여정


War Robots은 3년 전에 모스크바 게임 개발사인 Pixonic이 만든 free-to-play 모바일 게임입니다. 게임에서, 당신은 6v6 PVP 전투에서 거대하고, 걸어다닐 수 있는 로봇을 타고 거점을 탈취하여 지역을 획득하게 됩니다. 그리고 물론, 다른 로봇들을 파괴할 수 있죠.


작년은 War Robots이 두드러지는 해였습니다. 매출은 5배로 상승했고, 매달 3.5백만불씩 증가했습니다. 설치된 기기의 수는 3배로 증가했고, 500백만 대에 도달했죠. DAU는 800,000명에 이릅니다.


왜 War robot이 플레이어들에게 그렇게 매력적이었을까요? 원동력으로 판단을 해보자면, War robots은 World of Tanks(워게이밍에서 발매된 탱크를 조종하는 대규모 액션 게임)이 지배하고 있는 느린 슈팅 게임 장르(역자 주: 원문 slow shooter)에서 유일하게 살아남은 게임입니다. 느린 슈팅 게임 장르에서, 사격을 주고받는 것이 주류 슈팅 게임들보다 더 오래 지속됩니다. 장갑이 있고 생존 가능성이 있는 탑승물 사이에서의 장기적인 전투가 지속될 때 더 현실적으로 보였겠죠.


느린 슈팅 게임들은 작은 실수를 놓쳤습니다. 화면 상에서 조준점을 맞추기 위해서 약간의 시간 손실이 발생하는 것을 위해서 모바일 터치 조작계를 완벽하게 맞추는 것은 그렇게 중요한 것이 아닙니다. 만약 당신이 모바일 플랫폼에서 가장 잘 팔리는 게임들의 목록을 봤다면, 우리는 최상위권에 있는 현실적인 멀티 플레이어 슈팅 게임은 World of Tanks Blitz와 War robots이라는 것을 알 수 있습니다.




그래프상에서, 우리는 지난 한 해동안 느리고, 현실적인 슈팅 게임의 전세계 매출에 대한 비교를 볼 수 있습니다. WoT Blitz와 War Robots은 동시에 출시되었지만, 다른 방향으로 성장하였죠.


우리가 War Robots에 이야기하기 전에, 저는 당신에게 한 해 전에 게임에서 제가 경험한 이야기에 대해서 말해주고 싶습니다. 탈 것과 장비의 등급에 기반을 둔 오래된 매치메이킹 시스템이 존재하던 때였죠. 저는 이 글을 읽는 당신이 이것에 대해서 알아야 한다고 생각합니다, 왜냐하면 게임을 하는 대부분의 사람들이 그 과정을 거쳤기 때문이죠. 2016년에 War Robot에서 200번을 넘는 전투 후에, 저는 마지막 50번의 전투에서 98%의 승률을 가졌습니다. 그리고 전 그리 숙련된 플레이어가 아니었죠. 하지만 War Robot에서, 저는 40연승을 한 후에 갑자기 패배를 하여 매우 기분이 좋지 않았습니다.


높은 승률은 단지 얼마나 돈을 소모 했는지의 결과가 아니었습니다. 저는 오직 15불을 결제했고, 모바일 f2p 게임에서는 아주 적은 금액이지요. 이러한 행운과 승리의 비밀은 개발자들이 알려준 로봇 Gepard를 주는 5$짜리 신규 유저 패키지 덕분이었습니다. 이 로봇은 58km/h의 속도를 가지고 있었고, 매치매이킹 시스템을 망쳐버렸죠.


일반적으로, 로봇들의 속도는 점진적으로 업그래이드 됩니다. 하지만, Gepard의 경우에는 당신은 그러한 이점을 이용하기 위해서 업그래이드 할 필요가 없습니다. 그리고 매치매이킹 시스템에서 낮은 티어를 유지하기 위해서이기도 하죠. 고급 무기인 Magnum과 결합된다면, 저는 빠르게 학살하고 다니는 악몽과 같았죠.


Gepard의 유저들은 매일매일 소셜 네트워크와 게임 포럼에서 괘씸한 것으로 언급되었습니다. 저는 Gepard를 사용해서 50게임 중 48게임을 승리했지요. 저는 현대 MOBA에서 98%의 승률이 가능하다는 것에 충격을 받았습니다. 이것 사실 아주 죄의식이 가득한 즐거움의 기억이지요. 매번 제가 게임을 할 때 나를 어떻게든 말려달라고 희망했지만, 매치매이킹 시스템이 완전히 바뀌기 전까지 이 소망은 이루어지지 않았습니다.



Magnum 장착한 Gepard 98% 승률을 달성한 계정입니다.


War Robot pay-to-win 게임일까요? (역자 : 돈을 이용하면 무조건 승리할 있는 게임일까요?) 2016년에 제가 게임 플레이를 시작했을 , 저는 그렇다고 말했을 겁니다. Pay-to-win 게임을 좋지 않게 하는 지름길이지요. Pay-to-win 플레이어들이 게임에서 여정을 어떻게 인식 하느냐에 대한 방법입니다. 이건 명백하게 퍼블리셔에서 새로운 콘텐츠가 출시되었을 기존의 것에 비해서 강하게 만들어서 빠르게 판매하길 원해서이죠. 하지만 실시간으로 진행되는 PvP 경쟁 게임인 War Robot 같은 게임에서, 그러한 요소는 플레이어들의 경험에 있어서 불쾌하죠. 상호 양립적인 요구사항 사이에서 균형을 찾는 것은 아주 어렵습니다. 이제 만약 그것이 가능하다고 하고, War Robot 바라보죠.



게임플레이


War Robot에서, 플레이어들은 전투에서 수많은 시간을 소모합니다. 게임에서 아주 중요한 부분이지요. 게임으로 돌아오는 이유기도 하고요. 그래서? 우리는 메인 메뉴에서 주황색 버튼인 <<전장으로>> 누르고, 게임의 하나로 들어갈 겁니다. 게임은 당신에게 로봇을 선택하라고 하고, 초읽기 후에 전투가 시작되죠.



War Robot에서의 전투는 굉장하죠


로봇에 가장 많이 장착되는 무기는 사정거리를 가진 미사일이나 레이져입니다. 게임의 맵은 사각형이고, km x km 설정되어 있죠. 게임에는 전장의 안개가 따로 존재하지 않으며, 로봇들이 즉시 미사일 등으로 요격될 있습니다. (역자 : 전장의 안개란 워크래프트2에서 최초로 적용된 시스템입니다. 예를 들자면 번도 가지 않은 지역은 검은색으로 표기 되다가, 지역은 지형이 표기되는 형식입니다) 당신은 사격이 시작되는 즉시 확인할 있죠. 플레이어들은 미사일을 발사하며 빠르게 맵을 움직이고, 엄폐물을 확보하고, 그들은 1:1 전투를 진행하고, 거점을 확보합니다.


전투에서 로봇을 이용한 전술적인 교전과는 별개로, 등대를 조작하는 전략이 존재합니다. 맵상에는 5개의 거점이 존재하고, 만약 팀이 그들 3개를 조작한다면 상대의 점수가 낮아지기 시작합니다. 단순히 로봇을 파괴하기만 해서 승리하는 것은 어렵지요. 플레이어들은 격납고에 5개의 보관소를 부여받고, 로봇이 파괴된다면 다른 로봇을 이용해서 전투를 지속할 있습니다.


게임에는 개의 주요 모드가 존재합니다. 도미네이션 모드와 비콘 러쉬 모드지요. 도미네이션 모드에서, 로봇은 파괴된 후에 최초 생성 지점에서 되살아납니다. 비콘 러쉬 모드에서, 획득한 비콘 어떤 것이라도 즉시 보여집니다. 번째 모드에서, 전투는 빠르고 폭력적으로 진행됩니다. 그래서 숙달된 플레이어들은 번째 모드를 선호하지요.


디자인


War Robot 맵은 대부분이 산업화된 풍경이거나, 폐허입니다. 시내에는 지도가 하나밖에 없는데, 보기엔 부자연스러워요. 아이러니하게도, 맵에서 우리의 로봇이 5 높이의 거대한 것이라는 것을 있죠.


게임에서 승리하는 주요 조건은 비콘을 조작하는 것입니다. 이것이 맵이 올바른 디자인을 가져야 하는 이유이지요. 저는 Pixonic 방식을 좋아하고, 그들은 해놨어요! 맵은 꽤나 자연스러워 보이지만, 동시에 대칭적입니다. 대부분의 가장 많이 플레이 되는 맵은 중앙에 비콘을 가지는 보수적인 디자인을 하고 있습니다. 도미네이트 모드의 전투에서, 당신은 5개의 비콘 3개를 탈취해야할 필요가 있습니다. 팀은 생성된 지점 근처에 있는 2개의 비콘을 즉시 획득하고, 중앙의 비콘을 차지하기 위해서 주요 전투를 치르지요. 이러한 맵에서, 고전적인 이야기 흐름의 반전이 있는데 - 이는 맵의 중앙에서 힘겨루기가 지속될 당신의 비콘이 갑자기 사라지는 것입니다.


맵의 핵심 특징은 공개되었으면서도, 제한된 상에서 양분되어 있다는 것입니다. 눈에 띄는 장소에서, 다른 로봇들을 중간거리와 사정거리를 가진 무기로 공격할 있는 기회가 있습니다. 셸터와 미로가 많은 맵에서는, 로봇들은 근접 무기를 착용하는 것이 이점이 있지요. 이러한 방식에서, 맵의 디자인은 그들의 로봇 목록에 있어서 다양한 종류의 총을 착용하도록 장려합니다. 이러한 상황은 플레이어들에게 유리한 것은 아니지만, 이러한 반응에 있어서 개발사인 Pixonic 이제 새로운 맵을 만들 대칭 구조가 아닌 맵을 채택합니다. 계곡 맵에는 3개의 비콘이 있는데, 중에서 폐허가 미로에 위치한 비콘이 맵의 중앙에 있고, 개의 비콘은 맵의 가장자리에 있습니다. 이러한 디자인은 로봇들이 근접 무기와 사정거리를 가진 무기를 동시에 착용하도록 유도하고 있습니다.



비대칭한 계곡 맵의 예는 로봇들이 근접 무기와 사정거리의 무기를 착용하게 하는데 적합하도록 설계되어 있습니다.


조작


저에게 있어서, 액션 게임에서 쉽게 플레이 있는 것이 가장 중요한 요소입니다. War Robot GTA 기반으로 두고 간단한 플레이 방식을 채택했습니다. 왼쪽 손가락으로 다리를 조작하는 동안, 오른 손가락으로는 로봇의 상체를 돌리거나 조준하는데 사용하죠. War Robot 아주 운이 좋습니다, 왜냐하면 게임이 인간의 움직임에 기반을 로봇을 만들었기 때문이지요. 로봇들은 아주 자연스럽고 부드럽게 움직입니다. 전투가 진행되는 동안, 어떤게 방향으로 움직이고 쏘는 지에 대한 추가적인 방법에 대한 고민이 필요하지 않습니다. 플레이어들은 단지 쏘는 것에 집중하면 돼요.


게임은 조준점과 관련된 문제를 훌륭하게 풀어냈습니다. 모바일 슈팅 게임에서, 조준점은 상대에게 고정되거나, 또는 당신이 직접 조작해야 합니다. War Robot에서는 이러한 요소들은 훌륭하게 결합해놨습니다. 조준점은 빨간 타겟 상자 안에 적이 있다면 자동으로 조준되고, 적과의 거리에 대한 정보를 표기해줍니다. 그리고 빠르게 목표에 집중할 있게 해줍니다. 사격을 시작한 후에, 조준점은 당신이 목표물에서 멀어질수록 부드럽게 움직입니다. 일반적으로 이것은 사격을 하기엔 충분합니다. 픽셀 단위로 움직이는 것을 싫어하는 캐주얼 플레이어들을 위해서, 호밍(역자 : 간단하게 설명하자면 유도입니다)이나 지역에 피해를 주는 확산형 무기들이 다수 존재합니다.


로봇의 배치 & 매치매이킹


게임 안에 있는 다양한 장비들을 분류하는데 있어, 당신은 종류의 무기로 시작을 해야할 필요가 있습니다. 무기는 무거움, 중급, 가벼움으로 분리되어 있습니다. 무기의 타입은 오직 해당 무기의 규모로만 판정되고, 사정거리나 데미지의 타입에 따라서 분류되지 않습니다. 무거운 무기에 3점을 주고, 중간에 2점을, 가벼운 무기에 1점을 부여해보죠. 무기에는 또한 특별한 능력(점프, 질주, 투명화 ) 있고, 실드의 경우 1포인트를 차지합니다.


가벼운 로봇은 55km/h 속도에 90,000 체력, 착용할 있는 무기는 3 정도를 평균으로 책정되어 있습니다. 보통의 로봇은 40km/h 속도에 150,000 체력, 그리고 5 만큼의 무기를 착용할 있죠. 거대한 로봇의 경우에는 30km/h 속도에 170,000 체력, 그리고 8점을 부여받죠.


Pixonic 주로 HP 부드러운 조절을 통해서 밸런스를 조절합니다. 하드 유저들을 위한 밸런스는 특수 능력의 조절을 통해서 하고 있죠.


현재 게임에는 29종의 로봇과 28종의 무기가 존재합니다. 로봇과 무기들은 1에서 12까지의 등급 중에서 선택할 있지요. 로봇에 설치할 있는 무기의 다양성은 게임에 깊이감을 부여해줍니다.


부가적으로, 우리는 근접 무기나 사정거리를 가진 무기를 혼합할 있습니다. 또한 <크리스탈 캐논>이나 걸어다니는 요새를 만들 있죠. 이러한 요소는 소셜 네트워크 상에서 유저들 간에 서로 알려주거나, 분쟁요소가 되곤 합니다. 그래서, 당신은 어떻게 모두가 동등한 기회를 가지면서 전장에서 싸울 있도록 하겠습니까?



로봇들이 다른 종류의 무기들로 무장되어 있다


War Robot 출시된 이후로, World of Tanks Blitz War Robot 효율적인 매치매이킹 시스템을 사용했습니다. 탱크들은 본인 기준으로 +/-1 티어이면서, 가벼운, 중급, 무거운 것의 수를 같게 전투를 진행하게 됩니다. 하지만 Wot Blitz에서는, 같은 등급와 타입의 탱크들은 이미 어느정도 밸런스가 맞아 있고, 무게도 비슷합니다.


WoT Blitz에서, 이러한 커스터마이징의 제한은 실제에 가까운 콘텐츠를 제공하기 위한 욕망에 의해서 뿐만 아니라, 장비의 등급에 따라서 매치매이킹을 하는데 편리함을 제공합니다. 플레이어들은 어떤 탱크라도 조종할 있죠. 이러한 시스템은 매치매이킹을 돌릴 항상 같은 성능을 가진 상대를 불러오게 됩니다.


2017 3 이전에, War Robot 것과 장비의 등급에 따라서 매치매이킹을 돌리는 비슷한 구조를 사용했죠, 하지만 커스트마이징의 확장에 따라서 신뢰할 없는 게임이 있는 수많은 가능성이 산재된 혼란스러운 시스템으로 바뀌어버렸습니다.


리그를 위해서 매치매이킹의 규칙을 바꿈에 따라서, 우리는 League of Legend에서 동일한 문제를 겪고 있다는 것을 발견할 있었습니다. 플레이어들은 리그에서 승리하기 위해서 가장 효율적인 것을 사용해야만 하죠. 당신은 가볍거나, 재미있는 로봇을 사용할 없고, 다른 사람들과 경쟁을 이룰 있는 것을 타야만 하죠.



War Robot에는 리그가 있습니다. , 리그의 모든 과정은 초기화되죠.


리그의 진행은 이제 플레이어들의 자기평가를 위한 핵심 요소이다. 리그에서 리그로의 이동은 전투에서 승리하거나, 훌륭한 행위를 했을 행동 점수를 얻은 후에 발생하고, 보상은 신뢰할 있는 수단인 골드로 지급됩니다.. 보상은 또한 리그의 끝에 도달하면 플레이 결과에 따라서 지급된다. 반면에, 높은 리그에 도달할수록, 당신이 상대할 있는 상대가 많아지고, 로봇을 설정하는 드는 비용이 증가합니다.


잔존률


새로운 플레이어가 아름다운 인터페이스를 지닌 격납고에 진입합니다. 격납고의 주요 목적은 플레이어들은 즉시 전투로 보내는 것이지요. PvP 배틀은 War Robot에서 잔존률을 유지시키기 위한 주요 항목입니다. 부가적인 게임 모드는 많은 경험을 함에 따라서 개방되며, 이는 플레이어의 레벨과 연관되어 있습니다.



새로운 플레이어를 위한 격납고에서는 전투 시작 외에 어떠한 버튼도 누를 수가 없습니다.


화폐


플레이어가 게임 내에서 처음 만나게 되는 화폐는 실버입니다. 이는 게임을 통해서 있지요. 실버의 일부는 피해를 받은 로봇을 수리하는 사용됩니다. 실버의 주요 소모 수단은 로봇을 구매하거나 등급을 올리고, 무기를 구매하는데 쓰입니다.


기본적으로 지급하는 가벼운 로봇을 타고, Destrier(역자 : 튜토리얼 맵인 같습니다)에서의 전투는 새로운 슬롯을 개방하고, 다른 로봇을 사기에 충분한 실버를 벌어다줍니다. 단계에서, 게임의 핵심 가치 하나를 알려줍니다, 개방된 슬롯의 갯수 말이죠. 만약 로봇이 전투에서 손상된다면, 번째, 그리고 추가로 개방될 슬롯에 있는 로봇을 사용해서 전투를 지속하게 됩니다. 번째 슬롯을 개방하는 데에는 100골드($1) 소모됩니다. 골드는 실제 돈으로 구매할 있는 화폐지요.


과정


추가적인 슬롯은수평으로 상승하는 반면에, 로봇의 성장은수직으로 진행됩니다. War Robot에서의 실버 4개는 로봇의 등급을 상승시키고 무기는 구매하는 쓰이는 주요 도구지요. 등급을 상승시키기 위한 시간은 레벨이 오를수록 점차 상승합니다. 예를 들어, 5등급에서 6등급으로 상승시키기 위한 시간은 8시간이 소모되지요. 로봇의 등급을 1등급에서 12등급으로 상승시키는 걸리는 시간은 20일이나 걸립니다. 또한 여러분이 무기의 등급을 상승시킬 때도 동일하게 적용됩니다.


모바일 게임을 플레이 하는 대다수의 플레이어들은 선호하는 게임 적어도 하나의 전략 게임에서 타이머를 능력의 상승이 타이머로 진행되는 것에 익숙합니다. 그러므로, War Robot 플레이어들은 즉시 업그래이드의 순환으로 들어오게 됩니다. 이러한 요소는 플레이어들에게 게임으로 돌아오게 명분을 제공하며, 플레이어들에게 중요한 일이 있다고 푸쉬 메시지를 보낼 명분을 얻게 됩니다.


새로운 플레이어는 비록 그들이 패배하더라도 다음 리그인 실버 리그로 이동할 있습니다. 각각의 전투에서, 플레이어는 패배의 폭풍 속에서 다음 리그로 진급할 있는 능력을 갖추게 됩니다. 이것은 게임에서  무기의 파워나 속도, 그리고 생존에 있어서 뒤쳐지고 있다는 감정을 느끼게 하지요.


이러한 상태에서, 가지 가능한 해법이 있습니다.


  1. 플레이어들이 실제 돈을 사용해서 로봇과 무기를 구입합니다. Lancelot, Galahad, 그리고 Orcans 같은 로봇은 플레이어들이 그들의 리그에서 새로운 국면을 접하게 하고, 다시 플레이어들을 전장으로 이끌겁니다.


  1. 플레이어는 무료로 제공되는 로봇을 타고, 희귀한 무기들의 조합을 사용할겁니다. 이는 현재 게임의 메타에서 보다 적극적으로 성장할 있도록 이끌지요.


대체로, 돈을 지불하는 것을 원하지 않는 플레이어들이 모든 것들이 게임을 이기는 도움이 되지 않는다고 이해하는 순간, 게임은 번째 재화를 제공해서 플레이어들이 돈을 쓰는 대신에 시간을 소모해서 멋진 로봇을 얻을 있도록 합니다. 레벨 20에서, 공장이 85시간마다 개방되고, 플레이어들은 4시간마다 공장에 85점을 넣을 있습니다.



공장 점수 - 비과금 플레이어들이 고급 로봇을 있는 기회지요.


게임에서 가장 좋은 무거운 로봇인 Rhino 15,000점이 소모됩니다. 이는 내내 매일 4시간 게임을 해서 85점을 해서 얻어야 하죠. 하지만, 과정은 빠르게 진행할 있습니다. 일단 매일 공장에 들어가면, 플레이어들은 40점을 무료로 얻을 있고, 약간의 골드를 사용해서 공장 점수로 전환할 있는데, 이는 1-12 비율입니다. 이러한 행동이 반복됨에 따라서 전환 비율은 1-1.35까지 효율이 나빠집니다. 결과적으로, 다시 플레이어들은 조심스럽게 골드를 소모하게 됩니다.


비과금 플레이어들의 적극적인 게임 참여는 게임의 전체 단계에 있어서 War Robot 생태계에 중요합니다. 이들은 게임을 추천하면서 이득을 얻을 있습니다, 바로 영향 점수지요. 플레이어는 게임에 초대를 하면서 점수를 얻을 있습니다. 플레이어들은 영향 점수를 소모해서 경쟁력있는 희귀한 로봇을 있지요. 예를 들어, 중간 무게의 로봇을 사기 위해서, 과금 플레이어들은 12명을 초대하는데 성공해야 하지요.


3번째와 4번째 화폐는 비과금 플레이어들을 대상으로 영구적인 프로모션으로 작용합니다. 이는 그들에게 다른 사람들을 게임에 초대하는 프로그램을 통해서 정상으로 올라갈 있는 기회를 제공하지요. 또한, 공장 점수는 과금 플레이어들이 정상으로 올라가는 속도를 늦추는 역할도 수행합니다.


사교


MOBA 장르에서, 함께 팀을 맺고 플레이 하는 사람들은 임의로 만나 팀을 이루는 사람들에 비해서 이점을 갖습니다. War Robot 플레이어들에게 소대를(역자 : ) 이루어서 전투를 치르면 약간의 추가 보상을 지급하는 것을 통해서 협업을 권장하고 있습니다. 메뉴에서, 플레이어들은 소대를 만들 있고, 그들의 친구를 페이스북이나, 이전에 같이 플레이 했던 사람이나, 클랜에 소속된 이들을 초대할 있습니다.


여러분이 소대를 만들 , 거의 비슷한 리그에 속한 사람들을 초대 해야만 합니다. 전투는 최상위 리그에서 진행됩니다. 클랜은 36명의 클랜원을 포함할 있기 때문에 이러한 문제를 해결하고, 당신의 리그에 속한 사람들을 소대로 초대할 있습니다. 또한 클랜원들의 활동 점수를 통해서 최상위 100개의 클랜을 노출시키는 점수판이 존재하죠.


화폐화


War Robot에서의 골드는 플레이어들이 실제로 결제를 후에야 등장합니다. 게임을 처음 켜면 100골드를 가지고 시작합니다. 플레이어들이 매번 다음 레벨로 상승할 때마다 50골드를 얻을 있습니다. 2개의 일일 퀘스트가 존재하고, 각각 30골드를 획득할 있지요. 승리한 게임에서 훌륭한 플레이를 했다면, 게임은 데미지를 가장 많이 플레이어에게 5골드를 제공하고, 비콘을 가장 오래 차지한 플레이어에게도 5골드를 지급합니다.


작고 단단한 화폐의 안정성은 플레이어가 돈을 소비하는 것이 익숙해지게 만들고 골드의 가치에 대한 심리적 장벽을 제거합니다. 100골드면, 번째 슬롯을 구매할 있습니다. 그리고 우리가 4번째 슬롯을 개방하기 위해서는 1,000골드가 필요하죠. 5번째 슬롯은 5,000골드($50) 필요하고, 슬롯 개방은 클랜전을 하기 위해서는 필수죠.



5번째 슬롯은 War Robot 사용자 구매 가이드에 따르면 코어 게임을 위한 위한 핵심 구매처이죠. 사진은 챔피언 리그 플레이어의 격납고입니다.


격납고에서 4, 5번째 슬롯은 플레이어들에게 명확한 이득을 가져다 주는데, 이는 전투에 있어서 끼칠 있는 영향력을 증가시켜주기 때문입니다. 이것은 수익 창출에 있어서 적절한 모델이지요. 프리미엄 계정은 획득할 있는 실버와 경험치를 2배에서 1.5배로 증가시켜줍니다. Wot Blitz보다는 적게 작용하지요.


경험치는 불필요한 것이며, 실버는 로봇을 수리하는 대신에도 사용되곤 하지요. 플레이어는 또한 타이머 시스템 때문에 로봇이나 무기의 등급을 상승시키는 제한이 있습니다. 하지만 실버와 프리미엄 계정의 가치는 수백만의 실버가 소모되는 등급 상승을 도움이 되기도 하지만, 그쯤 되면 플레이어는 다른 재화를 가지고 있을 가능성이 있지요.


프리미엄 로봇


게임의 현실은 만약 당신이 가장 재밌고 효율적인 로봇과 무기를 사용하기 위해서는 과금을 해야 한다는 것입니다. 무과금에 있어서, 시작 로봇이라고 불리는 것이 튜토리얼에서 제공됩니다. 이것은 당신이 상위 리그에 도달하는 순간마다, 이미 나은 것들을 획득한다는 것을 의미합니다.


하지만 이러한 규칙에는 예외가 있을 가능성이 있습니다. 예를 들어, 당신은 Griffin이라는 로봇을 실버로 구매할 있습니다. 각각 2개의 중간급과 가벼운 무기를 장착할 있는 4개의 슬롯이 있고, 중요한 것은 적이나 미사일로부터 도망치거나 점프할 기회를 얻게 되죠. 그런데, 이러한 강력한 무장은 실버로만 있고, Griffin 러시아의 죽음의 버튼이라고 불립니다. 왜냐하면 로봇은 게임에 돈을 쓰지 않는 러시아 사람들에게 개방되거든요.



무과금 유저를 위한 러시아의 죽음의 버튼 Griffin 로봇은 상위 리그에서도 관련이 있습니다. 우리는 모습을 이전에 사진으로도 적이 있죠.


그래서, 어떤 로봇이 War Robot에서 정말 프리미엄인 로봇일까요? 당신은 일일 퀘스트를 통해서 골드를 있습니다. 공장 점수는 당신이 전혀 전투에 참여하지 않아도 획득할 있습니다. 2017 8 말에 3.1 업데이트가 등장한 이후에, 블랙 마켓 방식의 갓챠가 질문에 대답할 있습니다.


갓챠(역자 : 랜덤박스, 뽑기 시스템이라고도 불리죠)


2017 9월에, 밸런스에 맞지 않는 Dash 로봇이 거대한 무기와, 방어막과, 기동성을 가지고 등장했습니다. 당신은 로봇을 오직 블랙 마켓을 통해서 얻을 있죠. 당신은 랜덤 박스를 있는 특별한 열쇠를 얻을 있는 갓챠를 돌려야만 합니다. 게임의 미션을 통해서 적은 양의 열쇠를 얻을 있지만, 그들은 돈으로 구매하는 것이 필요합니다. 뽑기는 2017 9월까지 유지되었고, 게임의 역사상 가장 많은 수익을 가져오게 됩니다.


2017 10, 새로운 로봇이 Inquistitor 새로운 무기인 Ember 들고 블랙 마켓에 등장합니다. 결과적으로, 뽑기의 디자인이 바뀌었습니다. 이전에 우리는 게임 안에서 최고의 로봇을 얻을 있었죠. 하지만, 새로운 갓챠에서는 우리는 로봇과 로봇에 사용될 무기를 만들기 위해서 새로운 요소를 얻어야 합니다. 로봇을 만들기 위해서 당신은 10,000조각이 필요합니다. 당신은 각각의 조각을 있지만, 그들은 평균적으로 3,500조각에 $100으로 판매되고 있지요.


조각들의 가격을 말해보자면, 개발자들은 플레이어들의 갓챠를 통해서 얻는 이점을 보여줬습니다. 여러분은 새로운 로봇을 $300 구매할 있어요. 당신은 갓챠에 돈을 쓰고, 4대의 새로운 로봇의 6-7,000개의 조각과, 새로운 무기, 그리고 많은 골드를 얻을 있어요.


갓챠 디자인의 변화는 뽑기 방식의 가장 문제를 해결했습니다. 서로 비슷한 로봇, 콘텐츠의 부족, 그리고 플레이어들이 원하는 콘텐츠를 얻지 못했을 때의 좌절감이지요. 조각을 통해서 새로운 로봇과 무기를 제공하고, 개발자들은 플레이어들이 보상을 필요로 하는 콘텐츠의 수를 줄였습니다. 그러므로, 플레이어는 강력한 로봇의 조각을 약간 얻었을 기뻐하고, 어떻게 나머지 조각을 모을까 계획을 짜기 시작하죠.



뽑기는 자동 슬롯 머신처럼 보입니다. 플레이어들은 거의 매번 그가 강력한 로봇을 얻기 위해 갓챠를 한다고 인식하지만, 이번에는 운이 좋지 않았네요.


결론


War Robot pay-to-win 게임일까요? 저는 계정으로 실험을 해봤습니다. 2016년에, 저는 대의 로봇에 $15 사용했고, 98% 승률을 달성했고, 번에 평균적으로 2-3대의 로봇을 상대할 있었습니다. 하지만, 2017 10월에, 저는 많은 돈을 지불했습니다. 저는 게임에서 가장 가장 강력한 로봇, 기동성을 가진 Inquisitor 무적의 방어막을 가진 Lancelot 획득했죠.


50번의 전투 후에, 승률은 62% 되어 있었습니다. 생각에, 리그에서 전투를 진행한다면 낮아지겠죠. 저는 1:1 싸움에서는 이길 있지만, 만약 2 이상의 적을 만난다면 포기할 거에요. 실제 돈을 쓰는 로봇은 더이상 다른 플레이어들에게 악몽이 아닙니다. 그들은 게임을 즐겁게 하고 있어요. 모든 것은 어떻게 작용해야 하느냐에 따라 작동하고 있습니다.


2017년에 계정은 62% 승률을 가지고 있습니다. 게임은 1 전보다 공평해졌지만, 여전히 지갑 전사들에게 약간 유리하죠.


매치매이킹의 변화에 대해 개발팀의 결정에 있어서, Pixonic pay-to-win 제거하고 싶었던 뿐만 아니라, 그들은 플레이어들에게 비싼 콘텐츠를 기회를 얻고 싶었을 것입니다. 이제 돈을 쓰는 사람들은 월정액을 필요가 없어요. 플레이어들은 게임의 새로운 규칙을 받아들이고, 2017년에 들어서 War Robot 수입과 플레이 인원은 증가하고 있습니다.


이야기는 우리에게 다른 게임을 참고하는 것이 항상 도움이 되진 않는다고 알려줍니다. War Robot 개발 과정에 있어서, World if Tanks 등급에 따른 매치매이킹을 만드는 것이 예전에는 명백했지요. 게임에는 것의 등급이 있습니다. League of Legend에는 캐릭터의 레벨이 없고, 매치메이킹은 그들의 능력에 의해서 작동하지요. 하지만 방식으로 War Robot 최고가 되었습니다.


댓글


역자 : 해당 글의 댓글에서 Wargaming 게임 디자이너가 댓글로 의견을 달아줘서 추가로 번역을 진행했습니다.


Ramin Shokrizade


World if Tanks Blitz 선임 게임 디자이너로서, 글을 교육적인 입장에서 소름이 끼치면서 발견했습니다. Wargaming 매달 제게 상기 시킵니다, 회사는 제게 작년부터 프로젝트에 관한 일에 모든 것을 비밀로 유지 하라고 했어요. 그래서 저는 여기서 조용히 있었죠. 경우 10주를 디자인 하는 소모하고, 1 후에 저는 제가 작업한 것에 대해서, 그리고 어떤 효과를 미쳤는 지에 대해서 어떠한 데이터도 받을 없었습니다. 이는 시간이 지나면서 지표가 점차 상승한 War robt 비해서, 평탄한 지표를 보여주는 우리 게임이 그랬는 지를 설명해주지요. Blitz 이런 일이 발생했는 지에 대한 추측은 제가 팀에서 유일한 미국인이며, 제가 게임에서 디자인한 것에 대해서 많은 것들을 모르기 떄문입니다. 여기서 저는 추측만 있었을 뿐이고, 제가 나은 답변을 안다면 Wargaming 변호사들은 제가 그것을 제공하는 것을 막을 겁니다.


당신이 보여준 Blitz 지표 자료는 제가 회사에서 디자인한 것에 대해서 18개월 동안 제공받은 것에 비해서 훨씬 많은 데이터를 포함하고 있습니다.


War Robot 최근에 많은 pay-to-win 요소와 도박요소를 도입한 것으로 보입니다. 이는 언제나 단기간에 있어서 매출의 상승을 부르지만, 장기적인 매출 지표를 줄이는 경향이 있습니다. 우리가 오직 여기서 보여진 단기적인 것만 본다면, 그들이 지속 가능하다고 가정하는 것은 매력적으로 보일 수도 있지만 그럴 가능성은 아주 작습니다.


게임의 환경과 밸런스, 그리고 새로운 로봇을 추가하는 것은 제가 예전에 2000년과 2001년에 일했던 Shattered Galaxy에서 일하며 제가 얻은 경험을 되살렸습니다, 유저들을 잃는 것이지요.


Vadim, 당신은 글에서 개발자들과의 관계를 구체적으로 언급하지 않아도 됩니다. 그래야 도움이 거에요.


저는 확실히 사회적 메커니즘(역자 : 친구 초대 시스템을 말합니다) War Robot에서 도움이 됐을 거라고 생각해요. 이것은 제가 Wargaming 가지 성공적인 게임에 도입하려고 했던 것이지만, 그걸 없었는 지는 말할 없습니다. 이것은 Wargaming 게임에서 가장 약한 부분이에요.


이제 만약 당신이 $15 사용해서 98% 승률이 가능하다면, 이것은 게임이 이전엔 명백하게 pay-to-win이었다는 것을 의미해요. 현제도 여전히 pay-to-win이죠, 하지만 제품의 가격이 크게 상승했고, 당신은 승자의 곁에 머무려고 애쓰는 사람 중에 명이에요. 하지만 이러한 구조는 과금하는 사람들의 비율에 있어서 거의 변동이 없을 거에요. 그러므로 당신은 글의 제목이 말하듯이, 사람들이 “War Robot 몰려들게하지 않는다면 플레이어들을 잃을 거에요. 이에 대처하는 일반적인 방법은 플레이어들이 입수할 있는 재화를 늘리는 것이지만, 당신이 보여준 표에는 전혀 반영되어 있지 않아요. 그리고 당신은 실제 플레이어 수의 변화( 글의 제목이죠) 전혀 보이지 않습니다.


Vadim Bulatov


당신의 생각이 담긴 댓글에 감사합니다. 글이 War Robot 전반적인 좋은 점을 설명하기엔 부족했군요.


, 확인해보죠.


  1. War Robot ( 연간 매출 / 다운로드 ) 2$입니다. 이것은 게임이 나은 방향으로 가고 있다는 징후 하나입니다. Wot Blitz 같은 비율이죠.


  1. 메타 게임. 플레이어들이 상위 리그에서 플레이 하기 위해서 과금이 필요한 로봇이 있어야 하나요? 아니요. 상위 리그의 플레이어들은 여전히 무료 로봇인죽음의 버튼” Griffin 사용합니다.


  1. 커뮤니티의 분위기. 저는 Wargaming games에서 년을 운영팀에서 일했고, 저는 커뮤니티가 얼마나 중독성 있는지 알고 있습니다. War robot 그것에 대해서 혼란스러워 필요가 없어요. 커뮤니티는 게임이 매치매이킹 문제가 있을 때부터 함께 있었고, 지금은 상황이 나아졌습니다.


War robot 매치매이킹의 변화 이후, 작년에 비해서 매출이 꾸준히 상승하고 있습니다. 저는 당신이 말한 공격적인 갓챠 방식이 플레이어들의 게임 생활에 영향을 미친다는 것에 동의해요. 저는 게임에 대한 모든 지표를 가지고 있지 않죠. 간접적인 결론을 내리기엔 너무 짧은 기간(4개월) 거쳤죠.


P.S 저는 Stephen Drozd에게 당신이 설계한 WoT Blitz 재화 밸런스에 대해서 많은 것을 들었습니다. 여기서 만나서 반갑네요.



절대 들어오지 못할 것 같았던 애플 스토어가 국내에 드디어 들어왔습니다.


  말이 참 많았죠. 대한민국은 일단 기본적으로 애플 제품 판매량이 낮아서 그렇다, 아니면 삼성의 메인 기지라 그렇다. 하지만 결국에 들어왔습니다. 거기에 2세대 애플 스토어라고 불리우는 형태로요. 덕분에 애플 스토어 가로수길이 아니라, 애플 가로수길 이라는 명칭을 사용하고 있습니다.


  사람들이 애플 스토어가 국내에 들어오길 바라는 이유는 참 다양했습니다. 기본적으로 애플코리아는 유한회사이기 때문에 권한이 타국에 있는 직영 스토어에 비해 떨어졌습니다. 거기에 기술지원이나 CS에 있어서도 전문성을 제대로 갖추지 못했지요. 거기에 AS를 모두 유베이드나 대우일렉트로닉 등의 외부 업체에 맡겼기 때문에, 각 센터 별로 서비스의 질이 차이가 났습니다. 경우에 따라서는 동일한 부품의 수리에 가격이 달랐지요. 애플의 승인을 받아야 하기에 수리 기간이 길어지는 것이 덤이었습니다. 저 또한 아이폰4부터 현재 맥북, 애플 워치에 이르기까지 다양한 애플 제품을 사랑하는 사람으로서, 이러한 부분에 있어 불쾌한 경험이 많았습니다. 디스플레이를 수리하기 위해서 며칠을 소모해야 했고, 애플 케어 플러스 등의 부가 제품을 이용하는 것은 꿈만 같았습니다. 아, 참고로 애플 케어 플러스는 아직 정식으로 국내에 출시 되지 않았지만, 일부 제품에 대해서 애플 가로수길에서 서비스를 받을 수 있습니다.


  글을 시작하면서, 저는 아이폰6S를 사용중입니다. 2015년 1차 예약 구매자로 제품을 구매 했고, 불량 배터리 대상자라서 작년 9월인가 10월에 배터리를 교체 받았습니다. 그런데 사실 배터리를 교체하기 전에도 큰 불편함은 없었어요. 그냥 평소의 아이폰이었죠. 그런데 문제는 작년 12월에 들어서 발생했습니다. 기존의 아이폰 배터리의 경우에도 동일한 문제는 있었습니다. 기온이 급격하게 떨어지면 배터리가 40% 정도 남았음에도 불구하고, 꺼지는 증상이었죠. 사실 이건 아이폰만의 문제가 아니기도 하구요. 그런데 제가 겪은 증상은 좀 심각했습니다.


  - 배터리가 100%인 상태에서, 외부에 들고 나가면 10분 안에 강제 종료

  - 배터리가 100%인 상태에서, 따뜻한 실내 사무실에서 충전기를 뽑자마자 강제종료

  - 배터리가 100%인 상태에서, 보조 배터리를 연결한 상태에서 외부로 들고 나가도 10분 안에 강제 종료    


  한마디로, 도저히 사용할 수가 없는 상태였습니다. 핸드폰은 항상 충전기 혹은 보조 배터리에 연결된 상태로 유지해야 했죠. 사실 디스플레이의 포스터치에 문제가 있기도 하고, 교체주기도 다가왔기에 새로운 아이폰으로 교체를 할까 하는 생각도 했었습니다. 그런데 아직 딱히 좋은 조건이 올라오지 않아서, 당분간 버티기는 해야 했죠. 그래서 애플 가로수길도 가볼겸, 찾아가게 되었습니다.


  저같은 경우 금요일 오후 4시 정도에 예약을 하지 않은 상태에서 찾아갔습니다. 사람은 생각보다 많지 않았고, 지니어스들이 반겨주었죠. 아무래도 교육을 받았다고는 해도, 신생 매장이기에 어색한 부분은 많이 느껴졌습니다. 일단 가장 가까운 지니어스에게 기기 문제로 왔다고 하니까, 디스플레이 왼쪽에 서있는 예약 담당 지니어스를 찾아가라고 했습니다. 하지만 이미 예약을 진행중인 사람이 있어서, 잠시 기다려야 하는 상황이 되자 가까이 있던 지니어스가 자연스럽게 다가와 말을 걸어주었습니다. 무슨 문제로 왔느냐, 정말 불편했겠다, 혹시 온라인으로 지니어스 예약을 할 수 있는 것을 알고 있느냐, 내가 아이폰에서 직접 알려주겠다. 또한 대화에 있어서 기본적으로 손님의 감정에 이입하는 것을 모든 지니어스에게 느낄 수 있었습니다. 5분 정도 서있다가, 드디어 예약을 진행했습니다. 예약은 모두 아이패드를 통해서 진행됩니다. 이름과 이메일, 전화번호나 기기정보 등을 입력하게 됩니다. 온라인으로 예약을 하지 않고 찾아왔기 때문에, 30분정도 기다려야 할 수 있다는 답변을 받았습니다.


  일단 예약을 완료한다면 총 3번에 걸쳐서 문자를 받게 됩니다.


  1. Genius Bar 대기 명단에 포함되었습니다. 차례가 다가오면 문자를 드리겠습니다.
    1. 최초 예약이 완료되면 받게 되는 문자입니다.
  2. Genius Bar가 거의 준비되었습니다. 오시면 스페셜리스트에게 알려주세요.
    1. 예약의 대기 순위가 5위 안쪽 정도로 다가왔을 때 받는 문자같습니다. 매장에서 구경하며 기다린다거나, 애플 가로수길을 벗어나 근처에서 쇼핑을 하고 있더라도 천천히 오시면 됩니다. 제 경우 이 문자를 받은 후에 다음 절차까지 진행되기까지 약 10분 정도 소요되었습니다. 매장에 도착한 후에 스크린 근처에 아이패드를 든 직원에게 말씀해주시면, 잠시만 대기해달라는 답변을 들을 수 있습니다.
  3. 오래 기다리셨습니다. 스페셜리스트를 통해 체크인하세요.
    1. 바로 지원을 받을 수 있는 상태입니다. 스크린 앞쪽에 앉아있으면, 아이패드를 든 직원이 고객의 이름을 부르며 찾아옵니다.
  저같은 경우 최초 30분으로 안내를 받았지만, 2단계까지 진행되는데 1시간정도 소요되었습니다. 아무래도 처음 몇 달 동안은 서비스나 제품을 구매하는 것 외에 관광지의 역할도 될 것 같기에, 붐빌 것 같습니다. 가급적이면 예약을 하고 가는 것이 좋을 것 같습니다.
  3번째 문자를 받고 잠시 기다리면 아이패드를 든 직원이 찾아옵니다. 예약된 내용을 읽어보고, 상세한 증상을 확인하게 됩니다. 마찬가지로 대화 화법에 있어 정말 불편하셨겠다, 최대한 도움을 드리겠다는 방식으로 오게 됩니다. 
  제품의 진단 또한 모두 아이패드를 통해서 진행하게 됩니다. 지니어스의 아이패드에 설치된 전용 앱을 이용해서 제 아이폰에 원격으로 접속해서 진단을 진행합니다. 제 배터리의 경우 정품 배터리로 교체한지 반 년도 지나지 않았지만, 진단이 불가능할 정도로 상태가 좋지 않은 상태였습니다. 그래서 유상으로 진행해야 할 것 같았는데, 지니어스가 혹시나 무상으로 처리가 가능할지 다른 지니어스들에게 물어봐주기도 했습니다. 

  하지만 결국에는 3만 9천원이 청구되는 방향으로 처리되었습니다. 추가로 제 경우 아이폰의 우측 상단에 아주 작은 크랙이 있었습니다. 이러한 사례의 경우에도 일반적인 AS 센터에서는 아예 수리를 거부하곤 합니다. 수리를 위해서는 상판을 들어내야 하는데, 그 과정에서 디스플레이가 추가로 파손될 가능성이 있기 때문입니다. 하지만 일단 장비를 통해서 들어내기 때문에 디스플레이가 파손된 가능성이 낮긴 하지만 존재한다, 만약에 수리 도중에 디스플레이가 파손된다면 해당 비용까지 청구되게 된다, 이것에 동의하느냐는 답변을 받았습니다. 또한 디스플레이가 파손 되었을 경우에도 기기를 반납받는 것은 불가능했습니다. 일단 긍정적인 부분은 디스플레이가 파손된 상태에서 배터리 교체가 가능하다는 것이었고, 부정적인 부분은 디스플레이가 파손 되었을 시에 새 제품으로 구매하려고 했지만 그 선택지도 막혀있는 것이었습니다. 저는 제 운을 믿고 파손 가능성을 안고 가기로 했습니다.

  마지막으로 제품의 처리에 대한 부분을 다시 한 번 안내받고, 지니어스가 기기를 보관할 작은 케이스를 가져가서 제품을 회수하게 됩니다. 이 과정에 있어서 나의 iPhone찾기의 off와 기기 초기화가 병행되기 때문에 가급적이면 백업을 모두 진행한 후에 찾아오시기 바랍니다. 물론 백업을 하고 가지 않았다고 해도, 매장에 와이파이를 통해서 백업을 진행할 수 있습니다. 그동안 지니어스는 대기중인 다른 손님들을 도와주게 되구요.

  제품의 수리는 당일에도 처리가 가능했습니다. 하지만 수리가 밀려있어 저녁 9시 30분 정도에 받을 수 있었고, 저녁 약속이 있는 상황이었습니다. 그래서 제가 원하는 날짜에 기기를 바로 받을 수 있도록 예약을 도와줍니다. 애플 가로수길은 기본적으로 연중무휴 저녁 10시까지 영업하기 때문에, 평일 퇴근 후에 제품을 받을까 했지만 다음날인 토요일 저녁에 제품을 수령하기로 했습니다. 일단 예약이 결정되면 스티커 형태로 된 간단한 접수증을 발급받고 과정이 모두 끝납니다.

  그 다음날 제품을 수령하기 위해서 다시 애플 가로수길을 방문했습니다. 예약 시간인 7시 반보다 2시간 빠른 5시 반정도에 매장에 도착했습니다. 문 바로 왼쪽에 아이패드를 든 직원에게 접수증을 보여주면 바로 처리를 진행해줍니다. 저는 일단 제품의 수리가 배터리만 진행되었느냐, 디스플레이까지 진행이 되었느냐를 물어봤는데 다행히도 배터리만 수리가 진행되었습니다. 잠시 기다리면 다른 지니어스가 제품을 가져오고, 상태를 확인한 후에 제 카드를 받아가 결제를 해서 가져다줍니다. 영수증의 경우 종이형태로 받는 방법도 있고, 제 경우 그런 것이 싫어서 메일로 pdf 형태의 영수증을 수령했습니다. 그리고 모든 지니어스가 유심 슬롯을 열 수 있는 핀을 보유하고 있어서, 바로 수리된 제품으로 이동했습니다.

  교체받은지 얼마 되지 않았기에 혹시나 무상으로 처리가 될까 하는 기대가 무너지긴 했지만, 전체적으로 만족스러운 서비스를 받을 수 있었습니다. 누군가가 제품을 구매하면 모든 지니어스가 축하한다며 박수를 쳐주는 모습은 내가 제품을 구매하는 것 자체가 하나의 즐거움으로 포장되는 느낌을 받았습니다. 매장을 구경하는 동안에도 돌아다니던 지니어스가 궁금한 것이 있으면 알려드리겠다고 다가와줍니다. 또한 일부 테이블에서는 교육 세션도 진행되고 있었고, 일부 테이블은 고객들이 앉아서 충전을 하거나 쉴 수 있는 공간으로 마련되어 있었습니다. 애플 가로수길을 시작으로 애플의 국내 서비스가 더 나아지길 기대하면서 글을 마칩니다.


What makes players cry?

무엇이 플레이어를 울게 만들까요?


안녕하세요 라인스터입니다. 5번째 번역글입니다. 가마수트라에 올라온 개인의 글이며, 글은 https://www.gamasutra.com/blogs/YifatShaik/20171212/311464/What_makes_players_cry.php 이곳에서 확인할 있습니다. 또한 저자인 Yifat Shaik 에게 허락을 받고 번역을 진행 했습니다. 글은 블로그에만 게시됩니다. 또한 번역자의 의견이 추가되는 부분은 (역자 :) 표기하였습니다.


What makes players cry?

무엇이 플레이어를 울게 만들까요?



2017 11 25, 저는 다음과 같은 트윗을 보냈습니다.


안녕 트위터, 여러분을 울게 만든 게임이 있나요?? 여러분의 감정에 호소 했다거나? (무섭거나 불안하게 하는거 말고) 여러분의 답변을 보내주세요.


제가 이런 트윗을 보낸 이유는 단순합니다, 저는 이제 Journey(역자 : 플레이스테이션 독점으로 발매된 감성적인 탐험 게임) 플레이 하는 것을 마친 상태였고, 같은 종류의 감정을 경험할 있는 게임을 추천받고 있었어요. 저는 또한 우리가 게임을 하고, 긍정적이거나 부정적인 반응의 생성이 맞물리는 것에 관심이 있었습니다. 제가 인터넷에서 유명한 사람이 절대 아니기 때문에, 저는 많은 트윗을 기대하지 않았어요(대부분 친구들로부터 대답이었죠). 하지만 게임 산업에서 유명한 사람들의 번의 리트윗 후에, 트윗은 엄청나게 불어났죠.


결국 트윗은 68번의 리트윗과, 268번의 마음에 들어요와, 607건의 댓글 그리고 개의 쪽지를 받았습니다. 몇몇의 댓글들은 오직 게임의 제목 만을 나열 했지만, 많은 사람들이 그들이 울거나 감정에 기인하는 게임 플레이를 했는지 구체적으로 알려주었고, 몇몇 사람들은 자신만의 이야기를 공유해주기도 했습니다. 


트위터에서 댓글들은 게임에서 플레이들이 정서적 반응을 일으키는 지에 대한 흥미로운 관점에 대해서 강조하고 있었고, 어떤 종류의 게임들이 사람들로 하여금 감정을 경험하게 하는 가에 대한 내용을 포함하고 있었습니다. 가정은 모든 게임들은 부정적이거나 긍정적인 정서를 이끌어내는 반면, 불안(부정), 분노(부정), 좌절(부정), 자신감(긍정), 동지애(긍정), 긍지(긍정), 즐거움(긍정) 대해 불필요하게 생각하는 경향이 있습니다. 반면에 고뇌, 슬픔, 두려움 그리고 즐거움(울게 하는 것과 관련된 느낌)들은 거의 게임의 네러티브(스토리) 관련이 있으며, 실제 게임 플레이(구조)와는 관련이 없습니다.


이론에서는 앞으로 언급하게 게임의 대부분은 강한 서사 구성 요소를 가지고 있고, 그러한 것들에서 나오는 감정은 스토리와 관련되어 있을 것이라는 것이 옳다고 입증 되었지만, 저는 내가 받은 답변 일부에 놀랐습니다. 구체적으로 말하자면, 저는 플레이어들이 게임을 하며 우는 이유 때문에 약간 놀랐으며, 답변들을 분석 해볼 좋은 기회일 것이라고 느꼈고 만약 우리가 이러한 것들은 게임에서의 정서적 반응에 대한 이론을 쓰기 위해서라던가, 게임을 개발할 이러한 반응들을 이용할 있을 지에 대해서 바라보게 되었습니다.


제가 분석을 시작하기 전에 가지 메모를 했어요:


  • 이건 결코 학문이 아닙니다 - 저는 트위터로부터 얻어진 데이터들을 정리하는 데 흥미가 있고, 만약 우리가 이런 데이터로부터 도움이 될만한 것들을 추론할 수 있을 지에 대해서 관심이 있습니다.
  • 이 글에서 제시되는 모든 데이터들은 익명에 기반하고 있으며, 제가 따로 개인의 정보들을 활용하는 것에 대해서 허락을 받지 않았기 때문에, 해당 트윗에 대해서 구체적인 내용이나 작성자를 밝히지 않을 것입니다. 이러한 정보들은 공개되어 있으며(역자 주: 트위터에서 작성된 것들), 만약 관심이 있다면 쉽게 접근할 수 있을 겁니다.
  • 플레이어들이 슬픔이나 기쁨을 느낄 때 모두가 우는 것은 아니며, 만약 이것이 연구를 위해서 의도된 것이라면, 저는 이 질문을 다르게 표현했을 겁니다.
  • 저는 모든 트윗을 기록하기 위해서 최선을 다했지만, 불행하게도 그것들중 일부는 트위터에서 알림을 볼 수 있는 범위에 대한 제한이 있기 때문에 기록하지 못했습니다. 저는 얼마나 많은 트윗이 놓치고 있는 지에 대해서나 그것들이 결과에 어떤 영향을 미칠 지에 대해서 감이 오지 않습니다.(저는 그러한 트윗들이 Journey를 최고의 게임으로 내세우는 것 만큼 Mortician Tale(역자 주: 스팀으로 출시된 사망한 사람을 병원에서 처리하는 과정을 담은 게임) 같은 게임도 치켜세울 것이라고 추측합니다) (역자 주: 놓친 설문 내용들이 결과에는 큰 영향을 미치지 않을 것이라는 추측을 말하고 싶은 것 같습니다)
  • 몇 개의 사례에서, 저는 개인적인 정보들을 받았습니다(그들의 경험이 너무 개인적인 것들이라 공개적으로 보여줄 수 없기 때문).
  • 저는 구체적으로 게임에 대해서 서술하지 않은 게임을 포함하지 않았습니다-예를 들어 오버워치의 짧은 이야기 같은 것들에서 감정적인 경험을 했다와 같은 것들이죠(마지막 바스티온과 같은). 왜냐하면 이러한 것들은 게임의 일부가 아니기 때문에 데이터에 포함하지 않았습니다. (역자 주: 마지막 바스티온은 블리자드 사의 FPS게임인 오버워치에서 스토리텔링을 위해서 제작된 시네마틱 영상입니다)
  • 일부 트윗들은 게임에 등장하는 게임 음악중 몇 개를 예로 들고 있지만, 저는 그 외에 것들이 포함되어 있지 않았다면 데이터에 포함시키지 않기로 결정했습니다.(저는 제 분석에서 게임에 등장하는 음악의 중요성에 대해서 서술할 거에요)


어떤 게임이 플레이어들을 울게 만들까?


제가 수집한 트윗에서 224개의 게임이 언급 되었습니다. 하지만 그중 15개의 게임은 10 이상 언급 되었지만, 100개를 넘는 게임들은 오직 번만 언급 되었습니다.


전체의 목록은 여기서 찾아볼 있습니다.

https://docs.google.com/spreadsheets/d/1LLHC4pJpxdX1SdELh1ugPVxKXmxQIrMeS-kAU5QDC7Y/edit?usp=sharing


가장 언급이 많이 10개의 게임은 다음과 같습니다.

  1. Life is strange
  2. Journey
  3. Mass effect
  4. To the moon
  5. The last of us
  6. Undertale
  7. Walking dead season 1
  8. Persona 3/4/5
  9. The beginner guide
  10. Brothers: a tale of two sons


다음 단계로, 일단 제가 모든 데이터를 수집하고, 플레이어들의 반응을 명확하게 분석하는데 유용하게 사용되는 수로 좁혀가는 것이었습니다. 처음에 저는 가장 많은 50개로 계획했으나, 50개의 범위 안에서는 명확하게 나오지 않았기 때문에, 저는 3 이상을 받은 게임으로 범위를 좁히게 되었습니다. 이제 61개의 게임이 나왔고, 저는 게임들을 장르로 구분하고 게임들이 사람들을 울게 하는지 분석할 있었습니다.


목록에서 관찰되는 것들


 - 상위권의 게임들은 규모가 크거나 친숙한 타이틀인 경향이 있었고 그것이 슬픔으로 고려되는 이유가 되었습니다. 하지만 수많은 플레이어를 가지지 못한 게임은 기대만큼 높은 위치에 자리잡지 못했습니다(The Dragon, Cancer is a prime 같이 말이죠) (역자 : 개임 소규모의 인디 게임입니다. 하지만 화제가 되었던 게임이죠)

 - 게임들은 거의 독점적으로 강력한 이야기 요소를 가지고 있습니다. 예를 들어 게임이 역학(전략, 전술적인 슈팅과 같은) 기반으로 하는 경우에는 게임의 이야기가 플레이어들을 정서적으로 만든다고 언급되는 부분이 있었습니다.

 - 저는 많은 사람들이 언급해준 페르소나 3, 4, 그리고 5 함께 묶었습니다. 개의 사례에서 그들은 별개의 존재로 언급 되었지만, 저는 게임들을 하나의 것으로 넣기로 결정했습니다. 페르소나 3 중에서 가장 많이 언급되었고, 페로스나 5 번째로, 그리고 페르소나 4 거의 언급이 되지 않았습니다(비록 게임이 다른 시리즈와 같이 묶여있음에도 불구하구요). 페르소나 1이나 2 전혀 언급이 되지 않았습니다.

 - Dragon Age(역자 : 바이오웨어의 롤플레잉 게임) 비슷합니다. 많은 사람들이 3개의 시리즈를 모두 언급 해주셨어요. Dragon Age: Inquisition 가장 많이 언급 되었고, Dragon Age: Origin 뒤를, 그리고 Dragon Age 2 오직 언급 되었습니다.

 - 반면에, The Walking Dead, Mass Effect 그리고 Final Fantasy 같은 게임은 일반적으로 사람들이 구체적으로 특정 타이틀로 구별하기 때문에, 이러한 게임들은 따로 분류하였습니다.

 - Neir Automata Ending D(역자 : 플레이스테이션으로 발매된 액션 슈팅 게임. 멀티 엔딩이 존재하며, 해당 문장에서는 D 엔딩을 말하고 있습니다) 경우 가장 슬프다고 언급 되었으며, 마찬가지로 Undertale(역자 : 마찬가지로 멀티 엔딩이 존재하는 게임입니다)에서는 불살루트가 가장 많이 언급되었습니다. (역자 : Undertale에는 어떤 몬스터도 죽이지 않아야 있는 엔딩이 존재하는데, 이를 불살루트라고 부르곤 합니다)


다음으로는 게임을 장르에 따라 분류했습니다. 작업은 뒤에 가서 불필요한 것이 되었지만, 일부 것들은 궁극적으로 도움이 되긴 했습니다. 분류는 위키피디아에 작성된 것을 기반으로 했고, 저는 게임을 적합한 장르로 분류하기 위해서 노력했습니다.





분류에 대한 기록입니다:


 - 분류는 아주 명확하지만, 일부 게임들은 분류를 하기 힘들었고, 저는 여전히 일부 분류에 대해서 만족을 하지 못하고 있습니다.

 - 저는걷기 시뮬레이션 장르로서 사용하지 않기로 결정했고, 그들의 대부분은(선형적인 스토리를 제외하고) 장르에 있어서 구체적인 특징이 없기 때문입니다.

 - 저는 JRPG RPG 따로 분리하지 않았습니다. 제가 사이에서 다른 장르로 느끼기에 충분하지 않다고 느껴졌기 때문입니다.

 - 개의 게임들, Journey 같은 게임은 분류하기 힘들었습니다. 결국 이런 게임들은 Art Game으로 분류되었지만, 저는 이것이 옳은 분류라고 생각하지는 않습니다.


위의 그래프에서 있듯이, 대부분(전체가 아니라) 게임들은 강한 이야기 요소를 가지고 있었습니다. 그리고 대부분의 경우 이야기는 플레이어가 감정에 호소하는데 이유가 되곤 하죠. 가장 두드러지는 장르는 액션 RPG MMORPG등의 파생 장르를 모두 포함하고 있는 RPG였습니다. 대부분의 경우 이런 게임들은 복잡하고 다른 게임보다 높은 수준의 이야기를 가지고 있고, 플레이어들이 그들의 캐릭터를 성장시킬 있기 때문입니다(저는 이걸 다음 장에서 설명할 계획입니다). 번째로 두드러지는 장르는 어드벤쳐(그리고 이것의 파생장르를 포함해서)였고, 대부분의 게임이 강력한 선형 스토리와 장르로 취급하기에 비교적 간단한 구조를 가지고 있었습니다. 목록에서 극소수의 게임만이 이야기 요소가 아니라 게임의 구조 실제 게임 플레이에만 초점을 두고 있습니다.


제가 단계가 필요하지 않을 것으로 생각했던 것으로 의심하는 반면에 결과에 특별히 놀라운 것은 없습니다. 이야기가 플레이어에게 정서적인 반응을 일으키는 데에 필수적인 부분인 것으로 확인되었고, 거기에 더불어 순수한 게임 플레이나 구조는 이러한 검정을 이끌어 내는 어려움을 갖고있다는 사실을 알게 되었습니다. 사람들의 말에 따르면 Journey The Beginner Guide(역자 : 스팀으로 출시된 게임 개발자를 관찰하는 형식의 게임)만이 엄밀하게 말해서 이야기에 의존하지 않고 이러한 감정을 이끌어내고 있습니다. 이러한 감정들에 영향을 미치는 스토리가 필수가 않다는 사실을 이해하는 것은 도움이 되었지만, 몇몇 게임(특히 플레이 타임이 알피지) 경우 구체적인 캐릭터가 있거나 플레이어만의 아바타가 있을 경우 더욱 효과가 강했습니다.


그래서 게임을 하면서 울까요?


이 수집된 데이터를 사용하기 전에, 저는 각 게임이 플레이어에게 어떤 감정을 유발하는 지를 기준으로 분류했습니다.


그리고 다음 5개의 부문으로 게임들을 정리했죠:


네러티브/이야기: 이 범주에 있는 게임들은 핵심 이야기와 네러티브가 울거나 각종 감정을 이끌어내는 이유로 작용합니다. Life is Strange 그리고 To the Moon과 같은 게임이 이 범주에 들어가죠


캐릭터와 이야기에 대한 투자: 이 범주에 있는 게임들은 게임에서 진행되는 이야기가 울거나 감정을 이끌어내는 데에 구체적인 결과가 아니지만, 대신에 캐릭터를 성장시키거나 스토리와 세계를 탐험하는 것과 연관이 있습니다. 이건 그들의 아바타도 포함됩니다. Mass Effect 3, 그리고 World of Warcaft(역자 주: 블리자드에서 발매한 Warcraft의 세계관을 기반으로 둔 MMORPG)가 이 범주에 포함되고, 캐릭터의 상호작용을 기반으로 두고 있습니다(심들을 데이트하는 것과 같은).


비주얼: 시각적인 요소를 사용하여 정서적인 반응을 일으키는 것들이며, 이 범주에서는 동점심을 일으킬 수 있는 캐릭터의 디자인을 만드는 것이 포함됩니다.


게임 플레이: 이 범주에 속하는 게임들은 감정을 유발하는 것이 구체적으로 게임의 구조 자체가 관련되어 있습니다. 이 요소들은 확인하기 힘들지만, 저는 몇몇 게임들이 이 범주에 속한다고 생각합니다.


음악: 이 글의 처음에 언급했듯이, 일부 응답자들은 구체적으로 음악 요소를 예로 들고 있습니다. 제가 처음에는 음악만 인용되는 경우에는 포함하지 않았지만, 음악과 효과음의 중요성에 대한 지식을 얻은 후에는 게임에서 감정을 일으키는 것과 연관성에 대해서 인정합니다.


결과는 다음과 같았습니다:







저는 각각의 게임을 가지로 분류했습니다-응답자들이 게임을 플레이하는 동안 이유에 대한 주된 이유와, 뒤를 따르는 이유에 대해서죠. 예를 들어, Mass Effect 3 같은 게임은 캐릭터와 이야기가 주된 식별자였고, 반면에 Journey 같은 게임은 비주얼와 음악/효과음에 초점을 두고 있기 때문에 이야기는 보조적인 요소였죠.


결과에 대한 가지 기록:


 - 뒤늦게 생각해 보면, 저는 동정을 하나의 범주로 추가했을 겁니다. 구체적으로 말하자면, 저는 사람들이 플레이하는 캐릭터와 함께 다른 플레이어를 식별하는 것이 이야기에 반응하는 있어서 중요한 요소라고 생각합니다. 이것은 특히 RPG에서 플레이어들이 자신만의 이야기와 신화를 만들어낼 것이기 때문입니다.(그래서, Shepherd 죽을 우는 것은 Mordin 죽었을 때와는 다른 종류의 슬픔이죠) (역자 : Mordin Shepherd Mass Effect 3 등장하는 캐릭터입니다)

 - 어떤 게임의 음악과 효과음이 플레이어들의 감정에 호소하는데 판별하는 것은 아주 힘들었습니다. 반면에 Journey 사운드 트랙은 이러한 판별에 있어서 명백했고(그리고 트위터의 반응도 그러하였고), 대부분의 다른 경우들은 게임에서 음악과 효과음이 얼마나 영향을 끼치는 가에 대해서 명확하지 않습니다.

 - 저는 리스트에 있는 많은 게임들을 해보지 못했습니다. 그래서 저는 친구들에게 물어봤고, 피드백을 받았습니다. 그래서 일부 분류에 대해서는 아주 주관적일 수도 있어요.


장르로 구분했던 이전의 결과와는 반대로(네러티브와 캐릭터/스토리에 대한 투자는 가장 두드러지는 것이었죠), 위의 범주를 이용한 분류는 첫번째 질문에 대한 명확한 답을 얻는 도움이 되었습니다. “무엇이 플레이어들을 울게 만드는가?” 대한 답은 단순히 슬픈 이야기보다는 복잡했죠. 다양한 요소(어떤 것들은 네러티브와 관련이 있지만 전부 그렇진 않았죠) 조합이 감정적인 반응을 이끌어내고 있었습니다.


게임에서 이야기는 굉장히 중요하고, 게임 플레이만으로 플레이어들에게 감정을 이끌어내는 것은 불가능하다는 것을 강조합니다. 결과는 우리가(게임 개발자가) 특히나 매체가 성장하고, 플레이어들이 필요로 하거나 관심의 변화에 따라서 고려해야 요소입니다. 저는 또한 우리가 게임을 만들 즐거움이나 슬픔을 만들기 위해서 단순히 네러티브에 의존하는 것이 아니라, 게임 플레이 구조를 활용하는 도전적인 일을 하는 데에 주목해야 한다고 생각합니다.

AI를 제외한 기본적인 오목의 기능이 모두 포함되어 있습니다.
33룰과 같은 특수 룰은 포함되어 있지 않습니다.

또한 과제 제출용이므로 하단의 추가 기능이 존재합니다.

1.오목판의 모든 가로, 세로줄에 대하여 흰돌의 개수와 검은돌의 개수를 출력하라.
2.오목판의 모든 가로,세로줄에 대하여 그 줄에서 가장 많이 연속으로 놓여진 돌의 종류와 개수를 출력하라.
3.오목판의 모든 대각선 줄에 대하여 그 줄에서 가장 많이 연속으로 놓여진 돌의 종류와 개수를 출력하라.
4.2번에서 모든 가로 줄에 대해서는 가장 많이 연속으로 놓여진 돌들의 위치를 좌표(또는 다른 모양)로 표시하라.

#include <stdio.h>
#include <stdlib.h>
#include <Windows.h>
 
#define BLACK 1
#define WHITE 2
#define MAP 0
 
int map[19][19] = { MAP };
 
void crossGaro(int map[19][19])
{
int whiteNow, blackNow = 0;
int whiteMax, blackMax = 1;
int i, j, count = 0;
int x, y = 0; // 얘를 왜 썼더라...
 
int Pcount = 0;
int px[19] = { 0 };
int py[19] = { 0 };
int pz[19] = { 0 };
int pa[19] = { 0 };
int cal = 0;
int result = 0;
 
printf("============가로줄 체크\\n");
 
for (i = 1; i < 20; i++)
{
int whiteNow = 0;
int   blackNow = 0;
int whiteMax = 0;
int   blackMax = 0;
int forcount = 0;
 
for (j = 1; j < 20; j++)
{
if (map[i][j] == map[i][j - 1])
{
if (map[i][j] == WHITE)
{
whiteNow++;
if (whiteNow > whiteMax)
{
forcount = j;
whiteMax++;
}
}
else if (map[i][j] == BLACK)
{
blackNow++;
if (blackNow > blackMax)
{
forcount = j;
blackMax++;
}
}
}
else
{
whiteNow = 0;
blackNow = 0;
}
}
 
if (whiteMax > blackMax)
{
printf("%d번째 줄 %d칸 백돌이 더 많고, %d개\\n", i, forcount - 1, whiteMax + 1);
px[Pcount] = i;
py[Pcount] = forcount - 1;
pz[Pcount] = whiteMax + 1;
pa[Pcount] = 2;
}
else if (blackMax > whiteMax)
{
printf("%d번째 줄 %d칸 흑돌이 더 많고, %d개\\n", i, forcount - 1, blackMax + 1);
px[Pcount] = i;
py[Pcount] = forcount - 1;
pz[Pcount] = whiteMax + 1;
pa[Pcount] = 1;
}
Pcount++;
}
 
for (i = 0; i < 19; i++)
{
if (pz[i] < pz[i + 1])
{
result = i + 1;
}
}
px[1] = px[result];
py[1] = py[result];
pz[1] = pz[result];
pa[1] = pa[result];
 
printf("가로줄 가장 많은 곳은 %d, %d좌표이며 %d개이고 ", px[result], py[result], pz[result]+1);
 
if (pa[result] == 1)
{
printf("돌은 흑돌입니다.\\n");
}
else if (pa[result] == 2)
{
printf("돌은 백돌입니다.\\n");
}
else
{
printf("\\n");
}
return;
}
 
void crossSero(int map[19][19])
{
int whiteNow, blackNow = 0;
int whiteMax, blackMax = 1;
int i, j, count = 0;
 
printf("==========세로줄 체크\\n");
 
for (j = 1; j < 20; j++)
{
int whiteNow = 0;
int   blackNow = 0;
int whiteMax = 0;
int   blackMax = 0;
int forcount = 0;
 
for (i = 1; i < 20; i++)
{
if (map[i][j] == map[i - 1][j])
{
if (map[i][j] == WHITE)
{
whiteNow++;
if (whiteNow > whiteMax)
{
forcount = j;
whiteMax++;
}
}
else if (map[i][j] == BLACK)
{
blackNow++;
if (blackNow > blackMax)
{
forcount = j;
blackMax++;
}
}
}
else
{
whiteNow = 0;
blackNow = 0;
}
}
if (whiteMax > blackMax)
{
printf("%d번째 줄 백돌이 더 많고, %d개\\n", j, whiteMax + 1);
}
else if (blackMax > whiteMax)
{
printf("%d번째 줄 백돌이 더 많고, %d개\\n", j, blackMax + 1);
}
}
return;
}
 
void eight(int mao[19][19])
{
printf("-----8시방향 검사-----\\n");
int whiteNow = 0;
int blackNow = 0;
int whiteMax = 0;
int blackMax = 0;
int i, j = 0;
int garo, sero = 1;
int count = 0;
 
count = 19;
 
for (i = 1; i < 20; i++)
{
garo = i;
sero = 1;
whiteNow = 0;
blackNow = 0;
whiteMax = 0;
blackMax = 0;
for (j = count; j > 0; j--)
{
if (map[garo][sero] == map[garo - 1][sero - 1])
{
if (map[garo][sero] == BLACK)
{
blackNow++;
if (blackNow > blackMax)
{
blackMax++;
}
}
else if (map[garo][sero] == WHITE)
{
whiteNow++;
if (whiteNow > whiteMax)
{
whiteMax++;
}
}
}
garo++;
sero++;
}
if (blackMax > whiteMax)
{
printf("%d번째 줄은 흑돌이 더 많고 %d개입니다.\\n", i, blackMax+1);
}
else if (whiteMax > blackMax)
{
printf("%d번째 줄은 백돌이 더 많고 %d개입니다.\\n", i, whiteMax+1);
}
count--;
}
}
 
void two(int mao[19][19])
{
printf("-----2시방향 검사-----\\n");
int whiteNow = 0;
int blackNow = 0;
int whiteMax = 0;
int blackMax = 0;
int i, j = 0;
int garo, sero = 1;
int count = 0;
 
count = 19;
 
for (i = 1; i < 20; i++)
{
garo = 1;
sero = i;
whiteNow = 0;
blackNow = 0;
whiteMax = 0;
blackMax = 0;
for (j = count; j > 0; j--)
{
if (map[garo][sero] == map[garo - 1][sero - 1])
{
if (map[garo][sero] == BLACK)
{
blackNow++;
if (blackNow > blackMax)
{
blackMax++;
}
}
else if (map[garo][sero] == WHITE)
{
whiteNow++;
if (whiteNow > whiteMax)
{
whiteMax++;
}
}
}
garo++;
sero++;
}
if (blackMax > whiteMax)
{
printf("%d번째 줄은 흑돌이 더 많고 %d개입니다.\\n", i, blackMax + 1);
}
else if (whiteMax > blackMax)
{
printf("%d번째 줄은 백돌이 더 많고 %d개입니다.\\n", i, whiteMax + 1);
}
count--;
}
}
 
void ten(int mao[19][19])
{
printf("-----10시방향 검사-----\\n");
int whiteNow = 0;
int blackNow = 0;
int whiteMax = 0;
int blackMax = 0;
int i, j = 0;
int garo, sero = 1;
int count = 0;
 
count = 19;
 
for (i = 19; i > 0; i--)
{
garo = 1;
sero = i;
whiteNow = 0;
blackNow = 0;
whiteMax = 0;
blackMax = 0;
for (j = count; j > 0; j--)
{
if (map[garo][sero] == map[garo + 1][sero - 1])
{
if (map[garo][sero] == BLACK)
{
blackNow++;
if (blackNow > blackMax)
{
blackMax++;
}
}
else if (map[garo][sero] == WHITE)
{
whiteNow++;
if (whiteNow > whiteMax)
{
whiteMax++;
}
}
}
garo++;
sero++;
}
if (blackMax > whiteMax)
{
printf("%d번째 줄은 흑돌이 더 많고 %d개입니다.\\n", i, blackMax + 1);
}
else if (whiteMax > blackMax)
{
printf("%d번째 줄은 백돌이 더 많고 %d개입니다.\\n", i, whiteMax + 1);
}
count--;
}
}
 
void four(int mao[19][19])
{
printf("-----4시방향 검사-----\\n");
int whiteNow = 0;
int blackNow = 0;
int whiteMax = 0;
int blackMax = 0;
int i, j = 0;
int garo, sero = 1;
int count = 0;
 
count = 19;
 
for (i = 0; i < 19; i++)
{
garo = i;
sero = 19;
whiteNow = 0;
blackNow = 0;
whiteMax = 0;
blackMax = 0;
for (j = count; j > 0; j--)
{
if (map[garo][sero] == map[garo + 1][sero - 1])
{
if (map[garo][sero] == BLACK)
{
blackNow++;
if (blackNow > blackMax)
{
blackMax++;
}
}
else if (map[garo][sero] == WHITE)
{
whiteNow++;
if (whiteNow > whiteMax)
{
whiteMax++;
}
}
}
garo++;
sero++;
}
if (blackMax > whiteMax)
{
printf("%d번째 줄은 흑돌이 더 많고 %d개입니다.\\n", i, blackMax + 1);
}
else if (whiteMax > blackMax)
{
printf("%d번째 줄은 백돌이 더 많고 %d개입니다.\\n", i, whiteMax + 1);
}
count--;
}
}
 
int main()
{
int i, j = 0;
int countBlack, countWhite = 0;
int turn = 1;
int inputA, inputB = 0;
 
while (1)
{
system("cls");
 
countBlack = 0;
countWhite = 0;
 
for (i = 1; i < 20; i++)
{
for (j = 1; j < 20; j++)
{
if (map[i][j] == MAP)
{
printf("┼");
}
else if (map[i][j] == BLACK)
{
printf("●");
countBlack++;
}
else
{
printf("○");
countWhite++;
}
}
printf("\\n");
}
 
printf("백돌 : %d\\t흑돌 : %d\\n", countWhite, countBlack);
 
////////////////////여기에요 판정 넣는거
crossGaro(map);
crossSero(map);
eight(map);
two(map);
ten(map);
four(map);
 
if (turn % 2 == 1)
{
printf("백돌의 차례입니다 ");
}
else if (turn % 2 == 0)
{
printf("흑돌의 차례입니다 ");
}
 
printf("돌을 놓을 차리 : ");
scanf("%d %d", &inputB, &inputA);
 
 
 
 
if (inputA > 19 || inputA < 1 || inputB > 19 || inputB < 1)
{
printf("이상한 곳에 돌을 놓지 마시오.\\n");
system("pause");
continue;
}
 
if (map[inputA][inputB] != MAP)
{
printf("이미 돌이 있습니다.\\n");
system("pause");
continue;
}
else
{
if (turn % 2 == 1)
{
map[inputA][inputB] = WHITE;
}
else if (turn % 2 == 0)
{
map[inputA][inputB] = BLACK;
}
}
turn++;
}
return 0;
}


기능은 모두 구현하였습니다.
단,
insert시 순차정렬 미적용,
sortByHp시 memcpy를 통한 값 교환으로 구현하였습니다.
 
기본적인 챔피언의 리스트를 연결리스트를 이용해서 구현

1. 챔피언의 이름 검색
2. 새로운 챔피언의 삽입
3. 챔피언의 삭제
4. 특정 챔피언의 삭제
5. 특정 포지션의 챔피언 모두 삭제
6. 저장된 챔피언 출력
7. 최대 HP인 챔피언 호출
8. 체력 순서대로 재정렬

해당 기능이 포함되어 있습니다.
 
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <windows.h>
 
struct lolCham
{
char name[50];
int hp;
int mp;
int range;
int speed;
char position[50];
lolCham *next;
};
 
struct linkedList
{
lolCham *head = NULL;
};
 
void arr2LinkedList(linkedList *list, lolCham *cham)
{
int i = 0;
struct lolCham *nnew;
struct lolCham *now = list->head;
 
for (i = 0; i < 10; i++)
{
nnew = (lolCham*)malloc(sizeof(lolCham));
*nnew = cham[i];
 
if (list->head == NULL)
{
list->head = nnew;
now = list->head;
}
else
{
now->next = nnew;
now = now->next;
}
}
now->next = list->head;
}
 
void search(linkedList *list, char *findCham)
{
lolCham *now = list->head;
lolCham *i = 0;
 
if (list->head == NULL)
{
printf("챔피언이 한명도 없습니다.\\n");
return;
}
if (strcmp(now->name, findCham) == 0)
{
printf("이름\\t체력\\t마나\\t사거리\\t이속\\t포지션\\n");
printf("%s\\t%d\\t%d\\t%d\\t%d\\t%s\\n", now->name, now->hp, now->mp, now->range, now->speed, now->position);
return;
}
now = list->head->next;
 
while (now != list->head)
{
if (strcmp(now->name, findCham) == 0)
{
printf("이름\\t체력\\t마나\\t사거리\\t이속\\t포지션\\n");
printf("%s\\t%d\\t%d\\t%d\\t%d\\t%s\\n", now->name, now->hp, now->mp, now->range, now->speed, now->position);
return;
}
else
{
now = now->next;
}
}
printf("해당 챔피언은 없습니다.\\n");
}
 
void insertCham(linkedList *list, char *insertChamName)
{
lolCham *now = list->head;
lolCham *nnew;
 
while (now->next != list->head)
{
if (strcmp(now->name, insertChamName) == 0)
{
printf("해당 챔피언이 이미 존재합니다.\\n");
return;
}
else
{
now = now->next;
}
}
 
nnew = (lolCham*)malloc(sizeof(lolCham));
 
strcpy(nnew->name, insertChamName);
printf("체력 : ");
scanf("%d", &nnew->hp);
printf("마나 : ");
scanf("%d", &nnew->mp);
printf("사거리 : ");
scanf("%d", &nnew->range);
printf("이속 : ");
scanf("%d", &nnew->speed);
printf("포지션 : ");
scanf("%s", &nnew->position);
 
now->next = nnew;
nnew->next = list->head;
return;
}
 
void deleteCham(linkedList *list, char *deleteChamName)
{
lolCham *now = list->head;
lolCham *temp;
lolCham *nnew = list->head;
lolCham *prev = list->head;
 
while (now->next != list->head)
{
if (strcmp(now->name, deleteChamName) == 0)
{
temp = now->next;
printf("삭제되었습니다.\\n");
break;
}
 
if (now->next == list->head)
{
printf("해당 이름이 존재하지 않습니다.\\n");
return;
}
else
{
now = now->next;
}
}
 
if (now->next == list->head) // 맨뒤삭제
{
while (prev->next != now)
{
prev = prev->next;
}
free(now);
prev->next = list->head;
 
return;
}
 
if (list->head == now) // 맨앞삭제
{
while (nnew->next != list->head)
{
nnew = nnew->next; // tmep는 맨앞의 다음꺼
}
nnew->next = list->head->next;
free(now);
list->head = temp;
nnew = list->head;
}
else
{
while (nnew->next != now)
{
nnew = nnew->next;
}
free(now);
nnew->next = temp;
}
}
 
void deletePos(linkedList *list, char *deletePosName)
{
struct lolCham *temp[100];
int i = 0;
int j = 0;
 
struct lolCham *now = list->head;
 
if (list->head != NULL)
{
if (strcmp(now->position, deletePosName) == 0)
{
temp[i++] = now;
}
now = now->next;
 
while (now != list->head)
{
if (strcmp(now->position, deletePosName) == 0)
{
temp[i++] = now;
}
now = now->next;
}
}
for (j = 0; j < i; j++)
{
deleteCham(list, temp[j]->name);
}
}
 
void printfAll(linkedList *list)
{
lolCham *now = list->head;
 
if (now->hp < 0)
{
printf("챔피언이 없어요!\\n");
return;
}
 
if (list->head != NULL)
{
printf("이름\\t체력\\t마나\\t사거리\\t이속\\t포지션\\n");
printf("%s\\t%d\\t%d\\t%d\\t%d\\t%s\\n", now->name, now->hp, now->mp, now->range, now->speed, now->position);
now = list->head->next;
while (now != list->head)
{
if (now->hp == 0)
{
printf("챔피언을 삽입해주세요.");
}
printf("%s\\t%d\\t%d\\t%d\\t%d\\t%s\\n", now->name, now->hp, now->mp, now->range, now->speed, now->position);
now = now->next;
}
}
}
 
void hpMax(linkedList *list)
{
struct lolCham *max = list->head;
struct lolCham *now = list->head->next;
 
while (now->next != list->head)
{
if (now->hp > max->hp)
{
max = now;
}
now = now->next;
}
printf("가장 체력이 높은 챔피언은 %s입니다.\\n", max->name);
}
 
void sortByHp(linkedList *list)
{
struct lolCham temp;
struct lolCham *i;
struct lolCham *j;
 
for (i = list->head; i->next != list->head; i = i->next)
{
for (j = i->next; j != list->head; j = j->next)
{
if (i->hp < j->hp)
{
memcpy(&temp, i, 116);
memcpy(i, j, 116);
memcpy(j, &temp, 116);
}
}
}
printf("정렬되었습니다.\\n");
}
 
int main()
{
linkedList list;
struct lolCham cham[10] =
{
{ "루시우", 111, 123, 123, 123, "탑", NULL },
{ "티모", 121, 123, 123, 123, "정글", NULL },
{ "맥북", 1511, 123, 123, 123, "미드", NULL },
{ "사과", 11511, 123, 123, 123, "원딜", NULL },
{ "형준", 1311, 123, 123, 123, "서포터", NULL },
{ "파판", 1111, 123, 123, 123, "탑", NULL },
{ "메이플", 1911, 123, 123, 123, "정글", NULL },
{ "마우스", 15611, 123, 123, 123, "미드", NULL },
{ "키보드", 1121, 123, 123, 123, "원딜", NULL },
{ "비주얼", 1111, 123, 123, 123, "서포터", NULL },
};
arr2LinkedList(&list, cham);
 
char selectOption = 0;
char findCham[50];
char insertChamName[50];
char deleteChamName[50];
char deletePosName[50];
 
while (1)
{
system("cls");
 
printf("1.search\\n");
printf("2.insert\\n");
printf("3.delete\\n");
printf("4.deletePos\\n");
printf("5.printAll\\n");
printf("6.hpMax\\n");
printf("7.sortByHp\\n");
printf("실행할 기능은 : ");
scanf("%d", &selectOption);
 
if (selectOption > 7 || selectOption < 1)
{
printf("잘못된 수를 입력\\n");
system("pause");
continue;
}
 
switch (selectOption)
{
case 1:
{
printf("찾으려는 챔피언의 이름 : ");
scanf("%s", &findCham);
search(&list, findCham);
system("pause");
break;
}
case 2:
{
printf("추가하려는 챔피언의 이름 : ");
scanf("%s", &insertChamName);
insertCham(&list, insertChamName);
system("pause");
break;
}
case 3:
{
printf("지우려는 챔피언의 이름 : ");
scanf("%s", &deleteChamName);
deleteCham(&list, deleteChamName);
system("pause");
break;
}
case 4:
{
printf("지우려는 포지션의 이름 : ");
scanf("%s", &deletePosName);
 
if (strcmp(deletePosName, "탑") == 0
|| strcmp(deletePosName, "정글") == 0
|| strcmp(deletePosName, "미드") == 0
|| strcmp(deletePosName, "원딜") == 0
|| strcmp(deletePosName, "서포터") == 0)
{
deletePos(&list, deletePosName);
}
else
{
printf("그런 포지션은 존재하지 않습니다.\\n");
system("pause");
break;
}
system("pause");
break;
}
case 5:
{
printfAll(&list);
system("pause");
break;
}
case 6:
{
hpMax(&list);
system("pause");
break;
}
case 7:
{
sortByHp(&list);
system("pause");
break;
}
}
 
}
 
return 0;
}


'공부용 > 프로그래밍' 카테고리의 다른 글

C언어 오목  (0) 2018.01.25

Designing FPS Multiplayer Maps – Part 2

FPS 멀티플레이어 디자인하기 파트2


안녕하세요 라인스터입니다. 이제 4번째 번역글이네요. 이번 역시 DODGER라는 해외 게임 디자이너의 블로그(https://www.ongamedesign.net/)에서 발견한 글입니다. 이전 (http://leinster.tistory.com/60)과 이어지는 내용이니 참고 바랍니다. 원저자인 DODGER에게 허락을 받고 번역을 하는 글이며, 블로그와 GDF(게임 디자이너 포럼, http://gdf.inven.co.kr/) 게시됩니다. 번역자의 의견이 추가되는 부분은 (역자 :) 표기하였습니다.



FPS 멀티플레이어 맵 디자인하기 파트2


, 벌써 달이나 지났군요. 요즘 회사에서 일이 잘 안 풀리고 있는데, 지금은 좀 괜찮아졌어요. 그리고 이제서야 60일 전에 시작했던 나머지 결과물들도 모두 올릴 수 있게 되었습니다.



멀티플레이어 게임에서 재미없는 점



엄청나게 긴 시야 거리


내용은엄폐물파트에서 다루었지만, 시야 거리를 물체로 제한하는 것은 중요합니다. 그렇게 하지 않는다면 능숙한 근접 전투의 중요성이 줄어들고, “쏘고 의식하지 않아도 되는범위 공격형 무기와 사정거리를 가진 저격 무기의 중요성이 증가합니다. 또한 거대한 공개된 지역이 괜찮은위험 부담을 가지는지역으로서의 유용함이 감소합니다.


A large open space


선형 구조


플레이어들이 그들만의 길을 만들고, 선과 흐름을 만드는 능력은 멀티플레이어 게임 플레이에서 중요한 요소입니다. 극단적인 선형 구조는 이러한 요소를 가로막는 장벽이 되며, “위험 부담을 갖는시나리오를 제공하길 원하는 것이 아니라면 피해야 합니다.


공격 불가능한 매복 / 저격 지점


사람들을 저격하거나 매복하는 일은 아주 즐거운 일이지요. 하지만, 이걸 당하는 쪽의 사람들은 재밌지 않습니다. 특히나 만약 당신이 이러한 일이 발생하지 것을 막지 못한다면요. 이를 위해서는 저격과 매복 위치는 조심스럽고, 균형있게 배치해야 합니다. 어떤 난공불락의 위치는 좋은 멀티플레이어 맵에서 공개적으로 바뀌거나, 제거해야 하죠.


비밀 지역


싱글 플레이 게임에서는 비밀 장소를 찾는 일이 재미있지만, 멀티플레이어 게임에서는 승리를 결정짓는 주요 요인으로서 맵에 있어 눈에 띄지 않는 지역에 대한 인식을 제거하려는 시도가 있어야 한다. 비밀 지역, 특히나 강력한 파워업 아이템이나 무기가 있는 장소들은 맵에 대한 깊은 지식을 갖도록 권하거나, 능숙한 근접 전투 능력의 손실을 감추려 합니다.



멀티플레이어 레벨 만들기



요구사항을 결정하자


대칭적인 구조가 필요할까?


깃발뺏기와 같은 오브젝트를 기반으로 둔 모드들은 보통 대칭구조의 맵으로 설계되어 있습니다. 대칭구조가 아니면서 오브젝트를 기반으로 두는 맵의 밸런스를 맞추는 일은 굉장히 어렵지만, 확실하게 가능하긴 합니다.


어떤 종류의 레벨인가요? 자연, 에일리언, 인공적으로 만든 것? 도시인가요? 어떤 종류의 자원을 사용하나요?


이런 것들을 초기에 설정 함으로써, 당신의 첫 번째 맵을 만들거나 설계하기 전에 맵을 구성하는 데 사용할 기본 형태를 만들 수 있습니다. 아마 바로 맵을 만들거나 테스트해보고 싶은 유혹이 강하지만, 레벨 디자인 과정에 있어서 이 부분에 대해서 충분한 생각이 하지 않아서 망가지는 맵들을 많이 보았습니다.


다양한 모드나 맵의 크기를 지원해야할까?


Resistance: Fall of Man에서, (역자 : 2006년에 발매된 FPS 게임) 우리가 만든 대부분의 맵들은 서로 다른 플레이어의 취향과 게임의 모드를 위해서 만들어졌습니다. 우리는 아주 다양한 변수를 활용해서 맵들의 균형을 맞춰야 했기 때문에, 우리는 과정에 있어서 많은 선택을 해야만 했습니다. 예를 들어, 크기 조정한 맵들의 대부분이 대칭적인 구조를 가진 이유가 이것입니다.


지역을 선택하세요


저는 FPS 멀티플레이어의 수준을 연결되어 있는 일련의지역으로 정의합니다. 좋은 지역은 이러한 것들을 포함하고 있지요.


A) 중요 지점을 가지고 있습니다.

B) 그리고 이곳은 4명에서 8명이서 싸우기에 적당한 크기를 가지고 있죠.

C) 또한 수직적인 요소와 같은 적절한 수의 지형 요소들이 포함되어 있고,

D) 적어도 2개에서 3개의 입구와 출구를 가지고 있습니다.


중요 지점을 선택하세요


중요 지점에 대해서 생각할 , 당신은 가지 시야를 가지로 그들을 생각할 필요가 있습니다. 특정 지역에서의 주요 지점과, 맵에 있어서의 주요 지점이지요. 종류의 같은 용도로 사용됩니다.


A) 특정 지역이나 맵을 가기 위한 이정표 랜드마크로서의 역할을 합니다

B) 특정 지역이나 맵에 있어 게임 플레이를 제공하거나 미적인 흥미를 제공하지요.


중요 지점은 또한 플레이어들에게 지역이 어떤 것인지에 대해서 말해준다. “등대”, “본부”, “동굴”, 또는우주 정거장이것들은 각각이 어떤 것을 기반으로 두고 있는 지에 대한 생각과 무엇을 중요 지점으로 지에 대해서 서술해준다. 예를 들어, 우주 정거장은 아마도 당신이 우주선에서 싸우거나, 정거장 위해서 전투를 벌일 것이고, 등대는 따로 설명할 필요도 없지요.


여기 Resistance 위한 맵을 설계할 제가 발견한 유용한 가이드라인이 가지 있습니다.


 - 모든 맵들은 전체 지역에 있어서 기반으로 하는 하나의 주요 지점을 갖기 위해서 노력해야 합니다.

 - 중요 지점들은 시각적으로 흥미를 돋굴 있어야 하고, 플레이어들이 목표를 향해나아갈 있도록 해야합니다

 - 중요 지점은 게임 플레이에 사용되는 오브젝트나, 건물, 파워업 아이템 등이 있습니다

 - 최고의 멀티플레이어공간 시작적으로나 게임 플레이에 있어 흥미로운 장소를 중심으로 만들어집니다.


맵에 있는 크레인과 등대는 중요 지점의 좋은 예입니다. 각각의 것들은 주요 목표 지점을 향한 이정표로서의 보조 역할을 뿐만 아니라, 시각적인 관심도 더하지요.


흐름 / 연결성의 결정


멀티플레이어 디자인을 시작할 괜찮은 번째 시작은 간단한 다이어그램 구조를 그리는 것입니다. 흐름 다이어그램은 서로서로가 연결되어 있고, 지역을 대표하는 간단한 형태로 구성되어 있죠. (, 네모, 삼각형 ) 당신은 제가 이전 글에서 말했던 것을 아마 기억할 거에요. 저는 그걸버블 다이어그램이라고 불렀죠.


그림은 간단한 흐름도의 가지 예입니다. 모든 단순한 형태들은 서로 다른 지역을 나타내며, 화살표는 형태 사이의 흐름을 보여줍니다. 명심하세요. 화살표들은 오직 흐름 만을 가르킵니다. 이것들은 무조건 출입구의 , 혹은 출구라던가 밖의 다른 것들에 대한 정보를 전해주는 것이 아닙니다.


흐름에 대해서 생각해볼 , 다음 내용에 고려해보기에 좋은 것이 있습니다.


 - 전역적인 흐름(장비 획득 장소)

 - 지역 흐름(중요 지점, 지형 상의 이점)

 - 플레이어가 올바른 결정을 내리는 가장 좋은 방법을 생각해보세요.

 - 입구 / 출구(모든 지역은 최소 2개에서 3개의 입출입구가 있어야 합니다)

 - 디자인 데스매치 맵은 모든 곳들이 연결되어 있습니다.

 - 디자인 거점 점령이나 깃발 뺏기 맵들은 전략적으로 일부 연결을 막아 놓습니다. (상대를 추적하거나 목표를 방어하는 것을 가능성 있게 하기 위해서)


지역에 대해서 밑그림을 그려보세요


이제 당신은 흐름을 그리는 것을 멈추고, 당신의 지역에 대한 밑그림을 그리는 것을 시작할 때입니다. 이것은 각각의 디자이너에게 맞도록 종이나 3D 작업할 있습니다. 해당 지역에 대해서 게임 플레이를 구성할 , 해당 지역을 구성하는 다른 측면을 고려하는 것이 좋습니다. 하지만 무엇보다도 중요한 것은 수직성을 더하는 것입니다.


 - 수직 요소는 중요합니다!

 - 시각적으로 흥미로운 것들을 넣으세요

 - 공간 재활용을 하세요

 - 보다 작은 공간에 많은 게임 플레이를 넣으세요

 - 플레이어들에게 흥미로운 선택을 제시하세요


지역은 언리얼 2k4 등장하는 Rustatorium이라는 맵이고, 수직의 활용을 보여주죠. 보다 흥미로운 장소로서 만들어졌을 뿐만 아니라, 플레이어들이 위험 부담이 낮은 지역을 택하는 대신에 체력회복 아이템을 얻을 있는 기회를 제공함으로써, 만들어진위험 부담에 대한 보상시나리오를 만들어내죠.


당신은 또한 시야 거리, 얼마나 많은 캠핑을 위한 위한 장소를 만들지에 대해서, 또는 당신이 해당 지역에서 게임 플레이를 바라는 지에 대해서 생각하고 싶어 해야 합니다.


공개된 장소 VS 엄폐된 장소


일반적으로 크고 공개된 장소는 많은 수의 수직 요소나 엄폐물을 사용하는 것을 피해야 합니다. 예외적으로 당신이 플레이어가 취약한 상태에 놓이고, 위험 부담에 따른 보상 시나리오를 설정한 때는 제외하구요.


위험 부담에 따른 보상 시나리오


플레이어들에게 선택권을 좋은 방법 하는 해당 지역에 개의위험 부담에 따른 보상 넣는 것이다. 이런 요소들은 플레이어들이 위험 부담을 가지고 그에 상응하는 보상을 얻게 하고자 때마다 등장합니다. 예를 들어(작은 빔이나, 공개된 장소 또는 근처와 같은) 공격받기 쉬운 장소에는 강력한 무기를 얻을 있죠.


다른 때에는 유저들이 궁극적으로 전략적인 이점을 갖도록 유혹할 있습니다. 예를 들어, 당신이 기지에 개의 길을 만들었다고 해보죠. 하나는 훌륭한 엄폐물과 수비하는 사람들을 공격하기에 좋은 위치가 있는 길입니다. 그리고 다른 길은 짧지만 공개되고 쉽게 방어될 있지만, 다음에 상대팀을 상대하기에 좋은 위치를 점령할 있습니다.


가지 추가 메모


깃발 뺏기 모드에 대한 지원(대칭적인 구조)


 - 깃발 뺏기와 거점 점령은 균형적인 밸런스를 위해서는 거의 대칭적인 구조를 요합니다.

 - 깃발 뺏기는 깃발 운반자가 달리기에 좋은 장소를 요하지만, 깃발의 위치를 숨겨놓으면 됩니다.


없는 장소들


 - 때때로 당신은 맵에 실력이 좋은 플레이어들이 절대 가지 않을 장소를 만들 것입니다. 왜냐하면 그들에게 불이익을 주기 때문입니다. 가능하다면 이런 짓은 하지 마세요

 - 만약 당신이 맵을 테스트해본 결과 일부 지역이 없는 지역인 것을 발견한 경우, 해당 구역에 위험에 따른 보상에 대한 시나리오를 만들어보세요. 그곳에 획득할 있는 물건을 두거나, 그곳이 좋은 장소가 되어야만 하는 좋은 구실을 만드세요. 그렇지 않는다면, 지역을 막아버려서 신규 유저들이 그그소를 죽음으로 내몰지 않도록 하세요.


FPS 관련 별미


 - 지형의 급격한 변화를 피하세요. 플레이어들이 올라가기에는 너무 가파르게 보일 뿐만 아니라, 그들이 앞으로 나아갈 때도 전방을 보기 힘듭니다. 만약 급격한 변화를 낮춘다면, 결과는 명백합니다.

 - 복도와 같은 스타일의 지역을 디자인 (오솔길, 골짜기, 길거리), 이러한 영역을 설계하기 전에 게임 플레이에 필요한 최소한의 공간을 먼저 결정하세요.

 - 만약 가능하다면, 3D 공간을 밑그림 그릴 이미 제작된 맵들의 리소스를 사용하도록 노력하세요. 이렇게 하면 일단 당신이 디자인한 공간이 채워졌을 , 충분히 맵이 지에 대한 판별을 있습니다.


플레이어들의 맵에 대한 지식


맵을 숙지하는 것이 승리를 달성하는 키인 반면에, 일반적으로 그것이 누가 이기거나 지는 것에 대해서 믿을 없을 만큼 중요한 것이 되어선 안됩니다. 게임의 숙련자가 부분을 채워줄거에요.


맵에 대한 지식이 해당 맵에서 누가 이기는 지에 대한 핵심 요소로 작동하는 것은 나쁜 예이며, 이러한 예가 있습니다.


비밀 장소 - 비밀 장소는 깃발 뺏기 맵에서 깃발 운반자들이 숨어있을 있도록 하며, 맵에 대해서 알고 있거나 게임을 하는 사람이 보상을 받겠죠


숨겨진 강력한 아이템 - 오직 맵을 플레이 해본 사람만이 아이템을 알고 있을 것입니다. 일반적으로, 가장 접근하기 쉬운 곳에 강력한 무기를 놓고 플레이어들이 그곳을 중요 지점으로 사용하도록 하세요.


찾기 힘든 장치 - 공중 공습과 같은 맵에서 숨겨진 버튼과 같은 것들은 모두를 폭사 시킬 겁니다. 이런 버튼과 같은 것들은 접근하기 쉬운 지역에 있을 때는 재미있고, 여러분이 어떤 대책을 갖고 행동할 있지만 숨겨져 있거나 비밀스러운 위치에 있을 때는 아닙니다.


순간이동기(가끔) - 순간이동기는 일반적으로 공정한 싸움을 이끌어내지 못하는데, 그들은 순간이동기의 출구가 어디로 이어져 있는 지를 아는 사람들 만이 반대쪽으로 나올 좋은 결정을 내릴 있기 때문입니다..



Designing FPS Multiplayer Maps – Part 1

FPS 멀티플레이 맵 디자인하기 파트1


안녕하세요 라인스터입니다. 이제 3번째 번역글이네요. 이번 글은 DODGER라는 해외 게임 디자이너의 블로그(https://www.ongamedesign.net/)에서 발견한 글입니다. 시리즈물로서 FPS 멀티플레이어 맵을 디자인 때의 기본적인 방법론에 대해서 서술하고 있습니다. 2008년에 게시된 글이지만, 기본적인 내용에 있어서는 현재의 FPS 디자인 때도 나쁘지 않은 내용이 있어 번역합니다. 원저자인 DODGER에게 허락을 받고 번역을 하는 글이며, 블로그와 GDF(게임 디자이너 포럼, http://gdf.inven.co.kr/) 게시됩니다. 번역자의 의견이 추가되는 부분은 (역자 :) 표기하였습니다. 오타와 오역은 블로그의 댓글이나 leinster92@me.com으로 알려주시면 수정하도록 하겠습니다.




FPS 멀티플레이어 디자인하기 - 파트1


개관: FPS 멀티플레이의 재미란 뭘까?


선택


시드 마이어(역자 주: 문명 시리즈 등을 만든 게임 디자이너)는 “게임이란 의미있는 선택의 연속이다”라는 말을 한 적이 있고, 게임 디자인에 있어 멀티플레이어 디자인보다 이가 더 잘 드러나는 곳은 없습니다. 싱글 플레이어 게임에서, 디자이너는 플레이어를 안내하는 것을 돕기 위해 선형적인 진행 구조나, 게임 플레이의 디자인 도구에 접근하게 됩니다. 선형적인 진행 구조, 또는 단지 게임 플레이의 부분적으로 나눠 일반적인 괜찮은 기술 등으로요. 멀티 플레이어 게임에서, 플레이어들은 오직 당신이 그들에게 하도록 제공된 도구들을 사용해서 끊임없이 자신만의 경험을 만듭니다.


따라서, 플레이어에게 좋은 도구를 제공하고, 그가 좋은 경험을 만들어 낼 수 있도록 한다는 관점에 따라서 멀티플레이어 맵 디자인에 접근하는 것은 중요합니다.


물론, 이 모든 것들은 분명 뻔하게 들리지만, 얼마나 많은 사람들이 이 기본적인 방법을 잘못 받아들이고 있는 지를 보면 말해볼만 합니다.


지형 선택의 자유


멀티플레이어 FPS 맵에서 플레이어들에게 흥미로운 선택을 부여하는 좋은 방법 중 하나는 그들에게 선택할 수 있는 다양성있는 지형의 선택권을 부여하는 것입니다. (벽, 몸을 숨길 곳, 고지대, 그리고 저지대 등은 이러한 지형의 선택권의 예입니다) 숙련된 플레이어들은 상황에 맞춰서 어떤 지형을 이용하는 것이 이득인지에 대해서 학습을 합니다. 예를 들어, 보통 자신의 적보다 높은 지형을 차지하는 것은 꽤 괜찮은 생각이지요. 이것은 플레이어에게 있어 그들의 적을 쏘기에 좋은 각도를 제공하는 것 뿐만 아니라, 부분적으로 몸을 숨길 곳을 제공합니다. 이제 당신이 벽 근처에 고지대를 위치 시켰다고 가정 해봅시다. 이제 플레이어는 선택을 할 겁니다. 고지대로 향하고, 몸을 숨길 곳을 획득할 것인가, 혹은 범위 공격형 무기에 쉽게 피하기 위해서 공개된 곳에 머무를 것인가.


실력 있는 멀티플레이어 디자이너들은 항상 이러한 지형 선택권에 대해서 생각하고, 플레이어들이 가능한 한 많은 선택지를 가질 수 있도록 설계합니다.


다양한 경로


싱글 플레이어 게임에서, 당신의 게임이 가질 수 잇는 최고의 게임 플레이경험으로 플레이어를 이끄는 것이 종종 도움이 됩니다. 일반적으로, 이것은 선형적인 레벨 디자인으로 이끌어집니다. (대부분의 경우, 당신이 제공하고 싶은 가장 합리적인 경험으로요) 멀티플레이어 게임에서 이러한 선형적인 구조는 거의 도움이 되질 않습니다. 숙련된 플레이어들은 레벨에서 끊임없이 그의 경로을 변화시킬 것입니다, 자신을 쫓아오는 추적자를 따돌리거나 자신이 원하는 무기를 얻거나 줍기 위해서요. 어느쪽이던, 멀티플레이어 맵에서 주요 지점으로부터 오고 가기 위해 수많은 길을 제공하는 것은 플레이어들에게 항상 이득입니다. 일반적인 규칙에서, 잘 된 멀티플레이어 디자인은 게임 안의 핵심 지점에 도달하거나, 그곳으로부터 빠져나오기 위해서 적어도 3개의 길을 제공하도록 노력합니다. 모든 규칙이 그렇듯이, 예외는 있습니다. 그리고 제가 이제 앞으로의 것들에 대해서 얘기 해 드리겠습니다.


끊임 없는 흐름


덧붙여서, 다양한 경로 외에도 실력 있는 멀티플레이어 디자이너는 어떻게 멀티플레이어 맵을 통해서 유저들이 전체적으로 이동을 할지에 대해서 지속적으로 고민합니다. 흐름이라고 이해되는 이러한 레벨은 데스매치 (역자 : 사망하면 다시 살아나고, 제한시간 내에 최대한 많은 적을 사살해야 하는 모드) 거점을 점령하는 맵에 이르는 모든 것들에 영향을 미칩니다.


레벨 디자이너에게 특정 레벨을 헐뜯기 전에 개략적인 버블 다이어그램(http://www.ongamedesign.net/beating-design-block-level-design/)으로 접근하는 것이 종종 도움이 됩니다. 이런 다이어그램은 보통 주요 지역을 대표하는 간단한 모양(원, 사각형, 삼각형) 등으로 표현됩니다. 일단 당신이 멋진 지역의 설계를 했다면, 그것들을 화살표로 연결하여 그 지역을 들어가거나 나갈 수 있는 서로 다른 길들을 보여주세요. 그런 다음 생각해보세요, 어떻게 플레이어들이 한 지역에서 다른 지역으로 여행하는 방법과 그 경로 상에 흥미로운 장소가 있는지에 대해서요. 만약 당신이 이러한 좋은 흐름을 생각해내는 것에 어려움을 겪는다면, 여기 당신이 거의 항상 의존할 수 있는 기본적인 형태가 존재합니다.


원형 형태


원형은 레벨이 가질 수 있는 가장 단순한 형태이다. 당신이 오직 원형의 형태만을 가지는 레벨을 거의 디자인해본 적이 없을테지만, 때때로 당신은 레벨에 있어 간단한 원을 통해서 핵심 경로의 흐름을 정의할 수 있습니다. 이것은 때때로 당신이 더 나은 흐름을 생각해내기 위한 출발점이 되기도 하죠.


8의 형태


만약 당신이 어떤 멀티플레이어 경쟁 게임(보통 대부분 FPS지요)을 플레이 한다면, 당신은 수많은 레벨들이 단순한 8의 형태를 기반으로 하고 있다는 것을 알아챌 것입니다. 8의 모양은 주요 흐름에 있어 아주 흥미로운 형태지요. 8의 형태는 원형 형태에서 제공할 수 있는 흥미로운 흐름의 모든 이점을 제공하는 동시에 원주의 반 정도를 통과하는 추가적인 핵심 흐름으로 인해 이점을 제공합니다.

때때로, 당신은 개의 8 형태의 배치를 통해서 놀랍도록 복잡하고 어려운 흐름을 만들어낼 있습니다.


언리얼 2k4 맵은 8 형태의 흐름의 좋은 예입니다. 여기서 3개의 겹쳐진 8 형태를 통해서 아주 복잡한 구조가 만들어졌다는 것을 알아차리세요.


흥미로운 장소


중요 지점


중요 지점은 멀티플레이어 맵에서 각별하게 중요한 것입니다. 맵에서 플레이어들이 다른 짖머으로 나뉘도록 흥미를 분산시킬 뿐만 아니라, 맵의 시각적인 흥미를 분산 시키기도 하지요. 모든 디자인 맵들은 맵에서 가장 중요한 위치에 중요 지점을 가지고 있고(보통은 맵의 중앙에), 또힌 모든 중요 지역에 낮은 관심도를 가지는 지역 또한 포함하고 있습니다.


중요 지점의 예는 아주 길다란 건축물, 흥미로운 지형의 발달, 게임 플레이에서 요구하는 요소(거점과 같이), 습득물, 그리고 어떤 지역에서 특별히 시각적인 흥미를 유발하는 것들입니다.


수직 상태


지역 선택의 자유 파트에서 약간 다루었지만, 멀티플레이어 디자인에서 수직 상태의 중요성은 과장할 필요가 없을 정도입니다. 수직 상태는 특정 지역에서 플레이어가 선택할 있는 경우의 수를 증가 시키기지만, 또한 해당 맵이 가지고 있는게임 플레이당 평방 증가 시킵니다. (역자 : 같은 공간 내에서 플레이 가능한 지역이 증가한다는 의미인 같습니다.) 완벽하게 평평한 맵은 400m x 400m 크기에서 32명의 플레이어까지 지원하지만, 당신은 모든 중요 지점에 하나나 개의 200m x 200m 수직적인 레벨을 더함에 따라 같은 플레이어를 수용할 있습니다.


예를 들어, Resistance에서 (2006 플레이스테이션3 통해 발매된 FPS 게임) 우리는 3에서 6미터의 고저차를 가진 지역을 추가하면 우리에게 많은 즐거움을 준다는 것을 발견하고, 게임이 훨씬 촘촘하고 재미있도록 있었습니다.


엄폐물


멀티플레이어 게임에서 플레이어들이 게임을 하는 수많은 시간 동안 아주 멀리서 사격을 없다는 사실을 중요합니다. 크고 공개된 장소는 보통 일반적으로 수많은 엄폐물들로 둘러쌓여 있지요. 이것은 또한 플레이어들이 너무 오랫동안 취약한 상태로 지역을 통과하지 않도록 이점을 제공합니다. 규칙의 예외는 위험에 따라 보상을 지급하는 시나리오가 있는 지역입니다. (예를 들어, 교외에서 수많은 엄폐물이 있는 공개된 장소가 있고, 중심지에 휼륭한 강화 수단이 존재한다면, 플레이어들은 숨어 있는 누군가가 그를 수도 있는 위험부담을 가지고 아이템을 차지하려고 하겠지요.) 우리는 다음에 내용에서 이러한 위험에 따른 보상 시나리오에 대해서 알아보겠습니다.


아래의 그림은 배치된 장애물들이 어떻게 공간을 극적으로 변화시키는 지에 대해서 보여주고 있습니다. 이것들은 플레이어가 선택할 있는 많은 선택지를 제공하지만, 공개된 장소는 그렇지 못하죠.

Should game designer learn foreign language?

게임 디자이너들이 외국어를 배워야만 할까요?


안녕하세요, 라인스터입니다. 번째 번역글입니다. 가벼운 마음으로 시작했는데 글의 말미로 갈수록 어려운 내용이 너무 많았네요 ==;. 이번 글은 가마수트라에서 발견한 글입니다. 또한 원 저자인 Andrii Goncharuk에게 허락을 받고 번역이 진행 되었습니다. Andrill Goncharuk이 말해주길 이 글은 많은 기획자들이 다양한 언어를 알 때의 이득에 대해서 알리기 위해서 쓰여진 글이기 때문에, 흔쾌히 허락해주었습니다.


그럼 시작하겠습니다. 오타 및 오역은 이 글의 댓글 및 leinster92@me.com 으로 알려주시면 바로 수정하도록 하겠습니다. 또한 제 의견이 들어가는 부분은 (역자 주)로 표기하였습니다. 원문은 (https://www.gamasutra.com/blogs/AndriiGoncharuk/20171208/311298/Should_game_designer_learn_foreign_language.php) 이곳에서 확인하실 수 있습니다.




소개 대신에

안녕하세요 제 이름은 Andrii Goncharuk이지만, 여러분들은 저를 Andy라고 불러주세요. 저는 Warsaw(역자 주: 바르샤바의 지역명)에 있는 CI Games에서 선임 게임 디자이너로 근무하고 있습니다. 그리고 사실... 저는 지금 살짝 걱정하고 있습니다. 저는 폴란드어를 잘 하지 못해요, 그리고 여기있는 사람들과 잘 어울리지 못하죠. 저는 제 스스로에게 외국어를 배워야하나? 라는 질문을 던집니다. 게임 디자이너가 그렇게 함으로써 얻는 이득이 있을까요?




/* 주의하세요 */


글에서는 평소와 같이 언어와 문차의 차이, 그리고 그들이 어떤 식으로 게임 산업에 영향을 끼치는가에 대한 주제에 대해서 중요한 개념과 논점에 대해서 논할 겁니다. 그리고 주제에 대해서 깊게 학습할 있는 링크 또한 제공할거구요.


/* 주의 */



비디오 게임 산업에서의 문화적 차이

(역자 : 때때로, 다른 문화에서 적절히 수용되도록 게임 속의 내용들이 약간씩 바뀝니다.)


문화적인 차이는 최근에 몇몇 게임들이 전세계용 버전과 비교해서 콘텐츠나 이야기들을 바꾸는 이유 하나입니다. 때때로 일부 국가에는 게임이 출시되지 않죠.


최근에 존재한 가장 설득력있는 예중 하나는 북미와 미국 서부지방 또는 일본과 아시아에 출시되는 게임의 종류입니다.



닌텐도의 검열 시대

1980년에서 1990년대 사이, 일본 게임 회사인 닌텐도에 의해 지배당하는 초기 게임 산업의 시대에는 그들의 콘솔에 출시되는 게임에 대해서 검열과 문화적인수정 대한 많은 예가 있습니다. Aleks Krotoski The Guardian 그의 글을 보시죠.


  1. Castlevania에서 옷을 벗은 조각상
  2. Maniac Mansion에서 노골적인 랜덤요소와 이유없는 폭력의 삭제
  3. Punch Out에서 Vodka Drunkenski에서 Soda Popinski 캐릭터의 이름 변경
  4. 싫던 좋던 게임속 병원, 공동묘지, 교회에서의 십자가의 제거(역자 : Willy Nilly 싫던 좋던으로 번역)


이것은 짧은 목록이지만, 그들이 받아들일 있는 것과 그렇지 않은 것에 대해서 게임 속에서 어떻게 바뀌는지 보여줍니다.


많은 이들은 이것이 옛날에나 그런 것이라고 생각하지만, 오늘날 우리는 많은 예를 있습니다. 가장 최근에 발매된 게임 Wolfenstein 시리즈의 독일 버전에는 변화가 있었습니다. 왜냐하면 독일에서는 나치 상징물에 대한 엄격한 규정이 있기 때문이지요.


오늘날 문화는 게임과 산업 전체에 대해서 영향을 끼칩니다. 그리고 모든 변화가 검열로 인해 실행되는 것은 아닙니다. 때때로 변화들은 마케팅의 요구에 따라 특정 지역에서 팔리기 위해서 겪는 경우도 있지요.


많은 연구에 따르면 플레이어의 선호도는 국가 단위로, 그리고 문화 단위로 극단적으로 차이가 납니다. 그리고 그것이 우리가 글에서 얘기할 것들이 중요한 이유지요.




플레이어의 선호도

게임은 전세계에서 플레이 됩니다. 그리고 어떤 지역에서 특정 게임, 장르, 타입의 유행은 지역의 문화에 대해서 많은 것들을 말할 있죠. 모든 것들은 문화적인 차이는 게임 플레이어의 선호도의 차이를 가지고 있다는 점입니다.


간단하게 말하기 위해서, 우리는 가지 극단적인 , 미국과 일본을 살펴볼 것입니다. ( 자세한 내용은 Anita Ching Yi Ngai 작성한 <Cultural influences on video games: players preferences in narrative and gameplay> 찾아보세요.

(역자 : https://uwspace.uwaterloo.ca/handle/10012/770 2005년에 작성된 게임을 플레이 문화에 따른 영향에 대한 내용입니다. 관심있는 분들은 읽어보시기 바랍니다>


여기 Anita 우리에게 미국과 일본에서 발생한 상황에 대해서 얘기하고 있습니다.


일본은 독특한 역사, 제도 그리고 문화 기반을 가지고 있습니다. 문화적인 통합을 강요하고, 오래전부터 내려온 국가에 대한 충성심 고착, 그리고 새로운 것에 대해서 빠르게 변화하는 것을 중요시 합니다. 소비자용 제품과 서비스의 발달은 젊은 층에서 창의성의 근간을 제공했죠. 일본은 전세계의 것으로부터 생각을 떠올리고, 그들의 것으로 재창조 하여 새로운 생각을 만들어내는 것을 대단히 합니다. 이것은 문화에 있어서 차이를 발견하고, 인지하고, 이해할 있는 능력이고 창의성을 계속 존속시키며 대중적인 문화를 발전시킬 있는 능력입니다.


일본의 문화는 애니메이션과 만화(일본 만화) 있어서 역사를 가지고 있습니다. 그들은 모든 연령대의 사람들의 삶에 깊숙히 침투해 있죠. 종교, 혈통, 전쟁, 그리고 사회적 정의과 같은 진지한 이슈들은 애니메이션이나 만화 시리즈의 길고 복잡한 이야기 흐름에 의해 제시됩니다.


일본의 비디오 게임 산업은 캐릭터 제작, 그래픽 디자인, 스토리의 작성에 있어 이러한 강력한 기반으로부터 이득을 취하고 있지요. 기술은 동시에 이러한 산업 사이에서 개발되고 효과적으로 퍼뜨려짐으로써 콘텐츠 영향을 효과적으로 주게 됩니다. 소비자 시장에서, 플레이어들은 이러한 애니메이션, 만화, 그리고 비디오 게임의 조합을 알고 있지요?"


미국은 아주 개인주인적인 사회이며, 강력한 자기 독립능력을 가지고 있습니다. 그들은 개인의 자율과 자기 독립에 가치를 두고 존중하지요. 문화 자체가 자수성가와 자립심, 개인의 목표와 야망을 강조하죠. 미국의 오락 문화는 주로 음악, 영화, 그리고 텔레비젼 프로그램으로 이루어져 있습니다.


만화와 만화책은 어린이들의 장난거리로 여겨지고, 종종 완벽하게 보존되고, 엄청나게 동화같은 내용으로 구성되어 있습니다. 전세계의 독자들에게 어떠한 문화적 메시지의 변경 없이 전세계로 그들의 인기있는 문화적인 14개의 제품을 퍼뜨린 것은 언론을 통해서죠.


반면에, 미국은 비교적 외국의 유명한 문화적인 제품에 대해서 낮은 수용성을 지니고 있습니다. 미국의 제국주의와 같은 유명한 문화는 세계의 엔터테인먼트 시장에서 지배적이었다. 업계가 엔터테인먼트 산업의 수익의 흐름에 개입 함에 따라 인기있는 영화나 텔리비젼 프로그램, 또는 비디오 게임에서 미국의 유명인사를 보는 것은 흔한 일이 되었지요. 이러한 게임들은 비록 시장의 의식과 인신을 만들어내긴 하지만, 새로운 이야기와 강력한 게임 플레이의 부족함이 있습니다.


미국의 비디오 게임 산업은 또한 컴퓨터 게임의 디자인들을 콘솔 게임으로 넣는 것에 집대성 되어 있다. 왜냐하면 플레이어들은 PC 대중화를 통해 컴퓨터 게임의 방식와 게임 플레이에 익숙해져 있기 때문입니다."


(역자 : 표의 내용은 쉬운 내용이라 번역하지 않았습니다.)


위의 표에서는 미국과 일본, 그리고 중국에서 게임의 장르에 따라 판매량과 인기의 극단적인 차이를 보여줍니다. 롤플레잉 게임들은 현재 일본에서 과열되어 있지만, 반면에 미국은 현재 스포츠와 액션 게임들에 조금 집중되어 있지요. 게임의 장르는 게임에서 제공되는 상호 작용 요소의 방식에 의해서 분류되고, 이것은 상호 작용의 종류와 네러티브의 수준이 플레이어에 의해 가치가 있다는 것을 의미합니다.


롤플레잉 게임들은 종종 플레이어가 따라가야만 하는 논리적인 진행과 함께 아주 규격화된 플롯을 제공하고, 게임 디자이너의 지시에 따라 일련의 이벤트를 겪습니다. 그러므로, 상호 작용은 아이템의 수집, 레벨 상승을 위한 적들과의 배틀로 대게 제한되지요.


1인칭 슈팅 게임과 같은 액션 게임은, 게임 플레이를 위한 시나리오를 만들기 위해서 네러티브를 사용합니다. 다른 스포츠와 같은 액션 게임들은 네러티브 구조를 아예 요구하지 않지요. 상호 작용은 액션 게임에서 플레이어가 그들만의 경험을 위해서 탐험하고, 게임 플레이를 개척할 더욱 유연하지요.


모든 차이점은 문화와 같은 많은 변수 때문에 존재하고, 우리에게 더욱 중요한 것들 언어 또한 그중 하나라는 것이다.



문화의 차이 그리고 언어

Related image

우리의 게임 산업에서 이러한 모든 문화적인 차이는 어떤 게임들이 플레이 되고 있는지에 대한 선호도 뿐만 아니라, 어떤 게임이 만들어지고 있는 지에 대해서도 적용된다. 왜냐하면 다른 문화 지역에서 디자인되는 게임들은 보통 서로 차이를 지니고 있고, 이유는 게임 개발자들이 잠재 의식 속에서 그들의 가치와 문화를 그들의 게임에 넣기 때문이다.


이러한 세계에 있는 다른 방식의 생각에 대해서는 Richard E. Nisbett 글에서 찾아볼 있다.


Nissbett 문화의 차이에 대한 그의 연구에서 서양인들은 선형(원문: Linearity) 선호하지만, 아시아인들은 순환(원문: Circularity) 선호한다고 설명했다. 서양인들은 안정적인 상황이 항상 같은 방식으로 계속되도록 유도한다고 생각하는 경향이 있지만, 아시아인들은 안정적인 상황이 잠재적인 변화를 가르키고, 후에 어떤 요소가 이전에 만들어진 상태로 되돌아 간다고 믿는 경향이 있다.


Nisbett 연구에서 중요한 결론 하나는 만약 아시의 누군가에게 사진을 준다면, 사진 전체를 보고, 안에 있는 것들 간의 관계를 찾는다는 것이다. 왜냐하면 아시아인들은 하나의 장면에 대해서 완전함을 추구하는 경향이 있는 반면에, 서양인들은 사진 안에서 두드러지는 일부분에 집중하는 경향이 있기 때문입니다.


문화에서의 차이는 의미와 사물을 해석하는 방법에 있어 주요한 역할을 하고, 이것은 게임을 소비하고 창조하는 있어서 다른 문화적인 선호도의 이유 하나입니다. 언어는 이러한 모든 점에서 중요한 역할을 하고, 우리가 생각하는 것보다 생활에 직접적인 이유를 제시합니다. 여기 어떤 식으로에 대한 이야기가 있습니다.



언어와 우리의

Image result for language in daily life

우리의 일상 생활에 영향을 끼치는 언어 이면에 있는 주요 개념은 언어 결정론입니다. 언어의 구조가 사람의 지식과 생각을 제한하고, 또한 범주화, 기억, 그리고 지각과 같은 사고 과정 또한 결정한다는 것입니다. 이러한 용어는 모국어로 언어로 대화하는 사람들이 서로 다른 사고과정을 거친다는 것을 암시합니다. 이것이 역사적으로 상당히 중요한 역할을 했음에도 불구하고, 언어 결정론은 현재 주류 언어학자들에게 신뢰받지 못하고 있습니다. 언어 결정론은 언어 상대성의 강력한 형태입니다(Sapir-Whorf hypothesis 알려져 있죠), 이것은 개인이 세상을 경험하는 것은 그들이 사용하는 언어의 구조에 의존한다는 것을 말하죠.


요컨대, 당신이 소리내어 말하거나 머리 속에서 말하는 것은 세상에 대한 당신의 결정과 인지에 영향을 끼칩니다. 만약 당신이 제가 이전 글인 어떻게 사람의 두뇌와 기억이 작동하는 지에 대한 글을 읽었다면, 따라오기 어렵진 않겠죠(역자 : 작성자의 이전 글입니다. 추후 번역하도록 하겠습니다 - Biological foundation of emotions pt.1, https://www.gamasutra.com/blogs/AndriiGoncharuk/20170721/302218/Player_motivation_part_1_Biological_foundation_of_emotions.php). 각각의 단어는 다른 많은 단어 그리고 의미와 연관되어 있고, 사람이 언어의 집합에서 하나를 꺼낼 기억 속에 있는 동의어와 반의어의 세트가  즉시 떠오르게 되지요.


이러한 예중 하나는 일본의 언어 4 나타내기 위한 Shi라는 단어가 대화 중에 긴장감을 유발할 있는 죽음 또한 의미한다는 것이지요. 이것은 또한 2004 4 4일에 4번가에 있는 4층에 대한 무언가를 설명하기도 합니다.





프레임화과 여러 언어를 구할 줄 아는 사람의 사고방식

외국어는 문화와 언어의 함정을 피할 있게 우리를 이끌 뿐만 아니라, 과정을 만들어가는 있어서 우리의 결정의 질을 상승시킬 있는 흥미로운 방법을 제시합니다. 이른바 다언어적인 생각(외국의 언어를 이해할 있는) 당신이 하는 결정의 합리성을 상승시켜주며, 언어에 대해서 규격화된 생각을 피할 있게 해줍니다(특정 정보의 소개가 잘못된 선택으로 이어지는 것을요).


사회학에 있어, 규격화는 현실과 사건에 대해서 개인, 그룹, 그리고 사회적인 조직이 어떻게 인지하고, 전달하는지에 대한 개념 이론적인 관점으로 구성됩니다.


심리학 협회의 연구원인 Daniel Kahneman 의해 만들어진 모델에 따르면, 적어도 가지의 인지모델이 있다고 합니다. , 빠른 시스템은 자기 학습, 통찰력, 그리고 감정적인 과정이고, 번째, 느린 시스템은 합리적이며, 노력을 요하고, 조직적인 것입니다. 번째 시스템은 간단한 작업을 작용하고, 반면에 번째 시스템은 어려울 일을 작용하는 경향이 있습니다. 번째 시스템의 직관적인 특성은 프레임화의 효과에 쉽게 영향을 끼치는 반면, 번째 시스템의  노력과 체계적인 특성은 프레임화의 효과에 저항합니다.


당신이 번째 시스템이 보통 모국어를 사용한다는 것으로 이해하듯이, 외국어는 번째 시스템에 의해서 작동하며, 따라서 다른 언어로 사고하는 것을 이성적이고 체계적으로 만들어 줍니다.


하지만 우리 산업의 네러티브와 퀘스트 디자이너들은 언어의 프레임화와 플레이어의 경정에 영향을 끼치는 특정 방식에 있어 어떻게 정보가 제공되는 지에 대해서 아주 흥미가 있을 있습니다. 따라서 게임 개발자가 언어 구조에 대해 알고 있다는 점에서, 어떻게 그것을 피하거나 이것의 중요성에 따라 발생시키는 것은 중요하고 강력한 능력입니다.


Willbert channel 예제와 함께 하는 완벽한 설명이 있는 영상이 있습니다.




이제 여러분은 언어 프레임화는 우리에게 다른 방식으로 정보를 인지할 있도록 해주는 무언가라고 이해했고, 프레임화는 눈에 보이는 것에 영향을 끼치는 , 언어 구조 그리고 문장을 만드는 있어 논리적인 규칙, 패턴 그리고 리듬감에 영향을 끼치는 뿐만 아니라, 사람에 대한 생각의 방식에, 결국에는 사람이 만든 창조물과 일상 생활에 영향을 끼칩니다.


당신이 생각하기 위해서 사용하는 언어는 당신이 작업하고 있는 창의적인 제품(디자인, 미술, 음악) 직접적으로 영향을 끼치죠. 단순하고 조금 직선적인 구조를 가진 언어는 창작물이 작성자의 사고방식을 반영하기 때문에, 동일한 구조를 가진 게임과 눈에 보이는 것을 동시에 디자인할 있습니다. 심지어 조차도 서로 선형적인 관계가 없는 여러 영역으로부터 서로 연결된 패턴에 있는 개인적인 사고 방식의 좋은 예입니다. 하지만 이것은 모국어가 이런 방식으로 구성되어 있기 때문입니다.


 - 단어는 그들 사이에서 어떤 논리적인 연관성이 없는 다른 의미들을 포함할 있습니다.

 - 문장은 하나의 단어로 단순화될 있고, 완전하고 눈에 보여질 있거나, 무결성이나 의미를 잃지 않으면서 단어씩 레이어를 늘려갈 있습니다.

(역자 : Sentences can be as simple as one word and be fully complete and viable or they can have multiply layers and be as long as one paragraph without loosing integrity or meaning)

 - 어떤이가 따라야만 하는 엄격한 규격이나 문장 구조에 있어 특정 패턴은 존재하지 않습니다.

 - 단어의 순서는 문장의 의미에 중요한 영향을 끼칠 있고, 맥락에 따라 완전히 반대의 의미를 가지고 있을 수도 있습니다.


러시아어와 영어의

Image result for russian english

Lera Boroditsky 작성된 기사에서, 그녀는 언어의 차이 때문에 정보가 어떻게 얻어지거나 사라질 있는지, 그리고 독자들이 세상에 대한 지각이나 생각하는 방식에 어떻게 영향을 끼치는 가에 대한 강력한 예를 보여줍니다.


여기 그녀의 기사에서 그녀가 설명한 것이 있습니다.


언어의 형태를 사고하는 방식과 방법에 대한 대부분의 질문은 언어들이 서로 다르다는 단순한 관찰에서 시작됩니다. 그리도 많죠. 같이 가설을 포함한 예를 봅시다. 당신이 “Bush Chomsky 최근 발매된 책을 읽어봐!”라고 말하고 싶어한다고 가정 해봅시다. 여기서읽다라는 동사에 집중해보죠. 영어에서 문자를 읽기 위해서, 우리는 동사에 시제(역자 : 동사의 과거형, 현재형 등의 형태) 포함해야 합니다. 경우, 우리는 이것을읽어봤다 아니라읽다 발음해야 합니다. (역자 : 원문은 reed 아니라 red 처럼 발음해야 합니다 라고 되어 있습니다) 인도네시아어에서는 당신은 (사실 없을테지만) 동사를 시제에 따라 바뀔 필요가 없습니다. 러시아어에서는 당신은 동사를 시제에 따라, 그리고 성별에 따라 바꿔야만 합니다. 그래서 만약 Laura Bush 책을 읽어봤다면, 당신이 말을 George에게 때는 다른 동사 형태를 사용해야 합니다. 러시아에서 당신은 또한 동사의 정보에 완성에 대한 정보를 포함 해야만 합니다. 만약 George 책의 일부분만 읽은 상태라면, 당신은 그가 근면하게 전체를 읽었을 때와는 다르게 다른 형태의 동사를 사용해야 합니다. 터키어에서, 당신은 동사에 정보를 당신이 어떻게 획득 했는지에 대한 정보를 포함해야 합니다. 만약 당신이 가망성 없을 일을 눈으로 직접 목격했다면, 당신은 하나의 동사 형태를 사용합니다. 하지만 만약 당신이 당순히 그것에 대해서 읽거나 들어보거나, Bush에게 들을 것을 바탕으로 단순히 추론한 것이라면 당신은 다른 형태의 단어를 사용해야 합니다.


명백하게, 언어는 그들의 화자에 따라 다른 것을 요구합니다. 이것이 과연 화자가 전세계에 대해서 다른 방식으로 생각하고 있다는 것을 의미할까요? 영어, 인도네시아어, 러시아어, 그리고 터키어를 사용하는 사람들은 단순히 그들이 서로 다른 언어로 말하는 때문에 결국 학회에 참석하거나, 정치적으로 분할하고, 그들의 경험을 다르게 기억하는 걸까요? 몇몇 학자들은, 이러한 질문에 명백하게 그렇다는 답변을 하고 있습니다. 그냥 주변 사람들이 대화하고, 말하는 모습을 보세요. 확실히, 다른 종류의 언어를 사용하는 사람들은 그들의 언어를 올바르게 사용할 있도록 세계 언어의 다양한 측면을 보고 번역해야 합니다.


여기에 있는 중요한 논제 하나는 우리가 어떤 정보를 받아들이고 그것을 기억할 , 우리는 종종 어어를 매개체로 사용해서 우리의 기억에저장하려고 한다는 것과, 우리가 이런 정보에 접근하려고 노력할 , 우리는 오직 물체의 특성을 회상에서 우리의 언어로번역 있습니다. 이건 당신이 당신이 정보를 불러오려고 오력하고, 모으고, 기억할 차이를 가진 결과를 낳죠.


하나 이상의 언어를 배우는 , 가치가 있을까요?

모든 흥미롭지만 중요한 질문은, 이것이 게임 개발자에게 중요할까요? 먼저 생각이 드는 것은 당신이 작업하는 게임에서 마케팅과 문화에 따른 수정입니다, 하지만 추가 언어의 제공은 더한 이익이 있다고 생각합니다.


  1. 합리적인 의사결정 과정
    1. 앞서 말했듯이, 모국어를 기반으로 다른 언어를 생각하는 것은 뇌의 다른 부분을 사용하기 때문에 나으면서 합리적인 결정을 내릴 있게 해주고, 다른 언어로 생각하는 것이 합리적인 이유는 모국어를 사용하는 것에 비해 어려운 과제이기 때문입니다.
  2. 창의적인 프로세스와 브레인스토밍 기술의 향상
    1. 당신이 브레인스토밍 회의가 있고, 당신은 다음 기능을 위해서 마인드 맵을 그려야 한다고 상상해보세요. 당신은 다양한 시작점에서 몇가지 핵심어를 사용해서 당신의 마인드 맵을 만들기 위해서 단어와 의미들을 조합 겁니다. 만약 당신이 모국어만 사용한다면, 당신이 각각의 단어 사이에 연결 범위에 있어서 한계에 봉착될 것입니다. 그리고 대부분의 경우 당신의 작업물 단순히 같은 언어를 사용하는 사람들 사이에서만 도달하게 겁니다. 왜냐하면 동의어와 반의어는 단어 사이의 긴밀한 관계를 통해서 발생되는 결과이기 때문입니다. 하지만 만약 당신이 하나 이상의 언어를 사용할줄 안다면, 당신은 또한 다른 빠르게 다른 언어를 사용해서 동의어와 반의어를 추가할 있고, 그들의 모국어에 알맞게 특별한 컨셉과 아이디어들을 떠올릴 있기 때문입니다.
  3. 외국의 문학, 영화 그리고 인터넷 콘텐츠를 접하기
    1. 만약 당신이 다른 언어를 사용하는 것에 정말 익숙하고, 언어로 콘텐츠를 효과적으로 읽고 있다면, 당신의 정보 접근성은 극적으로 향상될 것입니다. 모든 , 영화, 과학 프로그램과 행사, 당신이 번역해서 접근할 있는 모든 것들에 대해서 이용해야 하고, 당신이 이전에 알던 기반지식과 결합하여 당신의 창의적인 프로세스와 연구를 더욱 향상 시켜줄 것입니다.
  4. 해외 문화와 시장을 이해하기
    1. 당신은 또한 단순히 다른 언어를 이해하는 것이 시장과 문화적 차이에 대한 나은 접근성을 제공한다는 것을 잊지 말아야 합니다. 이건 추가될 기능을 선택하는 과정에서 올바른 경정을 내릴 있는 능력을 겁니다. 시장의 요구에 맞게 적절한 게임 메카니즘과 비주얼 스타일을 선택하고 훌륭한 게임을 만들겠죠. 이것은 게임 개발자 뿐만 아니라 마케팅 또한 도움이 되는 것입니다.
  5. 나은 기억력
    1. 위에서 언급 했듯이, 많은 읽고 들을 것을 기억하는 것은 우리의 언어 능력과 직접적인 관련이 있습니다. 만약 당신이 3 이상의 언어를 구사할 있다면, 당신은  3종류의 언어를 사용해서 당신이 기억하고 있는 것들을 묘사할 있습니다. 따라서 당신은 기억 속에 사물에 대한 중요한 디테일에 대해서 기억하게 되지요. 또한 단순히 새로운 언어를 배우는 것은 당신의 기억력을 향상시켜 주기 때문에 이득입니다.


그래서, 이제 ?

Image result for learn another language

하나의 언어를 배워야만 하는 어떤 이유는 없지만, 유일한 단점은 새로운 언어를 배우기 위해선 시간이 걸린다는 것입니다. 하지만, 이봐요 만약 당신이 부여된 일을 하고 싶다면, 일을 열심히 해야죠. 만약 당신이 언어를 배우는 것에 대해서 많은 이점을 알고 있다면 댓글을 달아주세요. 주제에 대해서 깊게 연구하는 많은 시간을 투자하고 싶지만, 도움이 필요합니다!



결론

 - 문화적인 차이는 항상 시장에 존재했고, 게임 시장도 예외는 아닙니다.

 - 다양한 문화에 맞는 콘텐츠 게임 플레이의 변경 사례가 있습니다

 - 플레이어의 선호도는 문화마다 다르며, 다른 역사와 가치 뿐만 아니라 언어 라는 중요한 이유가 존재합니다.

 - 일본과 미국의 예는 비디오 게임 시장에서 문화의 차이로 발생하는 좋은 예입니다.

 - 문화적인 차이는 해당 문화에서 두드러진 언어와 직접적인 관련이 있습니다.

 - 언어는 우리의 일상 생활에 중요한 영향을 끼칩니다.

 - 경쟁력 있고 창의적인 게임 디자이너는 많은 것들을 배워야 하고, 외국어도 목록 하나입니다.

 - 적어도 다른 언어로 읽고 들을 있다는 것은 강력한 이점입니다.


는 애플뮤직 코리아 오픈 초기부터 사용해온 이용자입니다.

기존에 음원 사이트에서 구매해온 2천곡 정도의 음원을

애플뮤직에 업로드를 해서 사용하고 있었구요.

모든 음원은 초기엔 정상적으로 재생이 가능했습니다.


그러다가 최근에 어떤 문제들이 생기기 시작 했습니다.


1. 업로드한 음원의 태그가 삭제 되고 재생이 되질 않는다.


이 부분이 제일 심각합니다. 물론 애플뮤직에서 서비스가 되다가

원작자 요청에 의해서 서비스가 내려지는 경우, 재생이 안되는 것은 알고 있습니다.

다만 이 부분은 해당 음원이 회색으로 보이고, 태그도 정상적으로 살아 있으면서

재생이 안되는 부분입니다.


제 경우 '업로드' 한 음원의 태그가 삭제되며 재생이 되질 않는 부분입니다.

어떤 곡들이 이런 현상이 나타난 건지도 확인이 아예 불가능한 상황입니다.


2. 업로드된 음원들의 확장자 변환

최근에 벅스에서 구매해서 업로드 한 일부 음원의 확장자가 강제로 변조되었습니다.

100곡 모두 mp3로 다운 받아서 초기엔 정상적으로 재생 되었지만,

어느순간부터 재생이 아예 안되어 맥에서 다운받아 파일을 확인 해보니

m4a로 변환이 되어 있었습니다. 이 파일은 맥에서도 재생이 아예 안 되며,

확장자만 mp3로 바꾸면 다시 재생이 됩니다. 하지만 이 때 mp3로서

파일이 다시 업로드가 된다거나 하지는 않습니다.


다음은 애플의 답변입니다.


1. 애플뮤직은 애플뮤직에 없는 음원은 '사용자'가 업로드 했을 때,

다른 '사용자'가 해당 음원을 검색해서 다운로드 받을 수 있는 서비스이다.

따라서 원작자 요청에 의해서 음원이 사용불가 상태가 될 수 있다.

하지만 아예 태그와 노래정보가 사라지는 현상에 대해서는 확인이 불가능하다

또한 사용자가 창작한 음악을 업로드 한다고 해도, 제목만 알 수 있다면

누구나 검색해서 들을 수 있는 서비스 시스템이다.


2. 확장자가 변경되는 현상은 원인을 알 수 없다. m4a파일은 음성녹음 파일인데,

아이튠즈에서 재생을 할 수 없다고 해도 애플뮤직에 일단 업로드는 된다.

mp3로 업로드 후, 서버에서 변환 후 m4a로 변환되는 현상은 있을 수 없다.



위 내용들에 대해서는 일단 상세하게 확인을 해보도록 문의를 해놓은 상태입니다.

저는 실질적으로 피해를 입었는데, 아무런 것도 해줄 수 없다만 말씀하시니까 화가

나긴 했지만 그쪽에서 서버로 직접 접근해서 확인이 가능한 부분도 아니고

일단은 기다리기로 했습니다.


그래도 애플이니까, 수많은 구매한 음원들을 업로드 했는데

이렇게 돌아오니까 짜증만 나네요.


거기에 상담사분 상담이

[애플뮤직은 사용자가 업로드 한 음원을 다른 사용자가 공유하는 시스템]

이다라고 몇 번을 말씀해주시는데, 처음 듣는 이야기네요.

거기에 완전히 새로운 노래를 제작해서 업로드를 하더라도

누군가가 찾아서 다운로드를 받을 수 있다고 합니다.


+ Recent posts