메뉴 건너뛰기

?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

소스코드 지적 해주신분 감사합니다.

아마랭킹 S부터 A팔레트 3개씩 들어갑니다.

모두의마블 신 행운아이탬인 매직브러시가 나왔습니다.

그래서 넷마블 측이 발표한 뽑기 확률을 바탕으로

매직브러시를 뽑는데 몇개의 A팔레트가 필요한지 계산해 평균을 내는 코드를 짜봤습니다.

돈마블 뽑기 확률표 : https://cafe.naver.com/momakakao/5421396

실험 해보실분 : https://ideone.com/ZXmP3F 가서

$times=2000 값을 $times=10000 이런식으로 바꿔서 하시면 됩니다.

php 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
<?php
/*
저작권자
-MX패밀리(http://mxfamily.ml)
도움
-kmb패밀리
 
기본구조
배열값을 이용한 확률뽑기(Percent_draw 함수)
각 단계별 Percent_draw 함수의 값이 1이 나오면 랭킹상승 성공,0이 나오면 실패
1 나오면 배열 오른쪽값이고 0이면 왼쪽값이니깐.......
*/
$times=2000;                            //매직브러시 뽑기 횟수
$sum = 0;                                //매직브러시 뽑는데 사용한 A팔레트 개수의 합
$values_1 = [45,55];                    //A아마랭킹 10위 or 5위 확률
$values_2 = [60,40];                        //A아마랭킹 5위 or 3위 확률
$values_3 = [67,33];                      //A아마랭킹 3위 or 1위 확률
$values_4 = [80,20];                    //A아마랭킹 1위 or S프로랭킹 10위 확률
$values_5 = [55,45];                    //S아마랭킹 10위 or 5위 확률
$values_6 = [74,26];                    //S아마랭킹 5위 or 3위 확률
$values_7 = [89.5,10.5];                //S아마랭킹 3위 or 1위 확률
$values_8 = [95.5,4.5];                    //S아마랭킹 1위 or 애직 브러쉬 확률
do{
    $i=$i+1;                                            //매직브러시 한번 뽑을때 마다 1추가
    //A아마랭킹 10위 or 5위
    do{
        $index = Percent_draw($values_1,1);
        $sum++;                                          //한번 팔레트 썼으니 누적
        if($index==1){
            break;
        }
    }while(true);
    //A아마랭킹 5위 or 3위
    do{
        $index = Percent_draw($values_2,1);
        $sum++;
        if($index==1){
            break;
        }
    }while(true);
     //A아마랭킹 3위 or 1위
    do{
        $index = Percent_draw($values_3,1);
        $sum++;
        if($index==1){
            break;
        }
    }while(true);
     //A아마랭킹 1위 or S프로랭킹 10위
    do{
        $index = Percent_draw($values_4,1);
        $sum++;
        if($index==1){
            break;
        }
    }while(true);
     //S아마랭킹 10위 or 5위(여기서 부터 팔레트 3개씩 사용)
    do{
        $index = Percent_draw($values_5,1);
        $sum++;
        $sum++;
        $sum++;
        if($index==1){
            break;
        }
    }while(true);
     //S아마랭킹 5위 or 3위
    do{
        $index = Percent_draw($values_6,1);
        $sum++;
        $sum++;
        $sum++;
        if($index==1){
            break;
        }
    }while(true);
     //S아마랭킹 3위 or 1위
    do{
        $index = Percent_draw($values_7,1);
        $sum++;
        $sum++;
        $sum++;
        if($index==1){
            break;
        }
    }while(true);
     //S아마랭킹 1위 or 매직브러시 뽑음 ㅋ
    do{
        $index = Percent_draw($values_8,1);
        $sum++;
        $sum++;
        $sum++;
        if($index==1){
            break;
        }
    }while(true);
    
}while($i<$times);
echo "매직브러시 ".$i."회 뽑기 평균값 : ".$sum/$i;
 
