Первый запуск
Создать администратора, зайти в панель и настроить минимум
Создать администратора
Регистрация через сайт даёт обычного игрока. Первый суперпользователь создаётся из консоли:
pnpm --filter unicore-server exec node dist/cli/main.js user-create Admin admin@example.com trueАргументы по порядку: ник, почта, суперпользователь. Последний true обязателен. Без него получится обычный аккаунт, который в админку не пустят.
Пароль команда спросит отдельно и введёт скрытым вводом, поэтому он не осядет ни в истории команд, ни в логах shell. Требования к нему те же, что и на сайте: минимум восемь символов, проверка по списку частых паролей и по базе утечек.
В Docker то же самое:
docker compose exec app pnpm --filter unicore-server exec node dist/cli/main.js user-create Admin admin@example.com trueСуперпользователь
У него есть все права, всегда, независимо от ролей. Держите его как аварийный доступ, а работать команде давайте через роли.
Первый вход попросит сменить пароль
Пароль, заданный не самим владельцем аккаунта, считается временным: пока его не поменяют, сайт пустит только на страницу смены пароля, а лаунчер откажет с понятной ошибкой. Это касается и созданных из консоли учёток, и заведённых администратором через панель.
Зайти в админку
Откройте ADMIN_BASEURL (по умолчанию это сайт на порту 4000) и войдите созданной учёткой. Сайт работает, а страница логина не открывается? Почти наверняка виноват CORS. Сервер разрешает только BASEURL и ADMIN_BASEURL, так что проверьте, что адрес админки записан там ровно так, как вы его открываете, вместе со схемой и портом.
Добавить сервер
Управление контентом → Серверы → Создать. Минимум, который нужен:
- ID: короткий латинский идентификатор, например
hitech. Он попадёт в URL и в API, менять его потом больно. - Название и версия: их увидит игрок.
- Query хост и Query порт: адрес игрового сервера, тогда на сайте покажется онлайн.
- Способ выдачи: плагин или RCON, см. Выдача покупок.
Товары привязываются к серверам, поэтому без единого сервера магазин и донат работать не будут.
Пройтись по настройкам сайта
Основное → Настройки. Там живут ссылки на соцсети, курс обмена валют, цена разбана, реферальные награды и переключатели вроде обязательной активации почты. Всё это разбирается здесь.
Проверить почту
Управление контентом → Email-сообщения → Тестировать. Если письмо не пришло, регистрация будет молча ломаться: игрок зарегистрируется, но активировать аккаунт не сможет.
Что уже создано само
При первом старте сервер сам заводит два языка (русский и английский) и заливает в базу все ключи интерфейса. Дальше их правят прямо в админке, см. Языки и переводы.
Команда pnpm run seed добавляет ещё две роли: admin с маской panel.* и editor с разделами контента и коммерции. Их удобно взять за основу и не выдавать людям признак владельца.
Сид тянет за собой демо-данные
seed заодно создаёт демонстрационные серверы, товары и новости, а при DEV_SEED=1 ещё и 250 фейковых игроков. На чистом продакшене роли проще создать руками в разделе Роли.