تاس منصفانه، بازی جوانمردانه

هر بازیکن تخته‌نردی که با یک دبلِ آخرین تاس باخته است، همین را از خود پرسیده: آیا این تاس‌ها منصفانه‌اند؟ این درست‌ترین پرسشی است که می‌توان از هر برنامهٔ تخته‌نرد پرسید. اینجا دقیقاً می‌بینید که تاس‌های ما چگونه تولید می‌شوند، چرا هیچ‌کس، از جمله خودِ ما، نمی‌تواند آن‌ها را کج کند، و بقیهٔ بازی نیز چگونه درستکارانه نگه داشته می‌شود.

هر بازی تمام‌شده را خودتان راستی‌آزمایی کنید

حرف زدن آسان است، این هم بخشی که خودتان می‌توانید اجرا کنید. وقتی مسابقه‌ای تمام می‌شود، بذر سرور، تعهدی را که پیش از نخستین تاس منتشر کرده‌ایم و هر حلقه‌ای را که دو طرف در جریان بازی منتشر کرده‌اند فاش می‌کنیم. بستهٔ فاش‌سازی را پایین بچسبانید یا بازی را با شناسه‌اش جست‌وجو کنید: این صفحه هر تاس را از همان سابقه بازتولید می‌کند، دقیقاً همان محاسبه‌ای که سرورهای ما اجرا کردند، و تاس به تاس نشان می‌دهد که آیا مقادیر ثبت‌شده می‌خوانند یا نه. هیچ‌کدام از این‌ها از شما نمی‌خواهد حرف ما را باور کنید؛ محاسبه آشکار است و هر کسی می‌تواند آن را تکرار کند. تنها کاری که این صفحه عمداً انجام نمی‌دهد، دادن نشان سبز «به‌گونهٔ اثبات‌پذیر منصفانه» است، چون صادقانه نمی‌تواند آن را به دست آورد. این صفحه هرگز مقادیری را که دستگاه خودتان پیش از نخستین تاس نوشته و قفل کرده است نمی‌بیند، و سابقه‌ای که زنجیره‌اش یکسره با جعلی دقیق جایگزین شده باشد هم اینجا به همان تمیزی بازتولید می‌شود. تنها مقایسهٔ بایت‌به‌بایت با آنچه دستگاه شما قفل کرده است می‌تواند این را رد کند، و آن مقادیر فقط نزد برنامهٔ خودتان است. پس سقف صادقانهٔ این صفحه «سازگار» است و قوی‌ترین حکم را صفحهٔ «راستی‌آزمایی» در برنامه می‌تواند به شما بدهد.

این بسته تنها دادهٔ انصاف را فاش می‌کند: بذرها، تعهد، مقادیر nonce و تاس‌ها. هیچ نام یا حساب بازیکنی در میان نیست.

یا

تنها به میدان‌های انصافِ همان بازی نگاه می‌کنیم، هرگز به هویت هیچ بازیکنی.

وقتی پیوند «راستی‌آزمایی» در برنامه این صفحه را باز می‌کند، تعهد را هم با خود می‌آورد تا بتوانید آن را کنار تعهدِ داخل سابقه بگذارید. نتیجهٔ پایین را تغییر نمی‌دهد: نسخه‌ای که پیش از نخستین تاس قفل شده تنها روی دستگاه شماست و مقایسه با آن کارِ بررسی درون برنامه است.

بذر کاربری‌ای که برنامه‌تان در آغاز بازی ثبت کرده است، اینجا آورده شده تا بتوانید آن را با بذرهایی که سابقه فاش می‌کند بسنجید. مانند تعهد، نتیجهٔ پایین را تغییر نمی‌دهد: نسخهٔ قفل‌شده تنها روی دستگاه شماست و تطبیق با آن بر عهدهٔ بررسی درون برنامه است.

تاس‌ها: به‌گونهٔ اثبات‌پذیر منصفانه، بر روی سرور ریخته می‌شوند

