حقّقت Pixonic زيادة في التفاعل بنسبة% 25 على نظام التشغيل Chrome من خلال تحسين التطبيق ليلائم الشاشات الكبيرة.

خلفية

Pixonic، يفتخر فريق من مطوري ألعاب الفيديو، الذي يقع مقره في موسكو، يسعى كل فرصة لترقية تطبيقاته للأجهزة الجوّالة والوصول إلى قاعدة أوسع لجمهور اللاعبين. يعد أحد أشهر الألقاب للشركة War Robots، استمتِع بتجربة لعب تضم 12 لاعبًا في لاعب ضد لاعب (PvP) حيث يمكن للّاعبين المشاركة في مبارزات شيّقة روبوتات مخصصة في ساحة معركة مباشرة.

تم إصدار War Robots في عام 2014، وقد تم تصميمها في الأساس لنظام التشغيل Android أجهزة من الجيل الأول مع حركة تستند إلى لوحة اللمس وبدون إدخال للماوس. تشير رسالة الأشكال البيانية نظرًا لشغف فريق Pixonic لألعاب الفيديو، أدرك فريق Pixonic حاجة التطبيق إلى بعض التعديلات لتوفير تجربة مستخدم رائعة على مجموعة أكبر من الأجهزة، مثل أجهزة الكمبيوتر المحمولة والأجهزة اللوحية. كانت لعبة War Robots قابلة للتشغيل على أيّ جهاز Android. لأنّ أجهزة Chromebook تعمل بإصدار كامل من إطار عمل Android داخل حاوية. ومن خلال إجراء بعض التعديلات الإضافية على الترميز، تمكنت Pixonic من اتخاذ مزايا نظام التشغيل ChromeOS والإمكانات الكاملة.

إليك الطريقة التي اتّبعها فريق Pixonic لتحسين War Robots للحصول على تجارب مثالية الشاشات الأكبر حجمًا.

الإجراءات التي اتخذتها الشركة

لبدء التحسينات، أضافت Pixonic علامة بيانات وصفية في ملف AndroidManifest.xml يخبر النظام بأنّه جاهز للحصول على الدعم الكامل لنظام التشغيل ChromeOS ويحتاج إلى إيقاف ميزة المحاكاة باللمس:

<uses-feature android:name="android.hardware.type.pc" android:required="false" />

وتضبط شركة Pixonic أيضًا قيمة minSdk في التطبيق على 24 حتى يتمكن محرك ألعاب Unity تلقّي نقرات الماوس مباشرةً وجميع أحداث واجهة برمجة التطبيقات المتعلقة بالحركة (وليس فقط أحداث لوحة اللمس).

التوافق مع لوحة المفاتيح والماوس

يصبح التحرّك والتصويب أسهل بكثير في ألعاب لاعب ضد لاعب (PvP)، مثل War Robots. باستخدام لوحة مفاتيح وماوس، خاصةً على الأجهزة ذات الشاشات الأكبر. إذًا، الخطوة التالية هي إعادة كتابة الرمز الذي يدعم لوحة المفاتيح والماوس وضع المعركة مع الاحتفاظ بعناصر التحكم في الشاشة التي تعمل باللمس.

لتوفير عناصر التحكم المناسبة في الوقت المناسب، كتب فريق Pixonic تعليمات برمجية جديدة للتحقّق من وضع أسلوب اللعب الحالي للمستخدم:

@Override
public void onConfigurationChanged(Configuration newConfig) {
    boolean hasQwertyKeyboard = newConfig.keyboard == Configuration.KEYBOARD_QWERTY && newConfig.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_NO;
    try {
        UnityPlayer.UnitySendMessage("Receiver", "ConfigChange", new JSONObject().put("keyboard", hasQwertyKeyboard).toString());
    } catch (JSONException e) {
        e.printStackTrace();
    }
}

إذا تم العثور على لوحة مفاتيح QWERTY، تتكيف اللعبة مع وضع الكمبيوتر المكتبي. تشير رسالة الأشكال البيانية اختفاء ذراع التحكّم في الحركة في أسفل يسار الشاشة، وتكون جميع العناصر متاحة يتم تصنيف الإجراءات (مثل الفرز من خلال الأسلحة والقدرات والقوائم) باستخدام اختصارات لوحة المفاتيح.

War Robots في وضع الكمبيوتر المحمول

إذا لم يتم رصد لوحة مفاتيح، سيظهر ذراع التحكّم في الحركة أسفل يسار الشاشة واختصارات لوحة المفاتيح مخفية في أزرار القائمة السفلية اليمنى.

الروبوتات الحربية في وضع اللعب على الأجهزة اللوحية أو الأجهزة الجوّالة

بعد ذلك، أرادت Pixonic التأكد من بقاء المؤشر مخفيًا عندما يستخدم المشغل الماوس لتدوير الكاميرا. من خلال استهداف الإصدار 7.0 من نظام التشغيل Android (المستوى 24 من واجهة برمجة التطبيقات) أو يمكن للفريق وضع أي أيقونة مؤشر. في هذه الحالة، استخدم الفريق صورة نقطية شفافة لجعل المؤشر غير مرئي أثناء اللعب:

