「획득 확률」 화면의 숫자는 모두 하나의 기본 확률에서 출발합니다.
이 p를 구한 뒤, 사이클(1회 구매에 걸리는 시간) τ를 곱해 "지정 시간 안에 최소 1개를 얻을 확률"로 변환합니다. 구매는 매번 독립이므로 기하분포(geometric distribution)를 따릅니다.
예: 한 번 구매가 타깃과 일치할 확률이 p = 3.15%라면 —
| 구매 횟수 N | 22회 | 72회 | 146회 |
|---|---|---|---|
| 1개 이상 획득 확률 | ≈ 50% | ≈ 90% | ≈ 99% |
확률을 계산하려면 먼저 게임이 상점 유물을 어떻게 뽑는지를 알아야 합니다. 아래 절차는 실제 게임 코드를 분석해(파라미터 테이블 + 라이브 검증) 확인한 것입니다.
외형 s가 뽑힐 확률과, 슬롯 j에서 효과 e가 뽑힐(첫 시도) 확률은 단순한 가중치 비율입니다.
단, ③의 재추첨 때문에 실제 슬롯 분포는 앞 슬롯의 결과에 따라 달라집니다(뒤에서 다시 다룸).
| 규칙 | 일반 유물 | 심층 유물 |
|---|---|---|
| 완전히 같은 효과(같은 티어) 2번 | 항상 불가 | |
| 같은 효과의 다른 티어 2개 | 불가 | 일부 효과만 가능 (효과별 규칙) |
| 서로 다른 효과인데 같은 배타 유형 (예: 물리 공격력 ↔ 신성 공격력) | 불가 | |
타깃은 색 · 최소 크기 · 옵션1~3(각각 허용 효과 집합과 최소 티어) · 회피 효과로 이뤄집니다. 매칭에 필요한 옵션 수는 min(크기 슬롯 수, 채운 옵션 수)입니다.
중요: 옵션1·2·3은 유물의 1·2·3번 슬롯을 가리키는 것이 아닙니다. 각 옵션은 유물의 어느 슬롯에서 나와도 인정되며, 단지 서로 다른 슬롯이 서로 다른 효과로 각 옵션을 하나씩 담당하면 됩니다 — 아래 그림의 짝짓기(bipartite matching)입니다. 따라서 화면의 확률은 모든 슬롯 배치를 합산한 값입니다.
화면이 열릴 때 즉시 보여주는 값은 다음 합입니다. 색·크기가 조건에 맞는 외형만 합산합니다.
세 인자의 뜻:
| 인자 | 의미 |
|---|---|
| P(매칭 ∧ 회피 없음) | 모든 슬롯이 독립적으로 첫 추첨에 성공했다고 가정하고, "필요한 수만큼의 옵션이 서로 다른 슬롯·서로 다른 효과로 채워지고, 회피 효과는 하나도 없는" 조합들의 확률 합. 슬롯마다 풀이 다르면 그 차이도 그대로 반영됨. |
| Zs | 공존 재정규화 상수(renormalization constant) = 독립 추첨(independent draw)에서 아무 충돌도 없을 확률. 게임은 충돌을 재추첨으로 제거하므로, "유효한 유물만 나온다"는 조건을 P(매칭)/Zs 나눗셈으로 근사함. |
| Cs | 저주 인자 = 저주 슬롯마다 (1 − w회피/W)의 곱. 회피 지정된 저주가 하나라도 붙으면 실격이므로. |
이 계산은 수 밀리초면 끝나므로, 타깃 설정을 바꿀 때마다 실시간으로 갱신되는 확률 표시줄에 쓸 수 있습니다. 참고로 효과 선택 화면의 「확률」 열도 같은 엔진으로 "이 효과 하나가 아무 유물에나 등장할 확률"을 미리 계산해 저장해 둔 값입니다.
위 수식에는 딱 한 곳, 근사가 들어 있습니다 — P(매칭)/Z 나눗셈입니다. "매칭됨"과 "충돌 없음"이 서로 독립이 아니기 때문(not independent)입니다.
타깃 효과는 대개 공격력·방어 같은 배타 유형이 있는 효과라서, 매칭 조합일수록 다른 슬롯과 충돌해 있을 가능성이 평균보다 높습니다. 그래서 이 근사는 거의 항상 실제보다 높게 나옵니다. 실측(2026-07, 400만 회 시뮬레이션 대조):
| 타깃 | 순간 확률 | 정밀 계산(시뮬) | 비율 |
|---|---|---|---|
| 흔한 효과 1옵션 | 3.42% | 3.15% | ×1.085 |
| 흔한 효과 2옵션 | 0.0756% | 0.0687% | ×1.10 |
| 심층 · 희귀 1옵션 | 0.528% | 0.471% | ×1.12 |
전형적으로 +8~12%, 조건이 빡빡한 다중 옵션·희귀 타깃에선 최대 ~15–20%까지 높게 표시될 수 있습니다. 방향이 일정하므로(과대), 순간 확률은 "상한에 가까운 빠른 어림값", 정밀 계산은 "기준값"으로 읽으면 됩니다.
"근사하지 말고 P(매칭 ∧ 유효)를 그냥 정확히 계산하면 되지 않나?" — 두 가지 벽이 있습니다.
충돌 규칙이 없다면 슬롯들은 독립이고, 확률은 슬롯별 확률의 곱으로 분해됩니다(수 ms에 정확 계산). 그런데 충돌 규칙은 슬롯 쌍 사이의 제약(pairwise constraint)입니다 — "슬롯 1의 효과와 슬롯 3의 효과가 같은 배타 유형이면 안 된다"처럼요. 이런 쌍별 제약이 있으면 결합 확률(joint probability)은 더 이상 곱으로 분해되지 않고, 정확한 값은 모든 슬롯 조합을 하나하나 열거한 합이 됩니다.
풀 하나에 효과가 약 230개, 슬롯이 3~6개이므로 항의 개수는 2303 ≈ 1,200만 에서 2306 ≈ 1.5×1014 — 그리고 이것을 외형 수백 개마다 반복해야 합니다. 효과들을 "같은 취급을 받는 묶음"으로 뭉쳐 줄이는 기법을 이미 최대한 쓰고 있지만, 매칭 조건과 공존 조건을 동시에 만족하는지 따지려면 묶음이 다시 잘게 쪼개져 (배타 유형 × 효과 번호 × 티어 × 옵션 소속) 결국 폭발을 피할 수 없습니다. 이런 "쌍별 제약 아래의 정확한 확률 합"은 계산 이론에서 #P-난해(#P-hard)로 분류되는 문제 계열이라 — 다항 시간 안에 정확히 푸는 일반 공식 자체가 알려져 있지 않습니다.
더 근본적인 문제가 있습니다. 게임은 충돌한 유물을 통째로 버리고 다시 뽑는 게 아니라 (그랬다면 Z 나눗셈이 정확했을 겁니다), 충돌한 슬롯 하나만 그 자리에서 다시 뽑습니다. 그러면 슬롯 j의 실제 분포는 앞 슬롯들의 결과에 따라 달라집니다.
분모가 앞에서 무엇이 나왔는지에 따라 매번 달라지는 — 경로 의존적인 순차 과정입니다. 이런 분포는 애초에 "슬롯별 확률의 곱 ÷ 정규화 상수" 꼴로 표현되지 않으므로, 닫힌 형식의 해(closed-form solution)가 존재하지 않고, 정확히 따라가려면 결국 모든 경로를 열거(=벽 ①)하거나 과정을 그대로 흉내 내는 — 즉 몬테카를로 시뮬레이션(Monte-Carlo simulation) — 수밖에 없습니다.
정밀 계산 버튼은 위의 생성 절차(외형 추첨 → 슬롯별 추첨 → 충돌 슬롯 재추첨 → 저주)를 그대로 N = 100만 번 재현하고, 매칭된 비율(표본 비율, sample proportion)을 셉니다. 큰 수의 법칙(law of large numbers)에 의해 이 표본 비율은 참값 p로 수렴하는 불편추정량(unbiased estimator)이고, 오차는 통계 이론이 정확히 알려줍니다.
| 타깃 확률 p | N=100만에서 기대 적중 수 | 상대오차(±1σ) |
|---|---|---|
| 3% | 30,000 | ±0.6% |
| 0.07% | 700 | ±3.8% |
| 0.001% | 10 | ±32% |
이 표가 곧 시뮬레이션의 한계이기도 합니다: 아주 희귀한 타깃일수록 안정된 값을 얻는 데 필요한 횟수가 N ∝ 1/p로 커집니다(±10%를 원하면 N ≈ 100/p). 또 100만 번 재현에는 수 초가 걸리므로, 설정을 바꿀 때마다 실시간으로 돌릴 수도 없습니다.
| 순간 확률 (기본 표시) | 정밀 계산 (버튼) | |
|---|---|---|
| 방법 | 수식 계산 (조합 조건은 근사) | 실제 뽑기 절차를 100만 회 재현 |
| 속도 | 수 ms — 실시간 갱신 | 수 초 — 요청 시에만 |
| 정확도 | +8~12% 과대 경향 (최대 ~15–20%) | 불편추정량 · 오차 ±1/√(Np) |
| 약점 | 조합(공존) 조건의 근사 | 희귀 타깃에서 표본 노이즈(sampling noise) |
| 용도 | 설정 비교 · 실시간 어림 | 최종 기준값 |
즉 두 숫자가 다른 것은 버그가 아니라 속도와 정밀도의 역할 분담입니다. 빠른 값으로 타깃을 조율하고, 결정했으면 정밀 계산으로 확정값을 확인하세요.