기본 콘텐츠로 건너뛰기

좋은 AI의 조건 (1)

    목차

▲이 글의 대부분은 Game Maker's Toolkit의 What Makes Good AI? 영상에서 인용하였습니다.


최근 대부분의 게임에서 뛰어난 적의 AI가 채용된 것들이 많습니다.
좋은 AI는 플레이어에게 게임의 경험을 더 즐겁게 만들어주고, 뛰어난 기술력을 느끼게 할 수도 있습니다.
최근에는 '에일리언 : 아이솔레이션'에서는 복수의 AI를 부여하여 학습하는 에일리언을 구현하기도 하였고, '헬로 네이버'에선 이웃집 아저씨가 플레이어의 행동을 예측하고 정말 똑똑한 AI처럼 만들어 게임의 공포감을 훨씬 더 살렸습니다.

게임의 AI는 날이 갈수록 발전하는 만큼 좋은 AI의 조건, 좋은 AI처럼 보이게 하는 조건에는 어떤 것들이 있을까 살펴봅시다.

적의 체력과 AI의 관계

과거 좋은 AI를 가졌다고 알려진 'F.E.A.R'의 클론 병사들, '헤일로' 시리즈의 코버넌트, '하프라이프'의 해병대들이 있습니다.
이들의 공통점은 좋은 AI를 가진것 외에도 하나의 공통점이 있는데, 체력이 많다는 것입니다.

'헤일로'의 '코버넌트'들은 엄폐, 근접 공격, 감각기관들을 가져서 좋은 AI라고 느끼기도 하지만 그들은 많은 체력을 가졌습니다.
실제로, '헤일로'를 개발한 '번지'에서 '헤일로'를 개발할 때 적의 체력이 많은 버전과 체력이 적은 버전을 따로 테스트를 했더니, 적의 AI가 영리하다고 느낀 비율이 각각 43%와 8%였습니다.
(체력이 많은 적들은 플레이어들이 적을 처치하기 위해 그만큼 더 많이 생각하고 더 다양한 전략을 활용하고, 적 AI가 다양한 행동을 보이게 되기 때문인 것 같습니다.)


AI의 형태를 다르게 설계

그리고 적의 AI는 어떤 컨셉의 게임인지에 따라 다르게 생성되어야 합니다.
2016년 '이드 소프트'가 '둠'을 개발 할 당시, 적의 AI를 공격적으로 만들자 플레이어들이 점점 더 수비적으로 행동하게 되었다고 말했습니다.
이는 보이는대로 다 부수고 매우 공격적으로 플레이해야하는 '둠'의 컨셉과는 맞지 않았습니다.
그래서 개발팀은 '둠'의 적들을 조금 더 수비적으로 바꾸고, 적의 위치를 고수하게 만들었습니다. 그러자 플레이어들은 '둠'의 컨셉과 맞게 공격적으로 플레이하게 되었습니다.

'배트맨 아캄'시리즈 역시 플레이어들이 적을 때리고 콤보를 넣는 쾌감을 느끼는 것이 이 게임 전투의 핵심입니다. '배트맨'역시 수비적인 AI가 어울립니다. 만약 '배트맨'의 적들이 총을 난사하고 배트맨을 두들겨 패기위해 혈안이 되어있다면 이 게임의 전투는 좋은 평가를 받지 못했을 것입니다.

반대로 '에일리언 : 아이솔레이션' 이라는 게임의 컨셉은 에일리언이 플레이어를 쫓아다니고 플레이어는 AI를 피해다니면서 공포를 느껴야 합니다. 이런 게임에서는 조금 더 공격적인 AI가 어울립니다.
'에일리언 : 아이솔레이션'의 에일리언
이 게임들 모두 좋은 평가를 받고 있는 게임인 만큼, '플레이어를 죽일 수 있는 적'보다는 '좋은 AI를 가진 적'들이 좋은 게임을 만드는데 필요하다는 것을 알 수 있습니다.


플레이어에게 편법을 쓸 수 있게 하는 좋은 AI

