ДокументацияСтрой. Играй. Делись.
Войти через Jegg

Игроки и постоянные ID

Различай имя игрока и UserId, чтобы списки прав и сохранения переживали смену ника.

Используй UserId

Ник игрока может измениться. Player.UserId остаётся постоянным, поэтому он подходит для ключей сохранений и списков доступа. Найти ID можно в профиле игрока или через поиск ID в Create.

Игрок заходит на сервер

Добавь Script в ServerScriptService:

local Players = game:GetService("Players")

local function greet(player)
    print(player.Name, player.UserId)
end

Players.PlayerAdded:Connect(greet)
for _, player in ipairs(Players:GetPlayers()) do
    greet(player)
end

Перебор уже подключённых игроков полезен, если скрипт запущен после их появления.

Узнай ID по нику

Сетевые запросы могут завершиться ошибкой. Оборачивай их в pcall:

local Players = game:GetService("Players")
local ok, result = pcall(function()
    return Players:GetUserIdFromNameAsync("имя_игрока")
end)

if ok then
    print("ID:", result)
else
    warn("Не удалось найти игрока:", result)
end

Не путай среды сохранений

Данные DataStore в Play Solo в Studio отделены от данных живых серверов. Для сохранений в Studio нужен опубликованный плейс; локальный файл с PlaceId 0 не хранит такие данные. Не проверяй тестовые награды на реальных сохранениях игроков.

Продолжай создавать.К другим мануалам