Project Borne
Page for all of my gameplay demos, primarily made on UE5, using C++ and minimal blueprinting.
SoulsBorne Combat
* A SoulsBorne inspired combat system game, built in Unreal Engine 5 and gameplay Ability system.
* Featuring a modular data-based Weapons System, built to be extensible and Scalable.
* State-tree based boss behavior using EQS pawn sensing and more
* Unreal Engine 5, Gameplay Ability System, State and Behavior Tree
* State Trees, EQS, Pawn Sensing, AITasks, AIDecorators, AIServices for Boss AI
* Modular Weapon System , Inventory components, Gameplay Ability Tags, Gameplay Cues, Attribute Sets
* Like in other souls games, players have attributes like stamina, health. These are hooked up to wepaons and abilities, taking in and getting damaged, with passives allowing build up. This allows each weapon to ask for different stats, like heavy weapons swing slower and ask for more stamina, etc. This makes each weapon more unique.
* Unreal GAS offered a good system solution for this, allowing for easy but detailed solutions, for abilities, and attributes. For example, the dodge is an ability, which provides us with a gameplay attribute pre check, to check if we have the stamina to execute the dodge, and can do that based on different conditions.
ActivateAbility method that gets called when you press the dodge button,
executed on the Gameplay Ability Component
* Weapons are categorised in many different categories, and making new weapons is easy. Theyre based on a base wepaon class which allows each weapon to define its own set of parameters and allows us to decouple the requirements and damage from the GAS and have the weapons define it.
* Different weapons can have a different Stamina, Damage Stat values that changes how you play.
* Since all of these are esentially children of a same base weapon these are easily extensible, built to be scalable.
* This lets us create varied weapons based on different animations and stat requirements and damage. It gives weapons unique movesets but also make the core functionality easy.
Attack function, an ability taking in the stats, and the cost and speed of the weapons
to determine if you can attack and with how much damage
* Built using behavior trees, EQS, pawn sensing, custom queries, services and tasks. Bosses have randomness, but also pattern based behaviors. This allows them to feel learnable but also vary up their strategies.
hover over the images!
Location