خوادم الألعاب

تحسين أداء خادم Minecraft: تأخير (lag) أقل وTPS أعلى

ما هي TPS، وكيف تكتشف سبب التأخير باستخدام spark، وأمر التشغيل الذي يوصي به Paper، ومسافات الرؤية، والتوليد المسبق للعالم.

وقت القراءة: 2 دآخر تحديث: 19 أكتوبر 2026Minecraft

يحسب خادم Minecraft حالة العالم 20 مرة في الثانية: وهذه هي TPS (عدد الدورات أو ticks في الثانية). فإذا لم يتسع له الوقت، تنخفض عن 20 ويصبح كل شيء بطيئًا: تتأخر الكتل في الانكسار، وتقفز الكائنات (mobs) بشكل متقطع، وتتعطل المزارع. هذا هو التأخير من جهة الخادم، وهو ليس مثل ping (اتصالك أنت).

1. قِس قبل أن تغيّر أي شيء

تأتي إصدارات Paper الحديثة مع spark مدمجًا (وفي الإصدارات القديمة، ثبّته كإضافة):

  • /spark tps: يعرض TPS وMSPT (عدد الملّي ثانية التي تستغرقها كل دورة tick). فما دون 50 ms يعني أن لديك هامشًا وافرًا؛ وإذا تجاوز 50، تبدأ TPS بالانخفاض.
  • /spark profiler start، ثم بعد بضع دقائق من اللعب بوجود لاعبين، /spark profiler stop: ستحصل على رابط لتقرير يبيّن ما الذي يستهلك الوقت (إضافة، أو مزرعة، أو كيانات...).

إذا رأيت كثيرًا في وحدة التحكم الرسالة Can't keep up! Is the server overloaded?، فالخادم متأخر عن الإيقاع المطلوب. هذا طبيعي عند التشغيل؛ أما إذا كان مستمرًا، فتابع القراءة وراجع أيضًا استهلاك موارد خادم VPS.

2. استخدم Paper لا الخادم الرسمي

يُصلح Paper (أو الإصدارات المشتقة منه مثل Purpur) كثيرًا من مشكلات أداء خادم Mojang دون تغيير اللعبة. أما إذا كنت تلعب بالتعديلات (Fabric وForge وNeoForge)، فلا يصلح Paper؛ وفي Fabric، يحسّن تعديل Lithium الأداء كثيرًا.

3. أمر التشغيل الموصى به

توصي وثائق Paper بما يُعرف بـ Aikar's flags، وهي خيارات تضبط طريقة تحرير Java للذاكرة لتجنّب التقطّع. لخادم VPS بسعة 8 GB يعمل بنظام Linux (6.5 GB لـ Minecraft):

java -Xms6500M -Xmx6500M -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar paper.jar --nogui

غيّر القيمتين الأوليين فقط بحسب ذاكرتك (طريقة حسابها). وإذا كنت ستمنحه أكثر من 12 GB، فإن وثائق Paper تعدّل بعض القيم: استخدم مولّد أوامر التشغيل الخاص بها.

المزيد من RAM لا يعني سرعة أكبر. إذ ينجز Minecraft معظم عمله تقريبًا على نواة واحدة من المعالج. وبعد تجاوز الذاكرة التي يحتاج إليها، لا يؤدي منحه المزيد إلى رفع TPS.

4. خفّض المسافات

في server.properties:

  • simulation-distance: المدى الذي «يعمل» فيه العالم حول كل لاعب (الكائنات، والمحاصيل، ودوائر redstone). وهو الأثقل: القيمة بين 6 و8 تناسب كل شيء تقريبًا.
  • view-distance: مدى الرؤية. والقيمة بين 8 و10 توازن جيد.

5. ولّد العالم مسبقًا

توليد تضاريس جديدة أثناء استكشاف اللاعبين من أثقل المهام، خاصةً مع أجنحة الإليترا (elytra). باستخدام الإضافة Chunky تولّده مسبقًا، ويُفضّل أن يكون ذلك حين لا يوجد أحد:

/worldborder set 10000
/chunky radius 5000
/chunky start

تمنع الحدود (worldborder) توليد تضاريس خارج النطاق الذي ولّدته مسبقًا.

6. أكثر ما يسبب التأخير عادةً

  • كثرة الكيانات: مزارع ضخمة، وحيوانات متكدسة، وأغراض ملقاة على الأرض.
  • دوائر redstone متكررة: ساعات لا تتوقف أبدًا.
  • إضافات ثقيلة أو سيئة البرمجة: يخبرك تقرير spark بأيّها.
  • عالم غير مولَّد مسبقًا مع لاعبين كثيرين يستكشفونه في الوقت نفسه.

إذا ظل معالج خادم VPS عند 100% أثناء اللعب بعد كل هذا، فقد أصبح الخادم أصغر من حاجتك: قم بترقية الخطة دون نقل أي شيء.

مقالات ذات صلة

العودة إلى مركز المساعدة

لم تجد ما تبحث عنه؟

افتح تذكرة من لوحة التحكم وسنرد عليك خلال أقل من 5 دقائق.