Huong Dan Invector: Twin Kunai Combo Va Single Skill

Huong Dan Invector: Twin Kunai Combo Va Single Skill

1. Co so va muc tieu

Phan Melee cua tai lieu nay da duoc doi chieu voi Assets/Invector-3rdPersonController/Melee Combat/Documentation_MeleeCombat.pdf. Tai lieu chinh thuc xac nhan cac quy tac sau:

Phan root motion va phoi hop voi Fantacode Parkour la quy uoc integration cua du an nay; PDF Melee Combat khong dua ra pipeline root-motion rieng cho truong hop Invector + Fantacode.

Tai lieu nay huong dan dua bo animation Twin Kunai vao nhan vat su dung Invector Melee Combat. Ket qua mong muon la:

Tai lieu ap dung cho Kunai_Invector_Parkour, nhung co the dung cho prefab Invector Melee khac co cung skeleton Avatar.

2. Phan cong viec: nguoi thiet ke va Codex

Nguoi thiet ke chi can cung cap mot bang cho moi don:

Truong Vi du
Clip Kunai_Combo_01
Loai Combo 1-4 hoac single skill
ATK_ID / moveset 0, Kunai
Start Damage / End Damage 0.23 / 0.48
Combo window 0.58 den 0.78
Root motion Tai cho, lao toi, hoac finisher
Body parts gay damage Tay phai, tay trai, kunai
Recoil/Reaction ID va damage Gia tri gameplay

Codex thuc hien cac phan con lai bang MCP Unity, sau khi nguoi thiet ke xac nhan bang nay:

  1. Dung get_animator_controller de kiem tra parameter, layer va state machine dang ton tai; khong doan ten trigger/ATK_ID.
  2. Dung ensure_animator_state, ensure_animator_transition, ensure_animator_parameter va save_animator_controller de tao state va transition lap lai duoc.
  3. Dung scene_hierarchy, get_component_properties, add_component va set_component_property de kiem tra/gia gan Melee Manager, weapon, hitbox va component tren nhan vat.
  4. Mo scene test, luu scene/controller va build truoc khi chay test.

MCP hien co chua co tool gan StateMachineBehaviour vao Animator state hoac set serialized field cua vMeleeAttackBehaviour/vAnimatorTagAdvanced. Day la phan Codex can bo sung editor automation vao MCP truoc khi tu dong hoa hoan toan; khong day viec nay sang nguoi thiet ke. Trong luc chua co tool, Codex phai dung script Editor co kiem tra idempotent thay vi yeu cau thao tac thu cong tren Animator.

3. Quy uoc animation

Dat ten ro rang truoc khi tao Animator state:

Loai Vi du ten clip Hanh vi
Combo Kunai_Combo_01 Mo dau combo tu idle/move
Combo Kunai_Combo_02 Noi tiep tu vi tri ket thuc cua don 1
Combo Kunai_Combo_03 Noi tiep tu don 2
Combo Kunai_Combo_04 Finisher, co the co root motion manh hon
Skill Kunai_Skill_Dash Single skill co the lao toi
Skill Kunai_Skill_Spin Single skill tai cho hoac xoay
Skill Kunai_Skill_Finisher Single skill full-body

Neu clip combo da duoc author de noi motion, khong dung transition ve Idle giua cac don. Transition phai di truc tiep tu state combo hien tai sang state combo ke tiep.

4. Chuan bi import clip

  1. Chon FBX hoac clip trong Project.
  2. Tab Rig: dat Animation Type = Humanoid, Avatar phai khop voi Avatar cua Kunai_Invector_Parkour.
  3. Tab Animation: tach tung clip thanh asset clip rieng neu FBX chua tach.
  4. Preview tung clip va kiem tra huong tien cua root bone.
  5. Clip tai cho: bat Bake Into Pose cho Root Transform Position (XZ) neu clip co drift khong mong muon.
  6. Clip co lao toi: khong bake XZ; giu root translation de dung trong state root-motion.
  7. Kiem tra Root Transform Rotation. Bake rotation neu gameplay phai giu huong cua Invector; giu rotation neu chieu quay la mot phan cua skill.

Khong sua root transform bang cach dich model trong scene. Sua o import settings cua clip de ket qua giong nhau tren Editor va iOS.

5. Tich hop locomotion Idle, Walk, Run, Sprint

Phan nay ap dung khi nhan vat chi co bon clip locomotion thiet ke rieng: Idle, Walk, Run, Sprint. Khong co clip re trai/phai va khong thay the animation jump, falling, landing, roll, ladder hoac parkour cua Invector va Fantacode.

5.1. Nguyen tac

