Weapons · Updated May 01, 2026

Shotgun Setup Checklist

Shotgun Setup Checklist

Goal: get the shotgun fully functional in-game using AR animations as placeholders. Animate later — get it shooting first.


#Phase 1 — Mesh Import

  • [x] Export SK_SL_Shotgun_FP.fbx from Maya
  • [x] Export SK_SL_Shotgun_TP.fbx from Maya
  • [x] Import both to Content/SystemLink/Weapons/Shotgun/Meshes/
  • [ ] Open SK_SL_Shotgun_FP skeleton → add socket MuzzleFlash at barrel tip
  • [ ] Open SK_SL_Shotgun_FP skeleton → add socket LeftHandGrip at pump fore-end
  • [ ] Open SK_SL_Shotgun_FP skeleton → add socket LeftHandElbow (~15cm behind/below left hand)
  • [ ] Open SK_SL_Shotgun_TP skeleton → add socket MuzzleFlash at barrel tip

#Phase 2 — Animation Blueprints (AR placeholders)

Duplicate the AR anim BPs — just swap the skeleton reference in each, leave everything else as-is.

  • [x] Duplicate AR FP character anim BP → ABP_SL_FP_Shotgun in Content/SystemLink/Weapons/Shotgun/Animation/
  • [x] Duplicate AR TP character anim BP → ABP_SL_TP_Shotgun in same folder
  • [ ] Duplicate AR FP weapon anim BP (if separate) → ABP_SL_FP_Shotgun_Weapon in same folder
  • [ ] Duplicate AR TP weapon anim BP (if separate) → ABP_SL_TP_Shotgun_Weapon in same folder
  • [ ] In each duplicated ABP: open Class Settings → repoint Skeleton to the shotgun skeleton

#Phase 3 — Gameplay Tags

Add in Project Settings → GameplayTags (ini). The SLTags.Abilities weapon tags use FirstPerson/ThirdPerson sub-namespaces — same pattern as the AR.

  • [x] GameplayCues.Weapon.Shotgun.PrimaryFire
  • [x] GameplayCues.Weapon.Shotgun.Impact
  • [x] GameplayCues.Weapon.Shotgun.Equip
  • [x] SLTags.Abilities.ThirdPerson.Shotgun
  • [x] SLTags.Abilities.FirstPerson.Shotgun
Check the tag manager first — these may already be registered.

#Phase 4 — GAS Assets

  • [x] Create GE_SL_Shotgun_PumpCooldown in Content/SystemLink/AbilitySystem/Effects/
    • Type: Duration, 0.8s
    • Granted Tags: SLTags.States.Weapon.Firing
  • [x] Create DA_SL_Shotgun in Content/SystemLink/Weapons/Shotgun/ (class: USLWeaponDataAsset)
    • Fill all values from Docs/Shotgun.md
    • FirstPersonSkeletalMeshData.WeaponMeshSK_SL_Shotgun_FP
    • FirstPersonSkeletalMeshData.AnimLayerClassABP_SL_FP_Shotgun
    • ThirdPersonSkeletalMeshData.WeaponMeshSK_SL_Shotgun_TP
    • ThirdPersonSkeletalMeshData.AnimLayerClassABP_SL_TP_Shotgun

#Phase 5 — Weapon & Ability Blueprints

  • [ ] Duplicate BP_WeaponActor_AssaultRifleBP_WeaponActor_Shotgun in Content/SystemLink/Weapons/Shotgun/
    • Point WeaponDataDA_SL_Shotgun
  • [ ] Duplicate BP_GA_SL_TP_AssultRifle_EquipBP_GA_SL_TP_Shotgun_Equip in Content/SystemLink/AbilitySystem/Abilities/Weapons/Shotgun/
    • AbilityTags = SLTags.Abilities.ThirdPerson.Shotgun
    • ActivationOwnedTags = SLTags.States.Weapon.Equipping
    • Triggers[0].TriggerTag = SLTags.Abilities.ThirdPerson.Shotgun
    • Triggers[0].Source = GameplayEvent
  • [ ] Duplicate BP_GA_SL_FP_AssultRifle_EquipBP_GA_SL_FP_Shotgun_Equip in same folder
    • AbilityTags = SLTags.Abilities.FirstPerson.Shotgun
    • Triggers[0].TriggerTag = SLTags.Abilities.FirstPerson.Shotgun
    • Triggers[0].Source = GameplayEvent
  • [ ] Duplicate BP_GA_SL_AssualtRifle_PrimaryFireBP_GA_SL_Shotgun_PrimaryFire in same folder
    • Set Cooldown Effect ClassGE_SL_Shotgun_PumpCooldown

#Phase 6 — Cue Blueprints

All in Content/SystemLink/AbilitySystem/Cues/Weapons/Shotgun/. Duplicate the matching AR cue and update the tag.

  • [ ] GC_SL_Shotgun_PrimaryFire — tag: GameplayCues.Weapon.Shotgun.PrimaryFire
  • [ ] GC_SL_Shotgun_Impact — tag: GameplayCues.Weapon.Shotgun.Impact
  • [ ] GC_SL_Shotgun_Equip — tag: GameplayCues.Weapon.Shotgun.Equip

#Phase 7 — Pickup & World Placement

  • [ ] Duplicate AR pickup BP → BP_SL_WeaponPickup_Shotgun in Content/SystemLink/Pickups/Weapons/Shotgun/
    • Point WeaponActorClassBP_WeaponActor_Shotgun
  • [ ] Place BP_SL_WeaponPickup_Shotgun in TestMap

#Phase 8 — Test Checklist

  • [ ] Fire blast → 8 separate impact cues fire on hit surfaces
  • [ ] Ammo decrements by 1 per blast (not 8)
  • [ ] Pump cooldown prevents firing again for ~0.8s
  • [ ] Recoil kicks up noticeably per blast
  • [ ] Cycle weapon swaps to/from shotgun correctly with ammo preserved
  • [ ] Pickup replaces equipped weapon when inventory full
  • [ ] Shotgun drops on death with correct ammo count