BP_Shooter_Character. Extend the product character or common interfaces instead of duplicating the base flow.
Runtime model
BP_Gameplay_Character owns generic movement, camera setup, item selection, sprint, and lean state. BP_Shooter_Character and product characters extend this base instead of rebuilding it.
Character lifecycle
The base character exposesUpdatePlayerMovement, GetActiveItem, SetupCamera, EquipCurrentItem, and UpdateLeaning. Extend OnPossessed for possession-time project setup. Call the parent behavior before adding mapping contexts or child-only state.
Character interface
UseBPI_Gameplay_Character.GetCharacterMesh, GetAnimationComponent, GetEquippedItem, and GetFirstPersonCamera across module boundaries. These functions avoid casts to a concrete pack character.
Items and views
The item owns the gameplay lifecycle. The view owns presentation. Call
AC_ItemView.TryInitialize after the item has an owning character. Override OnEquip, OnUnEquip, OnInspect, or OnUseItem in a child view.
To add a general item:
- Create a child of
BP_Gameplay_Itemand configureItemMesh. - Add an
AC_ItemViewchild when the item needs montages or Niagara effects. - Implement the required
BPI_Gameplay_Itemevents. - Add the item class to the characterโs
ItemClasses. - Query it through interfaces from generic character or UI logic.
ItemClasses is class configuration. Items is runtime state populated by the character. Do not prefill Items in class defaults.Enhanced Input
IMC_Gameplay_Core provides the shared character and item actions.
Keep project-specific bindings in a project mapping context. Do not edit the supplied common context for one projectโs controls.
Product entry point
/Game/KINEMATION/Sci-fi_FPS_Pack/Blueprints/BP_SciFi_Character is the fastest parent for a Sci-Fi shooter. Add the supplied or project-owned weapon classes to ItemClasses, then configure both core mapping contexts as shown in Character setup.