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

เพื่อใช้อาวุธที่ได้รับการรับรองในประสบการณ์ของคุณ:
- เลือกอาวุธจากด้านล่าง, เชื่อมโยง
บนหน้ารายการอาวุธ คลิกปุ่มสีเขียว รับ และยืนยันธุรกรรม
ในสตูดิโอเปิดกล่องเครื่องมือ ( ดู → กล่องเครื่องมือ )
เลือกส่วนกล่องเครื่องมือของคุณ สินค้าคงคลัง 4. ค้นหาอาวุธและคลิกเพื่อเพิ่มลงในสถานที่เมื่อถูกถามว่าจะใส่เครื่องมือลงในแพ็คเริ่มต้นหรือไม่ คลิก ใช่ หากคุณต้องการให้ผู้เล่นเริ่มต้นด้วยอาวุธในกระเป๋าเป้สะพายหลัง หรือคลิก ไม่ เพื่อวางอาวุธในโลก 3D เป็นการรับ
หากนี่คือครั้งแรกที่นําอาวุธที่ได้รับการสนับสนุนเข้ามาสิ้นสุด เคลื่อนย้ายโฟลเดอร์ ระบบอาวุธ ของมันไปยัง บริการสคริปต์เซิร์ฟเวอร์ เพื่อให้บริการเป็นโฟลเดอร์ ระบบอาวุธ รวมของอาวุธทั้งหมดที่ได้รับการสนับสนุนในประสบการณ์
โครงสร้างโฟลเดอร์ระบบ
ไดเรกทอรี ระบบอาวุธ เป็นไดเรกทอรีที่เป็นหนึ่งเดียวที่มีสินทรัพย์ การกำหนดค่า และสคริปต์ที่จะเปิดใช้งานอาวุธทั้งหมดที่ได้รับการสนับสนุนในประสบการณ์หากอยู่ใน ServerScriptService มันจะแทนที่โฟลเดอร์ที่เทียบเท่า ระบบอาวุธ ใดๆ ที่อาจอยู่ภายในอาวุธแต่ละชิ้น

โฟลเดอร์ ระบบอาวุธ มีตัวอย่างต่อไปนี้:
- ประเภทอาวุธ ( ) – ระบุประเภทอาวุธทั้งหมด
- สคริปต์อาวุธเซิร์ฟเวอร์ ( )
- รุ่น ( IntValue )
- สคริปต์อาวุธลูกค้า ( LocalScript )
- เครือข่าย callbacks ( ModuleScript )
- ข้อมูลอาวุธ ( RemoteEvent )
- ระบบอาวุธ ( ModuleScript )
ภายในโฟลเดอร์ ระบบอาวุธ แต่ละด้านจะถูกควบคุมโดยสิ่งต่อไปนี้ ModuleScripts
มุมมอง | จัดการเป็นหลักภายใน... |
---|---|
ฟังก์ชันอาวุธ |
|
กล้องไหล่ |
|
อินเทอร์เฟซอาวุธ GUI |
|
โครงสร้างอาวุธ
อาวุธที่ได้รับการรับรองคือ Tools และมีชื่อตามที่จะปรากฏในกระเป๋าเป้สะพายหลังของผู้เล่น อาวุธแต่ละชิ้นมีโครงสร้างที่คล้ายกัน
พิมพ์
ค่า ประเภทอาวุธ StringValue ตรงกับค่า ModuleScript สำหรับอาวุธในไดเรกทอรี ระบบอาวุธ / ประเภทอาวุธ มูลค่าพื้นฐานสองรายการคือ ปืนกล และ ธนู
โมเดลอาวุธ
อาวุธแต่ละอย่างมี Model ที่ประกอบด้วยหนึ่งหรือมากกว่า BaseParts เพื่อสร้างอาวุธทางกายภาพหนึ่งในนี้ควรตั้งเป็น PrimaryPart ของโมเดล

