Czym jest kq_link? Most, na którym działają skrypty KuzQuality
Przy instalacji skryptu KuzQuality na liście wymaganych zależności pojawia się kq_link. W tym wpisie wyjaśniamy, czym jest, po co istnieje i dlaczego stojące za nim rozwiązanie jest tak powszechne wśród twórców skryptów FiveM.
Problem: serwery FiveM nie są ustandaryzowane
Serwery FiveM działają na różnych frameworkach. Jedne używają ESX, inne QBCore, jeszcze inne QBox, vRP, TMC albo czegoś całkowicie własnego. Do tego każdy serwer może mieć inny system ekwipunku, inny system targetowania i inny system powiadomień.
Skrypt, który komunikuje się bezpośrednio z ESX, nie zadziała na QBCore bez zmian w kodzie. Skrypt, który wywołuje ox_target, przestanie działać na serwerze z qb-target. A skrypt korzystający z jednego systemu powiadomień będzie wyglądał źle na serwerze, który używa innego.
To problem dla każdego twórcy skryptów, który chce, żeby jego praca działała na więcej niż jednej konfiguracji serwera. Naiwne rozwiązanie to pisanie osobnej wersji pod każdy framework. To czasochłonne i trudne w utrzymaniu. Lepsze rozwiązanie to most (ang. bridge).
Czym jest most (bridge) dla skryptów?
Most to zasób, który stoi pomiędzy skryptem a zależnościami serwera. Zamiast wywoływać ESX lub QBCore bezpośrednio, skrypt wywołuje most. Most sprawdza, jaki framework i jakie zależności działają na serwerze, i odpowiednio tłumaczy wywołanie.
To nie jest pomysł wyłącznie KuzQuality. Większość poważnych twórców skryptów FiveM korzysta z jakiejś formy mostu. Na listach zależności innych skryptów można spotkać podobne zasoby, takie jak ox_lib, jim_bridge, pp-bridge czy tw_bridge. Zasada jest we wszystkich ta sama: piszesz skrypt raz, a most zajmuje się różnicami między frameworkami.
Czym jest kq_link?
kq_link to udostępniony jako open source most od KuzQuality. Łączy skrypty KuzQuality z frameworkiem, systemem ekwipunku, systemem targetowania i systemem powiadomień, których używa serwer.
W praktyce zajmuje się tym:
- Wykrywanie frameworka: automatycznie rozpoznaje, czy serwer działa na ESX, QBCore, QBox, vRP, TMC, czy bez żadnego frameworka
- Integracja z ekwipunkiem: kieruje sprawdzanie, dodawanie i usuwanie przedmiotów do właściwego systemu ekwipunku
- System powiadomień: wysyła powiadomienia przez ten zasób powiadomień, którego używa serwer
- System targetowania: działa z ox_target, qb-target lub z wbudowanym zapasowym tekstem 3D
- Funkcje pomocnicze: wspólne narzędzia, z których korzystają skrypty KuzQuality, dzięki czemu nie trzeba ich implementować od nowa w każdym zasobie
Ponieważ kq_link zajmuje się tym wszystkim, żaden skrypt KuzQuality nie musi wiedzieć, na jakim frameworku działa serwer. Skrypt po prostu wywołuje kq_link, a kq_link robi resztę.
Dlaczego to osobny zasób?
kq_link instaluje się raz i jest współdzielony przez wszystkie skrypty KuzQuality. Każdy skrypt na serwerze, który korzysta z kq_link, używa tego samego mostu, zamiast dołączać własną kopię tego samego kodu.
Oznacza to też, że zmiany w kompatybilności z frameworkami trzeba wprowadzać tylko w jednym miejscu. Gdy nowa wersja frameworka coś zmienia, aktualizowany jest kq_link, a wszystkie skrypty KuzQuality automatycznie na tym zyskują.
Instalacja kq_link
kq_link jest darmowy i open source. Znajdziesz go na GitHubie: github.com/Kuzkay/kq_link.
Instalacja jest prosta:
- Pobierz lub sklonuj kq_link do folderu
resources/na serwerze. Folder musi nazywać się dokładniekq_link. Zmiana nazwy zepsuje wszystkie skrypty KuzQuality, które od niego zależą. - Otwórz
server.cfgi dodajensure kq_linkpo frameworku i wszelkich zależnościach, takich jak systemy targetowania czy powiadomień - Otwórz
kq_link/config.luai ustaw framework oraz zależności
kq_link ma automatyczne wykrywanie frameworka, ale mimo to zalecamy ręczne ustawienie frameworka w configu, żeby uniknąć jakichkolwiek niejasności.
Pełna instrukcja instalacji jest dostępna na docs.kuzquality.com.
Podsumowanie
Mosty (bridge) to standardowe rozwiązanie w tworzeniu skryptów FiveM. Rozwiązują problem rozdrobnienia frameworków, działając jako warstwa tłumacząca między skryptem a zależnościami serwera.
kq_link to wersja tego rozwiązania od KuzQuality. Jest darmowy, open source i wymagany przez wszystkie skrypty KuzQuality. Zainstaluj go raz, skonfiguruj pod swój serwer, a każdy skrypt KuzQuality będzie działał niezależnie od tego, jaki framework jest uruchomiony.




