ResourcePackManager (RSPM)
O ResourcePackManager descobre, une, hospeda e distribui resource packs de plugins suportados e de packs fornecidos manualmente. Ele também pode converter o pack Java unificado em um resource pack Bedrock, para que jogadores via GeyserMC vejam o mesmo conteúdo personalizado que os jogadores Java, e oferece suporte de primeira classe para redes com proxy BungeeCord, Waterfall e Velocity.
O Que Ele Faz
- descobre packs de plugins suportados e os une de acordo com
priorityOrder - executa seu próprio servidor HTTP integrado para fazer self-host do pack unificado (sem necessidade de um host de arquivos externo)
- pode recorrer à hospedagem gratuita do MagmaGuy (auto-host) quando o self-host não for viável
- pode forçar ou opcionalmente solicitar o uso do pack
- monitora alterações nos packs e refaz a união automaticamente quando as fontes se estabilizam
- converte o pack Java unificado em um resource pack Bedrock para o GeyserMC
- funciona em redes com proxy: cada backend produz seu próprio pack Bedrock, o plugin do proxy os busca, os une e serve o resultado por meio do Geyser
Arquitetura em Resumo
O RSPM v2 é um build Maven multi-módulo, mas é distribuído como um único jar: ResourcePackManager.jar. Esse único jar contém o plugin Bukkit/Paper, o plugin Velocity e o plugin BungeeCord/Waterfall, todos de uma só vez — o Minecraft carrega o ponto de entrada que corresponder à plataforma em que está rodando. Não existem mais arquivos ResourcePackManager-Velocity.jar / ResourcePackManager-BungeeCord.jar separados, nem pasta proxy-extension/.
O mesmo jar desempenha dois papéis, dependendo de onde você o coloca:
- Como plugin de backend (em cada backend Paper/Spigot) — mescla packs Java, executa o conversor Bedrock, hospeda o pack, expõe um pequeno servidor HTTP e envia packs aos clientes Java.
- Como plugin de proxy (em um proxy Velocity ou BungeeCord/Waterfall) — busca o pack Bedrock e os mappings de cada backend, une-os em um único pack válido para toda a rede e o serve a clientes Bedrock por meio do Geyser do proxy.
Um servidor standalone só precisa do jar no backend. Uma rede com proxy precisa do mesmo jar em cada backend E de uma cópia no proxy.
Quando o backend detecta uma instalação local do Geyser-Spigot, ele também coloca um ResourcePackManager-GeyserBridge.jar empacotado em Geyser-Spigot/extensions/ (uma extensão do Geyser, não um plugin separado), para que o Geyser consiga renderizar as entidades Bedrock personalizadas do RSPM.
Opções de Hospedagem
Três caminhos de entrega, escolhidos automaticamente nesta ordem quando autoHost: true:
- Self-host primeiro (
preferSelfHost: true, padrão) — o RSPM inicia seu próprio servidor HTTP, executa uma cadeia de checagens de sanidade (endereço não-LAN, self-probe em localhost, probe de alcançabilidade externa via magmaguy.com) e anuncia a URL local aos clientes. Custo zero de banda para o MagmaGuy. - Fallback de auto-host remoto — se alguma checagem de self-host falhar, o RSPM faz upload do pack para a CDN do MagmaGuy em
magmaguy.com/rsp/e anuncia essa URL. - Self-host forçado (
selfHostForce: true) — pula ambos os probes e o upload remoto por completo. Principalmente para testes.
Se autoHost: false, o RSPM grava o zip unificado em plugins/ResourcePackManager/output/ e você o pega a partir dali.
Consulte Self-hosting para a árvore de decisão completa de entrega, resolução de portas e detecção de host externo.
Conversão Java-para-Bedrock
O conversor Bedrock não é mais exclusivo do FreeMinecraftModels. Ele percorre todo arquivo de definição de itens 1.21.4+ (assets/<namespace>/items/*.json) no pack unificado e produz geometria Bedrock, attachables e ícones de inventário, independentemente do plugin que os tenha enviado:
- Jogadores Bedrock veem itens 3D, armaduras personalizadas e equipamentos modelados de qualquer plugin cujo pack use o formato de definição de itens 1.21.4+.
- Texturas de armadura personalizadas são renderizadas em jogadores Bedrock usando a geometria de armadura vanilla, com a textura Java como camada visível.
- Ícones de inventário para itens 3D são renderizados por software a partir do modelo Java por meio da transformação
display.gui. - O pack Bedrock é servido ao vivo por sessão Bedrock via API do Geyser, de modo que ajustes de textura e modelo chegam ao próximo jogador Bedrock que entrar sem reiniciar o servidor. Mapeamentos de itens personalizados ainda exigem reinício, pois o Geyser os registra na inicialização.
- Doze parâmetros ajustáveis pelo usuário para offsets de exibição de itens segurados (seis de primeira pessoa, seis de terceira pessoa) em
bedrock_display_offsets.yml.
Integrações Atuais
O ResourcePackManager já vem com entradas de integração prontas para estes plugins:
- BackpackPlus
- BetterHUD
- BetterStructures
- CannonRTP
- EliteMobs
- EternalTD
- FreeMinecraftModels
- InfiniteVehicles
- ItemsAdder
- MegaBlockSurvivors
- MMOInventory
- ModelEngine
- Nexo
- Nova
- Oraxen
- RealisticSurvival
- ResurrectionChest
- ValhallaMMO
- vane-core
Cada integração só é ativada se o plugin estiver instalado e seu caminho local ou URL remota configurados forem utilizáveis. O plugin também detecta o Geyser (Geyser-Spigot em um backend, Geyser-Velocity / Geyser-BungeeCord em um proxy) na inicialização e conecta a entrega do pack Bedrock àquele que encontrar.
Para Onde Ir Agora
- Configuração — fluxo do operador para um servidor standalone
- Redes com Proxy — configuração passo a passo para BungeeCord / Waterfall / Velocity
- Self-hosting — servidor HTTP integrado, resolução de portas, detecção de host externo
- Conversão Bedrock / Geyser — o que é convertido, parâmetros de ajuste
- FAQ — perguntas comuns
- Solução de Problemas — o que verificar quando algo dá errado
- API — registrando packs a partir do seu próprio plugin