Jak skonfigurować serwer FiveM pod drift
Par Benjamin D. · PDG
· Mis à jour le 11 września 2026 · Lecture 7 min
Spis treści
Serwer FiveM drift rządzi się zupełnie innymi prawami niż klasyczny roleplay — liczy się tu fizyka pojazdów, kąt skrętu, zachowanie opon i stabilny tickrate. Poniżej znajdziesz konkretne ustawienia handling.meta, dobór zasobów drift, sposób na czysty server.cfg i praktyki, które utrzymują płynność rozgrywki, gdy na torze ślizga się kilkanaście aut jednocześnie.
Jak FiveM liczy fizykę pojazdów i dlaczego drift wymaga osobnego podejścia
Silnik RAGE liczy przyczepność na podstawie krzywej trakcji: gra sprawdza prędkość poślizgu koła względem nawierzchni i na tej podstawie decyduje, ile siły bocznej przenoszą opony. W trybie drift chodzi o to, żeby auto traciło przyczepność przewidywalnie i dawało się utrzymać w poślizgu gazem oraz kontrą, zamiast gwałtownie się obracać.
Kluczowa różnica względem RP: w driftcie modyfikujesz masowo pliki handling.meta, często dokładasz skrypt przełączający tryb (drift on/off), a do tego streamujesz dziesiątki modeli aut i felg. To obciążenie idzie w dwie strony — klient renderuje i synchronizuje, a strona serwerowa obsługuje synchronizację stanu pojazdów w OneSync. Stąd znaczenie mocnego pojedynczego rdzenia: FiveM jest w dużej mierze jednowątkowy po stronie głównej pętli, więc wysokie taktowanie Ryzen i dyski NVMe realnie skracają czas ładowania zasobów i ograniczają mikroprzycięcia.
Jeżeli dopiero układasz infrastrukturę pod projekt driftowy, pełną specyfikację maszyn, panel Pterodactyl i ochronę anti-DDoS znajdziesz na stronie hosting FiveM — reszta tego poradnika skupia się już wyłącznie na konfiguracji.
Co realnie wpływa na odczucie poślizgu
- Krzywa trakcji — relacja
fTractionCurveMaxdofTractionCurveMindecyduje, jak szybko auto „puszcza". - Kąt skrętu —
fSteeringLockokreśla maksymalny kąt kontry. - Rozkład napędu —
fDriveBiasFrontna 0.0 daje czysty tylny napęd. - Zawieszenie — sztywność i stabilizatory wpływają na przenoszenie masy przy zmianie kierunku.
- Masa i bezwładność —
fMassorazvecInertiaMultiplierdeterminują, jak leniwie auto reaguje na inicjację.
handling.meta pod drift: parametry krok po kroku
Pracuj zawsze na kopii oryginalnego pliku. Standardowa ścieżka w zasobie pojazdu to [cars]/nazwaauta/data/handling.meta, a wpis musi być zadeklarowany w fxmanifest.lua. Zmiany testuj po jednym parametrze — inaczej nie wiesz, co naprawdę poprawiło zachowanie auta.
Tabela wartości wyjściowych
| Parametr | Zakres pod drift | Efekt |
|---|---|---|
| fMass | 1300–1700 | Wyższa masa = leniwsza, ale stabilniejsza inicjacja |
| fInitialDriveForce | 0.30–0.45 | Moc podtrzymująca poślizg; za dużo = obrót |
| fDriveBiasFront | 0.0 | Pełny napęd na tył |
| fInitialDriveMaxFlatVel | 150–190 | Prędkość maksymalna przełożeń |
| fTractionCurveMax | 2.0–2.4 | Szczyt przyczepności |
| fTractionCurveMin | 1.5–1.9 | Przyczepność po zerwaniu; utrzymuj ~0.75–0.85 wartości Max |
| fTractionCurveLateral | 18.0–23.0 | Kąt, przy którym opony tracą przyczepność boczną |
| fTractionSpringDeltaMax | 0.10–0.18 | Zachowanie przy nierównościach i krawężnikach |
| fLowSpeedTractionLossMult | 0.0–0.6 | Poślizg przy ruszaniu (burnout) |
| fCamberStiffnesss | -0.20 do 0.00 | Ujemne wartości ułatwiają zrywanie tyłu |
| fSteeringLock | 45–70 | Kąt kontry; powyżej 70 auto staje się nerwowe |
| fSuspensionForce | 2.0–2.6 | Sztywność zawieszenia |
| fAntiRollBarForce | 0.4–0.9 | Kontrola przechyłów przy zmianie kierunku |
| fBrakeForce | 0.8–1.1 | Siła hamowania |
| fBrakeBiasFront | 0.45–0.55 | Rozkład hamowania; niższe = łatwiejsza inicjacja hamulcem |
Przykładowy fragment pliku
<Item type="CHandlingData">
<handlingName>s13drift</handlingName>
<fMass value="1420.000000" />
<vecInertiaMultiplier x="1.100000" y="1.300000" z="1.400000" />
<fInitialDriveForce value="0.380000" />
<fDriveBiasFront value="0.000000" />
<nInitialDriveGears value="6" />
<fClutchChangeRateScaleUpShift value="3.500000" />
<fClutchChangeRateScaleDownShift value="3.500000" />
<fBrakeForce value="0.950000" />
<fBrakeBiasFront value="0.480000" />
<fHandBrakeForce value="0.700000" />
<fSteeringLock value="58.000000" />
<fTractionCurveMax value="2.150000" />
<fTractionCurveMin value="1.700000" />
<fTractionCurveLateral value="20.500000" />
<fTractionSpringDeltaMax value="0.140000" />
<fLowSpeedTractionLossMult value="0.400000" />
<fCamberStiffnesss value="-0.100000" />
<fSuspensionForce value="2.300000" />
<fAntiRollBarForce value="0.650000" />
<strHandlingFlags>440010</strHandlingFlags>
<strModelFlags>440010</strModelFlags>
</Item>
Metoda strojenia
- Ustaw bazę: masa, napęd na tył, przełożenia.
- Dopasuj
fTractionCurveMax, aż auto trzyma się prosto bez pływania. - Obniżaj
fTractionCurveMinstopniowo o 0.05, aż tył zaczyna wychodzić na gazie. - Reguluj
fTractionCurveLateral, żeby zerwanie przyczepności następowało płynnie, a nie skokowo. - Na końcu dobierz
fSteeringLocki sztywność zawieszenia pod styl jazdy społeczności.
Pamiętaj, że kółka i modele z vstancer zmieniają geometrię wizualnie, ale nie zmieniają fizyki — kąt pochylenia kół w handlingu ustawiasz przez fCamberStiffnesss, nie przez modyfikacje wizualne.
Dobór zasobów drift bez zabijania wydajności
Każdy zasób to koszt czasu klatki. Zasada praktyczna: zestaw skryptów driftowych powinien mieścić się w kilku dziesiątych milisekundy w spoczynku i nie przekraczać ~1 ms podczas aktywnej sesji na torze.
Zestaw, który zwykle wystarcza
- Skrypt trybu drift — przełącznik modyfikujący krzywą trakcji w locie przez natywy
SetVehicleHandlingFloat; znacznie lżejszy niż utrzymywanie dwóch wersji każdego auta. - Licznik punktów i tabela wyników — liczenie kąta i prędkości po stronie klienta, zapis wyników po stronie serwera, komunikacja przez eventy ograniczona do zakończenia przejazdu.
- Tuning i malowanie dymu opon — kolor dymu ustawiany natywem, bez ciągłych pętli co klatkę.
- Mapy i strefy — tory streamowane jako
ymap, nie jako stale aktywne obiekty tworzone skryptem. - Zapis pojazdów gracza — jedna baza danych, zapytania przez połączenie pulowane, bez zapisów co sekundę.
Czego unikać
- Pętli
Citizen.Wait(0)tam, gdzie wystarczy 250–1000 ms. - Trzech różnych skryptów robiących to samo (np. dwa niezależne liczniki punktów).
- Tekstur
ytdw rozdzielczości 4K dla każdego auta — 2K w zupełności wystarcza i drastycznie zmniejsza zużycie pamięci streamingu. - Modeli bez poprawnego LOD-a i collision — to najczęstsza przyczyna zacięć przy wjeździe kilku aut na tor.
Pomiar, zanim zaczniesz optymalizować
# konsola klienta (F8)
resmon 1
# szczegółowy profil 500 klatek
profiler record 500
profiler view
# konsola serwerowa w panelu
status
resmon
Zasób zajmujący stale ponad 1 ms wymaga przejrzenia kodu lub zastąpienia. Szczegóły dotyczące natywów i manifestów znajdziesz w oficjalnej dokumentacji FiveM.
server.cfg i ustawienia serwera FiveM drift dla płynnej rozgrywki
Konfiguracja startowa decyduje o synchronizacji pojazdów. Przy drifcie kilkunastu aut w jednej strefie OneSync Infinity i rozsądny limit slotów to podstawa — nadmiar wolnych miejsc przy ciasnej mapie toru zwykle pogarsza odczucia wszystkim.
# --- sieć i synchronizacja ---
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"
set onesync on
set onesync_population false
sv_maxclients 48
sv_endpointprivacy true
# --- wersja gry i zabezpieczenia ---
set sv_enforceGameBuild 3407
sv_scriptHookAllowed 0
rcon_password "dlugie-losowe-haslo-min-24-znaki"
sv_licenseKey "twoj_klucz_z_keymaster"
# --- tozsamosc serwera ---
sv_hostname "^1DRIFT ^7ZONE ^0| PL"
sets tags "drift, tuning, pl"
load_server_icon myLogo.png
# --- kolejnosc ladowania ---
ensure mapmanager
ensure chat
ensure spawnmanager
ensure sessionmanager
ensure hardcap
ensure [standalone]
ensure [drift]
ensure [cars]
ensure [maps]
Dlaczego kolejność ma znaczenie
Zasoby pojazdów i map ładuj po skryptach bazowych. Jeśli skrypt trybu drift startuje przed katalogiem z autami, część handlingów nie zostanie nadpisana i gracze zgłoszą, że „jedno auto jeździ inaczej po restarcie". Katalogi zbiorcze (ensure [cars]) skracają plik konfiguracyjny i porządkują start.
Utrzymanie i higiena administracyjna
- Restarty cykliczne — co 6–12 godzin przez harmonogram w txAdmin lub w panelu; ogranicza wycieki pamięci przy dużej liczbie streamowanych modeli.
- Kopie zapasowe — automatyczne kopie katalogu
resourcesi bazy danych przed każdą większą zmianą handlingów. - Whitelist lub kolejka — sensowna, gdy tor ma ograniczoną pojemność; eliminuje chaos w strefach spawnu.
- Silne hasła RCON i nieudostępnianie portu bazy danych na zewnątrz.
- Środowisko testowe — druga instancja do sprawdzania nowych aut, zanim trafią na produkcję.
Latencja i odczucie sterowania
Drift jest wrażliwy na opóźnienia: różnica 30 ms potrafi zepsuć złapanie kontry przy manji. Dlatego lokalizacja maszyny blisko trzonu społeczności ma większe znaczenie niż liczba rdzeni. Do tego dochodzi ochrona anti-DDoS działająca po stronie infrastruktury — sesje driftowe bywają celem ataków, zwłaszcza podczas eventów. Szybkie dyski NVMe skracają czas ładowania streamu przy wejściu gracza, co ogranicza słynne „zawieszenie na ekranie ładowania".
Częste problemy i rozwiązania
| Objaw | Prawdopodobna przyczyna | Działanie |
|---|---|---|
| Auto obraca się natychmiast po inicjacji | Za niskie fTractionCurveMin lub za wysoka moc | Podnieś Min o 0.1, obniż fInitialDriveForce |
| Tył w ogóle nie wychodzi | Za wysoki fTractionCurveLateral | Zmniejszaj o 1.0 aż do reakcji |
| Auto podskakuje na krawężnikach | Zbyt sztywne zawieszenie | Obniż fSuspensionForce, zwiększ fTractionSpringDeltaMax |
| Spadki FPS przy 10+ autach | Ciężkie modele, tekstury 4K | Redukcja ytd, sprawdzenie LOD |
| Handling nie działa po restarcie | Zła kolejność ensure | Przenieś katalog aut na koniec konfiguracji |
| Skoki pozycji aut u innych graczy | Problem synchronizacji / latencja | Sprawdź OneSync, ping, obciążenie procesu |
Jeśli prowadzisz kilka projektów równolegle, warto trzymać je na osobnych instancjach — konfiguracje fizyki bardzo łatwo się mieszają. Przegląd pozostałych tytułów znajdziesz w sekcji Wszystkie nasze serwery gier, a kolejne poradniki techniczne publikujemy na Blog Fly-Serv.
Podsumowanie
Dobre ustawienia driftu to iteracja: jeden parametr, jedna próba, jedna decyzja. Zacznij od krzywej trakcji, dopiero potem ruszaj zawieszenie i kąt skrętu. Utrzymuj lekki zestaw zasobów, mierz zużycie milisekund, restartuj cyklicznie i rób kopie przed każdą zmianą. Taka dyscyplina daje stabilną fizykę, przewidywalne poślizgi i rozgrywkę, do której gracze wracają.
FAQ
Jak zmienić handling bez edycji plików każdego pojazdu?Użyj skryptu po stronie klienta korzystającego z natywu SetVehicleHandlingFloat, aby nadpisywać wartości takie jak fTractionCurveMin czy fSteeringLock w momencie włączenia trybu drift. Zmiany są tymczasowe i znikają po wyjściu z auta lub restarcie zasobu, dlatego nadaje się to idealnie do przełączników drift on/off bez duplikowania katalogów pojazdów.
Przy jednym torze zwykle 32–64 sloty. Powyżej tej granicy strefy spawnu i sam tor robią się zatłoczone, a synchronizacja kilkunastu aut w poślizgu w jednym miejscu wyraźnie obciąża proces. Lepszym kierunkiem jest kilka stref meet i torów rozrzuconych po mapie niż podnoszenie limitu graczy na jednej lokalizacji.
Dlaczego auto jeździ inaczej u mnie niż u innych graczy?Najczęściej ktoś ma zdezaktualizowany cache klienta lub zasób z handlingiem ładuje się w innej kolejności. Poproś o wyczyszczenie katalogu FiveM Application Data/data/cache, sprawdź kolejność wpisów ensure w konfiguracji i upewnij się, że nie istnieją dwa zasoby deklarujące ten sam handlingName.