FiveM YTYP คืออะไร ใช้ทำอะไรกับ Custom Model และแก้ปัญหา Object ไม่ขึ้นอย่างไร

หากติดตั้ง FiveM Custom Map หรือ MLO แล้วพบไฟล์นามสกุล .ytyp อยู่คู่กับ .ymap, .ydr และ .ytd ไฟล์นี้ไม่ควรถูกลบ เพราะ YTYP เป็นส่วนสำคัญที่ใช้กำหนด Archetype ของ Custom Assets เพื่อให้ GTA V/FiveM รู้จัก Model และนำไปใช้งานใน Map ได้

ใน Cfx.re Assets Manual ขั้นตอนสร้าง Custom GTA V Asset ผ่าน Blender/Sollumz จะสร้าง Drawable ก่อน จากนั้นสร้าง YTYP ภายในส่วน Archetype Definition และใช้คำสั่ง Auto-Create From Selected เพื่อสร้าง Archetype จาก Drawable ที่เลือก ก่อน Export YTYP ออกไปใช้งานจริง

บทความนี้จาก comsiam จะอธิบายว่า FiveM YTYP คืออะไร แตกต่างจาก YMAP และ YDR อย่างไร ทำไม Custom Object บางตัวไม่ขึ้นเมื่อ YTYP หาย และควรตรวจอะไรเมื่อ Map โหลด Model ไม่ครบ

FiveM YTYP คืออะไร

YTYP คือไฟล์ที่ใช้เก็บ Archetype Definition ของ Assets ใน GTA V/FiveM

เข้าใจแบบง่ายที่สุดได้ว่า

YDR
= ตัว 3D Model

YTYP
= ข้อมูลที่ทำให้เกมรู้จัก Model ในฐานะ Archetype

YMAP
= นำ Archetype นั้นไปวางในโลก

Cfx.re แยก Workflow อย่างชัดเจน โดย Part 3 ของ Assets Manual สร้าง Drawable และ YTYP ก่อน ส่วน Part 4 จึงนำ Entity/Archetype ไปวางใน YMAP ผ่าน CodeWalker

① Archetype คืออะไร

Archetype สามารถมองว่าเป็น Definition ของ Asset ที่ระบบ Map ใช้อ้างถึง

ตัวอย่าง Custom Model

custom_shop.ydr

อาจมี Archetype ชื่อ

custom_shop

อยู่ใน YTYP

จากนั้น YMAP จึงสามารถสร้าง Entity ที่อ้าง

custom_shop

แล้วนำไปวางที่ Coordinates ที่ต้องการได้

ใน Official Map Workflow ของ Cfx.re ผู้สร้าง YMAP จะเพิ่ม Entity แล้วเลือกหรือกำหนด Archetype ของ Entity นั้นก่อนจัดตำแหน่งใน World

② YTYP ไม่ใช่ตัว Model

นี่เป็นจุดที่ต้องจำให้แม่น

YTYP ไม่ได้เก็บ Geometry หลักของอาคารแทน YDR

ตัวอย่าง

custom_bank.ydr

คือ Drawable Asset

ส่วน

custom_bank.ytyp

สามารถเก็บ Archetype Definition ที่สัมพันธ์กับ Drawable นั้น

Cfx.re Assets Manual ให้สร้าง Drawable ก่อน แล้วค่อยสร้าง YTYP Archetype จาก Drawable ที่เลือก

ดังนั้นถ้า YDR หาย การมี YTYP อยู่ก็ไม่ได้สร้าง Model ขึ้นมาแทน

③ YTYP ต่างจาก YMAP อย่างไร

จำสั้น ๆ

YTYP

บอกว่า

Asset คืออะไร

YMAP

บอกว่า

Asset อยู่ตรงไหน

Official FiveM Asset Workflow แบ่งขั้นตอนนี้ออกจากกันอย่างชัดเจน: Part 3 สร้าง YTYP ส่วน Part 4 สร้าง YMAP และเพิ่ม Entity ที่อ้าง Archetype

ตัวอย่างเชิงแนวคิด

YTYP
↓
custom_shop = Archetype

YMAP
↓
วาง custom_shop ที่ X,Y,Z

④ YTYP ต่างจาก YDR อย่างไร

YDR

เน้น Drawable/3D Asset

YTYP

เน้น Archetype Definition

Workflow ปัจจุบันใน Cfx.re Assets Manual คือสร้าง Mesh → Convert เป็น Drawable → Export RAGE Asset → สร้าง YTYP → Auto-Create Archetype จาก Drawable

ดังนั้น Custom Map ที่มี Model ใหม่มักต้องมอง YDR และ YTYP เป็น Asset ที่สัมพันธ์กัน

