> ## 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.

# Create an item

> Create a tool, consumable, melee weapon, or ranged weapon and connect its mesh, animations, and gameplay.

Start with the included item closest to what you want to make. A knife, lighter, and rifle share the same equipment system, but each handles use differently.

Before you begin, run the demo and create a copy of `BP_Survival_Character` for your project. If you use a different character mesh, finish [Character setup](https://docs.kinemation.xyz/survival-pack/unreal/get-started/character-setup.md) first.

## Choose a starting item

Open `Survival_FPS_Pack/Blueprints/Items` in the **Content Browser**.

| What you want to create | Start with | Why |
| - | - | - |
| A tool with moving parts | `BP_Pot` or `BP_Lighter` | Includes paired hand and item animations, plus tool actions. |
| A melee weapon | `BP_Knife` or `BP_Axe` | Includes attack montages; the axe also has a blocking overlay. |
| A throwable weapon | `Throwables/BP_Spear` | Includes melee attacks, throw preparation, and projectile release. |
| A bow or similar projectile weapon | `BP_HX2` | Includes drawing, aiming, arrow release, and loading the next arrow. |
| A firearm | `BP_DL700` | Includes firing, ammunition, recoil, scope alignment, and staged reloads. |
| Food or medicine | A child in `Consumables`, such as `BP_Survival_Bread` | Includes the temporary equip/use/holster sequence and consumption event. |

## Copy the item and its animation setup

1. Duplicate the item Blueprint into your own folder and name it, for example, `BP_ProjectItem`.
2. Find its view in `Blueprints/Items/Views` and duplicate it as `AC_ProjectItemView`.
3. Duplicate the matching `DA_` asset from `Blueprints/Items/Settings` and assign the copy to **Animation Settings** on your view.
4. Replace the original view component on `BP_ProjectItem` with your copied view. Reconnect any event graph references to the new component.
5. Update the item's view getter. Items such as the knife and pot implement `GetItemView`; the DL700 and HX2 implement `GetWeaponView`. Return your new view component.
6. Compile and save both Blueprints.

For example, the knife copies are `BP_Knife`, `AC_KnifeView`, and `DA_Knife`. The rifle copies are `BP_DL700`, `AC_DL700View`, and `DA_DL700`.

![Survival item view Blueprints for weapons, tools, and consumables](https://mintcdn.com/kinemation/ZGatOp3ICUy8H4tB/survival-pack/unreal/images/survival-pack_item-view-blueprints.png?fit=max\&auto=format\&n=ZGatOp3ICUy8H4tB\&q=85\&s=7091d5686d5d526966b6c71fc9b4fc59)

Views in Blueprints/Items/Views hold the actions and animation assignments for each item.

Keep the original animations assigned for the first test. Add `BP_ProjectItem` to **Item Classes** on your character copy and check that you can equip, use, and put it away. Add food or medicine to **Consumable Classes** instead.

## Replace the mesh and animations

Select the component that displays the model in your copied item Blueprint. Animated models use `ItemMesh`; items such as the knife and spear also have a `StaticItemMesh`, while food uses `ConsumableMesh`.

For a Skeletal Mesh, assign an Animation Blueprint compatible with its Skeleton. Copy the closest item Animation Blueprint from `Animations/Items` if you need to replace its idle pose or action playback.

On the view, configure `EquipMontage`, `UnEquipMontage`, and the item's use montages. Each `F_CharacterItemMontage` entry has a character montage and an item montage. Use the character side for the hands and the item side for moving parts such as a lid, bolt, or bowstring.

Open your copied `DA_` asset and set the holding pose, overlay class, and procedural class. Adjust **Weapon Offset** to frame the item, then check both hand offsets. That field keeps its Unreal name even when you are adjusting a tool or consumable.

See [Animation settings](https://docs.kinemation.xyz/survival-pack/unreal/general/animation-settings.md) for the fields. Test the actions after changing the idle pose; an aligned resting grip does not guarantee that the hands follow the model during use.

## Create a melee weapon

### Knife attacks

Use `BP_Knife` and `AC_KnifeView` for a weapon with discrete strikes.

1. Set your attack montage pairs in the view's `SlashMontages` array. The included character montages are `AM_FP_Knife_Slash_Left` and `AM_FP_Knife_Slash_Right`.
2. Keep the item's `UseItem` event connected to the view's `OnUseItem`.
3. Keep the `HasActiveAction` check before starting another attack.
4. Pass the animation length returned by `OnUseItem` to `AC_GameplayAnimation.StartAction`. This marks the attack active while it plays.
5. Add your hit detection and damage logic to the item. Time the hit check to the contact portion of the strike.

`AC_KnifeView.OnUseItem` selects a slash montage pair and plays it through `PlayCharacterItemMontage`. The example `BP_Knife.UseItem` starts the animation and its action state; add your combat behavior there or through a notify for the hit window.

### Axe blocking and spear attacks

For blocking, start with the axe and keep `ABP_Overlay_Survival_Axe` assigned in the copied settings. The overlay reads `IsAiming` and moves through its block animation as the secondary action starts and ends. Replace the block animation in that overlay when adapting the pose. Implement damage reduction in your combat logic.

For high and low spear strikes, keep `HighAttackMontage` and `LowAttackMontage` on `AC_SpearView`. Its `OnSpearAttack` selects the attack pair, while `ThrowMontage` handles release when throwing. See [Weapons](https://docs.kinemation.xyz/survival-pack/unreal/general/items/weapons.md) for the overlay graphs and included actions.

## Create a ranged weapon

### Firearms

Start with `BP_DL700`, which derives from `BP_Shooter_Weapon`, and its `AC_DL700View`.

1. Replace the rifle mesh and assign its matching item Animation Blueprint.
2. On the copied view, set `FireMontage` and the draw and holster pairs. Assign the firing sound and muzzle effect through `BaseFireSound` and `BaseMuzzleFlash`.
3. On the copied settings asset, configure the idle pose, sight alignment, aiming FOV, sway, and **Recoil Data**.
4. In the item's **Class Defaults**, set **Fire Rate**, **Max Ammo**, and **Active Ammo** for your firearm.
5. Check `GetAimPoint` after replacing the scope or sights. The DL700 uses a scope actor, so its original alignment may not match your model.

![AC\_WeaponView TryInitialize calling its parent and finding recoil and IK motion components on the owning character](https://mintcdn.com/kinemation/ZGatOp3ICUy8H4tB/survival-pack/unreal/images/AC_WeaponView_TryInitialize_00000.png?fit=max\&auto=format\&n=ZGatOp3ICUy8H4tB\&q=85\&s=2d427ae2e6ec0f592e173a4a5782dbac)

The shared weapon view initializes the character's recoil and IK motion components after the base item setup.

The DL700 reload inserts rounds in stages. Assign `ReloadStartMontage`, `ReloadLoopMontage`, and `ReloadEndMontage` on the view, and keep the matching reload events in the item Blueprint. Preserve **Reload Weapon** at the ammunition insertion moment on the item animation.

If your firearm uses a single magazine reload, replace the DL700's staged reload logic as well as its montages. Assigning one magazine animation to the loop does not change how the item adds ammunition. See [Reload Weapon](https://docs.kinemation.xyz/survival-pack/unreal/general/animation-notifies/reload-weapon.md) and [Weapons](https://docs.kinemation.xyz/survival-pack/unreal/general/items/weapons.md#hunting-rifle).

### Projectile items

Use `BP_HX2` for a bow or `BP_Spear` for a throwable. Both implement `BPI_Survival_Ranged` and use `AC_Survival_RangedWeapon` to select a projectile mesh.

1. Keep `BPI_Survival_Ranged` on the copied item.
2. Fill `ProjectileMeshes` on `AC_Survival_RangedWeapon` with the models your item can launch.
3. Adapt `OnThrowItem` to spawn your projectile actor and assign the selected mesh.
4. Check the spawn transform and launch direction. The HX2 uses `ArrowProjectileSocket` and its right vector; the spear uses its item transform and right vector.
5. Set speed, gravity, rotation, bounce, and life span on the `LaunchProjectile` call.
6. Place **Launch Projectile** at the release moment on the character animation.

The notify calls `OnThrowItem`; the item performs the spawn and launch. Keep the held model's visibility and next-item animation in step with that event. For the bow, also retain `OnLoadNewArrow` and the aiming overlay so the next arrow loads after release.

Follow [Launch Projectile](https://docs.kinemation.xyz/survival-pack/unreal/general/animation-notifies/launch-projectile.md) for the notify graph and the spear and arrow launch values.

## Create a consumable

Start with the closest child of `BP_Survival_Consumable`. Copy its view and settings, replace the model, and assign the use montage pair.

Set `MaxUseTimes` on the consumable view to choose how many times it plays the use action. Add **Use Consumable** at the bite, sip, or healing moment. Implement your effect in the item's `UseConsumable` event, keeping any inherited mesh or visibility changes you need.

Add the item class to **Consumable Classes** on your character. The water bottle and pot use regular **Item Classes**, so use a food or medicine Blueprint when you want the temporary consumable sequence.

See [Consumables](https://docs.kinemation.xyz/survival-pack/unreal/general/items/consumables.md) for timing and [Use Consumable](https://docs.kinemation.xyz/survival-pack/unreal/general/animation-notifies/use-consumable.md) for the event flow.

## Test the item

Press **Play** and check draw, movement, use, secondary actions, and holster. For melee weapons, check the hit window. For firearms, test partial and empty reloads. For projectile items, confirm one spawn per release and the correct launch direction. For consumables, check every use event and the return to the previous item.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.