এই পৃষ্ঠাটি ব্যাখ্যা করে কিভাবে আপনার বিদ্যমান আইডেন্টিটি বা ক্লাউড সেভ সলিউশনের সাথে প্লে গেমস সার্ভিসেস সাইন ইন একীভূত করবেন। যদিও এই সুপারিশগুলো ঐচ্ছিক, তবুও এগুলো আপনাকে পিসিতে গুগল প্লে গেমসের জন্য ক্লাউড সেভের প্রয়োজনীয়তাগুলো পূরণ করতে সাহায্য করতে পারে। আপনার বাস্তবায়ন এই প্রয়োজনীয়তাগুলো পূরণ করছে কিনা তা যাচাই করতে ধারাবাহিকতার প্রয়োজনীয়তা এবং প্রত্যাশিত আচরণের পৃষ্ঠাগুলো ব্যবহার করুন।
খেলোয়াড়ের অবস্থা পুনরুদ্ধার করুন
আপনার গেমের ব্যাকএন্ডে, গেম অ্যাকাউন্টগুলো সম্ভবত এমন কোনো শনাক্তকারী দ্বারা চিহ্নিত করা থাকে, যা আপনাকে আপনার গেমের মধ্যে তাদের অগ্রগতি সংগ্রহ ও আপডেট করতে দেয়। সংক্ষেপে আমরা একে আপনার অ্যাকাউন্ট আইডি বলব। যখন কোনো প্লেয়ার প্লে গেমস সার্ভিসেস-এ সাইন ইন করে, তখন আপনি সেই অথেনটিকেশন ব্যবহার করে একটি নতুন শনাক্তকারী—প্লে গেমস সার্ভিসেস প্লেয়ার আইডি—পেতে পারেন, যা ক্লাউড সেভের প্রয়োজনীয়তা পূরণে ব্যবহৃত হয়।

