ชุด NPC

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

NPC (ตัวละครที่ไม่ใช่ผู้เล่น) สามารถเพิ่มความลึกให้กับประสบการณ์ได้มาก ตัวละคร NPC ต่อไปนี้สามารถปรับแต่งได้ทางสายตา, พฤติกรรมที่ปรับแก้, และซอมบี้/ทหารสามารถปกป้องพื้นที่ด้วยการโจมตีผู้เล่นหรือตัวละครอื่น ๆ โดยใช้ระบบ แท็ก เพื่อกำหนดพฤติกรรม

เพื่อใช้ NPC ในเกมของคุณ:

  1. เลือกหนึ่งในชุด NPC ดังต่อไปนี้:

    ซอมบี้น้ำลายฟูมฟาย
    ทหาร
    RO-01 หุ่นยนต์
    NP-C 9000 หุ่นยนต์
  2. บนหน้าสินค้า NPC คลิกที่ปุ่มสีเขียว รับ และยืนยันการทำธุรกรรม

  3. ใน Studio, เปิด Toolbox

  4. เลือกส่วน คลังสินค้า ของ toolbox

  5. ค้นหา NPC และคลิกเพื่อเพิ่มมันเข้าไปในที่

โครงสร้างตัวละคร

โมเดล NPC แต่ละตัวมักจะมีวัตถุต่อไปนี้:

ชื่อวัตถุหรือ [ประเภท]ประเภทคำอธิบาย
แอนิเมชันFolderมี Animations เช่น AttackAnimation หรือ DeathAnimation
ท่าตั้งต้นFolderมีข้อมูลเกี่ยวกับการตั้งท่า
AnimateScriptโหลดและเล่นแอนิเมชันบนโครงตัวละคร ดู Animate สำหรับข้อมูลเพิ่มเติม
[อุปกรณ์เสริม]Accessoryหนึ่งในหลาย ๆ Accessories สำหรับ NPC เช่นหมวก อาวุธ เป็นต้น
สุขภาพScriptมักจะฟื้นฟูสุขภาพของ Humanoid ตามเวลา การปิดใช้งานนี้จะป้องกันไม่ให้ตัวละครฟื้นฟูสุขภาพ
HumanoidHumanoidจัดการคุณสมบัติที่เกี่ยวข้องกับ Humanoid เช่น Humanoid.Health, Humanoid.WalkSpeed, Humanoid.DisplayDistanceType เป็นต้น
NPCScript

กำหนดพฤติกรรมเฉพาะตัวละคร เช่น การเร่ร่อน การโจมตี ฯลฯ มีพ่อแม่วัตถุต่อไปนี้:

Maid (ModuleScript) กำหนดคลาสที่มีประโยชน์ในการปล่อยทรัพยากรที่ใช้งาน

Ragdoll (ModuleScript) กำหนดฟังก์ชันที่เปลี่ยนตัวละครให้เป็นร่างกายที่มีฟิสิกส์หลวม (มีพ่อแม่ที่ RigTypes ModuleScript ที่กำหนดฟังก์ชันช่วยเหลือหลายฟังก์ชัน)

RbxNpcSoundsScriptกำหนดและจัดการพฤติกรรมที่เกี่ยวข้องกับเสียงของตัวละคร เช่น การวิ่ง การตาย เป็นต้น
BodyPartsBasePartส่วนต่าง ๆ ของร่างกายตัวละครที่เชื่อมต่อกับ HumanoidRootPart หรือส่วนของร่างกายที่อยู่ใกล้เคียงผ่าน Motor6D หรือวัตถุข้อกำหนด ดู BodyParts สำหรับข้อมูลเพิ่มเติม
HumanoidRootPartBasePartส่วนพิเศษที่มองไม่เห็นซึ่งถือว่าเป็นรากของโครง; สิ่งนี้ยังเป็น PrimaryPart ของ Model ของตัวละคร
ConfigurationConfigurationมีวัตถุค่าที่ปรับแต่งพฤติกรรมต่าง ๆ ดู Configuration สำหรับข้อมูลเพิ่มเติม

หมายเหตุการออกแบบ

