NPCs (não personagens) podem adicionar muita profundidade a uma experiência. Todos os seguintes NPCs podem ser personalizados visualmente, seu comportamento modificado e os zumbis/soldados podem até mesmo defender uma área atacando jogadores ou outros personagens usando um sistema de etiqueta para definir o comportamento.
Para usar um NPC em seu jogo:
Selecione um dos seguintes kits NPC:
Na página de itens do NPC, clique no botão verde Obter e confirme a transação.
In Roblox Studio, open the Caixa de ferramentas ( Ver → Caixa de ferramentas ).
Selecione sua caixa de ferramentas Inventário seção.
Localize o NPC e clique nele para adicioná-lo ao local.
Estrutura de Personagem
Cada modelo de NPC geralmente contém os seguintes objetos:
Nome do Objeto ou [Tipo] | Tipo | Descrição |
---|---|---|
Animações | Folder | Contém Animations, como uma AttackAnimation ou DeathAnimation. |
Poses Iniciais | Folder | Contém informações de posicionamento. |
Animação de | Script | Carrega e toca animações no personagem. Veja Animação de Personagem para mais detalhes. |
[Acessório] | Accessory | Um dos possíveis múltiplos Accessories para o NPC, como chapéus, armas, etc. |
Saúde | Script | Geralmente regenera a saúde Humanoid ao longo do tempo. Desativar isso impedirá que o personagem regenere saúde. |
Humanoide | Humanoid | Gere propriedades relacionadas, como Humanoid, Humanoid.Health, Humanoid.WalkSpeed, etc. |
NPC | Script | Defines comportamentos específicos de personagens, como roaming, ataque, etc. Pais os seguintes objetos:. Maid ( ModuleScript ) define uma classe útil para liberar recursos usados. |
Sons RbxNpc | Script | Define e gerencia comportamentos relacionados a efeitos sonoros de personagens, como correr, morrer, etc. |
Peças do Corpo | BasePart | Várias peças do corpo de personagem anexadas à HumanoidRootPart ou peças do corpo vizinho através de objetos de motor ou Objetos de restrição. Veja Peças do Corpo para mais detalhes. |
Parte Humanoide | BasePart | Uma parte invisível especial que é considerada a raiz do rig / plataforma / equipamento; este também é o PrimaryPart do personagem's Model . |
Configuração | Configuration | Contém objetos de valor que ajustam vários comportamentos. Veja Configuração para mais detalhes. |
Notas de Design
Ao usar o kit NPC, lembre-se das seguintes notas de design:
A aparência visual de um NPC pode ser personalizada adicionando/modificando vários objetos [BodyPart] e adicionando objetos Accessory.
Os Soldados, Drooling Zombie e NP-C 9000 Robots usam Rthro como a base de seu rig / plataforma / equipamento. No entanto, os RO-01 Robots usam uma base de Rthro modificada que adiciona peças de impulsor conectadas ao UpperTorso usando WeldConstraints . Usar juntas simples nesta maneira permite que você inclua geometrias extras para seus personagens sem
Em um nível básico, as animações de NPC podem ser personalizadas modificando o AnimationId de objetos de animação existentes dentro das posições de script Animate ou Animations . Tais alterações são essencialmente uma troca
Animar
O Animate Script no NPC Model alças animação relacionadas e contém os seguintes objetos:
Nome do Objeto ou [Tipo] | Tipo | Descrição |
---|---|---|
ScaleDampingPercente | NumberValue | Define como as velocidades de animação são modificadas à medida que o personagem é escalado (menos de 1 implica que a reprodução de animação é invertida como um personagem é escalado). |
Emote de Jogo | BindableFunction | Isso pode ser invocado por outros scripts para forçar a suposição de uma postura. |
[Pose] | StringValue | Referência a uma categoria de animação jogável, como inatividade, andar, pular, etc. Este objeto pode ser pai de qualquer número de Animations . Estes Animations pais são pais de um 2> Weight2> ( 5> Class.NumberValue 5> ) que prioriza uma das vá |
Peças do Corpo
O BodyPart BasePart no NPC Model representa as várias partes do corpo do personagem e contém os seguintes objetos:
Nome do Objeto ou [Tipo] | Tipo | Descrição |
---|---|---|
Tipo de escala de avatar | StringValue | Determina como a peça será escalada; valores podem ser Clássico , ProporçõesNormais ou ProporçõesSlender . |
Tamanho original | Vector3Value | Determina o tamanho da peça quando a escala de personagem é 1. |
[Anexo] | Attachment | Define um ponto relativo à peça individual que scripts, efeitos e objetos, como um Tool ou Accessory, podem utilizar durante a posição. |
[Motor6D] | Motor6D | Uma jointura animada entre duas peças do corpo. Note que Animator depende do nome de Motor6Ds para ser consistente com o da Motor6Ds usada quando uma animação foi criada, então evite renomear este Objeto. |
[Junto] | WeldConstraint , Constraint , JointInstance | Uma joint não animada entre duas peças do corpo. |
[Som] | Sound | Comumente encontrado na cabeça ou HumanoidRootPart ; toca sons dentro do rig como controlado pelo script RbxNpcSounds. |
Configuração
Cada NPC inclui um objeto Configuration dentro de sua hierarquia que atua como um contêiner de objetos de valor. Estes são usados pelo script NPC para ajustar vários comportamentos. A menos que seja especificado de outra forma, estes se aplicam a todos os personagens.
Nome do Objeto ou [Tipo] | Tipo | Descrição |
---|---|---|
Destruição na Morte | BoolValue | Causa o dano ao NPC inteiro pouco depois dele morrer. Desabilite isso para que os ragdolls persistam. |
PatrulhaAtivada | BoolValue | Causa o NPC a se distrair em uma área ao redor de sua posição inicial. |
Rada de Patrulha | NumberValue | Define a distância máxima que um NPC vai se aleatóriamente mover da sua posição de partida, assumindo que PatrolEnabled está verdadeiro. |
RagdollAtivado | BoolValue | Faz com que o NPC fique limpo quando morre, em vez de se separar. |
Dano de Ataque | NumberValue | Define quanta saúde é perdida por uma vítima quando atacada pelo NPC. Isso se aplica apenas a kits Zumbi e Soldado. |
Atraso de Ataque | NumberValue | Define o número mínimo de segundos entre os tiros. Isso se aplica apenas a kits de Soldado. |
Modo de Ataque | NumberValue | Specifies what the soldier will attack, based on the sistema de marcação de títulos. This applies for Soldier kits only. |
Raio de Ataque | NumberValue | Define a distância máxima que o NPC deve estar de uma vítima potencial antes de tentar atacar. Isso se aplica a kits Zumbi e Soldado apenas. |
Capacidade de Clip | NumberValue | Define o número de balas que o soldado pode atirar antes de precisar recarregar. Isso se aplica apenas a kits de Soldado. |
Atraso de Recarregamento | NumberValue | Define quantos segundos devem passar antes que o clip da arma do soldado seja recarregado. Isso se aplica apenas a kits de Soldado. |
Atribuindo Tags
O script NPC usa CollectionService tags para gerenciar a agressão para outros personagens e jogadores. Várias tags da tabela a seguir podem ser atribuídas da seguinte forma:
Para atribuir uma ou mais etiquetas a outro NPC, atribua-as ao nível superior dele usando a seção Model da propriedade ou o Editor de Tag do Studio.
Rótulo | Propósito |
---|---|
SoldadoInimigo ou SoldadoAmigo | Determina se um soldado, com base na sua configuração AttackMode , deve atacar outro personagem. Quando a configura |
ZombieFriend | Esta etiqueta é usada pelo zumbi para determinar se ele não deve atacar um personagem. Quando aplicada, o zumbi se torna dócil para o personagem atacado. |