Custom Models
A partir do EliteMobs 7.3.12, Custom Models foram adicionados ao EliteMobs através do Model Engine e FreeMineCraftModels.
Prefácio
Do ponto de vista do EliteMobs, o sistema de Custom Model é muito simples, já que a única coisa que os administradores precisam fazer é adicionar uma linha ao arquivo de configuração de um NPC ou Custom Boss informando qual Custom Model usar. No entanto, é necessário seguir os passos corretos com o Model Engine e Minecraft para que esse sistema funcione completamente, e esses não são tão fáceis de entender.
Este guia irá detalhar a interface com o Model Engine e Minecraft. Ele não vai ensinar como usar o Blockbench para criar bosses personalizados, nem vai detalhar como o Model Engine funciona. Já existem muitos guias sobre como fazer isso em outros lugares, e se você quer aprender mais sobre esses sistemas, é melhor consultar diretamente a documentação deles.
FreeMineCraft Models
Se você quiser aprender como pode usar o FMM para fazer seus modelos funcionarem, você pode conferir [esta](../Free Minecraft Models/info.md) página wiki para aprender mais.
Requisitos mínimos
EliteMobs 7.3.12 ou posterior, Model Engine R2.2.0* ou posterior, Blockbench**, usando Minecraft Resource Packs.
* Este plugin pode ter outras dependências. Verifique a documentação deles. ** Necessário para criar e editar Custom Models. Não é necessário se você está apenas procurando instalar conteúdo sem modificá-lo.
Configurando manualmente um Custom Model
Nota: Este guia assume que você já tem um Custom Model válido. Eles vêm em formatos de arquivo Blockbench (.bbmodel).
EliteMobs é capaz de usar Custom Models para NPCs e Custom Bosses. O processo para fazer isso é o mesmo para ambos, e é o seguinte:
Passo 1. Configurando o config do EliteMobs
Vá ao arquivo de configuração do Custom Boss ou NPC que você quer modificar e adicione a seguinte linha:
customModel: modelname
Substitua modelname pelo nome do seu modelo. O nome é o nome do arquivo de Custom Model que você está usando. Como exemplo, o arquivo de Custom Model do Test Boss é showcase_boss.bbmodel. Portanto, a opção de configuração deve ser
customModel: showcase_boss
E isso é tudo para o EliteMobs! Agora fica um pouco mais complicado.
Passo 2. Gerando os dados do Model Engine
Nota: Em caso de dúvida ou problemas, consulte a wiki do Model Engine aqui.
- Coloque seu arquivo de Custom Model do Blockbench (
.bbmodel) no diretório(yourServer)/plugins/ModelEngine/blueprints. - Execute o comando
/meg reload. Se tudo funcionou corretamente, você deve receber uma mensagem dizendo[Model Engine] X models loaded, ondexé a quantidade de modelos que você registrou.
Passo 3. Gerando o Resource Pack
Nota: agora existe uma forma alternativa e mais simples de fazer este passo neste link. No entanto, é um pouco menos flexível do que o que está listado aqui.
Esta é possivelmente a parte mais complicada se você está procurando fazer seu servidor gerenciar os downloads. Tente verificar se o sistema funciona quando você tem o resource pack no seu cliente antes de procurar distribuí-lo automaticamente!
- Vá ao diretório
(yourServer)/plugins/ModelEngine/resource packe crie um resource pack usando esses dados ou adicione a pastaassetsde lá aosassetsdo seu resource pack- Se você está criando um novo resource pack, você pode colocar os arquivos em
resource packem um arquivo zipado, e esse será um resource pack válido que você pode distribuir. Mais informações. - Se você já tem um resource pack, certifique-se de não sobrescrever acidentalmente modelos existentes. Mais informações.
- Se você está criando um novo resource pack, você pode colocar os arquivos em
- Distribua seu resource pack para seus jogadores. Apenas jogadores que têm o resource pack poderão ver os Custom Models, e parecerá muito estranho e quebrado para todos os outros. Se você pretende fazer uso pesado destes, você pode querer forçar o uso do resource pack.
- (Opcional) Para permitir que os jogadores baixem um resource pack no login, você precisará hospedar o arquivo em algum lugar online e alterar o campo
resource-pack=do server.properties para apontar para esse endereço.* - (Opcional) Se você está modificando os resource packs, você vai querer usar a opção
resource-pack-sha1=para que o servidor possa verificar se o resource pack do jogador precisa ser atualizado. Para gerar este valor, envie seu resource pack para http://onlinemd5.com/ e certifique-se de escolher a opção SHA1. Você terá que fazer isso toda vez que atualizar seu Resource Pack, ou seus usuários não receberão a atualização.* - (Opcional) Para forçar os jogadores a usar resource packs, use a opção
require-resource-pack=trueno server.properties.*
- (Opcional) Para permitir que os jogadores baixem um resource pack no login, você precisará hospedar o arquivo em algum lugar online e alterar o campo
Se você modificou o server.properties, você precisará reiniciar!
* Nota: Existem muitos guias online que podem ajudá-lo a fazer isso funcionar se essas instruções não estiverem ajudando você.
Mesclar resource packs
Se você precisar mesclar seus resource packs, você pode fazer isso manualmente. Mas recomendamos usar uma ferramenta online como merge.elmakers para mesclar seus resource packs.
Passo 4. Esperar que funcione
Assumindo que tudo foi feito corretamente, você agora deve ser capaz de ver o Custom Model no seu boss ou NPC. Você pode gerá-los através dos comandos:
- Custom Boss:
/em spawncustom filename.yml - NPC:
/em spawnnpc filename.yml
Você pode então removê-los através do comando /em remove.
Criando e adaptando Custom Models para EliteMobs
EliteMobs é capaz de usar qualquer modelo considerado válido pelo Model Engine, o que significa que não há muito que não possa ser feito com ele.
No entanto, quando se trata de animações, o uso de nomes específicos para as animações é necessário para garantir que os bosses possam usar as animações.
Esses nomes de animação são aqueles definidos no Blockbench na aba de animações. Você pode renomeá-los a qualquer momento, o que significa que você pode adaptar quaisquer modelos existentes para funcionar com EliteMobs.
Animações
Por favor, note que esta seção ainda está em expansão, pois este sistema ainda é muito recente. Mais será adicionado à medida que as solicitações de recursos chegarem.
idle
idle é o nome de animação correto para entidades que não estão em combate e não estão se movendo. EliteMobs não modifica o sistema de animação idle padrão que o Model Engine usa.
walk
walk é o nome de animação correto para entidades que estão se movendo. EliteMobs não modifica o sistema de animação idle padrão que o Model Engine usa.
attack
Existem três tipos de animações de ataque:
attack
attack é o nome de animação genérico correto para quando um boss ataca.
attack_melee
attack_melee é o nome de animação correto para ataques feitos quando um Custom Boss ataca uma entidade usando um ataque corpo a corpo vanilla do Minecraft. Substitui attack . Por favor, note que a animação é reproduzida após o dano ser causado. Infelizmente, esta é uma limitação por enquanto. Portanto, tente fazer a animação muito rápida.
attack_ranged
attack_ranged é o nome de animação correto para ataques feitos quando um Custom Boss gera uma entidade de projétil. Substitui attack. Por favor, note que a animação é reproduzida após o projétil ser disparado. Infelizmente, esta é uma limitação por enquanto. Portanto, tente fazer a animação muito rápida.
damaged
damaged é o nome de animação correto para a animação de dano que um Custom Boss reproduz quando é danificado.
death
death é o nome de animação correto para animação de morte. EliteMobs não modifica o sistema de animação idle padrão que o Model Engine usa.
powers
Nota: este segmento ainda está em desenvolvimento. A seguir estão as características conforme planejadas.
Todo poder no EliteMobs pode ter uma animação atribuída a ele. A animação sempre começa quando o poder é acionado, e nenhum gatilho adicional é atualmente fornecido durante o uso do poder. Alguns poderes, como as invulnerabilidades, não farão nada, pois não têm gatilhos e são apenas propriedades passivas dos bosses.
Para atribuir uma animação a um poder, a animação deve ter o mesmo nome do arquivo de poder do elitemobs.
Como exemplo, para adicionar uma animação ao poder zombie necronomicon, a animação deve ser chamada zombie_necronomicon.yml . Ela começará a ser reproduzida assim que o poder for acionado e terminará quando a animação terminar, se não estiver configurada para loop, ou quando o poder terminar.
Importando Custom Models de dungeons
Passo 1. Importação normal
Ao importar uma pasta zipada de dungeon packager que contém Custom Models, os Custom Models são automaticamente movidos para (yourServer)/plugins/ModelEngine/blueprints e o Model Engine recarrega automaticamente para gerar o resource pack relevante e arquivos do Model Engine.
Passo 2. Gerando o Resource Pack
Se você estiver online quando recarregar o EliteMobs para importar arquivos, o EliteMobs postará automaticamente uma mensagem no chat na qual você pode clicar para gerar o resource pack do EliteMobs. Alternativamente, você pode executar o comando /em generateresourcepack para gerá-lo.
Executar este comando copia todos os arquivos de resource pack para a pasta exports do EliteMobs de forma não destrutiva. Isso significa que se você descompactar um resource pack na pasta exports usando o nome de resource pack elitemobs_resource_pack para sua pasta de resource pack, o EliteMobs não excluirá nenhum dos arquivos lá, a menos que um arquivo com o mesmo nome seja obtido do ModelEngine (exceto pack.meta e pack.png). Dessa forma, você pode atualizar seu resource pack sem perder os modelos que você colocou anteriormente nele.
Finalmente, o EliteMobs compacta o resource pack na pasta exports, e este arquivo está pronto para distribuição
Depois disso, o EliteMobs também sugere atualizar o código SHA1 para seu resource pack.
Passo 2.5. Atualizando o SHA1
O código SHA1 no arquivo server.properties é usado para informar aos clientes se seu resource pack está desatualizado e os faz atualizá-lo se necessário. Este código pode ser gerado através do EliteMobs clicando na opção no chat que aparece após o passo 2, ou executando o comando /em updateresourcepack
Tenha em mente que isso atualiza seu arquivo server.properties com o código SHA1 correto para o resource pack zipado na pasta exports. Se você excluí-lo ou modificar o arquivo zipado após executar o comando, não funcionará.
Passo 3. Tornar o arquivo publicamente disponível
Hospede o arquivo em um local de sua escolha. Algumas pessoas usam Google Drive ou Dropbox para isso. É melhor hospedar este arquivo você mesmo, se você tiver a capacidade de fazê-lo. Alguns plugins por aí também podem ajudá-lo a hospedá-lo diretamente do seu servidor Minecraft. Se você encontrar um plugin assim que funcione, avise o MagmaGuy no Discord e esta postagem será atualizada com essa informação.