اپنی پروڈکٹ · شطرنج کھیلیں اور سیکھیں

شطرنج کا پلیٹ فارم، پہلی چال سے بنایا گیا۔

chessGM شطرنج کی مفت ایپ ہے: لائیو آن لائن کھیل، انسان جیسے بوٹس، وائس کوچ کے ساتھ مکمل گیم ریویو، ریٹڈ پہیلیاں اور کورسز، انگریزی، بنگلہ اور ہندی میں۔ شطرنج کا انجن، سرور، ایپس اور وائس سروس ہم نے خود لکھے، اور انہیں اپنے ہی انفراسٹرکچر پر چلاتے ہیں۔

ویب اور Google Play (Android) پر لائیو۔ iOS ایپ ایپل کے ریویو میں ہے: جلد App Store پر آ رہی ہے۔

  • Web (PWA)
  • Android
  • iOS
  • iPadOS
ریٹڈ پہیلیاں، ہر ایک انجن سے تصدیق شدہ
15,200
کورسز، اور صفر سے شروع ہونے والا ایک ٹریک
60
3000 تک محدود Stockfish 19 کے مقابلے میں Elo (200 کھیل؛ Stockfish کا اپنا پیمانہ)
+164
2,500 بیک وقت کھیلوں کے لوڈ ٹیسٹ میں چال لکھنے کا p99
3 ms

ایپ کے اندر

چلتی ہوئی ایپ کی اصل اسکرینز، جیسی اسٹور لسٹنگ میں نظر آتی ہیں۔

کھلاڑیوں کو کیا ملتا ہے

  • لائیو آن لائن کھیل

    بلٹ، بلٹز، ریپڈ اور کلاسیکل میں فوری جوڑی، ریٹڈ یا غیر رسمی، سرور گھڑیوں، Glicko-2 ریٹنگز، دوستوں، چیلنجز، پیغامات اور تماشائیوں کے ساتھ۔

  • انسانوں کی طرح کھیلنے والے بوٹس

    13 اصل کردار اور مشہور کھلاڑیوں کے عوامی کھیلوں سے متاثر بوٹس (ان سے کوئی تعلق نہیں)۔ ہر بوٹ وہی غلطیاں کرتا ہے جو اس ریٹنگ کا انسان کرتا۔

  • کوچ کے ساتھ گیم ریویو

    بورڈ پر Blunder کے تیر، بولے گئے مراحل کے ساتھ “See the line”، چالوں کے لیبل بیجز اور کوچ پینل جو وجہ بتاتا ہے۔ درستی کو chess.com کے 739 عوامی کھیلوں پر پرکھا گیا ہے (عام فرق تقریباً 4 پوائنٹس) اور چالوں کے لیبل chess.com کے Game Review سے ملا کر ٹیون کیے گئے ہیں۔ Chess.com سے کوئی تعلق نہیں۔

  • پہیلیاں اور Puzzle Rush

    تقریباً 15,200 ریٹڈ پہیلیاں، موضوعات، اشاروں اور روزانہ کی پہیلی کے ساتھ۔ 3 منٹ، 5 منٹ اور Survival میں Puzzle Rush، اور اپنی ریٹنگ کے ساتھ آن لائن Rush Battle۔

  • وقفے سے دہرائی والے کورسز

    تقریباً 50 لائنوں والے 30 اوپننگ کورسز، 30 تاکتیکس، مڈل گیم اور اینڈ گیم کورسز، اور 200 ریٹنگ سے شروع ہونے والا مبتدی ٹریک۔ ہر لائن انجن سے تصدیق شدہ ہے اور FSRS سے دہرائی جاتی ہے۔

  • وضاحت کرنے اور بولنے والا کوچ

    ہمارا شطرنج انجن اور وضاحتی قواعد، کوئی چیٹ بوٹ نہیں، انگریزی، بنگلہ اور ہندی میں لکھتے ہیں کہ کیا ملا، کیا چھوٹا اور چال کیوں بری تھی۔ اوپن سورس آواز کے ماڈلز چلانے والی وائس سروس اسے بولتی ہے؛ آوازیں مشین سے بنی ہیں۔ کسی بیرونی AI سروس کو نہیں بلایا جاتا۔

  • آف لائن چلتا ہے، اور اطلاع بھی دیتا ہے

    پہیلیاں، بوٹس، دو کھلاڑیوں کے کھیل اور تجزیہ بورڈ ویب سائٹ اور Android ایپ میں آف لائن چلتے ہیں۔ ویب سائٹ کی نوٹیفیکیشنز ڈیسک ٹاپ اور Android براؤزرز میں کام کرتی ہیں؛ iPhone پر سائٹ کو ہوم اسکرین پر شامل کرنے کے بعد۔

  • مفت، روزانہ حدود اور رضامندی کے ساتھ

    ایپ کے اندر کوئی خریداری نہیں۔ کچھ فیچرز کی روزانہ مفت حدیں ہیں (10 اشارے، 3 گہرے ریویوز، 3 کالز، 3 وائس چیٹ کھیل) اور ایپس میں انعامی اشتہار ہر ایک کا ایک اور اضافہ کرتا ہے۔ نئے کھلاڑیوں کو اشتہارات کے بغیر آغاز ملتا ہے، اور اشتہارات کھلاڑی کی رضامندی کے انتخاب کی پیروی کرتے ہیں (ذاتی نوعیت کے اشتہارات صرف رضامندی سے)۔ Google، Apple یا ای میل سے سائن اِن کریں، اور ایپ میں اپنا اکاؤنٹ حذف کریں۔

  • بوٹس کو ہرائیں، ایک ایک سیڑھی کر کے

    13 مشقی بوٹس کی سیڑھی، آسان ترین سے مشکل ترین تک، ہر ایک کے لیے ہماری اپنی رہنما، مشقی ساتھی، متن کی صورت میں پیسٹ کیے گئے کھیلوں کا جائزہ، آپ کی غلطیوں سے بنی پہیلیاں اور محفوظ پیش رفت۔ یہ کسی اور کے بوٹس سے کبھی نہیں جڑتی۔

  • حریف کو ہرانے کا طریقہ سیکھیں

    chess.com کا صارف نام لکھیں: آپ کا براؤزر اس کھلاڑی کے حالیہ عوامی کھیل chess.com کے عوامی ڈیٹا API سے پڑھتا ہے، اور chessGM انہیں مراحل اور یاد دہانیوں والے منصوبے میں بدل دیتا ہے۔ Chess.com سے کوئی تعلق نہیں۔

  • وائس چیٹ اور کالز

    صرف آواز، ویڈیو نہیں۔ آڈیو براہِ راست دونوں ڈیوائسز کے درمیان جاتی ہے (ریلے کے ذریعے صرف تب جب براہِ راست کنکشن ممکن نہ ہو)؛ ہمارا سرور صرف سیٹ اپ کے پیغامات آگے بڑھاتا ہے اور کچھ ریکارڈ یا محفوظ نہیں ہوتا۔ ہر روز مفت: 3 وائس چیٹ کھیل اور 3 موصول شدہ کالز۔

  • بورڈ اور مہرے

    ہمارے اپنے chessGM مہروں کے سیٹ اور بورڈز، اور اصل آرٹ ورک کے چار پریمیم سیٹ: Ebony & Boxwood، Royal Gold، Marble اور Crystal۔ سب مفت ہیں؛ “Premium” صرف ایک لیبل ہے۔

