What is not working with your ability? It should be based on the DetectObjectAbilityBase. You need a move towards location, where the ability starts, and corresponding animation clips (sit down, sit idle, stand up)...
Any time an attribute is modified, the "OnAttributeUpdateValue" event is triggered. You can listen to this event, check whether it was the health attribute, compare it too your target value, and trigger your own event, when the target value has been reached...
When exchanging the animations you have to add the corresponding animation events to your animations. So you need to check, which events are triggered by the original animation clips.
https://opsive.com/support/documentation/ultimate-character-controller/animation/animation-event-trigger/
Have you tried increasing the Foot Offset on the IK component?
https://opsive.com/support/documentation/ultimate-character-controller/inverse-kinematics/
You can use the state system for that. Create a preset on the UltimateCharacterLocomotion component for the state that is active when the ability is used. On the preset you can modify the motor properties of your character.
In the script above, the m_Character variable is probably never assigned to the current runtime character, as you instantiate it as a prefab. You have to assign it in the start method.
Can you describe in more detail what you did? The only thing I know you get ask with regard to the children is when you change the layer of a parent, but not when you add a component.
You can check the Drive ability (car) in the demo scene. It uses third person arms in the first person view. The Body_Arms object of the Nolan character has the ThirdPersonObject with a corresponding Drive preset assigned. When in the car, the third person arms are forced visible through this...
You have to set a breakpoint in line 273 and see which object is null. Without any hint on how to reproduce the error it is difficult to say what is going wrong.
The size of the collider should not make a difference. Can you reproduce the issue in the demo scene so we can analyze it? It might be that the pickup is not correctly initialized when the component is enabled at runtime. You can put a debug log statement in the Initialize() function of the...
m_EquipUnequip is null, so it can't find the corresponding ability. The assignment is done in the Initialize() method. You should start debugging in line 121 to see why it can't find the ability.
Why are you changing the ID of the interactable? This sounds a little strange.
You can try calling
m_CharacterLocomotion.UpdateAbilityAnimatorParameters()
to update the animator parameters.
The visibility of the third person arms is controlled through the state system. You can either set a state through an ability, by equipping an item, or through the StateTrigger component. The ThirdPersonObject component controls, which material is assigned to the third person arms (transparent...