เมื่อใช้ชุด NPC ให้พิจารณาหมายเหตุการออกแบบต่อไปนี้:

  • รูปลักษณ์ของ NPC สามารถปรับแต่งได้โดยการเพิ่ม/แก้ไขวัตถุ [BodyParts] และการเพิ่มวัตถุ Accessory

  • ทหาร, ซอมบี้น้ำลายฟูมฟาย, และหุ่นยนต์ NP-C 9000 ใช้ Rthro เป็นฐานสำหรับโครงของพวกเขา อย่างไรก็ตาม RO-01 หุ่นยนต์ใช้ฐาน Rthro ที่แก้ไขซึ่งเพิ่มส่วนที่เป็นทรัสเตอร์ที่เชื่อมต่อกับ UpperTorso โดยใช้ WeldConstraints การใช้ข้อต่อที่ง่ายในลักษณะนี้ให้คุณรวมรูปทรงพิเศษสำหรับตัวละครของคุณโดยไม่เปลี่ยนแปลงโครงฐานต้นฉบับ

  • ในระดับพื้นฐาน, การแอนิเมตของ NPC สามารถปรับแต่งได้โดยการเปลี่ยน AnimationId ของวัตถุ Animation ที่มีอยู่ภายในท่าของสคริปต์ Animate หรือที่อยู่ภายในโฟลเดอร์ Animations การเปลี่ยนแปลงแบบนี้เรียกว่าเป็นการแลกเปลี่ยนทรัพย์สิน - เพื่อเปลี่ยนรายละเอียดที่ละเอียดมากขึ้น คุณสามารถสร้างสำเนาที่กำหนดเองของแอนิเมชันที่มีอยู่ และในการเล่นแอนิเมชันภายใต้เงื่อนไขที่แตกต่างกัน คุณสามารถแก้ไขสคริปต์ Animate หรือ NPC โดยตรง สำหรับข้อมูลเพิ่มเติมให้ดูที่ Animation

แอนิเมต

สคริปต์ Animate Script ใน Model ของ NPC จัดการกับการตั้งค่าที่เกี่ยวข้องกับ แอนิเมชัน และมีวัตถุต่อไปนี้:

ชื่อวัตถุหรือ [ประเภท]ประเภทคำอธิบาย
ScaleDampeningPercentNumberValueกำหนดว่าความเร็วของแอนิเมชันจะถูกปรับอย่างไรเมื่อขนาดของตัวละครเปลี่ยน (น้อยกว่า 1 หมายถึงการเล่นแอนิเมชันจะปรับตัวแปรตามอัตราส่วนของตัวละคร)
PlayEmoteBindableFunctionสามารถเรียกใช้โดยสคริปต์อื่น ๆ เพื่อบังคับให้ทำท่า
[Pose]StringValueอ้างอิงถึงหมวดหมู่แอนิเมชันที่เล่นได้เช่น นิ่ง กระโดด เดิน เป็นต้น วัตถุนี้สามารถเป็นพ่อแม่ของแอนิเมชันจำนวนใดก็ได้ Animations

แอนิเมชัน Animations เหล่านี้เป็นพ่อแม่ของ Weight (NumberValue) ที่กำหนดลำดับความสำคัญของแอนิเมชันหลายตัวเพื่อเล่นในขณะที่ท่านั้นถูกตั้งอยู่ โดยปกติใช้เพื่อเพิ่มความหลากหลายให้กับท่าทางนิ่งและเต้นรำ

BodyParts

วัตถุ BodyPart BasePart ใน Model ของ NPC แทนส่วนต่าง ๆ ของร่างกายตัวละครและมีวัตถุต่อไปนี้:

ชื่อวัตถุหรือ [ประเภท]ประเภทคำอธิบาย
AvatarPartScaleTypeStringValueกำหนดวิธีการที่ส่วนจะถูกปรับขนาด ค่าที่สามารถเป็น Classic, ProportionsNormal, หรือ ProportionsSlender
OriginalSizeVector3Valueกำหนดขนาดของส่วนเมื่อขนาดตัวละครเป็น 1
[Attachment]Attachmentกำหนดจุดที่สัมพันธ์กับส่วนบุคคลซึ่งสคริปต์ เอฟเฟกต์ และวัตถุเช่น Tool หรือ Accessory สามารถใช้ในระหว่างการจัดตำแหน่ง
[Motor6D]Motor6Dข้อต่อที่มีการเคลื่อนไหวระหว่างสองส่วนของร่างกาย โปรดทราบว่า Animator ขึ้นอยู่กับชื่อของ Motor6Ds เพื่อให้สอดคล้องกับ Motor6Ds ที่ใช้เมื่อทำการสร้างแอนิเมชัน, ดังนั้นควรหลีกเลี่ยงการตั้งชื่อวัตถุนี้ใหม่
[Joint]WeldConstraint, Constraint, JointInstanceข้อต่อที่ไม่มีการเคลื่อนไหวระหว่างสองส่วนของร่างกาย
[Sound]Soundพบได้ทั่วไปในศีรษะหรือ HumanoidRootPart; เล่นเสียงจากภายในโครงตามที่ควบคุมโดยสคริปต์ RbxNpcSounds

การตั้งค่า