좋은 AI는 플레이어에게 편법을 사용하는 것을 가능하게 합니다.
예를 들어, '스카이림'에서 상점 주인에게 바스켓같은 물건을 머리에 씌어서 물건을 훔칠 수 있습니다. 이것은 현실의 사람과 비슷하게 만든 똑똑한 AI라고 볼 순 없습니다.

하지만 머리에 물건을 씌우면 밖을 보지 못한다는 것은 NPC에게 눈, 코, 귀같은 감각 기관이 존재한다는 것을 의미하고, 플레이어들은 NPC들의 감각을 직접 피해가면서 플레이한다는 것에 성취감을 느끼고, 꼼수를 써가면서 플레이 한다는 것에 재미를 느끼기도 합니다.

저는 최근에 '젤다의 전설 : 브레스 오브 더 와일드'를 재밌게 플레이 했습니다.
그 게임에서 저는 처음으로 너무 강해서 이길 수 없다고 판단한 적을 만났는데, 그 적을 죽이기위해 적의 서식지 천장에 있는 횃불을 활로 쏴 폭탄에 닿이게 해서 처치했습니다.
이 경험은 아마 모두 설계된 것이었겠지만, 저는 이런 꼼수를 사용해 적을 처치했다는 것에 큰 성취감을 느낀 기억이 있습니다.

또 다른 예로는 '파크라이' 시리즈에서는 적의 거점을 공격할 때 일부분의 적들만 플레이어에게 공격을 한다던가, '배트맨' 시리즈에서는 암살 미션에서 적이 절대 뒤를 돌아보지 않습니다.
또, '언차티드' 시리즈에서는 플레이어가 엄폐물에 숨어있다가 나왔을 때는 적이 플레이어를 절대 맞추지 못하게 만들기도 했습니다.
이런 것들은 플레이어가 알지 못하게 플레이어와 적들이 공평하게 싸울 수 있도록 만들어 준 것입니다. 만약 이런것들이 없었다면 플레이어들은 게임이 불공평하다고 생각하고 너무 어렵다고 느낄 것입니다.

자신의 감정을 표현

많은 게임들에서 자신의 감정을 밖으로 표현하는 NPC들이 있습니다.
이런 게임들을 플레이 하다보면 저는 NPC들에게도 감정이 있다는 기분을 받기도 합니다.
예를 들어, '스플린터 셀' 시리즈에서 플레이어가 적에게 가까이 다가가면 적들이 "여기에 누군가 있는것 같은데"하는 말을 내뱉기도 합니다.

꼭 대사로 그것을 표현하지 않아도 됩니다.
'마크 오브 닌자'에서는 적들이 ?같은 표식을 나타내기도 하고, '파크라이'나 '어쌔신 크리드'에서는 UI상에서 나타나기도 합니다.
NPC가 자신의 생각을 표현하는 것은 보통 암살이 있는 게임에서 많이 사용되곤 합니다. 이런 표현 방식은 플레이어에게 긴장감을 더 높여주고, NPC들에게 지능이 있다는것을 표현합니다. 그럼 플레이어들이 그저 '걸어다니는 덩어리'를 암살했다고 생각하지는 않을 것입니다.

또한 감정이 있는 AI를 만들기 위해서는 AI마다 각각의 개성을 만들어 주는 방법도 있습니다.
'팩맨'의 4가지 유령들은 각자의 개성과 이름이 있습니다.

빨간 유령은 '블링키'로 불리며 플레이어의 뒤를 계속 쫓아갑니다.
분홍색 유령은 '핑키'로 불리며 팩맨의 앞을 노립니다.
하늘색 유령은 '잉키'로 불리고 플레이어와 대칭으로 움직이며
주황색 유령은 '클라이드'로 불리고 랜덤으로 움직입니다.

이런 유령들의 개성은 '팩맨'의 유령들을 더 똑똑한 AI처럼 보이게 합니다.
그 외에, '문명' 시리즈의 지도자들 각각의 특성이나 성격, '미들어스 : 섀도우 오브 워'의 적 지도자들도 비슷한 역할을 합니다.