هر تاس در یک مسابقهٔ آنلاینِ تمام‌شده روی سرورهای بازی ما تولید می‌شود و به‌گونه‌ای اثبات‌پذیر منصفانه است، بی‌آنکه لازم باشد حرف ما را باور کنید. پیش از نخستین تاس، تعهد خود را نسبت به بذر سرّی‌ای که تاس‌ها از آن بیرون می‌آیند منتشر می‌کنیم و برنامهٔ هر دو بازیکن نیز هر یک به زنجیرهٔ خود متعهد می‌شود؛ همهٔ اینها پیش از آنکه کسی تاس بریزد در یک سابقه منجمد می‌شود. سپس هر تاس از زنجیرهٔ هر دو طرف یک حلقهٔ تازه خرج می‌کند: بازیکنی که نوبتش است حلقه‌اش را در آغاز نوبت منتشر می‌کند، حریف حلقهٔ خود را تنها پس از قفل‌شدن آن رها می‌کند و تاس در آخر ساخته می‌شود. بنابراین آخرین ورودی ناشناختهٔ هر تاس همیشه در سوی دیگر تخته است. تاس‌های آغازین هم استثنا نیستند: تا هر دو طرف سهم خود را ندهند هیچ‌کدام از آن دو وجود ندارد. پس هر تاس نتیجهٔ قطعی مقادیری است که پیشاپیش تعهد شده‌اند: هیچ‌کس، از جمله خود ما، نمی‌تواند تاسی را انتخاب کند، آن را با تاس دیگری عوض کند یا بی‌سروصدا دوباره بریزد. این ادعایی است دربارهٔ مقدار یک تاسِ انجام‌شده و همان‌جا تمام می‌شود: لغو مسابقه، رسیدن یا نرسیدن پیام، و اینکه وقت چه کسی تمام شد، بیرون از آن‌اند. ابزار بالا هر تاس یک بازی تمام‌شده را از سابقهٔ منتشرشده بازتولید می‌کند؛ محاسبه‌ای که هر کسی می‌تواند تکرارش کند. آنچه نمی‌تواند، تأیید این است که آن سابقه مسابقهٔ خودِ شما است: برای این کار مقادیری لازم است که دستگاه شما پیش از بازی قفل کرده و تنها برنامهٔ خودتان آنها را دارد، پس آن گام آخر در صفحهٔ «راستی‌آزمایی» درون برنامه برداشته می‌شود.

به همان اندازه مهم است که تاس کجا ریخته می‌شود. تاس‌ها هرگز بر روی دستگاه شما تولید نمی‌شوند، تلفن شما تنها تاسی را که سرور پیشاپیش ریخته نمایش می‌دهد. همین یک تصمیم طراحی، تمام خانوادهٔ تقلب‌های تاس را از میان می‌برد: یک برنامهٔ دستکاری‌شده نمی‌تواند دوباره تاس بریزد، یک وقفهٔ تأخیر نمی‌تواند پرتابی را تکثیر کند، و هیچ ترفند سمتِ کاربر نمی‌تواند به عدد بعدی دید بزند، چون عدد بعدی روی گوشی شما نیست که خوانده شود: روی سرور ساخته می‌شود، آن هم تنها پس از آنکه هر دو طرف حلقهٔ آن نوبت را رها کنند.

و تاس‌ها هرگز تنظیم نمی‌شوند. «منحنی درگیری» وجود ندارد، مکانیک بازگشت وجود ندارد، به بازیکنانِ در سلسلهٔ باخت هیچ تقویتی داده نمی‌شود. مولّد نه می‌داند و نه اهمیت می‌دهد چه کسی برنده است.

صفحهٔ بازی: در هر حرکت راستی‌آزمایی می‌شود

اگر خودِ صفحهٔ بازی می‌توانست بلغزد یا دستکاری شود، تاس‌های منصفانه معنای چندانی نداشتند؛ برای همین بازی بر یک مدل سختگیرانهٔ سرور-مرجع اجرا می‌شود. دستگاه شما هرگز به سرور نمی‌گوید صفحه چه شکلی است، تنها نیّت شما را می‌فرستد («این مهره را از خانهٔ ۱۳ به خانهٔ ۸ حرکت بده»). سرور آن حرکت را در برابر قوانین رسمی و صفحهٔ رسمی می‌سنجد؛ حرکت‌های غیرقانونی، هر چه یک کاربرِ دستکاری‌شده ادعا کند، به‌سادگی رد می‌شوند.

