راهنمای راه‌اندازی ربات دوز
================================

مراحل راه‌اندازی (خیلی ساده و سریع):

۱) کل پوشه dozbot رو تو هاست مربوط به دامین mor.munchigo.az آپلود کن
   (باید ریشه‌ی همون دامین یا ساب‌دامینی که SSL معتبر داره باشه، چون تلگرام فقط با https کار می‌کنه).

۲) فقط همین یک آدرس رو یک‌بار تو مرورگر باز کن:
   https://mor.munchigo.az/doozbot_extracted/dozbot/set_webhook.php

   این فایل خودش:
   - پوشه data و فایل‌های JSON لازم رو می‌سازه
   - وبهوک ربات رو خودکار ست می‌کنه
   - نتیجه رو بهت نشون میده (اگه "ok":true دیدی یعنی تمومه)

۳) تو تلگرام برو به ربات @dozgameibot و بزن /start

همین. نیازی به هیچ تنظیم دستی دیگه‌ای نیست، توکن و آیدی مالک از قبل تو config.php ست شده.

۴) «باخت به خاطر تموم شدن وقت» نیازی به هیچ کرون یا exec ای نداره و خودش
   خودکاره: هر پیامی که به ربات می‌رسه (وبهوک) به‌صورت خودکار چک می‌کنه
   ببینه بازی منقضی‌شده‌ای هست یا نه و همون لحظه به نفع حریف تمومش می‌کنه.
   کاری از دستت لازم نیست.

   اگه ربات ترافیک خیلی کمی داره و می‌خوای این چک حتی بدون هیچ پیامی هم
   دقیق هر چند ثانیه اجرا بشه، می‌تونی (اختیاری) یه سرویس رایگان مثل
   cron-job.org یا UptimeRobot رو هر ۱ دقیقه به این آدرس بزنی، بدون نیاز
   به دسترسی SSH یا crontab هاست:
   https://mor.munchigo.az/doozbot_extracted/dozbot/activate_cron.php?key=3fc6dee818fafd4ae7e999e276a46808

--------------------------------

نحوه بازی کردن:

روش ۱ - پیدا کردن رقیب خودکار (تو پیوی ربات):
تو پیوی @dozgameibot روی «🔍 پیدا کردن رقیب» بزن. اگه کس دیگه‌ای هم همون
لحظه دنبال حریف باشه، فوری بهش وصل میشی و بازی همونجا تو پیوی خودت شروع
میشه (حریف هم تو پیوی خودش همون بازی رو می‌بینه). اگه کسی تو صف نبود،
منتظر می‌مونی تا نفر بعدی بیاد؛ می‌تونی هر وقت خواستی با «❌ لغو جستجو»
از صف خارج بشی.

روش ۲ - ارسال دعوت‌نامه به هر چت (پیوی/گروه/کانال):
از هرجای تلگرام کافیه بنویسی:
   @dozgameibot
یه پنجره‌ی نتایج بالا میاد، گزینه‌ی «🎮 ارسال دعوت‌نامه بازی دوز» رو بزن،
یه کارت دعوت به بازی همونجا فرستاده میشه. کسی که این دعوت‌نامه رو فرستاده
خودکار بازیکن اول (❌) میشه و فقط خودش می‌تونه بازی رو لغو کنه یا بعد از
تمومِ بازی «بازی دوباره» بزنه؛ نفر بعدی که «پیوستن» رو بزنه بازیکن دوم
(⭕) میشه.

روش ۳ - ساخت بازی تو یه گروه:
تو هر گروهی که ربات عضوشه، «🎮 بازی دوز» یا /game رو بزن، «🎮 ساخت بازی
همینجا» یه دعوت‌نامه تو همون گروه می‌سازه که هرکی از اعضای گروه بخواد
می‌تونه بهش بپیونده.

تو همه‌ی این حالت‌ها، تخته‌ی بازی مستقیم داخل همون پیام(ها) با دکمه‌های
شیشه‌ای آپدیت میشه، بدون نیاز به باز شدن هیچ صفحه یا لینکی. اگه تو یه
بازی، طرفی که نوبتشه بیشتر از ۱ دقیقه حرکت نزنه، حریف خودکار برنده میشه
(این چک خودکاره و نیازی به تنظیم اضافه نداره).

