server.cfg объяснен: каждая строка FiveM server.cfg, одна за другой

Что делает каждая строка в FiveM server.cfg: endpoints, sv_hostname, projectName, tags, locale, icon, sv_maxclients, license key, OneSync, ensure, ACE и exec.

Вы открыли server.cfg, и это глухая стена строк, скопированных из рецепта. Этот гайд проходит через строки, которые вы найдете в большинстве серверов, в порядке, в котором они обычно появляются, с коротким объяснением и ссылкой, где есть более длинный гайд.

Endpoints

cfg
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"

Это адрес и порт, на котором слушает сервер. 0.0.0.0 означает все сетевые интерфейсы, а 30120 - стандартный порт. Игроки подключаются через UDP и используют TCP для HTTP и прокси txAdmin, поэтому вы открываете оба в вашем файерволле. С txAdmin интерфейс и порт обычно управляются для вас, и настройки txAdmin могут пожаловаться, если они не совпадают. Если игроки не могут присоединиться извне, смотрите проброс портов.

Имя и список

cfg
sv_hostname "My Server"
sets sv_projectName "My Server"
sets sv_projectDesc "A friendly roleplay server"
sets tags "roleplay, esx, english"
sets locale "en-US"
load_server_icon myLogo.png
  • sv_hostname - старое имя сервера.
  • sv_projectName и sv_projectDesc - имя и описание в списке серверов. Форма sets их публикует.
  • tags - это ключевые слова, по которым люди фильтруют, а locale - это язык.
  • load_server_icon загружает небольшой PNG из папки сервера.

Цвета, баннеры и размер значка рассматриваются в значок сервера, баннер и теги.

Игроки

cfg
sv_maxclients 48

Количество слотов игроков. Превышение 48 требует OneSync и поддерживающего уровня на стороне Cfx.re. Подробности в OneSync и лимит игроков.

Ключи

cfg
sv_licenseKey "cfxk_xxxxxxxxxxxxxxxxxxxx_xxxxx"
set steam_webApiKey "none"

sv_licenseKey - это ключ из портала Cfx.re, и сервер не запустится без действительного. Смотрите ошибка лицензионного ключа сервера. steam_webApiKey требуется только если вы хотите идентификаторы Steam, и none принимается, когда вы этого не хотите. Обе строки - это секреты: не делитесь вашим server.cfg в скриншотах.

База данных

cfg
set mysql_connection_string "mysql://user:password@localhost/dbname?charset=utf8mb4"

Строка подключения, которую читает oxmysql. Неправильные значения дают ошибки в ошибке подключения oxmysql. Используйте set, а не setr или sets, чтобы пароль остался на сервере.

OneSync и игровая сборка

cfg
set onesync on
sv_enforceGameBuild 3258

onesync on включает OneSync, который является стандартом для современных серверов и необходим для многих слотов. sv_enforceGameBuild заставляет клиентов использовать игровую сборку, и автомобили DLC, одежда и карты нуждаются в недавней. Номера сборок и то, что они разблокируют, находятся в sv_enforceGameBuild и DLC. Используйте номер сборки, поддерживаемый вашими артефактами, а не просто тот, что в этом примере.

Ресурсы: ensure

cfg
ensure oxmysql
ensure ox_lib
ensure es_extended
ensure [standalone]

Каждый ensure запускает ресурс или целую папку с кронштейном. Порядок имеет значение: базы данных, библиотеки и фреймворк в первую очередь. Смотрите порядок ensure в server.cfg. Если один не удается, couldn't start resource объясняет сообщение.

Permissions: add_ace и add_principal

cfg
add_ace group.admin command allow
add_principal identifier.fivem:1234567 group.admin

add_ace дает разрешение группе, здесь каждую команду. add_principal помещает игрока (по идентификатору) в эту группу. Замените идентификатор своим собственным. Полное объяснение с разницей между ACE и собственными группами вашего фреймворка находится в ACE permissions.

Включение других файлов: exec

cfg
exec permissions.cfg
exec resources.cfg

exec запускает другой cfg файл так, как если бы его строки были здесь. Разделение permissions или resources в свои собственные файлы делает server.cfg читаемым, и вы можете хранить секреты в одном файле, который вы никогда не делитесь.

Минимальный пример

cfg
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"

sv_licenseKey "cfxk_..."
sv_hostname "My Server"
sets sv_projectName "My Server"
sets sv_projectDesc "A friendly roleplay server"
sets tags "roleplay"
sets locale "en-US"
load_server_icon myLogo.png
sv_maxclients 48
set onesync on
set mysql_connection_string "mysql://user:password@localhost/dbname?charset=utf8mb4"

ensure oxmysql
ensure ox_lib
ensure es_extended

Внимание: опечатка в строке не всегда останавливает сервер. Неправильно написанная переменная конвара создается молча и ничего не делает. Когда настройка кажется проигнорированной, сначала проверьте орфографию.

Контрольный список

Симптом Решение
Игроки не могут присоединиться извне Откройте TCP и UDP на порту, смотрите проброс портов
Сервер не запускается Проверьте sv_licenseKey
Имя или теги не отображаются Используйте sets, перезагрузитесь и дождитесь обновления списка
Более 48 слотов отклонены Включите OneSync и проверьте ваш уровень Cfx.re
Ошибки базы данных Проверьте mysql_connection_string
Контент DLC отсутствует Поднимите sv_enforceGameBuild
Не администратор Исправьте add_principal со своим собственным идентификатором

Короткие ответы

Где находится server.cfg?

В папке данных вашего сервера, рядом с папкой resources. С помощью txAdmin вы также можете открыть и отредактировать его на странице CFG Editor в веб-панели.

Нужно ли перезагружать сервер после редактирования server.cfg?

Да. Файл читается при запуске сервера. Перезагрузите сервер для применения изменений endpoints, convars и permissions. Новые строки ensure можно также запустить в live console.

В чем разница между set, sets и setr?

set создает переменную конвара, которую может читать только сервер. sets также публикует ее в списке серверов. setr также репликирует ее на клиентов, поэтому никогда не помещайте секреты в setr или sets.

Скрипты без этой проблемы

Shop CreatorМагазин меньше чем за минуту — владельцы, сотрудники, сейфы и ограбления в комплекте.Смотреть скрипт →Mic PhoneСкладной телефон, который раскладывается в планшет и работает и на настоящем телефоне игрока.Смотреть скрипт →

Читайте также