⑤ YTYP ต่างจาก YTD อย่างไร

YTD

คือ Texture Dictionary

YTYP

คือ Archetype Definition

ถ้า

Model ขึ้น
แต่ Texture ขาว

ควรตรวจ Texture/YTD มากกว่า YTYP

แต่ถ้า

Custom Model ไม่ขึ้นเลย

ขณะที่ YMAP ยังทำงานกับ Vanilla Objects ได้ปกติ YTYP/Archetype และ YDR เป็นจุดสำคัญที่ควรตรวจต่อ

⑥ YTYP ต่างจาก YBN อย่างไร

YBN

เกี่ยวข้องกับ Collision

YTYP

เกี่ยวข้องกับ Archetype Definition ของ Asset

Cfx.re มี Workflow แยกสำหรับการสร้าง Collision โดยใช้ Bound Geometry, BVH และ Collision Mesh ซึ่งต่างจากขั้นตอนสร้าง YTYP ใน Asset Creation

ดังนั้นถ้าเห็น Model แต่เดินทะลุ ให้ตรวจ Collision ก่อน ไม่ควรแก้ YTYP แบบสุ่ม

⑦ FiveM รองรับ YTYP โดยตรงหรือไม่

Cfx.re มีเอกสาร Cookbook ระบุว่า FiveM และ RedM รองรับ Raw .ymap และ .ytyp รวมถึง XML-format ที่ตั้งนามสกุลไฟล์เป็น .ymap หรือ .ytyp โดยตรง โดยบทความดังกล่าวเป็นเอกสาร Archive จากปี 2021 จึงควรใช้ร่วมกับ Workflow ปัจจุบันใน Assets Manual

สำหรับ Asset ใหม่ ควรยึด Workflow ปัจจุบันของ Cfx.re เป็นหลัก

⑧ YTYP จำเป็นกับ Custom Model ทุกตัวหรือไม่

ไม่ควรตั้งกฎว่า Asset ทุกชนิดต้องมี YTYP แยกหนึ่งไฟล์ต่อหนึ่ง Model

แต่ใน Official Custom Asset Workflow ของ Cfx.re การสร้าง Drawable สำหรับนำไปวางเป็น Custom Map Asset จะมีขั้นตอนสร้าง YTYP Archetype เพื่อให้ Asset ถูกนำไปใช้ใน Map Workflow ต่อ

ดังนั้นถ้า Resource ต้นฉบับให้ .ytyp มาด้วย อย่าลบทิ้งเพียงเพราะไม่รู้ว่ามันใช้ทำอะไร

⑨ Vanilla Object ต้องมี Custom YTYP ใหม่ไหม

ถ้าใช้ Archetype ที่มีอยู่แล้วใน GTA V คุณไม่ได้กำลังสร้าง Custom Drawable Definition ใหม่แบบเดียวกับ Asset ที่สร้างเอง

Official YMAP Tutorial ให้ค้นหา Model/Entity ที่ต้องการใน CodeWalker แล้วกำหนด Archetype ให้ Entity ก่อนวางลง YMAP

จึงแตกต่างจากกรณีสร้าง Model ใหม่ใน Blender แล้วต้องสร้าง Archetype สำหรับ Asset นั้นตาม Asset Workflow

⑩ YTYP หนึ่งไฟล์มีหลาย Archetype ได้ไหม

ได้ใน Workflow ของ Asset Development เพราะ YTYP เป็นชุด Archetype Definitions และ Cfx.re LOD Tutorial ให้สร้าง YTYP แล้วเพิ่มทั้ง HD Drawable และ LOD Drawable เป็น Archetypes ภายในขั้นตอนเดียวกัน

จึงไม่จำเป็นต้องมี

1 Model = 1 YTYP File

เสมอไป

Project สามารถจัด Archetypes หลายตัวใน YTYP ตามโครงสร้างที่เหมาะสม

⑪ ทำไม YTYP หายแล้ว Custom Object ไม่ขึ้น

ถ้า YMAP กำลังอ้าง Archetype ของ Custom Model แต่ Definition ที่ Asset Workflow ต้องใช้หาย เกมอาจไม่สามารถใช้ Custom Asset นั้นตามที่ Map ออกแบบไว้

ความสัมพันธ์พื้นฐานคือ

YDR
↓
YTYP Archetype
↓
YMAP Entity

ซึ่งสอดคล้องกับลำดับการสร้าง Asset และ Map ใน Official Cfx.re Tutorials

⑫ Vanilla Props ขึ้น แต่ Custom Props หาย

นี่เป็นอาการที่ช่วย Debug ได้มาก

สมมติ YMAP มี