شروع سے بنایا گیا

ہر تہہ ہماری ہے، کھیل کے اصولوں سے لے کر اس سرور تک جس پر یہ چلتا ہے۔

  1. ایک Go سرور

    ایک ہی Go بائنری HTTP API اور WebSocket ہب چلاتی ہے، اور کھیل کی گھڑیاں، میچ میکنگ، 1,200 ہاؤس بوٹ اکاؤنٹس کا بیڑا (ہمیشہ بوٹ کے لیبل کے ساتھ)، اور پہیلی و کورس انجن چلاتی ہے۔

    • Go
    • WebSocket
    • SQLite (WAL)
    • Glicko-2
  2. ہمارا اپنا شطرنج انجن

    perft سے تصدیق شدہ بٹ بورڈ چالوں کی تخلیق اور الفا بیٹا سرچ، سب Go میں لکھے گئے۔ مکمل طاقت کے لیے ایک چھوٹا نیورل نیٹ ورک (NNUE) شامل ہے جو ہم نے خود تربیت دیا، بنیادی طور پر lichess کی کھلی جانچ پر، کچھ پوزیشنوں کی استاد کے طور پر Stockfish سے پیمائش کے ساتھ؛ کسی اور انجن کے نیٹ ورک کے وزن استعمال نہیں ہوئے۔ یہ Stockfish 19 کے UCI_Elo پیمانے پر تقریباً 3160 ناپتا ہے (10+0.1 پر 200 کھیلوں کے میچ، ایک تھریڈ؛ پچھلا انجن 2840 ناپتا تھا)، ایسا پیمانہ جو FIDE یا ویب سائٹ کی Elo نہیں۔ نئے ورژنز اس سے بھی مضبوط ہیں۔ یہی انجن سرور پر، بڑے نیٹ ورک کے ساتھ، اور براؤزر و ایپس میں WebAssembly میں کمپائل ہو کر، چھوٹے نیٹ ورک کے ساتھ چلتا ہے۔ Game Review، کوچ اور نچلے بوٹس پرانا منجمد انجن استعمال کرتے ہیں، تاکہ ان کے اعداد جوں کے توں رہیں۔

    • Go
    • Bitboards
    • NNUE
    • WebAssembly
  3. ویب ایپ

    TypeScript میں اسٹیٹک SvelteKit ایپ، آف لائن کھیل کے لیے سروس ورکر کے ساتھ، اور زبانیں صرف ضرورت پڑنے پر لوڈ ہوتی ہیں۔

    • SvelteKit
    • TypeScript
    • Service worker
    • PWA
  4. iOS اور Android ایپس

    Capacitor ایپس نیٹو سائن اِن، رضامندی کے ساتھ اشتہارات، پش نوٹیفیکیشنز، نیٹو آواز اور iOS ورژن میں شامل ایپ کی آف لائن کاپی کے ساتھ۔

    • Capacitor
    • AdMob
    • Firebase Cloud Messaging
    • APNs
  5. وائس سروس

    Go میں ٹیکسٹ ٹو اسپیچ سروس، sherpa-onnx پر ایک چھوٹے C معاون کے ساتھ، جو اوپن نیورل آواز کے ماڈلز چلاتی ہے اور جو بولتی ہے اسے کیش کرتی ہے۔ یہی ماڈلز براؤزر میں بھی چلتے ہیں۔

    • Go
    • C
    • sherpa-onnx
    • onnxruntime-web
  6. وائس چیٹ اور کالز

    دونوں ڈیوائسز کے درمیان پیئر ٹو پیئر WebRTC آڈیو، براہِ راست راستہ بند ہونے پر ریلے کے ساتھ۔ سرور صرف سیٹ اپ کے پیغامات آگے بڑھاتا ہے اور روزانہ مفت حدیں گنتا ہے۔

    • WebRTC
    • TURN