public boolean setPointerVisibility(boolean visible) {
    View = activity.findViewById(android.R.id.content);
    view.setPointerIcon(PointerIcon.getSystemIcon(activity, visible ? PointerIcon.TYPE_DEFAULT : PointerIcon.TYPE_NULL));
}

يضمن ذلك تعطيل المؤشر وغير مرئي عند استخدام جميع النوافذ الأخرى تم إغلاقها والمعركة مستمرة. إذا ظهرت أي نوافذ منبثقة، مثل قائمة الإيقاف المؤقت، وجعلت Pixonic المؤشر مرئيًا، وتعرض رمزه الافتراضي.

تعديل الفيديوهات التعليمية وآليات اللعب

ولتقديم تجربة أفضل للمستخدم، كتبت Pixonic أيضًا رمزًا جديدًا لعرض برامج تعليمية عن أسلوب اللعب استنادًا إلى وضع جهاز المستخدم الحالي في حال تبديل اللاعب بين اللعب على الأجهزة اللوحية والكمبيوتر المحمول أثناء المعركة ولم يروا حتى الآن برنامج تعليمي حول الوضع المختلف، يتم عرض البرنامج التعليمي قبل استئناف اللعب.

برامج تعليمية عن أسلوب اللعب في وضع الكمبيوتر المحمول من خلال إدخالات لوحة المفاتيح والماوس

برنامج تعليمي حول أسلوب اللعب في وضع الجهاز اللوحي مع عناصر تحكّم في الشاشة التي تعمل باللمس

عندما يكون اللاعبون في وضع الكمبيوتر المحمول، توقِف Pixonic أيضًا الكاميرا ذات الشاشة التي تعمل باللمس. التحكم (لأنّ اللاعبين سيتحكمون في الكاميرا باستخدام الماوس) بينما تعمل أزرار الألعاب كالمعتاد. لتمييز اللمسات عن حركات الماوس، يستخدم الفريق السمة Input.touchCount (في نصوص Unity البرمجية):

if(Input.touchCount > 0) {
    // this is screen touch event
} else {
    // this is mouse (touchpad) event
}

إتاحة النوافذ المتعددة

في الخطوة الأخيرة، أرادت Pixonic التأكّد من أنّ اللعبة لا يتم تقييدها وضع ملء الشاشة عند تشغيله. يتيح تفعيل أسلوب اللعب في نافذته في نظام التشغيل ChromeOS ما يلي: للمستخدمين مشاهدة منشئي البث المفضلين لديهم في وقت واحد أثناء اللعب، وترقية الروبوتات أثناء القراءة عن القدرات الجديدة على الموقع الإلكتروني الخاص باللعبة أو مشاهدة معركة في الوضع السلبي أثناء مشاهدة فيديو منفصل.

لإجراء ذلك، وضعت شركة Pixonic علامة على UnityPlayerActivity بأنّه يمكن تغيير حجمه:

<activity android:name="com.unity3d.player.UnityPlayerActivity" ....
    android:resizeableActivity="true">

ضع في اعتبارك أن واجهة اللعبة تبدو قابلة للتشغيل فقط في نطاق الأبعاد، حدّد الفريق الحد الأدنى لأحجام النوافذ المتوافقة:

<activity  >
    <layout android:gravity="center" android:minHeight="800dp" android:minWidth="1200dp" />
</activity>

استخدمت Pixonic العلامات الوصفية لضبط وضع ملء الشاشة في أسلوب اللعب الأكثر تفاعلية. كاتجاه افتراضي وأفقي حسبما هو مرغوب فيه.

<application>
    <meta-data android:name="WindowManagerPreference:FreeformWindowSize" android:value="maximize" />
    <meta-data android:name="WindowManagerPreference:FreeformWindowOrientation" android:value="landscape" />
    ….
</application>

تم إطلاق War Robots في وضع النافذة.

ضمنت هذه التحسينات أيضًا عدم توقف اللعبة مؤقتًا وأن المعركة ويتناسب مقياس HUD مع توسيع نوافذ اللعب وتصغيرها.

النتائج

بفضل مكتبة شاملة من الموارد عبر الإنترنت، يمكن لجميع استغرقت العملية من فريق التطوير المكون من خمسة أعضاء في Pixonic أسبوعين فقط.

أكثر من 100,000 لاعب شغَّلوا War Robots على أجهزة ChromeOS منذ أن طرحت Pixonic أحدث التحسينات. ولأن أسلوب اللعب يمكن أن بالاستفادة من المساحة الإضافية على الشاشات الأكبر، أصبحت معارك War Robots أكثر تفاعلية وجاذبية من ذي قبل. في الواقع، جلسات المستخدمين أطول بنسبة 25٪ على أجهزة Chromebook مقارنةً بأجهزة Android الأخرى. كانت الملاحظات المبكرة أمرًا إيجابيًا للغاية، حتى أن بعض اللاعبين قد لاحظوا أن تعمل الألعاب المحسَّنة لأجهزة Chromebook بشكل أكثر سلاسة من BlueStacks المحاكي.

بناءً على نجاحها، يخطط مطوّرو Pixonic لتحديث لعبة War Robots الرسومات على جميع أجهزة Android لجعل أسلوب اللعب أقرب إلى جودة الكمبيوتر الشخصي المستخدم.

يُرجى الاطّلاع على بعض أفضل الممارسات لتحسين تطبيقاتك للتوافق مع نظام التشغيل ChromeOS.