میرا بہترین ٹیٹریس

پروجیکٹ کی گٹ ہب ریپوزٹری



یہ کیا ہے

ٹیٹریس ایک افسانوی کھیل ہے اور ان کھیلوں میں سے ایک ہے جو مجھے بہت پسند ہے۔ مجھے یہ کھیل واقعی بہت پسند ہے اور اسے کھیلنے میں لطف آتا ہے۔ یہ ذہنی دباؤ کم کرنے کا ایک بہترین ذریعہ ہے۔ ایک تفریحی ہفتہ وار منصوبے کے طور پر، میں نے اس کھیل کو وائب کوڈنگ کے اصولوں کو استعمال کرتے ہوئے، ڈیسک ٹاپ اور موبائل دونوں کے لیے بنائے گئے براؤزر گیم/ایپ کے طور پر تیار کرنے کا فیصلہ کیا۔ اس ورژن کا موبائل حصہ پلے-ٹیٹریس سے متاثر ہے، جس میں سوائپ پر مبنی کنٹرولز کے ساتھ موبائل کے لیے بہت اچھا انتظام ہے۔ میرا ٹیٹریس کا تیار کردہ ورژن یہاں دیکھیں اور کھیلیں، یہ وہ ورژن ہے جسے میں ٹیٹریس کا سب سے “بہترین” ورژن سمجھتا ہوں۔



میرے ٹیٹریس ورژن کا گیم پلے، اسے خود یہاں کھیلیں

کوڈ سے آگے

میں نے ٹیٹریس کا کوئی کلون پورٹ فولیو منصوبے کے طور پر یا کچھ نیا سیکھنے کے لیے بنانا شروع نہیں کیا تھا۔ میں نے اسے اس لیے بنایا کیونکہ مجھے واقعی اس کی ضرورت تھی۔ جب میں ذہنی دباؤ کا شکار ہوتا ہوں، خواہ کام پر ایک مشکل ہفتہ گزرا ہو یا بس زندگی کے مسائل بڑھتے جا رہے ہوں، ٹیٹریس ان چند صحت مند چیزوں میں سے ایک ہے جو واقعی مجھے دوبارہ تازہ دم ہونے میں مدد دیتی ہے۔ جب میں دباؤ میں ہوتا ہوں تو عموماً بہت زیادہ کھانا کھاتا ہوں، جو وقت کے ساتھ بڑھتا جاتا ہے، اس لیے ایسی چیز کا ہونا جو کسی نقصان کے بغیر کام کرے، میرے لیے بہت اہم ہے۔ صرف 10 سے 30 منٹ تک بلاکس گرانے کے بعد میرا دماغ یوں محسوس ہوتا ہے جیسے اسے تھوڑا صاف کر دیا گیا ہو۔ میرے لیے یہ محض آرام کرنے کا ایک معمولی طریقہ نہیں ہے، بلکہ یہ ایک سادہ اور مرکوز سرگرمی میں اس دباؤ کو منتقل کرنے کا ذریعہ ہے۔ کچھ دلچسپ تحقیق بھی موجود ہے جس سے ظاہر ہوتا ہے کہ ٹیٹریس دماغ کے دخل انداز یادوں اور دباؤ سے نمٹنے کے طریقے کو متاثر کر سکتا ہے، مثلاً صدمے سے متعلق فلمی تجربات میں، حقیقی حادثات کے بعد زیرِ علاج لوگوں میں، اور قابلِ پیمائش دماغی تبدیلیوں کے ساتھ علاج کے اضافی ذریعے کے طور پر۔ میں اس کھیل کو طبی علاج میں تبدیل کرنے کی کوشش نہیں کر رہا، لیکن یہ دیکھنا دلچسپ ہے کہ شاید حقیقی سائنس اس احساس کی تائید کرتی ہے جو مجھے پہلے ہی ہوتا ہے، یعنی ٹیٹریس واقعی لوگوں کو دباؤ سے نمٹنے میں مدد دے سکتا ہے۔

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

جدید براؤزرز، کلاڈ کوڈ جیسے ایل ایل ایم ٹولز، اور وائب کوڈنگ جیسے طریقۂ کار کے ساتھ آخرکار یہ ٹیٹریس خود بنانے کا مناسب وقت محسوس ہوا جسے میں چاہتا تھا۔ تیز، کم سے کم، اشتہارات کے بغیر، اکاؤنٹس کے بغیر، ایپ اسٹور کے بغیر۔ بس ایک ایسا براؤزر گیم جو میرے فون اور لیپ ٹاپ پر کام کرے اور جس پر مکمل اختیار میرا ہو۔ تقریباً ایک دن میں میرے پاس ایک کام کرنے والا ورژن تھا، اور ڈیسک ٹاپ اور موبائل دونوں پر اسے مضبوط بنانے اور اس کا احساس درست کرنے کے لیے تقریباً ایک ہفتے تک وقفے وقفے سے کام کرنے کے بعد، میں اس سے خوش تھا۔