Vanilla Bench
Custom Sign
Custom Building

แล้วเกิด

Vanilla Bench → ขึ้น
Custom Sign → หาย
Custom Building → หาย

แสดงว่า YMAP มีโอกาสทำงานอยู่แล้ว และควรเน้นตรวจ Custom Drawable/YTYP/Archetype ต่อ เพราะ Official Workflow ใช้ YTYP เพื่อสร้าง Archetype ของ Custom Drawable ก่อนนำไปวางใน YMAP

⑬ Custom Model ขึ้นบางตัว บางตัวไม่ขึ้น

อย่าเขียน YTYP ใหม่ทั้งหมดทันที

ให้ตรวจเฉพาะ Asset ที่หาย เช่น

shop_wall → ขึ้น
shop_sign → หาย
shop_door → หาย

ตรวจว่า Archetypes ของ

shop_sign
shop_door

ถูกสร้างและ Export อยู่ใน YTYP ที่ Resource ใช้หรือไม่

การแยก Debug ราย Archetype จะง่ายกว่ารื้อทั้ง Map

⑭ ชื่อ Archetype สำคัญไหม

สำคัญ เพราะ YMAP Entity ต้องอ้าง Archetype ที่ถูกต้อง

Official YMAP Workflow ให้ผู้สร้างกำหนด Archetype ของ Entity จากชื่อ Model/Entity ก่อนวางในโลก

ดังนั้นหาก YDR ถูก Rename หรือ Archetype Name เปลี่ยน แต่ YMAP ยังอ้างชื่อเก่า Asset อาจไม่ทำงานตามที่ต้องการ

⑮ Rename YDR แล้วต้องระวัง YTYP

อย่า Rename

custom_shop.ydr

เป็น

new_shop.ydr

แล้วคิดว่าทุก Reference จะเปลี่ยนอัตโนมัติ

Official Asset Workflow สร้าง YTYP Archetype จาก Drawable ที่เลือก ดังนั้นชื่อและ Definition ของ Asset มีความสัมพันธ์กับ Project Asset Structure

หากต้อง Rename Asset จริง ควรตรวจ Archetype และ YMAP References ทั้งชุด

⑯ Rename Archetype แล้วต้องแก้ YMAP ไหม

ถ้า YMAP Entity กำลังอ้าง Archetype Name เดิม ก็ต้องตรวจ Reference ให้ตรงกับชื่อใหม่

ตัวอย่าง

เดิม
YTYP → custom_shop
YMAP → custom_shop

แต่แก้เป็น

YTYP → new_shop
YMAP → custom_shop

Reference ไม่ตรงกัน

Official Workflow ยืนยันว่า YMAP Entity มี Archetype Setting ที่ผู้สร้างกำหนดโดยตรง

⑰ วิธีสร้าง YTYP ใน Blender/Sollumz

Cfx.re Assets Manual ระบุขั้นตอนปัจจุบันประมาณนี้

สร้าง/เตรียม Model
↓
Convert เป็น Drawable
↓
Export RAGE Assets
↓
เปิด Archetype Definition
↓
สร้าง YTYP ใหม่
↓
เลือก Drawable
↓
Auto-Create From Selected
↓
Export YTYP

นี่คือ Workflow ที่ Official FiveM Asset Documentation ใช้กับ Blender/Sollumz

⑱ Auto-Create From Selected คืออะไร

ในขั้นตอนสร้าง YTYP Cfx.re ระบุให้เลือก Drawable แล้วใช้

Auto-Create From Selected

เพื่อสร้าง Archetype จาก Drawable ที่เลือก ก่อน Export YTYP

สำหรับผู้เริ่มต้น วิธีนี้ปลอดภัยกว่าการสร้าง Definition ทุกค่าเองโดยไม่เข้าใจ Asset

⑲ YTYP ต้องสร้างก่อน YMAP หรือไม่

ใน Official Beginner Workflow จะสร้าง Custom Drawable และ YTYP ก่อน จากนั้น Part ถัดไปจึงนำ Asset ไปวางผ่าน CodeWalker/YMAP

ลำดับที่เข้าใจง่ายจึงเป็น

Model
↓
Drawable
↓
YTYP
↓
CodeWalker
↓
YMAP

⑳ CodeWalker ใช้ YTYP อย่างไร

หลังมี Custom Asset Definition แล้ว CodeWalker สามารถใช้ Archetype ของ Model นั้นกับ Entity ใน YMAP

Official YMAP Tutorial ให้ค้นหา Entity/Model Name แล้วเปลี่ยน Archetype Setting ของ Entity ก่อน Transform และ Save Map

