Move it to your resources folder, and add ensure lc_adminmenu to your server.cfg
Execute this SQL Query:
__INSTALL__/lc_adminmenu.sql
CREATE TABLE IF NOT EXISTS `lc_admin_administrators` (`id`int(11) NOT NULL AUTO_INCREMENT,`identifier`varchar(56) NOT NULL,`nick`text NOT NULL,`avatar_url`text NOT NULL DEFAULT '',`permissions` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '[]',`memberSince`bigint(20) NOT NULL DEFAULT 0,`addedBy`text DEFAULT NULL, PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `identifier` (`identifier`));CREATE TABLE IF NOT EXISTS `lc_admin_banlist` (`id`int(11) NOT NULL AUTO_INCREMENT,`nick`varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,`banned_by`varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,`reason`varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,`banned_at`bigint(20) DEFAULT NULL,`expire_at`bigint(20) NOT NULL,`discord`varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,`steam`varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,`license`varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,`xbl`varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,`live`varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, PRIMARY KEY (`id`));CREATE TABLE IF NOT EXISTS `lc_admin_player_history` (`id`int(11) NOT NULL AUTO_INCREMENT,`player_identifier`varchar(65) DEFAULT NULL,`action`varchar(50) DEFAULT NULL,`description`text DEFAULT NULL,`date`varchar(50) DEFAULT NULL,`added_by`text DEFAULT NULL, PRIMARY KEY (`id`));CREATE TABLE IF NOT EXISTS `lc_admin_player_identifiers` (`id`int(11) NOT NULL AUTO_INCREMENT,`discord`varchar(65) DEFAULT NULL,`steam`varchar(65) DEFAULT NULL,`license`varchar(65) DEFAULT NULL,`xbl`varchar(65) DEFAULT NULL,`live`varchar(65) DEFAULT NULL,`fivem`varchar(65) DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `discord` (`discord`), UNIQUE KEY `steam` (`steam`), UNIQUE KEY `license` (`license`), UNIQUE KEY `xbl` (`xbl`), UNIQUE KEY `live` (`live`), UNIQUE KEY `fivem` (`fivem`));CREATE TABLE IF NOT EXISTS `lc_admin_player_trust_score` (`identifier`varchar(56) DEFAULT NULL,`trust_score`int(11) DEFAULT 100, UNIQUE KEY `identifier` (`identifier`));CREATE TABLE IF NOT EXISTS `lc_admin_reports` (`id`int(11) NOT NULL AUTO_INCREMENT,`created_at`bigint(20) NOT NULL DEFAULT 0,`creator_identifier`varchar(65) NOT NULL,`creator_nick`varchar(50) NOT NULL,`creator_avatar`text DEFAULT NULL,`report_type`text NOT NULL,`report_description`text NOT NULL,`close_admin_id`int(11) DEFAULT NULL,`close_reason`text DEFAULT NULL, PRIMARY KEY (`id`));CREATE TABLE IF NOT EXISTS `lc_admin_reports_messages` (`id`int(11) NOT NULL AUTO_INCREMENT,`report_id`int(11) NOT NULL,`sender_identifier`varchar(65) NOT NULL,`sender_nick`varchar(50) NOT NULL,`sender_avatar`text DEFAULT NULL,`message`text DEFAULT NULL,`timestamp`bigint(20) DEFAULT 0, PRIMARY KEY (`id`));CREATE TABLE IF NOT EXISTS `lc_admin_stats` (`id`int(11) NOT NULL AUTO_INCREMENT,`category_name`varchar(80) NOT NULL,`label`varchar(65) NOT NULL,`value`varchar(65) NOT NULL, PRIMARY KEY (`id`));
And that's it! You can also configure things like the command / key to open the menu. This can be done in the config_shared.lua file.
config_shared.lua
return { panel_open_command ='admin', panel_open_key ='DELETE', use_report_system =true, report_command ='report', delete_reports_after =3600*24*14, -- in seconds, if you want to keep all reports forever you can set this option to false locale ='en', -- you can create your own translation file by creating json file in locale folder time_language_subtag ='en', -- https://en.wikipedia.org/wiki/IETF_language_tag#List_of_common_primary_language_subtags plate_pattern ='AAA 111', -- https://overextended.dev/ox_lib/Modules/String/Shared#stringrandom high_balance_warning =1000000, -- If player have more than this amount, warning will be shown-- ADMIN UI open_player_profile_key ='g', noclip_key ='f11', -- If you don't want to assign it to any key, you can just set it to nil noclip_command ='nc', -- Same with command - If you don't want command for noclip, just set it to nil freecam_key ='f10', -- Same as above ^ freecam_command ='fc', frameworks = { esx ='es_extended', qb ='qb-core' },}