개발자들은 자신의 감정을 표현하는 AI가 플레이어들에게 더 똑똑해 보인다는 것을 알게 되었습니다.
그 이유는 실제로 각각의 AI가 판단능력과 인지능력, 감각기관 등을 가지고 있다고 해도 실제로 플레이어가 목격하지 않는다면 알 수 없기 때문입니다.

위에서 본 예시들에서도 "여기 누군가 있는것 같다"고 말하는 NPC가 실제로 그것을 인지하게 프로그래밍 되어있어도 플레이어가 그것을 알지 못한다면 그저 멍청한 AI로 보일 수 있습니다.
이런 AI의 감정 표현은 플레이어에게 중요한 정보나 계획, AI의 행동 패턴 파악으로도 활용될 수도 있습니다.


다음은 예측이 가능한 AI로 시작하겠습니다.

댓글

이 글도 관심 있으실 것 같아요!

놀이의 4대 요소 (Agon(아곤), Mimicry(미미크리), Ilinx(일링크스), Alea(알레아))

네덜란드의 고전 학자인 '요한 하위징아'의 저서인 「호모 루덴스 」에서 인간을 '유희의 인간'이라고 칭했습니다. 프랑스의 '로제 카유아'라는 학자는 「호모 루덴스 」의 이론을 발전시켜 그의 저서인 「놀이와 인간」 (원제 「 Man, plays and games 」) 에서 ‘놀이의 4대 요소’를 말했습니다. 저자는 그것을 아곤, 미미크리, 알레아, 일링크스로 소개했습니다. 이 네 가지 놀이의 요소는 인간의 모든 유희, 놀이에서 발전되어 현대의 비디오 게임에서도 매우 중요한 이론으로 알려져있습니다. 먼저, 아곤(Agon), 경쟁 아곤은 놀이의 주체와 객체간의 경쟁을 의미합니다. 사람들은 경쟁에서 승리함으로써 성취감을 얻고, 우월감을 느끼게 합니다. 이 아곤을 현대의 게임에 대입 시켜보면 경쟁은 최근 가장 많이 플레이 하는 게임 중 하나인 ‘배틀 그라운드’나 ‘리그 오브 레전드’같은 게임들도 경쟁에 기반이 되어있고, 혼자 플레이 하는 게임에서도 자기 자신과의 경쟁, AI와의 경쟁 등이 포함되어있습니다. 예를 들어, 슈퍼 마리오 같은 게임에서도 플레이어들은 어떻게 이 게임을 더 빨리 클리어하기 위해 경쟁하고, 더 많은 점수를 받기 위해 노력합니다. 또한 비교적 MMR시스템이 잘 짜여져있는 '리그 오브 레전드'같은 AOS게임에서도 플레이어의 등급을 결정하는 랭크 게임 시스템이 중점적으로 돌아가고 있고, '오버워치'의 경쟁전 등 많은 게임에서 이런 경쟁을 유도하는 시스템을 만들어 놓았습니다. 게임을 계속 플레이하게 만드는 가장 큰 요소가 아곤입니다. 많은 게임에서 플레이어의 경쟁을 어떻게 잘 이끌어 나갔느냐에 따라서 그 게임의 성공이 나뉠 수도 있습니다. 미미크리(Mimicry), 역할 미미크리는 역할을 의미합니다. 사람들은 실제 세계에서 하지 못하는 일들을 놀이에서 느끼면서 큰 기쁨을 느낄 수 있습니다. 이 역할은 롤플레...

게임의 수학, 스탯과 대미지 계산 시스템을 효과적으로 재미있게 만드는 방법