ดังนั้น CodeWalker เป็นจุดที่เห็นความสัมพันธ์ระหว่าง YTYP Archetype กับ YMAP Placement ได้ชัดมาก

㉑ YTYP เกี่ยวกับ LOD หรือไม่

เกี่ยวข้อง

Official Cfx.re LOD Tutorial ให้เตรียม

HD Model
LOD Model

แปลงทั้งสองเป็น Drawables แล้วสร้าง YTYP และเพิ่ม Drawable ทั้งสองเป็น Archetypes ก่อนนำไปสร้าง HD/LOD YMAP ต่อ

ดังนั้นระบบ LOD ไม่ได้มีเพียง YMAP แต่ YTYP ต้องรู้จักทั้ง Asset HD และ LOD ที่ Map จะใช้อีกด้วย

㉒ HD และ LOD ใช้ YTYP เดียวกันได้ไหม

ใน Official LOD Example Cfx.re ให้สร้าง YTYP แล้วเพิ่มทั้ง HD และ LOD Drawables เป็น Archetypes ภายในขั้นตอนเดียวกัน

จากนั้นจึงสร้าง YMAP แยกสำหรับ HD และ LOD และเชื่อม Parent/Child Relationship ใน CodeWalker

㉓ YTYP ทำให้ Model อยู่ไกลขึ้นไหม

YTYP เป็นเพียงส่วนหนึ่งของ Asset Definition

พฤติกรรมระยะการแสดงผลของ Map ยังเกี่ยวข้องกับ

  • YMAP

  • LodDist

  • LOD Level

  • HD/LOD Hierarchy

Official Cfx.re LOD Tutorial ปรับค่าระยะผ่าน HD/LOD Entities ใน YMAP หลังจากสร้าง YTYP Archetypes แล้ว

ดังนั้น Object หายเมื่ออยู่ไกลไม่ควรแก้ YTYP อย่างเดียว

㉔ YTYP เกี่ยวกับประตู Custom หรือไม่

เกี่ยวข้องได้อย่างชัดเจน

Cfx.re Door Creation Tutorial ให้สร้าง Custom Door เป็น Drawable แล้วสร้าง YTYP Archetype พร้อมตั้ง Special Attribute เป็น Normal Door (7) และใช้ Archetype Flags ที่เกี่ยวข้องกับ Dynamic/Door Physics

จึงเห็นว่า YTYP ไม่ได้มีหน้าที่แค่บอกชื่อ Model แต่ Archetype สามารถมี Configuration เฉพาะประเภท Asset ได้ด้วย

㉕ ประตู Model ขึ้นแต่ทำงานผิดควรตรวจ YTYP ไหม

ควรตรวจหากเป็น Custom Door Asset

Official Door Workflow กำหนด YTYP Settings สำหรับ Door โดยเฉพาะ รวมถึง Special Attribute และ Archetype Flags

แต่ถ้าประตูมองเห็นและ Physics ปกติ เพียงแค่ Job Lock ใช้ไม่ได้ ปัญหานั้นอาจอยู่ที่ Door Lock Script มากกว่า YTYP

㉖ YTYP เกี่ยวกับ Animation ได้ไหม

ได้

Cfx.re Map Animation Tutorial ให้สร้าง YTYP Archetype และกำหนด Clip Dictionary รวมถึง Archetype Flags เช่น

UV Anims (YCD)
Auto Start Anim

สำหรับ Animated Map Assets

ดังนั้น YTYP สามารถมีข้อมูลเพิ่มเติมสำหรับ Asset ที่มี Behavior ซับซ้อนกว่าของ Static ทั่วไป

㉗ Animated Billboard ต้องมีอะไรบ้าง

ใน Official Example ผู้สร้างจะเตรียม Model/Textures, สร้าง Animation/Clip Dictionary, Export Drawable และ Clip Dictionary จากนั้นสร้าง YTYP Archetype ที่อ้าง Clip Dictionary และเปิด Flags สำหรับ Animation

จึงอาจมีความสัมพันธ์ประมาณ

YDR
+
YCD
+
YTYP
+
YMAP

ตาม Asset ที่สร้าง

㉘ YTYP ของ MLO เหมือน Prop ธรรมดาไหม

MLO/Interior Archetypes สามารถมีโครงสร้างซับซ้อนกว่า Static Prop ทั่วไป

สำหรับผู้ดูแล Server ที่เพียงติดตั้ง MLO สิ่งสำคัญที่สุดคือ อย่าลบหรือ Merge YTYP โดยเดา หาก Package ต้นฉบับทำงานอยู่

YTYP เป็น Asset Definition Layer ที่ Maps และ Custom Models ใช้อ้าง และ Official FiveM Tooling ใช้ Archetype Definitions ในหลาย Workflow ตั้งแต่ Static Assets, LOD, Doors ไปจนถึง Animation

