عميل لعبة

عميل لعبة
عميل اللعبة (بالإنجليزيّة Game client): هو عميل شبكة يربط المستخدم الفردي بالخادم الرئيسيّ للّعبة، ويُستخدم عميل اللعبة بشكل رئيس في ألعاب الفيديو الجماعيّة. يجمع عميل اللعبة البيانات كالحصيلة والحالة والموقع والحركة للاعبٍ واحد، ويرسلها إلى خادم اللّعبة، ما يسمح للخادم بجمع بيانات كلّ فرد من اللاعبين وإظهار جميع المشاركين في اللعبة -التي من الممكن أن تكون لعبة ذات مضمار لعب صغير (كالملعب) ومن الممكن أن تكون أيضاً ضخمة جدّاً تتضمّن آلاف اللاعبين على نفس الخريطة- على الرغم من أنّ مخدّم اللعبة يعرض معلومات كلٍّ اللاعبين لجميع الموجودين في اللعبة، يظلّ اللاعب محتفظاً بمنظوره الخاصّ للمعلومات التي يجمعها عميل اللعبة، فيكون منظور كلّ لاعب مختلفاً عن منظور اللاعبين الآخرين بالرغم من اشتراك جميع اللاعبين بمساحة واحدة للّعب. يسمح عميل اللعبة أيضاً بمشاركة المعلومات بين المستخدمين، فتُستبدَل على سبيل المثال العناصر في العديد من ألعاب «تقمّص الأدوار الكثيفة للاعبين على الإنترنت»، إذ يتبادل فيها اللاعب عنصراً لا يرغب فيه بعنصر يريده. يتعامل العملاء في هذه الحالة مع بعضهم البعض، ويسمحون بمشاركة المعلومات، من خلال عناصر التبادل هذه. في الوقت الذي تتطلّب فيه العديد من الألعاب مساحةً مركزيّة يتجمّع فيها اللّاعبون ويتبادل فيها المستخدمون معلوماتهم الخاصّة، يمثل العديد من عملاء الألعاب مزيجاً من نماذج تطبيقات (الخادم - والعميل وندّ – لندّ).
التاريخ
وُلدت شبكة الويب العالمية على كومبيوتر «نيكست كيوب» الذي يحمل معالجاً بسرعة 256 ميغاهرتز، وقرصاً صلباً بحجم 2 جيجغابايت، وشاشة تعرض الألوان بتدرّجات اللون الرمادي، بنظام تشغيل نيكست ستيب. أسّس السير «تيم بيرنيرز لي» أوّل صفحة على شبكة الإنترنت في 6 آب من عام 1991 أثناء عمله في المنظّمة الأوربّيّة للأبحاث النوويّة المعروفة اختصاراً «سي إي آر إن» في جنيف، بسويسرا. وبدأت ألعاب الإنترنت بالظهور في أوائل سبعينيّات القرن العشرين. أمّنت في تلك الفترة لوحات النشرات ذات الطلب الهاتفي طريقة للمستخدمين للّعب عن طريق الإنترنت. مكّنت التقنيّات الحديثة في التسعينات من القرن العشرين مواقعَ الألعاب من الظهور في جميع أنحاء الشبكة العنكبوتيّة. أمّن نظام تطبيقات الخادم والعميل لألعاب الإنترنت وسيلةً للعمل على نطاق واسع.
المهام
لعميل اللّعبة أربع وظائف رئيسة وهي: استقبال المعلومات المدخلة، وتحليل البيانات، وتقديم التغذية الراجعة، وتعديل النظام.
استقبال المعلومات المدخلة
يتلقّى عميل اللعبة المعلومات المدخلة من قبل المستخدم الفردي، إذ يقوم اللّاعب -في ألعاب التصويب من منظور الشخص الأوّل على سبيل المثال-، بالعديد من الإجراءات، كالتنقّل، وتبادل إطلاق النار، والتواصل. يتطلّب كلّ إجراء من الإجراءات آنفة الذكر من اللاعب التحكّم في أجهزة معيّنة للإدخال، وينقل عميل اللّعبة بدوره هذه الإجراءات إلى المخدّم.
تحليل البيانات
يفك عميل اللّعبة شيفرة البيانات القادمة إليه، ويعرض المعلومات التي تشكّل عالم اللّعبة، بما في ذلك المكوّنات المخزّنة في الكومبيوتر، ونتائج الإجراءات التي قام بها اللاعبون، ثمّ يُترجم هذه المعلومات إلى واجهة المستخدم وإلى أجهزة الإخراج.
تقديم التغذية الراجعة
يعالج الخادم المعلومات ويعيد إرسالها مرّة أخرى إلى العميل، فيعرض العميل المعلومات المعالجة إلى اللّاعب وفقاً لمنظوره الخاصّ، فيكون لكلّ لاعب منظور مختلف في شاشته بسبب خصوصيّة العميل عند كلّ لاعب.
تعديل النظام
يكتشف العميل -بعد عمليّة تقديم التغذية الراجعة- أيّ تغييرات طرأت على النظام وفقاً للّاعبين أثناء جلسة اللعب، بما في ذلك التصاميم والإعدادات. وبما أنّ اللعبة آنيّة، ويقوم اللّاعبون بإجراءات مختلفة باستمرار، يعالج العميل المعلومات بشكلٍ مستمرّ ويعدل النظام أيضاً وفقاً للمعلومات المُعالَجة.
مثال تطبيقيّ
فيما يلي مثالٌ تطبيقيّ على كيفيّة عمل عميل اللعبة، باستخدام لعبة دوريّ الأساطير، يستخدم في هذا المثال اللاعب الذي يحمل اسم «7 تورتال 7» شخصيّة «خازيكس» لمهاجمة شخصيّة محايدة تُعرف باسم «ريد بلامبلباك». وتحدث العديد من الأمور في المنظور الخاصّ بالعميل.
يسحب العميل البيانات المخزّنة في أرشيف جهاز الكومبيوتر، بما في ذلك إحصائيّات اللاعب، والكائنات الموجودة على الخريطة والحشود والأعمال الفنّيّة وسلوكيّات الشخصيّات والعديد من البيانات الثابتة الأخرى؛ بهدف إعادة تشكيل البيئة المحيطة باللّاعب.
عندما يبدأ اللاعب 7 تورتال 7 بمحاولة الهجوم على ريد بلامبلباك، يرسل العميل بيانات كلّ منهما (الموقع، ونسبة الإصابة، والقوّة، والعطب، والقدرة على الدفاع، والعديد من البيانات الأخرى) إلى الخادم، ويسمح للخادم بدارسة الوضع الجديد لعالم اللعبة بعد توجيه 7 تورتال 7 الضربة إلى ريد بلامبلباك.
يعالج الخادم بعد ذلك البيانات، ويعيد إرسالها مرّة أخرى إلى جميع عملاء اللاعب الآخر، ليعلمها بما قام به 7 تورتال 7 للتوّ، والطريقة التي يجب على العميل أن يردّ بها. ينشئ عميل 7 تورتال 7 بعد تلقّيه لهذه المعلومات المخرجات ويعيد إرسالها مرّة أخرى إلى 7 تورتال 7. يمكننا في هذا المثال ملاحظة ظهور رقم باللون الأحمر على الشاشة، يشير إلى مقدار الضرر الذي لحق «ريد بلامبلباك»، وظهور الرقم 3 أيضاً في لوحة القدرات الذي يدلّ على وقت التهدئة المناسب لنوع الضربة التي استخدمها 7 تورتال 7 للتوّ. تتغيّر سلوكيّات الشخصيّة -شخصيّة ريد بلامبلباك في مثالنا هذا- أيضاً (ردَّ فعل على الهجوم)، فقد يصبح عدائيّاً أكثر فيهاجم 7 تورتال 7 بعد أن هاجمه، وذلك وفقاً لبرمجة اللعبة. تتغيّر أيضاً مخرجات العمل الفنّي كحيويّة الحركة، وشريط نسبة الإصابة، والقوّة.
يدرك اللاعبون الآخرون أيضاً الهجوم الذي قام به اللاعب 7 تورتال 7 ولكن من منظورهم الخاصّ، فيحدّد العملاء فيما إذا كان من الممكن للاعبين أن يروا هذه المعلومات أم لا، فعلى سبيل المثال، يكون عميل اللّاعب الموجود ضمن الفريق الخصم على علم بحدوث الهجوم، ولكن دون إمكانيّة عرض التغييرات التي حدثت للّاعب الذي تعرّض للهجوم؛ لأنّ اللعبة تحدّد من ستظهر لهم هذه النتائج على شاشاتهم بأولئك الذين لاحظوا 7 تورتال 7 وهو يهجم.
على الرغم من أن العميل يرسل ويستقبل البيانات من منظور الفرد، تُشارَك بياناتٌ مع كلّ شخص موجود في اللعبة، أو لا تُشارك معه على الإطلاق. يوجد على سبيل المثال في الزاوية اليمنى العلويّة للشاشة التي يراها اللاعب 7 تورتال 7 مؤشّر للوقت، وهو نفس الوقت المشترك بين جميع اللاعبين، ويوجد أيضاّ مؤشّر معدّل الأطر في الثانية، ومؤشّر بينج الخاصّين باللّاعب 7 تورتال 7 ولا يُشارَك عن طريق العميل.
الاستعمال
اعتماد التقنيّة
يُعتبر اعتماد التقنيّة بالنّسبة للعديد من مطوّري الألعاب مفتاح هندستهم، إذ يمكن للأنظمة القياسيّة الأساسيّة -مثل إتش تي إم إل 5 وجافا سكريبت- أن تسمح بتكامل الوسائط وبإجراء تطويرات أعمق. يوفّر عميل اللعبة القدرة على القيام بذلك أيضاً.
تجربة المستخدم
تعتبر موازنة اللعبة معضلةً كبيرة بالنسبة للمطوّرين، فقد يتسبّب العدد الكبير للمستخدمين المتّصلين بالخادم عن طريق عميلهم باستهلاك كبير في الموارد، ولكن، وبنفس الوقت، يحتاج المستخدمون إلى البقاء على اتّصال باللعبة. يوفر عملاء اللعبة هذا النوع من المعلومات إلى الخادم المركزي.
تعاون الموظّفين
تضاف مع تطوّر اللعبة العديد من الميّزات الإضافيّة بشكلٍ تدريجيّ مع تطوّر اللعبة، فبدلاً من وجود فريق صغير متماسك لا يحتاج إلى درجة عالية من التعاون في مراحلها الأولى، توجد في المراحل المتقدّمة العديدُ من الإدارات التي تعمل معاً للوصول إلى حلّ، ما يتطلّب عمل جميع الأقسام بصورة متناغمة.
التحديثات
ينشئ فريق تطوير اللعبة في بعض الأحيان محتويات جديدة فيها أو يصلح أخطاء سابقة، وبالتالي يحتاحون إلى تزامن عملاء كلّ لاعب مع الخادم. يمكن لمطوّري اللعبة إصلاح الأخطاء أو إضافة محتويات جديدة للّعبة من خلال التصحيحات، فينبه التوزيع الرقميّ المستخدم بتوافر تحديث جديد، ويطبق العميل تصحيحات التحديث على المستخدمين بشكل تلقائيّ؛ لضمان امتلاك جميع المستخدمين نفس المنظور لمحتوى اللعبة عند إجراء التغييرات. بعض الأمثلة على منصّات التوزيع الرقميّة: منصّة ستيم، ومنصّة أورجن، ومنصّة باتل دوت نيت التي تؤمّن نفس الخدمات عند الحديث عن عملاء اللعبة.
المراجع
ألعاب فيديو جماعية
تطوير ألعاب الفيديو
عملاء (حوسبة)
منصات ألعاب فيديو