야생의 땅: 듀랑고의 시뮬레이션 MMO 샌드박스 설계

Preview:

Citation preview

양승명

왓 스튜디오 / 넥슨 코리아

<야생의 땅 듀랑고>의

시뮬레이션 MMO 샌드박스 설계

양승명

왓 스튜디오 구현유닛 리더

<야생의 땅: 듀랑고> 크리에이티브 디렉터

전 <마비노기 영웅전>

개발 매니저 / 서버 프로그래머

지난 줄거리

야생의 땅: 듀랑고의

계산 프로세스 중심 게임 디자인왓! 스튜디오

양승명

데이터 중심 게임

소셜 프로세스 중심 게임

랜덤 프로세스 중심 게임

계산 프로세스 중심 게임

모바일 게임의 다음 혁신은 계산 프로세스에 있다.

야생의 땅: 듀랑고

생존, 개척, 건설, 투쟁

진짜 모바일 MMORPG

vs

What’s next?What! is next!

왜 시뮬레이션인가?

The Sims

사람의 욕망을 시뮬레이션

사람 사이의 관계를 시뮬레이션

대항해시대

다양한 세력의 함대

각 세력의 영향력

플레이어와 각 세력의 우호도

문명 시리즈

다양한 문명의 도시 건설과 확장

문명 간의 전쟁과 교류 협력

Football Manager

수만명의 등장 인물들의 커리어

수백개의 리그, 수천개의 팀

현실로부터 시작하는 역사

나만의 스토리게임을 할 때마다 달라지는 환경

다른 사람과는 다른 새로운 경험

반복 플레이Replay Value

시뮬레이션 MMORPG?나만의 이야기가 만들어지는 게임

역사가 시뮬레이션되는 게임

같은 컨텐츠로 더 오래 즐길 수 있는 게임

시뮬레이션 MMORPG

어떻게 만들 수 있을까?

다른 플레이어로 AI 에이전트를 대체?쉽게 떠올릴 수 있는 접근 방식

그 느낌이 안 난다왜 그럴까?

AI 에이전트 시뮬레이션의 목적플레이어를 즐겁게 해 주는 것

시뮬레이션 AI 에이전트 다른 플레이어

목적 플레이어와 재미있게 놀아주는 것 자기가 재미있게 노는 것

예측가능성 예측 가능하게 만들 수 있음 예측 불가

공정성 대체로 상관없음 플레이어간 공정성에 민감

연기력 좋게 만들 수 있음 무리

시뮬레이션 월드 + 매시브 플레이어AI 에이전트와 플레이어 아바타를 혼재

• MMORPG의 월드에서

• 심시티만큼 많은 에이전트들이

• 심즈 만큼 구체적인 욕구를 가지고

• GTA만큼 리얼하고 풍성한 리액션을 하게 해주세요

프로그래머

계산 성능 부족

구현 복잡도

기술적으로 해결할 수 있지 않을까?마침 제가 분산 서버 좀 해봤습니다

<야생의 땅: 듀랑고>의시뮬레이션-샌드박스 월드

본격 샌드박스 MMORPG

생동감과 게임플레이의 풍성함을 더해주는 시뮬레이션

소셜 샌드박스

월드에 영역을 자유롭게 점유

서로 영토를 빼앗는 플레이

절차적으로 생성되는 월드

다양하게 제공되는 지형과 기후

자연스럽게 배치되는 식물과 광물

시뮬레이션 되는 생태계

개별적으로 번식하고 인터랙션 되는 식물들

각자 욕구를 갖고 물과 음식, 잘곳을 찾아 이동하는 동물들

영속성과 인과율

월드에 가한 행동이 영속적으로남을 뿐 아니라, 인과율에 따라 극적인 결과를 낳기도 한다

시뮬레이션 월드의 비전샌드박스 MMORPG + 시뮬레이션 생태계

인간과 생태계의 역사가 쓰여진다

어떻게 만들지?8km x 8km 대륙

식물 수십만, 동물 수만 마리, 동시 접속자 수백명

8km x 8km

핸드폰 화면을 이어 붙였을 때 축구장 정도 크기

프로그래머

서버 프로그래머 출신

크리에이티브 디렉터