㉙ YTYP หายหลัง Merge Map

นี่เป็นหนึ่งในสาเหตุที่ควรตรวจทันทีหาก

Map A เดี่ยว → ปกติ
Map B เดี่ยว → ปกติ
Merge A+B → Custom Objects หาย

ตรวจว่า YTYP ของทั้งสองชุดถูกเก็บไว้ครบหรือไม่

อย่า Copy เฉพาะ

.ymap
.ydr
.ytd

แล้วทิ้ง .ytyp

เพราะ Official Asset Workflow ใช้ YTYP เป็นขั้นตอนสร้าง Archetypes ก่อนนำ Assets ไปวางใน YMAP

㉚ Replace YTYP ทั้งไฟล์อันตรายไหม

หากไฟล์หนึ่งมี Archetypes หลายตัว การนำ YTYP ของ Asset ใหม่ไปทับ YTYP เดิมทั้งไฟล์อาจทำให้ Definitions ของ Assets เดิมหายไป

Official LOD Tutorial แสดงตัวอย่างชัดว่า YTYP เดียวสามารถมี Archetypes มากกว่าหนึ่ง Drawable ได้

ดังนั้นก่อน Replace ต้องรู้ว่าภายในไฟล์มีอะไรอยู่บ้าง

㉛ ควร Merge YTYP หรือแยกไฟล์

ไม่มีเหตุผลว่าต้องรวมทุกอย่างเป็น YTYP เดียว

Project สามารถจัด YTYP ตาม Asset Group ที่เหมาะสมได้ เพราะ Asset Workflow รองรับการสร้าง YTYP และเพิ่ม Archetypes ตาม Project Structure

สำหรับ Server ใหญ่ การแยกตาม

police
hospital
mechanic
city_props

อาจ Debug ง่ายกว่ารวมทุก Archetype เป็นไฟล์เดียว

㉜ YTYP ชื่อซ้ำกันมีปัญหาไหม

สิ่งที่สำคัญกว่าเพียงชื่อไฟล์คือ Archetypes/Asset References ภายใน Project

หากนำ Assets หลายชุดมารวมกัน ควรตรวจว่ามี Model/Archetype Names ที่ชนกันหรือไม่

เพราะ YMAP Entities อ้าง Archetypes ตามชื่อที่กำหนดใน Map Workflow

อย่า Rename เพียงชื่อไฟล์ .ytyp แล้วคิดว่า Archetype Conflict ภายในจะหายตาม

㉝ Archetype Name ซ้ำต้องทำอย่างไร

ถ้า Custom Asset สองตัวตั้งชื่อ Archetype เหมือนกัน แต่เป็น Model คนละตัว ให้แยก Resource ทดสอบก่อน

จากนั้นตรวจ

  • Drawable Name

  • Archetype Name

  • YMAP References

  • Resource ที่ Stream Asset

การ Rename ต้องทำอย่างมีระบบเพราะ Asset Creation และ YMAP Placement เชื่อมกันผ่าน Archetype

㉞ แค่ Rename ไฟล์ YTYP แก้ Conflict ได้ไหม

ไม่ควรคาดหวังเช่นนั้น

ตัวอย่าง

city_props.ytyp

เปลี่ยนเป็น

city_props2.ytyp

เป็นเพียงการเปลี่ยนชื่อ Container File

แต่ถ้า Archetype ภายในยังชื่อ

custom_wall

เหมือน Asset อีกตัว ปัญหาที่ระดับ Definition/Reference อาจยังอยู่

ดังนั้นต้องตรวจข้อมูลภายใน Project ด้วย

㉟ YTYP XML แก้ด้วย Text Editor ได้ไหม

Cfx.re Cookbook Archive ระบุว่า FiveM รองรับ XML-format .ytyp โดยตั้งชื่อไฟล์เป็น .ytyp โดยตรงแทน .ytyp.xml และระบบจะ Parse ผ่าน Game Parser

แต่สำหรับผู้เริ่มต้น การแก้ Archetype Data ด้วย Text Editor มีความเสี่ยง

ถ้าต้องสร้าง Asset ใหม่ ใช้ Blender/Sollumz ตาม Official Assets Manual จะเห็นโครงสร้าง Archetype ชัดกว่า

㊱ อย่าเปลี่ยนนามสกุลเป็น .ytyp.xml

ในเอกสาร Cfx.re Cookbook ที่กล่าวถึง XML-format ระบุว่าชื่อควรเป็นลักษณะ

mh1_01.ytyp

ไม่ใช่

mh1_01.ytyp.xml

