디아블로3 [공속적용] 패치는 과연 이루어질 것인가? (필독)
디아블로3 [공속적용] 패치는 과연 이루어질 것인가? (필독)
아시아라, 인나, 한량 등 공속적용이 안되는 방어구들이 있다.
경매장을 이용하면 왜 공속이 적용되지 않느냐 추론이 가능하다.
(이 추론에 대해서는 영문 클라이언트로 이미 완료되었다
위의 내용을 요약하자면
무기에 적용되는 공속증가 옵션 ≠ 방어구에 적용되는 공속증가 옵션
Increase Attack Speed(무기공속) ≠ Attack Speed Increse(방어구 공속)
이에대한 근거로 경매장 시스템을 살펴보자
실험A.
1.검색유형 '모든 방어구', 검색조건 '민첩' 으로 검색 설정 (이하 검색유형, 검색조건 생략)
2.모든 방어구 -> 한손 무기류 로 변경
3.검색조건의 '민첩' 그대로 유지
실험B
1.모든 방어구, 이동속도 검색 설정
2.모든방어구 -> 한손무기류로 변경
3.검색조건 '이동속도' 사라짐
실험C
1.모든 방어구, 공격속도 검색 설정
2.모든 방어구 -> 한손 무기류로 변경
3.검색조건 '공격속도' 사리짐
실험 A
->검색유형이 다르더라도 (방어구, 무기류,보조 장비 등) 검색조건을 공유하고 있다면 검색조건 유지
실험 B
->한손무기류에는 '이동속도'라는 옵션을 가질 수 없음
->방어구에서 검색조건으로 설정된 '이동속도'는 한손무기류를 선택하자마자 사라짐.
->가질 수 없는 옵션은 검색조건 해제
실험 C
->B와 마찬가지로 검색조건이 사라짐
->가질 수 없는 옵션이라 검색조건에서 해제한 것.
->비록 이름은 같은 '공격 속도'이지만 서로 다른 옵션이고 서로 가질 수 없는 옵션
↑방어구로 변경하는 순간 검색 조건이 사라져버린다.
[이 문제 과연 해결할 수 있을까??]
블리자드가 이 버그를 수정해야한다면, 방어구에 있는 공격속도 옵션(무기 전용 공격 속도)을 방어구에 맞는 공격속도 옵션으로 변경해야한다.
가장 간단한 해결방법은?
앞으로 나오게 될 무기에는 정상적으로 방어구 전용 공격속도 옵션을 달고나오도록 설정하면된다.
(시스템 상으로 감정되지 않은 아이템이 어떠한 옵션을 달고 나올지에 대한 시스템은 이미 구축이 되어있다.)
하지만 문제는 이미 나온 아이템들의 능력치를 수정하는 것이다.
그렇다면 이부분에 대해서는 이러한 의문을 던질 수 밖에 없다.
※왜 그 뛰어난 블리자드가 이런 공속패치 하나 빠르게 해결하지 못하는가?
블리자드 버그 리포트에 따르면 5월 25일 '공격 속도 적용 옵션이 적용되지 않는다' 라는 내용을 공식적으로 확인하고 인정했다.
-------- 5월 25일 (금) 업데이트 --------
아이템
* 아시아라의 발자취, 한량의 장화 등 여러 아이템에 붙은 공격 속도 증가 옵션이 제대로 게임에 적용되지 않는 문제가 있습니다. 모두 패치로 수정 예정입니다.
(출처 - http://kr.battle.net/d3/ko/forum/topic/1354845601)
-------------------------------------
그리고 1.02버전의 패치는 6월 1일에 이루어졌다.
이상하지 않은가? 버그리포트에 공식인정을 하고 그 뒤에 온 패치에서 적용하지 않았다고? 블리자드가?
추측한 결론은 이러하다.
※ 이미 나온 아이템의 능력치를 변경하는 시스템을 구현해놓지 않았다.
나올 아이템에 어떤 옵션이 붙어야 될지 변경하는거야 일도 아닐것이다.
하지만 수십만명이 즐기는 게임에서 하루에 수도없이 터져나오는 아이템들을 관리하는 데이터베이스에
이미 있는 아이템들의 옵션을 조회, 그리고 그 아이템들의 옵션을
갑자기 변경하는 시스템을 구축해놨을까?
'게임 제작 경험'을 가지고 있는 필자로썬 아닐 것이라 생각한다.
왜냐하면 지금 일어난 공격속도 적용관련 문제는 예측이 불가능한 문제였기 때문이다.
이러한 버그가 발생한 이유는 다음과 같을 것으로 추측한다.
1. 시스템 특성상의 이유로 무기 공속 적용과 방어구 공속 적용을 분리해놨다.
2. 하지만 그 분리를 어설프게 Attack Speed Increase 와 Increase Attack Speed로 나눠놨다.
3. 블리자드는 1인 회사가 아니다. 수많은 인원이 맡은 부서에서 각가 다른 조각을 맞춰가며 큰 그림을 완성해간다.
4. 시스템 개발 팀과 아이템 관련 기획팀에서 Attack Speed Increase 와 Increase Attack Speed에 대한 명확한 의사소통이 없었다.
5. 결국 아이템 기획 관련 부서에서 이름만 보고 Increase Attack Speed(무기 전용 공속 옵션)가 옵션으로 붙도록 설정해버렸다.
(충분히 이해 가능한 실수이지만 이러한 실수를 잡아내지 못하고 '완성품'으로써 제품을 내놓은 것은 용납하기 힘든 일이다.)
자 그럼 이렇게 생각해보자. 내가 아이템관련 데이터베이스의 시스템을 만들어야 되는 사람이다.
여기서 말하는 아이템관련 데이터베이스는 유저들이 플레이를 통해 얻어서 실재 존재하는 아이템들을 관리하는 시스템을 말한다.
어떠한 기능이 필요할까?(상식선에서 생각해보자)
얼마나 많은 아이템이 나왔는지, 각 아이템별 비율은 어떻게 되는지, 각 아이템의 옵션이 어떻게 적용되었는지, 어떤 옵션의 아이템을 유저들이 많이 착용하는지. 등등
자자, 더 생각할 수도 있지만, 중요한 핵심은 이거다.
※플레이중 얻은 아이템 관련 데이터 베이스는 '조회'가 주 용무이기 때문에 '통계'를 내고 조회를 하는 용도로만 구축되었다.
어떤 기능이 필요할지 생각해보는 과정에서 나온 아이디어들은 모두 조회와 통계관련 기능들이 대부분이다.
그런데 여기서 과연 [수정]관련 기능을 추가할 필요성을 생각해낼 수 있을까?
나는 그 필요성이 없다고 생각한다.
그 근거는 다음과 같다.
1. 아이템의 옵션을 정하는 알고리즘(시스템)은 따로 존재한다.(아이템이 나오는 순간, 혹은 감정하는 순간 이 알고리즘을 거쳐
하나의 아이템으로 완성되 존재하게된다.) 아이템의 옵션에 영향을 주는 알고리즘은 두개이상 존재할 필요가 없다.
2. 이미 소지한 아이템의 능력치를 중간에 수정해버려서는 안된다.
(디아블로는 아이템이 주가 되는 게임이다. 이미 아이템에 써져있는 능력치대로 믿고 쓰고 거래하고 있는데 갑자기 능력치를 수정해버린다면 유저들이 가만히 있겠는가?)
하지만 필요성보다 더 중요한 문제가 있다.
바로 구현가능성이다!
왜?
아이템에 붙는 여러가지 옵션 중 특정 옵션의 수치만 변화시켜야 한다. 이게 가능할까?
(힘 10 민첩 10 지능 10이 붙은 투구가 있다고 치자. 여기서 다른 옵션은 내비두고 민첩 10을 민첩 20으로 변경해야지, 이게 가능할까?)
-위에서 이야기한 바와 같이 아이템의 옵션을 결정하는 알고리즘은 하나가 존재한다. (게임제작에서는 하나로 통합하는 것이 중요하다.)
-그 알고리즘은 특정 옵션 하나를 결정하는 알고리즘이 아니고, 아이템에 붙을 수 있는 조건과 수치를 기반으로 하여 전체의 옵션을 결정하는 알고리즘이다.
-그러므로 특정 한 옵션만을 변경하는 시스템은 구축해놨을 리가 없다.
특정 한 옵션을 변경하는 시스템을 구축한다 해도 문제다.
-똑같은 이름의 옵션이 다른 아이템은 셀 수 도 없이 많이 존재한다.
-이 수많은 아이템의 능력치를 고정된수치로 변경한다는건 말도 안되는 일이다. (민안다의 민첩 너프 패치가 있다고 쳐보자.
모든 민안다의 수치가 10으로 고정되버린다면 이게 디아블로인가?)
-그렇다면 해당 수치만을 다시 랜덤으로 돌려서 적용시켜줘야한다.
이 과정은 초기 전체의 옵션을 결정하는 시스템으로 기획하고 개발했을때에는 존재하지 않았떤 아예 다른 알고리즘을 하나 더 만들어야하는 어마어마한 일이다.
-그리고 역시나 중요한 것은 자기가 쓰던 아이템의 수치가 갑자기 랜덤으로 바뀌는 일을 유저가 가만히 있겠느냐는 것이다.
그러므로 아예 수치변경에 관한 기능은 만들 필요조차 없는 것이다. (이렇게 필요성이 현저히 낮은 기능을 구현해야하는데 시간을 할애하는 것보다 차라리 아이템이 랜덤으로 나올때 밸런스가 잘 맞도록 검토하는 시간에 투자하는 것이 기업으로서는 현명하다.)
위의 예만으로도 충분히 어려운 일인것이 분명한데 이번 공속관련패치는 이보다 몇배는 더 어렵다.
왜냐고?
그냥 옵션을 다시 부여하면 되는 간단한 일이 아니라!
기존에 존재하고 있던 옵션의 수치는 그대로 하면서 새로운 옵션을 부여해야 하기 때문에.
우리 눈에는 '공격 속도'라는 같은 옵션으로 보일지 몰라도 개발자 입장에선 이런차원의 문제이다.
좋은 아이템 (투구)
민첩 123
극대화 확률 321%
극대화 피해 123%
라는 아이템을
좋은 아이템 (투구)
민첩 123
공격속도 321% <- 수치는 유지하면서 옵션만 다르게!?
극대화피해 123%
이렇게 바꾸는 것과 같다.
그렇다면 몇십만개 몇백만개가 되는 아이템의 특정 옵션 수치를 기억한다음에 거기서 숫자만 뽑아내고 (%만)
다른 옵션을 부여하는데 그 옵션이 랜덤으로 다시 부여되는게 아니고 (차라리 랜덤으로 부여되면 기존 알고리즘을 빌려쓰면 되니깐 차라리 낫다) 원래 다른 옵션에 있던 수치(%)를 그대로 부여해야 된다.
완전히 다른 시스템을 만들어야 되는 일이다.
사실 블리자드 입장에선 앞으로 나오는 아이템에서만 새로운 적용하는 것이 이만배는 쉬울 것이다.
(실제로 디아블로 2에서는 그렇게 했다.)
하지만 서버문제나 각종 버그 문제로 명예를 실추한 블리자드가 이번 문제까지 구렁이 담넘어가듯 넘어간다면
그 위상은 대성당 지하 3층까지 떨어질것이 분명하다.
게다가 이러한 아이템의 수치 하나로 '현금 경매장'의 시세가 요동치는 지금 이때 (우리나라의 경우는 다르지만 각종 매매사이트에 영향을 주는 것은 같다) 대충 넘어가선 안될 일임은 분명하다.
긴 글을 마무리하려한다.
결론은 다음과 같다.
1. 개발자의 입장에서 이번 공속 패치는 그냥 뚝딱 하면 완료되는 패치가 아니다.
2. 블리자드의 네임벨류상 이 문제는 그래도 해결해 줄 것이라 기대해본다.
3. 하지만 문제해결에는 시스템적으로 새로운 구축이 필요하기 때문에 빠르게 진행되긴 힘들 것이다.
4. 블리자드가 개념을 서버운영하는 만큼 상실한다면 기존의 있는 아이템은 고자로 남을 것이고 앞으로 나올 아이템만 새로운 패치가 적용될 것이다.
이상입니다.