Ігрові інтеграції

manifest.type має бути game. Такі аддони запускають worker і пов’язують події стріму з ефектами в грі.

Приклад manifest

{
  "name": { "en": "GTA V integration", "uk": "Інтеграція GTA V" },
  "description": { "en": "In-game effects from viewers.", "uk": "Внутрішньоігрові ефекти від глядачів." },
  "type": "game",
  "version": "1.0.0",
  "author": "Your Name",
  "icon": "logo.png",
  "permissions": ["NETWORK_REQUEST", "FILE_ACCESS"]
}

Ігрові моди та доступ до файлів

Ігрові аддони можуть встановлювати або оновлювати мод-файли в папці гри через API files (право FILE_ACCESS у маніфесті).

Типовий сценарій: у налаштуваннях користувач вказує папку гри (folder / file), аддон викликає files.requestAccess(шлях, 'manage') і копіює файли через writeFile / copyFile — як Script Hook для GTA V.

GenerateConfig([
  {
    key: 'game_dir',
    type: 'folder',
    default: '',
    editor: { label: { uk: 'Папка GTA V' }, required: true },
  },
  {
    key: 'mod_notice',
    type: 'info',
    editor: {
      description: {
        uk: 'Античит може заблокувати онлайн. Використовуйте лише в одиночній грі або дозволених сесіях.',
      },
      infoBorder: 'red',
    },
  },
]);

Обов'язки розробника

Див. Доступ до файлів, Схема налаштувань.

Реєстрація внутрішньоігрових дій

Викличте один раз під час завантаження аддона:

await game.registerInputTriggers([
  { id: 'spawn_car', label: { en: 'Spawn car', uk: 'Заспавнити авто' } },
  { id: 'explosion', label: { en: 'Explosion', uk: 'Вибух' } },
]);

events.On('gameInputTrigger', ({ actionId, trigger, record, user }) => {
  if (actionId === 'spawn_car') {
    // ефект у грі
  }
});

Користувач прив’язує події дашборду до дій у Налаштування → Ігрові інтеграції.

Опційні тригери для оверлеїв

З правом DASHBOARD_EVENTS можна викликати dashboard.registerTriggers() і надсилати події через dashboard.addRecord(..., { trigger }).

Поля шляху (folder / file)

GenerateConfig([
  {
    key: 'game_exe',
    type: 'file',
    default: '',
    pathPicker: {
      title: { en: 'GTA V executable', uk: 'Виконуваний файл GTA V' },
      filename: 'GTAV.exe',
      filters: [{ name: 'Executable', extensions: ['exe'] }],
    },
    editor: { label: { en: 'Game executable', uk: 'Файл гри' }, required: true },
  },
]);

Див. також: API dashboard, Схема конфігурації.