เพื่อให้ Game Parser ใช้งานตามรูปแบบดังกล่าว

㊲ Binary กับ XML YTYP แบบไหนดีกว่า

ผู้ใช้ FiveM ทั่วไปไม่จำเป็นต้อง Convert ไปมาหาก Asset ต้นฉบับใช้งานได้อยู่แล้ว

Cfx.re ปัจจุบันมี Asset Workflow ผ่าน Sollumz ที่ Export YTYP และมีเอกสาร Archive ที่ยืนยัน XML-format Support

ดังนั้นหลักที่ปลอดภัยคือ

รักษา Format ของ Resource ต้นฉบับจนกว่าจะมีเหตุผลต้องแก้

㊳ YTYP ต้องอยู่ใน stream หรือไม่

Map Assets มักถูกเก็บเป็น Streaming Content ภายใน FiveM Map Resource ตามโครงสร้างของ Resource

Official Map Tutorial ให้ Save YMAP ลง FiveM Map Resource และสร้าง Resource ที่มี stream Folder กับ fxmanifest.lua ขณะที่ Asset Workflow Export YTYP สำหรับนำไปใช้กับ Assets ใน Map

สำหรับ Resource ที่ซื้อหรือดาวน์โหลดมา ควรรักษา Directory Structure ของ Developer ก่อน

㊴ ตัวอย่างโครงสร้าง Resource ที่มี YTYP

ตัวอย่าง

custom_map/
│
├── fxmanifest.lua
│
└── stream/
    ├── city.ymap
    ├── city_props.ytyp
    ├── custom_shop.ydr
    └── custom_shop.ytd

FiveM Resource Manifest ปัจจุบันใช้ fxmanifest.lua ภายใน Resource Folder และ Official Map Tutorial สร้าง stream Folder สำหรับ Map Resource

㊵ this_is_a_map เกี่ยวกับ YTYP หรือไม่

this_is_a_map เป็น Resource Manifest Entry สำหรับระบุ GTA Map Resource ไม่ใช่ตัว YTYP เอง

Official Map Tutorial ใช้

fx_version 'cerulean'
game 'gta5'
lua54 'yes'
this_is_a_map 'yes'

ใน Map Resource ตัวอย่าง

ดังนั้นถ้า YTYP หาย การเพิ่ม this_is_a_map ไม่ได้สร้าง Archetype ที่หายขึ้นมาใหม่

㊶ fxmanifest.lua ต้องประกาศ YTYP แบบไหน

อย่าคัดลอก Data File Declaration จาก Vehicle Meta Files มาใช้กับ YTYP โดยเดา

FiveM มี Workflow Map Resource สำหรับ Streaming Assets โดยตรง และ Official Cfx.re Documentation รองรับ .ymap/.ytyp ในระบบ Map Asset

ถ้า Resource ต้นฉบับมี Manifest ที่ทำงานอยู่แล้ว ให้ใช้ของเดิมเป็นหลัก

㊷ YTYP ไม่ขึ้นหลัง Restart Resource

ให้ตรวจก่อนว่าเป็น YTYP จริงหรือ Asset ที่มันอ้าง

ลำดับคือ

Resource
↓
YTYP Archetype
↓
YDR Model
↓
YMAP Placement

Official Workflow สร้าง YTYP จาก Drawable แล้วนำ Archetype ไปใช้กับ YMAP Entity

หากหนึ่งจุดขาด Custom Object อาจไม่ขึ้นแม้ Resource ถูก Restart แล้ว

㊸ Resource Started แต่ Custom Asset หาย

Started resource ไม่ได้ยืนยันว่า Asset Definition ทุกตัวถูกต้อง

ถ้า Vanilla Entities ใน YMAP ยังขึ้น แต่ Custom Models หาย ให้กลับไปตรวจ

YTYP
YDR
Archetype Name

ก่อน

เพราะ Map Placement สามารถทำงานได้ขณะที่ Custom Archetype บางตัวผิด

㊹ YTYP ทำให้ Texture หายไหม

YTYP ไม่ใช่ Texture Dictionary

ถ้า

Model ขึ้น
รูปร่างถูก
แต่พื้นผิวขาว

อย่าเริ่ม Rewrite YTYP

ให้ตรวจ

YTD
Material
Texture

ก่อน

แยก Definition Problem ออกจาก Texture Problem จะ Debug ได้เร็วกว่า

㊺ YTYP ทำให้เดินทะลุไหม

ไม่ควรสรุปว่าเป็นสาเหตุแรก

Collision มี Workflow และ Asset Structure ของตัวเอง โดย Cfx.re มีบทเฉพาะสำหรับ Bound Geometry และ .ybn Collision

