Plugin Minecraft packetevents
Informações sobre packetevents e servidores confirmados
🔌 Sobre o PacketEvents
PacketEvents é uma biblioteca de protocolo para Minecraft Java Edition que expõe uma API para interceptar, inspecionar, cancelar e enviar pacotes brutos de protocolo. Ela pode ser usada como um plugin independente em um servidor/proxy ou incluída como dependência de biblioteca para outros plugins e mods.
🎯 Objetivo
Fornecer uma camada estável de pacotes, multiplataforma, para desenvolvedores de plugins e mods, para que possam reagir e manipular pacotes do protocolo do Minecraft (login, play, status, handshake etc.) sem precisar escrever código Netty de baixo nível nem manter várias implementações de protocolo específicas por versão.
⚙️ Recursos
- Interceptação de pacotes orientada a eventos para pacotes de entrada e saída (eventos de receive/send e eventos no nível do protocolo).
- Capacidade de cancelar ou modificar pacotes antes que o servidor/cliente os processe.
- API para enviar e simular pacotes programaticamente.
- Ciclo de vida limpo: criar/carregar/inicializar/encerrar uma instância do PacketEvents para um gerenciamento adequado de recursos.
- Suporte a vários módulos: builds/módulos separados para plataformas comuns, para que a mesma API funcione em diferentes ambientes de servidor/proxy/mod.
- Javadocs publicados e configuração de desenvolvedor documentada para uso com Maven/Gradle.
🧩 Para quem é
- Desenvolvedores de plugins e mods que precisam de acesso no nível do protocolo (enviar, simular ou modificar pacotes).
- Administradores de servidores que instalam o PacketEvents como dependência para plugins que exigem interceptação de pacotes.
🏗️ Casos de uso de exemplo
- Um plugin registra um listener de pacotes e cancela um pacote de entrada específico para impedir o processamento padrão.
- Um mod envia pacotes sintéticos para um cliente para criar efeitos visuais personalizados ou UI sem mudanças de entidades no servidor.
- Um plugin de proxy trata pacotes de login/handshake para fluxos de autenticação personalizados.
⚙️ Instalação
📥 Configuração (administrador do servidor)
- Baixe o JAR oficial do plugin e coloque-o no diretório
plugins/do servidor/proxy (ou equivalente). - Reinicie o servidor/proxy e verifique os logs para confirmar que o PacketEvents foi carregado corretamente.
🛠️ Para desenvolvedores (configuração de build)
O PacketEvents é distribuído como módulos específicos por plataforma. A documentação mostra exemplos para Maven/Gradle; a biblioteca deve ser adicionada com escopo provided/compileOnly. A documentação usa um placeholder para o nome do módulo; substitua-o pelo módulo da plataforma alvo (por exemplo spigot, velocity, bungeecord, fabric, sponge) ao adicionar uma dependência.
Exemplo (trecho de Gradle mostrado na documentação oficial):
// Substitua INSERT_MODULE_HERE por um nome de módulo compatível (spigot, velocity, bungeecord, fabric, sponge)
compileOnly("com.github.retrooper:packetevents-~~INSERT_MODULE_HERE~~:2.12.1")
Chame os métodos de ciclo de vida da biblioteca a partir do seu plugin/mod (load -> init) e finalize quando o plugin for desativado.
🧠 Observações técnicas
- Os módulos fornecidos oficialmente incluem Spigot, Velocity, BungeeCord, Fabric e Sponge.
- O projeto informa que o módulo Spigot foi projetado para funcionar em forks amplamente usados, como Paper, Purpur e Folia, e que o módulo BungeeCord foi pensado para funcionar no Waterfall.
- O projeto é publicado com código-fonte, releases e Javadocs; a licença é GPL-3.0.
- A biblioteca deve ser adicionada com escopo
provided/compileOnlyem builds de plugins quando não se deseja incluí-la no pacote final; as instruções de bundling são documentadas para casos em que um plugin inclui o PacketEvents na sua distribuição.
🤝 Quando este plugin é útil
Se o seu projeto exige controle direto sobre o protocolo do Minecraft — para autenticação personalizada, efeitos baseados em pacotes, tratamento de proxy ou integrações de baixo nível — o PacketEvents oferece uma API multiplataforma e gerenciamento de ciclo de vida para que você possa criar esses recursos sem reimplementar o tratamento de protocolo para cada servidor ou implementação de proxy.
- Smithtainment
SMP de sobrevivência com foco na comunidade, plugins personalizados, economia, mcMMO e mini‑games — comunidade acolhedora e fórum ativo.
654.6 - Welcome to Afterlife SMP!454.42
- A Minecraft Server353.72
- Welcome To the Kmartz SMP!253.09
- AetherCraft
SMP Survival semi-personalizado com proteção de terrenos, economia controlada pelos jogadores, itens e mobs personalizados, vários mundos e suporte a crossplay entre Bedrock/Java.
453.04 - A Fallout Roleplaying Server051.94
- PIDGE Survival RPG151.37
- GospelCraft
Servidor cristão Towny de sobrevivência com mobs personalizados, mcMMO e jobs — a escritura apresentada através do jogo.
049.79 - DTRH
SMP de Survival com crossplay Java–Bedrock, quests, itens e mobs personalizados, economia de jogadores e proteção de terrenos — além de minijogos e recursos sociais para jogadores casuais e de progressão.
049.75 - A Minecraft Server048.3
- EthelMC
Survival comunitário com economia, claims de terra, arenas e crossplay (Java & Bedrock). Ranks, lojas de jogadores e eventos.
047.24 - A Minecraft Server046.5
A página do plugin packetevents mostra os servidores onde o monitoramento encontrou este plugin, a plataforma usada e a versão.
Um plugin pode adicionar comandos, economia, segurança, permissões de acesso, minigames, integrações e outras mecânicas. O papel real de packetevents depende das configurações do servidor.
Os dados são gerados automaticamente a partir de respostas técnicas dos servidores. Se um servidor mantém a lista de plugins privada, pode usar packetevents mas não aparecer nesta seção.
Use a lista de servidores com packetevents para comparar projetos, verificar versões suportadas ou encontrar exemplos de uso do plugin em servidores públicos.