โมเดลยังรวมถึงบุตรหลานที่สำคัญต่อไปนี้ซึ่งอาจเป็นบุตรของโมเดล BaseParts :
จัดการอาวุธ
ส่วน จัดการ กำหนดตำแหน่งที่ตัวละครผู้เล่นถืออาวุธนี่ต้องเป็น Part , ต้องมีชื่อว่า จัดการ , และต้องเป็นลูกโดยตรงของอาวุธ (เครื่องมือ)
โฟลเดอร์การกำหนดค่า
โฟลเดอร์ การกำหนดค่า มีประเภท "ค่า" เฉพาะสำหรับพฤติกรรมอาวุธนอกเหนือจากค่าเริ่มต้นคุณสามารถเพิ่มรายการการกำหนดค่าเพิ่มเติมสำหรับ ตัวเลือกที่เฉพาะเจาะจง ที่ใช้บังคับ
ต่อไปนี้คือการกำหนดค่าพื้นฐานและค่าเริ่มต้น:
รายการ | คําอธิบาย | ค่าเริ่มต้น |
---|---|---|
ความจุกระสุน | จํานวนยิงในแต่ละ "กล่องกระสุน" ก่อนที่ผู้เล่นจะต้องรีโหลดโปรดทราบว่ากระสุนไม่มีขีดจำกัดและไม่ระบุจํานวนกระสุนที่ผู้เล่นกําลังพก | 30 |
โหมดไฟ | เลือกจาก กึ่งอัตโนมัติ (ยิงครั้งละหนึ่งครั้ง/แตะ), อัตโนมัติ (ยิงต่อเนื่อง), หรือ ระเบิด (ระเบิดยิงเท่ากับ NumBurstShots ต่อคลิก/แตะแต่ละครั้ง) | เซมิอัตโนมัติ |
คูลดาวน์การยิง | เวลารอขั้นต่ำระหว่างการคลิกสำหรับอาวุธที่มี โหมดยิง ของ อัตโนมัติ นี่เป็นเวลาระหว่างการยิงในขณะที่กดปุ่มยิงหรือกดค้างไว้ | 0.1 |
คูลดาวน์การยิงระเบิด | เวลาระหว่างแต่ละยิงในระเบิด; สำคัญเฉพาะถ้าคุณตั้ง โหมดยิง เป็น ระเบิด | ค่าของ ShotCooldown |
การยิง NumBurst | จํานวนการยิงต่อคลิก/ระเบิด; สำคัญเฉพาะถ้าคุณตั้ง โหมดยิง เป็น ระเบิด | 3 |
ความเสียหายที่ตี | จํานวนความเสียหายที่ได้รับในแต่ละการโจมตีโดยตรง | 10 |
ระยะความเสียหายเต็ม | ระยะสูงสุดที่ยิงจะสร้างความเสียหายเต็มรูปแบบสิ่งที่โจมตีนอกระยะนี้จะได้รับความเสียหายน้อยลงเรื่อยๆ เมื่อระยะห่างใกล้ ระยะความเสียหายเป็นศูนย์ | 1000 |
ระยะความเสียหายเป็นศูนย์ | สิ่งที่โจมตีที่หรือเกินระยะนี้จะไม่ได้รับความเสียหาย | 10000 |
ความเร็วกระสุน | ความเร็วที่กระสุน/กระสุนเดินทางเมื่อยิง ตั้งค่านี้เป็นค่าสูงมากเช่น 20000 จำลองอาวุธการโจมตีด้วยรังสีเช่นปืนเลเซอร์ | 1000 |
ระยะสูงสุด | กระสุนระยะสูงสุด/กระสุนที่เดินทางก่อนหายไป | 2000 |
การแพร่กระจายขั้นต่ำ | จํานวนการแพร่กระจายขั้นต่ําสำหรับอาวุธ | 0 |
สเปรดสูงสุด | จํานวนการกระจายสูงสุดสําหรับอาวุธ | ค่าของ MinSpread |
ตัวเลขแรงโน้มถ่วง | จํานวนที่แรงโน้มถ่วงควรมีอิทธิพลต่อกระสุน/กระสุนแต่ละนัดตัวอย่างเช่น ค่านี้สำหรับ ธนู คือ 1 เพราะลูกศรโค้งในระหว่างการบิน แต่ค่านี้สำหรับ ตัวปล่อยจรวด คือ 0 เพราะจรวดที่ถูกผลักไปข้างหน้าเดินทางตรง | 0 |
มีขอบเขต | ตั้งค่าเป็น จริง หากคุณต้องการใช้ขอบเขตที่ระบุไว้ใน ระบบ GUI ของระบบอาวุธ | ปิด |
การรีโหลดแอนิเมชัน | ชื่อของแทร็กภาพเคลื่อนไหวรีโหลดใน สินทรัพย์ / แอนิเมชั่น ของโฟลเดอร์ระบบ . | รีโหลดปืนไรเฟิล |
เล็งติดตาม | ชื่อของแทร็กภาพเคลื่อนไหวเป้าหมายใน สินทรัพย์ / แอนิเมชั่น ของโฟลเดอร์ระบบ . | เล็งปืนไรเฟิล |
เล็งซูมสนาม | ชื่อของแทร็กการซูมเป้าใน สินทรัพย์ / แอนิเมชั่น ของ โฟลเดอร์ระบบ | กำลังเล็งเป้าลงสายตาปืน |
กระเด็นกลับมาน้อย | กระเด็นกลับขั้นต่ำที่เพิ่มสําหรับแต่ละยิง | 0.05 |
รีโคลแม็กซ์ | พลังรีโคลสูงสุดที่เพิ่มสําหรับแต่ละยิง | 0.5 |
รวมการหดตัวสูงสุด | พลังระเบิดสะสมสูงสุดทั้งหมด พลังระเบิดปัจจุบันของอาวุธจะไม่เกินมูลค่านี้ | 2 |
การฟื้นตัวของการสลายตัว | ตัวคูณการสลายตัวสำหรับการเด้งกลับ; เป็นอัตราที่การเด้งกลับลดลงหลังจากยิง | 0.825 |
เวลาการฟื้นตัวช้า | รอเวลาหลังจากยิง/คลิกก่อนที่จะหดตัวเพื่อเพิ่มลงในกล้อง | 0.07 |
เวลาเริ่มต้น | ระยะเวลาหลังจากสวมใส่อาวุธก่อนที่ผู้เล่นจะยิงได้สิ่งนี้ป้องกันไม่ให้ผู้เล่นยิงเพียงหนึ่งนัดจากอาวุธที่แตกต่างกันหลายอันในช่วงเวลาสั้น ๆ | 0.2 |
ช่วงความเร็วการเล่นไฟล์ที่ถูกยิง | จํานวนที่สนามสามารถแตกต่างกันได้สําหรับเสียง ยิง ของอาวุธ ตั้งค่านี้เป็น 0 เพื่อเล่นเสมอในสนามเดียวกัน | 0.1 |
โปรเจ็กไทล์จํานวน | จํานวนกระสุน/กระสุนที่จะยิงพร้อมกันเมื่อคุณคลิก/แตะเพียงครั้งเดียวนี่มีประโยชน์สำหรับอาวุธเช่น ปืนลูกซอง ที่ยิงกระสุนหลายนัดในเวลาเดียวกันโปรดทราบว่าการยิงครั้งเดียวจะใช้กระสุนเพียงหนึ่งอย่างเสมอไม่ว่าจะมีมูลค่านี้หรือไม่ | 1 |
ตัวเลือกเฉพาะ
คุณสามารถเพิ่ม/แก้ไขตัวเลือกต่อไปนี้สำหรับอาวุธใดก็ได้การปรับแต่งเหล่านี้ต้องแก้ไขทั้ง Model ของอาวุธ หรือ Configuration ของอาวุธ หรือทั้งสองอย่างการกำหนดค่าบางอย่างขึ้นอยู่กับคนอื่น เช่น อนุภาคปา ซึ่งต้องการบุตรที่จำเป็นสำหรับ โปรเจกไทล์/เอฟเฟกต์การยิงและเสียง
แอนิเมชั่นและเสียงบอลต์
สายฟ้าของอาวุธ สายฟ้า เป็นส่วนที่เคลื่อนไปมาในแต่ละครั้งที่ยิง
- บุตรหลานของรูปแบบอาวุธ ของอาวุธ
สายฟ้า | BasePart ที่เคลื่อนที่เมื่ออาวุธถูกยิง | |
มอเตอร์สายฟ้าแลบ | Motor6D ใช้เพื่อแอนิเมชั่นสายฟ้าตรวจสอบให้แน่ใจว่าตั้งมอเตอร์ Part0 ไปที่โมเดลอาวุธ PrimaryPart และ Part1 ไปที่ส่วน บอลต์ | |
บอลต์มอเตอร์สตาร์ท | Attachment ตำแหน่งของผู้ที่อยู่บนพ่อ BasePart กำหนดว่าสายฟ้าจะอยู่ที่ไหนเมื่อพักผ่อน | |
เป้าหมายมอเตอร์สายฟ้าแลบ | Attachment ผู้ที่มีตำแหน่งบนพ่อ BasePart กำหนดว่าจะวาดภาพบอลตอนยิงที่ไหน | |
BoltOpenSound | Sound ที่เล่นเมื่อสายฟ้าเปิดออก | optional |
BoltCloseSound | Sound ที่เล่นเมื่อสายฟ้าปิด | optional |
- เด็กของโฟลเดอร์ การกำหนดค่า ของอาวุธ
รายการ | คําอธิบาย | ค่าเริ่มต้น |
---|---|---|
เวลาเปิดการดำเนินการ | เวลาที่ใช้สำหรับการเคลื่อนไหวเพื่อเปิดตําแหน่ง | 0.025 |
เวลาปิดการดำเนินการ | เวลาที่ใช้สำหรับการเคลื่อนไหวไปยังตําแหน่งปิดสําหรับสายฟ้า | 0.075 |
นำกระสุนออก
อาวุธสามารถรวมถึงเปลือกกระสุนทางกายภาพที่เหวี่ยงออกเมื่อยิงและตกลงสู่พื้น
- บุตรหลานของรูปแบบอาวุธ ของอาวุธ
จุดเปิดเคส | Attachment ผู้ที่มีตำแหน่งบนพ่อ BasePart กำหนดว่าคุณต้องการให้ตลับกระสุนป๊อปออกที่ไหนโปรดทราบว่าการจัดเรียงของมันกำหนดทิศทางที่กระเป๋าจะโผล่ออกมา |
- เด็กของโฟลเดอร์ การกำหนดค่า ของอาวุธ
รายการ | คําอธิบาย | ค่าเริ่มต้น |
---|---|---|
ผลกระทบของเคส | ชื่อของเคส BasePart ใน สินทรัพย์ / เอฟเฟกต์ / เคส ของระบบโฟลเดอร์ . | |
ความเร็วการเปิดเคสต่ำสุด | ความเร็วในการออกมาต่ำสุดของเคส | 15 |
ความเร็วการเปิดเคสสูงสุด | ความเร็วสูงสุดในการออกแบบของเคส | 18 |
- บุตรของการตรวจสอบ ใน สินทรัพย์ / ผลกระทบ / การตรวจสอบ ของระบบโฟลเดอร์
CasingHitSound | Sound ที่เล่นเมื่อกระสุนโจมตีพื้นดิน | optional |
เอฟเฟกต์กระสุน/เสียงและเสียง
คุณสามารถกำหนดค่าประกายภาพทางกายภาพสำหรับอาวุธใดๆ พร้อมกับ Sounds , Beams และ ParticleEmitters สำหรับเอฟเฟกต์การโจมตีและเอฟเฟกต์พิเศษอื่นๆ
- เด็กของโฟลเดอร์ การกำหนดค่า ของอาวุธ
รายการ | คําอธิบาย | ค่าเริ่มต้น |
---|---|---|
ShotEffect | ชื่อของเอฟเฟกต์การยิงที่เก็บไว้ภายใน ทรัพยากร / เอฟเฟกต์ / ยิงของระบบโฟลเดอร์ . | |
ควรย้ายส่วน | ตั้งค่าเป็น true หาก ShotEffect ของอาวุธควรเคลื่อนไปกับกระสุนหรือ false หากไม่คุณควรตั้งค่านี้เป็น true เท่านั้น หากมีวัตถุที่มองเห็นได้ที่เคลื่อนไหวไปกับแต่ละยิง เช่นลูกศรหรือจรวด | ปิด |
เวลาลดลงของลําแสง | เวลาที่ใช้สำหรับ ลำแสง 0 หรือ ลำแสง 1 ( ดูด้านล่าง ) รหัส | 0 |
ความกว้างของลํา0 | ความหนาของ ลำแสง0 หรือ ลำแสง1 ที่ แนบเนียน0 ( ดูด้านล่าง ). | 1.5 |
ความกว้างของลํา1 BeamWidth1 | ความหนาของ ลำแสง0 หรือ ลำแสง1 ที่ แนบเนียน1 ( ดูด้านล่าง ). | 1.8 |
อนุภาคตีหมายเลข | จํานวนอนุภาคที่ HitParticles ( ดูด้านล่าง ) ผู้ส่งจะปล่อยออก | 3 |
ใช้สีส่วนประกอบของอนุภาคตี | ตั้งค่าเป็น true หากคุณต้องการให้อนุภาคการโจมตีเป็นสีของพื้นผิวที่โจมตี; false หากคุณต้องการให้อนุภาคการโจมตีไม่เปลี่ยนสี | จริง |
- บุตรหลานของ ShotEffect ที่ระบุในส่วนก่อนหน้านี้
บิน | Sound ที่เล่นในขณะที่กระสุน/กระสุนกําลังเดินทาง | optional |
ลําแสง 0 | ช่องว่างแรกสําหรับลูกศรที่ติดตาม Beam ข้างหลังกระสุน/กระสุนอย่าลืมตั้ง แนบเนียน0 และ แนบเนียน1 . | optional |
ลําแสง 1 | ช่องว่างที่สองสําหรับลูกกระสุน/กระสุนที่ติดตาม Beam ข้างหลังกระสุน/กระสุนอย่าลืมตั้ง แนบเนียน0 และ แนบเนียน1 . | optional |
แนบเนียน0 | Attachment ผู้ที่มีตำแหน่งบนพ่อของ BasePart กำหนดด้านหลังของลำแสงติดตาม; ตรวจสอบให้แน่ใจว่าตั้ง Beam.Attachment0 ทั้งใน ลำแสง0 และ ลำแสง1 เพื่อสิ่งนี้ | optional |
แนบเนียน1 | Attachment ซึ่งตำแหน่งบนพ่อของมัน BasePart กำหนดตำแหน่งด้านหน้าของลำแสงถัดไป; ตรวจสอบให้แน่ใจว่าตั้ง Beam.Attachment1 ทั้งใน ลำแสง0 และ ลำแสง1 เพื่อสิ่งนี้ | optional |
อนุภาคเส้นทาง | ParticleEmitter ถูกถ่ายโอนเป็นลูกหลานโดยตรงของ แนบเนียง0 ; สิ่งนี้จะปล่อยออกมาในขณะที่กระสุน/กระสุนเดินทางไป | optional |
อนุภาคชั้นนำ | ParticleEmitter ถูกผูกเป็นลูกหลานโดยตรงของ แนบเนียง1 ; สิ่งนี้จะปล่อยในขณะที่กระสุน/กระสุนเดินทางไป | optional |
ผลกระทบของการโจมตี | Attachment ซึ่งตำแหน่งจะถูกตั้งเป็น Beam.Attachment1 ของ ลำแสง/กระสุน เมื่อกระสุน/กระสุนโจมตีคุณต้องระบุ ลําแสง 0 และสิ่งที่แนบมาเพื่อให้ทำงานได้อย่างถูกต้อง | optional |
เสียงการโจมตี | Sound ถูกถ่ายโอนเป็นลูกหลานโดยตรงของ ผลกระทบการโจมตี ; เล่นเมื่อกระสุน/จรวดโจมตี | optional |
อนุภาคการโจมตี | Sound ถูกถ่ายโอนเป็นลูกหลานโดยตรงของ ผลกระทบการโจมตี ; ปล่อยเมื่อกระสุน/กระสุนโจมตี | optional |
[ส่วนโครงการ] | ใดๆ Part หรือ MeshPart ที่คุณต้องการปรากฏเป็นโครงการกระสุนทางกายภาพตรวจสอบให้แน่ใจว่าคุณตั้ง ควรย้ายส่วน ที่ระบุไว้ในส่วนก่อนหน้านี้เป็น จริง หากคุณมีวัตถุที่มองเห็นได้ที่นี่ | optional |
อนุภาคปากปืน
ตัวเลือกนี้ปล่อยอนุภาคจาก ParticleEmitter ที่กำหนดไว้ใน ส่วนปลายของอาวุธ Attachment เมื่อยิง
การกำหนดค่าลูกหลาน:

- ShotEffect ( StringValue ) — ชื่อของเอฟเฟกต์การยิงที่เก็บไว้ภายใน WeaponsSystem/Assets/Effects/Shots
- อนุภาคปากกระบอก ( IntValue ) (ตัวเลือก) — จํานวนอนุภาคปากกระบอกที่จะถูกปล่อย; ค่าเริ่มต้นคือ 50 สำหรับเอฟเฟกต์การยิงที่ระบุ เพิ่มสินทรัพย์ ParticleEmitter ภายใน WeaponsSystem/Assets/Effects/Shots ที่ชื่อว่า MuzzleParticles

ระเบิดปากกระบอก
ตัวเลือกนี้สร้างเอฟเฟกต์แฟลช Beam เมื่ออาวุธถูกยิง
ทายาทรุ่น:

- MuzzleFlash0 ( Attachment ) — ใช้เพื่อระบุด้านหนึ่งของแฟลชปืน ตำแหน่งไม่สำคัญ
- MuzzleFlash1 ( Attachment ) — ใช้เพื่อระบุด้านตรงข้ามของแฟลชปืน ตำแหน่งไม่สำคัญ
- แฟลชปืน ( Beam ) — ตรวจสอบให้แน่ใจว่าตั้ง Attachment0 เป็น MuzzleFlash0 และ Attachment1 เป็น MuzzleFlash1 การกำหนดค่าลูกหลาน:

- เวลาแฟลชปืน ( NumberValue ) (ตัวเลือก) — ระยะเวลาที่แฟลชปืนจะแสดง; ค่าเริ่มต้นคือ 0.03 * MuzzleFlashRotation0 ( ) (ไม่บังคับ) — การหมุนขั้นต่ำของแสงปืน; ค่าเริ่มต้นคือ -math.pi
- MuzzleFlashSize0 ( NumberValue ) (ไม่บังคับ) — ขนาดขั้นต่ำของแฟลชปืน; ค่าเริ่มต้นคือ 1 * MuzzleFlashSize1 ( NumberValue ) (ไม่บังคับ) — ขนาดสูงสุดของแฟลชปืน; ค่าเริ่มต้นคือ 1
เส้นทางอนุภาค
ตัวเลือกนี้สร้างเส้นทางความยาวแตกต่างกันจากอาวุธไปยังจุดการชนกระสุน
การกำหนดค่าลูกหลาน:

- ระยะเวลาเส้นทาง ( NumberValue ) (ไม่บังคับ) — ระยะเวลาเส้นทางหลังกระสุน/กระสุน; ค่าเริ่มต้นคือ nil ซึ่งหมายความว่าระยะเวลาเส้นทางจะถูกคำนวณโดยใช้ ปัจจัยระยะเวลาเส้นทาง * ตัวปัจจัยความยาวเส้นทาง ( NumberValue ) (ไม่บังคับ) — ระยะเส้นทางจะถูกตั้งเป็นค่านี้คูณด้วยระยะทางที่กระสุน/จรวดเดินทางในเฟรมล่าสุด; ค่าเริ่มต้นคือ 1 โปรดทราบว่าสิ่งนี้จะถูกยกเลิกหากคุณรวม ระยะเวลาเส้นทาง * แสดงเส้นทางทั้งหมดจนกว่าจะตี ( BoolValue ) (ตัวเลือก) — ตั้งค่าเป็น true เพื่อเรนเดอร์เส้นทางจากจุดสิ้นสุดของอาวุธไปทุกที่ที่กระสุนไปถึง; ซึ่งจะแทนที่ทั้ง ระยะทางเส้นทาง และ ตัวคูณระยะทางเส้นทาง และเส้นทางจะหายไปเมื่อกระสุนโดนบางอย่างเท่านั้นตั้งค่าเป็น ปิด เพื่อใช้หนึ่งในตัวเลือกสองตัวข้างต้นเพื่อคำนวณระยะเส้นทางค่าเริ่มต้นคือ ปิด .
เครื่องหมายตี
การเพิ่มภาพนี้ปรากฏบนพื้นที่ที่กระสุนโจมตีและมีประโยชน์สำหรับลูกศร หลุมกระสุน เครื่องหมายไหม้ ฯลฯ
การกำหนดค่าลูกหลาน:

