كيفية إنشاء خادم في ماين كرافت
يمنحك خادمك الخاص تحكمًا كاملًا في العالم وقواعد اللعبة. إنها فرصة للعب مع الأصدقاء دون دفع اشتراكات شهرية، وتثبيت أي تعديلات، وإنشاء ألعاب…
يمنحك خادمك الخاص تحكمًا كاملًا في العالم وقواعد اللعبة. إنها فرصة للعب مع الأصدقاء دون دفع اشتراكات شهرية، وتثبيت أي تعديلات، وإنشاء ألعاب مصغرة أو حزم تقنية. يعمل الخادم كبرنامج منفصل على الحاسوب: فهو يعالج منطق اللعبة، بينما يتصل به عملاء اللاعبين. تتكوّن عملية الإنشاء من اختيار النواة، والإعداد الأساسي لملفات التهيئة، وفتح الوصول إلى الشبكة.
اختيار نواة الخادم
يحدد نوع النواة وظائف الخادم. من المستحيل تثبيت مودات Forge على Paper، أو الإضافات على Vanilla.
نوع النواة | الدعم | لماذا تصلح |
Vanilla | حزم البيانات فقط | بقاء نقي، سباقات السرعة. أسوأ تحسين للأداء. |
Paper | إضافات (Bukkit/Spigot/Paper) | خوادم عامة، بقاء مع الأصدقاء، ألعاب مصغرة. تحسين أداء ممتاز. |
Purpur | إضافات (Paper) + تهيئة خاصة | مثل Paper، لكن مع ضبط دقيق للميكانيكيات (على سبيل المثال، السماح بركوب النحل). |
Fabric | مودات (Fabric) | خوادم تقنية (Carpet mod)، حزم vanilla+، تحسين الأداء (Lithium). |
NeoForge / Forge | مودات (Forge/NeoForge) | حزم مودات ثقيلة مع أبعاد وآليات وسحر جديدة. |
بالنسبة لـ 90% من الخوادم الخاصة بدون مودات عالمية كبيرة، يُعد Paper الخيار الأمثل. فهو لا يتطلب تثبيت مودات على عملاء اللاعبين (كل شيء يعمل من العميل vanilla)، ويدعم الإضافات لحماية الأراضي، ويعمل أسرع من النواة الرسمية.
⚠️ مهم: النوى الهجينة (Arclight, Mohist)، التي تدعم المودات والإضافات في آنٍ واحد، غالبًا ما تكسر ميكانيكيات المودات وتسبب عدم استقرار. اختر شيئًا واحدًا: إما الإضافات أو المودات.
متطلبات النظام والتحضير
يستهلك الخادم الذاكرة العشوائية (RAM) وموارد المعالج. لا أهمية لبطاقة الرسوميات بالنسبة للخادم — يتم توليد العالم حصريًا على المعالج (CPU).
لـ 2–5 لاعبين (Paper):
RAM: 2–3 جيجابايت من الذاكرة المخصصة.
CPU: أي معالج حديث بدءًا من 4 أنوية.
لـ 10+ لاعبين أو حزم مودات ثقيلة (NeoForge):
RAM: 6–8 جيجابايت من الذاكرة المخصصة.
CPU: أداء عالٍ لكل نواة.
تثبيت Java
يتطلب Minecraft 1.21+ Java 21 (للإصدارات 26.1+ يلزم Java 26). لا يستخدم الخادم Java المدمجة في العميل، بل يجب تثبيتها على النظام بشكل منفصل.
نزّل JDK 21 (أو JDK 26) من موقع Oracle الرسمي.
ثبّته مع تفعيل خيار “Add to PATH” إلزاميًا في المثبّت.
تحقق في الطرفية: java -version. يجب أن يُظهر الإصدار 21.0.x.
التثبيت والتشغيل الأساسي
مثال على التثبيت لنواة Paper:
الخطوة 1. تنزيل النواة
انتقل إلى الموقع الرسمي papermc.io، اختر إصدار اللعبة (على سبيل المثال، 26.1) ونزّل الملف. أنشئ مجلدًا فارغًا للخادم وانقل الملف إليه. أعد تسميته إلى server.jar للتسهيل.
الخطوة 2. إنشاء ملف التشغيل
لا يبدأ الخادم بالنقر المزدوج. يجب تخصيص ذاكرة له عبر سكربت.
أنشئ في مجلد الخادم مستند نص start.txt،
افتحه والصق الكود:
DOS
java -Xmx4G -Xms4G -jar server.jar nogui
pause
يحدد المعامل -Xmx4G الحد الأقصى للذاكرة العشوائية (4 جيجابايت). أما -Xms4G فهو الحجم الابتدائي. احفظ الملف وغيّر امتداده من .txt إلى .bat (لنظام Windows).
على Linux/macOS أنشئ start.sh وأضف #!/bin/bash كسطر أول.
الخطوة 3. قبول EULA
شغّل start.bat. ستُفتح وحدة التحكم لبضع ثوانٍ ثم تُغلق. افتح الملف الجديد eula.txt. غيّر السطر eula=false إلى eula=true. هذه موافقة رسمية على اتفاقية ترخيص المطورين.
الخطوة 4. التشغيل الكامل
شغّل start.bat مرة أخرى. سيُولّد الخادم العالم وملفات التهيئة. ستظهر في وحدة التحكم رسالة Done!. أوقف الخادم حصريًا بالأمر stop في وحدة التحكم، وإلا فقد يتلف العالم.
إعداد server.properties
يحتوي الملف server.properties على الإعدادات الرئيسية للخادم. لفتحه، انقر بزر الفأرة الأيمن على الملف واختر “فتح باستخدام…”، ثم اختر “المفكرة” أو أي محرر نصوص آخر.\
أدناه جدول بالإعدادات الافتراضية لـ server.properties ووصف لكل معامل:
المعامل | القيمة | الوصف |
accepts-transfers | FALSE | يحدد ما إذا كان هذا الخادم يقبل عمليات إعادة التوجيه (نقل) اللاعبين من خوادم أخرى. |
allow-flight | FALSE | يسمح أو يمنع الطيران على الخادم في وضع البقاء (إذا كان اللاعب يستخدم تعديلات من طرف ثالث). عند false سيطرد الخادم هؤلاء اللاعبين. |
broadcast-console-to-ops | TRUE | إذا كان مفعّلًا، سيتم إرسال نتائج تنفيذ أوامر وحدة التحكم في الدردشة إلى جميع مشغّلي (مسؤولي) الخادم. |
broadcast-rcon-to-ops | TRUE | نفس السابق، لكن للأوامر المرسلة عبر الوصول عن بُعد (RCON). |
bug-report-link | (فارغ) | رابط سيُعرض للاعبين على الشاشة عند قطع اتصالهم بالخادم بسبب خطأ أو عطل. |
debug | FALSE | يفعّل وضع تصحيح الأخطاء (debug mode) لتسجيل موسّع للأخطاء. |
difficulty | easy | مستوى الصعوبة على الخادم (peaceful — سلمي، easy — سهل، normal — عادي، hard — صعب). |
enable-code-of-conduct | FALSE | ما إذا كان يجب مطالبة اللاعبين بالموافقة على قواعد السلوك الخاصة بـ Microsoft (Code of Conduct) عند الاتصال. |
enable-jmx-monitoring | FALSE | يتيح استخدام JMX (Java Management Extensions) لمراقبة أداء الخادم. |
enable-query | FALSE | يفعّل بروتوكول GameSpy4 (Query)، الذي يتيح لمواقع المراقبة من طرف ثالث الحصول على معلومات عن الخادم (المتصلون، الإضافات). |
enable-rcon | FALSE | يفعّل الوصول عن بُعد إلى وحدة تحكم الخادم (RCON) للإدارة دون وصول مباشر إلى طرفية الجهاز. |
enable-status | TRUE | يتيح للخادم أن يظهر كـ «متصل» في قائمة الخوادم لدى عميل اللعبة. |
enforce-secure-profile | TRUE | يتطلب أن يمتلك اللاعبون مفاتيح عامة موقّعة لملف Mojang الشخصي (حماية من تزوير رسائل الدردشة). |
enforce-whitelist | FALSE | إذا كان true، سيطرد الخادم قسرًا اللاعبين غير الموجودين في «القائمة البيضاء» (whitelist) عند تفعيل هذه القائمة. |
entity-broadcast-range-percentage | 100 | يتحكم في المسافة (بالنسبة المئوية) التي يرسل عندها الخادم إلى العميل بيانات عن الكائنات (الوحوش، اللاعبين الآخرين، العناصر). |
force-gamemode | FALSE | يفرض على اللاعبين وضع اللعب الافتراضي في كل مرة يتصلون فيها بالخادم. |
function-permission-level | 2 | مستوى صلاحيات الوصول (من 1 إلى 4) للوظائف التي تُنفَّذ عبر حزم البيانات (datapacks). |
gamemode | survival | وضع اللعب الافتراضي (survival, creative, adventure, spectator). |
generate-structures | TRUE | يحدد ما إذا كانت الهياكل ستُولَّد في العالم (القرى، الزنازين، المعابد، إلخ). |
generator-settings | {} | إعدادات خاصة لمولّد العالم (تُستخدم عادةً للعوالم المخصصة). |
hardcore | FALSE | وضع «Hardcore». إذا كان true، فبعد الموت ينتقل اللاعب إلى وضع المشاهد إلى الأبد. |
hide-online-players | FALSE | إذا كان true، يخفي قائمة أسماء اللاعبين النشطين في قائمة اللعب الجماعي. |
initial-disabled-packs | (فارغ) | قائمة بحزم البيانات التي سيتم تعطيلها عند إنشاء عالم جديد. |
initial-enabled-packs | vanilla | قائمة بحزم البيانات المفعّلة افتراضيًا (اللعبة الأساسية «vanilla»). |
level-name | world | اسم المجلد الذي تُخزَّن فيه ملفات عالمك. |
level-seed | (فارغ) | البذرة (قيمة رقمية) لتوليد العالم. إذا كانت فارغة، سيتم توليد بذرة عشوائية. |
level-type | minecraft\:normal | نوع توليد العالم (normal — عادي، flat — مسطّح، large_biomes — أحياء كبيرة، amplified — جبلي). |
log-ips | TRUE | يحدد ما إذا كانت عناوين IP الخاصة باللاعبين ستُسجَّل في ملفات سجل الخادم. |
management-server-* | (متنوعة) | مجموعة من المعاملات (المنافذ، المفاتيح، الإعدادات) لأدوات إدارة الخادم الخارجية (تُستخدم نادرًا). |
max-chained-neighbor-updates | 1000000 | حد التحديثات المتسلسلة للكتل (على سبيل المثال، أثناء انفجار TNT أو مخططات redstone المعقدة) لمنع تجمّد الخادم. |
max-players | 20 | أقصى عدد من اللاعبين الذين يمكنهم التواجد على الخادم في وقت واحد. |
max-tick-time | 60000 | أقصى وقت (بالميلي ثانية) لتنفيذ «tick» واحد. إذا «فكّر» الخادم أطول من هذا الوقت، فسيتوقف تلقائيًا (حماية من التجمّد «الميت»). |
max-world-size | 29999984 | أقصى نصف قطر لحدود العالم (بالكتل). |
motd | A Minecraft Server | Message Of The Day. وصف/اسم الخادم الذي يراه اللاعبون في قائمة الخوادم. |
network-compression-threshold | 256 | الحد الأدنى لحجم الحزمة (بالبايت) الذي يبدأ بعده الخادم بضغطها لتوفير استهلاك الإنترنت. |
online-mode | TRUE | معامل مهم جدًا. إذا كان true — يسمح فقط للاعبين الذين يملكون نسخة مرخّصة من اللعبة. إذا كان false — يسمح بدخول اللاعبين الذين يستخدمون مشغّلات «مقرصنة». |
op-permission-level | 4 | مستوى صلاحيات المشغّلين الافتراضي (1-4، حيث يمنح 4 الوصول إلى جميع الأوامر، بما في ذلك stop). |
pause-when-empty-seconds | -1 | وقت الخمول (بالثواني) الذي يضع بعده الخادم العالم «على إيقاف مؤقت» في حال عدم وجود لاعبين (-1 يعني معطّل). |
player-idle-timeout | 0 | الوقت (بالدقائق) الذي يُطرد بعده اللاعب غير النشط (AFK) تلقائيًا. 0 — معطّل. |
prevent-proxy-connections | FALSE | يمنع اتصال اللاعبين الذين يستخدمون VPN أو بروكسي (يعمل بالتزامن مع نظام مصادقة Mojang). |
query.port | 25565 | منفذ بروتوكول Query (إذا كان مفعّلًا بالمعامل enable-query). |
rate-limit | 0 | أقصى عدد من الحزم من العميل إلى الخادم. يُستخدم للحماية من إغراق الحزم (0 — معطّل). |
rcon.password | (فارغ) | كلمة مرور للوصول عن بُعد إلى وحدة تحكم الخادم (يجب تعبئتها إذا كان enable-rcon=true). |
rcon.port | 25575 | منفذ اتصال RCON. |
region-file-compression | deflate | خوارزمية ضغط ملفات العالم (المناطق). deflate هي المعيار والأكثر انتشارًا. |
require-resource-pack | FALSE | إذا كان true، لن يتمكن اللاعب من دخول الخادم حتى يوافق على تنزيل حزمة موارد الخادم. |
resource-pack | (فارغ) | رابط مباشر (URL) إلى أرشيف .zip لحزمة موارد الخادم التي ستُعرض على اللاعبين. |
resource-pack-id | (فارغ) | معرّف فريد لحزمة الموارد (UUID). |
resource-pack-prompt | (فارغ) | رسالة سيراها اللاعب عند عرض تنزيل حزمة الموارد عليه (على سبيل المثال: «من فضلك نزّل الحزمة لتجربة لعب أفضل»). |
resource-pack-sha1 | (فارغ) | تجزئة SHA-1 لأرشيف حزمة الموارد. ضرورية كي لا يعيد العميل تنزيل الحزمة إذا لم تتغير. |
server-ip | (فارغ) | عنوان IP لـ «ربط» الخادم. عادةً ما يُترك فارغًا كي يعمل الخادم على جميع واجهات الشبكة في الجهاز. |
server-port | 25565 | المنفذ الرئيسي للخادم الذي سيتصل عبره اللاعبون. |
simulation-distance | 10 | نصف القطر (بالـ chunks) حول اللاعب الذي يُحاكى ضمنه العالم (تنمو النباتات، تتحرك الوحوش، تعمل الآليات). |
spawn-protection | 16 | نصف قطر حماية منطقة الظهور (بالكتل). في هذه المنطقة لا يستطيع اللاعبون العاديون كسر الكتل أو وضعها. |
status-heartbeat-interval | 0 | فاصل إرسال بيانات موسّعة عن حالة الخادم (لا يُستخدم عادةً). |
sync-chunk-writes | TRUE | يجعل حفظ الـ chunks على القرص متزامنًا (أكثر موثوقية لتجنّب فقدان بيانات العالم عند الأعطال، لكنه قد يبطئ الخادم قليلًا). |
text-filtering-config | (فارغ) | إعداد نظام خارجي لتصفية الكلمات البذيئة في الدردشة. |
text-filtering-version | 0 | إصدار واجهة برمجة التطبيقات (API) لنظام تصفية النصوص. |
use-native-transport | TRUE | يتيح للخادم استخدام مكتبات الشبكة المُحسّنة للنظام (على سبيل المثال، epoll لنظام Linux)، مما يحسّن أداء الشبكة. |
view-distance | 10 | مسافة الرسم (بالـ chunks) التي يرسلها الخادم إلى العميل (التي تعتمد عليها مسافة رؤية اللاعب). |
white-list | FALSE | تفعيل «القائمة البيضاء». إذا كان true، فلن يتمكن من دخول الخادم سوى اللاعبين الذين أُضيفت أسماؤهم إلى هذه القائمة (بالأمر /whitelist add <الاسم>). |
⚠️ مهم: إذا ضبطت online-mode=false، فسيتمكن أي لاعب من الدخول باسم المسؤول. ثبّت إلزاميًا إضافة للمصادقة (على سبيل المثال، AuthMe Reloaded) للحماية.
كيفية تثبيت الإضافات
توسّع الإضافات إمكانيات الخادم دون الحاجة إلى تثبيت مودات لدى اللاعبين. تعمل فقط على Paper وPurpur وSpigot.
نزّل الإضافة بصيغة .jar.
ضع الملف في مجلد plugins داخل الخادم.
أعد تشغيل الخادم (stop -> start.bat).
في مجلد plugins سيظهر مجلد يحتوي على تهيئة الإضافة، حيث تُحرَّر إعداداتها (عادةً في ملف config.yml).
كيفية تثبيت المودات
للعب بالمودات تلزم نواة Fabric أو NeoForge. يجب أن يمتلك جميع اللاعبين مجموعة مودات متطابقة في عملائهم.
لـ Fabric:
نزّل المثبّت من fabricmc.net.
شغّله، اختر علامة التبويب «Server»، حدد إصدار اللعبة ومجلدًا فارغًا. اضغط «Install».
شغّل ملف fabric-server-launch.jar الذي نزّلته عبر start.bat.
ضع المودات في مجلد mods المُولَّد. لـ Fabric يلزم إلزاميًا المود Fabric API.
لـ NeoForge:
نزّل المثبّت من neoforged.net.
شغّله، اختر «Install server» وحدد المجلد.
بعد التثبيت، شغّل ملف run.bat (ينشئه المثبّت بنفسه).
ضع مودات الخادم في مجلد mods.
يُمنع تثبيت مودات العميل (الخرائط المصغّرة، الشيدرز، تحسين العرض مثل Sodium) على الخادم — فهي تسبب تعطّل النواة عند التشغيل.
كيفية إدخال اللاعبين إلى الخادم
الطريقة 1: Port Forwarding
أفضل طريقة وبأقل بينغ. تتطلب الوصول إلى الراوتر.
ادخل إلى لوحة إعدادات الراوتر (192.168.1.1 في المتصفح).
ابحث عن قسم «Port Forwarding» أو «NAT».
أنشئ قاعدة: المنفذ 25565، البروتوكول TCP/UDP، الـ IP المحلي — عنوان حاسوبك (اعرفه عبر ipconfig).
يتصل اللاعبون عبر عنوان IP الخارجي الخاص بك (موقع 2ip.ua).
الطريقة 2: الأنفاق (Playit.gg)
إذا كان المزوّد يحظر المنافذ.
نزّل البرنامج من playit.gg.
شغّله مع الخادم. سيفتح صفحة في المتصفح.
سجّل، وستمنحك الخدمة عنوانًا عامًا (على سبيل المثال، auto-bridge.playit.gg).
يُدخل اللاعبون هذا العنوان في اللعبة.
الطريقة 3: Radmin VPN
ثبّت Radmin VPN على جميع الحواسيب.
أنشئ شبكة وأعطِ أصدقاءك الاسم.
ينضمون إلى الشبكة.
يتصل اللاعبون عبر عنوان IP لحاسوبك المُبيّن في Radmin VPN.
تفاصيل تقنية / كيف يعمل من الداخل
خادم Minecraft هو تطبيق أحادي الخيط (single-threaded). تُنفَّذ حلقة اللعبة الرئيسية (tick loop)، التي تعالج حركة الوحوش والفيزياء والآليات، حصريًا على نواة واحدة من المعالج.
تحاول اللعبة تنفيذ 20 tick في الثانية (TPS — Ticks Per Second). يُخصَّص لكل tick 50 ميلي ثانية. إذا استغرقت الحسابات وقتًا أطول، تنخفض الـ TPS ويشعر اللاعبون بالتأخير. لهذا السبب بالذات، تكون تردد الساعة لنواة واحدة بالنسبة للخادم أهم من إجمالي عدد الأنوية.
تُستخدم تعددية الخيوط في نوى مثل Paper فقط للتحميل غير المتزامن للـ chunks من القرص ومعالجة الشبكة، لكن منطق اللعبة نفسه يبقى على خيط واحد.
أوامر المسؤول الأساسية
تُدخَل في وحدة تحكم الخادم (بدون /).
الإجراء | الأمر |
منح صلاحيات المشغّل | op [الاسم] |
سحب الصلاحيات | deop [الاسم] |
تفعيل القائمة البيضاء | whitelist on |
الإضافة إلى القائمة البيضاء | whitelist add [الاسم] |
طرد لاعب | kick [الاسم] [السبب] |
حظر لاعب | ban [الاسم] [السبب] |
حفظ العالم يدويًا | save-all |
الاستضافة كبديل
إذا كان الحاسوب المنزلي ضعيفًا، يمكن استئجار خادم.
النوع | الممثلون | المزايا | القيود |
مجانية | Aternos, FalixNodes | لا حاجة للدفع | طوابير للتشغيل، تأخّر عند الضغط، يتوقف الخادم عند عدم وجود لاعبين. |
مدفوعة اقتصادية | PebbleHost, Bloom.host | ابتداءً من 1$ لكل جيجابايت، عمل 24/7 | يجب الدفع شهريًا. |
VDS/VPS | Hetzner, Oracle | تحكم كامل في الجهاز | يتطلب مهارات في إدارة Linux. |
الأخطاء الشائعة وكيفية تجنّبها
الخطأ 1: FAILED TO BIND TO PORT. لا يبدأ الخادم لأن المنفذ 25565 مشغول بالفعل. يحدث غالبًا عند تشغيل اثنين من start.bat. افتح مدير المهام وأغلق جميع عمليات Java(TM) Platform SE binary.
الخطأ 2: UnsupportedClassVersionError. إصدار Java قديم. لـ 1.20.5+ يلزم Java 21، ولـ 1.16.5 — Java 11.
الخطأ 3: تأخّر عند الطيران السريع. لا يستطيع الخادم توليد الـ chunks الجديدة في الوقت المناسب. ثبّت إضافة Chunky وولّد العالم مسبقًا في نطاق نصف قطره 5000 كتلة.
الخطأ 4: تعطّل خادم Fabric/Forge عند التشغيل. وصل إلى مجلد mods مود عميل (خريطة مصغّرة، Sodium). لا يملك الخادم واجهة رسومية ويتعطّل عند محاولة تحميلها.
الخطأ 5: خطأ Invalid session عند الاتصال. يستخدم اللاعب مشغّلًا مقرصنًا مع تفعيل online-mode=true. غيّر القيمة إلى false في server.properties.
الخلاصة
يُعد خادمك الخاص المبني على Paper الخيار الأمثل للبقاء الخاص مع الأصدقاء، لأنه يوفر أداءً ممتازًا ويتيح إضافة الإضافات دون تغيير عميل اللعبة. للحزم الكبيرة ذات الميكانيكيات الجديدة، سيتعين استخدام Fabric أو NeoForge، اللذين يتطلبان مزامنة المودات بين الخادم واللاعبين. التحدي الرئيسي في إعداد خادم منزلي هو فتح المنافذ بشكل صحيح، لكن استخدام خدمات مثل Playit.gg يحل مشكلة المنافذ المحظورة من قِبل المزوّد. وإذا لم يكن أداء الحاسوب المنزلي كافيًا، فإن الانتقال إلى استضافة مدفوعة رخيصة يضمن وصولًا مستقرًا على مدار الساعة طوال أيام الأسبوع.
لا توجد تعليقات بعد. كن أول من يشارك رأيه.