⚠️ برای اینکه روش ۲ («فرستنده = بازیکن اول» تو دعوت‌نامه‌ی inline) همیشه
درست و بدون تاخیر کار کنه، دو تا تنظیم تو @BotFather لازمه (یک‌بار و
برای همیشه):
   ۱) `/setinline` رو بزن، ربات dozgameibot رو انتخاب کن، یه متن
      placeholder بفرست (مثلا "بازی دوز بفرست...")
   ۲) `/setinlinefeedback` رو بزن، ربات رو انتخاب کن، گزینه‌ی 100% رو
      بزن
   بدون این دو تا، دعوت‌نامه‌ی inline بازم کار می‌کنه (دکمه‌ش هنوز فعاله
   و اولین کسی که بزنه بازیکن اول میشه)، فقط تضمین «فرستنده = بازیکن
   اول» رو از دست میده.

از همون منوی @dozgameibot می‌تونی «کارت رتبه من» یا «لیدربرد» رو هم به
هر چتی بفرستی.

تو خود ربات (پیوی) هم دکمه‌ی «📤 ارسال بازی به هر چت» هست که مستقیم لیست
چت‌هات رو باز می‌کنه تا انتخاب کنی دعوت‌نامه کجا فرستاده بشه.

--------------------------------

پنل مدیریت:
تو ربات دستور /panel رو بفرست (فقط برای آیدی مالک یعنی 7647255980 کار می‌کنه).
از اونجا به همه‌چی دسترسی داری:
- بن/آزادسازی کاربر
- افزایش/کاهش دستی امتیاز هر کاربر
- تغییر رتبه‌ی هر کاربر به صورت دستی (از لیست کامل لقب‌ها انتخاب می‌کنی)
- ریست کامل آمار یه کاربر (امتیاز/برد/باخت/مساوی/تعداد بازی)
- لیست کاربران و رتبه‌بندی، خروجی txt
- آمار ربات، پیام همگانی (کپی)، فوروارد همگانی، پیام همگانی تو همه‌ی
  گروه‌هایی که ربات عضوشونه
- مدیریت جوین اجباری (افزودن/حذف کانال)

--------------------------------

نکات فنی:
- همه‌چی JSON، بدون هیچ دیتابیسی؛ فایل‌ها تو پوشه data/ ذخیره میشن.
- امتیازبندی: برد +۳، باخت -۲ (تا صفر)، مساوی +۱ برای هر دو نفر.
  اگه خواستی این عددها رو عوض کنی، تو config.php هست (WIN_POINTS و بقیه).
- لیدربرد فقط کسایی که رتبه‌شون از «رابین» بالاتره رو نشون میده (یعنی از
  کارآگاه کونان به بالا)، تا با کاربرای تازه‌کار شلوغ نشه.
- لقب‌ها تو فایل ranks.php هست، هر وقت خواستی می‌تونی ویرایششون کنی.
- زمان مجاز برای هر حرکت ۶۰ ثانیه‌ست (TURN_TIMEOUT_SECONDS تو config.php)
  و این چک به‌صورت خودکار روی هر ترافیک ورودی به ربات اجرا میشه.
- پوشه‌ی webapp/ یه نسخه‌ی بونوس مرورگری بازی دوز (تک‌نفره، رو به هوش مصنوعی)
  هم داره که اختیاریه و به منوی اصلی ربات وصل نیست؛ اگه خواستی جداگانه ازش
  استفاده کنی آدرسش همینه: https://mor.munchigo.az/doozbot_extracted/dozbot/webapp/index.html
- پوشه data/ با یک فایل .htaccess از دسترسی مستقیم مرورگر محافظت شده.
  اگه هاستت Apache نیست (مثلا nginx)، یه قانون مشابه برای بلاک کردن دسترسی
  به پوشه data از تنظیمات سرورت اضافه کن.
