Retencja graczy FiveM: kto wraca, a kto przestał przychodzić
Zmierz retencję graczy na FiveM: nowi i powracający, powroty po 1, 7 i 30 dniach, tygodniowe grupy i godziny szczytu. Z SQL albo w zakładce Wzrost.
Autor: Termi
- Players
- Retention
- Analytics
Na tej stronie
Serwer FiveM z 80 graczami w szczycie może wyglądać zdrowo, a jednocześnie tracić większość nowych graczy po jednym wieczorze. Licznik graczy pokazuje tylko, kto jest online. Retencja pokazuje, czy ludzie, którzy trafili do ciebie w zeszłym tygodniu, nadal grają, i zwykle zdradza problem na kilka tygodni przed tym, jak zacznie spadać wieczorny szczyt.
Co mierzyć
Licz to sam
Wszystko to wynika z jednej informacji: który gracz grał którego dnia. Wystarczy tabela z jednym wierszem na gracza na dzień:
CREATE TABLE player_days (
license VARCHAR(64) NOT NULL,
day DATE NOT NULL,
PRIMARY KEY (license, day)
);Wypełniaj ją skryptem serwera, gdy gracz wchodzi. Ten przykład używa oxmysql i licencji Rockstara jako ID:
AddEventHandler('playerJoining', function()
local license = GetPlayerIdentifierByType(source, 'license')
if not license then return end
MySQL.insert('INSERT IGNORE INTO player_days (license, day) VALUES (?, UTC_DATE())', { license })
end)Gracz, który zostaje online po północy UTC, liczy się tylko w dniu wejścia, co do retencji w zupełności wystarcza. Retencja po 7 dniach dla nowych graczy z ostatnich 90 dni to wtedy jedno zapytanie na MySQL albo MariaDB:
SELECT
COUNT(*) AS new_players,
SUM(last_day >= first_day + INTERVAL 7 DAY) AS back_after_7_days
FROM (
SELECT license, MIN(day) AS first_day, MAX(day) AS last_day
FROM player_days
GROUP BY license
) AS players
WHERE first_day BETWEEN UTC_DATE() - INTERVAL 90 DAY
AND UTC_DATE() - INTERVAL 7 DAY;Zamień 7 na 1 albo 30, żeby dostać pozostałe dwie liczby. Podziel back_after_7_days przez new_players i masz odsetek.
Pomiń nowych graczy z ostatnich 7 dni. Ktoś, kto wszedł wczoraj, nie mógł jeszcze wrócić po tygodniu, a liczenie go zaniża retencję.
Zakładka Wzrost w FiveDocku
FiveDock buduje taką samą tabelę z wejść i wyjść, które jego agent i tak zapisuje do Black Boxa, i trzyma ją przez 400 dni, dłużej niż logi. Otwórz serwer i wybierz zakładkę Wzrost obok Gracze i Konsola.
Ta ostatnia lista przydaje się najbardziej wtedy, gdy nowy skrypt coś zepsuł grupie graczy, którzy nigdy nie założyli zgłoszenia. Szczegóły są na stronie z cennikiem.
Najczęstsze pytania
Jaka retencja jest dobra dla serwera FiveM?
Nie ma wspólnego punktu odniesienia dla FiveM. Porównuj serwer z nim samym: z tym samym tygodniem miesiąc temu albo z grupą sprzed dużej aktualizacji. Sygnałem do sprawdzenia jest grupa, która odpada szybciej niż poprzednie.
Czy to działa na serwerze z whitelistą?
Tak, a liczby z pierwszego dnia znaczą tam jeszcze więcej. Gracz, który przeszedł whitelistę i wyszedł po 10 minutach, zwykle trafił na problem w kreatorze postaci albo w strefie startowej.
Po jakim identyfikatorze liczyć graczy?
Licencja Rockstara (license) jest u każdego gracza i nie zmienia się razem z nowym kontem Discord czy Steam. Postacie to nie gracze: jedna licencja z trzema postaciami to nadal jedna osoba.