Bộ công cụ NPC

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

NPCs (nhân vật không phải người chơi) có thể thêm chiều sâu cho một trải nghiệm. Tất cả các NPC sau đây có thể được tùy chỉnh về mặt hình ảnh, hành vi có thể được sửa đổi, và zombie/lính có thể thậm chí tự vệ một khu vực bằng cách tấn công người chơi hoặc các nhân vật khác thông qua hệ thống thẻ để thiết lập hành vi.

Để sử dụng một NPC trong trò chơi của bạn:

  1. Chọn một trong các bộ công cụ NPC sau:

    Zombie Nhễ nhại
    Lính
    Các Robot RO-01
    Các Robot NP-C 9000
  2. Trên trang sản phẩm của NPC, nhấn nút xanh Lấy và xác nhận giao dịch.

  3. Trong Studio, mở Toolbox.

  4. Chọn phần Kho trong toolbox của bạn.

  5. Tìm NPC và nhấn vào nó để thêm vào nơi đặt.

Cấu trúc nhân vật

Mỗi mô hình NPC thường chứa các đối tượng sau:

Tên đối tượng hoặc [Loại]LoạiMô tả
AnimationsFolderChứa Animations, chẳng hạn như AttackAnimation hoặc DeathAnimation.
Initial PosesFolderChứa thông tin về tạo dáng.
AnimateScriptTải và phát hoạt ảnh trên rig của nhân vật. Xem Animate để biết thêm chi tiết.
[Accessory]AccessoryMột trong số nhiều Accessories có thể có cho NPC như mũ, vũ khí, v.v.
HealthScriptThường phục hồi Humanoid sức khỏe theo thời gian. Tắt cái này sẽ ngăn nhân vật không phục hồi sức khỏe.
HumanoidHumanoidQuản lý các thuộc tính liên quan đến Humanoid, chẳng hạn như Humanoid.Health, Humanoid.WalkSpeed, Humanoid.DisplayDistanceType, v.v.
NPCScript

Xác định các hành vi cụ thể của nhân vật như đi lang thang, tấn công, v.v. Làm cha cho các đối tượng sau:

Maid (ModuleScript) định nghĩa một lớp hữu ích trong việc giải phóng tài nguyên đã sử dụng.

Ragdoll (ModuleScript) xác định một chức năng biến nhân vật thành một cơ thể bị ảnh hưởng bởi vật lý (làm cha cho một RigTypes ModuleScript định nghĩa một số chức năng trợ giúp).

RbxNpcSoundsScriptXác định và quản lý hành vi liên quan đến hiệu ứng âm thanh của nhân vật như chạy, chết, v.v.
BodyPartsBasePartCác bộ phận thân thể khác nhau của nhân vật được gắn với HumanoidRootPart hoặc các bộ phận thân cận thông qua các đối tượng Motor6D hoặc hạn chế. Xem BodyParts để biết thêm chi tiết.
HumanoidRootPartBasePartMột phần vô hình đặc biệt được coi là gốc của rig; đây cũng là PrimaryPart của Model của nhân vật.
ConfigurationConfigurationChứa các đối tượng giá trị mà tinh chỉnh các hành vi khác nhau. Xem Configuration để biết thêm chi tiết.

Ghi chú thiết kế

Khi sử dụng bộ công cụ NPC, hãy ghi nhớ các ghi chú thiết kế sau:

  • Hình ảnh bên ngoài của một NPC có thể được tùy chỉnh bằng cách thêm/sửa đổi các đối tượng [BodyParts] khác nhau và bằng cách thêm các đối tượng Accessory.

  • Các Lính, Zombie Nhễ nhãi và Robot NP-C 9000 đều sử dụng Rthro làm cơ sở cho rig của chúng. Tuy nhiên, các Robot RO-01 sử dụng một cơ sở Rthro đã được chỉnh sửa thêm các bộ phận thruster kết nối với UpperTorso thông qua WeldConstraints. Việc sử dụng các khớp đơn giản theo cách này cho phép bạn bao gồm thêm hình học cho nhân vật của bạn mà không làm thay đổi rig cơ sở ban đầu.

  • Ở mức cơ bản, các hoạt ảnh của NPC có thể được tùy chỉnh bằng cách sửa đổi AnimationId của các đối tượng Animation hiện có trong tạo dáng Animate, hoặc các đối tượng trong thư mục Animations. Một sự thay đổi như vậy về cơ bản là một sự hoán đổi tài sản - để thay đổi các chi tiết tinh vi hơn, bạn có thể tạo các bản sao tùy chỉnh của các hoạt ảnh hiện có, và để phát hoạt ảnh dưới các điều kiện khác nhau, bạn có thể chỉnh sửa trực tiếp các kịch bản Animate hoặc NPC. Để biết thêm thông tin, xem Animation.

Animate

Kịch bản Animate Script trong mô hình NPC Model xử lý các cấu hình liên quan đến hoạt ảnh và chứa các đối tượng sau:

Tên đối tượng hoặc [Loại]LoạiMô tả
ScaleDampeningPercentNumberValueĐịnh nghĩa cách tốc độ hoạt ảnh được điều chỉnh khi nhân vật được thay đổi kích thước (nhỏ hơn 1 có nghĩa là hoạt ảnh sẽ phát ngược lại khi nhân vật được thay đổi kích thước).
PlayEmoteBindableFunctionĐiều này có thể được gọi bởi các kịch bản khác để buộc thực hiện một tư thế.
[Pose]StringValueTham chiếu đến một danh mục hoạt ảnh có thể phát như đứng yên, nhảy, đi bộ, v.v. Đối tượng này có thể làm cha cho bất kỳ số lượng nào của Animations.

