레버를 돌리면 움직이는 엘리베이터 사례

이전에 NPC가 지나가면 닫히는 문 사례 이야기를 했습니다. 지난번에 그래픽에 타협해도 개발기간은 줄어들지 않아요라는 이야기를 했는데 이 주제를 생각하며 게임을 하다 보니 게임을 구성하는 자잘한 메커닉들이 실제로는 제법 복잡하게 만들어졌음을 설명하면 재미있겠다는 생각을 해봤습니다. 게임에 자주 등장하는 레버를 움직이면 작동하는 엘리베이터는 레벨 상에서 고저차가 큰 지역을 오갈 수 있게 해 주는데 이 장치 역시 과거의 훨씬 단순한 형태에서 현재의 형태까지 발전해 왔습니다. 시스템디자인 입장에서 뜯어보면 근본적으로 이전에 이야기한 문 문제와 거의 같지만 엘리베이터에는 또 엘리베이터 특유의 문제가 있어 소개합니다.

엘리베이터는 레벨디자인 상에 높이 차이가 많이 나는 둘 이상의 장소를 연결하는 장치입니다. 높이 차이가 많이 나면 이들 사이를 직접 이동하도록 계단이나 빗면을 설치해도 되겠지만 이들은 실제 세계와 마찬가지로 공간을 많이 차지해 레벨디자인을 제약할 뿐 아니라 높이 변화를 느끼지 못하게 만들기도 합니다. 계단을 따라 높은 곳에 올라갔지만 계단 자체는 높이를 서서히 올리는 장치이기 때문에 이곳이 이전과 높이 차이가 나는 장소임을 잘 느끼기 어렵습니다. 물론 이런 특성을 적극적으로 활용한 사례도 있지만 흔하지는 않습니다.

특히 유저는 게임 밖에 있어 게임 속 세계로부터 얻는 감각이 제한되어 게임 속 위치의 높낮이를 잘 구분할 수 없습니다. 게임에서 높은 곳에 오르내리기 위한 계단을 기피하곤 하는데 일단 계단은 플레이어 캐릭터가 발을 맞춰 오르내리기 어렵고 계단 자체가 여러 가지 예외상황을 일으킬 수 있기 때문입니다. 그래서 레벨디자인 상 어쩔 수 없는 곳에 계단을 사용하기도 하지만 전투 가능한 장소에는 거의 사용하지 않습니다. 그래서 높이 차이가 많이 나는 둘 이상의 장소를 연결할 때 엘리베이터를 사용합니다.

초기에 엘리베이터는 점프대 형태로 만들었습니다. 점프대를 밟으면 지정된 위치로 플레이어 캐릭터를 발사합니다. 채공시간 동안 조작할 수 있다면 이 사이에 여러 가지 창발적인 플레이를 만들어 내기도 했습니다. 항상 올라가는 방향으로만 동작하고 내려올 때는 그냥 높은 곳에서 뛰어내립니다. 현실적인 모양은 아니어서 스포츠 스타일의 슈터에 주로 채용했습니다.

엘리베이터 발판 위에 올라서면 일정시간 후 움직이는 형태로 만들기도 했습니다. 엘리베이터 발판은 위층 또는 아래층에 멈춰 있는데 발판 위에 올라서면 반대 방향으로 움직여 층을 이동할 수 있습니다. 단순하지만 효과적이고 또 점프대에 비해서는 공간을 덜 차지하고 또 아주 조금은 더 현실적이어서 좀 더 심각한 이야기를 하고 싶은 게임에 사용되곤 합니다. 발판 형태의 엘리베이터는 적어도 두 가지 예외처리가 필요합니다. 먼저 발판이 위층에 올라가 있을 때 발판 아래쪽 공간에 플레이어가 진입해 있을 때 처리입니다. 엘리베이터가 내려올 때 그 밑에 플레이어가 들어가 있다면 플레이어를 튕겨내거나 죽이거나 아예 발판 아래쪽 공간에 지지대를 설치하고 진입할 수 없게 만들어 시각적으로도 그 아래로 들어갈 수 없다는 신호를 주기도 합니다. 또 엘리베이터가 반대쪽에 있을 때 이를 불러오는 방법이 필요합니다. 엘리베이터가 일정 시간마다 알아서 움직이게 하기도 했는데 엘리베이터가 움직이는 사이에 엘리베이터에 탑승해 여기 저기 끼이는 등 문제가 일어나기도 합니다. 그래서 두 층을 오가는 엘리베이터에는 발판 근처에 엘리베이터를 부르는 버튼을 배치했습니다.