5.2. Cau hinh Blend Tree 1D

Codex dung MCP de export controller truoc, xac nhan Base Layer locomotion state dang dung InputMagnitude, roi thay motions cua Blend Tree bang bon clip duoc chi dinh. Trong implementation Invector hien tai, cac gia tri dinh nghia la walkSpeed = 0.5, runningSpeed = 1.0, sprintSpeed = 1.5.

Threshold InputMagnitudeClip
0.0Idle
0.5Walk
1.0Run
1.5Sprint

Khong dung threshold theo met/giay. Day la gia tri Animator ma vThirdPersonAnimator.SetAnimatorMoveSpeed da tinh tu input va trang thai sprint, khop voi freeSpeed.walkByDefault cua Invector.

5.3. Quy trinh MCP

  1. Nguoi thiet ke chi dinh bon AnimationClip va xac nhan toc do gameplay mong muon: walkSpeed, runningSpeed, sprintSpeed.
  2. Codex goi get_animator_controller de tim dung Base Layer state va parameter, sau do goi ensure_animator_blend_tree neu state chua co Blend Tree 1D.
  3. Codex goi set_animator_blend_tree_motions de gan bon clip va threshold tren; khong xoa state jump/airborne/landing.
  4. Codex dung get_component_properties va set_component_property de set locomotionType, freeSpeed va toc do tren vThirdPersonController.
  5. Codex luu controller, mo scene test, build roi moi chay test.

Neu controller dang co strafe layer/state machine cu, Codex giu lai asset de tranh lam mat reference, nhung vo hieu hoa duong vao bang OnlyFree; khong can xoa tay cac state do.

5.4. Root motion locomotion

Mac dinh de locomotion nay non-root-motion de Invector motor dieu khien vi tri va collision. Chi bat root motion cho attack/skill da duoc quy dinh o phan sau. Cach nay giu toc do va khoang cach animation on dinh tren mobile, dong thoi khong anh huong jump va Parkour.

6. Tao Animator Controller ban sao

  1. Duplicate Invector@MeleeCombat.controller; khong sua asset demo goc.
  2. Dat vi du tai Assets/Character/Kunai_Invector_Melee.controller de phu hop rang buoc cua MCP create_animator_controller; hoac dung editor automation cua Codex de copy controller den thu muc du an da duoc phep.
  3. Gan controller moi vao Animator cua nhan vat.
  4. Giu nguyen parameters va layers ma script Invector dang doc. Xoa hoac doi ten parameter chi khi da kiem tra tat ca script Input, Melee Manager va Animator Behaviour lien quan.
  5. Tao sub-state machine TwinKunai Combo va TwinKunai Skills trong melee layer full-body phu hop.

Dung layer full-body cho don co root motion, dash, xoay toan than, hoac can khoa parkour. Chi dung upper-body cho don danh tai cho ma van cho phep locomotion.

7. Cau hinh combo 3-4 don

7.1. State

Tao cac state Combo_01 den Combo_04, moi state gan mot clip tuong ung. Tat Loop Time cho cac clip tan cong.

Combo_01 la diem vao tu state attack dau tien cua Invector. Cac state sau khong duoc co transition tu Locomotion hoac Idle; chi duoc vao tu don truc tiep dung truoc no.

7.2. Transition noi combo

Tao transition theo chuoi:

Combo_01 -> Combo_02 -> Combo_03 -> Combo_04 -> Locomotion

Cho moi transition Combo_N -> Combo_N+1:

  1. Dung condition attack/combo cua Animator controller Invector hien co. Khong tu tao mot trigger song song neu vMeleeAttackControl da quan ly attack input va buffer.
  2. Dat Has Exit Time theo cuoi pha active cua don, khong dat o frame cuoi cua clip. Vi du: 0.55-0.8, tuy animation.
  3. Dat Transition Duration ngan, thuong 0-0.08. Transition dai se lam tay va kunai blend ve pose idle va pha vo duong kiem.
  4. Chi chuyen state neu co input buffered. Neu nguoi choi khong bam tiep, state ket thuc theo transition ve locomotion.

Cua so combo la khoang normalized time ma input ke tiep duoc buffer. Nen bat dau sau hit frame va ket thuc truoc recovery frame. Neu cho phep buffer qua som, nguoi choi co the vo tinh bo qua nhip cua don hien tai; qua muon thi combo cam giac khong responsve.

7.3. Attack configuration bat buoc

