Agency Docs
QBESXStandalone

Agency-Lifeinvader V3 安装

适用于 QBCore、Qbox、ESX 或完全独立运行的 FiveM 城市广告代理。玩家可以发布广告,让广告在所有玩家的屏幕上滚动显示,并通过队列避免刷屏:六个类别各有自己的价格,可使用加速优先插队,可立即发布或最多延后 24.

v3.2.1付费5 页面

01安装

  1. 1将 Agency-LifeinvaderV3 放入您的 resources 文件夹
  2. 2在 server.cfg 中添加 ensure Agency-LifeinvaderV3,位置应在您的框架、oxmysql 和 Agency Phone 或 Agency Pad 之后
  3. 3使用 add_ace group.admin agency.lifeinvader.admin allow 授予管理员访问权限,或使用 Config.Admin
  4. 4使用 oxmysql 时,首次启动会创建数据表。install/agency_lifeinvader.sql 仅适用于手动创建数据表的服务器
  5. 5从旧版本更新:替换文件夹并使用新的 config.lua。广告、草稿和玩家设置会保留,数据表会原地升级

02依赖项

  • 无需任何依赖
  • QBCore、Qbox 或 ESX(可选,无需框架也可独立运行)
  • oxmysql(可选,没有它时所有数据都保存在服务器的键值存储中)
  • Agency Phone 或 Agency Pad 27.0.2 或更高版本(可选,用于应用和 Agency Pay)
  • Agency Banking(可选,用于 Standalone 服务器上的资金管理)
  • Agency-Notify(可选,使用 Agency 风格的消息)

03SQL 文件

可选:资源启动时会自动创建这些数据表。只有在手动配置数据库时才需要导入此文件:

-- ============================================================================= -- 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;

+值得了解

Lifeinvader 不需要其他资源。安装后,在框架启动后启动它,并为管理员授予访问权限。数据表、设备应用和付款方式都会自动设置。

开始安装
在 server.cfg 中确保 Agency-LifeinvaderV3 位于框架、oxmysql 和 Agency Phone 或 Agency Pad 之后,这样脚本就能在启动时找到它们。
管理员
add_ace group.admin agency.lifeinvader.admin allow 可为管理员开放管理面板。Config.Admin 也支持框架用户组和单个标识符。
Lifeinvader 职业
员工是使用你所用框架中的 lifeinvader 职业的玩家(Config.Agency.job):从等级 0 起,他们可以打开员工面板;从等级 3 起,他们可以支付款项。独立服务器使用 ACE agency.lifeinvader.staff。
数据库
使用 oxmysql 时,lifeinvader_ads、lifeinvader_ad_drafts、lifeinvader_player_settings 和 lifeinvader_admin_logs 数据表会在首次启动时创建,并从 V2 和 V3 原地升级。install/agency_lifeinvader.sql 仅供手动创建数据表的服务器使用。

?常见问题

我必须导入 SQL 文件吗?

不。它仅适用于手动创建数据表的服务器。使用 oxmysql 时,脚本会自行创建并升级数据表。

如何从 V3 更新?

停止服务器,备份旧文件夹,将其替换为新文件夹,并使用新的 config.lua,因为新增了许多选项。广告、草稿和玩家设置会保留。

看完本页仍未解决?接下来由我们的支持团队接手。