대부분의 게임들은 스탯이라는 시스템을 가지고 있습니다. 이 스탯이라는 시스템은 대부분의 게임에서 캐릭터가 레벨업을 하거나, 스탯을 추가 시켜주는 아이템을 장착하거나, 스킬을 사용해서 올릴 수 있게 되어 있습니다. 하지만 많은 플레이어들은 이런 스탯을 그저 숫자 쪼가리 이상에 의미를 두려고 하지 않습니다. 그저 자신의 직업에 필요한 스탯의 숫자가 크면 좋다고 느끼는 것입니다. 예를 들어, 메이플 스토리의 스탯은 아예 자동 배분이라는 시스템을 도입하여, 대부분의 플레이어들이 같은 스탯으로 배분되게 되어, 스탯을 찍는다는 행위 자체가 없어졌습니다. 또한, 코어 플레이어가 아닌 일반적인 유저들은 자신의 스탯이 얼마인지, 어떤 방식으로 대미지 계산이 들어가는 지 모르고, 알려고 하지도 않습니다. 이는 메이플 스토리의 스탯과 대미지 계산 시스템이 지나치게 복잡해졌기 때문입니다. 이것은 메이플 스토리의 스트라이커라는 직업이 레벨 10에 배울 수 있는 매우 초반에 활용되는 스킬입니다. 하지만 그럼에도 '90초 동안', '1%확률', '30초 동안', '방어력을 1% 무시', '뇌전 버프', '최대 1회 누적 가능' 이라는 많은 효과와 조건들이 붙어 있습니다. 메이플 스토리의 대미지 계산식을 분석한 한 유저가 적은 대미지 계산식은 아래와 같습니다. 대 미지 = [ (주스탯 * 4 + 부스탯) * 총 공격력 * 무기상수 * 직업보정상수 / 100 ] * (스킬 퍼뎀 / 100) * (크리티컬 발동시) 크리티컬  대 미지 보정 * [ (100 + 공격력%) / 100 ] * [ (100 +  대 미지% + 보공%) / 100 ] * 방어율 무시 보정 * 렙차 보정 * 속성 보정 * (아케인포스 필요 적의 경우) 아케인포스 보정 * 숙련도 보정 * [ (모든 최종 대 미지 계산값% + 100) / 100 ]      (1.1) ...

Super Mario Bros. 1-1스테이지 레벨 디자인 (1)

닌텐도의 Super Mario Bros.는 한때 가장 많이 팔린 비디오 게임 중 하나이고, 역사상 가장 위대한 게임 중 하나일 것입니다. 닌텐도는 타 게임의 '글로 설명하는 튜토리얼'보다 자연스럽게 알아가는 튜토리얼을 잘 만든다고 생각합니다. 이것은 그 당시 롬파일 용량 때문일 수도 있었겠지만, 그것이 현재의 닌텐도 게임까지 이어지고 있죠. 이러한 튜토리얼 방식은 플레이어들에게 더욱 큰 성취감을 주고, 플레이어들에게 불합리하다는 생각을 버리게 합니다. 이 게임의 1-1스테이지는 자연스러운 튜토리얼을 잘 유도했다고 생각합니다. 플레이어가 게임을 시작하면 이 화면을 보게 될 것입니다. 이 화면을 보시면 마리오가 화면의 왼쪽에 있고, 오른쪽을 바라보는 것을 알게 될겁니다. 또한 Super Mario Bros.는 오른쪽으로 이동하면 다시 왼쪽으로 돌아갈 수 없습니다. 이것은 마리오의 진행 방향이 오른쪽이라는 것을 알려주는 것이죠. 그리고 혼자 떨어져있는 ?가 그려진 박스를 볼 겁니다. 이 박스는 플레이어들이 호기심을 가질 수 있는 형태로 만들어졌습니다. 그리고 플레이어들이 다가가면, 굼바를 발견하게 되죠. 굼바는 마리오의 적입니다. 근데 닌텐도는 이것을 플레이어들이 어떻게 인지하게 만들었을까요? 먼저 굼바의 모습입니다. 굼바의 눈썹은 누가봐도 화나있는 모습이죠. 그리고 굼바는 오른쪽에서 왼쪽으로 움직이고, 마리오와는 반대 방향입니다. 굼바를 피하기 위해 플레이어는 점프라는것을 배우게 됩니다. 굼바를 해치운 마리오는 ?가 그려지고 공중에 떠있는 박스에 점프를 할 것입니다. 왜냐구요? 플레이어에게 주어진건 좌,우 움직임과 점프 뿐이거든요. 그럼 플레이어는 그에 맞는 보상을 받게 되고, ?모양의 박스는 좋은 것이라는 것을 알게 되죠. 그리고 ...