Serwer FiveM wymaga Steam: napraw brakujący identyfikator Steam

Serwer FiveM mówi, że Steam jest wymagany lub brak identyfikatora Steam? Jak gracze go naprawiają, jak właściciele ustawiają steam_webApiKey i dlaczego niektóre serwery używają zamiast tego licencji lub Discord.

Próbujesz się połączyć, a serwer cię odrzuca z komunikatem, że Steam jest wymagany lub że nie znaleziono identyfikatora Steam. Przyczyna to jedna z dwóch rzeczy: twój klient Steam nie jest uruchomiony, lub serwer prosi o coś, czego nie możesz podać. Obie mają proste rozwiązanie.

Co serwer sprawdza

Gdy się łączysz, FiveM wysyła serwerowi listę identyfikatorów twojego gracza. Wyglądają tak:

text
license:xxxxxxxxxxxxxxxxxxxxxxxx
steam:11000010xxxxxxx
discord:123456789012345678

Serwer, który używa steam: dla swojej bazy danych, listy białej lub listy administratorów, musi mieć tę linię. Jeśli Steam nie działa, nie ma identyfikatora steam: i serwer cię blokuje.

Gracze: jak to naprawić

  1. Zamknij FiveM.
  2. Uruchom Steam i się zaloguj. Steam musi być otwarty i zalogowany w tym samym użytkowniku Windows, zanim FiveM się uruchomi. Sprawdź okno Steam lub ikonę na pasku zadań.
  3. Uruchom FiveM i połącz się ponownie.
  4. Jeśli grasz w GTA V z Epic lub Rockstar, serwer może nadal prosić o Steam. W tym przypadku potrzebujesz klienta Steam uruchomionego i zalogowanego na twoim koncie, lub musisz grać na serwerze, który używa license.
  5. Nie uruchamiaj FiveM jako administrator, jeśli Steam nie jest. Oba muszą działać na tym samym poziomie uprawnień, lub FiveM nie będzie widzieć Steam. Uruchom oba normalnie.
  6. Jeśli nadal to się nie powiedzie, zamknij oba, uruchom ponownie Steam, potem FiveM. Wyczyszczenie pamięci podręcznej za pomocą Jak wyczyścić pamięć podręczną FiveM pomaga w niektórych przypadkach.

Steam w trybie offline może również nie dać identyfikatora. Przejdź online.

Porada: jeśli grasz na kilku serwerach, trzymaj Steam uruchomiony, gdy grasz w FiveM. To nic nie kosztuje i unika tego błędu na każdym serwerze, który używa Steam.

Właściciele serwera: klucz Steam Web API

Aby serwer mógł używać uwierzytelniania Steam, daj mu klucz Steam Web API. Klucz otrzymujesz z konta Steam na stronie klucza interfejsu API Steam.

Dodaj to do server.cfg:

cfg
set steam_webApiKey "YOUR_STEAM_WEB_API_KEY"

Użyj set, a nie setr, aby klucz nigdy nie został zreplikowany do klientów. Nigdy nie udostępniaj klucza, nigdy nie publikuj server.cfg publicznie z kluczem w nim, i zresetuj klucz z konta Steam, jeśli wycieknie.

Uruchom ponownie serwer po zmianie. Niektóre frameworki i skrypty listy białej mają własne ustawienie typu identyfikatora, więc sprawdź też konfigurację skryptu.

Sprawdź brakujący identyfikator Steam w swoich skryptach

Jeśli chcesz zablokować tylko graczy bez Steam, przeczytaj ich identyfikator w momencie połączenia i odłóż:

lua
AddEventHandler('playerConnecting', function(name, setKickReason, deferrals)
    local src = source
    deferrals.defer()
    Wait(0)

    local steam = GetPlayerIdentifierByType(src, 'steam')
    if not steam then
        deferrals.done('Steam is required. Start Steam, log in, then restart FiveM.')
        return
    end

    deferrals.done()
end)

Jasna wiadomość oszczędza twoim graczom zgadywania. Przeczytaj playerConnecting i deferrals, aby uzyskać pełny wzorzec.

Dlaczego wiele serwerów używa zamiast tego licencji lub Discord

Steam jako główny identyfikator ma wady:

  • Gracze muszą mieć uruchomiony Steam, a wielu nie gra w GTA V na Steam, więc dostaną błąd powyżej.
  • Steam będący offline lub w złym stanie usuwa identyfikator w trakcie sesji.
  • Klucz Steam Web API to jeden więcej sekret, którym właściciel musi zarządzać.

Identyfikator license: pochodzi z konta Rockstar gracza. Zawsze tam jest i nie potrzebuje dodatkowego klucza, więc wiele nowoczesnych frameworków domyślnie go używa dla bazy danych postaci. Identyfikatory Discord są popularne dla list białych i ról, ponieważ pracownicy mogą nimi zarządzać z serwera Discord. Przeczytaj Biała lista Discord dla FiveM.

Zmiana typu identyfikatora na istniejącym serwerze to migracja danych: postaci zapisane pod steam: nie będą pasować do license:. Utwórz kopię zapasową bazy danych i zaplanuj to przed przełączeniem.

Lista kontrolna

Objaw Naprawa
Serwer mówi, że Steam jest wymagany Uruchom Steam i się zaloguj przed FiveM
Steam działa, ale zawodzi Uruchom oba na tym samym poziomie uprawnień, brak administratora tylko na jednym
Steam w trybie offline Przejdź online
Brak identyfikatora steam: w konsoli Steam nie uruchomiony, lub brak steam_webApiKey gdzie wymagane
Właściciel chce uwierzytelniania Steam set steam_webApiKey "key" w server.cfg, trzymaj to w tajemnicy
Gracze bez Steam Zamiast tego użyj identyfikatorów license: lub Discord
Przełączanie typu identyfikatora Najpierw utwórz kopię zapasową, zapisane dane nie będą pasować do nowego identyfikatora

Szybkie odpowiedzi

Dlaczego serwer mówi, że potrzebuję Steam?

Serwer czyta twój identyfikator Steam, gdy się łączysz, a FiveM ma go tylko wtedy, gdy klient Steam jest uruchomiony i jesteś zalogowany. Serwer używa go do rozpoznania ciebie i zachowania twojej postaci.

Czy potrzebuję klucza Steam Web API, aby uruchomić serwer FiveM?

Tylko jeśli twój serwer lub jego skrypty używają uwierzytelniania Steam. Dodaj to za pomocą set steam_webApiKey "your_key" w server.cfg.

Czy identyfikator Steam jest lepszy niż identyfikator licencji?

Żaden nie jest lepszy. Identyfikator licencji pochodzi z konta Rockstar i zawsze jest obecny. Steam zależy od gracza uruchamiającego Steam, dlatego wiele serwerów preferuje licencję.

Skrypty bez tego problemu

Mic PhoneSkładany telefon, który rozkłada się w tablet i działa też na prawdziwym telefonie gracza.Zobacz skrypt →Drug Dealer AppUliczna sprzedaż jako aplikacja lb-phone: strefy, kupcy NPC, poziomy i alerty dla policji.Zobacz skrypt →Pawn Shop AppLombard między graczami wewnątrz lb-phone.Zobacz skrypt →

Czytaj dalej