Over the past 4 weeks I have been working on implementing the Questing System in Unreal for Bad Luck Black Cat. Today (03/09/21) was the first day I got an Alpha build of the questing system functionally working.
I have made the questing system with the thought of the designers in mind. Seeing what would make it easier for them when it comes round to adding quest details for every quest. I first took the AI Behaviour tree that Unreal has, and used it more as a dialogue tree. This allowed me to add checks, display dialogue and questions that the NPC could ask leading up to the quest hand out. When the player interacts with the NPC, the Dialogue tree will hit the first node which is startquest and in this node all quest details (number of items, quest description, what type of item, ect) can be set. All the quest set up is done in C++ and was fun to learn how code, too blueprint worked, which I will continue to increase my knowledge upon. One thing I would have done Differently would be to make sure that I had the quest number ID done with all the other variables (like the objective number, name of the quest and number of item required) but sadly I had forgotten that I would need a reference to the quest number to keep a track of what quests had been done. However for my first time using Unreal and to be learning everything whilst working on a major production I am happy with the outcome I have achieved for our first Alpha build.
If you would like to take a look at the Alpha build the link is here: https://bad-luck-black-cat.itch.io/blbcgame