> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinemation.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# IK motion

> Play authored Sci-Fi FPS Pack IK and additive motion through the inherited Gameplay Framework component.

export const intro_0 = "The Sci-Fi FPS Pack uses authored additive IK motion for ADS, fire-mode, and ready-pose presentation."

{intro_0}

`IKMotion` plays authored IK motion data through the `AC_IKMotionPlayer` inherited by `BP_Gameplay_Character`.

| Entity                                               | Purpose                                    |
| ---------------------------------------------------- | ------------------------------------------ |
| `/Game/KINEMATION/Common/IKMotion/AC_IKMotionPlayer` | Stores and advances the active IK motion.  |
| `DA_IKMotion`                                        | Authored motion data passed to the player. |

`Play(NewMotion)` stores the new asset, caches the current `IKMotion`, resets `IKMotionPlayback` to `0.0`, and sets `PlayingIkMotion` to true. The component's update path advances playback.

To play an authored motion:

1. Create or select a `DA_IKMotion` compatible with the character skeleton and Animation Blueprint.
2. Get the character's inherited `AC_IKMotionPlayer`.
3. Call `Play(ProjectMotion)` once when the gameplay state begins.
4. Start a related montage from the same action event or notify when the two motions must align.

<Warning>
  Do not call `Play` every Tick. Each call resets playback to the beginning.
</Warning>

The Sci-Fi pack's `Blueprints/AdditiveMotions` folder contains `IK_Ads`, `IK_FireMode`, and `IK_ReadyPose` as examples.

## Use a ready-pose motion

1. Select a compatible project `DA_IKMotion` or start from `IK_ReadyPose`.
2. Obtain `AC_IKMotionPlayer` from the Sci-Fi character.
3. Call `Play` once when the ready state begins.
4. Allow the component update path to finish playback.
5. Trigger any paired montage from the same explicit state event.

Use `IK_Ads` and `IK_FireMode` as references for aim and fire-mode transitions. Keep gameplay state outside the data asset.
