Kit de NPC

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Los NPC (no personajes jugadores) pueden añadir mucha profundidad a una experiencia. Todos los siguientes NPCs se pueden personalizar visualmente, su comportamiento modificado y los zombies/soldados incluso pueden defender una área atacando a los jugadores o a otros personajes usando un sistema de etiquetado para establecer el comportamiento.

Para usar un NPC en tu juego:

  1. Seleccione uno de los siguientes kits NPC:

    Zombie salivando
    Soldados
    RO-01 Robots
    Robots NP-C 9000
  2. En la página de elementos del PNJ, haz clic en el botón verde Obtener y confirma la transacción.

  3. En Roblox Studio, abra la Caja de herramientas ( VerCaja de herramientas ).

  4. Seleccione su caja de herramientas Inventario sección.

  5. Encuentra el NPC y haz clic en él para agregarlo al lugar.

Estructura de personaje

Cada modelo de NPC típico contiene los siguientes objetos:

Nombre de objeto o [Tipo]TipoDescripción
AnimacionesFolderContiene Animations, como una AttackAnimation o DeathAnimation.
Poses inicialesFolderContiene información de posado.
AnimarScriptCarga y juega animaciones en el personaje. See Animar for more details.
[Accesorio]AccessoryUno de posibles múltiples Accessories para el NPC como sombreros, armas, etc.
SaludScriptTipualmente regenera la salud de Humanoid con el tiempo. Desactivar esto evitará que el personaje genere salud.
HumanoideHumanoidGestiona propiedades relacionadas, como Humanoid, Humanoid.Health, Humanoid.WalkSpeed, etc.
PNJScript

Defines comportamientos específicos de personajes como roaming, atacar, etc. Padres los siguientes objetos:

Maid ( ModuleScript ) define una clase útil para liberar recursos usados.

<

RbxNpcSoundsScriptDefine y gestiona el comportamiento relacionado con los efectos de sonido del personaje, como correr, morir, etc.
Partes del cuerpoBasePartVarias partes del cuerpo del personaje se pueden unir a la parte superior del motor o a las partes del cuerpo vecinas a través de objetos de motor o objetos de limitación. Consulte BodyParts para obtener más información.
Parte de raíz humanoideBasePartUna parte invisible especial que se considera la raíz del rig; esto también es la PrimaryPart del personaje's Model .
ConfiguraciónConfigurationContiene objetos de valor que ajustan varios comportamientos. Vea Configuración para más detalles.

Notas de diseño

Al usar el kit NPC, tenga en cuenta las siguientes notas de diseño:

  • La apariencia visual de un NPC se puede personalizar agregando/modificando varios objetos [BodyPart] y agregando objetos Accessory .

  • Los Soldados, Drooling Zombie y NP-C 9000 Robots usan Rthro como la base de su rig. Sin embargo, los RO-01 Robots usan una base de Rthro modificada que agrega partes de impulsor conectadas a la Base del torso superior usando WeldConstraints . Usando la geometría simple en este modo, puede incluir geometría adicional para sus personajes sin cambiar la base

  • A nivel básico, las animaciones de NPC se pueden personalizar modificando el AnimationId de los objetos de animación existentes dentro de los posibles de Animar script, o aquellos dentro de la carpeta Animaciones . Tal cambio es esencialmente

Animar

El Animate Script en el NPC Model manejas animación relacionadas configuraciones y contiene los siguientes objetos:

Nombre de objeto o [Tipo]TipoDescripción
Escala de amortiguación porcentajeNumberValueDefine cómo se modifican las velocidades de animación a medida que el personaje está escalado (menos de 1 implica que la reproducción de animación se realiza al revés como el personaje está escalado).
Reproducir emoteBindableFunctionEsto se puede invocar por otros scripts para obligar a la asunción de una postura.
[Postura]StringValueReferencia a una categoría de animación jugable, como inactiva, salto, caminata, etc. Este objeto puede padre cualquier número de Animations . Estos padres 5> Class.Animation|Animaciones5> padres un 8> Weight8> ( 1> Class.NumberValue 1> ) que prioriza una de las animaciones para jugar mientras la postura se