분산 서비스와시뮬레이션 LOD동물 AI의 예시

기술적인 이야기가 조금 있습니다

from Dingle, 2014

갈증/배고픔

떼지어 이동

아이들/랜덤 모션

추격/도망

from Dingle, 2014

갈증/배고픔

떼지어 이동무리 단위의 AI

개체 단위의 AI

거시적인 AI

아이들/랜덤 모션

추격/도망

무리 AI

하나의 동물 무리

위험하지 않다. 일단 계속 물 마시러 가라.

전방에 플레이어가나타났지 말입니다.

우린 뇌가 없지. 으허허 아하하

상황 보고

판단 & 행동 지시

레벨 별 시뮬레이션각 레벨을 별도로 디자인 및 구현

각 레벨에 서로 다른 실행 정책 적용

개체 AI구체적인 행동

특히 전투 패턴 시뮬레이션

무리 AI욕구 시뮬레이션 및

그에 따른 행동 패턴 결정

거시 AI장소 탐색 및 거시적인 행동권 결정

행동 범위 지정사냥터, 쉘터 등 장소 지정

사냥하기, 잠자기 등행동 지시

행동의 결과 보고상황 보고

욕구 충족치 보고각 레벨을 별도로 시뮬레이션

상위 레벨 AI가 하위 레벨에 지시

하위 레벨 AI가 상위 레벨에 결과 보고

개체 AI구체적인 행동

특히 전투 패턴 시뮬레이션

무리 AI욕구 시뮬레이션 및

그에 따른 행동 패턴 결정

거시 AI장소 탐색 및 거시적인 행동권 결정

행동 범위 지정사냥터, 쉘터 등 장소 지정

사냥하기, 잠자기 등행동 지시

행동의 결과 보고상황 보고

욕구 충족치 보고

행동 트리, FSM, …

실시간성이 중요

플레이어가 안 볼 때는 필요 없음

개체 AI구체적인 행동

특히 전투 패턴 시뮬레이션

무리 AI욕구 시뮬레이션 및

그에 따른 행동 패턴 결정

거시 AI장소 탐색 및 거시적인 행동권 결정

행동 범위 지정사냥터, 쉘터 등 장소 지정

사냥하기, 잠자기 등행동 지시

행동의 결과 보고상황 보고

욕구 충족치 보고

욕구 기반 에이전트 시뮬레이션

몇 분 주기로 평가 필요

개체의 보고에 따라 트리거

개체 AI구체적인 행동

특히 전투 패턴 시뮬레이션

무리 AI욕구 시뮬레이션 및

그에 따른 행동 패턴 결정

거시 AI장소 탐색 및 거시적인 행동권 결정

행동 범위 지정사냥터, 쉘터 등 장소 지정

사냥하기, 잠자기 등행동 지시

행동의 결과 보고상황 보고

욕구 충족치 보고

오브젝트 분포 통계처리

1회 시뮬레이션 비쌈

자주 변하지 않는 의사결정

하루 1~2회 정도만 평가

개체 AI구체적인 행동

특히 전투 패턴 시뮬레이션

무리 AI욕구 시뮬레이션 및

그에 따른 행동 패턴 결정

거시 AI장소 탐색 및 거시적인 행동권 결정

행동 범위 지정사냥터, 쉘터 등 장소 지정

욕구 충족치 보고

플레이어가 안 볼 때

물 마셨다 치자

밥 먹었다 치자

잠 잤다 치자

개체 AI구체적인 행동

특히 전투 패턴 시뮬레이션

무리 AI욕구 시뮬레이션 및

그에 따른 행동 패턴 결정

거시 AI장소 탐색 및 거시적인 행동권 결정

행동 범위 지정사냥터, 쉘터 등 장소 지정

욕구 충족치 보고

무리 AI간의 상호작용

티라노 : 트리케라톱스 잡아먹었다 치자

트리케라톱스 : 티라노한테 잡혀먹혔다 치자

개체 AI구체적인 행동

특히 전투 패턴 시뮬레이션

무리 AI욕구 시뮬레이션 및

그에 따른 행동 패턴 결정

거시 AI장소 탐색 및 거시적인 행동권 결정

섬이 비활성화되면

