แก้ปัญหา
Body ลอยอยู่เหนือท่าจริง
Section titled “Body ลอยอยู่เหนือท่าจริง”อาการ: Body ของ Figura ยืนอยู่ระดับเดิม ขณะที่ Epic Fight body roll/dive ติดพื้น
สาเหตุ: avatar มี part ที่ชื่อไม่ตรง alias list ในตัว → fallback ไปยัง render path ปกติของ Figura ที่ไม่ตามท่า EF
แก้: เปลี่ยนชื่อ part ให้ตรง naming convention หรือ bind ใน Lua:
function events.LOAD() fightura:mapBone("MyChest", "Chest") fightura:mapBone("LeftUpperArm01", "Arm_L") -- ... สำหรับทุก part body ที่ยังไม่ mapendHead accessory ลงไปอยู่ระดับอก
Section titled “Head accessory ลงไปอยู่ระดับอก”อาการ: ผม/หมวก render อยู่ระดับ body ไม่ใช่บนหัว
สาเหตุ: part ของ accessory นี้ไม่มี parentType (Head) ที่จับได้ และชื่อก็ไม่อยู่ในรายการ alias
แก้: ตั้ง parent type ของ part เป็น Head ใน .bbmodel หรือ bind:
fightura:mapBone("MyHairRoot", "Head")Avatar ไม่ animate เลย (Lua animation นิ่ง)
Section titled “Avatar ไม่ animate เลย (Lua animation นิ่ง)”อาการ: Idle wave, blinking, sword-draw animation ที่เขียนใน events.RENDER ไม่เล่น
สาเหตุ: Fightura build เก่าไม่ยิง renderEvent อัปเดตเป็น jar ล่าสุด
ตรวจสอบ: ใส่ใน Lua:
function events.RENDER(delta) print("rendering!", delta)endถ้าไม่เห็นอะไรใน chat → render event ไม่ยิง — ตรวจว่าใช้ Fightura 1.0.0 หรือใหม่กว่า และ Figura โหลดถูกต้อง
Mod โหลดไม่ขึ้น — ClassCastException หรือ LinkageError
Section titled “Mod โหลดไม่ขึ้น — ClassCastException หรือ LinkageError”อาการ: Crash ตอน load world, log มีคำว่า Fightura
สาเหตุ: Figura/Epic Fight version ไม่ตรง Fightura ทดสอบกับ:
- Figura
0.1.5+1.20.1-forge - Epic Fight
20.14.15.1
แก้:
- ดู crash report ที่
crash-reports/crash-*.txt - ถ้าเขียน “mixin failed” หรือ “ClassCastException involving FighturaPlayerRendererAccessor” — ตรวจว่า Fightura build ด้วย mixingradle (มี
fightura.refmap.jsonใน jar; ถ้าหายต้อง rebuild) - ถ้าเขียนว่า class ของ Figura/Epic Fight หาย — ตรวจว่ามอดทั้งสองลงเวอร์ชันถูกต้อง
Fightura ห่อ initialization ด้วย try { ... } catch (LinkageError | RuntimeException) อยู่แล้ว ส่วนใหญ่เวอร์ชันไม่ตรงจะ log error แทน crash ทั้งเกม
Custom alias ไม่ทำงาน
Section titled “Custom alias ไม่ทำงาน”อาการ: เรียก fightura:mapBone("MyPart", "Hand_L") แล้วแต่ part ไม่ตาม joint
ลองตรวจ:
events.LOADยิงจริงมั้ย? ใส่print("LOAD fired")เพื่อยืนยัน- ชื่อ part ถูกต้องมั้ย? ใน Figura/Blockbench ชื่อ case-sensitive แต่ใน
mapBonecase-insensitive ลองprint(fightura:getSupportedBones())ดูว่าอะไรลงทะเบียนไว้ - ชื่อ joint ถูกต้องมั้ย? ชื่อ joint case-sensitive และต้องตรง Epic Fight เป๊ะ ลอง
print(fightura:getJoints())ดู joint ที่มีจริงสำหรับ entity ปัจจุบัน - มี script อื่นเรียก
clearBones()หรือเปล่า? Override จะถูกล้างตอน world unload — แต่ script ที่เขียนเลอะเทอะอาจเรียกclearBones()โดยไม่ตั้งใจ
Mod โหลดได้แต่ accessory ไม่ตามอะไร
Section titled “Mod โหลดได้แต่ accessory ไม่ตามอะไร”อาการ: player render ปกติแต่ accessory ค้างอยู่ตำแหน่ง vanilla model ไม่สนใจท่า Epic Fight
สาเหตุ: Matrix bridge mixin (FighturaPartMatrixMixin) ไม่ถูก apply ส่วนใหญ่หมายถึง Figura เวอร์ชันใหม่กว่าที่ Fightura ทดสอบเปลี่ยน internal call site ของ recalculate()
แก้: เปิด issue ที่ GitHub พร้อม:
- Figura version
- Epic Fight version
- Screenshot ของ rendering ที่พัง
นี่คือปัญหา compatibility ที่ต้อง update ฝั่ง Fightura
เปิด log ละเอียด
Section titled “เปิด log ละเอียด”Fightura ใช้ logger มาตรฐานของ Forge ดูเฉพาะข้อความ Fightura:
grep -i "fightura" logs/latest.logควรเห็นอย่างน้อย:
[Fightura] Fightura starting[Fightura] Fightura registering events[Fightura] Fightura attached render layer to Epic Fight PLAYER renderer[Fightura] Fightura attached render layer to Epic Fight first-person rendererถ้า 2 บรรทัดล่างหายไป — PatchedRenderersEvent.Modify ไม่มาถึงเรา ส่วนใหญ่หมายถึง Epic Fight ไม่โหลด หรือมี mod อื่น cancel event
ติดอยู่ ?
Section titled “ติดอยู่ ?”เปิด issue ที่ https://github.com/Malemz1/Fightura/issues พร้อม:
- ไฟล์
latest.log(หรือส่วนที่เกี่ยวข้อง) - crash report ถ้ามี
- version ของ Forge / Figura / Epic Fight / Fightura
- คำอธิบายว่าคาดหวังอะไร และเห็นอะไรจริง