اذا لم تجد ما تبحث عنه يمكنك استخدام كلمات أكثر دقة.
هناك طرق مختلفة لتقليل التأخيرات أو تمويهها، على الرغم من أن العديد منها لها عيوبها وقد لا تكون قابلة للتطبيق في جميع الحالات. إذا كانت اللعبة نفسها غير ممكنة، فقد يكون بإمكان العملاء اختيار اللعب على خوادم قريبة جغرافيا من أنفسهم من أجل تقليل زمن الوصول، أو قد تختار الخوادم ببساطة إسقاط العملاء بميزات عالية من الوقت لتجنب التعامل مع المشاكل الناتجة. ومع ذلك، هذه هي الحلول الأمثل بالكاد. بدلاً من ذلك، سيتم تصميم الألعاب غالبًا مع مراعاة الكمونية.
يمكن حل العديد من المشكلات ببساطة عن طريق السماح للعملاء بتتبع حالتهم وإرسال حالات مطلقة إلى الخادم أو مباشرة إلى عملاء آخرين. على سبيل المثال، يمكن للعميل تحديد بالضبط موقف اللاعب أو من هو الشخص الذي أطلق النار عليه. يعمل هذا الحل وسيؤدي إلى القضاء على معظم المشكلات المتعلقة بالتخلف. لسوء الحظ، يعتمد أيضًا على افتراض أن العميل صادق. لا يوجد ما يمنع اللاعب من تعديل البيانات التي يرسلها، مباشرة على العميل أو بشكل غير مباشر عبر وكيل، من أجل ضمان وصوله إلى أهدافه دائمًا. في الألعاب عبر الإنترنت، قد يؤدي خطر الغش إلى جعل هذا الحل غير ممكن، وسوف يقتصر العملاء على إرسال الحالات ذات الصلة (أي الموجه الذي انتقل إليه أو أطلق عليه)
نظرًا لعدم السماح للعملاء في العادة بتحديد حالة اللعبة الرئيسية، بل تلقيها من الخادم، فإن المهمة الرئيسية للتعويض من جانب العميل هي تقديم العالم الافتراضي بأدق ما يمكن. نظرًا لأن التحديثات تأتي مع تأخير وقد يتم إسقاطها، فمن الضروري في بعض الأحيان أن يتوقع العميل تدفق اللعبة. نظرًا لتحديث الحالة بخطوات منفصلة، يجب أن يكون العميل قادرًا على تقدير الحركة بناءً على العينات المتاحة. يمكن استخدام طريقتين أساسيتين لإنجاز هذا ؛ الاستقراء والاستيفاء .
الاستقراء هو محاولة لتقدير حالة اللعبة المستقبلية. بمجرد استلام حزمة من الخادم، يتم تحديث موضع كائن إلى الموضع الجديد. في انتظار التحديث التالي، يتم استقراء الموضع التالي بناءً على الموضع الحالي والحركة في وقت التحديث. بشكل أساسي، سوف يفترض العميل أن الجسم المتحرك سيستمر في نفس الاتجاه. عند تلقي حزمة جديدة، قد يتم تصحيح الموقف قليلاً.
يعمل الاستيفاء بشكل أساسي عن طريق تخزين حالة اللعبة وتقديم حالة اللعبة للاعب مع تأخير بسيط وطفيف. عند وصول حزمة من الخادم، بدلاً من تحديث موضع كائن فورًا، سيبدأ العميل في استيفاء الموقف ، بدءًا من آخر موضع معروف. خلال فترة الاستيفاء ، سيتم تقديم الكائن يتحرك بسلاسة بين الموضعين. من الناحية المثالية ، يجب أن يتطابق هذا الفاصل الزمني تمامًا مع التأخير بين الحزم ، ولكن بسبب الفقد والكمونية المتغير ، نادرًا ما يحدث هذا.
كلتا الطريقتين لها مزايا وعيوب.
في كثير من الأحيان ، للسماح باللعب السلس ، يُسمح للعميل بإجراء تغييرات بسيطة على حالة اللعبة. في حين أن الخادم قد يتابع في النهاية الذخيرة ، والصحة ، والموقع ، وما إلى ذلك ، فقد يُسمح للعميل بالتنبؤ بحالة اللعبة الجديدة من جانب الخادم بناءً على تصرفات اللاعب ، مثل السماح للاعب بالبدء في التحرك قبل استجابة الخادم إلى الأمر. سيتم قبول هذه التغييرات بشكل عام في ظل الظروف العادية وجعل التأخير شفافًا في الغالب. سوف تنشأ المشاكل فقط في حالة التأخير أو الخسائر العالية ، عندما يتم التراجع بشكل ملحوظ للغاية عن توقعات العميل. في بعض الأحيان ، في حالة الاختلافات الطفيفة ، قد يسمح الخادم حتى بإجراء تغييرات "غير صحيحة" على الحالة استنادًا إلى تحديثات من العميل.
بخلاف العملاء ، يعرف الخادم حالة اللعبة الحالية بدقة ، وبما أن هذا التوقع غير ضروري. الغرض الرئيسي من تعويض كمونية جانب الخادم هو توفير تأثيرات دقيقة لإجراءات العميل. هذا أمر مهم لأنه بحلول وقت وصول أمر اللاعب ، سيكون الوقت قد مضى ، ولن يكون العالم في الحالة التي رأى فيها اللاعب عند إصدار أمره. ومن الأمثلة الواضحة على ذلك اكتشاف نتائج الأسلحة التي تم إطلاقها في شخصيات الرماية من الدرجة الأولى ، حيث الهوامش صغيرة ويمكن أن تسبب مشاكل كبيرة إذا لم يتم التعامل معها بشكل صحيح.
هناك طريقة أخرى لمعالجة المشكلة وهي تخزين حالات اللعبة السابقة لفترة زمنية معينة ، ثم الترجيع إلى مواقع اللاعب عند معالجة أمر ما. يستخدم الخادم كمون المشغل (بما في ذلك أي تأخير متأصل بسبب الاستيفاء ؛ انظر أعلاه) لاسترجاع الوقت بمقدار مناسب لتحديد ما رأى عميل التصوير في وقت إطلاق اللقطة. سيؤدي هذا عادةً إلى رؤية الخادم وهو يطلق النار على الموضع القديم للهدف ومن ثم يضرب. في أسوأ الحالات ، سيكون اللاعب مكمونية اً إلى حد أن الخادم ينفد من البيانات التاريخية وعليه أن يبدأ في قيادة أهدافه.
هذا هو حل WYSIWYG الذي يسمح للاعبين بالتوجه مباشرة إلى ما يرونه. لكن الثمن هو تفاقم آثار الكمون عندما يتعرض اللاعب للنيران: لا يلعب الكمون الخاص بهم دوراً فحسب ، بل المهاجم أيضاً. في العديد من المواقف ، لا يكون هذا ملحوظًا ، لكن اللاعبون الذين احتفظوا بالتغطية سوف يلاحظون أنهم يواصلون تلقي رسائل التلف / الوفاة من الخادم لفترة أطول من الكمون الذي يمكنهم تبريره. يمكن أن يؤدي هذا في كثير من الأحيان إلى الانطباع (الخاطئ) بأنه تم إطلاق النار عليه من خلال الغطاء والانطباع (غير الدقيق تمامًا) عن " صناديق ضرب laggy".
إحدى مشكلات التصميم التي تنشأ عن اللف هي ما إذا كان يجب التوقف عن لف الأوامر المكمونية ة للاعب الميت بمجرد وفاته على الخادم ، أو الاستمرار في تشغيلها حتى "يلحق" وقت الموت. يؤدي قطع التعويضات فورًا إلى منع الضحايا من مهاجمة القتلة بعد وفاته ، وهو ما يفي بالتوقعات ، ولكنه يحافظ على الميزة الطبيعية المتمثلة في تحريك اللاعبين الذين يدورون حول زاوية ، والحصول على هدف وقتلهم في وقت أقل من رحلة ذهابًا وإيابًا إلى عميل الضحية الثابتة.
يمكن انتقاد اللف لسماحه للاختفاء العالي للاعب الواحد بالتأثير سلبًا على تجربة اللاعبين ذوي الكمون المنخفض. في بعض الأحيان تقلل الخوادم ذات التعويض المكمونية من طول سجل المشغل المخزن ، أو تفرض حدود بينج ، لتقليل هذه المشكلة.
من الممكن للعملاء إخبار الخادم بما يقومون به وللخادم أن يثق في البيانات التي يتلقاها. يتم تجنب هذه الطريقة إذا كان ذلك ممكنًا بسبب تعرضها للغش : إنها مسألة بسيطة لتوجيه بيانات الشبكة عبر جهاز كمبيوتر ثانٍ يقوم بإدراج رسائل ناجحة ملفقة أو يعدل الرسائل الموجودة ، وهي تقنية لا يمكن اكتشافها بواسطة أدوات مكافحة الغش .
ومع ذلك ، فإن الحجم الهائل لبعض الألعاب يجعل الحلول المكلفة حسابياً مثل اللف مستحيلة. في Battlefield 3 ، على سبيل المثال ، يتم استخدام نظام "الكشف المختلط عن الاصطدامات" حيث يخبر العملاء الخادم أنهم قد ضربوا ويقوم الخادم بإجراء اختبار غامض حول المعقولية قبل قبول المطالبة.
حل الكمونية الأقل شيوعًا هو عدم القيام بأي شيء على الخادم والحصول على استقراء لكل عميل (انظر أعلاه) لتغطية زمن الوصول. ينتج عن هذا نتائج غير صحيحة إلا إذا حافظ اللاعبون عن بُعد على سرعة ثابتة ، مما يمنح ميزة لأولئك الذين يتفادون جيئة وذهابا أو ببساطة بدء / إيقاف الحركة.
يؤدي الاستقراء المطول أيضًا إلى ظهور اللاعبين عن بُعد (على الرغم من عدم تعرضهم للمخاطر) عندما لا ينبغي أن يكونوا: على سبيل المثال ، إذا امتد المشغل البعيد إلى الزاوية ثم توقف فجأة عند الحافة ، فإن العملاء الآخرين سيجعلهم يركضون إلى الأمام ، في العراء ، لمدة الكمون الخاصة بهم. على الجانب الآخر من هذه المشكلة ، يتعين على العملاء إعطاء اللاعبين البعيدين الذين بدأوا للتو في تحريك موجة إضافية من السرعة لدفعهم إلى موقع متوقع من الناحية النظرية.
من الممكن تقليل تصور الكمونية من خلال تصميم اللعبة . تتضمن التقنيات تشغيل الرسوم المتحركة من جانب العميل كما لو أن الإجراء قد حدثت فورًا ، مما يؤدي إلى التقليل / إزالة أجهزة ضبط الوقت المدمجة على الجهاز المضيف ، واستخدام انتقالات الكاميرا لإخفاء تزييفها.