Ability System
A downloadable game for Windows
Overview
This demo was developed as a way for me to learn more about Unreal Engine / C++. It was mainly made in C++ with a handful of blueprint logic to make the UI work.
This demo was a passion project of mine over the course of a few months, where I tried the best that I could to re-create the abilities from Dishonored 2 (one of the best games of all time btw). Each ability came with its' own unique challenges, but it was really fun to work on something that I had a deep passion for and a lot of experience playing with.
You can find the GitHub repository here.
Challenges
Devlogs
For a more in-depth look at how I approached solving each problem and how I implemented each ability, check out the Devlog section down below.
What would I do differently?
Use GAS
I would probably try and use GAS (Gameplay Ability System), as at the time it seemed too overkill for what I was trying to do, but looking back now you can definitely get a light-weight prototype working with GAS. It already has basically the entire system out of the box, activating, de-activating, conditions for activation, everything.
While it was fun making my own system, I think working with GAS would have made iteration much quicker and easier. On that note...
BP and C++ Separation
Lean more into Blueprints! Most of the logic for the abilities is contained within C++, which is perfectly fine and valid, but for quicker iteration it is so annoying. Every little change takes (on my PC at least) a 5-10 second re-compile, which is fine for one-off changes, but when you are constantly re-compiling that small time adds up. Whereas if I treated C++ purely as the architecture and maybe some helper functions, then the logic can be quickly iterated in Blueprints.
Keeping this separation of C++ and BP is great when you know what you are doing ... but can be setup completely wrong if you don't. At the time I was definitely a C++ purist, and tried to keep as much logic as possible in C++, but looking back would try my best to take full advantage of BP. It also makes quick debugging just that, quick, without the need to do a full re-compile and the ease of use if I ever forgot how each abilities' logic worked.
Download
Development log
- Devlog #7 Fixing "Bend Time", and Other ImprovementsNov 16, 2024
- Devlog #6 "Devouring Swarm", Ratatouille Took a TurnNov 16, 2024
- Devlog #5 Dynamic Weapon WheelNov 16, 2024
- Devlog #4 "Bend Time", Not Your SpineNov 16, 2024
- Devlog #3 That's a "Far Reach" from OrdinaryNov 15, 2024
- Devlog #2 "Blink"-ing is BelievingNov 15, 2024
- Devlog #1 "Blink" and You'll Miss itNov 15, 2024
- Devlog #0 The Start of Something NewNov 15, 2024




Leave a comment
Log in with itch.io to leave a comment.