01
Survival
Um servidor persistente criou o ambiente real onde necessidades de operação, gameplay e segurança começaram a surgir.
Case técnico · software · infraestrutura · arquitetura
O MundoZ começou como um servidor survival e, com o tempo, passou a reunir sistemas próprios de gameplay, segurança, economia, proteção, modos de jogo especializados e infraestrutura de múltiplos servidores.
Minecraft continua sendo a plataforma onde tudo isso é executado, mas o interesse técnico do projeto está nos problemas que surgiram conforme seus componentes cresceram e passaram a depender uns dos outros.
Hoje o MundoZ é um dos principais ambientes onde estudo desenvolvimento server-side, arquitetura de software, redes, persistência, integração, manutenção e evolução de sistemas.
Evolução
O projeto começou simples. Cada nova necessidade acrescentou responsabilidades até que separar sistemas e definir fronteiras passou a ser mais importante do que simplesmente adicionar novas funcionalidades.
01
Um servidor persistente criou o ambiente real onde necessidades de operação, gameplay e segurança começaram a surgir.
02
Mods passaram a assumir responsabilidades de economia, proteção, comportamento de mobs, segurança e outras regras do ambiente.
03
Speedrun / Manhunt passou a exigir ciclo próprio e isolamento, levando à separação em outro servidor.
04
Quando estado e identidade precisaram atravessar servidores, surgiu a necessidade de contratos e serviços compartilhados.
Arquitetura atual
Survival e Speedrun possuem responsabilidades próprias. O Velocity atua na camada de entrada e transferência. A necessidade de dados compartilhados revelou uma nova questão: quais informações realmente pertencem à plataforma e quais devem permanecer dentro de cada domínio?
Entrada / transferência
Proxy e infraestrutura de roteamento entre servidores.
Servidor persistente
Servidor especializado
Planejamento arquitetural
Ainda não implementado. A responsabilidade dessa camada está sendo definida a partir das necessidades reais de estado e identidade compartilhados.
Speedrun / Manhunt
O Speedrun começou como um modo de jogo, mas suas necessidades de isolamento, ciclo próprio de mundo e gerenciamento de participantes tornaram natural executá-lo em um servidor separado.
A partir daí, o problema deixou de ser apenas gameplay: jogadores precisavam ser registrados, agrupados, transferidos para o servidor correto e depois retornar ao ambiente de origem.
O projeto está ativo e continua em evolução. Parte do trabalho restante depende das decisões sobre estado compartilhado e MundoZ Core.
Participantes deixam de ser apenas jogadores conectados e passam a fazer parte de uma sessão com estado próprio.
Registro e agrupamento antecedem a criação e inicialização da partida.
Velocity e gateway próprio permitem encaminhar participantes entre ambientes sem criar dependência direta entre os servidores de jogo.
AntiXray v2
A primeira versão do AntiXray já resolvia o problema de ocultar recursos no envio dos chunks. A v2 não nasceu simplesmente para adicionar funcionalidades, mas para reorganizar responsabilidades e tornar futuras atualizações mais seguras.
Antes de alterar o comportamento, a implementação atual foi documentada. Regras de domínio passaram a ser separadas das dependências específicas do Minecraft, decisões começaram a ser registradas e testes independentes da execução do jogo passaram a fazer parte do objetivo arquitetural.
Documentar antes de substituir.
Regras separadas da infraestrutura quando isso traz clareza.
ADRs e planos de migração registram o motivo das mudanças.
Mudanças pequenas, revisáveis e validadas antes de entrar na linha principal.
Land Protection
O Land Protection começou como um sistema de claims e proteção no Survival. Conforme suas responsabilidades cresceram, algumas informações passaram a levantar questões que ultrapassam o limite de um único servidor.
Isso criou uma pergunta arquitetural importante: quais regras continuam pertencendo ao domínio Land Protection e quais informações precisam ser compartilhadas pela plataforma?
Uma v2 orientada a domínio está em avaliação. Também está sendo avaliado se essa modelagem deve acontecer antes da implementação do MundoZ Core. Essa ordem ainda não foi decidida.
MundoZ Core · planejado
A ideia do Core surgiu quando o Speedrun passou a operar em servidor separado e informações do jogador precisaram sobreviver à transição entre ambientes.
Depois ficou claro que outros domínios também podem precisar de estado global. Isso tornou o Core mais importante do que parecia inicialmente.
Por isso, ele ainda não está sendo tratado como um simples banco central de dados. Antes da implementação, é necessário definir quais informações são globais, quais pertencem aos domínios e quais contratos realmente precisam existir.
Estado dos componentes
Ativo
Ambiente persistente principal.
Em evolução
Projeto ativo, com funcionalidades implementadas e dependências arquiteturais ainda em evolução.
Em evolução
Refatoração arquitetural orientada a domínio e manutenção futura.
Implementado
Detecção server-side para comportamentos de movimento incompatíveis com gameplay normal.
Funcional
Sistema atual de claims; possível v2 em avaliação.
Implementado
Economia integrada ao ambiente Survival.
Implementado
Componente de integração usado para transferência entre servidores.
Planejamento
Responsabilidades e contratos ainda sendo definidos.
O que mudou no processo
Projetos mais recentes passaram a ser tratados com mais atenção à documentação, domínio, decisões arquiteturais e migração incremental.
Entender e registrar o comportamento antes da mudança.
Identificar regras, responsabilidades e fronteiras de domínio.
Evoluir aos poucos preservando comportamento observável.
Revisar e testar antes de integrar mudanças.
Projeto em evolução
O valor técnico do projeto está justamente nessa evolução: funcionalidades novas frequentemente revelam problemas de arquitetura que exigem compreender melhor responsabilidades, integração e manutenção.