যখন কোনো খেলোয়াড় প্লে গেমস সার্ভিসেস দিয়ে লগ ইন করেন, তখন আপনাকে নিম্নলিখিতভাবে এগিয়ে যেতে হবে:
- ক্লায়েন্ট থেকে OAuth কোডটি সংগ্রহ করে আপনার সার্ভারে পাঠিয়ে দিন।
- অথেনটিকেশন টোকেনটি বিনিময় করুন এবং প্লে গেমস সার্ভার থেকে একটি যাচাইকৃত প্লে গেমস সার্ভিসেস আইডি সংগ্রহ করুন। এটি নিশ্চিত করে যে আইডিটি বিশ্বস্ত এবং কোনো হ্যাক হওয়া ডিভাইস ব্যবহার করে অন্য খেলোয়াড় সেজে কেউ এটি ব্যবহার করছে না।
- ডিভাইসের অবস্থা এবং যেকোনো সংযুক্ত শনাক্তকারীর উপর ভিত্তি করে একটি গেম অ্যাকাউন্ট সমাধান করার চেষ্টা করা হচ্ছে।
আপনার গেমে দুটি প্রধান নতুন সিনারিও অন্তর্ভুক্ত করতে হবে:
- আপনার ব্যাকএন্ডে প্লে গেমস সার্ভিসেস আইডিগুলো সংরক্ষণ করা এবং সেগুলোকে বিদ্যমান অ্যাকাউন্ট আইডিগুলোতে কোনো না কোনো উপায়ে যুক্ত করা, যেমন নিম্নলিখিতভাবে:
- নতুন খেলোয়াড়দের অগ্রগতি একটি নির্দিষ্ট সময়ে স্বয়ংক্রিয়ভাবে প্লে গেমস সার্ভিসেস-এর সাথে সংযুক্ত হয়ে যাওয়া উচিত। (যেমন: গেম চালু করার সময়, টিউটোরিয়াল বা নির্দিষ্ট সংখ্যক লেভেল শেষ করার পর, ইত্যাদি)।
- বিদ্যমান খেলোয়াড়দের ক্ষেত্রে, আপনার গেমের যে সংস্করণে প্লে গেমস সার্ভিসেস ভি২ (Play Games Services V2) সমন্বিত আছে, সেটিতে আপডেট করার পর তাদের বর্তমান অগ্রগতি স্বয়ংক্রিয়ভাবে প্লে গেমস সার্ভিসেস-এর সাথে সংযুক্ত হয়ে যাবে।
- প্লে গেমস সার্ভিসেস আইডি এক বা একাধিক অ্যাকাউন্টের সাথে লিঙ্ক করা যেতে পারে এবং সেই অ্যাকাউন্টগুলো থেকে প্লে গেমস সার্ভিসেস ডি-লিঙ্কও করা যেতে পারে, তবে এটি অবশ্যই অন্তত একটি বৈধ অ্যাকাউন্টের সাথে লিঙ্ক করা থাকতে হবে।
- প্লে গেমস সার্ভিসেস প্লেয়ার আইডির উপর ভিত্তি করে সাইন আউট করা বা নতুন ডিভাইসে গেমের অগ্রগতি স্বয়ংক্রিয়ভাবে পুনরুদ্ধার করা হচ্ছে।
বিদ্যমান অ্যাকাউন্টগুলিতে প্লে গেমস সার্ভিসেস আইডি কীভাবে সংরক্ষণ এবং বরাদ্দ করা হবে, তা নমনীয়, যেমনটি নীচের উদাহরণগুলিতে উল্লেখ করা হয়েছে। মনে রাখার মতো প্রধান শর্তগুলি হলো: প্লেয়ারকে যেন তার প্লে গেমস সার্ভিসেস আইডি এবং গেমের অগ্রগতির মধ্যে সংযোগ স্থাপনের জন্য ম্যানুয়ালি সাইন ইন করতে বা অন্য কোনো পরিচয় ব্যবস্থার সাথে লিঙ্ক তৈরি করতে না হয়, এবং প্লেয়ারের অগ্রগতি যেন বিভিন্ন প্ল্যাটফর্মে নির্বিঘ্নে পুনরুদ্ধার করা যায়।
আপনার সলিউশন ডিজাইন করার সময়, প্রথমে আপনার বিদ্যমান সিস্টেম এবং এটি কীভাবে বিভিন্ন আইডেন্টিটি প্রোভাইডারকে অন্তর্ভুক্ত করে তা দেখুন। কিছু সিস্টেম প্রতি অ্যাকাউন্টে একটি একক আইডেন্টিফায়ার ব্যবহার করে, আবার অন্যগুলো প্রতি অ্যাকাউন্টে একাধিক আইডেন্টিফায়ার ব্যবহার করে।
যদি আপনি প্রতিটি অ্যাকাউন্ট আইডিকে শুধুমাত্র একটি শনাক্তকারীর সাথে যুক্ত করতে পারেন, তাহলে আপনাকে এর সাথে প্লে গেমস সার্ভিসেস যুক্ত করার জন্য সাপোর্ট যোগ করতে হবে। নিম্নলিখিত সমাধানগুলিতে দেখানো হয়েছে কীভাবে এটি করতে হয়।
উদাহরণ সমাধান
উদাহরণ সমাধানগুলোর মধ্যে বাইন্ডিং এবং রিকল সমাধান অন্তর্ভুক্ত রয়েছে।
বাইন্ডিং হলো প্লে গেমস সার্ভিসেস আইডি-কে কোনো অ্যাকাউন্টের অবস্থার সাথে স্থায়ীভাবে বা আধা-স্থায়ীভাবে যুক্ত করার প্রক্রিয়া। বাইন্ডিংয়ের ক্ষেত্রে, প্লে গেমস সার্ভিসেস-এর মাধ্যমে পুনরুদ্ধার করা মূল অ্যাকাউন্টটি খেলোয়াড়ের কোনো পদক্ষেপ ছাড়া পরিবর্তিত হয় না, এমনকি যদি তিনি আপনার গেমের মধ্যে লগ আউট করে অন্য কোনো অ্যাকাউন্ট দিয়ে লগ ইনও করেন। আমরা অ্যাকাউন্ট বাইন্ডিং অংশে এই বিষয়টি নিয়ে আলোচনা করেছি।

