How the app deals roles
- هر نقش به تعداد صندلیاش در یک دسته پهن میشود (تعداد به نقش گره خورده میماند).
- دسته چند بار بر میخورد.
- لیست بازیکنها چند بار بر میخورد.
- دسته به بازیکنهای برخورده اختصاص داده میشود و شماره صندلی i + 1 میگیرد.
- لیست نهایی یکبار دیگر بر میخورد و برمیگردد.
بین بازیها هیچ حافظهای نیست؛ هر پخش از نو با Random ساخته میشود و به پخش قبلی وابسته نیست.
Setup A — 10 unique roles
هر نقش دقیقاً یک کپی دارد؛ شانس عادلانه هر بازیکن برای هر نقش ≈ ۱۰٪.
بازیکنان ثابت: علی، سارا، رضا، مریم، حسین، نیما، زهرا، امیر، نازنین، پارسا
۱۰ بازی پشتسرهم (همان بازیکنها)
هر سطر یک پخش کامل است؛ سلولها نقش همان بازیکن در آن بازیاند.
| بازی | علی | سارا | رضا | مریم | حسین | نیما | زهرا | امیر | نازنین | پارسا |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | ناتاشا | قاضی | دکتر | بمبر | مافیا | اسنایپر | وکیل | کارآگاه | شهروند | گادفادر |
| 2 | دکتر | گادفادر | بمبر | ناتاشا | قاضی | اسنایپر | مافیا | کارآگاه | شهروند | وکیل |
| 3 | اسنایپر | کارآگاه | دکتر | ناتاشا | قاضی | وکیل | گادفادر | شهروند | بمبر | مافیا |
| 4 | ناتاشا | دکتر | کارآگاه | اسنایپر | وکیل | بمبر | گادفادر | شهروند | قاضی | مافیا |
| 5 | وکیل | ناتاشا | شهروند | گادفادر | مافیا | بمبر | اسنایپر | دکتر | قاضی | کارآگاه |
| 6 | مافیا | ناتاشا | اسنایپر | دکتر | بمبر | وکیل | قاضی | شهروند | گادفادر | کارآگاه |
| 7 | مافیا | اسنایپر | بمبر | وکیل | کارآگاه | قاضی | ناتاشا | گادفادر | شهروند | دکتر |
| 8 | قاضی | اسنایپر | مافیا | بمبر | کارآگاه | دکتر | ناتاشا | وکیل | شهروند | گادفادر |
| 9 | دکتر | مافیا | بمبر | وکیل | قاضی | شهروند | گادفادر | اسنایپر | ناتاشا | کارآگاه |
| 10 | کارآگاه | بمبر | دکتر | اسنایپر | گادفادر | ناتاشا | شهروند | قاضی | مافیا | وکیل |
عوض شدن نقش بین بازیهای نمونه
برای هر بازیکن: چند بار نقشش بین بازی n و n+1 ثابت ماند یا عوض شد (۹ انتقال).
| بازیکن | همان نقش | عوض شد | نرخ تغییر |
|---|---|---|---|
| علی | 1 | 8 | 88.9% |
| سارا | 2 | 7 | 77.8% |
| رضا | 0 | 9 | 100% |
| مریم | 1 | 8 | 88.9% |
| حسین | 2 | 7 | 77.8% |
| نیما | 2 | 7 | 77.8% |
| زهرا | 2 | 7 | 77.8% |
| امیر | 2 | 7 | 77.8% |
| نازنین | 3 | 6 | 66.7% |
| پارسا | 2 | 7 | 77.8% |
با ۱۰ نقش یکتا، شانس نگه داشتن همان نقش در بازی بعد ≈ ۱۰٪ است؛ پس نرخ تغییر باید نزدیک ~۹۰٪ باشد.
مونتکارلو — ۱۰٬۰۰۰ پخش (نقشهای یکتا)
انتظار هر سلول: ۱۰۰۰ بار (۱۰٪ پخشها).
درصد فراوانی نقش برای هر بازیکن
| بازیکن | گادفادر | مافیا | دکتر | کارآگاه | اسنایپر | ناتاشا | وکیل | شهروند | قاضی | بمبر |
|---|---|---|---|---|---|---|---|---|---|---|
| علی | 9.6% | 10.2% | 10% | 9.9% | 10.1% | 10.2% | 10% | 9.4% | 10.8% | 9.9% |
| سارا | 10.5% | 9.5% | 9.8% | 9.4% | 10.4% | 9.7% | 9.9% | 9.8% | 10.4% | 10.6% |
| رضا | 10.4% | 9.6% | 9.8% | 10% | 10.1% | 9.5% | 10.2% | 10.1% | 10.1% | 10.1% |
| مریم | 9.7% | 10% | 10.3% | 10% | 10.1% | 10% | 9.8% | 10.4% | 9.8% | 10% |
| حسین | 9.8% | 9.8% | 10.2% | 10.2% | 10.1% | 10.2% | 10% | 10.1% | 9.9% | 9.8% |
| نیما | 10.1% | 10.2% | 9.8% | 10.5% | 10.5% | 10% | 9.8% | 9.6% | 9.6% | 9.8% |
| زهرا | 9.7% | 10.4% | 10.4% | 9.9% | 9.7% | 9.5% | 10.2% | 10.1% | 10% | 10.3% |
| امیر | 10% | 10.3% | 9.8% | 10% | 9.7% | 10.4% | 10.4% | 9.9% | 9.4% | 10.2% |
| نازنین | 10% | 10.2% | 10.3% | 10.2% | 10% | 10.1% | 9.4% | 9.8% | 10.2% | 9.8% |
| پارسا | 10.2% | 9.8% | 9.6% | 9.7% | 9.4% | 10.5% | 10.4% | 10.9% | 9.8% | 9.6% |
شمارش خام (بازیکن × نقش) و χ²
| بازیکن | گادفادر | مافیا | دکتر | کارآگاه | اسنایپر | ناتاشا | وکیل | شهروند | قاضی | بمبر | χ² |
|---|---|---|---|---|---|---|---|---|---|---|---|
| علی | 964 | 1015 | 997 | 990 | 1009 | 1016 | 1001 | 939 | 1078 | 991 | 11.9 |
| سارا | 1052 | 953 | 981 | 939 | 1042 | 973 | 989 | 977 | 1035 | 1059 | 16.8 |
| رضا | 1041 | 964 | 982 | 1004 | 1007 | 949 | 1019 | 1012 | 1010 | 1012 | 6.7 |
| مریم | 967 | 1004 | 1028 | 1000 | 1010 | 997 | 976 | 1036 | 985 | 997 | 4.1 |
| حسین | 976 | 981 | 1016 | 1022 | 1006 | 1015 | 1002 | 1012 | 994 | 976 | 2.7 |
| نیما | 1010 | 1024 | 980 | 1054 | 1051 | 999 | 976 | 962 | 964 | 980 | 10.3 |
| زهرا | 967 | 1035 | 1045 | 993 | 966 | 947 | 1015 | 1006 | 1000 | 1026 | 9.3 |
| امیر | 1001 | 1027 | 978 | 1003 | 968 | 1039 | 1038 | 991 | 940 | 1015 | 9.1 |
| نازنین | 1000 | 1020 | 1030 | 1024 | 996 | 1012 | 945 | 978 | 1016 | 979 | 6.2 |
| پارسا | 1022 | 977 | 963 | 971 | 945 | 1053 | 1039 | 1087 | 978 | 965 | 19.9 |
χ² هر بازیکن (۹ درجه آزادی) معمولاً زیر ~۱۶–۲۱ برای تخصیص عادلانه در این حجم نمونه میماند. مجموع χ² بازیکنها ≈ ۹۷.
چسبندگی نقش نسبت به بازی قبل
تعداد انتقالها: ۹۹۹۹. انتظار عادلانه ≈ ۱۰٪ همان نقش / ۹۰٪ تغییر.
| بازیکن | همان نقش قبلی | نرخ همان | نرخ تغییر |
|---|---|---|---|
| علی | 934 | 9.3% | 90.7% |
| سارا | 988 | 9.9% | 90.1% |
| رضا | 1046 | 10.5% | 89.5% |
| مریم | 1019 | 10.2% | 89.8% |
| حسین | 1009 | 10.1% | 89.9% |
| نیما | 944 | 9.4% | 90.6% |
| زهرا | 1031 | 10.3% | 89.7% |
| امیر | 1059 | 10.6% | 89.4% |
| نازنین | 989 | 9.9% | 90.1% |
| پارسا | 1003 | 10% | 90% |
| معیار | مقدار |
|---|---|
| پخشهای یکتای کل میز | ۹۹۸۳ / ۱۰۰۰۰ |
| اثرانگشتهایی که بیش از یکبار دیده شدند | ۱۷ |
با ۱۰! = ۳٬۶۲۸٬۸۰۰ جایگشت ممکن و فقط ۱۰٬۰۰۰ نمونه، تقریباً هر پخش باید یکتا باشد.
Setup B — realistic mix (5 citizens)
تعداد: گادفادر×۱، مافیا×۱، دکتر×۱، کارآگاه×۱، اسنایپر×۱، شهروند×۵.
سهم انتظار نقش یکتا: ۱۰٪. سهم انتظار شهروند: ۵۰٪.
مونتکارلو — ۱۰٬۰۰۰ پخش
| بازیکن | گادفادر | مافیا | دکتر | کارآگاه | اسنایپر | شهروند |
|---|---|---|---|---|---|---|
| علی | 9.6% | 10% | 9.4% | 10.2% | 9.9% | 50.9% |
| سارا | 10.5% | 10.5% | 9.6% | 9.8% | 9.5% | 50% |
| رضا | 9.7% | 10.3% | 10.4% | 9.8% | 10.1% | 49.7% |
| مریم | 9.9% | 10.3% | 9.8% | 10.3% | 10.2% | 49.6% |
| حسین | 10.3% | 9.9% | 10.2% | 10% | 10.2% | 49.4% |
| نیما | 9.8% | 9.9% | 10.3% | 10.2% | 9.4% | 50.4% |
| زهرا | 10.8% | 9.9% | 9.9% | 9.8% | 9.9% | 49.7% |
| امیر | 10% | 9.7% | 10.3% | 10% | 9.8% | 50.2% |
| نازنین | 9.6% | 9.6% | 10.1% | 9.7% | 10.6% | 50.5% |
| پارسا | 9.7% | 10% | 10% | 10.2% | 10.5% | 49.6% |
چسبندگی همان نقش (شامل شهروند)
چون شهروند ۵ کپی دارد، شانس نگه داشتن همان شناسه نقش بالاتر است (≈ ۳۰٪ در تخصیص عادلانه مستقل).
| بازیکن | همان نقش قبلی | نرخ همان | نرخ تغییر |
|---|---|---|---|
| علی | 3073 | 30.7% | 69.3% |
| سارا | 3021 | 30.2% | 69.8% |
| رضا | 3018 | 30.2% | 69.8% |
| مریم | 2895 | 29% | 71% |
| حسین | 2976 | 29.8% | 70.2% |
| نیما | 3019 | 30.2% | 69.8% |
| زهرا | 2946 | 29.5% | 70.5% |
| امیر | 3026 | 30.3% | 69.7% |
| نازنین | 3014 | 30.1% | 69.9% |
| پارسا | 3018 | 30.2% | 69.8% |
Setup C — do newcomers get mafia more often?
شایعه: «هر بار کسی تازه به لیست اضافه میشود، شانس مافیا شدنش بیشتر است.»
در اپ، بازیکن جدید به انتهای لیست اضافه میشود. آزمایشها همیشه تازهوارد را آخر میگذارند و همان RoleDealer + RoleCountAllocator واقعی را صدا میزنند.
نقشهای مافیا در قالب: گادفادر و مافیا (side=2). شانس انتظار = صندلی مافیا / تعداد بازیکن.
C1 — میز ثابت: ۹ قدیمی + ۱ تازهوارد × ۵۰۰ پخش
| معیار | مقدار |
|---|---|
| بازیکن | ۱۰ |
| صندلی مافیا در هر پخش | ۲ |
| P(mafia) انتظار | ۲۰٪ |
| ضربات مافیای تازهوارد | ۸۹ / ۵۰۰ |
| نرخ مافیای تازهوارد | ۱۷٫۸٪ |
| میانگین مافیای قدیمیها | ۲۰٫۲٪ |
| تازهوارد − انتظار | −۲٫۲ نقطه درصد |
| تازهوارد − قدیمیها | −۲٫۴ نقطه درصد |
نرخ مافیا بر اساس جایگاه در لیست
| ایندکس لیست | ضربات مافیا | نرخ |
|---|---|---|
| 0 | 104 | 20.8% |
| 1 | 110 | 22% |
| 2 | 97 | 19.4% |
| 3 | 118 | 23.6% |
| 4 | 92 | 18.4% |
| 5 | 94 | 18.8% |
| 6 | 93 | 18.6% |
| 7 | 116 | 23.2% |
| 8 | 87 | 17.4% |
| 9 (تازهوارد) | 89 | 17.8% |
اگر شایعه درست بود، ردیف آخر باید واضح بالاتر از ~۲۰٪ مینشست. در تخصیص عادلانه نزدیک همان خط میماند.
C2 — رشد لیست: اضافه کن، پخش کن، تکرار (۵۰۰ پخش)
شروع با ۵ نفر؛ هر بازی پخش میشود، بعد یک بازیکن جدید اضافه میشود. در ۱۵ نفر به ۵ برمیگردد. تعداد نقشها با RoleCountAllocator برای همان اندازه است.
| معیار | مقدار |
|---|---|
| تعداد پخش | ۵۰۰ |
| ضربات مافیای تازهترین نفر | ۱۱۸ |
| نرخ مافیای تازهترین | ۲۳٫۶٪ |
| انتظار (وزندار با اندازه میز) | ۲۲٫۵٪ |
| تازهترین − انتظار | +۱٫۱ نقطه درصد |
| میانگین مافیای قدیمیترها | ۱۹٫۷٪ |
| اندازه میز | پخشها | نرخ مافیای تازهترین | انتظار |
|---|---|---|---|
| 5 | 46 | 43.5% | 40% |
| 6 | 46 | 37% | 33.3% |
| 7 | 46 | 32.6% | 28.6% |
| 8 | 46 | 26.1% | 25% |
| 9 | 46 | 17.4% | 22.2% |
| 10 | 45 | 15.6% | 20% |
| 11 | 45 | 26.7% | 18.2% |
| 12 | 45 | 15.6% | 16.7% |
| 13 | 45 | 17.8% | 15.4% |
| 14 | 45 | 13.3% | 14.3% |
| 15 | 45 | 13.3% | 13.3% |
نتیجه Setup C: بازیکن تازهاضافهشده بهصورت سامانمند به مافیا هل داده نمیشود. فاصلههای کوچک از خط انتظار، نویز دوجملهای طبیعی است.
Conclusion
- Every game reshuffles independently via
RoleDealer; no player is favored. - Over 10,000 deals, each unique role lands near ~10% for every player.
- Between consecutive games, a unique role almost always changes (~90%).
- Full-table assignment repeats are vanishingly rare at this sample size.
- Newcomers are not more likely to be mafia — their rate matches the fair baseline (Setup C, 500 trials).