К руководству

Документация 9.6.24

Настройки фреймворка

Проверьте фреймворк и инвентарь перед включением интеграций.

QBCore и ESX#

Поддерживаются определённые схемы и индексированные поля. Отсутствующие столбцы или нестандартные ID могут блокировать запрос. Пустой ответ не доказывает отсутствие данных.

Свои сценарии#

Проверяйте выбор персонажа, работы, телепорты и гаражи на тестовом сервере. Права проверяются сервером; исключения выдаёт только доверенный серверный код.

Разделяйте фреймворк и инвентарь#

Определите ресурс состояния игрока: qb-core, qbx_core или es_extended. Отдельно проверьте инвентарь и изменения API. Название фреймворка не гарантирует любой сторонний банковский скрипт. Сохраняйте порядок зависимостей, не запускайте конкурирующие cores для диагностики.

Измените существующее поле: qb для QBCore, qbox для Qbox — это значения, не имена папок. auto включает определение. Проверьте результат запуска и GetStatus в серверном коде. Мост отдельно определяет запущенные cores и может сообщить незапущенную зависимость.

-- Измените существующее поле, не всю таблицу.
ts.Framework.framework = "qb"
-- Другие поддерживаемые значения: "esx", "qbox", "auto", "standalone"

Проверяйте данные персонажа#

Чтение использует citizenid в QBCore/Qbox и identifier в ESX. Временный ID сервера не заменяет постоянный ID персонажа. Нужны поддерживаемые столбцы и индексы; собственная схема может быть отклонена.

  1. Сравните тестового персонажа с известными наличными, банком, работой и машиной.
  2. С ox_inventory сравните небольшой онлайн-инвентарь. Учитывайте усечение, не ожидайте stash или произвольные метаданные.
  3. При ошибке API проверьте запуск и версию. Недоступность API означает неизвестное владение оружием, а не доказанное отсутствие.

Тестируйте реальные игровые действия#

Определение не знает права, место, цену или награду каждого события. Ваш скрипт обязан проверять их на сервере. Профиль не исправляет небезопасные денежные/item-события. Проверяйте source и действующую сессию.

Standalone/vRP могут применять общие проверки, но мост не обещает их собственные схемы. Объясняйте ограничения, не подставляйте чужие таблицы. Повторяйте проверку после обновления core, инвентаря или работ.

Записывайте версии core и инвентаря. После перезапуска core переподключите персонажа до оценки online API. Не меняйте схему и наказание одновременно: разделение позволяет найти причину и откатить.

  • Смена персонажа и реанимация не оставляют постоянное исключение.
  • Телепорты домов, гаражей и тюрьмы вызывают MarkTeleport непосредственно до перемещения.
  • Оружие арены без инвентаря получает короткий AllowWeapon из доверенного серверного ресурса.
  • Полицию, инструменты, магазины и большие награды проверьте по логам до усиления наказаний.

Различайте имена настроек и обнаруженных core#

Конфигурация AC и соединитель используют разные обозначения: значение QBCore — qb, но мост сообщает qbcore. Для Qbox используется qbox и работающий ресурс qbx_core. Читайте обозначения в их контексте, не подгоняйте их под имя папки. Автонастройка может распознать vrp или ox_core и выбрать соответствующее имя, но не создаёт поддерживаемый адаптер персонажей или экономики для моста. На неподдерживаемом core явное standalone для общей защиты помогает не принимать обнаруженное название за обещание полной интеграции.

  1. Проверьте configs/anticheat_config.lua и действительно работающий core; сохраните один осознанный выбор и порядок зависимостей.
  2. При отличающихся возможностях панели исследуйте запущенные core и состояние моста вместо слепого переименования настроек.
  3. Не запускайте qb-core, qbx_core и es_extended вместе только ради другого обозначения состояния.

Стройте приёмочные проверки по реальным ролям#

Проверяйте отдельно обычных игроков, полицию или другие профессии и сотрудников. У сотрудников бывают законные исключения, поэтому основные сценарии проверяйте обычным персонажем. Охватите вход, выбор персонажа, смерть и оживление, дома, гаражи, оружие из инвентаря и реальные профессиональные награды. Запишите ожидаемую позицию, предмет или баланс и полученный лог. Проверяйте отмену меню и активности, а не только успешное завершение. Чистый старт ресурса не подтверждает, что изменённый инвентарь, банк или выбор персонажа использует ожидаемые API.

  1. Повторяйте небольшой набор до и после обновления core или инвентаря, меняя один компонент за раз.
  2. При ошибке фиксируйте версии, вызывающий ресурс и роль игрока; не раскрывайте идентифицирующие данные.
  3. После перезапуска или смены персонажа переподключайтесь и проверяйте завершение исключения, не ограничиваясь сотрудниками.

Определите ответственность собственных скриптов#

Отделяйте настройки обнаружений от правил игровых скриптов. AC не знает разрешённого получателя собственного перевода, предела награды или владельца дома. Ресурсы обязаны проверять игрока, права и серверное состояние до изменения денег, предметов или позиции. Проверки оружия используют поддерживаемые API; недоступный API означает неизвестный результат, не доказанное создание оружия. При несовместимых столбцах или индексах расследуйте структуру отдельно от наказаний. Не наказывайте игроков за ошибку интеграции и не заменяйте отсутствующий адаптер широким исключением.

  1. Назначьте ответственного за адаптер framework или инвентаря и владельца каждой собственной операции.
  2. Воспроизведите разрешённое действие и отказ в правах посредством собственных проверок игрового скрипта.
  3. Разделяйте общую защиту AC и мост базы данных панели (Tosun Connect); собственным таблицам нужна проверенная интеграция.

Разделяйте оружейный инвентарь и детали персонажа#

Framework и инвентарь различаются: QBCore управляет персонажами и деньгами, ox_inventory предметами. Проверка оружия сначала использует запущенный ox_inventory, затем поддерживаемые API QBCore/Qbox или ESX. Детали панели — другая операция моста. Видимый предмет не подтверждает одинаковые источник, время и формат всех проверок. Изменение названия не синхронизирует свои арсеналы.

Loadout ESX и количество предметов — разные понятия. nil, ошибка или неверные данные не доказывают отсутствие. Проверьте метод, время выдачи, обычное действие, провайдера и результат. Проверенный AllowWeapon может охватить законное оружие сервера вне инвентаря в нужных пределах. Это проверка совместимости, не обещание устранения всех ошибок обнаружения.

Планируйте миграцию шире переименования таблиц#

Переход QBCore/ESX не ограничен меткой. Мост использует players/citizenid для QBCore, users/identifier для ESX. Старая сессия и имя не идентифицируют перенесённого персонажа. Деньги, машины, предметы и правила различаются. Не переименовывайте продукцию ради запросов. Миграция относится к плану сервера; AC не преобразует отсутствующие данные.

Выберите известного персонажа и машину в отдельном тесте. Запишите core, постоянную идентичность, cash/bank и онлайн-статус перед чтением. Ошибка схемы или индекса не доказывает потерю. Совместимость оценивает сопровождающий. Изменение баланса из панели включено по умолчанию; не используйте его до приёмки. Чтобы заблокировать его, включите ручной режим: set tosun_db_bridge_manual "1" и set tosun_db_bridge_enabled "1" в server.cfg, без tosun_db_bridge_money_write. Повторите выбор персонажа и обычный инвентарь. Принимайте правильные данные правильного персонажа, не просто запуск ресурса.