알아두면 좋은것들

[펌]개발자가 말하는 강화 확률

유랑검 2014. 5. 23. 09:23

제가 한때 게임회사에서 일한 경험을 토대로 온라인게임에서의 확률에 대해 말씀드리겠습니다. (제가 모든 게임회사에서 일한 것이 아니므로 모든 온라인 게임이 동일한 확률이기를 쓴다는 단언을 하지 못하므로 참고만 하시기 바랍니다.)

프로그램을  보신 분들은 아시겠지만 랜덤함수를 쓴다고 해서 완벽한 랜덤값이 나오지 않습니다예를 들어 1에서 10까지의 범위에서 랜덤함수를 돌리면 항상 랜덤값이 나오지 않고 일정한 규칙으로 나오게 됩니다


예를 들어 랜덤함수를 사용하여 1~10까지 10번의 랜덤함수를 호출하였을  한번 나온 수는 다시 나오지 않게 했을  3, 5, 7, 9, 1, 2, 4, 6, 8, 10 <- 이런 식으로  사이클의 랜덤 함수가 나왔다면  이후엔  순서대로 다시 돌아 값이 나오게 됩니다완벽한 랜덤값이었다면  사이클이 저렇게 나왔다 하더라도 11번째에서 20번째 사이의 수는  순서가 아닌 다른 순서가 나와야하지만.. 랜덤 함수 자체가 완벽한 랜덤값이 아니기 때문에 항상 저런 사이클로 나오게 됩니다


이를 토대로 그라나도의 랜덤함수를 추측컨대 그라나도는 1~32XXX(자세한 수가 생각이 나질 않는 군요총알의 최대 소지량 수입니다.) 사이의 값으로 랜덤값을 돌릴 꺼라 생각됩니다


이때 강화성공률을 50% 설정을 하게되면(쉽게 예를 들기 위해 1~30000 사이로 잡겠습니다.) 랜덤 함수를 돌렸을  1~15000 사이의 값이 나오게 되면 실패, 15001~30000 사이의 값이 나오게 되면 성공이 됩니다


 강화 성공 확률이 실패성공성공실패 <- 이런 식의 이진법적인 확률 계산은 아니라는 거죠. (물론  방법  30000  까지 확률을 따졌을  전체 성공률은 동일합니다
.)

그리고  랜덤 함수는 개개인에게 적용되는 것이 아닌 서버로 적용됩니다. 18-1 1,2, 3채가 같은 서버를 사용한다면 서버 전체의 강화 시도에 대해 하나의 랜덤함수가 적용된다는 거죠


예를 들어 자신이 강화를 시도하여 랜덤함수가 1000 나왔고 다음 랜덤함수가 30000 나올 차례라고 했을  자신이 다시 강화를 시도한다고 30000 나오는 것이 아니라 자신이 1000 나오고 다시 시도하기 까지의  중간에 서버  다른 유저가 강화를 시도하면  유저가 30000이라는 랜덤값을 가지고 가게 되는 겁니다


좀더 쉽게 설명하자면


일렬로  진열한 사과가 있고 왼쪽부터 차례로 구매하게 되어있다면 자신이 첫번째 사과를 사고 다시 사과를 사려고   다른 구매자가 없다면 2번째 사과를 사게 되는 것이고 다른 구매자가 2 있었다면 4번째 사과를 사게 되는 것과 같은 맥락입니다

따라서 재수가 없으면 자신은 실패에 해당하는 랜덤함수만 골라서 가져갈  있고 재수가 좋다면 성공에 해당하는 랜덤함수만 골라서 가져가는 상황도 연출될  있다는 겁니다



둘째로 아래 글을 보니 운영자 혹은 개발자가 그날 혹은 일정 기간 내에 서버내 전체 강화 성공률을 통계내서 실시간 조절을 한다는 식으로 글을 쓰셨는데사실이 아닙니다

우선 서버  확률의 경우 서버를 재부팅하기 전까지는 수정이 불가능합니다가능하다면 드랍율에 문제가 있을  임시점검을 하지 않겠죠물론 드랍율에 문제가 생겼을  대처도 빠르겠구요


하지만 클라이언트의 문제가 아닌 서버  오류나 프로그램 수정은 서버를 재부팅하기 전까지는 적용이 되지 않습니다윈도우에 어떤 프로그램을   재부팅을 요하는 프로그램이 있는데 이와 같은 맥락입니다


따라서 실시간으로 강화된 양을 체크하고 성공율을 조절한다는  불가능합니다


 한가지

운영자는 드랍율 조절과 같은 서버에 영향을 주는 수정  패치를   없습니다. 실력이 안될 뿐더러 이를 수정할  있는 프로그램이나 소스를 제공하지 않습니다운영자가 서버에 영향을   있는 영향권은 계정 블럭그리고 아이템 복구 관련 운영 부서가 있을 시에는 계정에 한해서 아이템 복구  삭제의 권한만을 가집니다


드랍율이나 성공율과 같은 부류는 개발팀장   프로듀서의 승인, QA팀의 테스트 결과 보고 등을 거쳐 개발부서  서버프로그래머가 수정을 하게 되는데 서버 프로그래머는 자신의 업무량도 많기 때문에 (바쁘지 않더라도서버 운영업무(유저 불만서버내 현황) 관심을 두지 않습니다


운영자들도 버그 사항이 아닌 이상 서버 내에서 강화성공된 아이템이 많아졌다고 해서 성공율을 조정하자는 건의는 하지 않습니다

만약 강화성공율이나 드랍율이 새로운 업데이트나 패치 이후에 체감이 된다면 이는 개인적인 체감이거나 다른 패치를 하면서 그것이 영향을 주어 예기치 못한 오류로 인한 현상입니다


다들 온라인 게임의 운영자나 개발자에 대한 불신이 팽배하여 자신이 느끼는 바에 대해 조작 아니냐는 의혹을 많이 가지고 계신  같아서 써봤습니다


마지막으로 제가 게임 회사에 있었을  느꼈던 유저의 성향에 대해 간략히 적고 끝내겠습니다


업데이트나 패치 이후에 드랍율이나 강화 확률기타 여러 가지 이유로 게시판에 글을 남기시는 분들이 있는데 .. 예를 들어 강화 성공확률을 올렸다는 업데이트 이후 100명이 강화를 시도했을  90명이 강화에 성공하고 10명이 강화에 실패했다면 과연 게시판에 " 이번 패치로 강화확률이 많이 올랐네요"라는 글들이 많이 올라올까요
?

아닙니다강화에 실패한 10명만이 게시판에 "운영자 죽을래올리긴  올려오히려 낮아졌구만!" 하면서 불만글을 남깁니다


이와 비슷한 일이 있었을    불만을 남긴  유저가 게시판에 "내가 아이템 20 개를 강화해봤는데  날렸다장난하냐?" 라고 남기셨을래 그분의 계정을 조사하여보니 아이템 강화 3 하시고 그중 2개는 낮은 강화에서 실패, 1개는 욕심을 부리셨는지 높은 강화를 시도하시다가 실패하셨더군요

 

 

출처 : http://www.inven.co.kr/board/powerbbs.php?come_idx=2210&l=483