فروش فوری 50% تخفیف روی همه سرورها آخرین روز!
پایان در: 00D 00H 00M 00S
background image
Game Servers 380 7 Days to Die 4 Abiotic Factor 2 Aloft 2 alt:V 2 Americas Army Proving Grounds 2 Among Us 2 Archean 2 ARK Survival Ascended 6 ARK Survival Evolved 3 Arma 3 3 Arma Reforger 2 Aska 2 AssaultCube 2 Assetto Corsa 3 Astro Colony 2 Astroneer 2 Automobilista 2 2 Avorion 2 Banana Shooter 2 Barotrauma 3 BATTALION Legacy 2 BeamNG.drive (BeamMP) 2 Black Mesa 2 Brickadia 2 Call of Duty 2 Citadel: Forged with Fire 2 ClassiCube 2 Clone Hero 2 Colony Survival 2 Conan Exiles 4 Contagion 2 Core Keeper 2 Counter-Strike 2 3 Craftopia 2 CryoFall 2 CS2D 2 Cube 2: Sauerbraten 2 Cubic Odyssey 2 DayZ 4 DDNet 2 DDRaceNetwork 2 Dead Matter 2 Dont Starve Together 4 Eco 2 Empyrion Galactic Survival 2 Enshrouded 3 Escape from Tarkov 2 Euro Truck Simulator 2 2 Factorio 2 Farming Simulator 25 2 Fistful of Frags 2 FiveM 3 FortressCraft Evolved 2 Foundry 2 Foundry VTT 2 Frozen Flame 2 FTL Tachyon 2 Garrys Mod 3 Ground Branch 2 Half-Life 2 Deathmatch 2 Hogwarp 2 Holdfast: Nations at War 2 HumanitZ 2 Hurtworld 2 Hytale 1 Icarus 2 Insurgency Sandstorm 2 IOSoccer 2 Just Cause 3 Multiplayer 2 Kerbal Space Program 2 Killing Floor 2 3 LeagueSandbox 2 Left 4 Dead 2 Left 4 Dead 2 3 Longvinter 2 Los Angeles Crimes 2 Medal of Honor 2 Midnight Ghost Hunt 2 Mindustry 2 Minecraft 4 Minetest 2 Modiverse 2 Mordhau 3 Mount & Blade II: Bannerlord 2 Myth of Empires 2 Nazi Zombies Portable 2 Necesse 2 NeosVR 2 Neverwinter Nights EE 2 Night of the Dead 2 Nightingale 2 No Love Lost 2 No More Room in Hell 2 No One Survived 2 Nova-Life Amboise 2 Nuclear Option 2 Onset 2 Open Fortress 2 OpenArena 2 OpenRA 2 OpenRCT2 2 OpenTTD 2 Operation Harsh Doorstop 2 Palworld 3 Path of Titans 2 Pavlov VR 3 PixARK 2 Plains of Pain 2 Portal Knights 2 Post Scriptum 2 Project Zomboid 8 Puck 2 Quake Live 2 R5Reloaded 2 RedM 2 Renown 2 Resonite 2 Return to Moria 2 Rimworld Together 2 Rising World 2 Risk of Rain 2 1 Rust 4 Satisfactory 1 SCP Secret Laboratory 3 SCUM 2 Smalland 2 Solace Crafting 2 Soldat 2 Soldat 2 2 Sonic Robo Blast 2 2 Sons of the Forest 2 Soulmask 2 SourceCoop 2 Space Engineers 3 Space Station 14 2 Squad 3 Starbound 3 StarMade 2 Stationeers 2 Stormworks 2 Subnautica Nitrox 2 Sunkenland 2 SuperTuxKart 2 Sven Co-op 2 Swords 'n Magic and Stuff 2 Team Fortress 2 3 Teeworlds 2 Terraria 3 TerraTech Worlds 2 TF2 Classified 2 The Forest 3 The Front 2 The Isle 2 Tower Unite 2 Trackmania 2 Unturned 4 Urban Terror 2 V Rising 3 Valheim 3 VEIN 2 Veloren 2 Vintage Story 3 Voyagers of Nera 2 Wolfenstein: Enemy Territory 2 Wreckfest 2 Wurm Unlimited 2 Xonotic 2 Zandronum 2 Getting Started 2 Network & Connectivity 1 Server Management 2
دسته‌بندی‌ها

راهنمای مدیریت و تنظیم ریسورس alt:V

