Skrypt ESX QBCore QBOX Standalone

Admin Jail Script

$15.00

This FiveM script lets authorized staff groups forcefully jail players in a restricted area where they cannot move or escape for a set duration.

It’s ideal for semi-serious or serious RP servers, allowing admins to send characters who have died to an Admin Jail—making them nieużywalny przez resztę sesji — lub umieścić irytujących graczy na tymczasowym zawieszeniu.

Czas w więzieniu jest przechowywany w bazie danych i tylko maleje gdy gracz jest online i używa tej konkretnej postaci.

Istnieje wiele konfigurowalnych opcji, aby używać zasobu zgodnie z własnymi preferencjami:

  • Konfigurowalne grupy mające dostęp do komend.
  • Konfigurowalne nazwy tekstów/komend (język).
  • Konfigurowalna lokalizacja admin-jail.
  • Konfigurowalna lokalizacja zwalniania z admin-jail.
  • Konfigurowalna komenda listy admin-jail – pokazuje wszystkich graczy aktualnie osadzonych w admin-jail/ck.
  • Konfigurowalne kontrolki do wyłączenia, gdy gracz jest w admin-jail/ck.
  • Menu do przeglądania użytkowników, którzy są w admin-jail/ck.
  • Discord logowanie webhook (śledzenie, kto osadza/zwalnia i aktualizuje czas).
  • Opcjonalna konfiguracja kubełków routingu przy ładowaniu / adminjail.
  • Uprawnienia Ace. (ZOBACZ DOKUMENTACJĘ).

Komendy:

> ./adminjail (playerID, powód, czas) – osadź gracza na x czasu.
> ./adminjailtime – sprawdź, ile czasu pozostało.
> ./adminjailrelease (playerID) – zwolnij gracza z admin-jail.

Fakty o produkcie

Framework
ESX, QBCore, QBOX, Standalone
Typ zasobu
Skrypt
Dołączone pliki
1 plik do pobrania
Dodaj do koszyka
Podgląd zasobu FiveM Admin Jail Script
Admin Jail Script
$15.00
[ESX/QB] Zaawansowane więzienie administracyjne V2 + CK Postacie - FiveM Skrypt

Plik konfiguracyjny

-- ███████████████████████████████████████████████████████████████████████████ --                                                                                                                                  

Config = {}

Config.Framework = 1 -- (ESX == 1), (QB == 2)
Config.FrameworkExport = 'es_extended' -- (ESX == 'es_extended'), (QB == 'qb-core')

Config.releaseLocation = vector3(187.1704, -919.8855, 29.8055-1) -- where do you want the player to be teleported when out of adminjail/ck?

Config.chatMessages = true -- do you want the adminjail to notify other players in chat when adminjailed etc?
Config.reduceTimeOffline = true -- set to true if you want admin jail time to decrease even when the player is offline.
Config.routingBucket = true -- do you want to enable routing buckets? (this will put players into a random session so they are likely not to be with another player, more so for trolls)

Config.AdminJailCommand = 'adminjail'
Config.AdminJailCommandRelease = 'unadminjail'
Config.AdminJailTime = 'adminjailtime'
Config.AdminJailList = 'adminjaillist'

Config.DistanceCheck = 20.0 -- how far they can go away from Config.jailLocation before they're teleported back.
Config.DistanceMessage = 'You were teleported back to admin-jail for trying to get away.'

Config.DisabledControls = {24, 257, 25, 263, 45, 22, 44, 37, 23, 288, 289, 170, 167, 73, 59, 71, 72, 36, 47, 264, 257, 140, 141, 142, 143, 75} -- 245 for T keybind (chat)

Config.ckToggle = true -- toggle CK
Config.ckCommand = 'ck' -- cmd to CK 

Config.unckToggle = true -- toggle unCK
Config.unckCommand = 'unck' -- cmd to unCK

Config.ckAnnounce = true -- do you want to alert in that when someone is CKed?

