Documentação 9.6.24
Primeiros passos
Instale a versão 9.6.24 e ative apenas o necessário. O serviço pago é ativado após a confirmação do pagamento.
Configuração#
Cadastre-se com Sign up, confirme o e-mail e escolha um plano pago. Depois, adicione um servidor e baixe seu pacote com permissão de gerenciamento.
Prepare a conta e o serviço#
Confirme o e-mail e verifique em Faturação o plano pago, período e limites de servidores e sites. Voltar do fornecedor ou enviar um comprovativo não confirma a ativação.
Use uma conta autorizada a gerir servidores. Atribua permissões adequadas, sem partilhar uma palavra-passe administrativa. Antes de instalar, copie recursos, definições editáveis e base de dados do jogo.
Ligue o servidor correto#
O pacote e a licença pertencem ao registo selecionado. Não misture ficheiros e chaves de servidores diferentes.
- Confirme o nome e descarregue o pacote correspondente.
- Siga a ordem de instalação. Guarde a licença apenas em server.cfg do servidor com set, nunca no cliente ou em ficheiros partilhados.
- Inicie durante manutenção planeada; examine o primeiro erro de consola e a ligação correta no painel.
- A ponte de dados vem ligada por padrão; além da licença, não precisa de linhas no server.cfg. Se não a quiser, desligue-a com “Disable connection” no cartão Tosun Connect do servidor; teste primeiro uma leitura pequena.
Verifique resultados no jogo#
Teste seleção de personagem, aparecimento, reanimação, garagens, equipamento policial e teletransportes da equipa antes de aumentar punições. Compare deteções com o contexto e altere uma definição de cada vez.
Ligação AC, consulta da ponte, preparação do site e HTTPS têm resultados distintos. Verifique cada serviço necessário. Perante pagamento incerto, consulte a fatura antes de repetir.
Descarregar novamente não revoga uma licença exposta. Coordene substituição e paragem de cópias antigas. Para suporte, reúna versão, ID de servidor/site, hora e erro sem segredos.
Prepare um pequeno plano de aceitação#
Antes de convidar toda a comunidade, escreva o que a primeira sessão deve demonstrar. Inclua um jogador normal, uma conta da equipa, uma ligação nova e uma reconexão. Utilize o framework real e os recursos habituais: uma consola silenciosa não demonstra que hospital ou garagem são compatíveis.
Para cada cenário, registe a ação, o resultado esperado e o observado. A personagem deve carregar, o equipamento normal continuar utilizável e uma ação permitida do pessoal concluir-se. Se surgir uma deteção, guarde a hora com o contexto de jogo e investigue antes de ampliar as medidas.
Escolha um período com as atividades importantes do servidor. Após alterar a definição relevante, repita o cenário afetado mantendo as outras definições iguais. As verificações aprovadas dão à equipa um registo concreto de aceitação, sem garantir compatibilidade com todos os recursos ou atualizações futuras.
Separe a configuração necessária dos serviços opcionais#
Crie um pequeno mapa de dependências da instalação. A conta paga, o pacote do servidor escolhido, a licença do lado do servidor e o arranque correto do recurso formam o percurso inicial. A ligação de dados do painel (Tosun Connect) já vem ativa por padrão e não precisa de linhas extra no server.cfg; basta confirmá-la com uma leitura pequena. Pode desligá-la no cartão Tosun Connect do servidor. Notificações Discord, launcher e website alugada acrescentam processos próprios. Ative-os depois de compreender a ligação principal.
Se o anticheat está ligado mas a website continua em preparação, prossiga com as verificações de jogo e acompanhe a website separadamente. Se uma leitura da ponte falha, examine suporte do framework e permissões da ponte. Substituir repetidamente uma licença funcional não corrige um esquema incompatível.
Adicione uma integração opcional de cada vez e anote responsável e método de verificação. Assim encontra a primeira etapa falhada e regressa a uma instalação funcional sem descartar trabalho concluído. Liste opções deliberadamente desligadas para outro administrador não as confundir com avarias.
Transmita um registo operacional reproduzível#
Antes de passar a administração, prepare um registo curto com ID do servidor, versão, framework, ordem de arranque e localização das definições editáveis. Ligue a documentação pertinente e indique integrações opcionais verificadas. Guarde licenças e credenciais privadas no armazenamento seguro, fora deste registo.
Inclua janela de manutenção, definições alteradas e valores anteriores funcionais. Identifique responsáveis por faturação, credenciais e relatos de jogadores. Descreva como restaurar os seus ficheiros de recursos e configuração guardados e quais observações verificar logo depois.
Se recursos, framework ou alojamento mudarem, reutilize os mesmos cenários de aceitação. Compare resultados novos com o registo anterior em vez de confiar na memória. Isto facilita avaliar atualizações e oferece ao suporte um histórico útil sem partilhar arquivos de dados de jogadores alheios ao problema.
Relacionar quatro identidades no registro de instalação#
Anote ID do servidor no painel, Build ID do histórico, versão de fxmanifest.lua e diretório previsto. Identificam registro, pacote distribuído, software e instalação da máquina. Um ZIP novo pode estar na área de trabalho enquanto o servidor inicia a pasta antiga. Download concluído não confirma atualização em execução. Deixe a licença fora desse registro.
Após extrair, siga os diretórios até fxmanifest.lua e identifique a raiz real. Relacione saída inicial e horário do teste. Se nomes diferirem entre painel e máquina, compare identidades, não semelhanças. Para várias máquinas, indique a cópia ativa. Essas quatro referências e o tempo permitem ao suporte distinguir pacote errado, servidor errado e arquivos obsoletos sem exigir segredos ou arquivo alheio ao problema.
Encaminhar cada sintoma ao tópico adequado#
Descreva o resultado esperado em uma frase. Login sem download exige verificar Faturamento e direito do servidor; acesso à conta não prova permissão de download. Se o resource não inicia, consulte arquivos e dependências em Instalação. Se inicia e rejeita licença, examine licença e vínculo Build ID. Jogo normal com leituras falhando pede MySQL, estado do trabalho e framework.
Mantenha o alcance do sintoma. Saldo divergente exige identidade e tipo de leitura, não alteração de toda proteção. Use Configuração e desempenho para travamentos medidos e Exports e integração para ações legítimas rejeitadas. Não repita pagamento ou escrita incerta como diagnóstico. Aplique o passo pertinente e confira a mesma observação para localizar a primeira falha sem perder trabalho confirmado.
Tosun AC 9.6.12#
O manifesto de arranque do Render foi corrigido. Um único INSTALL.sql repara colunas antigas ausentes. A ponte usa a licença resolvida no servidor. As permissões são atualizadas regularmente e os últimos ajustes permanecem na fila. Recursos inalterados reutilizam análises. A descarga inclui guias offline em nove idiomas e o instalador separado do bot Discord.
Alterações na versão 9.6.19#
O anticheat repara suas tabelas admin_logs e ac_detections na inicialização adicionando apenas as colunas que faltam; tabelas compartilhadas com outros scripts não são alteradas por padrão. O limitador de eventos agora registra jogadores que passam do limite de um evento da lista (server_event_spam, LOG por padrão; confira seus limites e depois defina KICK; um valor salvo no painel tem prioridade). Outros scripts do servidor não podem mais disparar os eventos internos do anticheat, a menos que estejam na lista de recursos confiáveis (set tosun_ac_local_event_guard "audit" apenas relata enquanto você ajusta). A quarentena automática de backdoors funciona quando ativada, os alertas de novos logs chegam aos telefones da equipe e ao menu do jogo, e um resumo de saúde da instalação (tosunac_health) lista o que corrigir após a inicialização. Um início tardio do framework não interrompe mais o módulo do servidor.
Alterações na versão 9.6.18#
Jogadores cujo cliente anticheat não está em execução ou para de responder agora são expulsos (nunca banidos), incluindo a equipe. A isenção da equipe ficou mais restrita: só ficam isentos os membros declarados explicitamente (arquivo de admins, permissão do painel, permissão tosun.exempt ou uma sessão txAdmin verificada); quem tem apenas uma permissão ampla ou uma entrada ip: é verificado como jogador, as ações automáticas se limitam a uma expulsão e as detecções em membros isentos vão para o novo webhook StaffAlerts. Noclip, câmera livre e modo espectador do menu do jogo e do txAdmin recebem uma permissão de modo administrador verificada pelo servidor. Uma nova proteção de movimento verifica as posições no servidor; ela começa no modo de observação (shadow) e não expulsa ninguém até você definir ts.serverMovement.guard.mode = "enforce". Leia RELEASE-9.6.18.md antes de instalar: adicione o webhook StaffAlerts e confira quem está isento.
Alterações na versão 9.6.3#
Erros da API do framework já não provam a ausência de uma arma. checkDamage=false funciona e reiniciar o inventário limpa resultados antigos. AllowWeapon exige um recurso de confiança. Anti-aimbot guarda o último acerto por alvo; limites e ações padrão não mudaram.
O que mudou na 9.6.6?#
Foi corrigido um problema de desempenho que podia travar o servidor em combates grandes. A verificação de admin (ts.AdminStatus) fazia duas consultas síncronas ao banco de dados em cada chamada para jogadores que não são staff, e toda a thread do servidor espera enquanto elas rodam. A verificação de isenção de punição a chama em cada explosão e evento de dano, então combates grandes podiam causar lag, e um jogador podia gerar a mesma carga de propósito pedindo uma verificação de admin a cada segundo. Agora um resultado “não é staff” vindo do banco fica guardado por 30 s por jogador. As verificações de ACE, txAdmin e admins.lua não usam cache e valem na hora; uma nova permissão do painel é reconhecida em até 30 s.
O que mudou na 9.6.5?#
Nas capturas pedidas pelo painel, o endereço devolvido pelo jogador observado agora é verificado. Antes, um trapaceiro observado podia devolver qualquer endereço no lugar da captura: uma imagem limpa hospedada em outro lugar, um pixel de rastreamento ou um link para outro site. Agora só são aceitos endereços data:image do modo base64 e caminhos em /images/ do painel, e o host de um endereço completo é sempre trocado pelo painel que recebeu o envio. Outros endereços são descartados, a solicitação é marcada como falha e o console do servidor mostra um aviso.
O que mudou na 9.6.3 e 9.6.4?#
9.6.3: ts.weaponInventory.checkDamage = false agora desliga de fato a verificação de dano. Se a API de inventário não responder, a arma conta como desconhecida, não como ausente. AllowWeapon agora exige um recurso de servidor confiável: adicione seu script de arena/paintball à lista existente tosun_ac_trusted_resources (mantendo os outros nomes). A varredura anti-aimbot agora usa memória e processamento limitados; os limites não mudaram. 9.6.4: uma captura do Shield só é aceita quando o servidor a pediu (em até 60 s, uma vez). Um vídeo de ban só é aceito de um jogador realmente expulso ou banido nos últimos 2 minutos; antes, qualquer jogador podia criar um registro “BAN” falso no painel e uma notificação de ban no Discord.
O que mudou na 9.6.2?#
Foram corrigidos dois casos em que a proteção física de veículos (ts.vehicleGuard, kick por padrão) podia expulsar um jogador inocente. Uma explosão que levantava vários veículos do mesmo jogador contava um aviso por veículo, então o dono podia ser expulso mesmo quando outra pessoa lançou a bomba. Agora cada jogador recebe no máximo um aviso por passada de amostragem, e veículos a até 30 m de uma explosão dos últimos 4 s não são avaliados. Só contam explosões que nenhuma outra verificação cancelou, então um trapaceiro não consegue esconder um arremesso atrás de uma explosão bloqueada.
O que mudou na 9.6.1?#
O canal de logs do cliente foi reforçado. Qualquer jogador podia escrever logs com qualquer tag e status: linhas falsas “[BAN] ...” no painel, notificações no celular para todos os admins com o status “Detection” e uma requisição ao painel por linha. Agora jogadores comuns só podem usar as tags de cliente do próprio anticheat; o servidor define o status e cada jogador tem limite de 12 linhas por minuto. Outras tags (menu admin) exigem permissão de staff. O espelho de logs do painel agora é enviado em uma única requisição em lote a cada 3 s, para que notificações de ban e detecção não esbarrem no limite de requisições do painel em momentos de pico. O registro no banco de dados do jogo não mudou.
O que mudou na 9.6.0?#
A verificação de arma/inventário agora também olha o dano causado, não só a arma na mão. Menus de trapaça podem disparar uma arma sem segurá-la (magic bullet, eletrocutar jogadores com a arma de choque). Se a arma de um evento de dano não estiver no inventário do atacante, ela passa pela mesma cadeia de registro e punição (só registro por padrão). São necessários 2 eventos em 60 s. Armas arremessáveis, os primeiros 60 s após entrar, inventários não carregados, armas addon e de veículo e armas liberadas com AllowWeapon são ignorados. Desligue com ts.weaponInventory.checkDamage = false.
O que mudou na 9.5.9?#
As detecções pausam enquanto o jogador está morto, caído ou em last stand, para que as animações de reanimação não causem falsos positivos. Uma trapaça podia manter esse estado para sempre disparando localmente o evento de morte de um framework ou mantendo a vida entre 101 e 110. Um jogador caído não consegue correr, dar sprint nem dirigir um veículo em movimento. Depois de 20 s fazendo uma dessas coisas, a marca de “caído” obsoleta é apagada e vida baixa não pausa mais as detecções. Jogadores realmente caídos não são afetados.
O que mudou na 9.5.7 e na 9.5.8?#
Todas as verificações do cliente que podem punir foram auditadas, e cada achado passou por três revisões independentes. Fechado para trapaceiros: uma trava que silenciava todas as detecções do cliente na sessão com um único evento local; isenções graváveis pelo próprio cliente que engoliam detecções em silêncio (agora são registradas); SetSpawned desligando as verificações de vez; uma renovação de chave que cegava as detecções assinadas; e uma janela de confirmação que nunca se completava. Corrigido para jogadores inocentes: bans permanentes ao descer ladeira de bicicleta, expulsões ao abastecer com galão, bans de godmode após 1 HP de dano ambiental, bans de aimbot para policiais mirando um suspeito em fuga, carros estacionados contados como spawns, bans de godmode de veículo em carros de test drive, varreduras de menu que batiam com o comando exec do FiveM e nomes de texturas do próprio jogo, ficar em pé no convés de um barco ou na caçamba de um caminhão, e scripts de falha de motor que expulsavam motoristas.
O que mudou na 9.5.6?#
As armadilhas do cliente criadas com nomes de eventos de menus de trapaça não atingem mais recursos reais. Em um servidor com o menu policial SEM_InteractionMenu, um jogador preso recebia o evento próprio desse menu e era expulso como trapaceiro. Se o prefixo do nome de um evento é um recurso em execução, o evento conta como legítimo desse recurso e nunca é punido. Os tipos de explosão de armas (railgun, mina de proximidade, bomba caseira, raygun) agora seguem a lista negra de armas: se você tirou a arma da lista negra, por exemplo para um script de assalto, a explosão dela também é permitida.
O que mudou na 9.5.5?#
Um ban com campos vazios não bloqueia mais jogadores sem relação. A verificação de conexão procurava identificadores ausentes como valores vazios, então depois que o painel banisse um jogador sem Steam ou Discord, qualquer um que entrasse sem Steam ou Discord podia ser recusado com o cartão desse ban. Agora os identificadores são validados pelo formato, e valores vazios ou de preenchimento nunca coincidem. Bans offline agora são realmente registrados. No MySQL 8 as colunas de ban temporário não podiam ser adicionadas, o que deixava jogadores banidos entrarem; a migração e o SQL de instalação agora funcionam nos dois bancos. A análise de evasão de ban usa só bans ativos e, por padrão, não trata mais um IP compartilhado (operadora, alojamento, lan house) como vínculo.
O que mudou na 9.5.4?#
Um bug no módulo anti-aimbot deixava trapaceiros escaparem. Os registros e as punições compartilhavam uma espera de 4 segundos, então sinais repetidos a cada 2 segundos ou menos (magic bullet em todo tiro, um triggerbot com um strike por segundo) nunca eram punidos. Um único tiro de escopeta em uma multidão não conta mais como magic bullet: o limite é de 4 alvos e o sinal precisa se repetir. A verificação do servidor de dano excessivo de arma ignora pancadas com veículo, atropelamentos, explosões e quedas, e um evento isolado é apenas registrado. Os padrões do painel foram comparados com os da config. Servidores novos recebem configurações mais seguras de OCR, combate, rate guard e burst. Sem configurações do painel, o watchdog expulsa, o native guard registra e a verificação de estamina infinita fica desligada por padrão.
O que mudou na 9.5.3?#
O threat intel não transforma mais detecções LOG e problemas de conexão em expulsão na entrada. A pontuação enviada ao painel contava toda detecção (inclusive as que só registram), heartbeats perdidos e um valor que o próprio cliente do jogador pode escrever. A pontuação salva nunca caía, então um jogador inocente podia ser expulso a cada entrada. Agora só contam detecções realmente aplicadas (kick ou ban) neste servidor nos últimos 10 minutos, e a ação padrão na entrada é apenas registrar. Em instalações sem configurações do painel, a verificação de objetos em massa agora registra por padrão em vez de banir. O doutor de config e o painel avisam quando o fail-open está desligado (uma queda do painel expulsaria todos) e quando há expulsão na entrada.
O que mudou na 9.5.2?#
O Shield AI não apaga mais entidades legítimas. Em um servidor OneSync, objetos e peds de jogadores não têm tipo de população. Com as configurações antigas, todo objeto em rede criado por um jogador era cancelado (props de emote e de telefone, cones, móveis), assim como todo veículo e NPC de um script fora de uma lista curta. Agora é permitida uma entidade criada por qualquer recurso em execução no servidor. Só é cancelada uma entidade de script que nenhum recurso criou. O spawn é sempre cancelado; kick ou ban só acontece se a infração se repetir 3 vezes em 60 s. O comportamento antigo continua disponível como lista branca estrita opcional. A verificação de objetos na lista negra, que não rodava desde a 9.3.0, voltou a funcionar. Explosões silenciosas sem dano (estouros de escapamento) não contam mais para a punição.
O que mudou na 9.5.1?#
Mais duas fontes de banimento indevido foram fechadas. A verificação de overlay baseada no cursor podia banir permanentemente um jogador que movia o mouse em um menu de caixa eletrônico, loja ou telefone aberto com E, e ainda puxava o cursor para o canto; agora ela nunca roda enquanto um menu tem o foco, não monitora mais E nem ESC e por padrão apenas registra. Uma única explosão silenciosa ou invisível era banimento permanente, embora scripts de bombeiros, escapamento e termite também as criem. A explosão continua sempre cancelada; a punição agora exige 5 repetições em 60 s e por padrão é kick.
O que mudou na 9.5.0?#
Doutor de configuração: depois que as configurações do painel e do banco de dados são aplicadas, o anticheat lê os valores reais e lista os que representam risco de banimento indevido ou de segurança. Por exemplo, avisa quando a punição de OCR ou de teleporte está em ban, quando uma proteção está desligada ou quando Debug está ativo. Ele roda sozinho cerca de 90 s após o início e grava um resumo nos logs do painel; execute tosunac_doctor no console do servidor a qualquer momento. Ele nunca altera uma configuração. No painel, os valores dos detalhes de detecção, jogador e banimento agora são escapados: um motivo enviado por um cliente do jogo não consegue executar código no navegador de um admin, e os dados embutidos nas páginas não conseguem sair do seu contexto. O sino de notificações voltou a funcionar.
O que mudou na 9.4.0?#
Nova verificação de armas e inventário: o servidor lê a arma na mão do jogador e a procura no inventário (ox_inventory, QBCore/Qbox ou ESX). Uma arma sem item correspondente foi gerada e é detectada mesmo que não esteja na lista negra. Por padrão ela apenas registra, exige 3 amostras consecutivas e ignora os primeiros 60 s após a entrada e jogadores cujo personagem não está carregado. Acompanhe o painel por alguns dias e depois eleve para kick ou ban na seção de autoridade do servidor das configurações do anticheat. Scripts que dão armas sem item de inventário devem chamar AllowWeapon. Um segundo registro de getConfig também foi fechado, e a página da API agora mostra a chave como cabeçalho em vez de na URL.
O que mudou na 9.3.1?#
O restante da revisão do ponto de vista do jogador inocente. Coletes à prova de balas e kits de primeiros socorros não expulsam mais os jogadores; um salto de vida ou colete agora exige 3 repetições em 60 s. Esvaziar uma SMG, fogo e explosões não contam mais como aimbot, e a verificação de distância considera apenas armas de curto alcance. Ver carros em uma concessionária, cair ferido duas vezes, um carro em chamas que explode depois que você se afasta e acertos de sniper não causam mais punições. Equipamentos de polícia e de assalto (gás BZ, pistola sinalizadora, dispositivo de hacking) foram removidos da lista negra de armas padrão. As assinaturas do Shield usam o mesmo texto canônico nos dois lados, e a perda de uma única entrega de chave não expulsa mais o jogador por tempo esgotado.
O que mudou na 9.3.0?#
Uma versão de segurança e de banimentos indevidos. Em versões anteriores, a chave de API do painel podia chegar aos clientes dos jogadores quando as configurações eram salvas no painel; o painel deixou de enviá-la e a 9.3.0 filtra todas as configurações enviadas aos clientes. Depois de atualizar, gere uma nova chave de API do AC nas configurações do site, salve-a e envie-a ao AC. Os eventos de servidor com os quais um jogador podia isentar a si mesmo agora apenas relaxam brevemente as verificações de movimento e visibilidade. Um teleporte isolado (seleção de personagem, hospital, casa, puxada por um admin) agora gera um registro em vez de um banimento; velocidade impossível contínua (voo com noclip) é punida. A verificação de dinheiro, os filtros de chat e de nome, o OCR, a proteção de veículos e 27 detecções de cliente sem mapeamento foram corrigidos para não causarem mais banimentos indevidos. Exports sensíveis só aceitam recursos confiáveis; adicione um script confiável com tosun_ac_trusted_resources no server.cfg. Os detalhes estão em RELEASE-9.3.0.md e INTEGRATION.md no pacote.
Novidades da 9.2.0#
O menu de administração no jogo foi redesenhado. Agora abre como um painel na borda da tela, para que o jogo continue visível; o botão de encaixe o move para o outro lado. Ctrl K encontra qualquer jogador ou ação, jogadores com detecções nesta sessão aparecem primeiro, e expulsar, banir, avisar e dar arma abrem um pequeno formulário com o nome do alvo. Matar, desbanir, eliminar por perto e qualquer ação no servidor inteiro pedem um segundo toque. Nomes de jogadores já não conseguem injetar código no menu, e as configurações allowEsp, allowFreecam e allowDelete do menu de administração passam a ser aplicadas.
Novidades da 9.1.0#
Uma nova proteção do lado do servidor lê o estado do jogador que o OneSync replica para o servidor: super pulo, invencibilidade, invisibilidade, noclip com colisão desativada, modificadores de dano e defesa de armas, armas da lista negra na mão e câmera afastada do jogador (spectate/freecam). Essas verificações continuam funcionando mesmo que um cheat pare o anti-cheat do cliente. As de alta confiança expulsam por padrão; as que dependem do contexto apenas registram até que você as reforce na seção v25 das configurações do anti-cheat. Verificações não suportadas pela build do servidor são desativadas automaticamente e listadas no console do servidor.
Novidades da 9.0.3#
Validação e limites de frequência de eventos; consultas opcionais sob demanda; tokens temporários de upload sem poder de gerenciar o painel. Nenhum anticheat ou proteção de pacote garante bloquear todos os ataques.