FA altv gta-v admin resources scripts 0 نفر این مقاله را مفید یافتند

این راهنما شامل توسعه ریسورس، تنظیم پایگاه داده، ابزارهای مدیریت، مدیریت بازیکنان، مدیریت وسایل نقلیه و سلاح‌ها، و عیب‌یابی سرور alt:V شما در Legion Hosting می‌باشد. برای تنظیمات اولیه سرور، پیکربندی server.toml و دستورالعمل‌های اتصال، به راهنمای راه‌اندازی سرور alt:V مراجعه کنید.

پنل سرور: تمام مدیریت سرور از طریق GPanel در gpanel.legionhosting.net انجام می‌شود. مدیریت فایل‌ها از طریق تب Files یا SFTP امکان‌پذیر است. برای دستورالعمل‌های SFTP به نحوه آپلود فایل از طریق SFTP مراجعه کنید.

تنظیمات ادمین

alt:V سیستم ادمین داخلی ندارد. قابلیت‌های ادمین از طریق ریسورس‌ها (اسکریپت‌ها) که ایجاد یا نصب می‌کنید پیاده‌سازی می‌شوند. اکثر گیم‌مودها سیستم ادمین خود را با سطوح دسترسی، نقش‌ها و دستورات ادمین پیاده‌سازی می‌کنند.

روش‌های رایج ادمین

  • نقش‌های مبتنی بر پایگاه داده: اکثر فریمورک‌های رول‌پلی و گیم‌مود، نقش‌های ادمین را در پایگاه داده ذخیره می‌کنند. به ادمین‌ها نقش‌هایی (مانند مدیر، ادمین، سوپرادمین) اختصاص داده می‌شود که سطوح دسترسی متفاوتی دارند.
  • ادمین‌های مبتنی بر فایل پیکربندی: تنظیمات ساده‌تر ممکن است از یک فایل پیکربندی استفاده کنند که شامل لیست Steam ID یا alt:V ID ادمین‌ها با سطوح دسترسی آن‌هاست.
  • دستورات کنسول: کنسول سرور در GPanel همیشه دسترسی کامل دارد. می‌توانید اسکریپت‌های سمت سرور بنویسید که ورودی کنسول را برای عملیات ادمین بپذیرند.

راه‌اندازی ریسورس ادمین

  1. یک ریسورس ادمین متناسب با گیم‌مود خود انتخاب یا توسعه دهید.
  2. ریسورس را در پوشه resources/ از طریق تب Files یا SFTP آپلود کنید.
  3. نام ریسورس را به آرایه resources در server.toml اضافه کنید.
  4. ریسورس ادمین را پیکربندی کنید (Steam/alt:V ID ادمین‌ها، سطوح دسترسی و غیره را تنظیم کنید).
  5. سرور را ری‌استارت کنید.
فریمورک‌های جامعه: بسیاری از فریمورک‌های گیم‌مود alt:V (مانند athena، rebar و غیره) با پنل‌های ادمین و سیستم‌های دسترسی داخلی ارائه می‌شوند. استفاده از یک فریمورک معتبر زمان توسعه را به میزان قابل توجهی کاهش می‌دهد.

سیستم ریسورس

ریسورس‌ها بلوک‌های اصلی سازنده سرورهای 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 یا csharpmain (نقطه ورود سمت سرور)، client-main (نقطه ورود سمت کلاینت، در GTA V بازیکن اجرا می‌شود)، client-files (فایل‌هایی که به کلاینت ارسال می‌شوند، از glob پشتیبانی می‌کند)، deps (ریسورس‌های دیگری که باید ابتدا بارگذاری شوند).


نصب ریسورس‌ها

برای نصب یک ریسورس از پیش ساخته شده روی سرور:

  1. فایل‌های ریسورس را دانلود کنید (معمولاً یک پوشه شامل resource.toml و فایل‌های اسکریپت).
  2. سرور خود را در GPanel متوقف کنید.
  3. پوشه ریسورس را در resources/ از طریق تب Files یا SFTP آپلود کنید.
  4. نام پوشه ریسورس را به آرایه resources در server.toml اضافه کنید:
