어그로에 대한 대화

~20110811 2009. 4. 15. 01:42 |

친구랑 어그로에 대한 이야기를 나눴는데요. 그 채팅 내용을 정리해 본 글입니다.
저 스스로는 꽤 많은 생각을 하게 했습니다만, 다른 분들은 어떠실지. ㅎㅎ
채팅 내용을 정리하고 보니, 정리하기 전 대화를 그냥 저장하지 못한 게 아쉽네요.

■근데 게임에 있어서 젤 중요한 갈림길은 [어그로]를 누가 인식하는지의 차이.

 

예를 들어

1.     와우에서는 내가 []하고 싸우고 있을 때 옆에 []이 지나가면서도 나를 안쳐

-       ? : ''는 그 [] '대한' [어그로]를 유발하지 않았으니까

 

2.     반면에 리니지에서는 내가 []하고 싸우고 있을 때 옆에 []이 지나가면 나를 쳐

-       ? : 리니지 '세계'''의 행동을 인식했기 때문이지

 

요 차이는 (필드라기보다 좀더 광의의 게임 내 필드에 있어서)

1.     인스턴트 식의 폐쇄되고 제한된 공간을 만들 것인가

2.     좀더 오픈 된 공간을 만들 것인가

 

■선공/비 선공 혹은 유저 행동에 따른 []의 패턴. 이걸 결정하기 전에 어떤 식으로든 []이 유저의 행위를 '인식' 해야 하자나. 그게 [어그로]. 선공 []이라는 것도 사실은 일종의 [어그로]를 가지는 거지. 일정 필드에 이동하는 유저에 대한 []의 반응

 

■그보다 우선적으로

1.     []이 어떻게 유저의 행동을 인식할 것 인가.

2.     그리고 각 행동에 대해 어떤 반응을 보일 것인가.

3.     그 컨셉이 잡힌 다음에 위에 말했던 매커니즘을 구축해야지

 

■액션 MORPG같은 경우에 [어그로]를 생각하면 두 가지가 있을 수 있어

 

1.     하나는 연산 자체를 개별 필드 별로 하는 거지

-       유저가 특정 지역에 들어간 순간 유저의 모든 행동에 변수를 만드는 거야

n  일정 지점 을 지나면 어떻게 된다

n  혹은 어떤 []을 치면 그 필드 내에 특정조건을 가진 사건이 일어난다

 

■이런 함수를 만드는 게 우선이고, 그 다음이 어떤 행동은 어떤 행동에 우선한다든지 혹은 어떤 행동은 어떤 행동에 비해 누적되는 벡터가 많다든지 이런걸 구축해야지. 위의 함수가 고정되어야 구축될 수 있어

 

■예를 들어, 선공/비 선공, 동족인식 같은 것 있잖아

-       선공 같은 경우는 필드에 함수가 존재하는 거지

-       [] 기준으로 일정 범위, 거기를 만족시키면 []은 유저를 인식한다.

 

■동족 인식 같은 경우는, 아까 말한 대로 한 놈을 쳤을 때 이놈을 칠 경우 발생하는 사건. 이걸 컨트롤 한 거지

-       내가 저놈을 치면 저놈은 근청 50메타 반경에 []들에게 유저를 인식시키는 함수를 가지고 있다

-       50m 반경의 [] 중 몇몇 []에 한해서 유저를 인식시키는 함수를 가지고 있다..

-       그 몇몇 [] 중 유저가 특정한 조건을 만족할 경우 유저를 도와준다는 등의 특수한 행동 패턴을 가진다.

 

■요렇게 구성되어 있으면 어떤걸 짤 수 있냐 하면

-       두 종류의 [] 중 무엇을 먼저 쳐야 우월선택인가라는 전략을 만들 수 있어.

 

■그걸 좀더 세분화 해서 각 행동에 벡터를 도입하는 거지.

-       즉 어떤 []은 유저가 물리공격을 할 때 1.5배의 누적수치를 가지고

-       어떤 []은 유저가 마법공격을 할 때 0.5배의 누적수치를 가진다

-       단 이 두 []의 누적수치의 차가 3배 이상 벌어질 경우 [] 들은 2배 강해진다..

 

■이런 setting을 해두면 유저 입장에선 직접공격과 마법공격의 밸런스를 맞추어가며 전략적으로 싸워야지. 여기에 그 물리공격 인식하는 []은 물리공격에 조금 약하고 등의 요소를 첨가하면 파티의 구성과 전략이 나온다.

 

■위의 예는 와우의 실제 레이드 []의 패턴이야

-       쌍둥인데 한 놈은 마법에 약하고 한 넘은 칼질에 약해

-       근데 둘 사이에 [어그로] 인식 차이가 많이 나버리면

-       보던 애를 무시하고 딴 놈을 봐버리거든

-       참 이 넘은 무슨 디법을 걸어서 한 명이 탱을 해야만 해

그래서 전략이 생기는 거지. 여기까지가 현존하는 게임들이 [어그로]를 활용하는 방향.

 

■우선 [어그로] 라는 단어에 너무 집중하지 말고, []이 유저의 행동을 어떻게 인식하게 하는가부터 생각해.

 

■다만 너희 게임에 있어서 []들이 너무 1차적 반응만 한다는 생각은 들어. 치거나 혹은 근처에 가는 행동 만 인식하고 또 거기에 걸맞게 한가지 패턴으로 반응하고..

 

■젤 단순하게 젤 단순하게 쓰이는 게

-       피가 일정 이하 떨어져 있을 때 도망가면서 다른 []들을 쭉 애드시킨다던가 혹은 자폭을 한다던데

 

■기본적으로 [어그로]는 선택 가능한 행동 중 그 경중을 가리는 수치야

1.     나와 네가 양쪽에서 []을 때려. 그럼 []이 누구를 공격해야 해? 그걸 결정케 하는 변수지

2.     나랑 네가 한 사람한테 힐을 줘. 그런 그 사람은 누구에게 더 고마워해야 해?

 

■유저의 행동은 다양해지고 스킬이나 변수가 많아지니까. 그걸 정량화해서 매커니즘을 만들 필요가 있다는 거지. 이건 아이디어 문제기도 하지만 사실은 기술적 문제, 수학적 함수관계에 충실한 문제기도 해. 부등식이지.

 

[어그로]는 뭐가 뭐보다 크나 작나. 이걸 결정하는 거. 그러니까 그런 수치는 나중에 맞춰도 됨

제일 먼저 인식시스템부터 확정하는 게 좋지

 

■너희 [] 인공지능이 독립적으로 반응하지? 이건 개인적인 취향일수도 있는데 그 범위를 확장시키는 게 좋지 않을까 해. 왜냐하면 너희 게임도 기본적으로 핵엔 슬래쉬라 유저가 많은 수의 []을 잡게 되잖아. 그러면 [] 하나의 행동 패턴을 다양해 시켜봐야 한계가 있다는 거지. 그 개념을 확장해서 필드단위 혹은 역으로 유저의 모든 행동에 대한 인터액티브를 적용되게 하는 쪽이 확장가능성이 높아.

 

■스킬만 해도 []에 독립적으로 적용되는 시스템이라면 광역스킬 혹은 특수한 발동효과를 가지는 스킬을 만들기 힘들어. 그런데 필드단위 혹은 유저에 대한 반응이라면 여러 가지로 만들 수 있지

-       토템 박아두면 []이 그 토템만을 친다던가

-       어느 지점에 들어서면 []이 갑자기 우르르 덤빈다던가

-       혹은 진짜 말도 안 될 만큼 많이 나오는데 어느 지점에 가면 []들이 인식을 못하게 된다던가


: