Agency Docs
QBESXStandalone

Agency-Lifeinvader V3 Instalacja

Agencja reklamowa miasta dla FiveM na QBCore, Qbox, ESX lub w pełni standalone.

v3.2.1Płatny5 Strony

01Instalacja

  1. 1Umieść Agency-LifeinvaderV3 w folderze resources
  2. 2Dodaj ensure Agency-LifeinvaderV3 do server.cfg, po swoim frameworku, oxmysql oraz Agency Phone lub Agency Pad
  3. 3Przyznaj dostęp administratorom za pomocą add_ace group.admin agency.lifeinvader.admin allow lub użyj Config.Admin
  4. 4Z oxmysql tabele są tworzone przy pierwszym uruchomieniu. install/agency_lifeinvader.sql jest przeznaczony tylko dla serwerów tworzących tabele ręcznie
  5. 5Aktualizacja ze starszej wersji: podmień folder i użyj nowego config.lua. Ogłoszenia, wersje robocze i ustawienia graczy pozostają, tabele zostaną zaktualizowane na miejscu

02Zależności

  • Brak wymaganych zależności
  • QBCore, Qbox lub ESX (opcjonalnie, działa standalone bez żadnego z nich)
  • oxmysql (opcjonalnie, bez tego wszystko jest zapisywane w Key Value Store serwera)
  • Agency Phone lub Agency Pad 27.0.2 lub nowszy (opcjonalnie, dla aplikacji i Agency Pay)
  • Agency Banking (opcjonalnie, pieniądze na serwerach standalone)
  • Agency-Notify (opcjonalnie, wiadomości w stylu Agency)

03Plik SQL

Opcjonalnie: resource tworzy te tabele automatycznie podczas uruchamiania. Zaimportuj ten plik tylko wtedy, gdy konfigurujesz bazę danych ręcznie:

