Portal 101: إبداعات متقدّمة باستخدام أداة Portal SDK، ومحرّر القواعد
١٠ أكتوبر ٢٠٢٥

رؤيتك، وأداة Portal SDK الخاصة بنا، وإمكانيات تجربة المجتمع التي لا نهاية لها.
للمرّة الأولى في تاريخ سلسلة Battlefield، نفتح غطاء لعبتنا رسمياً ونسمح لكم، أعضاء المجتمع، باستخدام حزمة تطوير البرامج (SDK) وإنشاء التجارب التي تريدون لعبها. لقد شاهدنا العمل المذهل الذي قمتم به في Battlefield 2042 وأول إصدار لنا من Portal، وفي وجود أداة Portal SDK وقدرتها على تعديل الخرائط، إلى جانب الإضافات في محرّر القواعد على أداء إنشاء Portal، فإنه لا يمكننا إدراك ما سيتوفّر بعد ذلك.
ومع ذلك، لن نقدّم دورة فعلية على مستوى الطلاب الجامعيين وطوال الفصل الدراسي لتغطية كل التفاصيل الدقيقة لأداة SDK ومفاهيم تصميم اللعبة. وبدلاً من ذلك، يوضح هذا الدليل تفاصيل تجربة المرّة الأولى من خلال الأداة لتنفيذ تجربة مخصّصة، وصولاً إلى تصدير خريطتك المخصّصة إلى أداة إنشاء Portal واستخدام محرّر القواعد:
تثبيت أداة Portal SDK
على عكس أداة إنشاء Portal، المتوفّرة على موقع ويب EA، يجب تنزيل برنامج أداة Portal SDK على جهاز كمبيوتر يعمل بنظام Windows من أجل استخدامه. تتضمّن أداة Portal SDK جميع الملفات اللازمة لاستخدام أدوات تحرير اللعبة Godot لإجراء تعديلات مكانية على مستويات اللعبة بالإضافة إلى البرامج النصية النموذجية للبدء في إنشاء قواعد اللعبة المخصّصة الخاصة بك.
يمكنك تنزيل الأداة من خلال النقر هنا؛ وهو نفس رابط التنزيل الذي تم توفيره على موقع ويب Portal Builder.
لا نوصي بتنزيل أي إصدار من أداة Portal SDK خارج موقع ويب EA.com الرسمي ولا نؤيّد ذلك. قد يؤدي القيام بذلك إلى مشاكل خطيرة متعلّقة بالأمن مع جهاز الكمبيوتر الخاص بك. قم بتنزيل أداة Portal SDK المعتمدة فقط، بالإضافة إلى تحديثاتها، من EA.com
بعد تنزيل الأداة، افتح ملف ReadMe لإكمال التثبيت. ثم افتحها لمتابعة العرض التفصيلي لتجربة أداة Portal SDK الأولى هذه:
أداة Portal SDK - دليل موجز لتعديل الخرائط

أعلاه: خريطة مخصّصة نموذجية تم إنشاؤها باستخدام أداة Portal SDK.
أولاً، حرّك الماوس فوق "المشهد" في الزاوية العلوية اليسرى من التطبيق، وانقر فوقه، ثم حدّد "مشهد مفتوح" من القائمة المنسدلة. افتح مجلد "المستويات" لرؤية أسماء جميع الخرائط المتاحة لتعديلها، ثم اختر الخريطة التي تريد تعديلها.
على الأرجح، ستكون تحت منطقة الخريطة القابلة للعب. ضمن النافذة المركزية التي تعرض البيئة الرقمية ثلاثية الأبعاد، تكون هذه هي الأدوات الرئيسية الخاصة بك للتحرّك حول المساحة:
- تصويب الكاميرا أو "النظر" - انقر بزر الماوس الأيمن، واضغط مطولاً، واسحب مؤشر الماوس لتصويب الكاميرا.
- الحركة - المفاتيح W وA وS وD للتحرّك بصورة ثنائية الأبعاد (إلى الأمام والخلف واليسار واليمين) ومفتاح المسافة للتحرك إلى "أعلى"، والذي يكون دائماً بمقدار +90 درجة من المكان الذي تبحث فيه.
- زيادة أو تقليل سرعة الحركة - مرّر باستخدام عجلة الماوس، حيث تؤدي الحركة إلى الأمام إلى زيادة السرعة، وتؤدي الحركة إلى الخلف إلى إبطائها.
عند فتح مستوى، تكون جميع كائناته - المباني، والقطع المستخدم كساتر، والطرق، وغير ذلك الكثير - في مواقعها الافتراضية كما تظهر في أي تجربة عادية معتمدة في Battlefield 6. تُستخدم أداة Portal SDK لإجراء تعديلات إضافية؛ هناك كائنات معيّنة، مثل التضاريس والمباني الرئيسية، التي لا يمكن إزالتها.
في الجزء السفلي من الشاشة توجد مكتبة الكائنات الخاصة بك - قم بتوسعتها، ثم انقر على النقاط الثلاث (...) بجوار وظيفة البحث الخاصة بالمكتبة من أجل "إنشاء مكتبة". هذه هي الطريقة التي تحصل بها على المزيد من التفاصيل حول جميع الكائنات التي يمكن وضعها على الخريطة. يمكنك الآن سحب هذه الكائنات وإفلاتها على الخريطة. ملاحظة: إذا قمت بتشغيل إعداد Portal بالفعل، فهذه الخطوة غير مطلوبة.
اضغط على "Q" للدخول إلى "تحديد النمط"، وهي طريقتك الأساسية لاختيار كائن للتحكّم فيه أو تحريكه، ثم اضغط على "W" لتحريك الكائن داخل الخريطة. أثناء تحديد عنصر، يمكنك أيضاً الضغط على "E" لدخول "نمط التدوير"، واستخدام المفاتيح WASD لتدوير الكائن في الاتجاه المطلوب. إذا كنت ترغب في زيادة حجم كائن أو تقليل حجمه، فانظر إلى يمين السطح ثلاثي الأبعاد لرؤية "نافذة المدقّق"، حيث يمكنك جعل الكائن أكبر أو أصغر بصورة موحّدة. لا يتم دعم تغيير الحجم غير الموحّد في الوقت الحالي.
تصدير وتحميل مستوى إلى أداة إنشاء Portal

