سؤال

أنا لا أكتب هذا البرنامج فعلا، لكنه حدث لي أنه ليس لدي أي فكرة عن كيفية حل المشكلة. كأفضل طريقة لشرح المشكلة، سوف أصف سيناريو محدد من لعبة مطلق النار متعددة اللاعبين متعدد اللاعبين ...

  • لاعب أ يختبئ في بعض الشجيرات التي تواجه الغرب
  • مشغل B يتسلل على اللاعب A من الشرق، أو التسلل وراء اللاعب

ستكون "الاختراق" المشهورة لهذه اللعبة من أجل اللاعب A للحصول على رادار يظهره موقع اللاعب B، على الرغم من أنه لا يستطيع رؤية اللاعب B على شاشته، والعودة لا تدعم الرادار. هذا الاختراق ممكن لأن الخادم يقوم بإرسال معلومات إلى اللاعب A في جميع اللاعبين ضمن نطاق معين (ربما داخل طائرة لقطة). لن يكون الأمر واقعيا (بقدر ما أعرف)، على الخادم لمحاولة إرسال المعلومات فقط إلى اللاعب A على اللاعبين داخل اللاعب A. عرض إطار. نظرا لأن الخادم يجب أن يرسل معلومات عن جميع اللاعبين القريبة إلى اللاعب A، فقد يكتب اللاعب A Hack يتراخر وجود رادار على شاشته، والتي يتم ملؤها من خلال مشاهدة البيانات المرسلة إلى العميل وسحب تحديثات حالة مشغل العدو. أعتقد أن هذه معروفة عادة باسم "الرادار" أو "الجدار" الخارقة.

هل هناك أي طريقة لتحديث أو إخفاء تحديثات الدولة لاعبي العدو في المعلومات المرسلة إلى العميل؟ من ما أفهمه، لن يكون التشفير قابلا للتطبيق لحلول الوقت الحقيقي؟ حتى إذا كان الخادم قادرا على إرسال تحديثات الدولة فقط على اللاعبين داخل اللاعبين، فسيظل هذا يسمح لاعب اللاعب بإظهار اللاعبين الذين يختبئون خلف كائنات التمويه أو الغطاء (الذي كان يفترض بشفافية بطريقة ثانوية).

الشيء الوحيد الذي يمكن أن أفكر فيه حقا في تنفيذ نوع من الحل "punkbuster". وهذا هو، لديك لاعب عميل A. مسح بانتظام للعمليات غير القانونية. فكرة كونها أن أي اختراق شعبية سيتم رصدها. سيؤثر اختراق لا تحظى بشعبية على قاعدة لاعب صغيرة بما فيه الكفاية بأنهم صغيرون جدا.

هل كانت مفيدة؟

المحلول

هذه هي الطريقة الوحيدة. بالإضافة إلى punkbuster، يجب عليك القيام ببعض الأبحاث واردين (ما وراء ويكيبيديا، هناك الكثير من الأشياء المثيرة للاهتمام لن يربط هنا). إنها معركة مثيرة جدا للاهتمام بالنظر إلى قوانين التصميم العالمي عبر الإنترنت ...

العميل في أيدي العدو.

عنصر آخر له هو أن الأشخاص سيحلون استبدال برامج تشغيل الفيديو الخاصة بهم مع برامج التشغيل المعدلة التي تمنحها مزايا (الأشياء غير شفافة أو أبرزها، لا يمكن أن يكون اللاعبون "أعمى"، إلخ). لست متأكدا مما إذا كانت أي ألعاب تحقق من برامج التشغيل المعدلة أم لا.

نصائح أخرى

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

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

كان هناك برنامج يسمى "Eqmon" الذي فعل شيء من هذا القبيل من أجل لعبة Everquest. في البداية، كانت حزم اللعبة غير مشفرة تماما وتحتوي على جميع الأحرف (كل من الكمبيوتر الشخصي و NPC) للمستوى بأكمله. في النهاية، انتهى الأمر باستخدام التشفير لجعل الأمر أكثر صعوبة في تعزيز الحزم، لكن Eqmon اجتاز ذلك بواسطة الغشاء يجبر مفتاح التشفير (تم إنشاء مفتاح جديد بواسطة الخادم في كل مرة قمت بإدخال مستوى، لذلك استغرق أحيانا بضع دقائق لفك تشفير المفتاح). ثم غيروا ذلك بحيث تلقى عميلك فقط تحديثات لأجهزة الكمبيوتر أو NPCS في نطاق معين من موقعك. جعل هذا الإقامة أقل مفيدا للتخييم ومراقبة "تفرخ نادر" بعيدا في نفس المستوى.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top