রিকলের মাধ্যমে, গেম ডেভেলপার হিসেবে আপনি প্লে গেমস সার্ভিসেস আইডি এবং সর্বশেষ দেখা অ্যাকাউন্ট(গুলো)-এর একটি শিথিল ম্যাপিং সংরক্ষণ করেন, যাতে প্লেয়ার অন্য কোনো ডিভাইসে প্লে গেমস সার্ভিসেস দিয়ে সাইন ইন করার সময় তা পুনরুদ্ধার করতে পারে। প্রতিবার যখন প্লেয়ার একই প্লে গেমস সার্ভিসেস আইডি ব্যবহার করে অন্য কোনো গেম অ্যাকাউন্টে লগ ইন করে, তখন এই বাইন্ডিংটি পরিবর্তিত হয়। এখানে একটি উদাহরণ ফ্লোচার্ট দেওয়া হলো, যা নিয়ে আমরা নিচের রিকল রিসেন্ট অ্যাকাউন্টস উদাহরণে আরও বিস্তারিত আলোচনা করেছি:


নিচের সমাধানগুলোর সাথে আরও ইউজার ফ্লো-এর উদাহরণ সংযুক্ত করা হয়েছে।
অ্যাকাউন্ট বাইন্ডিং
আপনার গেমে যদি একাধিক অ্যাকাউন্ট ব্যবহারকারী প্লেয়ার বেশি না থাকে, অথবা আপনি যদি গেমারদের আপনার গেমে একটিমাত্র অ্যাকাউন্ট ব্যবহারে উৎসাহিত করতে চান, তাহলে বাইন্ডিং সম্ভবত আপনার গেমের জন্য সেরা সমাধান। এই উদাহরণে, আপনি প্লে গেমস সার্ভিসেস-এ সাইন ইন করার পর প্রথম যে অ্যাকাউন্টটি দেখা যায় (সেটি গেস্ট অ্যাকাউন্ট হোক বা অন্য কোনো আইডেন্টিটি প্ল্যাটফর্মের সাথেও বাইন্ড করা থাকুক), সেটিকে প্লে গেমস সার্ভিসেস প্লেয়ার আইডির সাথে বাইন্ড করে দেন। এই বাইন্ডিংয়ের পর, নতুন ডিভাইসে সেই বাইন্ড করা অ্যাকাউন্টটি স্বয়ংক্রিয়ভাবে পুনরুদ্ধার হয়ে যায়। যেহেতু আমরা একটি স্ট্রং বাইন্ডিং করছি, তাই প্লেয়ার গেমের মধ্যে অ্যাকাউন্ট পরিবর্তন করার জন্য প্লে গেমস সার্ভিসেস প্রোফাইলও বদলাতে পারে, এবং এই পরিস্থিতিতে আপনি প্লেয়ারকে নিশ্চিত করার জন্য অনুরোধ করতে পারেন।

যদি একাধিক অ্যাকাউন্টের মধ্যে বিরোধ দেখা দেয়, তবে আমরা খেলোয়াড়কে একটি অ্যাকাউন্ট বেছে নিতে বলার পরামর্শ দিই। এই ধরনের বিরোধ কেবল সেইসব খেলোয়াড়ের ক্ষেত্রেই ঘটা উচিত যাদের আপনার গেমে একাধিক অ্যাকাউন্ট রয়েছে, এবং তাই সম্ভবত তাদের একটি নির্দিষ্ট অ্যাকাউন্ট দিয়ে খেলার জ্ঞান ও ইচ্ছা দুটোই আছে।
একবার অ্যাকাউন্টটি সমাধান হয়ে গেলে, সাইন-ইন শনাক্তকারীতে কোনো পরিবর্তন না হলে আপনার গেমটি প্লেয়ারের পছন্দটি মনে রাখবে। যদি প্লে গেমস সার্ভিসেস প্রোফাইল পরিবর্তন করা হয়, অথবা প্লেয়ার গেমের মধ্যে একটি ভিন্ন শনাক্তকারী দিয়ে লগ ইন করে, তাহলে উপরের ধাপগুলো আবার অনুসরণ করতে হবে, কারণ প্লেয়ার অ্যাকাউন্ট পরিবর্তনের ইচ্ছার একটি জোরালো ইঙ্গিত দিয়েছে।
আনবাইন্ডিং
আপনি যদি খেলোয়াড়কে তার বাইন্ডিংগুলো সম্পূর্ণভাবে নিয়ন্ত্রণ করার সুযোগ দিতে চান, তাহলে তাকে একটি গেম অ্যাকাউন্ট থেকে তার প্লে গেমস সার্ভিসেস প্লেয়ার আইডি আনবাইন্ড করার সুবিধা দিতে পারেন। একাধিক অ্যাকাউন্ট ব্যবহারকারী কিছু খেলোয়াড়ের জন্য এটি গুরুত্বপূর্ণ হতে পারে, যদি তারা ভুলবশত তাদের প্লে গেমস সার্ভিসেস প্লেয়ার আইডি এমন কোনো অ্যাকাউন্টের সাথে বাইন্ড করে ফেলেন যা তাদের মূল অ্যাকাউন্ট নয়।
অতিরিক্ত অ্যাকাউন্ট বাইন্ডিং উদাহরণ

