Documentação 9.6.24
Comandos
Todos os comandos, atalhos de teclado e ferramentas de admin no jogo do Tosun AC: quem pode usar, a sintaxe exata, o que fazem e onde o resultado aparece. A maioria dos resultados é impressa no console do servidor, não no chat do jogo.
Antes de começar#
O Tosun AC adiciona um comando principal, /ts, com vários subcomandos. Ele também adiciona comandos de moderação independentes, comandos de manutenção só para o console e alguns comandos de cliente para o menu de admin. Cada grupo tem sua própria verificação de permissão e seu próprio lugar onde o resultado aparece, então leia esta seção primeiro.
- A maioria dos subcomandos de /ts e todos os comandos de moderação ts_* escrevem o resultado no console do servidor. Um admin no jogo não vê nada no chat, exceto o cartão de ajuda do /ts e o cartão de sem permissão.
- As ferramentas de jogador (mute, sethp, giveweapon e as demais) e os comandos ac* respondem no chat quando você os usa no jogo.
- Muitas respostas são fixas em turco. O cartão de sem permissão sempre diz 'Bu komutu kullanmak için yetkiniz yok!'.
- Comandos independentes como /freeze ou /mute não são subcomandos de /ts. /ts freeze 5 só imprime 'Unknown command' no console.
- Nomes simples como revive, warn, players, freeze, mute, broadcast, setweather, settime, giveweapon, capture e emergency podem colidir com comandos de outros resources. Na dúvida, use a forma ts_.
- Se o menu de admin estiver desativado (ts.AdminMenu.enable ou ts.AdminMenu.enabled = false), os comandos de cliente tsmenu, unspectate, stopspectate, tsdelaimed e tsfreecam, o atalho DELETE e a tecla F7 nem chegam a ser registrados.
Níveis de permissão#
Cada comando verifica um dos níveis abaixo. O console do servidor passa em todas as verificações do lado do servidor, exceto nos dois comandos de teleporte que só funcionam no jogo. Comandos de cliente não podem ser executados pelo console. Esta página usa esses nomes de nível em todas as tabelas.
- tosun.admin (STAFF e MENU) e tosunac.admin (comandos de manutenção) são ACEs diferentes. Dê as duas aos admins completos.
- ACEs concedidas a builtin.everyone nunca contam como STAFF ou MENU.
- group.admin e os outros nomes de grupo são testados como objetos ACE. Conceda uma ACE explícita como tosun.admin em vez de depender só de fazer parte do grupo.
| Nível | Quem tem | Usado por |
|---|---|---|
| STAFF | Jogadores com uma das ACEs command.ts, command.ban, command.kick, tosun.admin, ts.admin, txadmin, tx.admin, txadmin.menu, txadmin.advanced, command.txadmin, uma entrada de ts.AdminBypassAces, ou os objetos ACE group.admin, group.superadmin, group.moderator, group.god. Enquanto ts.txAdminAuth estiver ligado (o padrão), command.resources e command.restart também contam. | Todos os subcomandos de /ts exceto menu, todos os comandos de moderação, as ferramentas de jogador e os comandos ac*. |
| STAFF (outras fontes) | Um identificador em Admins, ts.AdminMenu.allowedIds ou ts.AdminBypassIdentifiers; uma permissão de admin ativa no painel; o export addAdmin. | O mesmo que STAFF. Uma resposta 'não é admin' do banco de dados fica em cache por 30 s, então uma nova permissão no painel pode levar esse tempo. |
| MENU | O menu de admin está ativado e o jogador tem um destes: command.ts, command.ban, command.kick, tosun.admin ou ts.admin; group.admin, superadmin, moderator ou god; uma entrada em Admins; uma entrada em ts.AdminMenu.allowedIds; uma permissão no painel; o export addAdmin. | Abrir o menu de admin e as ferramentas do menu. ACEs exclusivas do txAdmin e ts.AdminBypassIdentifiers dão STAFF, mas não MENU. |
| Console | O console do servidor. | Pula todas as verificações. Comandos marcados como só console não fazem nada quando digitados no jogo. |
| tosunac.admin | Jogadores que receberam esta ACE. | Necessária no jogo para tosunac_setup, tosunac_backdoorscan e tosunac_eventscan; também aceita para /banscreentest. Não dá STAFF nem MENU. |
| tosunac.banscreen.test | Jogadores que receberam esta ACE. | Permite /banscreentest no jogo. |
| command.<name> | Jogadores que receberam a ACE de comando do FiveM. | O FiveM verifica isso primeiro nos comandos restritos. Os comandos restritos que podem rodar no jogo são ts_v9_help, ts_setlang, tosunac_setup, tosunac_backdoorscan e tosunac_eventscan. A verificação do AC roda depois. |
| Qualquer um | Todos os jogadores. | Só o /acping não tem nenhuma verificação. /ts, /tsmenu, /tsdelaimed e /tsfreecam podem ser digitados por qualquer um, mas verificam as permissões antes de agir. /unspectate e /stopspectate não fazem nada a menos que você esteja espectando. |
Conceder acesso no server.cfg#
O primeiro bloco abaixo é a parte de ACE do template de instalação típico. Ele dá ao principal group.admin acesso de staff, menu, manutenção e teste da tela de ban, e depois adiciona um jogador a esse grupo. Substitua <HEX> pela license do jogador. As duas linhas opcionais não estão no template; adicione-as só se a staff precisar rodar ts_setlang ou ts_v9_help no jogo.
Você também pode conceder acesso sem ACEs. Um identificador em admins/anticheat_admins.lua (Admins) ou em ts.AdminMenu.allowedIds dá STAFF e MENU. Um identificador em ts.AdminBypassIdentifiers dá só STAFF. Uma permissão de admin no painel web dá STAFF e MENU.
Os valores 'all' e 'staff' em ts.AdminMenu.allowedIds não são identificadores e não concedem nada.
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
# opcional, não está no template: os dois comandos auxiliares restritos
add_ace group.admin command.ts_setlang allow
add_ace group.admin command.ts_v9_help allowOnde os resultados aparecem#
Confira o console do servidor quando um comando parecer não fazer nada no jogo.
| Grupo de comandos | No jogo, quem executa vê | O console do servidor mostra |
|---|---|---|
| Subcomandos de /ts | Nada, exceto o cartão de ajuda do /ts e o cartão de sem permissão. /ts e /ts menu abrem o menu. | A linha de resultado de cada subcomando. |
| Comandos de moderação ts_* e seus nomes simples | Nada. O alvo pode receber uma linha no chat ou uma notificação. | A linha de resultado, quase sempre em turco. Um ts_<name> negado imprime '[ts_<name>] Yetersiz yetki.'; um nome simples negado não imprime nada. |
| Ferramentas de jogador (mute, unmute, sethp, setarmor, giveweapon, stripweapons, massfreeze, emergency, capture, clearinv, speedlimit) | Uma resposta no chat, quase sempre em turco. Uma negação é silenciosa. | '[AC] ...' quando executado pelo console. |
| acwarn, acfreeze, acunfreeze, acstats, acping | Uma resposta no chat. | acwarn imprime uma linha de log; acstats e acping imprimem '[AC] ...' quando executados pelo console; acfreeze e acunfreeze não imprimem nada. |
| Comandos de manutenção (tosunac_*, ac_cleanup, ts_setlang, ts_v9_help) | Nada. | Toda a saída, mesmo quando um jogador autorizado inicia o comando no jogo. |
| banscreentest | A prévia da tela de ban na tela do alvo. | Uma linha de uso quando a entrada é inválida. |
| Comandos de cliente (tsmenu, tsdelaimed, tsfreecam, unspectate, stopspectate) | O menu, uma notificação ou a câmera livre. | Nada. |
O comando /ts#
/ts é um único comando de servidor. A primeira palavra depois dele escolhe o subcomando e não diferencia maiúsculas de minúsculas. No console do servidor, digite a mesma linha sem a barra, por exemplo ts banlist.
- /ts ou /ts menu no jogo abre ou fecha o menu de admin e exige MENU. No console, imprime a lista de ajuda.
- Todos os outros subcomandos exigem STAFF no jogo. Sem isso, você recebe o cartão de sem permissão e nada acontece.
- Um subcomando desconhecido imprime 'Unknown command. Type ts help. For extra commands: ts_v9_help' apenas no console do servidor.
- Aliases: evtlist = faketriggerlist = evtliste; evtwhitelist = faketriggeroff = evtoff; evttrap = faketriggeron = evton; evtscan = faketriggerscan = evtara; sigpatterns = sigexc_help; quarantine = karantina; release = serbest; quarantines = karantinalar; em sigexc e sigskip, del = remove.
- A lista de ajuda do console (ts help) está incompleta. Ela omite quarantine, release, quarantines, os aliases e os segundos opcionais de ts whitelist. O cartão de ajuda /ts no jogo lista só /ts, ban, kick, unban e help. Esta página tem a lista completa.
/ts ban 12 aimbot (in game)
ts banlist 2 (server console)/ts: menu, ajuda e status#
Subcomandos gerais. A saída vai para o console do servidor, a menos que a tabela diga o contrário.
| Sintaxe | Quem | O que faz | Saída |
|---|---|---|---|
/ts or /ts menu | MENU | Abre o menu de admin, ou fecha se já estiver aberto. Sem MENU, você recebe o cartão de sem permissão e nada é registrado. | Menu no jogo; lista de ajuda no console |
/ts help | STAFF | No jogo: um cartão no chat listando /ts, ban, kick, unban e help. Console: a lista parcial de comandos. | Cartão no chat ou console |
/ts status | STAFF | Mostra o número de jogadores online e o estado e o motivo do lockdown. | [STATUS] Online: N | Lockdown: ON/OFF (reason) |
/ts find <name part> | STAFF | Lista os jogadores online cujo nome contém o texto. Não diferencia maiúsculas de minúsculas. | Linhas [FIND] #id name |
/ts reload | STAFF | Não use. Ele substitui toda a tabela ts do lado do servidor pelo arquivo de config bruto. Funções de runtime e configurações do painel se perdem até o restart; depois disso, o /ts no jogo gera erros e o menu não abre. Os clientes continuam com a config antiga. Reinicie o tosun-ac em vez disso. | [RELOAD] Config yenilendi. |
/ts: bans e kicks#
Bans manuais usam o mesmo caminho de punição das detecções. A saída vai para o console do servidor.
- IDs de ban têm o formato XXXX-XXXX, ou #NNNN quando ts.banIDFormat = 2.
- ts.punishType também controla os bans manuais. Se você definir LOG ou KICK, /ts ban só registra ou expulsa.
- Alvos da staff (enquanto ts.AdminBypassDetections estiver ligado), na whitelist ou na whitelist do painel são ignorados em silêncio, a menos que ts.Debug esteja ligado. A linha [BAN] é impressa mesmo assim.
| Sintaxe | Quem | O que faz | Saída |
|---|---|---|---|
/ts ban <playerId> [reason] | STAFF | Bane um jogador online. Motivo padrão 'Admin Ban'. Usa ts.punishType (padrão BAN) e BanDurations.default (padrão 0 = permanente). Um ban real grava a linha do ban, envia os webhooks Detections e Bans e avisa o painel web. No jogo, também envia o webhook Admin Ban para Webhooks.Commands. | [BAN] <name> (<id>) banned: <reason> |
/ts kick <playerId> [reason] | STAFF | Expulsa um jogador online com a mensagem de kick do Tosun AC no idioma do alvo. Recusa alvos da staff. O motivo fica vazio se você não informar. No jogo, também envia o webhook Admin Kick. | [KICK] <name> (<id>) kicked: <reason> |
/ts unban <banID> | STAFF | Apaga o ban, envia o webhook Ban Removed para Webhooks.AdminMenuLogs e dispara o evento de unban. A linha de sucesso é impressa mesmo se o ID não existir. | [UNBAN] <banID> unbanned. |
/ts baninfo <banID> | STAFF | Mostra o ID, o jogador, o motivo, a Steam e a license de um ban. | Linha com as informações do ban ou 'not found' |
/ts banlist [page] | STAFF | Lista 10 bans por página (ID, nome, motivo). A ordem segue o ID aleatório do ban, não a data. O cabeçalho é em turco. | [BANLIST] Sayfa N: |
/ts bancount | STAFF | Conta todas as linhas de ban. | [BANCOUNT] N ban records total. |
/ts offlineban <oldServerId> [reason] | STAFF | Bane permanentemente um jogador que saiu desde o último início do AC, usando o ID de servidor que ele tinha. Bane os identificadores capturados na desconexão: license, Steam, Discord, FiveM, IP e tokens de HWID. Sem verificação de staff, sem evento de ban e sem webhook. Os registros se perdem quando o resource reinicia. | [OFFLINEBAN] <name> banned offline: <reason> |
/ts: whitelist, isenção e quarentena#
Use estes para suspender as punições de um jogador por um tempo, ou para isolar um suspeito em vez de banir. Entradas de whitelist e de isenção ficam na memória, são indexadas pelo ID de servidor e terminam quando o jogador desconecta.
- O tempo de quarentena é 300 s por padrão e fica limitado entre 30 s e ts.quarantine.maxSeconds (padrão 1800). O motivo padrão é 'admin karantinasi'.
- A quarentena recusa jogadores isentos de punição: staff, jogadores na whitelist, na whitelist do painel ou com isenção temporária.
- Com ts.quarantine.enabled = false, o módulo de quarentena não é carregado e o comando imprime a linha de falha.
- Um jogador que já está em quarentena ainda gera uma linha de sucesso.
| Sintaxe | Quem | O que faz | Saída |
|---|---|---|---|
/ts whitelist <playerId> [seconds] | STAFF | Pula as punições do jogador; as detecções continuam rodando. Sem segundos, dura até a desconexão; 0 expira na hora. O ID não é validado. | [WHITELIST] <name> (<id>) whitelist'e eklendi. |
/ts unwhitelist <playerId> | STAFF | Remove a entrada da whitelist. | [WHITELIST] <name> (<id>) removed from whitelist. |
/ts tempwhitelist <playerId> [seconds] | STAFF | O mesmo que whitelist, com tempo fixo: padrão 300 s, mínimo 1 s. | [WHITELIST] <name> (<id>) whitelisted for Ns. |
/ts exempt <playerId> [seconds] [reason] | STAFF | Pausa as detecções do cliente e as punições por 1 a 300 s (padrão 60, motivo admin_exempt). Sobrescreve qualquer entrada de whitelist, então encurta um /ts whitelist permanente para esse tempo. | [EXEMPT] name (id) — N sn tespit muafiyeti. |
/ts quarantine <playerId> [seconds] [reason] | STAFF | Move o jogador para um routing bucket privado (padrão 9001-9500) com entidades bloqueadas e população desligada. Registra uma detecção QUARANTINE e avisa o jogador em turco, a menos que ts.quarantine.notifyPlayer = false. Libera automaticamente quando o tempo acaba. | [KARANTINA] ... izole edildi, ou Basarisiz |
/ts release <playerId> | STAFF | Encerra a quarentena antes do tempo e restaura o routing bucket original. | [KARANTINA] <id> serbest birakildi. |
/ts quarantines | STAFF | Lista os jogadores em quarentena com ID, nome, motivo e segundos restantes. | Lista com cabeçalhos em turco |
/ts: limpar entidades#
Estes subcomandos apagam entidades do servidor inteiro de uma vez. Não há etapa de confirmação. A saída vai para o console do servidor.
| Sintaxe | Quem | O que faz | Saída |
|---|---|---|---|
/ts clearvehicles | STAFF | Apaga todos os veículos, inclusive os ocupados e os de jogadores. | [CLEAR] N vehicles deleted. |
/ts clearpeds | STAFF | Apaga todos os peds que não são jogadores (NPCs). | [CLEAR] N NPCs deleted. |
/ts clearobjects | STAFF | Apaga todos os objetos, inclusive props de script em rede e props de mapping. | [CLEAR] N objects deleted. |
/ts clearall | STAFF | Apaga veículos, NPCs e objetos numa só chamada. | [CLEAR] V vehicles, P NPCs, O objects deleted. |
/ts: eventos honeypot#
Honeypots são eventos de trigger falsos que scripts reais nunca deveriam disparar, então um jogador que dispara um deles pode ser banido. A lista ativa fica na tabela ac_protected_events. A saída vai para o console do servidor.
| Sintaxe | Quem | O que faz | Saída |
|---|---|---|---|
/ts evtlist | STAFF | Lista os eventos honeypot ativos com o tipo, mais uma contagem. Aliases: faketriggerlist, evtliste. | Lista de eventos |
/ts evtwhitelist <eventName> | STAFF | Desativa um honeypot (active = 0) e recarrega a lista. Use quando um script real usa esse nome de evento e jogadores recebem bans falsos. A linha de sucesso é impressa mesmo se nenhuma linha corresponder. Aliases: faketriggeroff, evtoff. | Confirmação e uma dica para dar ensure no resource do AC (tosun-ac) por causa dos handlers que já estão registrados |
/ts evttrap <eventName> client|server | STAFF | Adiciona um honeypot do tipo informado, ou reativa um existente, e recarrega a lista. Aliases: faketriggeron, evton. | Confirmação e uma dica de ensure para o resource do AC, ou uma linha de uso |
/ts evtscan | STAFF | Somente leitura. Varre os arquivos .lua listados no manifest de cada resource iniciado em busca de nomes de eventos e informa os honeypots que scripts reais usam, cada um com uma linha ts evtwhitelist sugerida. Entradas com glob (*) e arquivos .js são ignorados. Aliases: faketriggerscan, evtara. | Lista de conflitos, ou 'no conflict' |
/ts: exceções do scanner de assinaturas#
Use estes quando o scanner de assinaturas marcar um script legítimo. O código da assinatura aparece na linha de log [Signature Scanner]. Exceções e skips ficam salvos no banco de dados. A saída vai para o console do servidor.
/ts sigexc ou /ts sigskip sem uma segunda palavra válida imprime uma dica de uso.
| Sintaxe | Quem | O que faz | Saída |
|---|---|---|---|
/ts sigexc add <resource> <signature_code> [file/path.lua] | STAFF | Salva uma exceção em ac_signature_exceptions. Sem arquivo, ela cobre todos os arquivos do resource. | [SIGEXC] Kaydedildi: res / code, ou Kaydedilemedi |
/ts sigexc list | STAFF | Mostra as 80 exceções mais recentes: id, resource, arquivo (ou todos os arquivos) e assinatura. | Lista de exceções |
/ts sigexc del <id> | STAFF | Apaga a exceção com esse id do sigexc list. Alias: remove. | Linha de apagado ou de falha |
/ts sigexc reload | STAFF | Limpa o cache de exceções. Ele é lido de novo do banco de dados na próxima varredura. | Linha de cache redefinido |
/ts sigpatterns | STAFF | Imprime uma amostra dos códigos de assinatura embutidos, como lua_loadstring, debug_sethook e trigger_internal. Alias: sigexc_help. | Lista de códigos |
/ts sigskip add <resource> | STAFF | Faz o scanner de assinaturas pular um resource com escrow ou criptografado (salvo em ac_signature_escrow_skip). | Linha de adicionado ou de falha |
/ts sigskip list | STAFF | Mostra até 80 resources pulados com o id. | Lista de skips |
/ts sigskip del <id|resource> | STAFF | Remove um skip pelo id da linha ou pelo nome do resource. Alias: remove. | Linha de removido ou de falha |
ts sigexc add my-job lua_loadstring client/main.lua
ts sigskip add my-escrow-packComandos de moderação (forma ts_ e nome simples)#
Estes 17 comandos não são subcomandos de /ts. Cada um existe como ts_<name> e como o <name> simples, por exemplo /ts_freeze 7 ou /freeze 7. Os dois exigem STAFF no jogo, e o console pode executá-los. Todos os resultados vão para o console do servidor.
- Um ts_<name> negado imprime '[ts_<name>] Yetersiz yetki.' no console. Um nome simples negado não faz nada.
- O nome simples executa de novo o ts_<name> como comando de servidor, depois de remover ponto e vírgula, aspas duplas e quebras de linha. Esse comando aninhado provavelmente roda como console. Por isso /tphere e /tpto falham, /adminsync exige um ID, /kickall também expulsa você e /warn registra quem executou como console. Use a forma ts_ para esses e confirme uma vez no jogo.
- O ts_v9_help lista estes comandos como 'ts freeze <id>' e assim por diante. Essa sintaxe não funciona; digite ts_freeze ou freeze.
| Sintaxe | Quem | O que faz | Saída no console |
|---|---|---|---|
/ts_freeze <id> | /freeze <id> | Console ou STAFF | Congela o jogador e envia um aviso no chat dele. A verificação anti-freeze do próprio AC descongela jogadores que não são admin em cerca de 10 s, enquanto o alvo pode continuar invencível por até 60 s. | [freeze] <name> donduruldu. |
/ts_unfreeze <id> | /unfreeze <id> | Console ou STAFF | Descongela o jogador e remove a invencibilidade. | [unfreeze] <name> serbest. |
/ts_slay <id> | /slay <id> | Console ou STAFF | Define a vida do jogador como 0. | [slay] <name> öldürüldü. |
/ts_revive <id> | /revive <id> | Console ou STAFF | Dispara o primeiro evento de revive de ambulância compatível (wasabi, qb, esx, cd, ars e outros), ressuscita o jogador se ele ainda estiver morto e restaura vida e colete. /revive costuma colidir com scripts de ambulância. | [revive] <name> canlandırıldı. |
/ts_healall | /healall | Console ou STAFF | Cura todos os jogadores (vida máxima, colete 100) e anuncia no chat em turco. | [healall] N oyuncu iyileştirildi. |
/ts_warn <id> [reason] | /warn <id> [reason] | Console ou STAFF | Envia um aviso para o chat do jogador e salva em ac_player_warnings. Motivo padrão 'No reason specified'. | [warn] <name> → "reason" |
/ts_warnings <id> | /warnings <id> | Console ou STAFF | Lista os últimos 10 avisos de um jogador online pela license, incluindo os avisos de /acwarn. | Lista de avisos |
/ts_broadcast <message> | /broadcast <message> | Console ou STAFF | Envia a mensagem para todos os jogadores sob o título '📢 SUNUCU DUYURUSU'. | [broadcast] Tüm oyunculara: msg |
/ts_players | /players | Console ou STAFF | Lista os jogadores online com ID, nome, ping e uma marca se estiverem congelados por estes comandos. | Lista de jogadores |
/ts_lockdown on|off [reason] | /lockdown ... | Console ou STAFF | on, enable ou 1 recusa toda nova conexão com '🔒 LOCKDOWN: <reason>', inclusive da staff (motivo padrão 'Bakım'). off, disable ou 0 encerra. Sem argumento, mostra o estado. Jogadores já online continuam. Ele é zerado no restart. | [lockdown] AKTİF / KAPALI, ou o estado |
/ts_tphere <id> | STAFF, só no jogo | Teleporta o jogador até você e dá a ele uma isenção de teleporte de 15 s. O /tphere simples falha. | [tphere] <name> yanına çekildi. |
/ts_tpto <id> | STAFF, só no jogo | Teleporta você até o jogador, com uma isenção de teleporte de 15 s para você. O /tpto simples falha. | [tpto] <name> konumuna gidildi. |
/ts_setweather [TYPE] | /setweather [TYPE] | Console ou STAFF | Define o clima em todos os clientes (padrão CLEAR, transição de 5 s). Só no lado do cliente, então um script de sincronização de clima pode sobrescrever. | [weather] TYPE |
/ts_settime [hour] [minute] | /settime ... | Console ou STAFF | Define o relógio em todos os clientes (padrão 12:00). Só no lado do cliente. Use números inteiros: uma fração causa um erro de Lua. | [time] HH:MM |
/ts_kickall [reason] | /kickall [reason] | Console ou STAFF | Expulsa todos os jogadores exceto quem executou, inclusive a staff. Motivo padrão 'Yetkili: kick all'. Pelo nome simples, é bem provável que você também seja expulso. | [kickall] N oyuncu atıldı. |
/ts_modping | /modping | Console ou STAFF | Atualiza o timestamp por trás do indicador de status do AC no painel web. A linha é impressa mesmo se a gravação no banco de dados falhar. | Linha de confirmação (em turco) |
/ts_adminsync [id] | /adminsync <id> | Console ou STAFF | Reenvia o status de staff e a isenção de staff para um membro da staff cujo cliente não o reconhece como staff. ts_adminsync sem ID tem você como alvo. | [adminsync] <name> için admin bypass yenilendi. |
Ferramentas de jogador (mute, sethp, giveweapon ...)#
Estes 11 comandos existem como ts_<name> e como <name>, e as duas formas veem você como quem executou, então os nomes simples funcionam no jogo. Eles exigem STAFF; o console pode executá-los. Uma negação é silenciosa. A resposta vai para o seu chat, ou para o console como '[AC] ...'. As respostas são quase sempre em turco.
| Sintaxe | Quem | O que faz | Resposta |
|---|---|---|---|
/mute <id> [seconds] [reason] (also /ts_mute) | Console ou STAFF | Bloqueia o chat do jogador pelo tempo informado (padrão 300 s; 0 ou menos = permanente). Só é bloqueado o chat que passa pelo evento chatMessage do servidor. O mute fica ligado ao ID de servidor, então reconectar acaba com ele. Sem segundos, a primeira palavra do motivo se perde. | <name> susturuldu (Ns). |
/unmute <id> (also /ts_unmute) | Console ou STAFF | Remove o mute e avisa o jogador. Informa sucesso para qualquer ID numérico. | Susma kaldırıldı. |
/sethp <id> <0-200> (also /ts_sethp) | Console ou STAFF | Define a vida do jogador. 0 mata. | <name> HP N olarak ayarlandı. |
/setarmor <id> <0-100> (also /ts_setarmor) | Console ou STAFF | Define o colete do jogador. | <name> zırh N olarak ayarlandı. |
/giveweapon <id> <WEAPON_NAME> [ammo] (also /ts_giveweapon) | Console ou STAFF | Dá uma arma (padrão 60 de munição) pelo ox_inventory, depois qb/qbox, depois ESX, senão pelo native. Vale o primeiro caminho que não gerar erro, mesmo que não tenha dado nada. A resposta é impressa de qualquer forma. | <name> -> WEAPON (xN) |
/stripweapons <id> (also /ts_stripweapons) | Console ou STAFF | Remove todas as armas do ped. Os itens do inventário ficam. Um ID que não está online causa um erro de Lua. | <name> silahları alındı. |
/massfreeze [on|off] (also /ts_massfreeze) | Console ou STAFF | Congela (padrão on) ou descongela todos os jogadores, inclusive a staff, e anuncia. Quem não é admin logo é descongelado pela verificação anti-freeze; a staff fica congelada até off ou 60 s. | N oyuncu işlendi. |
/emergency [reason] (also /ts_emergency) | Console ou STAFF | Liga o lockdown e expulsa todos os jogadores que não são staff com 'EMERGENCY: <reason>'. Motivo padrão 'Acil bakım'. Encerre o lockdown com /ts_lockdown off. | Acil durum: N oyuncu kicklendi, lockdown aktif. |
/capture <id> (also /ts_capture) | Console ou STAFF | Se o screenshot-basic estiver iniciado, pede ao cliente do jogador que envie uma captura de tela para a URL da convar ts_screen_upload (padrão http://localhost/api/screen_upload.php). O AC não guarda o resultado; a imagem existe só no destino do upload. | Ekran görüntüsü istendi. |
/clearinv <id> (also /ts_clearinv) | Console ou STAFF | Limpa o inventário com o ox_inventory. Sem ox_inventory nada é limpo, mas o jogador ainda vê um aviso de 'limpo'. Um ID que não está online causa um erro de Lua. | <name> envanteri temizlendi. |
/speedlimit [kmh] (also /ts_speedlimit) | Console ou STAFF | Limita a velocidade dos veículos dos jogadores online agora (0 = remover). Jogadores que entram depois não são limitados, e remover o limite não restaura um veículo que já foi limitado. | Sunucu hız limiti: N km/h, ou Hız limiti kaldırıldı. |
Comandos rápidos (acwarn, acfreeze, acstats ...)#
Cinco comandos curtos que respondem no chat. Todos, exceto /acping, exigem STAFF ou o console, e uma negação é silenciosa.
| Sintaxe | Quem | O que faz | Resposta |
|---|---|---|---|
/acwarn <id> <reason> | Console ou STAFF | Salva um aviso em ac_player_warnings, envia para o chat do jogador e confirma para você. O motivo é obrigatório. Erros de uso aparecem só no jogo. | Chat para você; linha no console '[AC] admin -> name WARN: reason' |
/acfreeze <id> | Console ou STAFF | Congela o jogador. A resposta diz 60 s, mas a verificação anti-freeze do AC pode liberar quem não é admin em cerca de 10 s. | Chat para você, só no jogo |
/acunfreeze <id> | Console ou STAFF | Descongela o jogador. | Chat para você, só no jogo |
/acstats | Console ou STAFF | Mostra 'Detections: N | Online: N' e um indicador de status da proteção. As detecções são contadas desde que o AC iniciou. | Chat, ou '[AC] ...' no console |
/acping | Qualquer um | Responde com a versão do AC e o número de jogadores online. Qualquer jogador pode executar. | Chat, ou '[AC] AC up — v<version>' no console |
Comandos de manutenção e diagnóstico#
Execute estes pelo console do servidor. Alguns também podem rodar no jogo com as ACEs indicadas. A saída sempre vai para o console do servidor, exceto no banscreentest.
Negações de tosunac_setup, tosunac_backdoorscan, tosunac_eventscan e banscreentest são silenciosas. Um segundo tosunac_setup enquanto outro está rodando é recusado.
Comandos restritos exigem tanto a ACE de comando do FiveM quanto a verificação do AC. Por exemplo, um jogador só com tosunac.admin não consegue rodar tosunac_setup.
| Sintaxe | Quem | O que faz | Saída |
|---|---|---|---|
tosunac_setup | Console, ou no jogo a ACE command.tosunac_setup mais tosunac.admin | Baseline de instalação feita uma vez: detecta o framework, roda a varredura de backdoors e a varredura completa de assinaturas, aprova na baseline do Resource Guard só os resources limpos e sem alterações, e depois cataloga os eventos sem confiar neles. Aborta sem aprovar nada se uma varredura estiver indisponível ou incompleta. | Linhas [Kurulum] e um resumo Framework / approved / skipped |
tosunac_doctor | Só console | Relatório de risco, somente leitura, da config aplicada (depois da sincronização com o painel), por exemplo Debug ligado, configurações de BAN arriscadas e bans padrão permanentes. Também roda uma vez 90 s depois do início e grava uma linha de log no banco se houver riscos. O texto é em turco. | Lista de riscos, ou uma linha de 'nenhuma configuração arriscada' |
tosunac_backdoorscan | Console, ou no jogo a ACE command.tosunac_backdoorscan mais tosunac.admin | Varredura profunda de todos os resources em busca de padrões de backdoor, RCE, escalada de privilégio e exfiltração. Os achados vão para o painel. Com ts.BackdoorGuard.autoQuarantine = true, resources com um achado crítico são parados. Não é registrado quando o Backdoor Guard está desativado. | Linha de início, depois um resumo Scan done |
tosunac_eventscan | Console, ou no jogo a ACE command.tosunac_eventscan mais tosunac.admin | Varredura estática de todos os resources em busca de nomes de eventos, enviada para a Trigger List do painel. Os eventos só são protegidos se ts.EventScanner.autoProtect = true (padrão false). Não é registrado quando o scanner de eventos está desativado. Não imprime nada se já houver uma varredura em andamento. | Linha de início, depois Trigger scan done |
tosunac_db_status | Só console | Mostra o estado do DB bridge: ativado, license configurada ou ausente, estado do oxmysql, framework, estado das requisições e o último estado do painel. | Linhas [Tosun DB Bridge] |
tosunac_db_check | Só console | Executa SELECT 1 pelo oxmysql. Não verifica a license, a chave do painel nem as tabelas do framework. | Linha de sucesso ou de falha |
ac_cleanup | Só console | Executa a limpeza do banco de dados agora: logs antigos, detecções, linhas de auditoria, filas, reputação de IP, tentativas de login e sessões expiradas (retenção definida por ts.v12.keep*). A contagem impressa é calculada antes de as exclusões terminarem e muitas vezes é 0. Não é registrado quando ts.v12.enableAutoCleanup = false. | [v12 cleanup] Manual run tamam: ... |
tosunac_integration | Só console | Para desenvolvedores de scripts: mostra se a whitelist de exports está sendo aplicada, os resources confiáveis e de onde cada um vem, o número de eventos de isenção interceptados e as últimas chamadas de export rejeitadas. | Texto no console |
ts_setlang <playerId> <lang> | Console, ou no jogo a ACE command.ts_setlang mais STAFF | Define o idioma do AC para um jogador (ar, de, en, es, fr, pt, ru, tr, zh) e sincroniza com o cliente dele. Só o idioma é validado; um ID que não está online é informado como OK. | Player N language set to xx |
ts_v9_help | Console, ou no jogo a ACE command.ts_v9_help | Imprime a lista de comandos de moderação com uma sintaxe 'ts freeze' errada. Omite as ferramentas de jogador, os comandos ac* e o ts_setlang. | Caixa no console |
banscreentest <playerId> | /banscreentest | Console com um ID; no jogo, a ACE tosunac.banscreen.test ou tosunac.admin | Mostra uma prévia da tela de ban configurada (ID do ban TEST-0000, motivo Preview) no alvo, ou em você mesmo no jogo. Ninguém é expulso, isolado ou registrado. Não verifica se a tela de ban está ativada. | Tela de ban no alvo; linha de uso quando a entrada é inválida |
Rodar o tosunac_setup com segurança#
O tosunac_setup confia no que está instalado agora. Rode-o só em um servidor que você sabe que está limpo.
- Inicie o servidor apenas com os resources em que você confia.
- Confirme que o Backdoor Guard está ativado. Se estiver desativado, o setup aborta sem aprovar nada.
- Digite tosunac_setup no console do servidor. A varredura de backdoors pode levar até 120 s.
- Leia o resumo. Cada resource pulado é registrado pelo nome; revise cada um no painel web.
- Rode tosunac_doctor para verificar as configurações aplicadas em busca de riscos de ban falso e de segurança.
Testar e pré-visualizar#
Estes comandos permitem verificar o AC sem punir ninguém.
- Tela de ban: /banscreentest no jogo mostra a tela na sua própria tela; banscreentest <id> no console mostra no jogador indicado. As configurações da tela de ban vêm do painel web.
- Configurações arriscadas: tosunac_doctor.
- Banco de dados: tosunac_db_check para a conexão SQL local, tosunac_db_status para o DB bridge e o estado do painel.
- Confiança de exports para os seus próprios scripts: tosunac_integration.
- AC rodando: /acping (qualquer um) ou /acstats (staff). /ts status também mostra o estado do lockdown.
Abrir o menu de admin#
Abra o menu de admin no jogo com /ts, /ts menu, /tsmenu ou F7. O mesmo comando ou tecla fecha o menu. O servidor verifica MENU toda vez que o menu abre.
- /tsmenu pode ser digitado por qualquer um; quem decide é o servidor. As requisições são limitadas a uma a cada 1,5 s por jogador.
- Uma requisição negada de /tsmenu ou F7 fica em cache por 10 s e é registrada: uma linha de log no banco, um registro de evento de staff e um aviso no console.
- O jogador só é punido por uma requisição negada se ts.NuiNeverBanUnauthorized = false (padrão true). Nesse caso, vale o ts.punishType.
- Um /ts negado mostra o cartão de sem permissão e não é registrado.
- Membros da staff que têm STAFF mas não MENU (por exemplo, só ACEs do txAdmin) podem apertar F7, mas cada requisição é negada e registrada.
- As chaves allowFreecam, allowDelete e allowEsp de ts.AdminMenu são aplicadas só pelo cliente.
Ferramentas de admin no jogo#
Câmera livre, apagar o que está na mira, noclip e espectar funcionam só para a staff. A câmera livre e o noclip também exigem uma sessão de menu: o menu precisa ter aberto com sucesso pelo menos uma vez desde que você entrou.
Se o seu acesso ao menu for removido enquanto você estiver na câmera livre ou espectando, sair desse modo envia um log de menu que o servidor trata como não autorizado. Isso pode levar a uma tentativa de punição.
| Ferramenta | Como iniciar | Requisitos | O que faz |
|---|---|---|---|
| /tsdelaimed (tecla DELETE) | Mire em um veículo, ped ou objeto e aperte DELETE ou digite /tsdelaimed. | Cliente STAFF e ts.AdminMenu.allowDelete diferente de false. Entidades em rede também exigem MENU no servidor; as locais não. | Apaga a entidade que não é jogador atingida por um raio de 60 m a partir da câmera. O aviso 'Aimed entity deleted.' aparece mesmo quando o servidor recusa. |
| /tsfreecam | Digite /tsfreecam. Digite de novo, ou aperte Backspace, para sair. | Cliente STAFF, ts.AdminMenu.allowFreecam diferente de false e uma sessão de menu. | Liga ou desliga uma câmera livre e fecha o menu. Antes da primeira abertura do menu, ele só arma uma chave oculta, e a câmera começa no momento em que você abre o menu. Não desliga o noclip. |
| Noclip | Só pelo menu de admin. Não existe comando nem tecla de noclip. | Sessão de menu (MENU). | Voar sem colisão, invencível, em primeira pessoa. Os outros não veem você, a menos que ts.AdminMenu.noclipInvisible = false. |
| Espectar | Menu de admin, por exemplo a tecla w na aba Jogadores. | Sessão de menu (MENU). | Assistir a um jogador, com um HUD 'SPECTATE MODU'. Saia com /unspectate, /stopspectate, Backspace ou o controle 56. Os dois comandos não fazem nada quando você não está espectando. |
Atalhos de teclado e teclas padrão#
O Tosun AC registra uma tecla que pode ser reconfigurada (DELETE). A tecla do menu é um ID de controle fixo definido na config. As outras teclas só funcionam dentro de uma ferramenta.
- O F7 é verificado a cada 50 ms contra um estado de tecla que dura um frame, então um toque pode passar despercebido. Aperte de novo se o menu não abrir.
- O ID de controle do F7 é lido uma vez quando o script do cliente inicia. Uma mudança feita pelo painel só vale depois que o jogador reconecta.
| Tecla | Onde | Ação | Como mudar |
|---|---|---|---|
| F7 (controle 168) | No jogo, verificada só nos clientes da staff | Abre ou fecha o menu de admin. | Defina ts.AdminMenu.openKeyControl com outro ID de controle do FiveM. Os jogadores precisam reconectar para receber a mudança. Os jogadores não podem reconfigurá-la nas configurações do GTA. |
| DELETE | No jogo, registrada para todos os jogadores enquanto o menu está ativado; só age para a staff | Executa /tsdelaimed. | Cada jogador: Configurações do GTA V > Atalhos de teclado > FiveM, entrada 'Tosun: Delete aimed entity'. |
| Backspace, Esc ou botão direito do mouse (controle 177) | Enquanto espectando ou na câmera livre | Encerra o modo espectador ou a câmera livre. | Fixa. |
| Controle 56 (INPUT_DROP_WEAPON, F9 por padrão) | Enquanto espectando ou na câmera livre | Encerra o modo espectador ou a câmera livre. | Fixa. Os comentários do código chamam de F8; confira no jogo. |
| INSERT (controle 121) | Todos os jogadores, inclusive a staff | Desativada pelo ts.BlacklistKeys padrão. | Edite ts.BlacklistKeys ou a lista do painel. |
ts.AdminMenu.openKeyControl = 166 -- F5Controles da câmera livre#
Todos os outros controles ficam desativados enquanto a câmera livre está ligada. A entidade na sua mira (até 120 m) é marcada e rotulada, e o jogo carrega a área em volta da câmera. O texto do HUD é em turco e mostra a distância por frame, não m/s.
| Tecla | Ação |
|---|---|
| Mouse | Olhar em volta |
| W, A, S, D (controles 32-35) | Mover |
| Espaço (22) | Subir |
| Ctrl esquerdo (36) | Descer |
| Roda do mouse (241 / 242) | Aumenta ou diminui a velocidade base em 3 (faixa 2-120, início 25) |
| Shift esquerdo (21) | Velocidade x4 |
| Alt esquerdo (19) | Velocidade x0,25 |
| Botão esquerdo do mouse (24) | Apaga a entidade marcada se ts.AdminMenu.allowDelete não for false; registrado como Freecam Delete |
| Backspace (177) ou controle 56 | Sair da câmera livre |
Controles do noclip#
Ligue e desligue o noclip no menu de admin. Enquanto ele está ligado, atacar, mirar, selecionar arma, corpo a corpo e X (controle 73) ficam desativados. O HUD mostra a velocidade como 'N m/sx speed' por causa de um erro no template do texto.
| Tecla | Ação |
|---|---|
| W, A, S, D (controles 32-35) | Mover |
| Espaço (22) | Subir |
| Ctrl esquerdo (36) | Descer |
| Roda do mouse (241 / 242) | Aumenta ou diminui a velocidade base em 2 m/s (faixa 1-60, início 12) |
| Shift esquerdo (21) | Velocidade x3,5 |
| Alt esquerdo (19) | Velocidade x0,25 |
Atalhos de teclado do menu de admin#
Estas teclas funcionam enquanto o menu de admin está aberto. Elas são ignoradas enquanto você digita em um campo, enquanto o visualizador está aberto ou enquanto Ctrl, Alt ou Meta está pressionado (exceto Ctrl/Cmd+K).
| Tecla | Ação |
|---|---|
| Esc | Fecha a camada de cima (visualizador, busca, botão armado, formulário) e depois o menu |
| Ctrl+K ou Cmd+K | Foca a busca de comandos |
| / | Foca o filtro da aba atual |
| 1 a 5 | Troca de aba: 1 jogadores, 2 detecções, 3 bans, 4 logs, 5 ferramentas |
| Seta para cima / Seta para baixo | Aba Jogadores: move a seleção |
| s | Aba Jogadores: captura de tela |
| l | Aba Jogadores: visualização ao vivo |
| w | Aba Jogadores: espectar |
| t | Aba Jogadores: teleportar até o jogador |
| b | Aba Jogadores: trazer o jogador |
| Seta para a esquerda / direita, Home, End | Com a barra de abas em foco: navega entre as abas (espelhado para idiomas da direita para a esquerda) |
Teclas bloqueadas e comandos na blacklist#
Duas listas da config afetam as teclas e os comandos de cliente dos jogadores. O painel pode substituir as duas listas.
Comandos do tosun-ac, comandos embutidos (sem resource dono) e comandos de resources que o Resource Guard trata como autorizados são ignorados. Nenhum comando é avaliado antes de a baseline do Resource Guard estar pronta. O cabeçalho de ts.BlacklistKeys na config chama isso de combinação de teclas de menu, mas cada controle da lista é bloqueado individualmente.
| Configuração | Padrão | Efeito |
|---|---|---|
ts.BlacklistKeys | { 121 } (INSERT) | Cada controle da lista é desativado a cada 5 ms, aproximadamente, para todos os jogadores, inclusive a staff, então scripts ligados a ele param de funcionar. Defina como {} para remover o bloqueio. Até 50 entradas pelo painel. |
ts.BlacklistCommands | Nomes de menus de cheat mais nomes genéricos como tp, teleport, noclip, fly, exec e lua | Nos clientes que não são admin, os comandos de cliente registrados são comparados pelo nome (sem diferenciar maiúsculas de minúsculas) a cada 10 s, aproximadamente, depois de um atraso de 35 s. Uma correspondência é reportada com a punição command_spam (padrão KICK). Até 200 entradas pelo painel. |
Armadilhas comuns#
Lista curta dos comportamentos que mais surpreendem os donos de servidor.
- /ts reload quebra o AC em execução até o restart. Reinicie o tosun-ac em vez disso.
- Os congelamentos feitos por /freeze, /acfreeze e /massfreeze duram pouco para jogadores que não são admin, porque a verificação anti-freeze do próprio AC os descongela em cerca de 10 s.
- O lockdown (de /ts_lockdown ou /emergency) também impede a entrada da staff e é zerado no restart. Teste uma vez se novas entradas são realmente recusadas no seu servidor.
- Os mutes ficam ligados ao ID de servidor. Um jogador mutado que reconecta pode voltar a falar no chat.
- /clearinv não limpa nada sem o ox_inventory.
- Os resultados do /capture não são guardados pelo AC; confira o destino de upload definido em ts_screen_upload.
- /ts exempt encurta um /ts whitelist permanente para o tempo da isenção.
- /acping está aberto a todos os jogadores e mostra a versão do AC.
- Os nomes simples da v9 (tphere, tpto, kickall, adminsync, warn) se comportam de forma diferente da forma ts_. Prefira a forma ts_.
Eventos e exports internos#
O Tosun AC também registra eventos de rede e exports internos para o menu de admin, a ponte com o painel web e a sua própria proteção. Eles não são comandos. São protegidos por verificações de permissão e de token, e outros scripts não devem chamá-los. Use os exports e eventos públicos.