Documentation 9.6.24
Commandes
Toutes les commandes, touches et outils d'administration en jeu de Tosun AC : qui peut les utiliser, la syntaxe exacte, ce qu'elles font et où le résultat s'affiche. La plupart des résultats s'affichent dans la console du serveur, pas dans le chat en jeu.
Avant de commencer#
Tosun AC ajoute une commande principale, /ts, avec de nombreuses sous-commandes. Il ajoute aussi des commandes de modération autonomes, des commandes de maintenance réservées à la console et quelques commandes client pour le menu admin. Chaque groupe a sa propre vérification de permission et son propre endroit d'affichage du résultat : lisez donc cette section en premier.
- La plupart des sous-commandes /ts et toutes les commandes de modération ts_* écrivent leur résultat dans la console du serveur. Un admin en jeu ne voit rien dans le chat, sauf la carte d'aide /ts et la carte d'absence de permission.
- Les outils joueur (mute, sethp, giveweapon et les autres) et les commandes ac* répondent dans le chat quand vous les utilisez en jeu.
- Beaucoup de réponses sont codées en dur en turc. La carte d'absence de permission affiche toujours « Bu komutu kullanmak için yetkiniz yok! ».
- Les commandes autonomes comme /freeze ou /mute ne sont pas des sous-commandes /ts. /ts freeze 5 affiche seulement « Unknown command » dans la console.
- Les noms courts comme revive, warn, players, freeze, mute, broadcast, setweather, settime, giveweapon, capture et emergency peuvent entrer en conflit avec les commandes d'autres ressources. En cas de doute, utilisez la forme ts_.
- Si le menu admin est désactivé (ts.AdminMenu.enable ou ts.AdminMenu.enabled = false), les commandes client tsmenu, unspectate, stopspectate, tsdelaimed et tsfreecam, le raccourci DELETE et la touche F7 ne sont pas enregistrés du tout.
Niveaux de permission#
Chaque commande vérifie l'un des niveaux ci-dessous. La console du serveur passe toutes les vérifications côté serveur, sauf pour les deux commandes de téléportation réservées au jeu. Les commandes client ne peuvent pas être lancées depuis la console. Cette page utilise ces noms de niveau dans tous les tableaux.
- tosun.admin (STAFF et MENU) et tosunac.admin (commandes de maintenance) sont deux ACE différents. Donnez les deux aux admins complets.
- Les ACE accordés à builtin.everyone ne comptent jamais comme STAFF ou MENU.
- group.admin et les autres noms de groupe sont testés comme objets ACE. Accordez un ACE explicite comme tosun.admin au lieu de compter uniquement sur l'appartenance au groupe.
| Niveau | Qui l'a | Utilisé par |
|---|---|---|
| STAFF | Les joueurs qui ont l'un des ACE command.ts, command.ban, command.kick, tosun.admin, ts.admin, txadmin, tx.admin, txadmin.menu, txadmin.advanced, command.txadmin, une entrée de ts.AdminBypassAces, ou les objets ACE group.admin, group.superadmin, group.moderator, group.god. Tant que ts.txAdminAuth est actif (par défaut), command.resources et command.restart comptent aussi. | Toutes les sous-commandes /ts sauf menu, toutes les commandes de modération, les outils joueur et les commandes ac*. |
| STAFF (autres sources) | Un identifiant dans Admins, ts.AdminMenu.allowedIds ou ts.AdminBypassIdentifiers ; une autorisation admin active dans le panel ; l'export addAdmin. | Comme STAFF. Une réponse « pas admin » de la base de données est mise en cache 30 s : une nouvelle autorisation du panel peut donc prendre ce délai. |
| MENU | Le menu admin est activé et le joueur a l'un des éléments suivants : command.ts, command.ban, command.kick, tosun.admin ou ts.admin ; group.admin, superadmin, moderator ou god ; une entrée Admins ; une entrée ts.AdminMenu.allowedIds ; une autorisation du panel ; l'export addAdmin. | Ouverture du menu admin et outils du menu. Les ACE propres à txAdmin et ts.AdminBypassIdentifiers donnent STAFF mais pas MENU. |
| Console | La console du serveur. | Ignore toutes les vérifications. Les commandes marquées console uniquement ne font rien quand vous les tapez en jeu. |
| tosunac.admin | Les joueurs qui ont cet ACE. | Nécessaire en jeu pour tosunac_setup, tosunac_backdoorscan et tosunac_eventscan ; également accepté pour /banscreentest. Ne donne ni STAFF ni MENU. |
| tosunac.banscreen.test | Les joueurs qui ont cet ACE. | Autorise /banscreentest en jeu. |
| command.<name> | Les joueurs qui ont l'ACE de commande FiveM. | FiveM le vérifie en premier pour les commandes restreintes. Les commandes restreintes utilisables en jeu sont ts_v9_help, ts_setlang, tosunac_setup, tosunac_backdoorscan et tosunac_eventscan. La vérification de l'AC s'exécute ensuite. |
| Tout le monde | Tous les joueurs. | Seule /acping n'a aucune vérification. /ts, /tsmenu, /tsdelaimed et /tsfreecam peuvent être tapées par n'importe qui mais vérifient les permissions avant d'agir. /unspectate et /stopspectate ne font rien si vous n'êtes pas en mode spectateur. |
Accorder l'accès dans server.cfg#
Le premier bloc ci-dessous est la partie ACE du modèle d'installation type. Il donne au principal group.admin l'accès staff, menu, maintenance et test de l'écran de ban, puis ajoute un joueur à ce groupe. Remplacez <HEX> par la licence du joueur. Les deux lignes facultatives ne sont pas dans le modèle ; ajoutez-les seulement si le staff doit lancer ts_setlang ou ts_v9_help en jeu.
Vous pouvez aussi accorder l'accès sans ACE. Un identifiant dans admins/anticheat_admins.lua (Admins) ou dans ts.AdminMenu.allowedIds donne STAFF et MENU. Un identifiant dans ts.AdminBypassIdentifiers donne seulement STAFF. Une autorisation admin dans le panel web donne STAFF et MENU.
Les valeurs « all » et « staff » dans ts.AdminMenu.allowedIds ne sont pas des identifiants et n'accordent rien.
add_ace group.admin tosun.admin allow
add_ace group.admin tosunac.admin allow
add_ace group.admin command.tosunac_setup allow
add_ace group.admin command.tosunac_backdoorscan allow
add_ace group.admin command.tosunac_eventscan allow
add_ace group.admin tosunac.banscreen.test allow
add_principal identifier.license:<HEX> group.admin
# facultatif, absent du modèle : les deux commandes d'aide restreintes
add_ace group.admin command.ts_setlang allow
add_ace group.admin command.ts_v9_help allowOù s'affichent les résultats#
Regardez la console du serveur quand une commande semble ne rien faire en jeu.
| Groupe de commandes | En jeu, l'émetteur voit | La console du serveur affiche |
|---|---|---|
| Sous-commandes /ts | Rien, sauf la carte d'aide /ts et la carte d'absence de permission. /ts et /ts menu ouvrent le menu. | La ligne de résultat de chaque sous-commande. |
| Commandes de modération ts_* et leurs noms courts | Rien. La cible peut recevoir une ligne dans le chat ou une notification. | La ligne de résultat, surtout en turc. Un ts_<name> refusé affiche « [ts_<name>] Yetersiz yetki. » ; un nom court refusé n'affiche rien. |
| Outils joueur (mute, unmute, sethp, setarmor, giveweapon, stripweapons, massfreeze, emergency, capture, clearinv, speedlimit) | Une réponse dans le chat, surtout en turc. Un refus est silencieux. | « [AC] ... » quand la commande est lancée depuis la console. |
| acwarn, acfreeze, acunfreeze, acstats, acping | Une réponse dans le chat. | acwarn affiche une ligne de log ; acstats et acping affichent « [AC] ... » quand elles sont lancées depuis la console ; acfreeze et acunfreeze n'affichent rien. |
| Commandes de maintenance (tosunac_*, ac_cleanup, ts_setlang, ts_v9_help) | Rien. | Toute la sortie, même quand un joueur autorisé lance la commande en jeu. |
| banscreentest | L'aperçu de l'écran de ban sur l'écran de la cible. | Une ligne d'usage si l'entrée est invalide. |
| Commandes client (tsmenu, tsdelaimed, tsfreecam, unspectate, stopspectate) | Le menu, une notification ou la caméra libre. | Rien. |
La commande /ts#
/ts est une seule commande serveur. Le premier mot qui suit choisit la sous-commande et n'est pas sensible à la casse. Dans la console du serveur, tapez la même ligne sans la barre oblique, par exemple ts banlist.
- /ts ou /ts menu en jeu ouvre ou ferme le menu admin et nécessite MENU. Dans la console, la commande affiche la liste d'aide.
- Toutes les autres sous-commandes nécessitent STAFF en jeu. Sans ce niveau, vous recevez la carte d'absence de permission et rien ne se passe.
- Une sous-commande inconnue affiche « Unknown command. Type ts help. For extra commands: ts_v9_help » dans la console du serveur uniquement.
- Alias : evtlist = faketriggerlist = evtliste ; evtwhitelist = faketriggeroff = evtoff ; evttrap = faketriggeron = evton ; evtscan = faketriggerscan = evtara ; sigpatterns = sigexc_help ; quarantine = karantina ; release = serbest ; quarantines = karantinalar ; sous sigexc et sigskip, del = remove.
- La liste d'aide de la console (ts help) est incomplète. Elle omet quarantine, release, quarantines, les alias et les secondes facultatives de ts whitelist. La carte d'aide /ts en jeu ne liste que /ts, ban, kick, unban et help. Cette page contient la liste complète.
/ts ban 12 aimbot (in game)
ts banlist 2 (server console)/ts : menu, aide et état#
Sous-commandes générales. La sortie s'affiche dans la console du serveur, sauf indication contraire dans le tableau.
| Syntaxe | Qui | Effet | Sortie |
|---|---|---|---|
/ts or /ts menu | MENU | Ouvre le menu admin, ou le ferme s'il est ouvert. Sans MENU, vous recevez la carte d'absence de permission et rien n'est journalisé. | Menu en jeu ; liste d'aide dans la console |
/ts help | STAFF | En jeu : une carte dans le chat qui liste /ts, ban, kick, unban et help. Console : la liste partielle des commandes. | Carte dans le chat ou console |
/ts status | STAFF | Affiche le nombre de joueurs en ligne ainsi que l'état et le motif du verrouillage (lockdown). | [STATUS] Online: N | Lockdown: ON/OFF (reason) |
/ts find <name part> | STAFF | Liste les joueurs en ligne dont le nom contient le texte. Non sensible à la casse. | Lignes [FIND] #id nom |
/ts reload | STAFF | À ne pas utiliser. Remplace toute la table ts côté serveur par le fichier de config brut. Les fonctions d'exécution et les réglages du panel sont perdus jusqu'au redémarrage ; ensuite, /ts en jeu lève des erreurs et le menu ne peut plus s'ouvrir. Les clients gardent l'ancienne config. Redémarrez plutôt tosun-ac. | [RELOAD] Config yenilendi. |
/ts : bans et expulsions#
Les bans manuels utilisent le même circuit de sanction que les détections. La sortie s'affiche dans la console du serveur.
- Les ID de ban ont la forme XXXX-XXXX, ou #NNNN quand ts.banIDFormat = 2.
- ts.punishType contrôle aussi les bans manuels. Si vous le réglez sur LOG ou KICK, /ts ban ne fait que journaliser ou expulser.
- Les cibles du staff (tant que ts.AdminBypassDetections est actif), en liste blanche ou en liste blanche du panel sont ignorées en silence, sauf si ts.Debug est actif. La ligne [BAN] s'affiche quand même.
| Syntaxe | Qui | Effet | Sortie |
|---|---|---|---|
/ts ban <playerId> [reason] | STAFF | Bannit un joueur en ligne. Motif par défaut « Admin Ban ». Utilise ts.punishType (BAN par défaut) et BanDurations.default (0 par défaut = permanent). Un vrai ban écrit la ligne de ban, envoie les webhooks Detections et Bans et prévient le panel web. En jeu, il envoie aussi le webhook Admin Ban vers Webhooks.Commands. | [BAN] <name> (<id>) banned: <reason> |
/ts kick <playerId> [reason] | STAFF | Expulse un joueur en ligne avec le message d'expulsion Tosun AC dans la langue de la cible. Refuse les cibles du staff. Le motif est vide si vous l'omettez. En jeu, il envoie aussi le webhook Admin Kick. | [KICK] <name> (<id>) kicked: <reason> |
/ts unban <banID> | STAFF | Supprime le ban, envoie le webhook Ban Removed vers Webhooks.AdminMenuLogs et déclenche l'événement d'unban. La ligne de succès s'affiche même si l'ID n'existe pas. | [UNBAN] <banID> unbanned. |
/ts baninfo <banID> | STAFF | Affiche l'ID, le joueur, le motif, le Steam et la licence d'un ban. | Ligne d'infos du ban ou « not found » |
/ts banlist [page] | STAFF | Liste 10 bans par page (ID, nom, motif). L'ordre suit l'ID de ban aléatoire, pas la date. L'en-tête est en turc. | [BANLIST] Sayfa N: |
/ts bancount | STAFF | Compte toutes les lignes de ban. | [BANCOUNT] N ban records total. |
/ts offlineban <oldServerId> [reason] | STAFF | Bannit définitivement un joueur parti depuis le dernier démarrage de l'AC, à partir de l'ID serveur qu'il avait. Bannit les identifiants capturés à la déconnexion : licence, Steam, Discord, FiveM, IP et jetons HWID. Aucune vérification du staff, aucun événement de ban et aucun webhook. Ces données sont perdues au redémarrage de la ressource. | [OFFLINEBAN] <name> banned offline: <reason> |
/ts : liste blanche, exemption et quarantaine#
Utilisez ces commandes pour suspendre les sanctions d'un joueur pendant un temps, ou pour isoler un suspect au lieu de le bannir. Les entrées de liste blanche et d'exemption sont gardées en mémoire, indexées par ID serveur, et prennent fin à la déconnexion du joueur.
- La durée de quarantaine est de 300 s par défaut et bornée entre 30 s et ts.quarantine.maxSeconds (1800 par défaut). Le motif par défaut est « admin karantinasi ».
- La quarantaine refuse les joueurs exemptés de sanction : staff, joueurs en liste blanche, en liste blanche du panel ou exemptés temporairement.
- Avec ts.quarantine.enabled = false, le module de quarantaine n'est pas chargé et la commande affiche la ligne d'échec.
- Un joueur déjà en quarantaine produit quand même une ligne de succès.
| Syntaxe | Qui | Effet | Sortie |
|---|---|---|---|
/ts whitelist <playerId> [seconds] | STAFF | Ignore les sanctions pour le joueur ; les détections continuent. Sans secondes, dure jusqu'à la déconnexion ; 0 expire immédiatement. L'ID n'est pas vérifié. | [WHITELIST] <name> (<id>) whitelist'e eklendi. |
/ts unwhitelist <playerId> | STAFF | Retire l'entrée de liste blanche. | [WHITELIST] <name> (<id>) removed from whitelist. |
/ts tempwhitelist <playerId> [seconds] | STAFF | Comme whitelist, avec une durée fixe : 300 s par défaut, 1 s minimum. | [WHITELIST] <name> (<id>) whitelisted for Ns. |
/ts exempt <playerId> [seconds] [reason] | STAFF | Suspend les détections client et les sanctions pendant 1 à 300 s (60 par défaut, motif admin_exempt). Écrase toute entrée de liste blanche : une /ts whitelist permanente est donc raccourcie à cette durée. | [EXEMPT] name (id) — N sn tespit muafiyeti. |
/ts quarantine <playerId> [seconds] [reason] | STAFF | Déplace le joueur dans un routing bucket privé (9001-9500 par défaut) avec les entités verrouillées et sans population. Journalise une détection QUARANTINE et prévient le joueur en turc, sauf si ts.quarantine.notifyPlayer = false. Libère automatiquement à la fin du délai. | [KARANTINA] ... izole edildi, ou Basarisiz |
/ts release <playerId> | STAFF | Met fin à la quarantaine plus tôt et rétablit le routing bucket d'origine. | [KARANTINA] <id> serbest birakildi. |
/ts quarantines | STAFF | Liste les joueurs en quarantaine avec ID, nom, motif et secondes restantes. | Liste avec en-têtes en turc |
/ts : supprimer des entités#
Ces sous-commandes suppriment des entités sur tout le serveur d'un coup. Il n'y a aucune étape de confirmation. La sortie s'affiche dans la console du serveur.
| Syntaxe | Qui | Effet | Sortie |
|---|---|---|---|
/ts clearvehicles | STAFF | Supprime tous les véhicules, y compris ceux occupés et ceux appartenant à des joueurs. | [CLEAR] N vehicles deleted. |
/ts clearpeds | STAFF | Supprime tous les peds non joueurs (PNJ). | [CLEAR] N NPCs deleted. |
/ts clearobjects | STAFF | Supprime tous les objets, y compris les props de script en réseau et les props de mapping. | [CLEAR] N objects deleted. |
/ts clearall | STAFF | Supprime véhicules, PNJ et objets en un seul appel. | [CLEAR] V vehicles, P NPCs, O objects deleted. |
/ts : événements honeypot#
Les honeypots sont de faux événements de trigger que les vrais scripts ne devraient jamais déclencher : un joueur qui en déclenche un peut donc être banni. La liste active est stockée dans la table ac_protected_events. La sortie s'affiche dans la console du serveur.
| Syntaxe | Qui | Effet | Sortie |
|---|---|---|---|
/ts evtlist | STAFF | Liste les événements honeypot actifs avec leur type, plus un total. Alias : faketriggerlist, evtliste. | Liste des événements |
/ts evtwhitelist <eventName> | STAFF | Désactive un honeypot (active = 0) et recharge la liste. Utilisez-la quand un vrai script utilise ce nom d'événement et que des joueurs reçoivent de faux bans. La ligne de succès s'affiche même si aucune ligne ne correspond. Alias : faketriggeroff, evtoff. | Confirmation et conseil de faire ensure sur la ressource AC (tosun-ac) pour les gestionnaires déjà enregistrés |
/ts evttrap <eventName> client|server | STAFF | Ajoute un honeypot du type indiqué, ou le réactive, et recharge la liste. Alias : faketriggeron, evton. | Confirmation et conseil d'ensure pour la ressource AC, ou une ligne d'usage |
/ts evtscan | STAFF | Lecture seule. Analyse les fichiers .lua listés dans le manifeste de chaque ressource démarrée à la recherche de noms d'événements, et signale les honeypots utilisés par de vrais scripts, chacun avec une ligne ts evtwhitelist suggérée. Les entrées glob (*) et les fichiers .js sont ignorés. Alias : faketriggerscan, evtara. | Liste des conflits, ou « no conflict » |
/ts : exceptions du scanner de signatures#
Utilisez ces commandes quand le scanner de signatures signale un script légitime. Le code de signature apparaît dans la ligne de log [Signature Scanner]. Les exceptions et les exclusions sont stockées en base de données. La sortie s'affiche dans la console du serveur.
/ts sigexc ou /ts sigskip sans deuxième mot valide affiche une aide d'usage.
| Syntaxe | Qui | Effet | Sortie |
|---|---|---|---|
/ts sigexc add <resource> <signature_code> [file/path.lua] | STAFF | Enregistre une exception dans ac_signature_exceptions. Sans fichier, elle couvre tous les fichiers de la ressource. | [SIGEXC] Kaydedildi: res / code, ou Kaydedilemedi |
/ts sigexc list | STAFF | Affiche les 80 exceptions les plus récentes : id, ressource, fichier (ou tous les fichiers) et signature. | Liste des exceptions |
/ts sigexc del <id> | STAFF | Supprime l'exception portant cet id dans sigexc list. Alias : remove. | Ligne de suppression ou d'échec |
/ts sigexc reload | STAFF | Vide le cache des exceptions. Il est relu depuis la base de données au scan suivant. | Ligne de réinitialisation du cache |
/ts sigpatterns | STAFF | Affiche un échantillon des codes de signature intégrés, comme lua_loadstring, debug_sethook et trigger_internal. Alias : sigexc_help. | Liste des codes |
/ts sigskip add <resource> | STAFF | Fait ignorer par le scanner de signatures une ressource escrow ou chiffrée (stockée dans ac_signature_escrow_skip). | Ligne d'ajout ou d'échec |
/ts sigskip list | STAFF | Affiche jusqu'à 80 ressources exclues avec leur id. | Liste des exclusions |
/ts sigskip del <id|resource> | STAFF | Retire une exclusion par id de ligne ou par nom de ressource. Alias : remove. | Ligne de retrait ou d'échec |
ts sigexc add my-job lua_loadstring client/main.lua
ts sigskip add my-escrow-packCommandes de modération (forme ts_ et nom court)#
Ces 17 commandes ne sont pas des sous-commandes /ts. Chacune existe sous la forme ts_<name> et sous le nom court <name>, par exemple /ts_freeze 7 ou /freeze 7. Les deux nécessitent STAFF en jeu, et la console peut les lancer. Tous les résultats vont dans la console du serveur.
- Un ts_<name> refusé affiche « [ts_<name>] Yetersiz yetki. » dans la console. Un nom court refusé ne fait rien.
- Le nom court relance ts_<name> comme commande serveur après avoir retiré les points-virgules, les guillemets doubles et les sauts de ligne. Cette commande imbriquée s'exécute très probablement en tant que console. Résultat : /tphere et /tpto échouent, /adminsync exige un ID, /kickall vous expulse aussi et /warn enregistre l'émetteur comme console. Utilisez la forme ts_ pour ces commandes et vérifiez une fois en jeu.
- ts_v9_help liste ces commandes sous la forme « ts freeze <id> », etc. Cette syntaxe ne fonctionne pas ; tapez ts_freeze ou freeze.
| Syntaxe | Qui | Effet | Sortie console |
|---|---|---|---|
/ts_freeze <id> | /freeze <id> | Console ou STAFF | Fige le joueur et lui envoie un avis dans le chat. La vérification anti-freeze de l'AC lui-même dégèle les joueurs non admin en 10 s environ, alors que la cible peut rester invincible jusqu'à 60 s. | [freeze] <name> donduruldu. |
/ts_unfreeze <id> | /unfreeze <id> | Console ou STAFF | Dégèle le joueur et retire l'invincibilité. | [unfreeze] <name> serbest. |
/ts_slay <id> | /slay <id> | Console ou STAFF | Met la santé du joueur à 0. | [slay] <name> öldürüldü. |
/ts_revive <id> | /revive <id> | Console ou STAFF | Déclenche le premier événement de réanimation d'ambulance correspondant (wasabi, qb, esx, cd, ars et d'autres), ressuscite le joueur s'il est encore mort et rétablit santé et armure. /revive entre souvent en conflit avec les scripts d'ambulance. | [revive] <name> canlandırıldı. |
/ts_healall | /healall | Console ou STAFF | Soigne tous les joueurs (santé max, armure 100) et l'annonce dans le chat en turc. | [healall] N oyuncu iyileştirildi. |
/ts_warn <id> [reason] | /warn <id> [reason] | Console ou STAFF | Envoie un avertissement dans le chat du joueur et l'enregistre dans ac_player_warnings. Motif par défaut « No reason specified ». | [warn] <name> → "reason" |
/ts_warnings <id> | /warnings <id> | Console ou STAFF | Liste les 10 derniers avertissements d'un joueur en ligne par licence, y compris ceux de /acwarn. | Liste des avertissements |
/ts_broadcast <message> | /broadcast <message> | Console ou STAFF | Envoie le message à tous les joueurs sous le titre « 📢 SUNUCU DUYURUSU ». | [broadcast] Tüm oyunculara: msg |
/ts_players | /players | Console ou STAFF | Liste les joueurs en ligne avec ID, nom, ping et une marque s'ils ont été figés par ces commandes. | Liste des joueurs |
/ts_lockdown on|off [reason] | /lockdown ... | Console ou STAFF | on, enable ou 1 refuse toute nouvelle connexion avec « 🔒 LOCKDOWN: <reason> », staff compris (motif par défaut « Bakım »). off, disable ou 0 y met fin. Sans argument, affiche l'état. Les joueurs déjà en ligne restent. Réinitialisé au redémarrage. | [lockdown] AKTİF / KAPALI, ou l'état |
/ts_tphere <id> | STAFF, en jeu uniquement | Téléporte le joueur jusqu'à vous et lui donne une exemption de téléportation de 15 s. Le nom court /tphere échoue. | [tphere] <name> yanına çekildi. |
/ts_tpto <id> | STAFF, en jeu uniquement | Vous téléporte jusqu'au joueur, avec une exemption de téléportation de 15 s pour vous. Le nom court /tpto échoue. | [tpto] <name> konumuna gidildi. |
/ts_setweather [TYPE] | /setweather [TYPE] | Console ou STAFF | Règle la météo sur tous les clients (CLEAR par défaut, transition de 5 s). Côté client uniquement : un script de synchro météo peut donc l'écraser. | [weather] TYPE |
/ts_settime [hour] [minute] | /settime ... | Console ou STAFF | Règle l'heure sur tous les clients (12:00 par défaut). Côté client uniquement. Utilisez des nombres entiers : une fraction provoque une erreur Lua. | [time] HH:MM |
/ts_kickall [reason] | /kickall [reason] | Console ou STAFF | Expulse tous les joueurs sauf l'émetteur, staff compris. Motif par défaut « Yetkili: kick all ». Avec le nom court, vous êtes très probablement expulsé aussi. | [kickall] N oyuncu atıldı. |
/ts_modping | /modping | Console ou STAFF | Met à jour l'horodatage derrière l'indicateur d'état de l'AC dans le panel web. La ligne s'affiche même si l'écriture en base échoue. | Ligne de confirmation (en turc) |
/ts_adminsync [id] | /adminsync <id> | Console ou STAFF | Renvoie le statut staff et l'exemption staff à un membre du staff dont le client ne le reconnaît pas comme staff. ts_adminsync sans ID vous cible vous-même. | [adminsync] <name> için admin bypass yenilendi. |
Outils joueur (mute, sethp, giveweapon ...)#
Ces 11 commandes existent sous la forme ts_<name> et <name>, et les deux formes vous voient comme émetteur : les noms courts fonctionnent donc en jeu. Elles nécessitent STAFF ; la console peut les lancer. Un refus est silencieux. La réponse va dans votre chat, ou dans la console sous la forme « [AC] ... ». Les réponses sont surtout en turc.
| Syntaxe | Qui | Effet | Réponse |
|---|---|---|---|
/mute <id> [seconds] [reason] (also /ts_mute) | Console ou STAFF | Bloque le chat du joueur pendant la durée (300 s par défaut ; 0 ou moins = permanent). Seul le chat qui passe par l'événement serveur chatMessage est bloqué. Le mute est lié à l'ID serveur : une reconnexion y met donc fin. Sans secondes, le premier mot du motif est perdu. | <name> susturuldu (Ns). |
/unmute <id> (also /ts_unmute) | Console ou STAFF | Retire le mute et prévient le joueur. Indique un succès pour n'importe quel ID numérique. | Susma kaldırıldı. |
/sethp <id> <0-200> (also /ts_sethp) | Console ou STAFF | Règle la santé du joueur. 0 le tue. | <name> HP N olarak ayarlandı. |
/setarmor <id> <0-100> (also /ts_setarmor) | Console ou STAFF | Règle l'armure du joueur. | <name> zırh N olarak ayarlandı. |
/giveweapon <id> <WEAPON_NAME> [ammo] (also /ts_giveweapon) | Console ou STAFF | Donne une arme (60 munitions par défaut) via ox_inventory, puis qb/qbox, puis ESX, sinon via la native. Le premier chemin qui ne lève pas d'erreur compte, même s'il n'a rien donné. La réponse s'affiche dans tous les cas. | <name> -> WEAPON (xN) |
/stripweapons <id> (also /ts_stripweapons) | Console ou STAFF | Retire toutes les armes du ped. Les objets d'inventaire restent. Un ID qui n'est pas en ligne provoque une erreur Lua. | <name> silahları alındı. |
/massfreeze [on|off] (also /ts_massfreeze) | Console ou STAFF | Fige (on par défaut) ou dégèle tous les joueurs, staff compris, et l'annonce. Les non-admins sont vite dégelés par la vérification anti-freeze ; le staff reste figé jusqu'à off ou 60 s. | N oyuncu işlendi. |
/emergency [reason] (also /ts_emergency) | Console ou STAFF | Active le verrouillage (lockdown) et expulse tous les joueurs hors staff avec « EMERGENCY: <reason> ». Motif par défaut « Acil bakım ». Mettez fin au verrouillage avec /ts_lockdown off. | Acil durum: N oyuncu kicklendi, lockdown aktif. |
/capture <id> (also /ts_capture) | Console ou STAFF | Si screenshot-basic est démarré, demande au client du joueur d'envoyer une capture d'écran à l'URL de la convar ts_screen_upload (par défaut http://localhost/api/screen_upload.php). L'AC ne garde pas le résultat ; l'image n'existe que sur la cible d'envoi. | Ekran görüntüsü istendi. |
/clearinv <id> (also /ts_clearinv) | Console ou STAFF | Vide l'inventaire avec ox_inventory. Sans ox_inventory, rien n'est vidé, mais le joueur voit quand même un avis « vidé ». Un ID qui n'est pas en ligne provoque une erreur Lua. | <name> envanteri temizlendi. |
/speedlimit [kmh] (also /ts_speedlimit) | Console ou STAFF | Limite la vitesse des véhicules pour les joueurs en ligne à ce moment (0 = retirer). Les joueurs qui arrivent plus tard ne sont pas limités, et le retrait ne rétablit pas un véhicule déjà bridé. | Sunucu hız limiti: N km/h, ou Hız limiti kaldırıldı. |
Commandes rapides (acwarn, acfreeze, acstats ...)#
Cinq commandes courtes qui répondent dans le chat. Toutes sauf /acping nécessitent STAFF ou la console, et un refus est silencieux.
| Syntaxe | Qui | Effet | Réponse |
|---|---|---|---|
/acwarn <id> <reason> | Console ou STAFF | Enregistre un avertissement dans ac_player_warnings, l'envoie dans le chat du joueur et vous le confirme. Le motif est obligatoire. Les erreurs d'usage ne s'affichent qu'en jeu. | Chat pour vous ; ligne console « [AC] admin -> name WARN: reason » |
/acfreeze <id> | Console ou STAFF | Fige le joueur. La réponse indique 60 s, mais la vérification anti-freeze de l'AC peut libérer un non-admin en 10 s environ. | Chat pour vous, en jeu uniquement |
/acunfreeze <id> | Console ou STAFF | Dégèle le joueur. | Chat pour vous, en jeu uniquement |
/acstats | Console ou STAFF | Affiche « Detections: N | Online: N » et un indicateur d'état de protection. Les détections sont comptées depuis le démarrage de l'AC. | Chat, ou « [AC] ... » dans la console |
/acping | Tout le monde | Répond avec la version de l'AC et le nombre de joueurs en ligne. N'importe quel joueur peut la lancer. | Chat, ou « [AC] AC up — v<version> » dans la console |
Commandes de maintenance et de diagnostic#
Lancez-les depuis la console du serveur. Quelques-unes peuvent aussi être lancées en jeu avec les ACE indiqués. La sortie va toujours dans la console du serveur, sauf pour banscreentest.
Les refus de tosunac_setup, tosunac_backdoorscan, tosunac_eventscan et banscreentest sont silencieux. Un second tosunac_setup lancé pendant qu'un premier tourne est refusé.
Les commandes restreintes nécessitent à la fois l'ACE de commande FiveM et la vérification de l'AC. Par exemple, un joueur qui a seulement tosunac.admin ne peut pas lancer tosunac_setup.
| Syntaxe | Qui | Effet | Sortie |
|---|---|---|---|
tosunac_setup | Console, ou en jeu ACE command.tosunac_setup plus tosunac.admin | Référence d'installation à usage unique : détecte le framework, lance le scan de backdoors et le scan complet des signatures, approuve dans la baseline du Resource Guard uniquement les ressources propres et inchangées, puis catalogue les événements sans leur faire confiance. S'interrompt sans rien approuver si un scan est indisponible ou incomplet. | Lignes [Kurulum] et un résumé Framework / approved / skipped |
tosunac_doctor | Console uniquement | Rapport de risques en lecture seule sur la config appliquée (après la synchro du panel), par exemple Debug actif, réglages BAN risqués et bans par défaut permanents. S'exécute aussi une fois 90 s après le démarrage et écrit une ligne de log en base si des risques existent. Le texte est en turc. | Liste des risques, ou une ligne « no risky setting » |
tosunac_backdoorscan | Console, ou en jeu ACE command.tosunac_backdoorscan plus tosunac.admin | Scan approfondi de chaque ressource à la recherche de motifs de backdoor, de RCE, d'élévation de privilèges et d'exfiltration. Les résultats vont au panel. Avec ts.BackdoorGuard.autoQuarantine = true, les ressources avec un résultat critique sont arrêtées. Non enregistrée quand le Backdoor Guard est désactivé. | Ligne de démarrage, puis un résumé Scan done |
tosunac_eventscan | Console, ou en jeu ACE command.tosunac_eventscan plus tosunac.admin | Scan statique de toutes les ressources à la recherche de noms d'événements, envoyés dans la Trigger List du panel. Les événements ne sont protégés que si ts.EventScanner.autoProtect = true (false par défaut). Non enregistrée quand le scanner d'événements est désactivé. N'affiche rien si un scan est déjà en cours. | Ligne de démarrage, puis Trigger scan done |
tosunac_db_status | Console uniquement | Affiche l'état du DB bridge : activé, licence configurée ou manquante, état d'oxmysql, framework, état des requêtes et dernier état du panel. | Lignes [Tosun DB Bridge] |
tosunac_db_check | Console uniquement | Exécute SELECT 1 via oxmysql. Ne vérifie ni la licence, ni l'interrupteur du panel, ni les tables du framework. | Ligne de réussite ou d'échec |
ac_cleanup | Console uniquement | Lance immédiatement le nettoyage de la base : anciens logs, détections, lignes d'audit, files d'attente, réputation IP, tentatives de connexion et sessions expirées (rétention selon ts.v12.keep*). Le nombre affiché est calculé avant la fin des suppressions et vaut souvent 0. Non enregistrée quand ts.v12.enableAutoCleanup = false. | [v12 cleanup] Manual run tamam: ... |
tosunac_integration | Console uniquement | Pour les développeurs de scripts : indique si la liste blanche des exports est appliquée, les ressources de confiance et l'origine de chacune, le nombre d'événements d'exemption accrochés et les derniers appels d'export refusés. | Texte dans la console |
ts_setlang <playerId> <lang> | Console, ou en jeu ACE command.ts_setlang plus STAFF | Règle la langue de l'AC pour un joueur (ar, de, en, es, fr, pt, ru, tr, zh) et la synchronise vers son client. Seule la langue est vérifiée ; un ID qui n'est pas en ligne est signalé comme OK. | Player N language set to xx |
ts_v9_help | Console, ou en jeu ACE command.ts_v9_help | Affiche la liste des commandes de modération avec une syntaxe « ts freeze » erronée. Omet les outils joueur, les commandes ac* et ts_setlang. | Encadré dans la console |
banscreentest <playerId> | /banscreentest | Console avec un ID ; en jeu ACE tosunac.banscreen.test ou tosunac.admin | Affiche un aperçu de l'écran de ban configuré (ID de ban TEST-0000, motif Preview) sur la cible, ou sur vous-même en jeu. Personne n'est expulsé, isolé ni enregistré. Ne vérifie pas si l'écran de ban est activé. | Écran de ban sur la cible ; ligne d'usage si l'entrée est invalide |
Lancer tosunac_setup en toute sécurité#
tosunac_setup fait confiance à ce qui est installé à ce moment. Lancez-la uniquement sur un serveur que vous savez sain.
- Démarrez le serveur avec uniquement les ressources de confiance.
- Vérifiez que le Backdoor Guard est activé. S'il est désactivé, l'installation s'interrompt sans rien approuver.
- Tapez tosunac_setup dans la console du serveur. Le scan de backdoors peut prendre jusqu'à 120 s.
- Lisez le résumé. Chaque ressource ignorée est journalisée par son nom ; vérifiez-les une par une dans le panel web.
- Lancez tosunac_doctor pour contrôler les réglages appliqués et repérer les risques de faux bans et de sécurité.
Tester et prévisualiser#
Ces commandes vous permettent de vérifier l'AC sans sanctionner personne.
- Écran de ban : /banscreentest en jeu l'affiche sur votre propre écran ; banscreentest <id> dans la console l'affiche sur ce joueur. Les réglages de l'écran de ban viennent du panel web.
- Réglages risqués : tosunac_doctor.
- Base de données : tosunac_db_check pour la connexion SQL locale, tosunac_db_status pour le DB bridge et l'état du panel.
- Confiance des exports pour vos propres scripts : tosunac_integration.
- AC en fonctionnement : /acping (tout le monde) ou /acstats (staff). /ts status affiche aussi l'état du verrouillage.
Ouvrir le menu admin#
Ouvrez le menu admin en jeu avec /ts, /ts menu, /tsmenu ou F7. La même commande ou touche le ferme. Le serveur vérifie MENU à chaque ouverture du menu.
- N'importe qui peut taper /tsmenu ; c'est le serveur qui décide. Les demandes sont limitées à une toutes les 1,5 s par joueur.
- Une demande /tsmenu ou F7 refusée est mise en cache 10 s et journalisée : une ligne de log en base, un enregistrement d'événement staff et un avertissement dans la console.
- Le joueur n'est sanctionné pour une demande refusée que si ts.NuiNeverBanUnauthorized = false (true par défaut). ts.punishType s'applique alors.
- Un /ts refusé affiche la carte d'absence de permission et n'est pas journalisé.
- Les membres du staff qui ont STAFF mais pas MENU (par exemple seulement des ACE txAdmin) peuvent appuyer sur F7, mais chaque demande est refusée et journalisée.
- Les interrupteurs ts.AdminMenu allowFreecam, allowDelete et allowEsp ne sont appliqués que par le client.
Outils d'administration en jeu#
La caméra libre, la suppression visée, le noclip et le mode spectateur ne fonctionnent que pour le staff. La caméra libre et le noclip nécessitent aussi une session de menu : le menu doit s'être ouvert avec succès au moins une fois depuis votre connexion.
Si votre accès au menu est retiré pendant que vous êtes en caméra libre ou en mode spectateur, la sortie de ce mode envoie un log de menu que le serveur traite comme non autorisé. Cela peut entraîner une tentative de sanction.
| Outil | Comment le lancer | Prérequis | Effet |
|---|---|---|---|
| /tsdelaimed (touche DELETE) | Visez un véhicule, un ped ou un objet et appuyez sur DELETE ou tapez /tsdelaimed. | Client STAFF et ts.AdminMenu.allowDelete différent de false. Les entités en réseau nécessitent aussi MENU sur le serveur ; les entités locales non. | Supprime l'entité non joueur touchée par un rayon de 60 m partant de la caméra. L'avis « Aimed entity deleted. » apparaît aussi quand le serveur refuse. |
| /tsfreecam | Tapez /tsfreecam. Tapez-la de nouveau, ou appuyez sur Retour arrière, pour quitter. | Client STAFF, ts.AdminMenu.allowFreecam différent de false et une session de menu. | Active ou désactive une caméra libre et ferme le menu. Avant votre première ouverture du menu, elle arme seulement un interrupteur caché, et la caméra démarre dès que vous ouvrez le menu. Ne désactive pas le noclip. |
| Noclip | Menu admin uniquement. Il n'existe ni commande ni touche pour le noclip. | Session de menu (MENU). | Vol sans collision, invincible, à la première personne. Les autres ne vous voient pas, sauf si ts.AdminMenu.noclipInvisible = false. |
| Spectateur | Menu admin, par exemple la touche w dans la vue Joueurs. | Session de menu (MENU). | Observer un joueur, avec un HUD « SPECTATE MODU ». Quittez avec /unspectate, /stopspectate, Retour arrière ou le contrôle 56. Les deux commandes ne font rien quand vous n'êtes pas en mode spectateur. |
Raccourcis et touches par défaut#
Tosun AC enregistre une seule touche réassignable (DELETE). La touche du menu est un ID de contrôle fixe défini dans la config. Les autres touches ne fonctionnent qu'à l'intérieur d'un outil.
- F7 est vérifiée toutes les 50 ms sur un état de touche qui dure une seule frame : un appui peut donc être manqué. Appuyez de nouveau si le menu ne s'ouvre pas.
- L'ID de contrôle de F7 est lu une seule fois au démarrage du script client. Un changement depuis le panel ne prend effet qu'après la reconnexion du joueur.
| Touche | Où | Action | Comment la changer |
|---|---|---|---|
| F7 (contrôle 168) | En jeu, surveillée uniquement sur les clients du staff | Ouvre ou ferme le menu admin. | Réglez ts.AdminMenu.openKeyControl sur un autre ID de contrôle FiveM. Les joueurs doivent se reconnecter pour recevoir le changement. Les joueurs ne peuvent pas la réassigner dans les paramètres de GTA. |
| DELETE (Suppr) | En jeu, enregistrée pour chaque joueur tant que le menu est activé ; n'agit que pour le staff | Lance /tsdelaimed. | Chaque joueur : Paramètres de GTA V > Assignation des touches > FiveM, entrée « Tosun: Delete aimed entity ». |
| Retour arrière, Échap ou clic droit (contrôle 177) | En mode spectateur ou en caméra libre | Quitte le mode spectateur ou la caméra libre. | Fixe. |
| Contrôle 56 (INPUT_DROP_WEAPON, F9 par défaut) | En mode spectateur ou en caméra libre | Quitte le mode spectateur ou la caméra libre. | Fixe. Les commentaires du code l'appellent F8 ; vérifiez en jeu. |
| INSERT (Inser, contrôle 121) | Tous les joueurs, staff compris | Désactivée par le ts.BlacklistKeys par défaut. | Modifiez ts.BlacklistKeys ou la liste du panel. |
ts.AdminMenu.openKeyControl = 166 -- F5Contrôles de la caméra libre#
Tous les autres contrôles sont désactivés tant que la caméra libre est active. L'entité visée (jusqu'à 120 m) est marquée et étiquetée, et le jeu charge la zone autour de la caméra. Le texte du HUD est en turc et affiche une distance par frame, pas des m/s.
| Touche | Action |
|---|---|
| Souris | Regarder autour |
| W, A, S, D (contrôles 32-35) | Se déplacer |
| Espace (22) | Monter |
| Ctrl gauche (36) | Descendre |
| Molette (241 / 242) | Vitesse de base augmentée ou réduite de 3 (plage 2-120, départ 25) |
| Maj gauche (21) | Vitesse x4 |
| Alt gauche (19) | Vitesse x0,25 |
| Clic gauche (24) | Supprimer l'entité marquée si ts.AdminMenu.allowDelete n'est pas false ; journalisé comme Freecam Delete |
| Retour arrière (177) ou contrôle 56 | Quitter la caméra libre |
Contrôles du noclip#
Activez et désactivez le noclip dans le menu admin. Tant qu'il est actif, l'attaque, la visée, la sélection d'arme, le corps à corps et X (contrôle 73) sont désactivés. Le HUD affiche la vitesse sous la forme « N m/sx speed » à cause d'une erreur de modèle de texte.
| Touche | Action |
|---|---|
| W, A, S, D (contrôles 32-35) | Se déplacer |
| Espace (22) | Monter |
| Ctrl gauche (36) | Descendre |
| Molette (241 / 242) | Vitesse de base augmentée ou réduite de 2 m/s (plage 1-60, départ 12) |
| Maj gauche (21) | Vitesse x3,5 |
| Alt gauche (19) | Vitesse x0,25 |
Raccourcis clavier du menu admin#
Ces touches fonctionnent quand le menu admin est ouvert. Elles sont ignorées pendant que vous tapez dans un champ, quand la visionneuse est ouverte ou quand Ctrl, Alt ou Meta est maintenu (sauf Ctrl/Cmd+K).
| Touche | Action |
|---|---|
| Échap | Fermer la couche du dessus (visionneuse, recherche, bouton armé, formulaire), puis le menu |
| Ctrl+K ou Cmd+K | Placer le focus sur la recherche de commandes |
| / | Placer le focus sur le filtre de la vue actuelle |
| 1 à 5 | Changer de vue : 1 joueurs, 2 détections, 3 bans, 4 logs, 5 outils |
| Flèche haut / Flèche bas | Vue Joueurs : déplacer la sélection |
| s | Vue Joueurs : capture d'écran |
| l | Vue Joueurs : vue en direct |
| w | Vue Joueurs : mode spectateur |
| t | Vue Joueurs : se téléporter vers le joueur |
| b | Vue Joueurs : amener le joueur |
| Flèche gauche / droite, Début, Fin | Barre d'onglets active : passer d'un onglet à l'autre (inversé pour les langues de droite à gauche) |
Touches bloquées et commandes sur liste noire#
Deux listes de la config agissent sur les touches et les commandes client des joueurs. Le panel peut remplacer les deux listes.
Les commandes de tosun-ac, les commandes intégrées (sans ressource propriétaire) et les commandes des ressources que le Resource Guard considère comme autorisées sont ignorées. Aucune commande n'est évaluée avant que la baseline du Resource Guard soit prête. L'intitulé de ts.BlacklistKeys dans la config parle d'une combinaison de touches de menu, mais chaque contrôle listé est bloqué individuellement.
| Réglage | Par défaut | Effet |
|---|---|---|
ts.BlacklistKeys | { 121 } (INSERT) | Chaque contrôle listé est désactivé environ toutes les 5 ms pour tous les joueurs, staff compris : les scripts liés à ce contrôle cessent donc de fonctionner. Réglez-le sur {} pour retirer le blocage. Jusqu'à 50 entrées depuis le panel. |
ts.BlacklistCommands | Noms de menus de triche plus des noms génériques comme tp, teleport, noclip, fly, exec et lua | Sur les clients non admin, les commandes client enregistrées sont comparées par nom (sans tenir compte de la casse) environ toutes les 10 s, après un délai de 35 s. Une correspondance est signalée avec la sanction command_spam (KICK par défaut). Jusqu'à 200 entrées depuis le panel. |
Pièges courants#
Liste courte des comportements qui surprennent le plus souvent les propriétaires de serveur.
- /ts reload casse l'AC en cours d'exécution jusqu'au redémarrage. Redémarrez plutôt tosun-ac.
- Les gels de /freeze, /acfreeze et /massfreeze durent peu pour les joueurs non admin, car la vérification anti-freeze de l'AC lui-même les dégèle en 10 s environ.
- Le verrouillage (via /ts_lockdown ou /emergency) empêche aussi le staff de se connecter et se réinitialise au redémarrage. Vérifiez une fois que les nouvelles connexions sont bien refusées sur votre serveur.
- Les mutes sont liés à l'ID serveur. Un joueur muté qui se reconnecte peut de nouveau écrire dans le chat.
- /clearinv ne vide rien sans ox_inventory.
- Les résultats de /capture ne sont pas stockés par l'AC ; consultez la cible d'envoi définie dans ts_screen_upload.
- /ts exempt raccourcit une /ts whitelist permanente à la durée de l'exemption.
- /acping est ouverte à tous les joueurs et affiche la version de l'AC.
- Les noms courts v9 (tphere, tpto, kickall, adminsync, warn) ne se comportent pas comme la forme ts_. Préférez la forme ts_.
Événements et exports internes#
Tosun AC enregistre aussi des événements réseau et des exports internes pour le menu admin, le pont avec le panel web et sa propre protection. Ce ne sont pas des commandes. Ils sont protégés par des vérifications de permission et de jeton, et les autres scripts ne doivent pas les appeler. Utilisez plutôt les exports et événements publics.