هل تريد أن تأخذ قسطاً من الراحة وتكمل الإنشاء لاحقاً؟ انقر فوق علامة تبويب "المشهد" في الزاوية العلوية اليسرى من التطبيق، ثم انقر فوق "حفظ المشهد" لضمان حفظ تقدّمك.
عندما تكون مستعداً لنشر الإنشاء الخاص بك، ابحث عن زر "تصدير المستوى الحالي" في النافذة السفلية اليمنى ("BFPortal"). انقر عليه، ثم انقر على "فتح الصادرات" في نفس النافذة لرؤية الإنشاء الخاص بك - هذا الملف بتنسيق .JSON هو ما سيتم تحميله إلى أداة إنشاء Portal على متصفّحك المفضل.
سجّل الدخول مرة أخرى إلى أداة إنشاء Portal، إذا لم تسجّل الدخول بالفعل، وحدّد قالباً حالياً لتعديله، أو نفّذ عملية إنشاء تجربة جديدة.
حدّد علامة التبويب "تبديل الخرائط"، وسترى خيار لإرفاق ملف .JSON الخاص بك، تبدو الأيقونة كسهم يشير إلى أسفل تجاه قوس مفتوح. حدّد مكان الملف من نافذة مستكشف الملفات التي ستنبثق، وحدّده، وانقر فوق فتح. من المفترض أن ترى الآن المستوى الذي تم تصديره في أداة إنشاء Portal!
محرّر القواعد في أداة إنشاء Portal: تحرير الواجهة والبرمجة النصية للذكاء الاصطناعي