-- Chat Messages IF ENABLED. -- (mainly for changing the RGBA colors & modifications -- don't touch if you don't know what you're doing)
Config.Admin_Jail_Updated = '<div style="color: rgba(255, 99, 71, 1); width: fit-content; max-width: 125%; word-break: break-word; "> {0} </div>'
Config.Admin_Jail_Sent = '<div style="color: rgba(255, 99, 71, 1); width: fit-content; max-width: 125%; word-break: break-word; "> {0} </div>'
Config.CK_Announce_Chat = '<div style="width: fit-content; max-width: 125%; word-break: break-word; "><span style="color: rgba(255, 99, 71, 1);">{0}</span> <span style="color: rgba(255, 255, 255, 1);">{1}</span></div>'
--

Config.AcePerm = false -- check readme

Config.AdminGroups = {
    'god',
    'admin',
    'moderator',
    'leadadmin',
    'developer',
    'management',
    'owner'
}

-- to run /ck & /adminjail -- (don't have access to /unck & /adminjailrelease to avoid abuse from the job)
Config.Jobs = {
    { name = 'police', grade = 6 },
    { name = 'ambulance', grade = 6 },
}

Config.jailLocation = {
    x = 3557.8950, -- x Coordinate
    y = 3659.7058, -- y Coordinate
    z = 28.1219-1  -- z Coordinate
}

Config.EnableWebhook = false -- (if true add webhook to server side) adminplus-adminjail/server/webhooks.lua

Config.Strings = {
    adminjail = 'send an individual to Admin Jail',
    adminjailrelease = 'release an individual from Admin Jail',
    adminjailchecktime = 'check the time of a person in Admin Jail',
    adminjailtimecommand = 'Check remaining jail time',
    insufficientpermissions = 'insufficient permission to use this command',
    invalid_player_id = 'invalid Player ID',
    invalid_reason = 'invalid reason',
    invalid_time = 'invalid time',
    player_not_found = 'player not found',
    usage_admin_release = 'Usage: /adminjailrelease [playerId]',
    usage_admin_jail = 'Usage: /adminjail [playerId] [reason] [time]',
    usage_admin_ck = 'Usage: /ck [playerId]',
    admin_jail_fail_remove = 'Failed to remove Admin Jail record from the database',
    admin_jail_fail_insert = 'Failed to insert admin jail record into the database',
    admin_jail_fail_update = 'Failed to update admin jail record in the database',
    admin_jail_released = 'You have been released from Admin Jail!',
    admin_jail_sent = 'You have been sent to Admin Jail!',
    time = ' \nTime: ',
    admin_jail_updated = 'Your Admin Jail time has been updated!  \nTime Updated: ',
    remaining_jail_time = 'Your remaining jail time:',
    remaining_jail_time_other = 'remaining jail time:',
    minutes = ' minute(s) ',
    seconds = ' seconds',
    player = ' player ',
    reason = '  \nReason: ',
    staff = '  \nStaff: ',
    active_admin_jail = 'You have an active Admin Jail sentence.',
    no_active_admin_jail = 'You do not have an active jail sentence.',
    no_active_admin_jail_other = 'does not have an active jail sentence.',
    chat_message_sent_to_jail = '%s has sent %s to Admin Jail for %s minute(s). Reason: %s',
    chat_message_has_updated = '%s has updated %s Admin Jail time to %s minute(s). Reason: %s',
    --
    ck = 'send an individiual to be CKed',
    ckrelease = 'release an individual from being CKed',
    usage_ck_admin_jail = 'Usage: /ck [playerId]',
    chat_ck_message_sent_to_jail = '%s has has been sent to the morgue. Reason: %s',
    chat_ck_message_has_updated = '%s has updated %s Admin Jail time to %s minute(s). Reason: %s',
    admin_ck_fail_update = 'User is already in the morgue.',
    admin_ck_fail_remove = 'Failed to remove CK record from the database',
    admin_ck_sent = 'You have been sent to the Morgue!',
    admin_ck_fail_insert = 'Failed to insert CK record into the database',
    usage_ck_release = 'Usage: /unck [playerId]',
    admin_ck_released = 'You have been released from the Morgue!',
    -- client  side menu notifications
    admin_menu_name = 'Admin Jail Features',
    admin_menu_list = 'Admin Jail List ',
    admin_menu_reason = 'Reason: ',
    admin_menu_jail_time = '\nJail Time: ',
    admin_menu_update_user_time = 'Update admin-jail time',
    admin_menu_update_user_time_desc = 'Update the admin-jail time of this individual.',
    admin_menu_update_input_user_time = 'Update admin-jail time for "',
    admin_menu_update_input_user_time_desc = 'How many minutes do you want this character to be admin-jailed for? ',
    admin_menu_remove_admin_jail_title = 'Remove admin-jail',
    admin_menu_remove_admin_jail_desc = 'Remove the admin-jail of this individual.',
    admin_menu_remove_ck_title = 'Un Character Kill',
    admin_menu_remove_ck_desc = 'Remove the character kill of this individual.',
    admin_menu_remove_copy_title = 'Copy Identifier',
    admin_menu_remove_copy_desc = 'Copy character\'s identifier.',
    admin_menu_remove_back_title = 'Back',
    admin_menu_remove_back_desc = 'Go back to admin-jail history.',
    admin_menu_clipboard = 'Copied identifier to clipboard  \n',
    -- server side menu notifications
    admin_menu_remove_admin_jail = 'Character Admin-Jail removed from database: ',
    admin_menu_remove_admin_jail_online = 'Character is in the city and was successfully removed from admin-jail.',
    admin_menu_remove_admin_jail_offline = 'Character is not in the city but was successfully removed from admin-jail.',
    admin_menu_fail_remove_license = 'Failed to remove license from database: ',
    admin_menu_ck_remove = 'Character-Kill removed from database: ',
    admin_menu_remove_ck_online = 'Character is in the city and was successfully un-cked.',
    admin_menu_remove_ck_offline = 'Character is not in the city but was successfully un-cked.',
    admin_menu_update_time = 'Updated admin jail time for: ',
    admin_menu_fail_update_time = 'Failed to update admin jail time for: ',
}

Config.Debug = false

-- ███████████████████████████████████████████████████████████████████████████ --

Instalacja

Uruchom SQL
sprawdź Config, aby skonfigurować swój framework.
UPRAWNIENIA ACE:
> (użyj dowolnego, dodaj do swojego server.cfg ) <
jeśli chcesz zezwolić konkretnej grupie z uprawnieniami, użyj pierwszego
jeśli używasz esx i chcesz zezwolić na określone identyfikatory, użyj drugiego
jeśli używasz esx i chcesz zezwolić na określone identyfikatory, użyj trzeciego
— uprawnienia grupy ACE
add_ace group.mod adminplus.command.adminjail allow
add_ace group.mod adminplus.command.adminjailrelease allow
add_ace group.mod adminplus.command.adminjaillist allow
— ESX uprawnienia ACE dla konkretnych identyfikatorów
add_ace identifier.steam:steamHEX adminplus.command.adminjail allow
add_ace identifier.steam:steamHEX adminplus.command.adminjailrelease allow
add_ace identifier.steam:steamHEX adminplus.command.adminjaillist allow
— QBcore ace perm specyficzne identyfikatory
add_ace identifier.license:identifier adminplus.command.adminjail allow
add_ace identifier.license:identifier adminplus.command.adminjailrelease allow
add_ace identifier.license:identifier adminplus.command.adminjaillist allow

Przewodnik konfiguracji

Dostarczony README zawiera przykłady SQL i ACE; poniższy przewodnik zachowuje wymaganą kolejność bez publikowania symboli zastępczych identyfikatorów.

Wymagania i przygotowanie

  • ESX lub QBCore i dołączony SQL.
  • Polityka ACE o najniższych uprawnieniach lub polityka grupy frameworku dla komend jail.

Instalacja

  1. Zaimportuj dołączony SQL i rozpakuj adminplus-adminjail.
  2. Wybierz framework/eksport, lokalizację zwolnienia, kubełek routingu i zachowanie czasu offline w config.lua.
  3. Dodaj uprawnienia ACE przy użyciu identyfikatorów należących do twojego serwera i uruchom zasób.

Punkty kontrolne konfiguracji

  • Przetestuj komendy jail, release, remaining-time i list z autoryzowanymi i nieautoryzowanymi kontami.
  • Zweryfikuj zachowanie ponownego połączenia, odliczania offline i odległości ucieczki.

Bezpieczeństwo: Wykonaj kopię zapasową zasobu i tabel baz danych, użyj danych uwierzytelniających należących do Twojego serwera i przeprowadź test na stagingu przed zastąpieniem zasobu na produkcji. Pełna konfiguracja pozostaje w pakiecie pobierania.

Informacje dodatkowe

Framework

ESX, QBCore, QBOX, Standalone