메이플스토리 인벤 자유 게시판

전체보기

모바일 상단 메뉴

본문 페이지

[수다] [실험] 확률에 수렴하게 진짜 조작이 가능함

아이콘 Tido
댓글: 124 개
조회: 18941
추천: 106
비공감: 1
2026-01-26 21:09:01

우선 메이플이 확률 주작을 하고 있다는 말이 아님.
표기된 확률과 통계 결과는 같되, 내부 로직은 다르게 짜는게 가능하다는 걸 얘기하고 싶음.

확률이 30%라고 하면, 매번 돌릴 때마다 30%의 독립시행이라고 생각하지만
PRD(Pseudo-Random Distribution)를 이용해서 확률을 30%에 수렴하게 만들 수 있음
1. 실제 확률은 표기된 것보다 낮게 설정함
2. 실패할 때마다 스택 쌓듯이 확률을 조금씩 올려줌. 성공하면 스택 초기화
이게 반복되면 표기 확률이랑 똑같아짐

API 결과로는 성공/실패 통계가 표기된 확률이랑 똑같이 나오니까 의심을 못함
하지만 실제로는 성공 타이밍을 어느 정도는 조정할 수 있다는 거임

말만 하면 이해가 안될것 같아서 시뮬레이션을 돌려봄




성공 확률을 P(n) = C * n 으로 구하고, 실패할 때마다 n이 1씩 증가하는 구조임.
C값은 이분 탐색 돌려서 임의로 구해본거임

표 보면 알겠지만 시작 확률은 실제 확률보다는 낮음.


1000회 돌렸을 때,


1,000,000회 돌렸을 때




코드









def run_simulation_batch(mode, trials, prob_info, c_value=None):
"""
특정 모드(FIXED/DYNAMIC)로 trials 횟수만큼 시뮬레이션을 수행하고 결과를 집계합니다.
"""

stats = {'success': 0, 'fail': 0, 'destroy': 0}

# 고정 확률 데이터
p_destroy = prob_info['destroy']
p_success_base = prob_info['success'] # FIXED 모드용

# 변동 확률용 스택 (초기화)
current_stack = 1

for _ in range(trials):
dice = random.random() # 0.0 ~ 1.0 난수 생성

current_succ_prob = 0.0

# --- 1. 확률 결정 단계 ---
if mode == "FIXED":
current_succ_prob = p_success_base

elif mode == "DYNAMIC":
if c_value is None:
raise ValueError("DYNAMIC 모드에는 c_value가 필요합니다.")

# P(n) = C * n, 단 (1 - 파괴확률)을 넘을 수 없음
current_succ_prob = min(c_value * current_stack, 1.0 - p_destroy)

# --- 2. 결과 판정 단계 ---
# 성공 구간: 0 ~ success_prob
# 파괴 구간: success_prob ~ (success_prob + destroy_prob)
# 실패 구간: 나머지

limit_success = current_succ_prob
limit_destroy = current_succ_prob + p_destroy

if dice < limit_success:
stats['success'] += 1
current_stack = 1 # 성공 시 스택 초기화

elif dice < limit_destroy:
stats['destroy'] += 1
current_stack = 1 # 파괴 시에도 스택 리셋

else:
stats['fail'] += 1
current_stack += 1 # 실패 시에만 스택 증가 (변동 확률용)

return stats




결과 보면 생각보다 표기 확률에 근접하는 것을 알 수 있음


니 말대로면 15성 도전할 때는 12% -> 24% -> 36% -> 48% -> ... 면 개혜자 아님?


저거는 말 그대로 임의의 값인거지, 저게 정답이라는 말이 아님.
저렇게 실제 확률이 표기 확률이 다르더라도, "큰 수의 법칙"에 의해 특정 확률로 수렴하게 만들 수 있다는 것을 얘기하고 싶었음.


넥슨에 확률 특허가 있는 만큼
친구 수에 따른 확률 C1,
시간에 따른 확률 C2,
장소에 따른 확률 C3 등등 해서
P(n) = (C1 + C2 + C3) * n 이런 식으로 성공 확률을 정할 수도 있다는 것임


그러면 넥슨이 귀찮게 확률을 조정하겠냐?

가치 보존을 위해서 충분히 발생할 수 있다고 봄
일반적인 확률에 의해 특정 시점에 23성 아이템이 많이 만들어진다거나,
좋은 쌍레 옵션이 많이 풀린다거나 할 수도 있는데,
이에 따른 스노우볼을 선제적으로 막기 위해 확률 조정을 할 수 있다가 내 생각임


너무 심한 망상 아님? 결론적으로는 확률에 수렴하니까 상관 없는거 아님?

메이플 강화하는 것도 나름 재밌고, 재획하는 것도 재밌어서 나야 상관은 없음.

API로 통계 있으니까 확률 주작할 수 없다고 믿는 사람이 많은 것 같아서
확률 조작해도 통계적으로는 확률에 수렴할 수 있다는 것만 말하고 싶었음.




모바일 게시판 하단버튼

댓글

새로고침
새로고침

모바일 게시판 하단버튼

지금 뜨는 인벤

더보기+

모바일 게시판 리스트

모바일 게시판 하단버튼

글쓰기

모바일 게시판 페이징

최근 HOT한 콘텐츠

  • 메이플
  • 게임
  • IT
  • 유머
  • 연예
AD