function Percent_draw($percent_list,$decimal) {
    //$percentlist : 뽑을확률,밑 $contents_list 하고 배열순서에 맞게 넣어야만 함
    //$decimal : 확률 소숫점 자리수,자연수면 0 그외 소수면 소수점 자리수에 맞게 넣는다.
    $range_now = 0;
    $range_last = 0;
    $draw = rand(1,pow(10,$decimal)*array_sum($percent_list));
    for($i=0$i<count($percent_list); $i++) {
        $range_now += pow(10,$decimal)*$percent_list[$i];
        if($range_now >= $draw && $range_last < $draw) {
            return $i;
        }else{
            $range_last = $range_now;
        }
    }
}
?>
cs

결론

  • 매직브러시 100회 뽑기 평균값 : 119.49
  • 매직브러시 1000회 뽑기 평균값 : 128.099
  • 매직브러시 3000회 뽑기 평균값 : 123.5586
  • 매직브러시 5000회 뽑기 평균값 : 126.8974
  • 매직브러시 10000회 뽑기 평균값 : 126.1066

매직브러시를 뽑는데 필요한 A팔레트의 개수는 126 에 수렴합니다.

?

자유게시판

회원가입후 이용할수 있습니다

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 V4 서버 통제현황(2020년 1월 23일 21:32) 35 주영 2019.12.18 4547
공지 V4 공략 총정리(2019년 1월 23일) file 주영 2019.12.17 3015
공지 자유게시판 이용방법 주영 2019.10.15 144
22 넥슨 V4 게스트 계정 옮기기 방법(게스트계정 백업+복구) 2 file 주영 2020.01.21 202
21 [모두의마블](각성)허수아비 헬멧 뽑기 시뮬레이션 결과 사용한 다이아 평균 개수(php) 2 주영 2020.01.18 606
20 [모두의마블](각성)어둠의 비눗방울 장난감 뽑기 시뮬레이션 결과 사용한 다이아 평균 개수(php) 주영 2019.12.21 273
19 [모두의마블](각성)닌자슈즈 뽑기 시뮬레이션 결과 사용한 A인술수련 평균 개수(php) kmb패밀리 2019.12.18 246
18 [모두의마블]우주함선 건설장비 뽑기 시뮬레이션 결과 사용한 A우주선 엔진 평균 개수(php) kmb패밀리 2019.12.13 393
17 [모두의마블]S+ 각성 페이 뽑기 시뮬레이션 결과 사용한 다이아 평균 개수(php) kmb패밀리 2019.12.06 784
16 넥슨 V4 투력표(2019년 11월 30일) 63 file 주영 2019.11.11 16756
15 V4 길드 블랙리스트 목록(2019-11-09 18:42) kmb패밀리 2019.11.09 508
14 [모두의마블]S+ 니콜 뽑기 시뮬레이션 결과 사용한 A니콜의달리기 평균 개수(php) 주영 2019.11.01 517
13 V4 길드 레벨 정보 주영 2019.10.28 383
12 [모두의마블]허수아비 헬멧 뽑기 시뮬레이션 결과 사용한 지푸라기 평균 개수(php) kmb패밀리 2019.10.12 269
» [모두의마블]매직브러시 뽑기 시뮬레이션 결과 사용한 A팔레트 평균 개수(php) MX패밀리 2019.10.08 865
10 모두의마블 게임 가이드 file kmb패밀리 2019.09.04 314
9 [모두의마블]비형랑 뽑기 시뮬레이션 결과 화살카드 평균 개수(php) kmb패밀리 2019.08.31 942
8 스페셜리스트 꿀단지 이벤트 공지 주영 2019.08.29 158
7 모두의마블 6주년 30명 혼자 초대하는 방법 file 주영 2019.07.12 3526
6 모두의마블 6주년 업데이트 사전예약 방법 file kmb패밀리 2019.07.12 284
Board Pagination Prev 1 ... 2 Next
/ 2