এই প্রধান উদাহরণটি দেখায় যে একটি প্রদত্ত প্লে গেমস সার্ভিসেস প্লেয়ার আইডি (1) প্রথম দেখা ইন-গেম অ্যাকাউন্টের (A) সাথে আবদ্ধ হয় এবং খেলোয়াড় যখন অন্য অ্যাকাউন্টে খেলার জন্য তাদের গেমের অগ্রগতি থেকে লগ আউট করে তখন পুনরায় আবদ্ধ হয় না।
আপনি চাইলে খেলোয়াড়দের তাদের অ্যাকাউন্ট পুনরায় সংযুক্ত করার অনুমতি দিতে পারেন, কিন্তু এটি বাধ্যতামূলক নয়।
ডিভাইসে অ্যাকাউন্ট পরিবর্তন করা

এখানে, খেলোয়াড়টি নিজে হাতে প্লে গেমস সার্ভিসেস অ্যাকাউন্ট পরিবর্তন করেছেন এবং এর মাধ্যমে গেমটিকে একটি জোরালো সংকেত দিয়েছেন যে তিনি তার ইন-গেম অ্যাকাউন্টটি অন্য একটি অ্যাকাউন্টে পরিবর্তন করতে চান। এই পরিবর্তনের প্রতি সাড়া দেওয়াই খেলোয়াড়টির কাম্য; এই সংকেতটি বিবেচনায় নিলে খেলোয়াড়ের অভিজ্ঞতা আরও উন্নত হয়।
অন্য শনাক্তকারীর সাথে বিদ্যমান সংযুক্ত অ্যাকাউন্ট

এই উদাহরণটি দেখায় যে, প্লে গেমস সার্ভিসেস-এর বাইরের আইডেন্টিফায়ারের সাথে যুক্ত অ্যাকাউন্টগুলোকেও প্লে গেমস সার্ভিসেস-এর সাথে যুক্ত করতে হবে এবং তারপর নতুন ডিভাইসে পুনরুদ্ধার করতে হবে। আপনার গেমের অ্যাকাউন্টধারী বেশিরভাগ বিদ্যমান খেলোয়াড় এই বিভাগের অন্তর্ভুক্ত হবেন।
সাম্প্রতিক বিবরণগুলো স্মরণ করুন।
সমাধান নিয়ে ভাবার সময়, একটি বিষয় যা প্রায়শই সামনে আসে তা হলো একাধিক অ্যাকাউন্টের অভিজ্ঞতা। যদি আপনার গেমটি পাওয়ার ইউজারদের একাধিক অ্যাকাউন্ট তৈরি করতে উৎসাহিত করে (যেমন গাচা গেম বা চুজ ইওর ওন অ্যাডভেঞ্চার গেম), তাহলে প্লে গেমস সার্ভিসেস প্লেয়ার আইডিকে একটিমাত্র অ্যাকাউন্টের সাথে যুক্ত করলে বিভিন্ন ডিভাইসে ব্যবহারের ক্ষেত্রে প্লেয়ারের সেরা অভিজ্ঞতা নাও পাওয়া যেতে পারে।
রিকল সলিউশনে, আপনি একটি প্লে গেমস সার্ভিসেস প্লেয়ার আইডি এবং ইন-গেম অ্যাকাউন্টের একটি শিথিল ম্যাপিং সংরক্ষণ করেন, এবং ডিভাইস পরিবর্তন করার সময় বা লগ আউট করা অবস্থায় প্লেয়ার কেবল আপনার সংরক্ষণ করা সর্বশেষ অ্যাকাউন্টগুলোই দেখতে পায়।