الميزة الأكثر تقدّماً في أداة إنشاء Portal على الويب هي "محرّر القواعد"، والتي لا تتوفّر إلا لتجارب المجتمع المخصّصة. على غرار كيفية عملها في Battlefield 2042، ولكن مع وجود أوامر جديدة، يتيح لك محرّر القواعد القائم على المنطق ربط الأحداث والشروط داخل اللعبة، مثل موت اللاعب أو المسافة من المقرّات الرئيسية، لتفعيل إجراءات محدّدة.
أحد الأمثلة على "القاعدة" هو ما يحدث عندما تستولي على هدف في نمط الاحتلال. فكّر في دخول منطقة الهدف: ماذا سيحدث بعد ذلك؟ أولا،ً عندما تدخل إلى منطقة هدف (حدث أو حالة) تظهر عجلة تقدّم (إجراء) ويتم تشغيل تسجيل صوتي يقول إنك تقوم بالاستيلاء على الهدف (إجراء آخر). بعد فترة زمنية محدّدة مسبقاً (شرط)، يتم الاستيلاء على منطقة الهدف (إجراء). وبعد ذلك، نظراً لأن منطقة الهدف تحت سيطرة فريقك (شرط)، ستربح نقاطاً (إجراء متكرّر).
الأمر بسيط؟ يشتمل محرّر القواعد على أكثر من 200 إجراء لتنفيذ مقدار لا حصر له من مجموعات البرمجة النصية، سواء باستخدام الروبوتات أو بدونها. وكما هو الحال في جميع علامات تبويب محرّر القواعد الأخرى، هناك تلميحات أدوات لاتباعها؛ انقر ببساطة بزر الماوس الأيمن على مجموعة في محرّر القواعد وانقر فوق "مساعدة" للحصول على مزيد من المعلومات.
البرمجة النصية للذكاء الاصطناعي
كما هو الحال في القاعدة القياسية بالضبط، تشتمل سلوكيات الذكاء الاصطناعي على مجموعات الشروط والإجراءات الخاصة بها التي تعدّل حركتها، ومنطق القتال، وغير ذلك الكثير.
بالنسبة إلى البرمجة النصية للذكاء الاصطناعي الأكثر تعقيداً أو الأنماط الأكثر تعقيداً، يوصى بأن يستخدم المبدعون TypeScript. فيما يلي مثال على برمجة نصية بسيطة لحركة الذكاء الاصطناعي:
[[ملاحظة: نظراً لأن TypeScript مكتوبة باللغة الإنجليزية، فإن جميع التعليمات البرمجية النموذجية باللغة الإنجليزية. إذا كنت لا تحصل على النتائج المطلوبة بسبب تعارضات محتملة مع تعليمة برمجية أخرى في البرنامج النصي الخاص بك، فقد تحتاج إلى تعديل التعليمة البرمجية المستخدمة.]]
//يؤدي ذلك إلى نشر وحدة ذكاء اصطناعي قابلة للبرمجة النصية
function OnGameModeStarted() {
mod.SpawnAIFromAISpawner(mod.GetSpawner(1), mod.GetTeam(1));
}
هذا سلوك "متابعة" بسيط سيخبر الذكاء الاصطناعي بالوقوف والمشي إلى موقع لاعب آخر. async function simpleAIFollowBehavior(player: mod.Player, target: mod.Player) {
// ضبط وضعية اللاعب من الذكاء الاصطناعي على الوقوف.
mod.AISetStance(player, mod.Stance.Stand);
// ضبط سرعة حركة اللاعب من الذكاء الاصطناعي على المشي.
mod.AISetMoveSpeed(player, mod.MoveSpeed.Walk);
// أثناء تنشيط هذا اللاعب من الذكاء الاصطناعي واللاعب الهدف، قم بتشغيل هذه الحلقة التي تخبر الذكاء الاصطناعي بالانتقال إلى موقع اللاعب الهدف.
while (mod.GetSoldierState(player, mod.SoldierStateBool.IsAlive) == true && mod.GetSoldierState(target, mod.SoldierStateBool.IsAlive) == true) {
// استدعاء AIMoveToBehavior في اللاعب الآلي من الذكاء الاصطناعي وجعله يتحرّك إلى موقع اللاعب الهدف.
mod.AIMoveToBehavior(player, mod.GetSoldierState(target, mod.SoldierStateVector.GetPosition));
// الانتظار ثانية واحدة.
await mod.Wait(1);
}
}
بعد هذه البرمجة النصية النموذجية، سنترك البقية لتصميمك. لا توجد طريقة واحدة صحيحة لتعلم تطوير اللعبة، سواء قرّرت أخذ دورات في البرمجة وتصميم الألعاب، أو التعلّم من خلال التجربة ومنتديات الإنترنت المختلفة، فنحن على ثقة تامة بأنك ستكون قادراً على إنشاء تجربة مخصّصة مذهلة.
نصائح سريعة من المطوّرين - أداة Portal SDK والبرمجة النصية

1. كن جزءاً من مجتمع المطورين. مثل أي مجتمع فني، يكون تطوير اللعبة أفضل عند التفاعل الإيجابي مع المبدعين الآخرين. على الرغم من أن هذا الدليل يشكّل نقطة انطلاق رائعة لتعديل الخرائط، فإن أفضل معرفة تأتي من المطوّرين الزملاء الذين لديهم المزيد من الخبرة. شارك في مجتمع تطوير Battlefield Portal، مثل المجتمع الرسمي في Discord، ولا تخشَ طرح الأسئلة!
2. تحقّق من المنطق الخاص بك (والملحقات). عندما لا تعمل قاعدة ما في محرّر القواعد، يكون السببان الأكثر شيوعاً هما: إما إحدى المجموعات - قاعدة أو شرط أو إجراء - لا ترتبط بمجموعة تعديل، أو منطق القاعدة الخاص بك غير ممكن، مثل تعيين شرط حقيقي إلى قيمتين متناقضتين. تحقّق جيّداً دائماً من ذلك قبل اختبار تجربة مخصّصة.
3. التجربة. التجربة. التجربة. لن تعمل خريطتك المخصّصة الأولى - أو الذكاء الاصطناعي المبرمج نصياً - وفقاً لتوقّعاتك في 99.9% من الحالات. لا تُصَب بالإحباط، تابع التحرير والاختبار حتى تكون تجربتك كما تصوّرتها بالضبط.
4. قم بالإنشاء من أجل المجتمع. عادة ما يشير تصميم اللعبة إلى "تجربة المستخدم" أو UX، وهناك شهادات بكالوريوس مخصّصة بالكامل لهذا المفهوم فقط، ولكن بعبارات أبسط، يتعلّق هذا المفهوم بشعور لاعبيك عندما يلعبون تجربتك المخصّصة. يمكن أن يكون اختبار تجربة المستخدم (UX) بنفس سهولة جعل صديق أو فرد من العائلة أو زميل في المجتمع يلعب تجربتك المخصّصة؛ قم بدعوته داخل اللعبة للعب، ودوّن الملاحظات بشأن ما يجد صعوبة في فهمه أو ما يعوقهم عن الاستمتاع، ثم خذ ذلك في الاعتبار عند تطوير منتجك النهائي.