بعد إصدار
Uncharted 4 ، يمكنني بالفعل التحدث عما عملت عليه في هذا المشروع. في الأساس ، قمت بتطوير الذكاء الاصطناعي لزملائه في وضع اللاعب الفردي والمساعدين في وضع اللعب المتعدد ، وعملت أيضًا قليلاً على منطق اللعب. سأحذف الجوانب التي لم تصل إلى المباراة النهائية وبعض التفاصيل الصغيرة.
لذا ، نواصل:
نظام البريد
قبل البدء ، أود أن أتحدث عن نظام البريد الذي تستخدمه NPC. لم أعمل على المنطق الأساسي لهذا النظام ، لكنني ساعدت في كتابة رمز العميل الذي استخدمه.
المشاركات هي مواقع منفصلة في مساحة التنقل في لوحة التحكم NPC ، يتم إنشاؤها بشكل أساسي بواسطة أدوات التطوير ويتم وضعها يدويًا بواسطة المصممين. اعتمادًا على احتياجاتنا ، يمكننا إنشاء محددات بريد مختلفة لتقييم أنواع مختلفة من المنشورات (على سبيل المثال ، محدد المنشور التسلل ، محدد المنشورات القتالية) واختيار أعلى تصنيف مصنف لإرسال الشخصيات غير القابلة للعب هناك.
زملاء الفريق بعد اللاعب
نظام متابعة الزملاء للاعب مأخوذ من
The Last of Us .
كانت الفكرة الرئيسية هي أن يختار أعضاء الفريق حول اللاعب المناصب التي يجب اتباعها. تختلف هذه المواضع المحتملة عن اللاعب ويجب أن تستوفي الاختبارات التالية لحرية المسار المستقيم: من اللاعب إلى المركز ، من المركز إلى الموضع المتوقع إلى الأمام ، من الموضع الأمامي المتوقع إلى اللاعب.
على عكس The Last of Us ، يحتوي Uncharted 4 على جانب من التسلق. لدمج التسلق في نظام متابعة اللاعب ، قمنا بإضافة محدد تسلق التسلق الذي يحدد النقاط التي يجب أن يتحرك فيها أعضاء الفريق عندما يتسلق اللاعب الصخور.
كانت هذه المهمة أكثر صعوبة مما توقعنا. لم يكن الأمر كافياً فقط أن تطلب من الشركاء استخدام المنطق المعتاد للمتابعة عندما لا يتسلق اللاعب ، وتغيير المنشورات عندما يزحف اللاعب على طول الجدار. إذا قام اللاعب بالتبديل بسرعة بين الحالة الطبيعية والتسلق ، يبدأ الشركاء في التأرجح بين هاتين الحالتين. لذلك ، أضفنا التباطؤ: يمكن للشركاء الآن تغيير الحالة فقط عندما يغير اللاعب الحالة ويتحرك بعيدًا بما فيه الكفاية في هذه الحالة. بشكل عام ، التباطؤ هو تقنية جيدة لتجنب "القفزات السلوكية".
المضي قدما في زملائه
أردنا أن يُظهر زملائه للاعب الطريق في بعض النقاط في اللعبة. تم أخذ هذا النظام من The Last of Us وتم تحسينه: استخدم المصممون الخطوط العريضة لتحديد المسارات المشتركة التي ينبغي على زملائها قيادة اللاعب إلى الأمام.
إذا كان هناك العديد من المسارات على المستوى ، فقد قام المصممون بترتيب عدة وصلات وتشغيلها / إيقافها باستخدام برنامج نصي.
يتم عرض موضع اللاعب على الشريحة ، وتكون النقطة المرجعية لتعقب اللاعب في المقدمة ، على مسافة قابلة للتخصيص من قبل المصممين. عندما تمر نقطة مرجعية التعقب هذه بنقطة مرجعية للشريحة ، تم تمييزها كنقطة انتظار ، يبدأ الشريك في الانتقال إلى نقطة انتظار أخرى. إذا قرر اللاعب العودة ، فسيبدأ الشريك في العودة فقط عندما تكون نقطة تتبع الدعم بعيدة جدًا عن أبعد نقطة انتظار ، والتي تم تمريرها في عملية آخر حركة للأمام. وهكذا ، يتشكل التباطؤ مرة أخرى ، متجنباً حدوث تغير حاد في الحالة.
قمنا أيضًا ببناء السرعة الديناميكية لنظام التتبع. استنادًا إلى المسافة بين الشريك واللاعب ، توجد "مستويات السرعة" على طول الخط. يمكن أن تستخدم الشخصيات غير القابلة للعب ثلاثة أنواع من الحركة: المشي والجري والعدو. وفقًا لمستوى السرعات التي يوجد بها اللاعب ، يختار الشريك نوع الحركة المناسب من أجل الحفاظ على المسافة اللازمة للاعب. وفقًا لرؤيتهم ، يمكن للمصممين تمكين وتعطيل مستويات السرعة. بالإضافة إلى ذلك ، اعتمادًا على المسافة إلى المشغل ، تزداد سرعة حركة الشريك أو تقل بشكل طفيف لتجنب حدوث تغيير حاد في سرعة الحركة عند التبديل بين أنواع الحركة.
مشاركة المأوى
في لعبة The Last of Us ، يمكن للاعب التحرك بالنسبة لشريكه ، مع الاستمرار في التغطية. هذا يسمى المأوى العام.
في فيلم The Last of Us ، جويل أبعد من جدار المأوى عن Ellie أو Tess ، وهذا منطقي لأنها أصغر من جويل. لكن بالنسبة إلى نيت وسام وسالي وإلينا ، كان هذا سيبدو غير طبيعي ، لأن لديهم نفس الارتفاع تقريبًا. بالإضافة إلى ذلك ، Uncharted 4 هي لعبة أسرع بكثير ، وإذا مدت نيت ذراعيها تتحرك خلف عقبة ، فسوف تدمر نعومة الحركة. لذلك ، قررنا أن الشركاء سوف يتكئون ببساطة على جدار الملجأ ، وسوف ينحني نيت قليلاً حولهم عند الانتقال.
استخدمنا هنا منطقًا بسيطًا للغاية. إذا وقع الموضع المتوقع للاعب ، مع مراعاة سرعته ، في حدود مستطيلة حول موقع مأوى الشريك ، فإن الشريك يكمل السلوك الحالي وراء العائق ويتم الضغط عليه مقابل جدار الملجأ.
المساعدين الطبيين
يتطلب المساعدون الطبيون في وضع متعدد المستخدمين سلوكًا جديدًا تمامًا غير متوفر في وضع المستخدم الفردي: يجب عليهم إحياء الأصدقاء المهزومين ونسخ سلوك اللاعبين وراء الملاجئ.
يحاول الأطباء تقليد سلوك اللاعبين خلف الملاجئ ويكونوا قريبين من اللاعب قدر الإمكان ، بحيث إذا أصيب لاعب فسيكون في مكان قريب ويبعثه. إذا أصيب أقرب حليف ، فسوف يعيد إحياء الحليف أيضًا ، بشرط أن يكون اللاعب لا يزال على قيد الحياة. إذا كان اللاعب مجهزًا بـ RevivePak mod للأطباء ، فقبل أن يركضوا إلى الحلفاء من أجل القيامة ، سيحاولون رمي RevivePak في الحلفاء (العديد من عمليات الإحياء التي تتم في وقت واحد تسريع عملية القيامة) ؛ عند إلقاء RevivePak ، يتم استخدام منطق إلقاء القنابل ، على وجه الخصوص ، التحقق من حرية المسار ولعب الرسوم المتحركة ، يتم استبدال القنابل اليدوية RevivePak فقط.
العشب من أجل التخفي
الميكانيكا الجديدة لـ Uncharted 4 هي أيضًا حركة سرية في العشب. لتنفيذ ذلك ، كنا بحاجة إلى تحديد البيئة بطريقة أو بأخرى حتى يتمكن منطق اللعب في اللاعب من معرفة ما إذا كان اللاعب في العشب. في البداية ، أردنا أن يقوم فناني الخلفية بتمييز أسطح التصادمات العشبية في مايا ، لكننا وجدنا أن التواصل بين الفنانين والمصممين أبطأ التكرار كثيرًا. لذلك ، توصلنا إلى طريقة أخرى لتمييز المناطق ذات العشب من أجل التسلل. خصيصًا للمصممين ، تمت إضافة علامة عشب جديدة للتسلل إلى المحرر حتى يتمكنوا من وضع علامة دقيقة على نطاقات التنقل التي يجب على اللاعب التفكير فيها من أجل التخفي. بفضل هذه المعلومات الإضافية ، تمكنا أيضًا من تقييم منشورات التسلل اعتمادًا على ما إذا كانت موجودة في العشب أم لا. اتضح أن هذا مفيد لأعضاء الفريق الذين يتحركون عندما يكون اللاعب في وضع التخفي.
الأعضاء الحسية
نظرًا لأنه ، على عكس The Last of Us ، في Uncharted 4 لا يوجد وضع استماع ، كان علينا إبلاغ اللاعب بطريقة أو بأخرى بتهديدات وشيكة حتى لا يزعجه الموقع غير المعروف للأعداء. باستخدام البيانات المتعلقة بتصور الأعداء ، أضفنا مؤشرات تهديد اللون التي تخبر اللاعب أن العدو سيلاحظه قريبًا كعامل إلهاء (مؤشر أبيض) ، ويدركه كعامل إلهاء (مؤشر أصفر) ويدرك تمامًا وجوده (مؤشر برتقالي). بالإضافة إلى ذلك ، جعلنا مؤشر التهديد يضخم ضوضاء الخلفية من أجل زيادة التوتر ، وبعث إشارة صاخبة عندما يفهم العدو تمامًا وجود اللاعب ، كما هو الحال في The Last of Us.
البحث
هذا هو الجزء الرئيسي الأخير من اللعبة ، التي شاركت في تطويرها قبل أن تذهب اللعبة إلى "الذهب". عادة لا أحضر اجتماعات رسمية في Naughty Dog ، ولكن قبل "الذهب" ببضعة أشهر ، كان لدينا اجتماع واحد على الأقل في الأسبوع تحت إشراف
بروس ستريلي أو
نيل دراكمان . تم تخصيص الاجتماعات لمباراة منظمة العفو الدولية. بعد كل من هذه الاجتماعات تقريبًا ، كان هناك شيء في نظام البحث للتغيير أو المعالجة. قبل إطلاق اللعبة النهائية ، مررنا بالعديد من مراحل التكرار.
هناك جانبان يصرفان الأعداء ويشجعانهم على الاستكشاف: وجود اللاعب والجثث. عندما يكتشف العدو تشتيتًا ، يحاول جذب أقرب حليف لاستكشاف قضيته معًا. يصبح العدو الأقرب مستكشفًا ، والثاني مراقب. يمكن للعدو الذي يجد الإلهاء أن يصبح باحثًا أو مراقبًا ، وقد أعددنا لهذه الحالات مجموعتين مختلفتين من مربعات الحوار ("هناك شيء هناك. سأذهب للتحقق منه." و "هناك شيء هناك. اذهب للتحقق.").
لجعل بداية ونهاية الدراسة أكثر طبيعية ، قمنا بتعديل توقيت حركات العدو وانخفاض مؤشرات مؤشرات القلق حتى لا يقوم باحثان بنفس الإجراءات ميكانيكياً في نفس الوقت.
إذا كانت الجثة تشتيتًا ، فيمكن للباحث التعرف على وجود اللاعب ويطلب من الجميع البدء في البحث عنه ، تاركًا حالة هادئة بلا رجعة. يتم تمييز الجثة المكتشفة أيضًا حتى يتمكن اللاعب من فهم ما تم إعطاؤه.
في بعض مستويات الصعوبة ، تجبر العديد من الدراسات ، واحدة تلو الأخرى ، الأعداء على التحقيق بقوة أكبر ، مما يزيد من فرص العثور على لاعب يختبئ في العشب. في سحق الصعوبة ، يبحث الأعداء بقوة باستمرار.
آراء الحوار
هذا أيضًا أحد الجوانب الأخيرة التي تعاملت معها في المشروع.
الآراء في مربعات الحوار هي المنطق الذي يجعل الشخصيات تتفاعل مع المحادثات ، على سبيل المثال ، انظر إلى أشخاص آخرين وقم بإيماءات. في لعبة The Last of Us ، على مدار أشهر ، قام المصممون يدويًا بوضع تعليقات توضيحية على جميع مربعات الحوار داخل اللعبة ، ووضع علامة على لحظات المظهر والإيماءات. لم نرد تكرار ذلك. كان لدينا العديد من مربعات الحوار النصية التي تم وضع علامة عليها بالفعل يدويًا ، لكننا كنا بحاجة إلى نظام قادر على معالجة مربعات الحوار بدون تعليقات توضيحية. تم إعطاء الرسوم المتحركة معلمات لضبط سرعة دوران الرأس ، أقصى زاوية لتدوير الرأس ، مدة النظرة ، وقت التوقف ، وما إلى ذلك.
إنقاذ سرعة الجيب
منذ المراحل الأولى من التطوير ، كانت لدينا مشكلة في مرحلة سباق سيارات الجيب على مستوى المدينة في مدغشقر: إذا انحرفت سيارة اللاعب وخسر السرعة بعد أن أصاب جدار أو سيارة العدو ، تم طرد اللاعب بعيدًا عن القافلة وفشل في إكمال المستوى.
توصلت إلى هذا الحل: حد مؤقتًا السرعة الزاوية والتغيير في السرعة الخطية من الأعلى عند الاصطدام بالجدران ومركبات العدو. تبين أن هذا الحل البسيط فعال للغاية - أصبح من الصعب على اللاعبين أن يفشلوا في المرور بسبب الانجرافات.
تدمير المركبة
أدخلت لعبة Uncharted 4 أول الآلات التي يتحكم فيها اللاعب. في الألعاب السابقة من السلسلة ، كان بإمكان الشخصيات غير القابلة للعب فقط قيادة السيارات ، وقد تحركت هذه السيارات على طول قضبان الانزلاق. لقد ساعدت في تنفيذ تدمير النقل.
هناك العديد من الطرق لتدمير مركبات العدو: اقتل السائق ، أطلق النار على السيارة ، اصطدم بدراجة نارية للعدو بسيارتك الجيب ، وضرب جيب العدو للتزحلق عليه. اعتمادا على سبب التدمير ، تم اختيار الرسوم المتحركة للنقل المدمر وركابها. تمتزج الرسوم المتحركة مع دوول دواء يتم التحكم فيها ماديًا ، وبالتالي فإن الرسوم المتحركة القتالية تنتقل بسلاسة إلى تحطم محاكاة جسديًا.
لتدمير الدراجات النارية برامب ، تم استخدام مستطيل محيط في طائرة XZ ونقطة اتصال لتحديد واحدة من أربعة رسوم متحركة موجهة لتدمير الكبش.
في حالة انحرافات سيارات الجيب ، يتم إجراء فحص لمعرفة ما إذا كان انحراف دوران الجيب عن اتجاه الحركة المطلوب يتجاوز قيمة عتبة الانجراف.
عند تشغيل الرسوم المتحركة للإبادة ، هناك احتمال أن يمر النقل المدمر عبر الجدار. وهي تستخدم كرة مصبوبة (كرة مسقطة مثل الشعاع) من الوضع المثالي للآلة على طول "السكة" ، إذا لم يتم تدميرها ، إلى الوضع حيث يوجد جسمها بالفعل. إذا تم إصلاح التلامس أثناء توليد كرة مصبوبة ، فإن الجهاز يتحول في اتجاه التلامس العادي بجزء من قيمة الاختراق ، وبالتالي ، فإن عملية إزالة المرور عبر الجدار تحدث تدريجياً على عدة إطارات ، مما يتجنب حدوث تغيير حاد في الموضع.
أنشأنا نوعًا خاصًا من تدمير المركبات يسمى تلميحًا لموت السيارة. هذه رسوم متحركة تقتل السياق الحساسة وتتفاعل مع البيئة. يضع رسامو الرسوم المتحركة والمصممين مواضع هذه الرسوم المتحركة على طول "قضبان" الشريحة ، ويشيرون إلى نوافذ الإدخال عليها على الخطوط. إذا تم تدمير السيارة داخل هذه النافذة ، تبدأ الرسوم المتحركة التالفة المقابلة في اللعب. في البداية ، تم إنشاء هذه الوظيفة كأداة لتنفيذ انفجار جيب ملحمي للعرض التجريبي ، والذي تم تقديمه في E3 في عام 2015.
فلتر باير للتردد
أردنا التخلص من هندسة القطع عندما تكون الكاميرا قريبة جدًا من كائنات البيئة ، خاصةً أوراق الشجر. لذلك ، قررنا تظليل البكسل في تظليل البكسل بناءً على مدى قرب البكسل من الكاميرا. لم نتمكن من الاستفادة من الشفافية لأنها مكلفة للغاية وهناك الكثير من أوراق الشجر. بدلاً من ذلك ، قمنا بتطبيق
التدرج ، ودمج المسافة من البكسل إلى الكاميرا والنمط في شكل
مرشح Bayer - تم تجاهل بعض وحدات البكسل تمامًا ، مما أدى إلى وهم الشفافية.
كان فلتر Bayer الأصلي هو مصفوفة 8 × 8 الموضحة في
صفحة ويكيبيديا هذه . قررت أنها صغيرة جدًا وأدت إلى إنشاء قطع أثرية على شكل خطوط. كنت أرغب في استخدام فلتر Bayer 16 × 16 ، ولكن على الإنترنت لم أتمكن من العثور عليه في أي مكان. لذلك حاولت عكس هندسة نمط مرشح Bayer 8 × 8 ولاحظت نمطًا تعاوديًا. يمكنني فقط دراستها وكتابة مصفوفة 16 × 16 يدويًا ، ولكن من أجل الفائدة ، كتبت أداة يمكنها إنشاء مصفوفات بايزية لأي قوة من اثنين.
بعد التحول إلى مرشح بايزي 16 × 16 ، انخفضت القطع الأثرية ذات الخطوط بشكل ملحوظ.
تأجيل صوت الانفجار
هذه في الواقع تفاصيل صغيرة جدًا ، ولكن أود أن أذكرها. قبل أسبوعين من عرض النسخة التجريبية على E3 في عام 2015 ، لاحظت أن انفجار البرج شوهد وسمع في نفس الوقت ، وهو أمر غير منطقي. نيت وسالي بعيدان جدًا عن البرج ، لذا يجب عليهما أولاً رؤية الانفجار ، ثم سماعه. في العرض التوضيحي النهائي ، أضاف فريق الفنانين تأخيرًا طفيفًا في صوت الانفجار.
التعريب في اللغة الصينية التقليدية
لقد قمت بتشغيل النص والترجمات بالصينية التقليدية قبل أسبوعين فقط من إصدار اللعبة على "الذهب" ، ووجدت أخطاء في الترجمة. كانت معظم الأخطاء ترجمة حرفية من الإنجليزية إلى الصينية التقليدية كانت خارج السياق. قررت أنه لن يكون لدي الوقت لأخوض اللعبة بأكملها بنفسي ، بينما أبحث في الوقت نفسه عن أخطاء الترجمة. لذلك ، طلبت من عدة أشخاص من قسم الاختبار لعب أجزاء مختلفة من اللعبة باللغة الصينية التقليدية وشاهدت الفيديو المسجل للمقطع. وتبين أن هذه خطوة فعالة إلى حد ما ؛ تمكنت من إصلاح جميع أخطاء الترجمة المكتشفة ، وتمكن فريق المترجمين من إصلاحها قبل الموعد النهائي.
هذا كل شئ
هذا هو كل شيء عملت عليه تقريبًا في Uncharted 4 مما يستحق الذكر. آمل أن تكون المقالة ممتعة لك.