섬에서 티라노 한무리와 트리케라톱스 세무리가 각기 A, B, C, D 지점을 거점으로 활동중일거야

누가 섬을 활성화시키기 전까진 상황이 더 안 변함

시뮬레이션 Level of Detail

• 플레이어가 볼 때는 풍부한 리액션의 디테일 시뮬레이션

• 플레이어가 안 볼 때는 무리 단위로 추상적인 행동만 시뮬레이션

• 필요에 따라 시뮬레이션 빈도를 제어

플레이어가 많은 곳에더 많은 계산 성능을 투자하자

한정된 서버 계산 성능으로 풍성한 시뮬레이션을 하는 비결

레벨 동물 식물/광물

1. 개체 개체의 종류(암/수/새끼…)전투 액션HP와 각종 게이지

채집 가능한 자원의 양

2. 무리 무리의 욕구행동 결정 (물마시기, 휴식, 전투…)

자원의 리젠적합도 판정에 따른 품질/개체수 변화

3. 거시 장소 기억 (집, 사냥터, 물마시는 곳)욕구 충족에 따른 개체 수 변화

식물 번식

거시 시뮬레이션 = 절차적 레벨 디자인자원, 동물 스폰 포인트 배치

거시 시뮬레이션에레벨 디자인 의도를 반영

보물을 지키는 강한 동물

초보 유저에게 잡혀주는 약한 동물

경험치/자원 공급 밸런스

만들 수 있습니다심시티만큼 넓고 많은 엔티티

심즈만큼 디테일한 욕구 시뮬레이션

콘솔 게임처럼 풍성한 리액션과 전투

그래서 그거 재미있나요?

굳이 시뮬레이션을 그렇게까지 할 필요 있나요?

복잡하고 스트레스만 받는 게임 아닐까?

Realistic

<듀랑고>의 육식 동물은 이유가 없다면 사람을 공격하지 않습니다

모바일에서도 몰입감 있는 월드

모바일 기기는 실재감에서 불리

시뮬레이션으로 부족한 실재감과몰입감을 채울 수 있다

인간 vs 인간 vs 자연

인간 사이의 갈등에 자연이 개입

다른 매체에서 검증된 테마

생태계의 역사

반복플레이성

싱글 플레이 시뮬레이션 게임들의 미덕

<같은 컨텐츠로> 더 오래 즐길 수 있는MMORPG

게임이 어렵긴 합니다모바일 게임 기준으로는 더욱

어려운 샌드박스 MMORPG 더 쉽게 만들기

게임을 어렵게 만드는 요인들

• 원인 파악이 어려움

• 이동 시간이 길어진다

• 지리적 경직성 문제

• 월드가 늙어감

원인 파악이 어렵다

농사를 잘못 지었나?

이동 시간의 문제

• 게임을 켜고 사냥터를 찾아 가는 데 오래 걸림

• 로비-던전 모델은 샌드박스 스럽지 않다

• 특히 모바일 게임에서 걸림돌

지리적 경직성

• 정착한 곳이 사실은 살기 힘든 곳이라면?

• 투자한 부동산을 포기하는 건 큰 손실

• 이웃을 잘 만나야 한다 = 운이 좋아야 함

• 초반의 선택에 따라 게임 경험 전반이 어려워질 수 있다

늙어가는 월드

선행 유저가 좋은 지역을 선점

신규 유저의 진입 장벽 문제

부동산이 문제다

• 내 땅에서 하는 플레이에 남이 간섭

• 내 집에서 사냥터까지가 멀다

• 내 집이 알고보니 망한 자리

• 게임 시작했는데 좋은 집터가 없어

부동산을 인스턴스로?

• 가장 흔한 접근 방식

• 하우징을 위한 영역을 별도 인스턴스로 분리

• 유동적으로 공급, 워프로 이동

• 샌드박스스럽지는 않다

잦은 신섭 오픈?

• 유저 분산, 친구 만나기 어려움

세션제 MMORPG?

• 잦은 리셋으로 소유욕에 문제가 생기지 않을까?

부동산에 적절한 유동성 부여가 필요공급

지리적 이점

동선

<야생의 땅: 듀랑고>의섬 모델