آپریشنز

ہم سرورز خود چلاتے ہیں

بیچ میں کوئی گیم بیک اینڈ سروس نہیں: ہمارا اپنا سرور، اپنے ڈیپلائمنٹ، اپنی نگرانی۔

  • nginx اور Cloudflare کے پیچھے ایک خود منظم Linux سرور، شروع سے آخر تک TLS کے ساتھ
  • کھیل کا سرور systemd سروس کے طور پر چلتا ہے؛ WebSockets nginx سے گزرتی ہیں
  • ایک کمانڈ سے ڈیپلائمنٹ: بلڈ، ٹائم اسٹیمپ والی ریلیز اپ لوڈ، سوئچ، ہیلتھ چیک، فوری رول بیک کے لیے پرانی ریلیزز محفوظ
  • روزانہ کئی ڈیپلائمنٹس، ہر ایک سیکنڈوں میں سوئچ ہوتی ہے، ری اسٹارٹ کے دوران انتظار کا صفحہ دکھا کر
  • WAL موڈ میں SQLite، رات کے بیک اپ کے ساتھ
  • Content Security Policy، کلائنٹ IPs پر صرف Cloudflare سے اعتماد، کراس اوریجن تحریریں مسترد، WebSocket کی رفتار کی حدیں

مشکل مسائل جو ہم نے حل کیے

