Перейти к содержимому

Решение проблем

Проблемы, с которыми люди действительно сталкиваются, — примерно в том порядке, в каком они возникают.


restart не перечитывает fxmanifest.lua. Если вы добавили файл — например, новую локализацию, — сначала введите refresh в консоли сервера, а затем restart mic_shopcreator.

Config.Framework не определяется автоматически. Укажите 'esx' или 'qbcore' в соответствии с вашим сервером и запускайте mic_shopcreator после вашего фреймворка в server.cfg.

На QBox значение — 'qbcore' (QBox запускает ресурсы QBCore через слой совместимости), а qbx_core должен запускаться раньше mic_shopcreator.

ACE называется mic_shop.open, а не mic_shopcreator.open. Проверьте написание в вашей строке add_ace, а также то, что в ней указан идентификатор, с которым вы действительно подключаетесь, или группа, в которой вы реально состоите.

Config.Locale указывает на файл, которого нет в locales/ или в shared_scripts в fxmanifest.lua. В этом случае консоль пишет Locale file not found for ….

  • Вы слишком далеко. Продавцы существуют только в пределах Config.PedSpawnDistance (по умолчанию 20 метров).
  • Локацию ограбили. Ограбленная локация закрывается на время кулдауна: продавец и блип исчезают для всех до его окончания. См. ниже.
  • Config.SpawnNPC выключен. Тогда продавца нет по замыслу, есть только маркер или точка target.
  • Недействительная модель. Модель локации, которая не загружается, заменяется на Config.DefaultPed, а консоль пишет Using default. Если не загружается и модель по умолчанию, вы получаете CRITICAL: Could not load default ped model и ни одного продавца — укажите в Config.DefaultPed действующую модель.

Я вижу продавца, но не могу открыть магазин

Заголовок раздела «Я вижу продавца, но не могу открыть магазин»

Config.Interaction не соответствует тому, что у вас запущено. По умолчанию стоит 'ox_target'. Укажите 'qb-target' для qb-target или 'default', чтобы подходить и нажимать E в пределах Config.RadiusInteract.

На QBCore с 'default' подсказка не показывается — ShowHelpNotification в bridge/client.lua для QBCore пуста. E по-прежнему работает; заполните эту функцию собственным вызовом подсказки, чтобы она отображалась.

«This shop is currently on cooldown» / ограбленный магазин остаётся закрытым часами

Заголовок раздела ««This shop is currently on cooldown» / ограбленный магазин остаётся закрытым часами»

Ограбленная локация остаётся закрытой на Cooldown (minutes) магазина. Если у магазина кулдаун не сохранён, используется запасное значение Config.RobberyCooldown — оно тоже читается как минуты, так что стандартные 300 — это пять часов. Задайте кулдаун для каждого магазина, который можно грабить, в панели или уменьшите запасное значение.

Окно магазина по очереди ищет <item name>.png в каждой папке из Config.InventoryImagePath. По умолчанию указана папка ox_inventory. Если у вас другой инвентарь, укажите папку с его картинками путём вида nui://. Если название предмета и имя файла картинки различаются, картинки не будет.

Покупка за чёрные деньги не проходит на QBCore

Заголовок раздела «Покупка за чёрные деньги не проходит на QBCore»

Чёрные деньги списываются со счёта black_money. В QBCore такого счёта из коробки нет, поэтому для товаров на QBCore используйте Cash, Bank или All (Cash + Bank) — либо добавьте этот счёт и измените GetAccount в bridge/server.lua под то, как ваш сервер работает с грязными деньгами.

Владелец открывает магазин, а кнопки-шестерёнки нет

Заголовок раздела «Владелец открывает магазин, а кнопки-шестерёнки нет»

В списке владельцев должен стоять идентификатор, который использует Config.IdentifierType:

Config.IdentifierTypeЧто вводить как владельца
'discord'Только число — Discord ID, без discord:
'license'Лицензия целиком, включая license:
'esx'Идентификатор ESX в том виде, как он хранится в users, включая префикс вроде char1:
'citizenid'Citizen ID из QBCore

Если вы изменили Config.IdentifierType после добавления владельцев, добавьте их заново.

  • При 'discord' у игрока должен быть привязан Discord; иначе ему предложат его привязать.
  • Они должны находиться в пределах 10 метров от владельца, когда тот открывает список.
  • Они должны нажать Y, когда их спросят. На QBCore вопрос показывается через ShowHelpNotification в bridge/client.lua, которая для QBCore пуста, — заполните её или скажите игроку нажать Y.

Ограбление должно быть включено для этого магазина, а игрок должен целиться из оружия — не голыми руками — в продавца с расстояния не более 5 метров. Локация, которую уже грабят или у которой идёт кулдаун, отказывает.

  • Для этого магазина должны быть включены Webhooks с действительной ссылкой на Discord webhook.
  • Config.Screenshot включён, но screenshot-basic не запущен. Лог отправляется через скриншот, поэтому без этого ресурса ничего не уходит. Запустите screenshot-basic раньше этого ресурса или задайте Config.Screenshot = false.

Config.PoliceAlert = "default" уведомляет игроков, чья работа указана в Config.RobberyNotifyJobs, по названию работы. При "custom" ничего не отправляется, пока вы не впишете вызов диспетчерского скрипта в TriggerPoliceAlert в bridge/server.lua — по умолчанию она пуста.