Tren moi attack state, Codex phai gan va cau hinh vMeleeAttackBehaviour. Theo PDF chinh thuc, day la component bat buoc cua attack state, khong chi la mot attack entry trong script input.

  1. Set Start Damage va End Damage theo bang do nguoi thiet ke cung cap. Hitbox chi gay damage trong khoang nay.
  2. Set Melee Attack Type la Unarmed hoac Melee Weapon dung voi kunai.
  3. Set Recoil ID, Reaction ID, Attack Name, Ignore Defense va Active Ragdoll neu gameplay yeu cau.
  4. Gan BodyPart/hitbox dung voi animation. Neu kunai la weapon, vMeleeWeapon can co hitbox trong HitBoxes List; weapon phai dung tag Weapon va layer Ignore Raycast theo PDF.
  5. Set Reset Trigger chi tren Combo_04 (hoac state ket thuc thuc te). Cac don giua khong reset combo.
  6. Set ATK_ID cua weapon va state machine tuong ung. Khong dung vRandomAttackBehaviour cho chuoi combo co thu tu co dinh.

vMeleeManager phai co HitDamageTags chua tag cua cac target duoc phep nhan damage. Day la cau hinh rieng voi hitbox va thuong bi bo sot khi chi test animation.

Neu controller hien tai dung attack index/trigger khac voi demo, hay mo Animator trong Play Mode va quan sat parameter thuc su thay doi khi bam attack. Day la nguon su that cho condition cua transition.

8. Cau hinh single skill

Moi skill la mot state full-body doc lap: Skill_Dash, Skill_Spin, Skill_Finisher.

  1. Neu skill la don danh, tao no nhu mot attack state co vMeleeAttackBehaviour, khong dung vGenericAction chi de khoa input.
  2. Tao input rieng cho tung skill va map no den ATK_ID/trigger da kiem tra tren controller.
  3. Entry transition chi cho phep khi nhan vat grounded, khong dang parkour, khong dang bi hit, va khong dang o state attack/skill khac.
  4. Gan vAnimatorTagAdvanced tren state voi LockMovement va LockRotation trong khoang normalized time can khoa. Day la co che duoc PDF chi dinh.
  5. Khong tao transition interruption sang locomotion hay attack khac.
  6. Cho transition Skill -> Locomotion dung Has Exit Time = 1; chi mo sau recovery frame o cuoi clip.
  7. Mo lai input, hitbox va root-motion ownership khi state ket thuc, ke ca khi skill bi huy bo boi death, ragdoll, knockback, hoac scene unload.

vGenericAction chi dung cho skill co ngu canh/interaction, vi du bam nut tai mot trigger va MatchTarget vao vi tri cu the. Neu dung Generic Action, state animation phai co vAnimatorTag CustomAction theo PDF.

Skill phai co mot duong thoat duy nhat, ro rang. Neu co cancel window, tao mot transition rieng va chi bat no trong normalized-time da duoc author, thay vi de Any State co the chen vao bat ky luc nao.

9. Root motion va Invector motor

Invector controller trong du an duoc thiet ke uu tien non-root-motion cho locomotion thuong. Vi vay root motion cua tan cong la ngoai le co kiem soat.

Combo tai cho

Combo hoac skill lao toi

  1. Chi bat root motion khi vao state lao toi.
  2. Khoa locomotion motor trong khoang root motion de tranh cong don delta position voi velocity cua vThirdPersonMotor.
  3. Dung collision cua CharacterController/Rigidbody cua Invector de root motion khong xuyen tuong.
  4. Tat root motion va tra movement lock khi state ket thuc hoac bi interrupt.

Khong dat Animator.applyRootMotion thanh true toan cuc neu chi mot vai state can no. Nhieu state di/chay/parkour trong nhan vat dang do Invector va Fantacode phoi hop dieu khien.

10. Tuong tac voi Parkour va camera

11. Kiem thu theo thu tu

  1. Test tung Combo_01 tu idle: animation, hitbox, damage, va return locomotion.
  2. Bam attack hai, ba, bon lan o nhieu thoi diem. Xac nhan chi input trong cua so buffer moi noi sang don ke tiep.
  3. Quay video frame-by-frame transition Combo_01 -> Combo_02. Khong duoc co frame ve idle hoac snap vu khi.
  4. Test combo khi dang di va khi dang chay; kiem tra dung layer full-body hay upper-body theo thiet ke.
  5. Test moi skill trong luc dung yen, di chuyen, sat tuong, tren doc va gan ledge. Xac nhan root motion khong xuyen collider.
  6. Thu parkour, bi knockback, death va scene transition trong skill. Kiem tra movement lock va root motion luon duoc reset.
  7. Test tren iPhone: nut attack phai gui dung input va khong bi mobile binder chuyen thanh hanh vi parkour/defense.

12. Checklist truoc khi them moveset tiep theo