Partes del cuerpo

El BodyPart BasePart en el NPC Model representa las varias partes del cuerpo del personaje y contiene los siguientes objetos:

Nombre de objeto o [Tipo]TipoDescripción
Tipo de escalado de avatarStringValueDetermina cómo se escalará la parte; los valores pueden ser Clásico , ProporcionesNormales o ProporcionesSlender .
Tamaño originalVector3ValueDetermina el tamaño de la parte cuando la escala de personaje es 1.
[Accesorio]AttachmentDefine un punto relativo a la parte individual que se utiliza para los scripts, efectos y objetos, como un Tool o Accessory durante la posición.
[Motor6D]Motor6DUna articulación animada entre dos partes del cuerpo. Tenga en cuenta que Animator depende del nombre de Motor6Ds para ser consistente con el de Motor6Ds usado cuando se creó una animación, por lo que evite renombrar este objeto.
[Junto]WeldConstraint , Constraint , JointInstanceUnión no animada entre dos partes del cuerpo.
[Sonido]SoundComúnmente encontrado en la cabeza o HumanoidRootPart ; Reproduce sonidos desde dentro del rig como controlado por el script RbxNpcSounds .

Configuración

Cada NPC incluye un objeto Configuration dentro de su jerarquía que actúa como un contenedor de objetos de valor. Estos se usan por el script NPC para ajustar varios comportamientos. A menos que se especifique de otra manera, esto se aplica a todos los personajes.

Nombre de objeto o [Tipo]TipoDescripción
Destruir en la muerteBoolValueCausa que todo el NPC sea destruido poco después de morir. Desactivar esto para que los muñecos de peluche sean persistentes.
PatrullaActivadaBoolValueCausa que el NPC se aleje en un área alrededor de su posición de inicio.
Radio de patrullaNumberValueDefine la distancia máxima que un NPC se alejará de su posición de inicio, asumiendo que PatrulladoActivado es cierto.
RagdollHabilitadoBoolValueCausa que el NPC se quede paralítico cuando muera, en lugar de romperse.
Daño de ataqueNumberValueDefine la cantidad de salud que se pierde cuando una víctima es atacada por el PNJ. Esto solo se aplica a los kits Zombie y Soldado.
Atraso de ataqueNumberValueDefine el número mínimo de segundos entre disparos. Esto solo se aplica a kits de soldados.
Modo de ataqueNumberValueEsto especifica qué atacará el soldado, basado en el sistema de etiquetado >. Esto solo se aplica a kits de soldado.
Radio de ataqueNumberValueDefine la distancia máxima que el NPC debe estar de una víctima potencial antes de intentar atacar. Esto solo se aplica a los kits Zombie y Soldado.
Capacidad de clipNumberValueDefine la cantidad de balas que el soldado puede disparar antes de necesitar recargar. Esto solo se aplica a kits de soldado.
Retraso de recargaNumberValueDefine la cantidad de segundos que deben pasar antes de que se recargue el clip del arma del soldado. Esto solo se aplica a kits de soldado.

Asignando etiquetas

El NPC script usa CollectionService etiquetas para administrar la agresión hacia otros personajes y jugadores. Varios tags de la siguiente tabla se pueden asignar como sigue:

  • Para asignarle etiquetas a otro PNJ, asígnelas al PNJ's top-level Model using the etiquetas section of its properties, or Studio's Editor de etiquetas .

  • Para asignar una etiqueta a un personaje Player, puedes agregar un Script a StartercharacterScripts con una llamada 1> Class.CollectionService:AddTag()1> . Por ejemplo:


    local CollectionService = game:GetService("CollectionService")
    CollectionService:AddTag(script.Parent, "SoldierEnemy")
EtiquetaPropósito
SoldadoEnemigo o SoldadoAmigo

Determina si un soldado, según su configuración de Modo de ataque , debe atacar a otro personaje. Cuando el sold

ZombieAmigo Esta etiqueta es usada por el zombie para determinar si debe atacar a un personaje. Cuando se aplica, el zombie se vuelve dócil hacia el personaje etiquetado.