FiveM Event Logger & Debugger Tool

Gerar event listeners, validate naming conventions, check for security issues, and use ready-made event templates.

Para que serve esta ferramenta

Eventos são como o cliente e o servidor se comunicam no FiveM, e também são a forma mais comum de um servidor ser invadido. Um evento de servidor que confia no que o cliente envia pode ser chamado por qualquer um com um injector. Este gerador escreve listeners corretos para ambos os lados e verifica seus nomes de evento contra as regras de nomenclatura e segurança.

Como usar

  1. Passo 1:

    Digite o nome do evento, idealmente prefixado com o nome do seu recurso para evitar colisões com outro script.

  2. Passo 2:

    Escolha o lado. Um evento de servidor precisa de RegisterNetEvent, um puramente local não precisa.

  3. Passo 3:

    Gere o código e leia as notas de segurança. Elas apontam os valores que devem ser verificados no servidor.

  4. Passo 4:

    Copie o listener para o seu resource e substitua o corpo placeholder pela sua própria lógica.

Perguntas frequentes

Qual é a diferença entre RegisterNetEvent e AddEventHandler?

AddEventHandler registra um handler. RegisterNetEvent adicionalmente permite que o evento seja acionado do outro lado da rede. Sem ele, um acionamento remoto é ignorado, com ele qualquer um na rede pode chamá-lo, então ele pertence apenas a eventos que realmente precisam disso.

Por que eu nunca devo confiar no cliente?

Tudo que um cliente envia pode ser forjado: a quantidade, o item, o preço, o id do jogador. Leia o source com source no servidor e consulte os valores reais no banco de dados você mesmo. Um evento do servidor que recebe uma quantidade do cliente é um caixa aberto.

Como devo nomear meus eventos?

Sempre resource:action, por exemplo agency-phone:sendMessage. Sem o prefixo dois scripts podem registrar o mesmo nome, e então o handler errado é executado. Dois-pontos são a convenção, não underscores.

Como descubro quais eventos meu servidor dispara?

Um handler no lado curinga mais um print no console mostra o tráfego. Para uma análise direcionada adicione uma linha de log no início do listener. Em produção remova-os novamente, porque cada linha de log custa desempenho em um servidor ocupado.