Hey @xyth! I followed your tutorials and made about 6 zombie models. I put one through Unity after a Mixamo rigging. It animates fine in Unity but it only t-poses in game. It senses me and spins around if I bump into it, and if I run into one of its hands it damages me, but it doesn't move on its own. The only thing I know I didn't add in Unity was LOD 0. Besides that, would you have any idea what I might be missing?
Let me know if there's anything I need to provide.
EDIT: Here's everything I can think that might show something
Entity classes XML
<configs> <append xpath="/entity_classes"> <entity_class name="Male_Nurse_GG_Zombie" extends="zombieTemplateMale"> <property name="UserSpawnType" value="Menu"/> <property name="Tags" value="entity,zombie,normal"/> <property name="Mesh" value="#@modfolder:Resources/Male_Nurse_GG_Zombie.unity3d?Male_Nurse_GG_Zombie"/> <property name="AvatarController" value="AvatarZombieController"/> <property name="PhysicsBody" value="mixamoBasicRig"/> <property name="WalkType" value="7"/> <property name="RootMotion" value="true"/> <property name="HandItem" value="meleeHandZombie01"/> <property name="HandItemCrawler" value="meleeHandZombie01"/> <property name="RightHandJointName" value="RightHand"/> <property name="LootDropProb" value="0.05"/> <property name="DeadBodyHitPoints" value="1000"/> <effect_group name="Base Effects"> <passive_effect name="DistractionResistance" operation="base_set" value="0,0"/> <passive_effect name="HealthMax" operation="base_set" value="150"/> <passive_effect name="HealthMax" operation="perc_set" value="1"/> <passive_effect name="StaminaMax" operation="base_set" value="100"/> <passive_effect name="PhysicalDamageResist" operation="base_set" value="0"/> </effect_group> <property name="Mass" value="120"/> <property name="Weight" value="200"/> <property name="SizeScale" value="1.1"/> </entity_class> </append> </configs>
Physics bodies XML
<configs> <append xpath="/bodies"> <body name="mixamoBasicRig"> <collider> <property name="tag" value="E_BP_Body"/> <property name="path" value="Hips"/> <property name="collisionLayer" value="0"/> <property name="ragdollLayer" value="0"/> <property name="collisionScale" value="1 1 1"/> <property name="ragdollScale" value="0.75 0.39 1"/> <property name="collisionOffset" value="0 0 0"/> <property name="ragdollOffset" value="0 0 -0.08"/> <property name="type" value="Detail"/> <property name="flags" value="collision;ragdoll"/> </collider> <collider> <property name="tag" value="E_BP_LLeg"/> <property name="path" value="Hips/LeftUpLeg"/> <property name="collisionLayer" value="0"/> <property name="ragdollLayer" value="0"/> <property name="collisionScale" value="1 1 1"/> <property name="ragdollScale" value="1 1 1"/> <property name="collisionOffset" value="0 0 0"/> <property name="ragdollOffset" value="0 0 0"/> <property name="type" value="Detail"/> <property name="flags" value="collision;ragdoll"/> </collider> <collider> <property name="tag" value="E_BP_LLowerLeg"/> <property name="path" value="Hips/LeftUpLeg/LeftLeg"/> <property name="collisionLayer" value="0"/> <property name="ragdollLayer" value="0"/> <property name="collisionScale" value="1 1 1"/> <property name="ragdollScale" value="1 1 1"/> <property name="collisionOffset" value="0 0 0"/> <property name="ragdollOffset" value="0 0 0"/> <property name="type" value="Detail"/> <property name="flags" value="collision;ragdoll"/> </collider> <collider> <property name="tag" value="E_BP_RLeg"/> <property name="path" value="Hips/RightUpLeg"/> <property name="collisionLayer" value="0"/> <property name="ragdollLayer" value="0"/> <property name="collisionScale" value="1 1 1"/> <property name="ragdollScale" value="1 1 1"/> <property name="collisionOffset" value="0 0 0"/> <property name="ragdollOffset" value="0 0 0"/> <property name="type" value="Detail"/> <property name="flags" value="collision;ragdoll"/> </collider> <collider> <property name="tag" value="E_BP_RLowerLeg"/> <property name="path" value="Hips/RightUpLeg/RightLeg"/> <property name="collisionLayer" value="0"/> <property name="ragdollLayer" value="0"/> <property name="collisionScale" value="1 1 1"/> <property name="ragdollScale" value="1 1 1"/> <property name="collisionOffset" value="0 0 0"/> <property name="ragdollOffset" value="0 0 0"/> <property name="type" value="Detail"/> <property name="flags" value="collision;ragdoll"/> </collider> <collider> <property name="tag" value="E_BP_Body"/> <property name="path" value="Hips/Spine/Spine1/"/> <property name="collisionLayer" value="0"/> <property name="ragdollLayer" value="0"/> <property name="collisionScale" value="1 1 1"/> <property name="ragdollScale" value="1 0.36 1"/> <property name="collisionOffset" value="0 0 0"/> <property name="ragdollOffset" value="0 0.05 -0.08"/> <property name="type" value="Detail"/> <property name="flags" value="collision;ragdoll"/> </collider> <collider> <property name="tag" value="E_BP_LArm"/> <property name="path" value="Hips/Spine/Spine1/Spine2/LeftShoulder/LeftArm"/> <property name="collisionLayer" value="0"/> <property name="ragdollLayer" value="0"/> <property name="collisionScale" value="1 1 1"/> <property name="ragdollScale" value="1 1 1"/> <property name="collisionOffset" value="0 0 0"/> <property name="ragdollOffset" value="0 0 0"/> <property name="type" value="Detail"/> <property name="flags" value="collision;ragdoll"/> </collider> <collider> <property name="tag" value="E_BP_LLowerArm"/> <property name="path" value="Hips/Spine/Spine1/Spine2/LeftShoulder/LeftArm/LeftForeArm"/> <property name="collisionLayer" value="0"/> <property name="ragdollLayer" value="0"/> <property name="collisionScale" value="1 1 1"/> <property name="ragdollScale" value="1 1 1"/> <property name="collisionOffset" value="0 0 0"/> <property name="ragdollOffset" value="0 0 0"/> <property name="type" value="Detail"/> <property name="flags" value="collision;ragdoll"/> </collider> <collider> <property name="tag" value="E_BP_RArm"/> <property name="path" value="Hips/Spine/Spine1/Spine2/RightShoulder/RightArm"/> <property name="collisionLayer" value="0"/> <property name="ragdollLayer" value="0"/> <property name="collisionScale" value="1 1 1"/> <property name="ragdollScale" value="1 1 1"/> <property name="collisionOffset" value="0 0 0"/> <property name="ragdollOffset" value="0 0 0"/> <property name="type" value="Detail"/> <property name="flags" value="collision;ragdoll"/> </collider> <collider> <property name="tag" value="E_BP_RLowerArm"/> <property name="path" value="Hips/Spine/Spine1/Spine2/RightShoulder/RightArm/RightForeArm"/> <property name="collisionLayer" value="0"/> <property name="ragdollLayer" value="0"/> <property name="collisionScale" value="1 1 1"/> <property name="ragdollScale" value="1 1 1"/> <property name="collisionOffset" value="0 0 0"/> <property name="ragdollOffset" value="0 0 0"/> <property name="type" value="Detail"/> <property name="flags" value="collision;ragdoll"/> </collider> <collider> <property name="tag" value="E_BP_Head"/> <property name="path" value="Hips/Spine/Spine1/Spine2/Neck/Head"/> <property name="collisionLayer" value="0"/> <property name="ragdollLayer" value="0"/> <property name="collisionScale" value="1 1 1"/> <property name="ragdollScale" value="0.8 0.88 1"/> <property name="collisionOffset" value="0 0 0"/> <property name="ragdollOffset" value="0 0.02 0"/> <property name="type" value="Detail"/> <property name="flags" value="collision;ragdoll"/> </collider> </body> </append> </configs>
Unity folder hierarchy
What it looks like in game
And the error message I get from the log
"NullReferenceException: Object reference not set to an instance of an object
at (wrapper dynamic-method) EModelBase.DMD<EModelBase::LookAtUpdate>(EModelBase)
at EModelBase.LateUpdate () [0x0001e] in <a58aca9c8ed54d639b41f6dc2ac2f31b>:0 "
I can post the complete log if needed, though there doesn't seem to be anything different (besides this error) when comparing it logs without the zombie mod.