-- ============================================================================= -- Agency Lifeinvader 3.2: database tables (OPTIONAL) -- ----------------------------------------------------------------------------- -- You do not need to run this file. With oxmysql the script creates these -- tables on the first start and upgrades the tables of Lifeinvader V2 and V3 -- in place. Run it only if your server creates tables by hand. -- ============================================================================= CREATE TABLE IF NOT EXISTS `lifeinvader_ads` ( `id` INT NOT NULL AUTO_INCREMENT, `identifier` VARCHAR(100) NOT NULL, `author_name` VARCHAR(100) DEFAULT NULL, `message` TEXT NOT NULL, `category` VARCHAR(50) DEFAULT 'other', `anonymous` TINYINT DEFAULT 0, `boosted` TINYINT DEFAULT 0, `repetitions_total` INT DEFAULT 1, `repetitions_left` INT DEFAULT 1, `interval_seconds` INT DEFAULT 60, `display_duration` INT DEFAULT 8, `status` VARCHAR(16) NULL DEFAULT 'active', `approved` TINYINT DEFAULT 1, `approved_by` VARCHAR(100) DEFAULT NULL, `rejected_reason` TEXT DEFAULT NULL, `next_send_time` DATETIME DEFAULT NULL, `scheduled_for` DATETIME DEFAULT NULL, `review_requested_at` DATETIME DEFAULT NULL, `reviewed_at` DATETIME DEFAULT NULL, `review_decision` VARCHAR(32) DEFAULT NULL, `queue_priority` INT DEFAULT 0, `ai_score` INT DEFAULT 0, `ai_flags` LONGTEXT DEFAULT NULL, `admin_notes` LONGTEXT DEFAULT NULL, `price_paid` INT DEFAULT NULL, `paid_with` VARCHAR(16) DEFAULT NULL, `refunded` INT DEFAULT 0, `reviewer` VARCHAR(100) DEFAULT NULL, `sent_count` INT DEFAULT 0, `last_sent_at` DATETIME DEFAULT NULL, `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP, `updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`), KEY `idx_identifier` (`identifier`), KEY `idx_status` (`status`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE IF NOT EXISTS `lifeinvader_ad_drafts` ( `id` INT NOT NULL AUTO_INCREMENT, `identifier` VARCHAR(100) NOT NULL, `title` VARCHAR(120) DEFAULT NULL, `message` TEXT NOT NULL, `category` VARCHAR(50) DEFAULT 'other', `anonymous` TINYINT DEFAULT 0, `boosted` TINYINT DEFAULT 0, `repetitions_total` INT DEFAULT 1, `interval_seconds` INT DEFAULT 60, `display_duration` INT DEFAULT 8, `delay` INT DEFAULT 0, `scheduled_for` DATETIME DEFAULT NULL, `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP, `updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`), KEY `idx_identifier` (`identifier`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE IF NOT EXISTS `lifeinvader_player_settings` ( `id` INT NOT NULL AUTO_INCREMENT, `identifier` VARCHAR(100) NOT NULL, `notification_position` VARCHAR(20) DEFAULT 'middle-left', `notification_enabled` TINYINT DEFAULT 1, `notification_scale` FLOAT DEFAULT 1.0, `ui_transparency` FLOAT DEFAULT 0.55, `accent_color` VARCHAR(20) DEFAULT NULL, `sound_enabled` TINYINT DEFAULT 1, `admin_panel_scale` FLOAT DEFAULT 1.0, `muted_categories` VARCHAR(255) DEFAULT NULL, `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP, `updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`), UNIQUE KEY `uniq_identifier` (`identifier`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE IF NOT EXISTS `lifeinvader_admin_logs` ( `id` INT NOT NULL AUTO_INCREMENT, `admin_identifier` VARCHAR(100) DEFAULT NULL, `admin_name` VARCHAR(100) DEFAULT NULL, `action` VARCHAR(64) NOT NULL, `ad_id` INT DEFAULT NULL, `metadata` LONGTEXT DEFAULT NULL, `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`), KEY `idx_action` (`action`), KEY `idx_ad_id` (`ad_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

+Warto wiedzieć

Lifeinvader nie wymaga żadnego innego zasobu. Wgraj go, uruchom po swoim frameworku i nadaj dostęp administratorom. Tabele, aplikacja na urządzeniu i metody płatności konfigurują się same.

Rozpocznij zamówienie
umieść ensure Agency-LifeinvaderV3 za Twoim frameworkiem, oxmysql oraz Agency Phone lub Agency Pad w server.cfg, aby skrypt znalazł je przy starcie.
Admini
add_ace group.admin agency.lifeinvader.admin allow daje Twoim administratorom panel Admin. Config.Admin przyjmuje również grupy frameworka oraz pojedyncze identyfikatory.
The Agency Job
Personel to gracze z pracą lifeinvader w twoim frameworku (Config.Agency.job): od rangi 0 otwierają panel personelu, od rangi 3 wypłacają pieniądze. Serwery standalone używają ACE agency.lifeinvader.staff.
Baza danych
Z oxmysql tabele lifeinvader_ads, lifeinvader_ad_drafts, lifeinvader_player_settings i lifeinvader_admin_logs są tworzone przy pierwszym uruchomieniu i aktualizowane na miejscu z V2 oraz V3. install/agency_lifeinvader.sql jest przeznaczony tylko dla serwerów tworzących tabele ręcznie.

?Często zadawane pytania

Czy muszę zaimportować plik SQL?

Nie. Jest przeznaczony tylko dla serwerów, które tworzą tabele ręcznie. Z oxmysql skrypt sam tworzy i aktualizuje swoje tabele.

Jak zaktualizować z V3?

Zatrzymaj serwer, zachowaj kopię starego folderu, zastąp go nowym i weź nowy config.lua, ponieważ wiele opcji jest nowych. Reklamy, szkice i ustawienia graczy pozostaną.

Nadal nie idzie po tej stronie? Nasze wsparcie przejmuje sprawę.