แต่ละ NPC รวมถึงวัตถุ Configuration ภายในลำดับชั้นของมัน ซึ่งทำหน้าที่เป็นที่เก็บของวัตถุค่า วัตถุเหล่านี้จะถูกใช้งานโดยสคริปต์ NPC เพื่อปรับแต่งพฤติกรรมที่แตกต่างกัน เว้นแต่จะระบุไว้เป็นอย่างอื่น สิ่งเหล่านี้จะใช้กับตัวละครทั้งหมด

ชื่อวัตถุหรือ [ประเภท]ประเภทคำอธิบาย
DestroyOnDeathBoolValueทำให้ NPC ทั้งหมดถูกทำลายอย่างรวดเร็วหลังจากที่มันตาย ปิดการใช้งานนี้สำหรับ Ragdolls เพื่อให้มันมีความคงทน
PatrolEnabledBoolValueทำให้ NPC เดินมั่วในพื้นที่รอบตำแหน่งเริ่มต้น
PatrolRadiusNumberValueกำหนดระยะทางสูงสุดที่ NPC จะเดินมั่วออกจากตำแหน่งเริ่มต้น หาก PatrolEnabled เป็นจริง
RagdollEnabledBoolValueทำให้ NPC ไปจับเมื่อมันตาย แทนที่จะถูกทำลาย
AttackDamageNumberValueกำหนดสุขภาพที่สูญเสียโดยเหยื่อเมื่อถูกโจมตีโดย NPC สิ่งนี้ใช้ได้เฉพาะชุดซอมบี้และทหารเท่านั้น
AttackDelayNumberValueกำหนดจำนวนวินาทีขั้นต่ำระหว่างการยิง สิ่งนี้ใช้ได้เฉพาะชุดทหารเท่านั้น
AttackModeNumberValueระบุสิ่งที่ทหารจะโจมตีโดยอิงจาก ระบบแท็ก สิ่งนี้ใช้ได้เฉพาะชุดทหารเท่านั้น
AttackRadiusNumberValueกำหนดระยะทางสูงสุดที่ NPC จะต้องอยู่ห่างจากเหยื่อที่อาจเป็นเหยื่อก่อนที่มันจะพยายามโจมตี สิ่งนี้ใช้ได้เฉพาะชุดซอมบี้และทหารเท่านั้น
ClipCapacityNumberValueกำหนดจำนวนกระสุนที่ทหารสามารถยิงได้ก่อนที่จะต้องรีโหลด สิ่งนี้ใช้ได้เฉพาะชุดทหารเท่านั้น
ReloadDelayNumberValueกำหนดจำนวนวินาทีที่ต้องผ่านไปก่อนที่คลิปปืนของทหารจะถูกรีโหลด สิ่งนี้ใช้ได้เฉพาะชุดทหารเท่านั้น

การกำหนดแท็ก

สคริปต์ NPC ใช้แท็ก CollectionService เพื่อจัดการความก้าวร้าวต่อผู้เล่นและตัวละครอื่น ๆ แท็กต่าง ๆ จากตารางต่อไปนี้สามารถกำหนดได้ดังนี้:

  • เพื่อกำหนดแท็กให้กับ NPC อื่น ๆ ให้กำหนดไปยัง Model ระดับสูงสุดของ NPC โดยใช้ส่วน Tags ของคุณสมบัติของมัน

  • เพื่อกำหนดแท็กให้กับตัวละคร Player คุณสามารถเพิ่ม Script ไปยัง StarterCharacterScripts พร้อมกับการเรียก CollectionService:AddTag() เช่น:


    local CollectionService = game:GetService("CollectionService")
    CollectionService:AddTag(script.Parent, "SoldierEnemy")
แท็กจุดประสงค์
SoldierEnemy หรือ SoldierFriendกำหนดว่าทหารตามค่า AttackMode ควรจะโจมตีตัวละครอื่นหรือไม่ เมื่อ AttackMode ของทหารตั้งค่าเป็น 1 ตัวละครอื่น ๆ จะต้องถูกแท็กด้วย SoldierEnemy ถึงจะถูกพิจารณาว่าสามารถโจมตีได้ เมื่อ AttackMode ของทหารตั้งค่าเป็น 2 วัตถุทั้งหมดที่ไม่มีแท็ก SoldierFriend จะถือว่าถูกโจมตีได้ เมื่อ AttackMode ของทหารตั้งค่าเป็น 3 แท็กเหล่านี้จะถูกละเว้นโดยสิ้นเชิงและทหารจะโจมตีทุกตัวละคร
ZombieFriendแท็กนี้ถูกใช้โดยซอมบี้เพื่อกำหนดว่าซอมบี้ควรจะไม่โจมตีตัวละครหรือไม่ เมื่อแท็กได้รับการปรับใช้อย่างที่กล่าวไว้ ซอมบี้จะกลายเป็นมารยาทต่อเจ้าของที่ถูกแท็ก
©2026 Roblox Corporation. Roblox, โลโก้ Roblox และ Powering Imagination เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