سپس بررسی دوگانه می‌آید: با هر به‌روزرسانی وضعیت، سرور یک اثر انگشت فشرده (هش) از وضعیت واقعی صفحه پخش می‌کند. دستگاه شما همان اثر انگشت را از صفحهٔ محلی خود حساب می‌کند و مقایسه می‌کند. اگر حتی یک مهره فرق داشته باشد، کاربر نسخهٔ خود را دور می‌ریزد و از سرور همگام‌سازی می‌کند. بدین‌سان اثبات‌پذیر است که هر دو بازیکن در هر لحظه به یک بازی نگاه می‌کنند، ناهمگامی‌ها در یک رفت‌وبرگشت خود را درمان می‌کنند، و هیچ پنجره‌ای نیست که بتوان بر روی صفحه‌ای کهنه یا دستکاری‌شده بازی کرد.

حریفان: مسابقه‌چینی با Glicko-2

انصاف به این هم بستگی دارد که با چه کسی روبه‌رو می‌شوید. رتبه‌بندی اینجا از Glicko-2 استفاده می‌کند، جانشین امروزیِ اِلو که هم توان بازی شما و هم اطمینان سیستم به آن برآورد را دنبال می‌کند، تا بازیکنان تازه به‌جای آنکه پنجاه بازی سنگِ پلهٔ دیگران باشند، به‌سرعت به سطح واقعی خود نزدیک شوند. مسابقه‌چینی شما را با حریفانی هم‌رتبه روبه‌رو می‌کند، و نتایج رتبه‌دار پس از هر بازی به سیستم بازخورد داده می‌شوند.

نتیجه: وقتی می‌برید، همتایی را از میدان به در کرده‌اید. وقتی می‌بازید، چیز واقعی‌ای برای آموختن هست، اغلب در راهنماهای راهبرد.

تاس منصفانه واقعاً چه حسی دارد

این هم حقیقتِ ناخوشایند: تاس‌های حقیقتاً تصادفی پرنوسان‌تر از آنچه بیشتر مردم انتظار دارند حس می‌شوند. تصادف واقعی چهار دبل پشت سر هم، رقص‌های ورود در برابر خانهٔ تک‌مهره‌ای، و معجزه‌های آخرین تاس می‌سازد، دقیقاً با همان بسامدی که احتمال پیش‌بینی می‌کند. یک ضربهٔ ۱۷ از ۳۶ بیش از یک‌چهارم مواقع دو بار پشت سر هم خطا می‌رود. حافظه رسوایی‌ها را نگه می‌دارد و روزمرّگی را دور می‌اندازد، و برای همین است که هر بازیکن آنلاینِ باتجربه یک داستان «تاس دستکاری‌شده» دارد، اما هیچ بازرسی آماری‌ای اینجا حتی یکی از آن‌ها را تأیید نکرده است.

اگر می‌خواهید غریزهٔ خود را واسنجی کنید، راهنمای مبانی احتمال اعداد واقعی را می‌گستراند: ۳۶ ترکیب، احتمال ضربه در هر فاصله، شانس ورود از حاجز. دانستن اینکه هر عدد معیّن در ۳۶ نوبت ۱۱ بار می‌آید، «بدشانسی محال» را به «یک سه‌شنبهٔ عادی» بدل می‌کند.

تعهد ما

  • تاس‌های تولیدشده روی سرور و اثبات‌پذیر منصفانه: هرگز روی دستگاه ریخته نمی‌شوند، هرگز برای هیچ بازیکن یا موقعیتی تنظیم نمی‌شوند و از ورودی‌هایی ساخته می‌شوند که هر دو طرف پیش از نخستین تاس به آنها متعهد می‌شوند؛ با پایان بازی هر تاس از سابقهٔ منتشرشده بازتولید می‌شود و اینکه مسابقه از آنِ شما بوده را برنامه تأیید می‌کند.
  • اِعمال قانون در سرچشمه: هر حرکت را سرور راستی‌آزمایی می‌کند؛ کاربرهای دستکاری‌شده چیزی به دست نمی‌آورند.
  • راستی‌آزمایی پیوستهٔ صفحه: در هر به‌روزرسانی با هش بررسی می‌شود، در هر ناهمخوانی خود را درمان می‌کند.
  • جفت‌سازی بر پایهٔ مهارت: رتبه‌های Glicko-2 و مسابقه‌چینی بر پایهٔ رتبه.