엘리베이터 안에 들어가 안쪽에 있는 버튼을 눌러야 엘리베이터가 움직이는 형태로 발전했습니다. 엘리베이터가 멀티플레이 게임에 사용되면서 이동을 원하는 모든 플레이어가 엘리베이터에 탑승했는지 확인한 다음 엘리베이터를 움직여야 하는 상황이 생겼습니다. 혹은 반대로 누군가 태우지 말아야 한다면 이를 유저 스스로 제어할 수 있어야 합니다. 그래서 엘리베이터 안에 버튼을 만들어 이를 누르기 전에는 엘리베이터가 움직이지 않게 됐는데 이런 동작은 멀티플레이 환경에서 무섭고 웃긴 상황을 만들기도 합니다.

그리고 갓오브워에 나오는 레버를 돌려야 움직이는 엘리베이터가 있습니다. 이건 바로 위에 이야기한 안쪽에 버튼을 눌러야 움직이는 엘리베이터와 똑같은 형태입니다. 가장 큰 차이는 엘리베이터가 움직이는 동안 발판 위에서 플레이어 캐릭터를 조작할 수 있느냐 없느냐입니다. 엘리베이터가 움직이는 동안 플레이어를 조작할 수 있는 게임은 플레이어가 다음에 바로 이어질 플레이를 준비할 수 있게 합니다. 탄창을 갈고 문 옆에 서서 총알을 피할 준비를 하거나 창밖을 보고 다음에 나타날 레벨을 예상하는 행동을 선택할 수 있습니다.

반대로 엘리베이터가 움직이는 동안 플레이어를 조작할 수 없는 게임은 엘리베이터 안에서 유저가 체험할 경험을 통제합니다. 바이오소크 인피니트 사례에서 엘리베이터는 세계의 첫인상을 보여준 직후 아래로 내려가며 세계의 어두운 곳을 향해 내려가는 경험을 하게 만드는데 여기서 플레이어 캐릭터를 조작할 수 있다면 이 경험이 약해질 겁니다.

갓오브워에서도 동일하게 엘리베이터가 움직이는 동안 플레이어를 조작할 수 없는데 이는 엘리베이터 가 움직이는 동안의 경험을 통제하기 위한 것입니다. 모든 엘리베이터가 이동 중 경험을 통제할 필요는 없습니다. 하지만 모든 엘리베이터에 일관된 경험을 위해 별로 경험을 통제할 필요가 없는 엘리베이터의 이동 역시 통제한 것 같아 보입니다. 또한 NPC가 지나가면 닫히는 문 사례에서 이야기한 것처럼 이 게임에서는 플레이어 캐릭터의 이동과 함께 NPC들이 함께 이동하는 경우가 많은데 카메라 바깥에서 NPC들은 불연속적으로 상태가 변하기 때문에 이들의 상태를 정리하기 위해 플레이어를 조작할 수 없게 한 것이기도 합니다. NPC가 엘리베이터에 타지 못했더라도 시점이 고정되어 있는 동안 엘리베이터 안에 NPC를 스폰 시키거나 엘리베이터가 멈추는 순간 NPC를 스폰시켜 멀티플레이 게임에서 모든 구성요소가 연속적으로 움직여야 하는 제약을 회피할 수 있습니다.

결론. 문처럼 엘리베이터 역시 다양한 형태가 있고 현대로 올수록 엘리베이터를 타는 동안 의도한 경험을 주고 다음 플레이에 대비할 수 있도록 하는 형태로 변화해 왔습니다. 갓오브워 엘리베이터는 탑승 중 경험을 통제하기 위한 형태이며 나아가 카메라 바깥의 구성요소를 불연속적으로 처리해 더 쉽게 환경을 만들어내는데 기여합니다.