Perguntas Frequentes do Resource Pack Manager
Se sua pergunta não for respondida aqui, verifique primeiro as outras páginas do ResourcePackManager na barra lateral.
Quais comandos o ResourcePackManager expõe atualmente?
A superfície de comandos atualmente suportada pelo código inclui:
/rspm setup— informa para editar os arquivos de configuração diretamente (sem GUI)/rspm reload— reconstrói e re-hospeda o pack mesclado/rspm itemsadder configure— configura o ItemsAdder para hospedagem do RSPM/rspm itemsadder dismiss— descarta permanentemente o aviso do ItemsAdder para o seu jogador/rspm data_compliance_request— baixa todos os dados armazenados remotamente para este servidor
O comando raiz é /resourcepackmanager, com /rspm como alias. Todos os subcomandos requerem a permissão resourcepackmanager.*.
Quais plugins são suportados atualmente?
O ResourcePackManager vem com entradas de integração pré-configuradas para estes plugins:
- BackpackPlus
- BetterHUD
- EliteMobs
- FreeMinecraftModels
- InfiniteVehicles
- ItemsAdder
- MegaBlockSurvivors
- MMOInventory
- ModelEngine
- Nexo
- Nova
- Oraxen
- RealisticSurvival
- ResourcePackManager
- ValhallaMMO
- vane-core
Essas integrações só entram em vigor se o plugin estiver instalado e seu caminho local configurado ou URL remota for utilizável.
Cada integração tem seu próprio arquivo de configuração YAML em plugins/ResourcePackManager/compatible_plugins/. Você pode personalizar isEnabled, pluginName, localPath, url, zips, cluster e reloadCommand por plugin. A opção cluster diz ao ResourcePackManager para tratar o caminho local como um diretório de múltiplas sub-pastas de resource pack que devem todas ser mescladas juntas.
O ResourcePackManager é compatível com o ItemsAdder?
Sim. O ResourcePackManager inclui um auxiliar integrado e fluxo de aviso para o ItemsAdder.
Se o ItemsAdder estiver instalado e ainda precisar ser ajustado para a hospedagem do ResourcePackManager, jogadores OP recebem um aviso clicável alguns segundos após entrar. Jogadores que descartaram permanentemente o aviso não o veem novamente. A partir daí você pode:
- executar
/rspm itemsadder configurepara definirresource-pack.hosting.no-host.enabled: true, desabilitar as três configurações deprotect-file-from-unzip, executar/iazipe então recarregar o ResourcePackManager - executar
/rspm itemsadder dismisspara descartar permanentemente esse aviso para seu UUID de jogador
Se o ItemsAdder já estiver configurado para hospedar seu próprio pacote através de um de seus modos de hospedagem, o comando auxiliar não substitui isso automaticamente. Ele informa que você deve desabilitar a hospedagem do ItemsAdder manualmente primeiro.
Posso adicionar meu próprio pacote à mesclagem?
Sim. Coloque seu arquivo .zip em:
plugins/ResourcePackManager/mixer
Se quiser controlar qual pacote vence nos conflitos de arquivos, adicione o nome exato do arquivo, incluindo .zip, em priorityOrder no plugins/ResourcePackManager/config.yml.
Exemplo:
priorityOrder:
- ResourcePackManager
- EliteMobs
- MyCustomPack.zip
Como funciona a prioridade?
priorityOrder tem a prioridade mais alta no topo e a mais baixa na parte inferior.
Para arquivos não mescláveis, o pacote de maior prioridade substitui o arquivo de menor prioridade. Para arquivos JSON mescláveis, o ResourcePackManager mescla os conteúdos em vez de substituí-los cegamente.
O código atualmente trata estes como mescláveis:
sounds.json- arquivos de idioma em
langoulanguages - JSON de modelos de itens vanilla em
minecraft/models/item - arquivos de atlas
- arquivos de fontes
- definições de modelos de itens 1.21.4+ em
items/
pack.mcmeta também é mesclado de forma especial: o pack_format mais alto vence, os intervalos de supported_formats são ampliados para cobrir todos os packs, entradas de overlay são combinadas, e chaves de nível superior não padrão (ex: sodium) são preservadas. Entradas de overlay também são normalizadas para compatibilidade com 1.21.9+ adicionando campos min_format/max_format quando ausentes.
Após todos os packs serem mesclados, o ResourcePackManager também mescla fontes de atlas base em arquivos de atlas de overlay. Isso previne que overlays acidentalmente ocultem entradas de atlas base quando o Minecraft ativa um overlay.
Outros arquivos JSON são substituídos em vez de mesclados.
Packs que não estão listados em priorityOrder ainda são incluídos na mesclagem mas recebem a menor prioridade.
O ResourcePackManager reconstrói automaticamente quando os pacotes mudam?
Sim. Ele monitora as fontes de pacotes suportadas para mudanças.
Quando um pacote monitorado para de mudar por 3 segundos, o ResourcePackManager o marca como estável. Uma vez que todos os pacotes monitorados estão estáveis, a remesclagem acontece imediatamente. Durante essa transição, jogadores OP online são notificados: "All resource packs are stable. Mixing and sending now."
O watchdog leva em conta a inicialização dos plugins?
Sim. O watchdog conhece os estados de inicialização dos plugins Magmacore.
- Ele espera que todos os plugins monitorados finalizem sua inicialização Magmacore antes de iniciar as verificações de estabilidade.
- Se um plugin recarregar enquanto o watchdog está em execução, o watchdog detecta a mudança de estado, pausa, reinicia todo o rastreamento de estabilidade e espera o plugin terminar a reinicialização.
- Isso previne detecções falsas de "instável" que de outra forma ocorreriam durante sequências normais de inicialização ou recarga de plugins.
Como os jogadores recebem o pacote final?
Se autoHost estiver habilitado e o pacote mesclado tiver sido enviado com sucesso, o ResourcePackManager envia o pacote hospedado automaticamente para jogadores que entram.
No Minecraft 1.20.3+, ele usa a API multi-pack para coexistir com outros pacotes enviados pelo servidor. Em versões mais antigas, ele recorre ao método de pacote único mais antigo, que substitui qualquer atribuição de pacote de recursos do servidor existente.
Se autoHost estiver desabilitado ou o pacote hospedado não estiver pronto, o plugin não envia uma URL personalizada auto-hospedada.
Posso auto-hospedar em vez de usar o auto-host integrado?
Sim.
- Defina
autoHost: false - opcionalmente defina
resourcePackReroutingpara um caminho de pasta existente relativo ao diretórioplugins - hospede o zip gerado você mesmo
O ResourcePackManager escreve o pacote mesclado em:
plugins/ResourcePackManager/output/ResourcePackManager_RSP.zip
Se resourcePackRerouting estiver definido, ele também escreve uma cópia desse zip na pasta de redirecionamento. Esse caminho de redirecionamento é resolvido relativo ao diretório plugins, e a pasta de destino deve já existir.
Há um comando para solicitar dados armazenados do host?
Sim. Use:
/rspm data_compliance_request
Se o auto-hosting tiver uma sessão remota ativa, o ResourcePackManager baixa a resposta em:
plugins/ResourcePackManager/data_compliance
Se não houver sessão remota ativa, o comando informa que não há dados remotos para solicitar.
Quais opções de configuração estão disponíveis?
As seguintes configurações estão disponíveis em plugins/ResourcePackManager/config.yml:
autoHost— se o ResourcePackManager auto-hospeda e envia o pacote mesclado (booleano, padrãotrue)priorityOrder— lista que controla quais pacotes vencem nos conflitos de arquivos (maior prioridade primeiro)resourcePackRerouting— caminho de pasta opcional (relativo aplugins) para escrever uma cópia adicional do zip mescladoforceResourcePack— se os jogadores devem ser forçados a aceitar o pacote de recursos (booleano, padrãofalse)resourcePackPrompt— a mensagem de prompt mostrada aos jogadores quando o pacote de recursos é oferecido (string, padrão"Use recommended resource pack?")bedrockConversionEnabled— se o pack Java mesclado deve ser convertido em um resource pack Bedrock para GeyserMC (booleano, padrãofalse)bedrockAutoDeployToGeyser— se o pack Bedrock e os mapeamentos devem ser copiados automaticamente para a pasta Geyser detectada (booleano, padrãotrue)bedrockGeyserFolder— caminho manual para a pasta Geyser; deixe vazio para auto-detectar (string, padrão"")
Outros plugins podem registrar seus packs via código?
Sim. O ResourcePackManager expõe uma API Java para registro programático de packs. Veja a página da API para detalhes.