تاس منصفانه یعنی تنها برتریِ باقی‌مانده بر سرِ میز، مهارت است، و مهارت آموختنی است. با قوانین آغاز کنید، با راهبرد تیزش کنید، و زنده آزمایشش کنید: میز زیر رایگان است، در مرورگر شما، بدون هیچ نصبی.

پرسش‌های پرتکرار

آیا تاس‌های تخته‌نرد آنلاین دستکاری شده‌اند؟

نه، و برای این کار لازم نیست حرف ما را باور کنید. در یک مسابقهٔ آنلاین تمام‌شده هر تاس از ورودی‌هایی می‌آید که پیش از بازی تعهد شده‌اند: ما تعهد خود را نسبت به بذر سرّی‌مان منتشر می‌کنیم، برنامهٔ هر دو بازیکن نیز هر یک به زنجیرهٔ خود متعهد می‌شود، و سپس هر تاس از هر طرف یک حلقهٔ تازه خرج می‌کند؛ کسی که نوبتش است نخست منتشر می‌کند و حریف حلقهٔ خود را تنها پس از قفل‌شدن آن رها می‌کند. تا هر دو طرف سهم خود را ندهند هیچ تاسی وجود ندارد، پس هیچ‌کس، از جمله خود ما، نمی‌تواند تاسی را انتخاب کند، عوض کند یا بی‌سروصدا دوباره بریزد؛ این ادعا دربارهٔ مقدار یک تاسِ انجام‌شده است و از آن فراتر نمی‌رود: لغو مسابقه، پیامی که نمی‌رسد و اینکه وقت چه کسی تمام شد، بیرون از این اثبات‌اند. هر کسی می‌تواند هر تاس یک بازی تمام‌شده را از سابقهٔ منتشرشده در همین صفحه بازتولید کند، و تأیید اینکه آن سابقه مسابقهٔ خودِ شماست گامی است که به برنامه تعلق دارد، چون مقادیری را که دستگاه شما پیش از بازی قفل کرده نزد خود دارد. تاس‌ها هرگز در گوشی شما ساخته نمی‌شوند و هرگز برای کمک یا زیان به بازیکنی، هدایت بازی‌ها یا اثرگذاری بر نتایج تنظیم نمی‌شوند.

چرا به نظر می‌رسد تاس‌های من از حریفم بدتر است؟

چون حافظه انسان جانبدارانه است: ضربه‌های دردناک به یاد می‌مانند و تاس‌های معمولی فراموش می‌شوند. در یک بازی، شانس تاس واقعاً نوسان دارد، تخته‌نرد همین است. اما در بازی‌های بسیار، همه چیز دقیقاً برابر می‌شود و کسانی که پیوسته می‌برند همان‌هایی‌اند که با همان توزیع تاس تصمیم‌های بهتری می‌گیرند. راهنمای احتمالات ما نشان می‌دهد که شانس واقعی چه شکلی است.

آیا حریف من می‌تواند تقلب کند یا صفحه را دستکاری کند؟

نه. سرور تنها مرجع بازی است: تاس را تولید می‌کند، قانونی بودن هر حرکت را بررسی می‌کند و آن را روی صفحه رسمی اعمال می‌کند. یک برنامه دستکاری‌شده نمی‌تواند حرکت غیرقانونی بفرستد، سرور به‌سادگی هر چیزی را که قواعد اجازه نمی‌دهند رد می‌کند، و صفحه هر دو بازیکن در هر به‌روزرسانی با یک هش رمزنگاری در برابر صفحه سرور پیوسته تأیید می‌شود.

همسان‌سازی چگونه منصفانه می‌ماند؟

رتبه‌بندی از سیستم Glicko-2 استفاده می‌کند، نسخه‌ای مدرن از Elo که نه‌تنها قدرت شما بلکه میزان اطمینان سیستم از آن را نیز دنبال می‌کند. همسان‌سازی شما را با حریفانی هم‌رتبه روبه‌رو می‌کند، تا بردها از پیشی گرفتن بر هماوردها بیاید، نه از درو کردن تازه‌واردها.

آموخته‌ها را به کار ببرید

سریع‌ترین راه یادگیری تخته‌نرد، بازی کردن آن است. همین حالا در مرورگر خود با بازیکنان واقعی بازی کنید: رایگان، بدون نصب و بدون ثبت‌نام.

تخته‌نرد رایگان بازی کنیددر مرورگر · بدون نصب