- ผลกระทบของเครื่องหมายตี ( StringValue ) (ไม่บังคับ) — ชื่อของผลกระทบของเครื่องหมายตีที่เก็บไว้ภายใน WeaponsSystem/Assets/Effects/HitMarks ; ค่าเริ่มต้นคือ BulletHole * จัดตำแหน่งสัญลักษณ์การโจมตีให้ตรงกับปกติ ( BoolValue ) (ตัวเลือก) — ตั้งค่าเป็น true หากสัญลักษณ์การโจมตีควรจัดตำแหน่งให้เรียบกับพื้นเสมอเช่นหลุมกระสุนหรือ false หากสัญลักษณ์การโจมตีควรปรากฏติดอยู่ในพื้นจากทิศทางที่กระสุนมา (เช่นลูกศร)ค่าเริ่มต้นคือ true คุณสามารถเพิ่มสินทรัพย์ทางเลือกต่อไปนี้ภายใน WeaponsSystem/Assets/Effects/HitMarks :

- เรืองแสง ( Decal ) (ตัวเลือก) — ปรากฏบนพื้นผิวการโจมตีอย่างเต็มที่เหมือนเป็นเอฟเฟกต์เรืองแสงบนพื้นผิวที่จางไปอย่างรวดเร็ว (เช่นเดียวกับเอฟเฟกต์เรืองแสงบนพื้นผิวที่จางไปอย่างรวดเร็ว)มีประโยชน์สำหรับสิ่งเช่นการแสดงเครื่องหมายสีแดงเรืองแสงที่ระเบิดโจมตี
- หลุมกระสุน ( Decal ) (ตัวเลือก) — ปรากฏบนพื้นผิวการโจมตีเต็มไปด้วยความทึบและหลังจาก 4 วินาทีจะจางไปเป็นใสภายใน 1 วินาที
- บอร์ดผลกระทบ ( BillboardGui ) (ตัวเลือก) — แสดงบนพื้นผิวที่โดนการโจมตี มองไปที่กล้องเสมอ
- ผลกระทบ ( ImageLabel ) (ไม่บังคับ) — ลูกหลานโดยตรงของ บอร์ดผลกระทบ ; นี้เริ่มต้นโปร่งใสเต็มรูปแบบ เติบโตไปสู่ขนาดเต็มของ บอร์ดผลกระทบ มากกว่า 0.1 วินาที จากนั้นหดลงเป็นครึ่งขนาดและจางไปสู่ความโปร่งใสสมบูรณ์แบบเต็ม 0.1 วินาที
- ใดๆ Part / MeshPart / SpecialMesh ที่คุณต้องการปรากฏเป็นโปรเจกไทล์ทางกายภาพ (ไม่บังคับ)ตัวอย่างเช่น รวมถึงลูกศร และการตั้งค่า ปรับแนวการโจมตีให้สอดคล้องกับปกติ ที่ระบุไว้ข้างต้นจะทำให้ลูกศรยื่นออกจากพื้นจากทิศทางที่คุณยิง
ระเบิดกระสุน
เม็ดกระสุนสามารถรวมวัตถุระเบิดเพื่อทำลายตัวละครผู้เล่นในพื้นที่รอบจุดกระทบ
การกำหนดค่าลูกหลาน:

- ระเบิดเมื่อได้รับผลกระทบ ( BoolValue ) (ตัวเลือก) — ตั้งค่าเป็น true หากคุณต้องการกระสุน/วัตถุระเบิดสำหรับอาวุธที่จะระเบิดเมื่อได้รับผลกระทบ หรือ false มิฉะนั้นค่าเริ่มต้นคือ ปิด .
- รัศมีการระเบิด ( NumberValue ) (ตัวเลือก) — รัศมีการระเบิดของการระเบิด; ค่าเริ่มต้นคือ 8 * ความดันระเบิด ( NumberValue ) (ตัวเลือก) — ความดันระเบิดของการระเบิด; ค่าเริ่มต้นคือ 10000 * ความเสียหายจากการระเบิด ( NumberValue ) (ไม่บังคับ) — ความเสียหายที่เกิดขึ้นกับสิ่งที่อยู่ในศูนย์กลางของการระเบิดโปรดทราบว่าการระเบิดสร้างความเสียหายน้อยลงเมื่อวัตถุโจมตีที่อยู่ไกลออกไปจากศูนย์กลางของการระเบิดค่าเริ่มต้นคือ 100
ชาร์จอาวุธ
อาวุธชาร์จเช่น Railgun ต้องชาร์จระหว่างยิงก่อนที่จะยิงได้อีกครั้ง
ทายาทรุ่น:

- การชาร์จ ( Sound ) (ตัวเลือก) — เล่นในขณะที่อาวุธกําลังชาร์จ
- ปล่อย ( Sound ) (ตัวเลือก) — เล่นในขณะที่อาวุธกำลังปล่อย เช่น ถ้าคุณชาร์จอาวุธเพียงบางส่วนและปล่อยปุ่มยิง
- ชาร์จสําเร็จ ( Sound ) (ตัวเลือก) — เรียกเก็บเงิน
- ปล่อยเสร็จสิ้น ( Sound ) (ตัวเลือก) — เล่นเมื่ออาวุธถูกปล่อยอย่างสมบูรณ์
- ชาร์จเรืองแสง ( BasePart ) (ตัวเลือก) — วัตถุนี้จะได้รับความโปร่งใสน้อยลงเมื่ออาวุธชาร์จขึ้น ทำให้มันเป็นทึบสมบูรณ์ที่ 100% เมื่อชาร์จเต็ม
- อนุภาคชาร์จสมบูรณ์ ( ParticleEmitter ) (ตัวเลือก) — ปล่อยเมื่ออาวุธชาร์จเสร็จแล้วตัวปล่อยนี้สามารถเป็นลูกของโมเดลใดก็ได้ BasePart หรือเป็นลูกของโมเดลภายใน Attachment ของ BasePart
- อนุภาคการปล่อยเสร็จสมบูรณ์ ( ParticleEmitter ) (ตัวเลือก) — ปล่อยเมื่ออาวุธถูกปล่อยอย่างสมบูรณ์ตัวปล่อยนี้สามารถเป็นลูกของโมเดลใดก็ได้ BasePart หรือเป็นลูกของโมเดลภายใน Attachment ของ BasePart
- อนุภาคการชาร์จ ( ParticleEmitter ) (ไม่บังคับ) — ปล่อยในขณะที่อาวุธกําลังชาร์จคุณสามารถรวมผู้ออกหลายคนที่มีชื่อนี้และแต่ละคนจะออกในขณะชาร์จตัวปล่อยนี้สามารถเป็นลูกของโมเดลใดก็ได้ BasePart หรือเป็นลูกของโมเดลภายใน Attachment ของ BasePart
การกำหนดค่าลูกหลาน:

- อัตราการชาร์จ ( NumberValue ) — เรียกเก็บเงินค่านี้ต้องระบุเพื่อระบุว่าอาวุธใช้การชำระ
- อัตราการปล่อย ( NumberValue ) (ตัวเลือก) — อัตราที่อาวุธจะปล่อย; ค่าเริ่มต้นคือ 0 ซึ่งหมายความว่าอาวุธจะไม่ปล่อยเลย
- ชาร์จอย่างไม่ใช้เวลา ( BoolValue ) (ตัวเลือก) — ตั้งค่าเป็น จริง หากคุณต้องการให้อาวุธชาร์จอย่างไม่ใช้เวลาจึงจะยิงทันทีเมื่อคุณคลิก หรือ ปิด หากคุณต้องการคลิก/แตะเพื่อชาร์จอาวุธและมันจะยิงเมื่อเต็มแรงเรียบร้อยค่าเริ่มต้นคือ ปิด .
- อัตราอนุภาคการชาร์จต่อการชาร์จ ( IntValue ) (ตัวเลือก) — จํานวนอนุภาคที่จะปล่อยออกจากทั้งหมด อนุภาคการชาร์จ ของอาวุธคูณด้วยการชาร์จปัจจุบันค่าเริ่มต้นคือ 20 ซึ่งหมายความว่าหากการชาร์จอาวุธอยู่ที่ 10% ผู้ปล่อยอนุภาคแต่ละรายจะปล่อยอนุภาค 2 อัน (20×0.1) และหากการชาร์จอาวุธอยู่ที่ 90% ผู้ปล่อยแต่ละรายจะปล่อยอนุภาค 18 อัน (20×0.9)
- ปล่อยไฟ ( NumberValue ) (ตัวเลือก) — จํานวนการชาร์จที่อาวุธจะสูญเสียหลังจากยิงกระสุนที่ชาร์จเต็ม; ค่าเริ่มต้นคือ 1 * อนุภาคการชาร์จเสร็จสมบูรณ์ ( IntValue ) (ตัวเลือก) — จํานวนอนุภาคที่ - ChargeCompleteParticles เอเมตเตอร์จะปล่อยเมื่ออาวุธชาร์จเต็มแล้วค่าเริ่มต้นคือ 25 * NumDischargeCompleteParticles ( IntValue ) (ตัวเลือก) — จํานวนอนุภาคที่ - DischargeCompleteParticles เอมิตเตอร์จะปล่อยเมื่ออาวุธถูกชาร์จสมบูรณ์ค่าเริ่มต้นคือ 25
อาวุธโบว์
อาวุธโบว์เช่นธนูสามารถรวมถึงการก่อสร้างสตริงและแขนที่เป็นจริงได้ รวมถึงลูกศรที่มองเห็นได้บนสตริง
นอกจากการเพิ่มสายตระกูลโมเดลแล้ว กำลังติดตาม:
- ทำให้อาวุธเป็นอาวุธชาร์จ ตัวอย่างเช่น เพิ่มอัตราการชาร์จที่จำเป็น ChargeRate ภายในอาวุธ Configuration ที่ระบุถึงความเร็วที่สตริงถูกวาดนอกจากนี้ พิจารณาเพิ่มบุตรชายทางเลือกให้กับอาวุธ Model เช่นเสียง การชาร์จ ย้อนกลับ
ทายาทรุ่น:

- LeftString ( Beam ) (ไม่บังคับ) — ภาพด้านซ้ายของสตริงครึ่งหนึ่ง
- RightString ( Beam ) (ไม่บังคับ) — ด้านขวาของสตริงที่มองเห็นได้
- ลูกศร ( BasePart ) (ไม่บังคับ) — ลูกศรที่ปรากฏเมื่อลูกศรวาดเต็มแล้วโปรดทราบว่านี่เป็นเพียงสำหรับรูปลักษณ์ทางสายตาบนลูกศร (ลูกศรที่ยิงจริงจะเป็น ShotEffect ตามที่ระบุไว้ใน โปรเจกไทล์/เอฟเฟกต์การยิงและเสียง )
- String1 ( Attachment ) (ไม่บังคับ) — จุดศูนย์กลางของสตริง
- แขน ( Part ) (ไม่บังคับ) — ส่วนที่เพียงให้บริการเป็นตัวบ่งบอกภายในว่าแขนโบว์จะถูกแอนิเมชั่นอาจมีลูกโดยตรงต่อไปนี้:
- LeftString0 ( Attachment ) (ไม่บังคับ) — จุดที่ด้านซ้ายของสตริงถูกยึดไปยังลูกศร
- RightString0 ( ) (ไม่บังคับ) — จุดที่ด้านขวาของสตริงถูกยึดติดกับโบว์
- [SpecialMesh] ( SpecialMesh ) (ไม่บังคับ) — ส่วนของลูกศรที่จะโค้งจริงเมื่อลูกศรถูกวาดโปรดทราบว่าคุณต้องระบุวัตถุสี่ต่อไปนี้ Vector3Value เพื่อทำให้ภาพเคลื่อนไหวนี้
อินเทอร์เฟซผู้ใช้ระบบอาวุธ
ระบบอาวุธหลักเชื่อมต่อกับระบบนี้เพื่ออัปเดต GUI ตามสิ่งต่างๆ เช่น การแพร่กระจายของปืน, ตัวบ่งบอกเมื่อคุณถูกโจมตีหรือโจมตีผู้อื่น ฯลฯ
The WeaponsSystemGui เป็นวัตถุ ScreenGui ใน WeaponsSystem/Assets ที่ได้รับการสืบทอดจาก PlayerGui เมื่อประสบการณ์เริ่มต้นWeaponSystemGui มีลูกหลาน 4 คน:
- องค์ประกอบการขยาย - องค์ประกอบขององค์ประกอบบนหน้าจอ 1 ครั้ง
- หน้าจอสัมผัสขนาดใหญ่ - A Frame สำหรับปุ่มบนหน้าจอสัมผัสขนาดใหญ่
- หน้าจอสัมผัสขนาดเล็ก - A Frame สำหรับปุ่มบนหน้าจอสัมผัสขนาดเล็ก
สเกลองค์ประกอบ
ScalingElements เป็นพ่อของ Folder ภายใต้ WeaponsSystemGui ด้วยสายตระกูลต่อไปนี้:
ชื่อ | พิมพ์ | คําอธิบาย |
---|---|---|
ตัวบ่งบอกทิศทาง | Folder | A Folder ที่ทั้งหมด ตัวบ่งบอกทิศทาง ถูกจัดเก็บ |
เส้นสายตาข้าม | Frame | A Frame ที่มีวัตถุต่อไปนี้:[UIAspectRationConstraint] - UIAspectRatioConstraint ด้านล่าง - ImageLabel ด้านซ้าย - ImageLabel ด้านขวา - ImageLabel ด้านบน - ImageLabel |
ตัวบ่งบอกการโจมตี | Frame | A Frame ที่มีวัตถุต่อไปนี้:[UIAspectRatioConstraint] - UIAspectRatioConstraint HitMarkerImage - ImageLabel ที่ปรากฏและจางไปเมื่อผู้เล่นสามารถตีตัวละครผู้เล่นอื่นสำเร็จ |
หน้าจอสัมผัสขนาดใหญ่
หน้าจอสัมผัสขนาดใหญ่เป็น Frame ที่มีปุ่มที่แสดงบนหน้าจอสัมผัสขนาดใหญ่ หน้าจอสัมผัสขนาดใหญ่มีสายตระกูลต่อไปนี้:
- ปุ่มเล็ง ( ImageButton )
- ปุ่มไฟ ( ImageButton )
ขอบเขต
ขอบเขตเป็น Frame ที่มี ScopeImage ( ImageLabel ) ซึ่งปรากฏเมื่อซูมบนอาวุธที่มีการเปิดใช้งานสเปกตรัม (ดู โครงสร้างอาวุธ ) ขอบเขต มีบุตรหลานดังต่อไปนี้:
ชื่อ | พิมพ์ | คําอธิบาย |
---|---|---|
สโคปไอนิสต์เซนต์ | Frame | A Frame ที่มีสินทรัพย์ต่อไปนี้ที่ใช้เมื่อซูมบนอาวุธที่มีการเปิดใช้งาน HasScope:[UIAspectRationConstraint] - UIAspectRatioConstraint BottomBlack - Frame LeftBlack - Frame RightBlack - Frame TopBlack - Frame |
หน้าจอสัมผัสขนาดเล็ก
หน้าจอสัมผัสขนาดเล็กเป็น Frame ที่มีปุ่มที่แสดงบนหน้าจอสัมผัสขนาดเล็ก SmallTouchscreen มีสายตระกูลต่อไปนี้:
- ปุ่มเล็ง ( ImageButton )
- ปุ่มไฟ ( ImageButton )
สร้างตัวบ่งบอกทิศทาง
ตัวบ่งบอกทิศทางใช้เพื่อแสดงทิศทางของบางสิ่งรอบจุดเล็งของผู้เล่นตัวอย่างเช่น หากมีคนยิงคุณ วงกลมสีแดงครึ่งวงกลมสามารถปรากฏรอบจุดเล็งของคุณในทิศทางที่ยิงมาได้ตัวอย่างอื่น ๆ รวมถึงตัวบ่งบอกเพื่อแสดงทิศทางของรอยเท้า, การยิงโดยตรง, หรือแม้แต่วัตถุสิ่งแวดล้อมเช่นหีบ
เพื่อสร้างตัวบ่งบอกใหม่ เพิ่มตัวบ่งบอกใหม่ Frame ใน WeaponsSystemGui/ScalingElements/DirectionalIndicators ด้วยโครงสร้างต่อไปนี้:
ชื่อ | พิมพ์ | คําอธิบาย |
---|---|---|
[UIAspectRationConstraint] | UIAspectRatioConstraint | |
[ฉลากรูปภาพ] | ImageLabel | ภาพของตัวบ่งบอกทิศทางการปรับแต่งการหมุนของภาพใน Studio อาจจำเป็นเว้นแต่คุณจะอัปโหลดภาพให้หันลงและมีพื้นที่ว่างเล็กน้อยหรือไม่มีเลยรอบๆ ป้ายภาพนี้ป้ายภาพนี้จะต้องมีข้อความของตัวเอง UIAspectRatioConstraint |
[การกำหนดค่า] | Configuration | มีคุณสมบัติทางเลือกที่จะปรับเปลี่ยน ดู การกำหนดค่าตัวบ่งบอก สำหรับข้อมูลเพิ่มเติม |
เมื่อสร้างแล้ว คุณสามารถเปิดใช้งานตัวบ่งบอกผ่านคำสั่งต่อไปนี้ภายใน WeaponsSystem/Libraries/WeaponsGui ซึ่ง indicatorName เป็นชื่อสตริงของตัวบ่งบอกที่จะเปิดใช้งานและ worldPos เป็นตำแหน่งโลกที่ตัวบ่งบอกทิศทางควรชี้ไป:
self.DirectionalIndicatorGuiManager:ActivateDirectionalIndicator(indicatorName, worldPos)
การกำหนดค่าตัวบ่งบอก
ตัวบ่งบอกทิศทางสามารถปรับแต่งเพิ่มเติมโดยการปรับแต่งวัตถุ Configuration ที่อยู่ภายใต้ [Indicator]การตั้งค่าเหล่านี้ทั้งหมดมีค่าเริ่มต้นดังนั้นจึงไม่จำเป็นต้องตั้งค่าการกำหนดค่าเมื่อไม่ได้ปรับเปลี่ยนการตั้งค่า
การกำหนดค่าต่อไปนี้สามารถตั้งค่าได้:
ชื่อ | พิมพ์ | คําอธิบาย |
---|---|---|
ระดับระยะจากศูนย์ | NumberValue | จํานวนระดับระยะทางจากศูนย์กลางของหน้าจอ (แต่ละระดับระยะทางประมาณ 0.03 สเกลหน้าจอ); ค่าเริ่มต้นคือ 6 |
เวลาจาง | NumberValue | เวลาการจางของตัวบ่งบอกหลังจากเปิดใช้งานและเวลา TimeBeforeFade เริ่มต้นคือ 1 |
ชื่อ | StringValue | ชื่อของตัวบ่งบอกทิศทางตามที่คุณต้องการอ้างอิงในรหัส; ค่าเริ่มต้นคือชื่อระดับสูงสุดของตัวบ่งบอก Frame |
เวลาก่อนที่จะจาง | NumberValue | จํานวนวินาทีที่ตัวบ่งบอกจะปรากฏก่อนที่จะจางไป; ค่าเริ่มต้นคือ 1 |
ความโปร่งใสก่อนจาง | NumberValue | ความโปร่งใสของตัวบ่งชี้ก่อนที่จะเลือนราง; ค่าเริ่มต้นคือ 0 |
ระดับความกว้าง | NumberValue | จํานวนระดับความกว้างจากศูนย์ (แต่ละระดับความกว้างมีประมาณ 0.03 เครื่องชั่งหน้าจอ); ค่าเริ่มต้นคือค่าของ ระดับระยะทางจากศูนย์ |
แสดงบิลบอร์ดความเสียหาย
ป้ายโฆษณาความเสียหายใช้เพื่อแสดงตัวเลขเล็กๆ เหนือหัวของตัวละครเมื่อถูกทำลายสิ่งเหล่านี้จะปรากฏเฉพาะสำหรับผู้เล่นที่ทําลายตัวละครของผู้เล่นคนอื่นเท่านั้น ไม่ใช่สําหรับผู้ชมผู้เล่น
ป้ายโฆษณาความเสียหายจะได้รับการจัดการใน WeaponsSystem/Libraries/DamageBillboardHandler และสามารถเปิดใช้งานได้จากรหัสด้านลูกค้าตามที่ระบุดังต่อไปนี้โดยความเสียหายคือจำนวนความเสียหายที่เกิดขึ้นและ adornmentPart คือส่วนที่จะประดับป้ายโฆษณาเช่นหัวของเหยื่อ:
DamageBillboardHandler:ShowDamageBillboard(damage, adornmentPart)
กล้องไหล่
กล้องไหล่เป็นกล้องบุคคลที่สามที่มองข้ามไหล่ขวาของตัวละครผู้เล่นเพื่อปรับแต่งกล้องไหล่ แก้ไขตัวแปรภายใต้พารามิเตอร์การกำหนดค่า (คงที่) ในความคิดเห็นของฟังก์ชัน ShoulderCamera.new() ของ WeaponsSystem/Libraries/ShoulderCameraคุณสามารถปรับเปลี่ยนสิ่งต่างๆ เช่น มุมมองฟิลด์, การเลื่อนจากตัวละคร, ความเร็วในการเดินขณะวิ่งหรือซูม ฯลฯ
การควบคุมการวิ่งและซูม
โดยค่าเริ่มต้นระบบอาวุธจะเพิ่มความสามารถในการ "วิ่ง" ดังนั้นผู้เล่นสามารถวิ่งโดยกดปุ่ม Shift ค้างไว้ กดเต็มที่บนสติ๊กเกอร์ไดนามิก (มือถือ) หรือกดเต็มที่บนสติ๊กเกอร์ซ้าย (เกมแพด)หากคุณต้องการปิดใช้งานการวิ่ง ให้ตั้งค่าค่าของ SprintEnabled ภายใน ระบบอาวุธ / การกำหนดค่า เป็น ปิด ระบบยังลดความเร็วของผู้เล่นขณะเล็ง/ซูม แต่คุณสามารถปิดการใช้งานพฤติกรรมนี้โดยการตั้งค่าค่าของ SlowZoomWalkEnabled เป็น ไม่ถูกต้อง