ถ้า Model ขึ้นครบแต่เดินทะลุ ให้เริ่มที่ Collision ก่อน

㊻ YTYP มีผลต่อ FPS มากไหม

ไฟล์ Definition เองไม่ควรถูกมองเป็นตัว Rendering Load หลักเหมือน Geometry หรือ Texture

แต่ Archetype ที่ YTYP กำหนดอาจชี้ไปยัง Assets ที่หนัก และ Asset เหล่านั้นถูกนำไปวางผ่าน YMAP

สำหรับ Performance จึงควรตรวจ

  • YDR Geometry

  • YTD Texture

  • LOD

  • จำนวน Entities

มากกว่าลดขนาดข้อความใน YTYP

Official LOD Workflow เน้นลด Geometry/Materials ของ LOD Assets โดยตรง

㊼ YTYP กับ LOD Optimization ต้องตรวจอะไร

ตรวจว่า

HD Drawable
LOD Drawable

มี Archetypes ครบ

จากนั้นตรวจ YMAP ว่า

  • HD Entity

  • LOD Entity

  • LodDist

  • Parent/Child

ถูกกำหนดตาม Workflow

Official Cfx.re Tutorial แยกขั้นแรกให้เพิ่ม Drawables ทั้งสองเป็น YTYP Archetypes ก่อน แล้วจึงสร้าง HD/LOD YMAP ต่อ

㊽ วิธีทดสอบ YTYP หลังแก้

อย่าเริ่มด้วย Map ใหญ่ทั้งเมือง

ทดสอบ Asset หนึ่งตัวก่อน

เช่น

custom_sign

สร้าง/ใช้ YMAP ที่วาง Archetype นั้นเพียงหนึ่ง Entity

จากนั้นตรวจ

  • Model ขึ้นไหม

  • Texture ถูกไหม

  • Position ถูกไหม

  • LOD ถูกไหมถ้ามี

เมื่อหนึ่ง Archetype ทำงานแล้วจึงเพิ่ม Assets อื่น

㊾ วิธี Debug FiveM YTYP แบบเร็วที่สุด

ใช้ลำดับนี้

ขั้นที่ 1

ยืนยันว่า Resource Start

ขั้นที่ 2

ตรวจว่า .ytyp อยู่ใน Resource

ขั้นที่ 3

ดูว่า Object ที่หายเป็น Vanilla หรือ Custom

ขั้นที่ 4

ถ้า Custom ให้ตรวจ YDR

ขั้นที่ 5

ตรวจ YTYP Archetype

Official Asset Workflow สร้าง YTYP Archetype จาก Drawable โดยตรง

ขั้นที่ 6

ตรวจ Archetype Name ที่ YMAP ใช้

Official Map Workflow กำหนด Archetype ของ Entity ใน YMAP

ขั้นที่ 7

ถ้า Rename Model มา ให้ตรวจ References ทั้งหมด

ขั้นที่ 8

ถ้ามี LOD ให้ตรวจ HD/LOD Archetypes

Cfx.re LOD Workflow ใช้ Archetypes ของทั้งสอง Models ก่อนสร้าง HD/LOD YMAP

ขั้นที่ 9

ถ้าเป็น Custom Door ให้ตรวจ YTYP Door Settings

ขั้นที่ 10

ถ้าเป็น Animated Asset ให้ตรวจ Clip Dictionary/Archetype Flags

ขั้นที่ 11

ปิด Resource ที่อาจมี Asset ชื่อชนกัน

ขั้นที่ 12

ทดสอบ Resource ต้นฉบับก่อน Merge

㊿ ตารางสรุปปัญหา FiveM YTYP

อาการจุดที่ควรตรวจ
Custom Model ไม่ขึ้นYTYP / YDR
Vanilla Props ขึ้น แต่ Custom หายCustom Archetype
Object อยู่ผิดตำแหน่งYMAP
Model ขึ้นแต่ Texture ขาวYTD / Material
Model ขึ้นแต่เดินทะลุCollision / YBN
Rename Model แล้วหายYTYP/YMAP References
Merge แล้ว Custom Assets หายYTYP ถูก Replace/ขาด
Asset สองตัวชื่อชนArchetype/Drawable Names
Door ขึ้นแต่ Physics ผิดYTYP Door Settings / Collision
Animated Prop ไม่เล่นYTYP Animation Flags / YCD
HD ขึ้นแต่ LOD หายYTYP LOD Archetype / YMAP
ไกลแล้ว Object หายผิดYMAP LOD Configuration
Resource Started แต่ Asset ไม่ขึ้นYTYP/YDR/YMAP Reference
Texture หายอย่างเดียวไม่ใช่ YTYP เป็นจุดแรก

