يغطي هذا الدليل تطوير الموارد وإعداد قواعد البيانات وأدوات الإدارة وإدارة اللاعبين وإدارة المركبات والأسلحة واستكشاف الأخطاء وإصلاحها لخادم alt:V الخاص بك على Legion Hosting. للإعداد الأولي للخادم وتكوين server.toml وتعليمات الاتصال، راجع دليل إعداد خادم alt:V.
إعداد المشرف
لا يحتوي alt:V على نظام إدارة مدمج. يتم تنفيذ وظائف الإدارة من خلال الموارد (السكربتات) التي تنشئها أو تثبتها. تنفذ معظم أوضاع اللعب نظام إدارة خاص بها مع مستويات الصلاحيات والأدوار وأوامر المشرف.
أساليب الإدارة الشائعة
- أدوار مدعومة بقاعدة بيانات: تخزن معظم أطر لعب الأدوار وأوضاع اللعب أدوار المشرفين في قاعدة بيانات. يتم تعيين أدوار للمشرفين (مثل مشرف، مدير، مدير أعلى) تمنح مستويات صلاحيات مختلفة.
- مشرفون من ملف التكوين: قد تستخدم الإعدادات الأبسط ملف تكوين يسرد معرفات Steam أو معرفات alt:V للمشرفين مع مستويات صلاحياتهم.
- أوامر وحدة التحكم: تتمتع وحدة تحكم خادم GPanel دائماً بالوصول الكامل. يمكنك كتابة سكربتات من جانب الخادم تقبل إدخال وحدة التحكم لعمليات الإدارة.
إعداد مورد المشرف
- اختر أو طوّر مورد إدارة يناسب وضع اللعب الخاص بك.
- ارفع المورد إلى مجلد
resources/عبر علامة تبويب Files أو SFTP. - أضف اسم المورد إلى مصفوفة
resourcesفيserver.toml. - قم بتكوين مورد المشرف (عيّن معرفات Steam/alt:V الخاصة بك، مستويات الصلاحيات، إلخ).
- أعد تشغيل الخادم.
نظام الموارد
الموارد هي اللبنات الأساسية لخوادم alt:V. كل مورد هو وحدة مستقلة يمكن أن تحتوي على كود من جانب الخادم أو كود من جانب العميل أو كليهما. تُكتب الموارد بلغة JavaScript أو TypeScript أو C#.
هيكل المورد
resources/
my-resource/
resource.toml <-- Resource configuration (required)
server/
index.js <-- Server-side entry point
utils.js <-- Additional server-side files
client/
index.js <-- Client-side entry point (runs in player's GTA V)
shared/
config.js <-- Shared code accessible by both server and client
تكوين resource.toml
type = "js"
main = "server/index.js"
client-main = "client/index.js"
client-files = ["client/*"]
deps = ["chat"]
الحقول: type (js أو csharp)، main (نقطة دخول جانب الخادم)، client-main (نقطة دخول جانب العميل، تعمل في GTA V الخاص باللاعب)، client-files (الملفات المرسلة للعميل، تدعم أنماط glob)، deps (الموارد الأخرى التي يجب تحميلها أولاً).
تثبيت الموارد
لتثبيت مورد جاهز على خادمك:
- قم بتنزيل ملفات المورد (عادةً مجلد يحتوي على
resource.tomlوملفات السكربتات). - أوقف خادمك في GPanel.
- ارفع مجلد المورد إلى
resources/عبر علامة تبويب Files أو SFTP. - أضف اسم مجلد المورد إلى مصفوفة
resourcesفيserver.toml:
resources = ["existing-resource", "new-resource"]
- إذا كان للمورد تبعيات، تأكد من تثبيتها وإدراجها أيضاً.
- قم بتكوين المورد وفقاً لوثائقه (ملفات التكوين، إعداد قاعدة البيانات، إلخ).
- شغّل الخادم. تحقق من وحدة التحكم لرسائل تحميل الموارد وأي أخطاء.
إزالة مورد
- أوقف خادمك.
- أزل اسم المورد من مصفوفة
resourcesفيserver.toml. - اختيارياً احذف مجلد المورد من
resources/. - شغّل الخادم.
deps في الموارد الأخرى قبل الإزالة.
إعداد قاعدة البيانات
تتطلب معظم أوضاع اللعب في alt:V قاعدة بيانات لتخزين بيانات اللاعبين والمركبات والمخزون وغيرها من المعلومات الدائمة. أكثر نظامي قواعد بيانات شيوعاً لـ alt:V هما MongoDB و MySQL/MariaDB.
MongoDB
MongoDB هي قاعدة بيانات مستندات NoSQL تُستخدم عادةً مع موارد JavaScript/TypeScript. استخدم خدمة مُدارة مثل MongoDB Atlas (طبقة مجانية متاحة) أو نسخة مستضافة ذاتياً. احصل على سلسلة الاتصال (مثل mongodb+srv://user:[email protected]/mydb) وقم بتكوينها في ملف تكوين الموارد الخاص بك. تستخدم موارد Node.js حزمة mongodb من npm.
MySQL / MariaDB
يُستخدم MySQL عادةً مع موارد C# وبعض أطر JavaScript. احصل على قاعدة بيانات من خدمة مُدارة أو نسخة مستضافة ذاتياً، وقم بتكوين مواردك بتفاصيل الاتصال (المضيف، المنفذ، اسم المستخدم، كلمة المرور، اسم قاعدة البيانات)، وشغّل أي سكربتات ترحيل SQL مطلوبة.
إدارة اللاعبين
تتم إدارة اللاعبين في alt:V من خلال مواردك. تشمل العمليات الشائعة:
تحديد هوية اللاعبين
يوفر alt:V عدة معرفات لكل لاعب متصل:
| المعرّف | الوصف |
|---|---|
player.id |
معرّف رقمي مؤقت يُعيَّن للجلسة الحالية. يتغير عند إعادة الاتصال. |
player.socialID |
معرّف Rockstar Social Club الخاص باللاعب. ثابت عبر الجلسات. |
player.hwidHash |
تجزئة معرّف الأجهزة. مفيد لتطبيق الحظر. |
player.ip |
عنوان IP الخاص باللاعب. |
الطرد والحظر
نفّذ وظائف الطرد والحظر في مواردك:
import alt from "alt-server";
// Kick a player
player.kick("Reason for kick");
// Ban check on connect (store bans in database)
alt.on("playerConnect", (player) => {
if (isPlayerBanned(player.socialID)) {
player.kick("You are banned from this server.");
}
});
socialID و hwidHash لتطبيق موثوق.
إدارة المركبات والأسلحة
تُدار المركبات والأسلحة من خلال سكربتات جانب الخادم. يمنحك alt:V تحكماً كاملاً في إنشاء وتعديل وإزالة المركبات والأسلحة.
إنشاء المركبات
import alt from "alt-server";
// Spawn a vehicle at a position
const vehicle = new alt.Vehicle(
"sultan", // Vehicle model name
0, 0, 72, // Position (x, y, z)
0, 0, 0 // Rotation (rx, ry, rz)
);
vehicle.numberPlateText = "LEGION";
إعطاء الأسلحة
// Give a weapon to a player
player.giveWeapon(alt.hash("weapon_pistol"), 100, true);
// Remove all weapons
player.removeAllWeapons();
استمرارية المركبات
افتراضياً، توجد المركبات فقط في ذاكرة الخادم وتُفقد عند إعادة التشغيل. للاحتفاظ بالمركبات عبر عمليات إعادة التشغيل، خزّن بياناتها (الطراز، الموقع، التعديلات، المالك) في قاعدة بيانات وأعد إنشاءها عند بدء الخادم.
استكشاف الأخطاء وإصلاحها
الموارد لا تُحمَّل
- تحقق من أن اسم المورد في
server.tomlيطابق تماماً اسم المجلد فيresources/. - تحقق من أن المورد يحتوي على ملف
resource.tomlصالح مع حقولtypeوmainصحيحة. - تحقق من وحدة التحكم لرسائل الخطأ أثناء تحميل الموارد. أخطاء الصياغة في السكربتات ستمنع بدء المورد.
- تأكد من أن جميع التبعيات المدرجة في
depsمثبتة ومحمّلة. - تحقق من تحميل الوحدة الصحيحة في
server.toml(js-moduleلـ JavaScript،csharp-moduleلـ C#).
اللاعبون لا يستطيعون الاتصال
- تحقق من أن الخادم يعمل ويظهر كمتصل في GPanel.
- تأكد من أن اللاعبين يستخدمون مشغّل alt:V، وليس مشغّل GTA V العادي.
- تأكد من أن فرع خادم alt:V يتطابق مع ما لدى اللاعبين (release أو rc أو dev). عدم تطابق الفروع يمنع الاتصال.
- إذا كان محمياً بكلمة مرور، تحقق من أن اللاعبين يدخلون كلمة المرور الصحيحة.
- اطلب من اللاعبين تجربة الاتصال المباشر بعنوان IP والمنفذ. راجع كيفية العثور على عنوان IP والمنفذ الخاص بخادمك.
تعطل الخادم
- تحقق من وحدة التحكم لرسائل الخطأ قبل التعطل.
- الموارد المعطوبة هي السبب الأكثر شيوعاً للتعطل. عطّل الموارد المضافة مؤخراً لعزل المشكلة.
- تأكد من أن ملفات خادمك محدثة. شغّل إعادة التثبيت من علامة تبويب Startup إذا لزم الأمر.
- تسريبات الذاكرة في الموارد قد تتسبب في نفاد ذاكرة الخادم بمرور الوقت. راقب رسومات موارد GPanel للاستخدام المتزايد باستمرار للذاكرة.
مشاكل قاعدة البيانات والصوت
- تحقق من بيانات اعتماد قاعدة البيانات وسلاسل الاتصال. بالنسبة لـ MongoDB Atlas، أضف عنوان IP الخادم إلى القائمة البيضاء في إعدادات الوصول للشبكة.
- تحقق من وحدة التحكم لرسائل خطأ اتصال قاعدة البيانات.
- يتطلب الدردشة الصوتية قسم
[voice]فيserver.tomlبالإضافة إلى موارد تنفذ منطق قنوات الصوت. التكوين وحده يُعدّ البنية التحتية فقط.
مشاكل الأداء
- حلّل مواردك بحثاً عن العمليات المكلفة (حلقات ثقيلة، استدعاءات قاعدة بيانات متزامنة، إنشاء كيانات مفرط).
- استخدم
alt.setIntervalوalt.setTimeoutباعتدال. العمليات الثقيلة لكل إطار هي القاتل الأكثر شيوعاً للأداء. - راقب رسومات موارد GPanel لاستخدام المعالج والذاكرة.
- فكّر في ترقية خطة خادمك لأعداد اللاعبين العالية. افتح تذكرة دعم لمناقشة الخيارات.
مقالات ذات صلة
- دليل إعداد خادم alt:V — الإعداد الأولي، تكوين server.toml، الدردشة الصوتية، وتعليمات الاتصال
- كيفية العثور على عنوان IP والمنفذ الخاص بخادمك
- كيفية رفع الملفات عبر SFTP
- دليل بدء الخادم — دليل عام لبدء أي خادم لعبة على Legion Hosting
تحتاج مساعدة إضافية؟
إذا كنت تواجه مشاكل غير مشمولة في هذا الدليل، فإن فريق الدعم لدينا متاح للمساعدة. افتح تذكرة على legionhosting.net/submitticket.php مع تفاصيل خادمك ووصف المشكلة وأي رسائل خطأ ذات صلة من وحدة تحكم GPanel.