Ez az útmutató a resource fejlesztést, adatbázis beállítást, admin eszközöket, játékos kezelést, jármű- és fegyverkezelést, valamint a hibaelhárítást tárgyalja az alt:V szerveredhez a Legion Hosting-on. A kezdeti szerver beállításhoz, server.toml konfigurációhoz és csatlakozási útmutatóhoz lásd az alt:V Szerver beállítási útmutató cikket.
Admin beállítás
Az alt:V nem rendelkezik beépített admin rendszerrel. Az admin funkciók resource-okon (szkripteken) keresztül valósulnak meg, amelyeket te hozol létre vagy telepítesz. A legtöbb játékmód saját admin rendszert valósít meg jogosultsági szintekkel, szerepkörökkel és admin parancsokkal.
Gyakori admin megoldások
- Adatbázis-alapú szerepkörök: A legtöbb roleplay és játékmód keretrendszer az admin szerepköröket adatbázisban tárolja. Az adminokhoz szerepkörök vannak rendelve (pl. moderátor, admin, superadmin), amelyek különböző jogosultsági szinteket biztosítanak.
- Konfiguráció-alapú adminok: Egyszerűbb beállítások használhatnak konfigurációs fájlt, amely az admin Steam ID-kat vagy alt:V ID-kat és azok jogosultsági szintjeit tartalmazza.
- Konzol parancsok: A GPanel szerver konzol mindig teljes hozzáféréssel rendelkezik. Írhatsz szerver oldali szkripteket, amelyek konzol bemeneteket fogadnak admin műveletekhez.
Admin resource beállítása
- Válassz vagy fejlessz egy admin resource-t, amely illeszkedik a játékmódodhoz.
- Töltsd fel a resource-t a
resources/könyvtárba a Files fülön vagy SFTP-n keresztül. - Add hozzá a resource nevét a
resourcestömbhöz aserver.tomlfájlban. - Konfiguráld az admin resource-t (állítsd be az admin Steam/alt:V ID-kat, jogosultsági szinteket stb.).
- Indítsd újra a szervert.
Resource rendszer
A resource-ok az alt:V szerverek alapvető építőkövei. Minden resource egy önálló modul, amely tartalmazhat szerver oldali kódot, kliens oldali kódot vagy mindkettőt. A resource-ok JavaScript, TypeScript vagy C# nyelven íródnak.
Resource felépítés
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 konfiguráció
type = "js"
main = "server/index.js"
client-main = "client/index.js"
client-files = ["client/*"]
deps = ["chat"]
Mezők: type (js vagy csharp), main (szerver oldali belépési pont), client-main (kliens oldali belépési pont, a játékos GTA V-jében fut), client-files (kliensnek küldendő fájlok, glob mintákat támogat), deps (előbb betöltendő resource-ok).
Resource-ok telepítése
Előre elkészített resource telepítése a szerveredre:
- Töltsd le a resource fájlokat (általában egy mappa, amely
resource.tomlfájlt és szkript fájlokat tartalmaz). - Állítsd le a szerveredet a GPanel-ben.
- Töltsd fel a resource mappát a
resources/könyvtárba a Files fülön vagy SFTP-n keresztül. - Add hozzá a resource mappa nevét a
resourcestömbhöz aserver.tomlfájlban:
resources = ["existing-resource", "new-resource"]
- Ha a resource-nak függőségei vannak, győződj meg róla, hogy azok is telepítve vannak és szerepelnek a listában.
- Konfiguráld a resource-t a dokumentációja szerint (konfigurációs fájlok, adatbázis beállítás stb.).
- Indítsd el a szervert. Ellenőrizd a konzolban a resource betöltési üzeneteket és az esetleges hibákat.
Resource eltávolítása
- Állítsd le a szervert.
- Távolítsd el a resource nevét a
resourcestömbből aserver.tomlfájlban. - Opcionálisan töröld a resource mappát a
resources/könyvtárból. - Indítsd el a szervert.
deps mezőt a többi resource-ban.
Adatbázis beállítás
A legtöbb alt:V játékmód adatbázist igényel a játékos adatok, járművek, inventárok és egyéb állandó információk tárolásához. Az alt:V két leggyakoribb adatbázis rendszere a MongoDB és a MySQL/MariaDB.
MongoDB
A MongoDB egy NoSQL dokumentum adatbázis, amelyet általában JavaScript/TypeScript resource-okkal használnak. Használj egy felügyelt szolgáltatást, mint a MongoDB Atlas (ingyenes szint elérhető) vagy egy saját üzemeltetésű példányt. Szerezd be a kapcsolati sztringet (pl. mongodb+srv://user:[email protected]/mydb) és konfiguráld a resource konfigurációs fájljában. A Node.js resource-ok a mongodb npm csomagot használják.
MySQL / MariaDB
A MySQL-t általában C# resource-okkal és egyes JavaScript keretrendszerekkel használják. Szerezz adatbázist egy felügyelt szolgáltatástól vagy saját üzemeltetésű példánytól, konfiguráld a resource-okat a kapcsolati adatokkal (hoszt, port, felhasználónév, jelszó, adatbázis név), és futtasd a szükséges SQL migrációs szkripteket.
Játékos kezelés
A játékos kezelés az alt:V-ben a resource-okon keresztül történik. Gyakori műveletek:
Játékosok azonosítása
Az alt:V több azonosítót biztosít minden csatlakozott játékoshoz:
| Azonosító | Leírás |
|---|---|
player.id |
Egy ideiglenes numerikus ID, amely az aktuális munkamenethez van rendelve. Újracsatlakozáskor változik. |
player.socialID |
A játékos Rockstar Social Club ID-ja. Munkamenetek között is állandó. |
player.hwidHash |
Hardver azonosító hash. Hasznos kitiltások érvényesítéséhez. |
player.ip |
A játékos IP címe. |
Kirúgás és kitiltás
Valósítsd meg a kirúgás és kitiltás funkciókat a resource-aidban:
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 és hwidHash azonosítókat a megbízható érvényesítéshez.
Jármű- és fegyverkezelés
A járműveket és fegyvereket szerver oldali szkripteken keresztül kezeljük. Az alt:V teljes kontrollt biztosít a járművek és fegyverek létrehozása, módosítása és eltávolítása felett.
Járművek létrehozása
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";
Fegyverek adása
// Give a weapon to a player
player.giveWeapon(alt.hash("weapon_pistol"), 100, true);
// Remove all weapons
player.removeAllWeapons();
Jármű perzisztencia
Alapértelmezetten a járművek csak a szerver memóriájában léteznek, és újraindításkor elvesznek. A járművek megőrzéséhez újraindítások között tárold az adataikat (modell, pozíció, módosítások, tulajdonos) adatbázisban, és hozd létre őket újra a szerver indításakor.
Hibaelhárítás
Resource-ok nem töltődnek be
- Ellenőrizd, hogy a resource neve a
server.tomlfájlban pontosan megegyezik a mappa nevével aresources/könyvtárban. - Ellenőrizd, hogy a resource rendelkezik érvényes
resource.tomlfájllal helyestypeésmainmezőkkel. - Ellenőrizd a konzolban a hibaüzeneteket a resource betöltés során. A szkriptekben lévő szintaktikai hibák megakadályozzák a resource indulását.
- Győződj meg róla, hogy a
deps-ben felsorolt összes függőség telepítve van és betöltődik. - Ellenőrizd, hogy a megfelelő modul van betöltve a
server.toml-ban (js-moduleJavaScripthez,csharp-moduleC#-hoz).
Játékosok nem tudnak csatlakozni
- Ellenőrizd, hogy a szerver fut és online állapotot mutat a GPanel-ben.
- Ellenőrizd, hogy a játékosok az alt:V launcher-t használják, nem a hagyományos GTA V indítót.
- Győződj meg róla, hogy az alt:V szerver branch megegyezik azzal, amit a játékosok használnak (release, rc vagy dev). Eltérő branch-ek megakadályozzák a csatlakozást.
- Ha jelszóvédett, ellenőrizd, hogy a játékosok a helyes jelszót adják meg.
- A játékosok próbáljanak közvetlen csatlakozást az IP-vel és porttal. Lásd: Szerver IP és port megkeresése.
Szerver összeomlások
- Ellenőrizd a konzolban a hibaüzeneteket az összeomlás előtt.
- A hibás resource-ok az összeomlások leggyakoribb okai. Kapcsold ki a nemrég hozzáadott resource-okat a probléma behatárolásához.
- Győződj meg róla, hogy a szerver fájlok naprakészek. Szükség esetén indíts újratelepítést a Startup fülön.
- A resource-okban lévő memóriaszivárgások idővel a szerver RAM-jának kimerüléséhez vezethetnek. Figyelemmel kísérd a GPanel erőforrás grafikonjait a folyamatosan növekvő memóriahasználat szempontjából.
Adatbázis és hang problémák
- Ellenőrizd az adatbázis hitelesítő adatokat és kapcsolati sztringeket. MongoDB Atlas esetén engedélyezd a szervered IP-jét a hálózati hozzáférés beállításokban.
- Ellenőrizd a konzolban az adatbázis kapcsolati hibaüzeneteket.
- A hangos csevegéshez szükséges a
[voice]szekció aserver.toml-ban, valamint resource-ok, amelyek megvalósítják a hangcsatorna logikát. A konfiguráció önmagában csak az infrastruktúrát állítja be.
Teljesítmény problémák
- Profilozd a resource-aidat a költséges műveletek szempontjából (nehéz ciklusok, szinkron adatbázis hívások, túlzott entitás létrehozás).
- Használd az
alt.setIntervalésalt.setTimeoutfüggvényeket takarékosan. A tick-enkénti nehéz műveletek a leggyakoribb teljesítmény problémák. - Figyelemmel kísérd a GPanel erőforrás grafikonjait a CPU és RAM használat szempontjából.
- Fontold meg a szerver csomag frissítését magas játékosszám esetén. Nyiss egy támogatási jegyet a lehetőségek megbeszéléséhez.
Kapcsolódó cikkek
- alt:V Szerver beállítási útmutató — Kezdeti beállítás, server.toml konfiguráció, hangos csevegés és csatlakozási útmutató
- Szerver IP és port megkeresése
- Fájlok feltöltése SFTP-n keresztül
- Szerver indítási útmutató — Általános útmutató bármely játékszerver indításához a Legion Hosting-on
További segítségre van szükséged?
Ha olyan problémákat tapasztalsz, amelyeket ez az útmutató nem tárgyal, támogatói csapatunk készséggel segít. Nyiss egy jegyet a legionhosting.net/submitticket.php címen a szerver adataiddal, a probléma leírásával és a GPanel konzolból származó releváns hibaüzenetekkel.