YTYP ที่ดีควรจัดอย่างไร

สำหรับ Project ที่มี Custom Assets จำนวนมาก ควร

  • ตั้ง Archetype Name ให้สื่อความหมาย

  • หลีกเลี่ยงชื่อชน

  • เก็บ Custom Drawables และ Definitions เป็นระบบ

  • แยก Asset Groups ตาม Project เมื่อเหมาะสม

  • ตรวจ HD/LOD Archetypes

  • Backup ก่อน Merge

  • อย่า Rename โดยไม่แก้ Reference

  • ทดสอบทีละ Asset

Official FiveM Workflow ใช้ YTYP กับ Asset หลายประเภท ตั้งแต่ Static Drawable, LOD, Custom Door และ Animated Map Asset จึงเห็นได้ว่า Archetype Definition เป็นส่วนสำคัญของ Asset Pipeline มากกว่าที่ชื่อไฟล์สั้น ๆ จะบอก

ควรรวม YTYP ทุก Map เป็นไฟล์เดียวไหม

ไม่จำเป็น

การลดจำนวนไฟล์ไม่ใช่เป้าหมายหลักของ Map Optimization

หากแยก

police_assets.ytyp
hospital_assets.ytyp
city_props.ytyp
racetrack_assets.ytyp

แล้วดูแลได้ง่ายกว่า ก็ไม่มีเหตุผลต้อง Merge ทุก Archetype เข้าก้อนเดียวเพียงเพื่อให้ Folder ดูสั้น

ยิ่ง Server มี Custom Maps จำนวนมาก การแยก Ownership ของ Assets ชัดเจนยิ่งช่วย Debug ได้ง่าย

ความสัมพันธ์ YTYP, YMAP, YDR, YTD และ YBN

จำภาพรวมนี้ไว้

YDR
│
│ 3D Model
↓
YTYP
│
│ Archetype Definition
↓
YMAP
│
│ Placement ใน World
↓
ผู้เล่นมองเห็น Object

YTD
→ Texture ของ Asset

YBN
→ Collision

Official Cfx.re Assets Manual แบ่ง Workflow ตามแนวคิดนี้ โดยสร้าง Drawable/YTYP, วาง Asset ใน YMAP และสร้าง Collision เป็นขั้นตอนแยกกัน

สรุป FiveM YTYP คืออะไร

FiveM YTYP คือไฟล์ Archetype Definition ที่ใช้กำหนดข้อมูลของ Custom Assets เพื่อให้ Model สามารถถูกอ้างและนำไปใช้ใน Map ได้

Workflow พื้นฐานของ Cfx.re คือ

สร้าง Model
↓
Convert เป็น Drawable
↓
Export Asset
↓
สร้าง YTYP
↓
Auto-Create Archetype
↓
นำ Archetype ไปวางใน YMAP

YTYP ยังเกี่ยวข้องกับ Asset ขั้นสูงได้ เช่น HD/LOD Assets, Custom Doors และ Animated Map Objects ตาม Workflow ปัจจุบันใน Cfx.re Assets Manual

จำง่ายที่สุดคือ

YDR → Model
YTYP → เกมรู้จัก Model
YMAP → วาง Model ในโลก
YTD → Texture
YBN → Collision

ถ้า Vanilla Object ขึ้นแต่ Custom Object หาย ให้ตรวจ YTYP/YDR

ถ้า Object อยู่ผิดตำแหน่ง ให้ตรวจ YMAP

ถ้า Model ขึ้นแต่ Texture ขาว ให้ตรวจ YTD

ถ้า เดินทะลุ ให้ตรวจ Collision/YBN

และถ้า HD Model ขึ้นแต่ LOD ไม่ทำงาน ให้ตรวจทั้ง YTYP Archetypes และ YMAP LOD Hierarchy

แนวทางของ comsiam คืออย่าลบหรือ Merge YTYP เพียงเพราะเห็นว่าไฟล์มีขนาดเล็ก เพราะไฟล์นี้เป็น Definition Layer ที่เชื่อม Custom Model เข้ากับ Map และการสูญเสีย Archetype เพียงตัวเดียวสามารถทำให้ Object หายทั้งชิ้นได้ แม้ YMAP, Texture และ Resource จะยังอยู่ครบก็ตาม

Comments

Popular posts from this blog

FiveM ยังน่าเล่นไหม? Enhanced เปลี่ยน FiveM แค่ไหน

FiveM คืออะไร เล่นอย่างไร สำหรับมือใหม่ เริ่มต้นตั้งแต่ศูนย์

วิธีตั้ง Admin Permission ด้วย add_ace และ add_principal FiveM แบบละเอียด