resources = ["existing-resource", "new-resource"]
  1. اگر ریسورس وابستگی‌هایی دارد، مطمئن شوید آن‌ها نیز نصب و لیست شده‌اند.
  2. ریسورس را طبق مستندات آن پیکربندی کنید (فایل‌های پیکربندی، تنظیم پایگاه داده و غیره).
  3. سرور را استارت کنید. کنسول را برای پیام‌های بارگذاری ریسورس و هرگونه خطا بررسی کنید.

حذف یک ریسورس

  1. سرور خود را متوقف کنید.
  2. نام ریسورس را از آرایه resources در server.toml حذف کنید.
  3. در صورت تمایل، پوشه ریسورس را از resources/ حذف کنید.
  4. سرور را استارت کنید.
وابستگی‌ها را بررسی کنید: حذف ریسورسی که ریسورس‌های دیگر به آن وابسته هستند، باعث خرابی آن ریسورس‌های وابسته می‌شود. قبل از حذف، فیلد 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 شامل سرور پایگاه داده نمی‌شود. شما به یک سرویس پایگاه داده جداگانه نیاز دارید. اگر به کمک نیاز دارید، با تیم پشتیبانی ما تماس بگیرید. همیشه از عملیات پایگاه داده ناهمزمان (async) استفاده کنید — فراخوانی‌های همزمان (sync) ترد اصلی را مسدود کرده و باعث لگ می‌شوند.

مدیریت بازیکنان

مدیریت بازیکنان در alt:V از طریق ریسورس‌های شما انجام می‌شود. عملیات رایج شامل:

شناسایی بازیکنان

alt:V چندین شناسه برای هر بازیکن متصل فراهم می‌کند:

شناسه توضیحات
player.id یک شناسه عددی موقت که برای نشست فعلی اختصاص داده می‌شود. با اتصال مجدد تغییر می‌کند.
player.socialID شناسه Rockstar Social Club بازیکن. در نشست‌های مختلف ثابت می‌ماند.
player.hwidHash هش شناسه سخت‌افزاری. برای اعمال بن مفید است.
player.ip آدرس IP بازیکن.

اخراج و بن کردن

قابلیت اخراج (kick) و بن (ban) را در ریسورس‌های خود پیاده‌سازی کنید:

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.");
    }
});
بن‌های ماندگار: alt:V سیستم بن داخلی ندارد. بن‌ها را در پایگاه داده ذخیره کنید و هنگام اتصال بررسی کنید. برای اعمال مطمئن از 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 یک نصب مجدد انجام دهید.
  • نشت حافظه در ریسورس‌ها می‌تواند باعث کمبود RAM سرور در طول زمان شود. نمودارهای منابع GPanel را برای افزایش مداوم مصرف حافظه بررسی کنید.

مشکلات پایگاه داده و صدا

  • اعتبارنامه‌ها و رشته‌های اتصال پایگاه داده را بررسی کنید. برای MongoDB Atlas، آدرس IP سرور خود را در تنظیمات دسترسی شبکه وایت‌لیست کنید.
  • کنسول را برای پیام‌های خطای اتصال پایگاه داده بررسی کنید.
  • چت صوتی نیاز به بخش [voice] در server.toml به اضافه ریسورس‌هایی دارد که منطق کانال صوتی را پیاده‌سازی کنند. تنظیمات به تنهایی فقط زیرساخت را راه‌اندازی می‌کنند.

مشکلات عملکرد

  • ریسورس‌های خود را برای عملیات سنگین پروفایل کنید (حلقه‌های سنگین، فراخوانی‌های همزمان پایگاه داده، ایجاد بیش از حد موجودیت‌ها).
  • از alt.setInterval و alt.setTimeout با احتیاط استفاده کنید. عملیات سنگین در هر تیک رایج‌ترین عامل کاهش عملکرد است.
  • نمودارهای منابع GPanel را برای مصرف CPU و RAM بررسی کنید.
  • برای تعداد بالای بازیکنان، ارتقای پلن سرور را در نظر بگیرید. برای بحث درباره گزینه‌ها یک تیکت پشتیبانی باز کنید.

مقالات مرتبط


به کمک بیشتری نیاز دارید؟

اگر مشکلاتی دارید که در این راهنما پوشش داده نشده است، تیم پشتیبانی ما آماده کمک است. یک تیکت در legionhosting.net/submitticket.php با جزئیات سرور، شرح مشکل و هرگونه پیام خطای مربوطه از کنسول GPanel باز کنید.


آیا این مقاله مفید بود؟

Ready to Get Started?

The servers are booted, select your plan and become our latest satisfied client.