Các Animations này làm cha cho một Weight (NumberValue) mà ưu tiên một trong những hoạt ảnh nhiều diện để phát trong khi tư thế đang được thực hiện; thường được sử dụng để thêm sự đa dạng vào các tư thế đứng yên và nhảy múa.

BodyParts

Bộ phận cơ thể BasePart trong mô hình NPC Model đại diện cho các bộ phận cơ thể của nhân vật và chứa các đối tượng sau:

Tên đối tượng hoặc [Loại]LoạiMô tả
AvatarPartScaleTypeStringValueXác định cách mà bộ phận sẽ được thay đổi kích thước; các giá trị có thể là Classic, ProportionsNormal, hoặc ProportionsSlender.
OriginalSizeVector3ValueXác định kích thước của bộ phận khi tỉ lệ nhân vật là 1.
[Attachment]AttachmentXác định một điểm tương đối với bộ phận riêng lẻ mà các kịch bản, hiệu ứng và các đối tượng như Tool hoặc Accessory có thể sử dụng trong việc định vị.
[Motor6D]Motor6DMột khớp động giữa hai bộ phận cơ thể. Chú ý rằng Animator phụ thuộc vào tên của Motor6Ds phải nhất quán với tên của Motor6Ds được sử dụng khi một hoạt ảnh được tạo, vì vậy hãy tránh đổi tên đối tượng này.
[Joint]WeldConstraint, Constraint, JointInstance Một khớp không động giữa hai bộ phận cơ thể.
[Sound]SoundThường được tìm thấy trong đầu hoặc HumanoidRootPart; phát ra âm thanh từ trong rig được kiểm soát bởi kịch bản RbxNpcSounds.

Configuration

Mỗi NPC đều bao gồm một đối tượng Configuration trong cấu trúc của nó, hoạt động như một bộ chứa các đối tượng giá trị. Những đối tượng này được sử dụng bởi kịch bản NPC để điều chỉnh các hành vi khác nhau. Nếu không có gì chỉ định khác, các điều này áp dụng cho tất cả các nhân vật.

Tên đối tượng hoặc [Loại]LoạiMô tả
DestroyOnDeathBoolValueKhiến toàn bộ NPC bị tiêu hủy ngay sau khi nó chết. Tắt cái này để các ragdoll vẫn tồn tại.
PatrolEnabledBoolValueKhiến NPC di chuyển quanh khu vực xung quanh vị trí bắt đầu của nó.
PatrolRadiusNumberValueXác định khoảng cách tối đa mà một NPC sẽ di chuyển từ vị trí bắt đầu, giả sử PatrolEnabled là true.
RagdollEnabledBoolValueKhiến NPC trở nên mềm yếu khi nó chết, thay vì bị vỡ ra.
AttackDamageNumberValueXác định mức sức khỏe bị mất bởi nạn nhân khi bị tấn công bởi NPC. Điều này chỉ áp dụng cho bộ Zombie và Lính.
AttackDelayNumberValueXác định số giây tối thiểu giữa các lần bắn. Điều này chỉ áp dụng cho bộ Lính.
AttackModeNumberValueXác định đối tượng mà quân lính sẽ tấn công, dựa trên hệ thống gán thẻ. Điều này chỉ áp dụng cho bộ Lính.
AttackRadiusNumberValueXác định khoảng cách tối đa mà NPC phải cách xa một nạn nhân tiềm năng trước khi nó cố gắng tấn công. Điều này chỉ áp dụng cho bộ Zombie và Lính.
ClipCapacityNumberValueXác định số viên đạn mà lính có thể bắn trước khi cần nạp lại. Điều này chỉ áp dụng cho bộ Lính.
ReloadDelayNumberValueXác định số giây phải trôi qua trước khi băng đạn của vũ khí của lính được nạp lại. Điều này chỉ áp dụng cho bộ Lính.

Gán thẻ

Kịch bản NPC sử dụng CollectionService thẻ để quản lý sự hung hăng đối với các nhân vật và người chơi khác. Nhiều thẻ từ bảng sau có thể được gán như sau:

  • Để gán thẻ cho một NPC khác, hãy gán chúng cho Model cấp cao nhất của NPC thông qua phần Tags của thuộc tính của nó.

  • Để gán thẻ cho một nhân vật Player, bạn có thể thêm một Script vào StarterCharacterScripts với một lệnh gọi CollectionService:AddTag(). Ví dụ:


    local CollectionService = game:GetService("CollectionService")
    CollectionService:AddTag(script.Parent, "SoldierEnemy")
ThẻMục đích
SoldierEnemy hoặc SoldierFriendXác định xem một lính, dựa trên giá trị cấu hình AttackMode của nó, có nên tấn công một nhân vật khác không. Khi AttackMode của lính được thiết lập thành 1, các nhân vật khác phải được gán thẻ SoldierEnemy để được coi là có thể tấn công. Khi AttackMode của lính được thiết lập thành 2, tất cả các đối tượng không có thẻ SoldierFriend sẽ được coi là có thể tấn công. Khi AttackMode của lính được thiết lập thành 3, các thẻ này sẽ bị bỏ qua hoàn toàn và lính sẽ tấn công tất cả các nhân vật.
ZombieFriendThẻ này được sử dụng bởi zombie để xác định xem nó có nên không tấn công một nhân vật hay không. Khi được áp dụng, zombie trở nên hiền lành đối với nhân vật được gán thẻ.
©2026 Roblox Corporation. Roblox, logo Roblox và Powering Imagination là các nhãn hiệu đã đăng ký và chưa đăng ký của chúng tôi tại Hoa Kỳ và các quốc gia khác.