Ten przewodnik obejmuje rozwój zasobów, konfigurację bazy danych, narzędzia administracyjne, zarządzanie graczami, zarządzanie pojazdami i bronią oraz rozwiązywanie problemów dla Twojego serwera alt:V na Legion Hosting. Aby zapoznać się z początkową konfiguracją serwera, konfiguracją server.toml i instrukcjami połączenia, zobacz Przewodnik konfiguracji serwera alt:V.
Konfiguracja administratora
alt:V nie ma wbudowanego systemu administracyjnego. Funkcjonalność administracyjna jest implementowana za pomocą zasobów (skryptów), które tworzysz lub instalujesz. Większość trybów gry implementuje własny system administracyjny z poziomami uprawnień, rolami i poleceniami administracyjnymi.
Typowe podejścia administracyjne
- Role oparte na bazie danych: Większość frameworków roleplay i trybów gry przechowuje role administracyjne w bazie danych. Administratorom przypisywane są role (np. moderator, administrator, superadministrator), które przyznają różne poziomy uprawnień.
- Administratorzy oparci na konfiguracji: Prostsze konfiguracje mogą używać pliku konfiguracyjnego zawierającego listę identyfikatorów Steam ID lub alt:V ID administratorów wraz z ich poziomami uprawnień.
- Polecenia konsoli: Konsola serwera GPanel zawsze ma pełny dostęp. Możesz napisać skrypty po stronie serwera, które przyjmują dane wejściowe z konsoli do operacji administracyjnych.
Konfigurowanie zasobu administracyjnego
- Wybierz lub opracuj zasób administracyjny, który pasuje do Twojego trybu gry.
- Prześlij zasób do katalogu
resources/za pomocą zakładki Files lub SFTP. - Dodaj nazwę zasobu do tablicy
resourceswserver.toml. - Skonfiguruj zasób administracyjny (ustaw identyfikatory Steam/alt:V swoich administratorów, poziomy uprawnień itp.).
- Zrestartuj serwer.
System zasobów
Zasoby są podstawowymi elementami budulcowymi serwerów alt:V. Każdy zasób jest samodzielnym modułem, który może zawierać kod po stronie serwera, kod po stronie klienta lub oba. Zasoby są napisane w JavaScript, TypeScript lub C#.
Struktura zasobu
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
Konfiguracja resource.toml
type = "js"
main = "server/index.js"
client-main = "client/index.js"
client-files = ["client/*"]
deps = ["chat"]
Pola: type (js lub csharp), main (punkt wejścia po stronie serwera), client-main (punkt wejścia po stronie klienta, uruchamiany w GTA V gracza), client-files (pliki do wysłania do klienta, obsługuje wzorce glob), deps (inne zasoby do załadowania jako pierwsze).
Instalowanie zasobów
Aby zainstalować gotowy zasób na swoim serwerze:
- Pobierz pliki zasobu (zazwyczaj folder zawierający
resource.tomli pliki skryptów). - Zatrzymaj swój serwer w GPanel.
- Prześlij folder zasobu do
resources/za pomocą zakładki Files lub SFTP. - Dodaj nazwę folderu zasobu do tablicy
resourceswserver.toml:
resources = ["existing-resource", "new-resource"]
- Jeśli zasób ma zależności, upewnij się, że są one również zainstalowane i wymienione.
- Skonfiguruj zasób zgodnie z jego dokumentacją (pliki konfiguracyjne, konfiguracja bazy danych itp.).
- Uruchom serwer. Sprawdź konsolę pod kątem komunikatów o ładowaniu zasobów i wszelkich błędów.
Usuwanie zasobu
- Zatrzymaj swój serwer.
- Usuń nazwę zasobu z tablicy
resourceswserver.toml. - Opcjonalnie usuń folder zasobu z
resources/. - Uruchom serwer.
deps w innych zasobach przed usunięciem.
Konfiguracja bazy danych
Większość trybów gry alt:V wymaga bazy danych do przechowywania danych graczy, pojazdów, ekwipunków i innych trwałych informacji. Dwa najczęstsze systemy baz danych dla alt:V to MongoDB i MySQL/MariaDB.
MongoDB
MongoDB to baza danych dokumentów NoSQL powszechnie używana z zasobami JavaScript/TypeScript. Użyj usługi zarządzanej, takiej jak MongoDB Atlas (dostępna darmowa warstwa) lub instancji hostowanej samodzielnie. Pobierz swój ciąg połączenia (np. mongodb+srv://user:[email protected]/mydb) i skonfiguruj go w pliku konfiguracyjnym swojego zasobu. Zasoby Node.js używają pakietu npm mongodb.
MySQL / MariaDB
MySQL jest powszechnie używany z zasobami C# i niektórymi frameworkami JavaScript. Uzyskaj bazę danych z usługi zarządzanej lub instancji hostowanej samodzielnie, skonfiguruj swoje zasoby ze szczegółami połączenia (host, port, nazwa użytkownika, hasło, nazwa bazy danych) i uruchom wszelkie wymagane skrypty migracji SQL.
Zarządzanie graczami
Zarządzanie graczami w alt:V jest obsługiwane za pomocą Twoich zasobów. Typowe operacje obejmują:
Identyfikacja graczy
alt:V udostępnia kilka identyfikatorów dla każdego połączonego gracza:
| Identyfikator | Opis |
|---|---|
player.id |
Tymczasowy identyfikator numeryczny przypisany dla bieżącej sesji. Zmienia się przy ponownym połączeniu. |
player.socialID |
Identyfikator Rockstar Social Club gracza. Trwały między sesjami. |
player.hwidHash |
Hash identyfikatora sprzętowego. Przydatny do egzekwowania banów. |
player.ip |
Adres IP gracza. |
Wyrzucanie i banowanie
Zaimplementuj funkcjonalność wyrzucania i banowania w swoich zasobach:
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 i hwidHash dla niezawodnego egzekwowania.
Zarządzanie pojazdami i bronią
Pojazdy i broń są zarządzane za pomocą skryptów po stronie serwera. alt:V daje Ci pełną kontrolę nad odradzaniem, modyfikowaniem i usuwaniem pojazdów oraz broni.
Odradzanie pojazdów
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";
Dawanie broni
// Give a weapon to a player
player.giveWeapon(alt.hash("weapon_pistol"), 100, true);
// Remove all weapons
player.removeAllWeapons();
Trwałość pojazdów
Domyślnie pojazdy istnieją tylko w pamięci serwera i są tracone przy restarcie. Aby zachować pojazdy między restartami, przechowuj ich dane (model, pozycja, modyfikacje, właściciel) w bazie danych i odtwarzaj je przy uruchomieniu serwera.
Rozwiązywanie problemów
Zasoby się nie ładują
- Sprawdź, czy nazwa zasobu w
server.tomldokładnie odpowiada nazwie folderu wresources/. - Zweryfikuj, czy zasób ma prawidłowy plik
resource.tomlz poprawnymi polamitypeimain. - Sprawdź konsolę pod kątem komunikatów o błędach podczas ładowania zasobów. Błędy składni w skryptach uniemożliwią uruchomienie zasobu.
- Upewnij się, że wszystkie zależności wymienione w
depssą zainstalowane i załadowane. - Zweryfikuj, czy poprawny moduł jest załadowany w
server.toml(js-moduledla JavaScript,csharp-moduledla C#).
Gracze nie mogą się połączyć
- Zweryfikuj, czy serwer działa i jest wyświetlany jako online w GPanel.
- Sprawdź, czy gracze używają launchera alt:V, a nie zwykłego launchera GTA V.
- Upewnij się, że gałąź serwera alt:V odpowiada tej, którą mają gracze (release, rc lub dev). Niezgodne gałęzie uniemożliwiają połączenia.
- Jeśli serwer jest chroniony hasłem, zweryfikuj, czy gracze wprowadzają poprawne hasło.
- Niech gracze spróbują bezpośredniego połączenia z IP i portem. Zobacz Jak znaleźć IP i port swojego serwera.
Awarie serwera
- Sprawdź konsolę pod kątem komunikatów o błędach przed awarią.
- Wadliwe zasoby są najczęstszą przyczyną awarii. Wyłącz niedawno dodane zasoby, aby zidentyfikować problem.
- Upewnij się, że pliki Twojego serwera są aktualne. W razie potrzeby wywołaj ponowną instalację z zakładki Startup.
- Wycieki pamięci w zasobach mogą spowodować, że serwerowi z czasem zabraknie pamięci RAM. Monitoruj wykresy zasobów GPanel pod kątem stale rosnącego użycia pamięci.
Problemy z bazą danych i głosem
- Zweryfikuj dane uwierzytelniające bazy danych i ciągi połączenia. W przypadku MongoDB Atlas dodaj IP swojego serwera do białej listy w ustawieniach dostępu sieciowego.
- Sprawdź konsolę pod kątem komunikatów o błędach połączenia z bazą danych.
- Czat głosowy wymaga sekcji
[voice]wserver.tomloraz zasobów implementujących logikę kanałów głosowych. Sama konfiguracja konfiguruje tylko infrastrukturę.
Problemy z wydajnością
- Profiluj swoje zasoby pod kątem kosztownych operacji (ciężkie pętle, synchroniczne wywołania bazy danych, nadmierne tworzenie bytów).
- Używaj
alt.setIntervalialt.setTimeoutoszczędnie. Ciężkie operacje na każde tyknięcie są najczęstszym zabójcą wydajności. - Monitoruj wykresy zasobów GPanel pod kątem użycia CPU i RAM.
- Rozważ uaktualnienie planu serwera dla dużej liczby graczy. Otwórz zgłoszenie do pomocy technicznej, aby omówić opcje.
Powiązane artykuły
- Przewodnik konfiguracji serwera alt:V — Początkowa konfiguracja, konfiguracja server.toml, czat głosowy i instrukcje połączenia
- Jak znaleźć IP i port swojego serwera
- Jak przesyłać pliki przez SFTP
- Przewodnik uruchamiania serwera — Ogólny przewodnik dotyczący uruchamiania dowolnego serwera gry na Legion Hosting
Potrzebujesz więcej pomocy?
Jeśli doświadczasz problemów nieopisanych w tym przewodniku, nasz zespół pomocy technicznej jest dostępny, aby pomóc. Otwórz zgłoszenie pod adresem legionhosting.net/submitticket.php, podając szczegóły swojego serwera, opis problemu i wszelkie istotne komunikaty o błędach z konsoli GPanel.