NPC kit

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

NPC(비플레이어 캐릭터)는 경험에 많은 깊이를 추가할 수 있습니다.다음 NPC 모두 시각적으로 사용자 지정할 수 있으며, 행동이 수정되었습니다, 좀비/군인은 태그 시스템을 사용하여 플레이어나 다른 캐릭터를 공격하여 영역을 방어할 수 있습니다.

게임에서 NPC를 사용하려면:

  1. 다음 NPC 키트 중 하나를 선택하십시오:

    침묵하는 좀비
    >

    군인
    >

    RO-01 로봇
    >

    NP-C 9000 로봇
    >

  2. NPC의 아이템 페이지에서 녹색 가져오기 버튼을 클릭하고 거래를 확인하십시오.

  3. Roblox Studio에서 도구 상자를 열어( 보기도구 상자 )

  4. 도구 상자 재고 섹션을 선택하십시오.

  5. NPC를 찾아서 클릭하여 플레이스추가하십시오.

캐릭터 구조

각 NPC 모델에는 일반적으로 다음 개체가 포함됩니다:

개체 이름 또는 [유형]유형설명
애니메이션FolderAnimations , 예를 들어 AttackAnimation 또는 DeathAnimation 와 같은 포함.
초기 포즈Folder포즈 정보를 포함합니다.
애니메이션Script캐릭터 리그에서 애니메이션을 불러오고 재생합니다. 자세한 내용은 애니메이션을 참조하십시오.
[액세서리]Accessory모자, 무기 등 NPC의 경우 가능한 여러 개의 Accessories 중 하나
상태Script일반적으로 시간에 따라 Humanoid 건강을 재생성합니다. 이 기능을 비활성화하면 캐릭터가 건강을 재생성하지 못하게 됩니다.
인간형Humanoid관련 속성, Humanoid , Humanoid.Health , Humanoid.WalkSpeed , Humanoid.DisplayDistanceType 등을 관리합니다.
NPCScript >

이동, 공격 등의 특정 문자 행동을 정의합니다.다음 개체의 부모:

메이드 ( ModuleScript )는 사용된 리소스를 해제하는 데 유용한 클래스를 정의합니다.:

래그돌 ( ModuleScript )는 캐릭터를 느슨한 물리학에 영향을 받는 몸으로 변환하는 함수를 정의합니다(여러 개의 도우미 함수를 정의하는 RigTypes ModuleScript 를 부모로 지정함).

RbxNpc사운드Script실행, 사망 등의 캐릭터 사운드 효과와 관련된 행동을 정의하고 관리합니다.
바디 파트들BasePartMotor6D 또는 제약 개체를 통해 HumanoidRootPart나 인접 바디 부품에 연결된 다양한 캐릭터 바디 부품.자세한 내용은 BodyParts에 참조하십시오.
인간형 루트 파트 HumanoidRootPartBasePart리그의 루트로 간주되는 특별한 투명한 부품; 이것은 또한 캐릭터의 의 일부입니다.
구성Configuration다양한 동작을 조정하는 값 개체를 포함합니다. 자세한 내용은 구성을 참조하십시오.

디자인 노트

NPC 키트를 사용할 때 다음 디자인 노트를 고려하십시오:

  • NPC의 시각적 모양은 다양한 [BodyParts] 개체를 추가하거나 수정하고 개체 Accessory 를 추가하여 사용자 지정할 수 있습니다.

  • 병사, 침묵하는 좀비, NP-C 9000 로봇은 Rthro를 리그의 기반으로 사용합니다.그러나 RO-01 로봇은 추진기 부품을 상체토르소 에 연결하는 수정된 Rthro 기반을 사용하며, 이는 WeldConstraints를 사용하여 추가됩니다.이런 방식으로 간단한 조인트를 사용하면 원래 기본 리그를 변경하지 않고도 캐릭터에 추가 기하를 포함할 수 있습니다.

  • 기본 레벨NPC 애니메이션은 AnimationId 스크립트 포즈 내에서 기존 애니메이션 개체의 **** 를 수정하거나 애니메이션 폴더 내에서 수정하여 사용자 지정할 수 있습니다.이러한 변경은 본질적으로 자산 교환입니다 - 미세한 세부 사항을 변경하려면 기존 애니메이션의 사용자 지정 복사본을 만들고, 다른 조건에서 애니메이션을 재생하려면 애니메이트 또는 NPC 스크립트를 직접 편집할 수 있습니다.자세한 내용은 애니메이션을 참조하십시오.

애니메이션

NPC의 Animate 에서는 애니메이션 관련 구성을 처리하고 다음 개체를 포함합니다:

개체 이름 또는 [유형]유형설명
스케일 댐핑 퍼센트NumberValue캐릭터가 크기가 조정될 때 애니메이션 속도가 수정되는 방법을 정의(1보다 작으면 캐릭터가 크기가 조정될 때 애니메이션 재생 크기가 역방향으로 반전됩니다).
플레이 이모트BindableFunction이것은 포즈의 가정을 강제하기 위해 다른 스크립트에 의해 호출될 수 있습니다.
[포스]StringValue빈둥대기, 점프, 걷기 등의 재생 가능한 애니메이션 카테고리에 대한 참조이 개체는 어떤 수의 Animations를 부모로 설정할 수 있습니다.이 부모 Animations 는 포즈가 가정되는 동안 재생할 여러 애니메이션 중 하나를 우선시하는 무게 ( NumberValue )를 부여합니다; 일반적으로 유휴 및 춤 자세에 다양성을 추가하는 데 사용됩니다.