এই উদাহরণে, একজন খেলোয়াড়ের একটি গেমের জন্য তিনটি অ্যাকাউন্ট রয়েছে, এবং তারপর তিনি একটি নতুন ডিভাইসে চলে যান:

যখন আপনি প্লেয়ারকে রিস্টোর করতে বলবেন, তখন একটি নতুন অ্যাকাউন্ট তৈরি করার জন্য আপনি একটি “ক্যানসেল” বা “ক্রিয়েট নিউ” বাটনও দিতে পারেন।
সরলতার জন্য, আপনার গেমটি শুধুমাত্র সর্বশেষ দেখা অ্যাকাউন্টটি মনে রাখতে পারে। একাধিক অ্যাকাউন্ট পরিবর্তনের ক্ষেত্রে এটি আরও কঠিন হতে পারে, কিন্তু তারপরেও ধারাবাহিকতার প্রয়োজনীয়তা পূরণ করে।
অতিরিক্ত স্মরণের উদাহরণ
পরবর্তী অংশে স্মরণশক্তির ব্যবহার করে আরও কিছু উদাহরণ দেওয়া হলো।
নন-অ্যান্ড্রয়েড ফোন

এখানে আমরা আগে থেকে বিদ্যমান (তৃতীয় পক্ষের অ্যাকাউন্ট লিঙ্ক করা) অথবা প্লে গেমস সার্ভিসেস-এ সাইন ইন করা নেই এমন অন্য কোনো ডিভাইস থেকে তৈরি করা অ্যাকাউন্ট উভয়ই প্রত্যাহার করার পদ্ধতি দেখাবো।
একটি অধিক প্রচলিত পদ্ধতি হতে পারে অ্যান্ড্রয়েড নয় এমন কোনো ফোন থেকে শুরু করে পিসিতে গুগল প্লে গেমসে চলে যাওয়া।

যেহেতু নন-অ্যান্ড্রয়েড ফোনে প্লে গেমস সার্ভিস নেই, তাই কোনো রিকল সক্রিয় থাকে না এবং প্লেয়ারকে পিসিতে থাকা গুগল প্লে গেমসের ভেতর থেকে ম্যানুয়ালি তাদের ক্রেডেনশিয়াল টাইপ করতে হয়।
একটি অ্যাকাউন্টের জন্য একাধিক প্লে গেমস সার্ভিসেস প্রোফাইল
মাঝে মাঝে এমন হতে পারে যে একাধিক প্লে গেমস সার্ভিসেস প্রোফাইল সক্রিয় আছে, যেগুলো পূর্বে কোনো একটি নির্দিষ্ট অ্যাকাউন্টকে “রিকল” করেছে। এই ক্ষেত্রে, দুটি প্রধান সমাধান রয়েছে যা সমানভাবে কার্যকর হবে:
যাইহোক এটা সংরক্ষণ করুন
'যাইহোক সংরক্ষণ করুন' মডেলে আমরা কোনো নির্দিষ্ট অ্যাকাউন্টের সদৃশ পয়েন্টারগুলোকে অগ্রাহ্য করি।
এটিকে অগ্রাহ্য করুন
'ওভাররাইড ইট' মডেলে, ডেভেলপারকে প্লে গেমস সার্ভিসেস থেকে অ্যাকাউন্টের ম্যাপিং মনে রাখতে হবে এবং তাদের টেবিল থেকে পুরোনো ম্যাপিংগুলো মুছে ফেলতে হবে। এর মাধ্যমে, তারা প্রত্যাহার করা অ্যাকাউন্ট এবং প্লে গেমস সার্ভিসেস অ্যাকাউন্টের একটি পরিষ্কার ১:১ ম্যাপিং বজায় রাখতে পারে।
একই ডিভাইস প্রত্যাহার
একাধিক অ্যাকাউন্ট ব্যবহারকারী খেলোয়াড়ও আপনার রিকল ব্যবস্থাটি ব্যবহার করে তাদের গেম অ্যাকাউন্টগুলোর মধ্যে দ্রুত পরিবর্তন করতে পারে।