وہ حصے جو کھلاڑیوں کو کبھی نظر نہیں آتے، ہمارے ناپے ہوئے اعداد کے ساتھ۔

  1. کھیل سست کیے بغیر ہر چال محفوظ کرنا

    مسئلہ
    لوڈ کے دوران ہر چال براہِ راست ڈیٹا بیس میں لکھنے سے سب سے سست تحریریں تقریباً 100 ms تک پہنچ جاتی تھیں۔
    ہم نے کیا کیا
    چالیں WAL موڈ کی SQLite پر ہر 250 ms بعد کھیل کے پیچھے بیچ میں لکھی جاتی ہیں، جبکہ گھڑیاں سرور پر رہتی ہیں۔

    نتیجہ لوڈ ٹیسٹ میں 2,500 بیک وقت کھیلوں پر چال لکھنے کا p99 تقریباً 100 ms سے 3 ms۔ پروفائل کوئری 17 ms سے 1.1 ms۔

  2. ایسی درستی جس پر کھلاڑی بھروسا کر سکیں

    مسئلہ
    کھلاڑی اپنی درستی کے اسکور کا موازنہ ان اعداد سے کرتے ہیں جو وہ بڑی شطرنج سائٹس سے پہلے سے جانتے ہیں۔
    ہم نے کیا کیا
    ہم نے اپنے درستی کے ماڈل کو 739 اصل کھیلوں پر chess.com کے شائع شدہ اسکورز کے مقابل پرکھا (ہمارا ان سے کوئی تعلق نہیں)، اور ایسے کھیلوں پر جانچا جو اس نے کبھی نہیں دیکھے تھے۔

    نتیجہ روکے گئے کھیلوں پر درستی میں عام فرق تقریباً 4 پوائنٹس، ہم آہنگی 0.9 کے ساتھ۔ چالوں کے لیبل تقریباً آدھی بار chess.com سے بالکل ملتے ہیں، اور گنتیاں قریب ہیں۔

  3. ایسی پہیلیاں جن کا جواب بالکل ایک ہو

    مسئلہ
    جس پہیلی کے دو اچھے جواب ہوں، یا جو پہلے آئینے کے عکس میں دیکھی جا چکی ہو، کھلاڑی کو ٹوٹی ہوئی لگتی ہے۔
    ہم نے کیا کیا
    ہم پہیلیاں اندرونی طور پر انجن کے خود سے کھیلے گئے کھیلوں اور انسانی ماڈل کے کھیلوں سے بناتے ہیں۔ گہری انجن سرچ ثابت کرتی ہے کہ حل کرنے والی ہر چال واحد ہے، اور تکرار ہٹا دی جاتی ہے، رنگ اور بورڈ کے عکس سمیت۔

    نتیجہ تقریباً 15,200 ریٹڈ پہیلیاں، جن میں تازہ ترین رن کی تقریباً 4,900 نئی ہیں۔

  4. iPhone پر آف لائن، اور اشتہارات بھی چلتے رہیں

    مسئلہ
    Apple کا ویب ویو آف لائن سروس ورکرز صرف ایپ سے بندھے ڈومینز کے ساتھ چلنے دیتا ہے، اور ایپ سے بندھے ڈومینز AdMob کو توڑ دیتے ہیں۔
    ہم نے کیا کیا
    اگلی iOS بلڈ میں ویب ایپ کی اپنی آف لائن کاپی ہے، نیٹو مشترکہ اسٹوریج کے ساتھ جو کنکشن لوٹنے پر سنک ہوتی ہے۔

    نتیجہ اگلی اسٹور بلڈ میں ایپ کے سائز میں صرف +0.06 MB کے بدلے iOS پر مکمل آف لائن کھیل۔

  5. سست نیٹ ورکس پر بھی تیز

    مسئلہ
    ہمارے بہت سے کھلاڑی موبائل ڈیٹا پر ہیں، اور ریویو کا صفحہ لوڈ ہوتے وقت اچھلتا تھا۔
    ہم نے کیا کیا
    اسٹیٹک بلڈ، مانگ پر لوڈ ہونے والی زبانیں، ہر بورڈ اور پینل کے لیے محفوظ جگہ، اور سروس ورکر کیش۔

    نتیجہ سست 4G پر پہلا مواد 2.8 s سے 1.0 s۔ ریویو کے صفحے پر لے آؤٹ کی لرزش 0.81 سے 0۔

  6. ایسے اسکور جنہیں کوئی جعلی نہ بنا سکے

    مسئلہ
    جب فون طے کرے کہ کون سا جواب درست ہے اور کتنا وقت لگا تو لیڈر بورڈز میں دھوکے کی گنجائش پیدا ہو جاتی ہے۔
    ہم نے کیا کیا
    Puzzle Rush کے جوابات سرور پر جانچے اور سرور کی گھڑی سے ناپے جاتے ہیں۔ اگر 5 سیکنڈ میں کوئی انسان نہ ملے تو ہاؤس بوٹ Rush Battle میں شامل ہو جاتا ہے، جو اپنی ریٹنگ کے مطابق رفتار اور درستی سے حل کرتا ہے۔

    نتیجہ منصفانہ لیڈر بورڈز، اور ایسے بوٹس جو تقریباً کوئی CPU نہیں لیتے: Rush بوٹس انجن چلانے کے بجائے حل کرنے کی نقل کرتے ہیں، اور کھیل کے بوٹ کی چال چند ملی سیکنڈ لیتی ہے۔

  7. GPU فارم کے بغیر نیورل نیٹ ورک انجن

    مسئلہ
    زیادہ طاقتور انجن کو براؤزر میں اور ایک چھوٹے سرور پر چلنا تھا، اور تربیت کے لیے ایک Mac تھا اور کوئی GPU کلسٹر نہیں۔
    ہم نے کیا کیا
    ہم نے lichess کی کھلی جانچ پر ایک چھوٹا NNUE نیٹ ورک تربیت دیا (زیادہ ڈیٹا سب سے بڑا عنصر تھا: 10M، 20M اور 94M پوزیشنز نے +111 اور پھر +99 Elo دیے)، اسے ہر چال پر شروع سے دوبارہ حساب کرنے کے بجائے بڑھاتی ہوئی تبدیلی سے اپڈیٹ کیا، اور سرور کے پروسیسرز کے لیے تیز کوڈ لکھا جو سادہ ورژن سے بٹ بہ بٹ جانچا جاتا ہے۔ کوئی تبدیلی تب ہی جاری ہوتی ہے جب پچھلے ورژن کے خلاف میچ کہے کہ وہ جیتتی ہے۔

    نتیجہ 600 خود سے کھیلے گئے کھیلوں میں پچھلے انجن پر +349 ± 37 Elo، اور 3000 تک محدود Stockfish 19 سے 164 Elo اوپر اور 3190 تک محدود Stockfish کے تقریباً برابر (ہر ایک کے 200 کھیل، 10+0.1؛ Stockfish کی حد اس کا اپنا پیمانہ ہے، ریٹنگ فہرست نہیں)۔

  8. روزانہ مفت حدیں، ایسے اشتہار سے بڑھتی ہیں جسے جعلی نہیں بنایا جا سکتا

    مسئلہ
    کھلاڑی ایک اور اشارے، گہرے ریویو، کال یا وائس چیٹ کھیل کے لیے اشتہار دیکھ سکتا ہے، اور اکیلے فون پر کوئی چیز خود کو یہ انعام نہیں دے سکتی۔
    ہم نے کیا کیا
    سرور انعام تب دیتا ہے جب اسے اشتہار کے ملاحظے کی Google AdMob کی دستخط شدہ سرور سائیڈ تصدیق ملے (ایپ سے تصدیق شدہ محدود متبادل کے ساتھ)، اور وہ انعامات اور روزانہ حدود کو خود جانچتا، محدود کرتا اور گنتا ہے۔

    نتیجہ ہر روز مفت: 10 اشارے، 3 گہرے ریویوز، 3 کالز اور 3 وائس چیٹ کھیل، اور ہر انعامی اشتہار پر ہر ایک کا ایک اور (طے شدہ اقدار؛ آپریٹر انہیں بدل سکتا ہے)۔

