Jak zainstalować serwer QBox: przepis, stack i pierwsze błędy
Zainstaluj QBox na FiveM za pomocą przepisu txAdmin: stack qbx_core, ox_lib, ox_inventory, oxmysql i ox_target, jak się różni od QBCore i typowe pierwsze błędy.
Chcesz serwera QBox i chcesz wiedzieć, co jest w stacku, jak go zainstalować i jak się różni od QBCore. Ten przewodnik daje ci trasę przepisu, elementy, które tworzą QBox, różnice do obserwacji i pierwsze błędy, które ludzie trafiają.
Zainstaluj za pomocą przepisu txAdmin
QBox jest stworzony do instalacji za pomocą przepisu txAdmin. W konfiguracji txAdmin wybierz szablon QBox w popularnych przepisach (lub wklej adres URL przepisu z dokumentacji projektu QBox). Kroki są takie same jak w konfiguracji txAdmin i przepisach: klucz licencji, poświadczenia bazy danych, następnie przejrzyj server.cfg i uruchom.
Zawsze weź przepis z samego projektu QBox. Jego lista zasobów zmienia się w miarę rozrostu projektu, a przepis pozostaje aktualny.
Stack QBox
QBox to zestaw zasobów zbudowanych wokół bibliotek Overextended. Podstawowe elementy:
| Zasób | Rola |
|---|---|
oxmysql |
Dostęp do bazy danych |
ox_lib |
Biblioteka: callbacki, powiadomienia, menu, strefy, UI |
qbx_core |
Framework: gracze, prace, gangi, postaci |
ox_inventory |
Ekwipunek, przedmioty, schowki i sklepy |
ox_target |
Interakcja trzeciego oka |
Na górze tych, przepis dodaje zasoby qbx_ dla prac, pojazdów, domów i tak dalej, plus zasoby autonomiczne, takie jak głos.
Ręczny server.cfg wygląda tak:
set mysql_connection_string "mysql://user:password@localhost/qbox?charset=utf8mb4"
ensure oxmysql
ensure ox_lib
ensure qbx_core
ensure ox_inventory
ensure ox_target
ensure [qbx]
ensure [standalone]Przepis pisze dokładną listę dla wersji, którą instaluje, więc traktuj to jako kształt, a nie zawartość. Kolejność ma znaczenie: przeczytaj kolejność ensure server.cfg.
Co się różni od QBCore
- Nazwa rdzenia. Framework to
qbx_core. Nie ma folderuqb-core, i nie powinieneś go trzymać obok niego. - Ekwipunek. QBox używa ox_inventory. Elementy są zdefiniowane dla ox_inventory, a nie w pliku wspólnych elementów qb. Przeczytaj ox_inventory add items.
- Biblioteki zamiast helperów. Callbacki, powiadomienia, menu kontekstowe i paski postępu pochodzą z ox_lib. Przeczytaj callbacki na ESX, QBCore i ox_lib i powiadomienia i paski postępu.
- Targetowanie. ox_target to zasób targetowania: ox_target add zone. Różnice z celem QBCore są w qb-target vs ox-target.
- Eksporty. QBox ma jego własne eksporty, na przykład na serwerze:
local player = exports.qbx_core:GetPlayer(source)
if player then
print(player.PlayerData.citizenid)
endSposób QBCore exports['qb-core']:GetCoreObject() wciąż odpowiada przez warstwę kompatybilności, dlatego wiele skryptów QBCore działa. Dla pełnej konwersji przeczytaj convert a QBCore script to QBox.
Pierwsze sprawdzenia
Uruchom serwer i przeczytaj konsolę, zanim dołączysz:
- oxmysql się łączy.
- ox_lib i qbx_core się uruchamiają bez błędów.
- ox_inventory się uruchamia. Ma własne sprawdzenia przy starcie i raportuje problemy wyraźnie, więc przeczytaj, co wypisuje.
- Możesz dołączyć, utworzyć postać i spawn.
- Twój ekwipunek się otwiera z kluczem, który przepis skonfigurował.
Dla uprawnień administratora QBox używa głównych ACE w server.cfg, w ten sam sposób co inne frameworki. Przeczytaj uprawnienia ACE.
Częste pierwsze błędy
Skrypt QBCore nie może znaleźć rdzenia. Jeśli warstwa kompatybilności nie jest aktywna, lub qbx_core nie powiódł się w uruchomieniu, otrzymujesz:
No such export GetCoreObject in resource qb-coreSprawdź, czy qbx_core się uruchomił bez błędów i czy nie istnieje stary folder qb-core. Przeczytaj QBCore nil: naprawa GetCoreObject.
ox_lib nie załadowany. Skrypt, który wołuje lib przed uruchomieniem ox_lib, zawala się. Umieść ensure ox_lib blisko górze i dodaj @ox_lib/init.lua do manifestu skryptu. Przeczytaj ox_lib init.lua not found.
Błędy bazy danych. Zły ciąg połączenia, lub baza danych nie została utworzona. Przeczytaj błąd połączenia oxmysql.
Dwa ekwipunki. Uruchamianie qb-inventory obok ox_inventory powoduje zduplikowane i zepsute przedmioty. Trzymaj tylko ox_inventory.
Zasób się nie uruchamia. Could not find dependency mówi ci, co brakuje.
Lista kontrolna
| Objaw | Naprawa |
|---|---|
No such export GetCoreObject in resource qb-core |
Uruchom qbx_core pierwszy, usuń każdy stary folder qb-core |
Skrypt mówi, że lib jest nil |
ensure ox_lib wcześniej i załaduj @ox_lib/init.lua w manifeście |
| Przedmioty brakują lub są zduplikowane | Używaj tylko ox_inventory i definiuj dla niego elementy |
| Nie można się połączyć z bazą danych | Sprawdź mysql_connection_string i że baza danych istnieje |
| Skrypt QBCore się misbehaves | Sprawdź, czy polega na qb-inventory lub innych wewnętrznych qb |
| Nie jest administratorem | Dodaj swój identyfikator za pomocą add_principal i uruchom ponownie |
Szybkie odpowiedzi
Czy QBox jest kompatybilny ze skryptami QBCore?
Przede wszystkim. qbx_core utrzymuje warstwę kompatybilności, więc exports['qb-core']:GetCoreObject() wciąż działa i wiele skryptów QBCore działa bez zmian. Skrypty, które zależą od qb-inventory lub innych wewnętrznych qb, mogą potrzebować zmian.
Czy potrzebuję ox_inventory na QBox?
Tak, stack QBox jest zbudowany wokół ox_inventory, z ox_lib i ox_target. Nie uruchamiaj qb-inventory obok niego.
Czy mogę zainstalować QBox bez txAdmin?
Tak, ale przepis txAdmin jest obsługiwaną trasą, ponieważ pobiera pasujące zasoby i pisze server.cfg. Instalacja ręczna podąża tą samą kolejnością, ale wymaga więcej sprawdzania.
Skrypty bez tego problemu
Item Creator V2Twórz używalne przedmioty z animacjami, propami, efektami i nie tylko — bez pisania kodu.Zobacz skrypt →
Shop CreatorZbuduj sklep w niecałą minutę — właściciele, pracownicy, sejfy i napady w zestawie.Zobacz skrypt →
Mic PhoneSkładany telefon, który rozkłada się w tablet i działa też na prawdziwym telefonie gracza.Zobacz skrypt →