바디 파트들

NPC의 BodyPart 는 다양한 캐릭터 신체 부분을 나타내며 다음 개체를 포함합니다:

개체 이름 또는 [유형]유형설명
아바타 파트 스케일 유형StringValue부품의 크기를 결정하며 값은 클래식 , 비율 정상 , 또는 비율 슬림 일 수 있습니다.
원래 크기Vector3Value문자 크기가 1일 때 부품의 크기를 결정합니다.
[첨부파일]Attachment스크립트, 효과 및 개체와 같은 위치 지정 중에 사용할 수 있는 개별 부품에 대한 포인트를 정의합니다. Tool 또는 Accessory와 같은 개체는 위치 지정 중에 사용할 수 있습니다.
[Motor6D]Motor6D두 신체 부분 사이의 애니메이션된 관절. 는 애니메이션이 생성될 때 사용된 의 이름과 일치하기 위해 의존하므로 이 개체의 이름을 바꾸지 않도록 주의하십시오.
[공동]WeldConstraint , Constraint , JointInstance두 신체 부분 사이의 비애니메이션된 관절.
[사운드]Sound머리나 HumanoidRootPart에 일반적으로 발견; 스크립트 RbxNpcSounds에 의해 제어되는 장비 내부의 소리를 재생합니다.

구성

각 NPC에는 값 개체의 컨테이너 역할을 하는 계층 내 Configuration 개체가 포함되어 있습니다.이들은 NPC 스크립트에서 다양한 동작을 조정하는 데 사용됩니다.다르게 지정되지 않으면, 이는 모든 문자에 적용됩니다.

개체 이름 또는 [유형]유형설명
파괴OnDeathBoolValueNPC가 죽은 후 짧은 시간 내에 전체가 파괴되도록 합니다. 래그돌이 지속되도록 이 기능을 비활성화하십시오.
순찰 활성화BoolValueNPC가 시작 위치 주변의 영역을 방황하게 합니다.
순찰 반경NumberValueNPC가 시작 위치에서 방황할 수 있는 최대 거리를 정의하며, PatrolEnabled 가 참이라고 가정합니다.
래그돌 활성화BoolValueNPC가 부서지는 대신 쇠약해지도록 만듭니다.
공격 피해NumberValueNPC에 의해 공격받을 때 피해자가 얼마나 많은 체력을 잃는지 정의합니다. 이는 좀비와 병사 키트에만 적용됩니다.
공격 지연NumberValue사격 사이의 최소 시간을 정의합니다. 이는 병사 키트에만 적용됩니다.
공격 모드NumberValue태극 시스템에 따라 병사가 공격할 내용을 지정합니다. 이는 병사 키트에만 적용됩니다.
공격 반경NumberValueNPC가 공격을 시도하기 전에 잠재적 희생자에게서 최대 거리를 정의합니다. 이는 좀비와 병사 키트에만 적용됩니다.
클립 용량NumberValue재장전하기 전에 병사가 발사할 수 있는 탄약 수를 정의합니다. 병사 키트에만 적용됩니다.
재장전 지연NumberValue병사의 무기 클립이 재장전될 때까지 지나야 하는 시간을 정의합니다. 이는 병사 키트에만 적용됩니다.

태그 할당

NPC 스크립트는 다른 캐릭터와 플레이어에 대한 공격을 관리하기 위해 태그를 사용합니다.다음 표의 다양한 태그는 다음과 같이 할당될 수 있습니다:

  • 다른 NPC에 태그를 할당하려면 속성의 태그 섹션이나 Studio의 태그 편집기를 사용하여 속성의 최상위 레벨 에 할당하거나, 태그 섹션을 사용하여 다른 NPC에 태그를 할당합니다.

  • 태그를 Player 캐릭터에 할당하려면 Script 호출로 스타터캐릭터스크립트CollectionService:AddTag() 를 추가할 수 있습니다. 예를 들어:


    local CollectionService = game:GetService("CollectionService")
    CollectionService:AddTag(script.Parent, "SoldierEnemy")
태그목적
군인 적군 또는 군인 친구

공격 모드 구성 값에 따라 군인이 다른 캐릭터를 공격해야 하는지 여부를 결정합니다. AttackMode 구성 값은 다음과 같습니다.병사의 공격 모드1 설정되면 다른 캐릭터는 병사 적군 으로 태그되어 공격 가능성이 고려되어야 합니다.병사의 공격 모드 가 으로 설정되면, 병사 친구 태그가 없는 모든 개체가 공격 가능한 것으로 간주됩니다.병사의 공격 모드3 설정되면 이 태그는 완전히 무시되고 병사는 모든 캐릭터를 공격합니다.

좀비 친구 이 태그는 좀비가 캐릭터를 공격하지 않아야 하는지 여부를 결정하는 데 사용됩니다.적용되면 좀비는 태그된 캐릭터에 순종적으로 됩니다.