The crafting & gathering systems were developed during a 8 week period in Unreal Engine 4 as part of my degree project. Aside from the two major systems, smaller sub systems were developed to work alongside the major systems, these include a interaction system and a inventory system. I developed these systems because of my interest in MMORPG games. Therefore I made my goal to make these systems in theory scaled up or down depending on the game.

Interaction system

The interaction system is component based, this is very important because this allows the component to be attached to any type of object, you can use this component together with a quest system to allow the player to speak to a npc to get a quest. This component can also be attached to gathering nodes which I have done to make a gathering system that allow the player to gather resources.

Inventory System

At first I made the inventory system a part of the character, because at first I thought only the player would have a inventory. Now this is very bad and should be avoided which I did later during the development. Now the inventory system is component based, this makes it easier to attach to the player and attach to any type of object like a npc which you can interact with to access your bank storage or loot a dead monster.