Hierarchy of Weapon_System Folder:
Models: contains Meshes, Textures and Materials.
MasterBPs Folder **(these files are the core of the system, please don’t touch unless you know what you are doing. If you want to add new weapon see Add new weapon section).**contains all the parent blueprints such as:
BP_masterweapon: main functions that applies to all children weapons,
Enums_Weapon: contains premade weapons for demonstration(to create new weapons check section below)
Enum_AmmoType: contains Ammo types
Enum_WeaponState: Contains Weapon States such as: Dropped, Equipped, InHand.
Enum_WeaponInput: Determine Slots to equip weapons to.
Weapon_Struct: that will exposed in each weapon to set different parameters such as, Damage, Weapon Image, Name, etc.
BPC_WeaponSystem: A Blueprint Component that is added to your character blueprint.
Ammo Folder: contains the BP_MasterAmmoPickup and a demo child for BP_Rifle Ammo.
used to put child ammo BPs inside level for player to pickup. AKA Ammo Crates.
Anims Folder: contains blendspaces, anim montages, animation sequences to use as you like.
AssultRifle, Guns, Melee, Shotgun, Sniper Folders: Each folder contains BP_Master Blueprint and a demo child blueprint.
UI Folder Contains:
Weapon Wheel Widget Blueprint (that is shown when you hit Q in your keyboard) to switch between weapons with your mouse (like Days Gone Game)
Interact_Widget: that will appear above the weapon when your close to them (in collision sphere)
Contains the key to press to pickup (E)(if you want to show another key you will have to change it inside the widget BP. And the name of the weapon( which is determined by the Weapon Name inside class settings in the child weapon blueprint).
CrossHair_Widget: is the HUD that is always on-screen (Contains: crosshair, Inhand Weapon Image, Ammo and Health)
Icons Folder: has weapon and crosshair images.
Add New Weapon:
Note, you character can carry 4 weapons: Primary, Secondary, Pistol and Melee.
you have 4 sockets inside SK_Mannequin that weapon will be attached to:
RifleBack_rSocket
RifleBack_SecondarySocket
MeleeBack_lSocket
Pistol_rSocket
Rifle_rSocket (for attaching the weapon to your hand).
1-
Create a child blueprint from any BP_Master Weapon. eg, BPMaster_AssaultRifle, BPMaster_shotgun, BPMAster_Sniper, BP_MasterPistol, BP_Master_Melee