میں اسے اس لیے شیئر کر رہا ہوں کیونکہ اگر یہ صرف ایک دوسرے شخص کو بھی اسی طرح ذہنی دباؤ سے نجات دلانے میں مدد دے جس طرح یہ میری مدد کرتا ہے، تو مجھے بہت خوشی ہوگی۔ یہ ایک چھوٹی سی چیز ہے، لیکن کبھی کبھی چھوٹی سی چیز ہی بالکل وہ ہوتی ہے جس کی آپ کو ضرورت ہوتی ہے۔

خصوصیات

  • کلاسک 10x20 ٹیٹریس بورڈ
  • ڈیسک ٹاپ پر کی بورڈ کے مکمل کنٹرولز اور موبائل پر ٹچ اشاروں کے کنٹرولز
  • معیاری سات-تھیلی پیس رینڈمائزر
  • ہولڈ پیس اور اگلے پیس کے پیش نظارے
  • گھوسٹ پیس پروجیکشن، جو دکھاتا ہے کہ پیس کہاں جا کر گرے گا
  • متحرک لاک تاخیر کے ساتھ لیول پر مبنی رفتار کا منحنی خط
  • اسکور، لائنز، لیول، اور بلند ترین اسکور کی ٹریکنگ، جو مقامی اسٹوریج میں محفوظ رہتی ہے
  • سافٹ ڈراپ اور ہارڈ ڈراپ کے اسکور
  • گیم کے اندر مینو، جس میں دوبارہ شروع کرنا، ری اسٹارٹ، چھوڑنا، موسیقی/SFX کو خاموش کرنا، اور سورس کوڈ کا لنک شامل ہے
  • صوتی اثر کے ساتھ لائن صاف ہونے کی فلیش اینیمیشن
  • آئی او ایس محفوظ علاقے کی معاونت (ڈائنامک آئی لینڈ، نوچ، ہوم انڈیکیٹر)
  • سروس ورکر کے ذریعے آف لائن معاونت (پہلی بار دیکھنے کے بعد انٹرنیٹ کے بغیر کام کرتا ہے)
  • پی ڈبلیو اے کے طور پر انسٹال کرنے کی سہولت (ایپ جیسا تجربہ حاصل کرنے کے لیے آئی او ایس/اینڈرائیڈ کی ہوم اسکرین پر شامل کریں)

کنٹرولز

ڈیسک ٹاپ (کی بورڈ)

عمل کلیدیں
حرکت ← → یا A D
سافٹ ڈراپ ↓ یا S
ہارڈ ڈراپ Space
گھڑی کی سمت گھمائیں ↑ W X
گھڑی کی مخالف سمت گھمائیں Z
ہولڈ C یا LShift
مینو Esc یا M
سورس کوڈ G (عنوان کی اسکرین)

موبائل (ٹچ)

عمل اشارہ
حرکت بائیں / دائیں سوائپ کریں
سافٹ ڈراپ دبائے رکھیں اور نیچے گھسیٹیں
ہارڈ ڈراپ تیزی سے نیچے فلک کریں
گھڑی کی سمت گھمائیں ٹیپ کریں
ہولڈ تیزی سے اوپر فلک کریں

مشکل کا منحنی خط

اس ورژن میں رفتار کے منحنی خط اور لاک تاخیر کو اس تحقیق کے ذریعے ترتیب دیا گیا ہے کہ کلاسک اور جدید ٹیٹریس گیمز مشکل کے بڑھنے کو کس طرح سنبھالتے ہیں۔ اصل این ای ایس ٹیٹریس میں لیول 29 پر کششِ ثقل ایک فریم میں ایک قطار تک پہنچ جاتی ہے، جو مشہور “کل اسکرین” بن گئی، جہاں زیادہ تر انسانوں کے لیے کھیل مؤثر طور پر ناقابلِ کھیل ہو جاتا ہے۔ یہ دراصل کوئی منصوبہ بند اختتام نہیں تھا، بلکہ ہارڈویئر اور اس بات کا ضمنی اثر تھا کہ ڈی اے ایس (تاخیر سے خودکار منتقلی) ڈراپ کی رفتار کا ساتھ دینے کے لیے بہت سست تھا۔ ولیس گبسن نے 2024 میں اس وقت یہ ثابت کیا جب انہوں نے اس سے آگے بڑھ کر لیول 157 پر کھیل کریش کر دیا۔



کلاسک 1989 این ای ایس ٹیٹریس کا گیم پلے (اصل ماخذ)

TGM (ٹیٹریس: دی گرینڈ ماسٹر) جیسے جدید گیمز نے اس مسئلے کو مختلف انداز سے حل کیا۔ پیسز کو اس وقت تک تیزی سے گرانے کے بجائے جب تک کھیل ٹوٹ نہ جائے، TGM کششِ ثقل کو 20G (فوری ڈراپ) پر محدود کرتا ہے اور پھر مشکل بڑھانے کے لیے لاک تاخیر اور DAS جیسی دوسری ٹائمنگ ونڈوز کو مزید سخت کرتا ہے۔ ٹیٹریس گائیڈ لائن معیار 15 تک موو ری سیٹس کے ساتھ 500ms لاک تاخیر استعمال کرتا ہے، اور یہ ورژن بھی اسی کی پیروی کرتا ہے۔ TGM2 ڈیتھ موڈ اور TGM3 شیریسے پر کی گئی تحقیق سے ظاہر ہوا کہ مسابقتی کھیل کے لیے عملی کم از کم حد تیز DAS کے ساتھ تقریباً 250ms لاک تاخیر ہے، جبکہ 133ms سے کم کوئی بھی مدت ماہرین کا میدان ہے۔

