Unreal Engine –Third Person Weapon/Combat System V2 UE384
Flexibility’ Update:
The system has been rebuilt from ground up using Actor Components and Data Tables.
As the result the system should be compatible with any characters (default UE Character class) without dependency on the previous version’s BP_Character class.
The system is now as easy to use as adding these components to your actors and setting up input and collision channels.
List of components in V2 and their use:
- Weapon Component (UE Character class or any actor with some custom work)
- Melee Component (UE Character class)
- Health Component (UE Character class)
- Ragdoll Component (UE Character class)
- Lock On Component (UE Character class – for the Player)
- AI Detection Component (UE AI Controller class)
- TPWCS Manager Component (UE Game Mode class)
More information about V2:
- BPs now have sets of Event Dispatchers for further customization of the system.
- BPs now use new inheritance model: (Base class: only variables and function definitions -> Master class: core logic -> Child class actually used)
- components like player camera or ragdoll capsule that are not available by default in the Character class should be marked using tags
- the system loads only what is currently needed (clean references and async loading)
- weapons are created by editing the weapon data table now
- possibility to create different fighting styles using the melee data tables (multiple fighting styles for the same weapon)
- all animations are also stored in data tables (possibility to use different animations for different characters)
- the damage system has been rebuilt and now uses Damage Type classes (it uses default UE damage events only now)
- visual and sound effects are now spawned through the TPWCS Manager component and can have a max range they can spawn at
- Niagara particles support added
- Anim BP has been greatly simplified and uses interfaces to communicate with the rest of the system
- Lock On system redone from scratch
- all gameplay useful functions are contained in a function library
- the system also communicates through that function library
- all features that modify the UE Character class are also stored in a function library (no need to figure out which component does what)
- improved AI system
- +lots of small improvements of the whole system
Technical Details
Features:
- Four types of weapons: Melee, Hit Scan, Projectiles and AreaEffect
- Component and Data Table based (independent system; the only requirement is the default Character class)
- Melee system with possibility to add multiple fighting styles
- Damage system using default damage events with DamageType classes
- Health and Armour system
- Ragdoll system
- Direction based Hit Reaction system
- Fire mechanics with propagation
- Pickup classes
- Lock On system
- Testing AI: able to use all the weapons and detect enemies (sight, damage and hearing – AI Perception)
- Clean references and Async asset loading use
Blueprints:
- 132 BPs overall
- 2 Controllers (AI and Player)
- 3 Main character classes (Master character, player and AI) + 2 testing AI
- 1 Animation Blueprint
- 20 Components
- 7 Projectile BPs
- 3 AreaEffect BPs
- 5 Pickup classes
- 1 Fire BP
- 1 Character FX BP
- 18 Interfaces
- 5 Libraries
- 1 ragdoll test BP
- 32 Damage Types
- 5 Camera Shakes
- 8 Decorators, 15 Tasks, 2 Services
- 1 Gamemode
- 22 Enums, 38 structures
Skeletal meshes: 16 weapon meshes + 1 UE mannequin
Animations: 163 sequences (Anim Starter Pack included), 6 Aim Offsets, 7 Blendspaces, 25 Anim Montages
Materials: 23 materials + 25 instances
Textures: 49
Input: Keyboard, Mouse
Network Replicated: No
Supported Development Platforms: Windows