지리적으로 격리된 공간

다양한 크기와 특성으로 생성 가능

1인당 1섬 모델?

• CoC/팜게임 모델

• 나만의 공간을 가꾸고 성장시키는 검증된 모델

• MMORPG라고 하긴 어려운 구조

• 시뮬레이션 부담이 큼

Co-op 샌드박스

아는 사람들과 한 지역에서 플레이

협동, 코옵, 탐험, 건설

서바이벌 샌드박스

모르는 사람들과 한 지역에서 플레이

PvP 활성화

투쟁, 생존, 힘의 균형

섬마다 다른 정책을 적용하면 어떨까?안전하고 쾌적해서 살기 좋은 섬

살아남기 어렵지만 강한 동물과 좋은 자원이 있는 섬

코옵 샌드박스 섬

생존하기 어렵지 않은 섬

제한적인 PvP

정착하고 마을을 건설해서 살기 좋음

커뮤니티 구성 유도

서바이벌 샌드박스 섬

생존하기 어려운 환경

자유로운 PvP

강한 동물들 분포

한정된 양의 귀한 자원 매장

세력 간의 경쟁 유도

시간 제한이 있는 섬

일정 시간이 지나면 사라지는 섬

주기적으로 생성되고 사라짐

항해와 항로

섬과 섬 사이를 이동하는 방법

지어진 항구에서 항로를 따라 다른 섬으로 이동한다

실제로는 거의 순간 이동

탐험

새로운 섬을 발견하는 방법

항로 없이 배를 타고 떠난다

발견한 섬과의 사이에 새로운 항로를 개설

새로운 섬을 발견하면

섬에 자원을 먼저 가져가는 사람이 임자

섬을 개척/점령하면 원활한 플레이 가능

서로 다른 세력 간의 섬 쟁탈전 기대

탐험가와 사냥꾼의 공생

탐험가는 플레이하기 유용한 섬으로 항로를 개설

사냥꾼이나 채집가는 항구 근처에살면서 빠르게 핵심 플레이 접근

창발적으로 만들어지는 로비-던전 구조

물리적 위치 대신 논리적 연결

선천적 이점 대신 후천적 노력

항로의 건설과 유지에 따라 섬의지리적 특성이 달라짐

조용히 혼자 지내고 싶으면 적은항로만 유지해도 됨

부동산(섬)에 적절한 유연성 부여

이사하기

한 섬에 사는 이웃이 맘에 안 들면

사유지의 건물들을 통째로 이사

가장 과격한 유연성 부여 방법

적절한 제약이 필요

대륙

거대하고 제약 없는 대륙

하드코어한 세력 다툼 플레이 지원

현재 8km x 8km 까지 테스트

<듀랑고>의 섬 모델

대륙

마을 섬 생존형 섬

<듀랑고>의 섬 모델

섬 종류 수명 생존 자원의 양 자원의 질

마을 섬 무한 쉬움 적음 별로

생존형 섬 유한 어려움 많음 좋음

대륙 무한 어려움 많음 좋음

<듀랑고>의 섬 모델

• 부동산에 다양한 층위의 유연성 부여

• 섬 마다 다른 정책을 적용해서 하드코어성 완화

• 주기적으로 생성되는 섬으로 반복플레이성 보강

• 적극적인 항로 관리로 로비-던전 모델 유도

• 부동산 문제로 게임이 막힐 때 이사 지원

요약

시뮬레이션 샌드박스 MMO월드

• 본격 모바일 샌드박스 MMORPG에

• 시뮬레이션을 강화해서 장르 개척급 혁신

• 기술적 문제를 다층적/탄력적 시뮬레이션 디자인으로 해결

부동산 문제 해결

• 부동산은 샌드박스 MMORPG의 허들을 가장 높이는 요인

• 월드를 여러 섬의 모임으로 만들고 섬 간 링크<항로> 지원

• 부동산의 유동성을 강화하고 편의 기능으로 허들을 낮춤

게임 디자인-엔지니어링 밀착 구조

• 단일 조직에서 디자인과 기술구현의 시너지

• 기술적으로 한계까지 뽑아낼 수 있는 게임 디자인 가능

We’re Hiring!

Recommended