پروڈکٹ کی طرح جانچا گیا، ڈیمو کی طرح نہیں

  • چالوں کی تخلیق perft سے معلوم پوزیشنوں پر جانچی گئی
  • انجن کی تبدیلی تب ہی جاری ہوتی ہے جب پچھلے ورژن کے خلاف میچ کہے کہ وہ جیتتی ہے، اور طاقت مقررہ سطحوں پر Stockfish کے مقابل جانچی جاتی ہے
  • سرور کے پروسیسرز کے لیے تیز انجن کوڈ سادہ ورژن سے بٹ بہ بٹ جانچا گیا
  • سرور انٹیگریشن ٹیسٹ، انجن ٹیسٹ اور WebAssembly بلڈ ٹیسٹ
  • ہزاروں بیک وقت کھیلوں کی نقل کرنے والے لوڈ ٹیسٹ
  • بولے گئے کوچ کے جوابات نئے جملے کے لیے 0.3–2 s میں، کیش ہونے پر فوراً، 18 آوازوں کے ساتھ

ٹیکنالوجی

  • Go
  • SQLite
  • WebSocket
  • SvelteKit
  • TypeScript
  • NNUE
  • WebAssembly
  • WebRTC
  • Capacitor
  • sherpa-onnx
  • nginx
  • Cloudflare
  • systemd

کیرم: ایسا بورڈ گیم جس کی فزکس ہم نے خود لکھی

ہمارا پورا کام دیکھیں

کیا آپ ایسا بنا ہوا گیم یا ریئل ٹائم ایپ چاہتے ہیں؟

ہم گیمز اور ریئل ٹائم پلیٹ فارمز شروع سے آخر تک ڈیزائن، تعمیر اور آپریٹ کرتے ہیں: ایپس، سرورز، اسٹورز اور آپریشنز۔