ان سب کی بنیاد پر، یہاں رفتار کا منحنی خط کششِ ثقل کو 33ms فی قطار پر محدود کرتا ہے (این ای ایس لیولز 19 سے 28 کے مشابہ)، بجائے اس کے کہ فوری ڈراپ تک جائے، اور اعلیٰ لیولز پر DAS کو 170ms سے کم کر کے 100ms تک لایا جاتا ہے تاکہ آپ لاک تاخیر کے دوران بورڈ عبور کر سکیں۔ مقصد یہ تھا کہ اعلیٰ لیولز انتہائی تیز لیکن پھر بھی منصفانہ محسوس ہوں، اور اختتامی کھیل کی مشکل کے لحاظ سے اصل این ای ایس کے اس طریقے کے بجائے ٹیٹریس 99 اور TGM کے انداز سے زیادہ قریب ہوں جس میں محض خام رفتار کو آپ کے ان پٹس سے آگے نکلنے دیا جاتا ہے۔

پردے کے پیچھے

  • ڈیسک ٹاپ اور موبائل (عمودی رخ) دونوں کے لیے بہتر بنایا گیا موافق ڈیزائن
  • کارکردگی کے لیے پہلے سے رینڈر کیے گئے بلاک اسپرائٹس اور گرڈ کا پس منظر
  • پیس کی گردش کے لیے سپر روٹیشن سسٹم (SRS) طرز کے وال ککس کا استعمال
  • قابلِ اعتماد فلک اور ڈریگ کے فرق کے لیے رفتار پر مبنی ٹچ اشاروں کی شناخت
  • کششِ ثقل کی رفتار اور لاک تاخیر کے لیے لیول پر مبنی ٹائمنگ سسٹم
  • بلند ترین اسکور اور آڈیو سیٹنگز localStorage کے ساتھ محفوظ رہتی ہیں
  • پسِ منظر کی موسیقی کا ماخذ NmCCQxVBfyM
  • لائن صاف ہونے کے صوتی اثر کا ماخذ UMViM2tHrOk
  • یہ منصوبہ MIT لائسنس کے تحت مکمل طور پر اوپن سورس ہے
  • درج ذیل مصنوعی ذہانت کے ٹولز کے ساتھ بنایا گیا:

اختتامی خیالات

یہ ان منصوبوں میں سے ایک تھا جہاں محرک تکنیکی نہیں بلکہ ذاتی تھا۔ میں بس ٹیٹریس کا ایک ایسا ورژن چاہتا تھا جو میری خواہش کے مطابق کام کرے، اشتہارات کے بغیر، اضافی ہارڈویئر کے بغیر، اور کسی دوسرے شخص کی ایسی ایپ پر انحصار کیے بغیر جو کسی بھی وقت غائب یا تبدیل ہو سکتی ہے۔ جدید اے آئی ٹولز اور وائب کوڈنگ کا استعمال کرتے ہوئے تقریباً ایک ہفتے کے وقفے وقفے سے کام میں خیال سے ایک نکھرے ہوئے کھیل تک پہنچنے میں کامیاب ہونا اس بارے میں بہت کچھ بتاتا ہے کہ ہم اس وقت سافٹ ویئر کی تیاری کے معاملے میں کہاں کھڑے ہیں۔

میں اس ورژن کو بنانے کے بعد سے تقریباً روزانہ استعمال کر رہا ہوں، اور یہ اب بھی بالکل وہی کرتا ہے جس کی مجھے ضرورت ہے۔ یہ مجھے کسی بھی ایسی چیز سے کچھ دیر کے لیے دور ہونے میں مدد دیتا ہے جو مجھے ذہنی دباؤ میں مبتلا کر رہی ہو، چند منٹوں کے لیے کسی سادہ چیز پر توجہ مرکوز کرنے میں مدد دیتا ہے، اور پھر زیادہ صاف ذہن کے ساتھ واپس آنے دیتا ہے۔ اگر آپ اسے آزما کر دیکھیں اور یہ آپ کے لیے بھی یہی کرے، تو یہ بہترین نتیجہ ہوگا جس کی میں خواہش کر سکتا ہوں۔ اور اگر آپ اسے فورک کرنا، رفتار کے منحنیے میں تبدیلی کرنا، کنٹرولز تبدیل کرنا، یا اس کی بنیاد پر کچھ نیا بنانا چاہتے ہیں، تو ضرور کریں۔ اگر آپ کو کوئی خرابی ملے یا آپ کے پاس کوئی تجویز ہو، تو بلا جھجھک گٹ ہب ذخیرے پر ایک مسئلہ درج کریں۔ اوپن سورس بنانے کا پورا مقصد یہی ہے۔