Apresento a
maior atualização até agora do Syntri — um sistema modular, moderno e altamente otimizado para servidores Minecraft, agora com suporte completo a
Kotlin + Java, integração limpa com bancos de dados e gerenciamento dinâmico de eventos e comandos.
O que há de novo?
✅ Nova Estrutura Modular
- Divisão clara em submódulos: engine, syntri, version-api, version-1_8_9, version-1_20_4 e outros.
- Facilidade para manter, escalar e adaptar a diferentes versões do Minecraft.
✅ Suporte Oficial a Kotlin + Java
- Reescrito parcialmente em Kotlin para melhorar legibilidade e produtividade.
- Totalmente compatível com Java, mantendo integração estável com versões anteriores.
✅ Gerenciamento Avançado de Listeners
- Novo sistema de LoaderListener baseado em Reflections.
- Escaneia pacotes automaticamente, instanciando todos os Listeners (com ou sem construtores).
- Registra eventos dinamicamente, evitando registros manuais extensos.
✅ Registro Automático de Comandos
- Comandos anotados com @CommandInfo agora são carregados via reflexão.
- Redução drástica de boilerplate.
- Feedback em tempo real se nenhum comando for encontrado.
✅ ⏱️ Sistema de Cooldown Renovado
- ActionBars com fallback automático para versões legadas.
- Mensagens dinâmicas com contagem regressiva real para o jogador.
- Compatibilidade inteligente com diferentes versões do Minecraft.
✅ ️ Backend Flexível com Suporte a Múltiplos Bancos
- Suporte plugável para:
- MySQL
- PostgreSQL
- MariaDB
- Oracle
- SQL Server
- Firebird
- SQLite
- MongoDB
- Auto-configurável via backend.yml.
✅ Correções Críticas
- Corrigido erro NoClassDefFoundError causado por dependências não incluídas no .jar.
- Corrigido erro NullPointerException no onEnable ao inicializar listenerLoad.
- Adicionado api-version no plugin.yml para evitar warnings em servidores modernos.
Compatibilidade
- Testado em Paper/Purpur 1.8.8 até 1.20.4
- Base modular pronta para expansões de versão futuras
Feedback
Se você encontrar bugs, sugestões ou quiser contribuir, sinta-se livre para abrir uma issue ou me mandar mensagem!