DEV BLOG 07
CRAFTING SYSTEM
This week i started to implement the crafting system.
I now have the inventory system in and working so now it is time to make the items I can collect craftable. the idea is for certain items that can be craftable to have recipes, if the current inventory has the ingredients needed then you will be able to craft that item.
I decided it would be a good idea to have both a quick craft section on my main widget as well as a completely new widget just for crafting that has a lot more details to offer.
On this menu i want to include:
Categories
All of my items fall into different categories. This can be useful when looking for certain items to craft in the crafting menu. Instead of putting all the items together and having to look through them all. You can click a category tab and then it will filter down to just the items in that category.
Quick Craft Categories
Crafting Menu Categories
Items
So after you select a category you can then choose an item. Once clicked, more options will become available. The quick craft will be a simple double click and if all the items in the inventory are present it will add that item to your inventory and subtract the recipe items from you current inventory.
Quick Craft Items
Crafting menu items
Info
Each item will have different sets of information. For example, The icon and name. I may in the future add information such as how it changes the players stats and item description. The Quick craft menu does not have this information as that is why it is a quick option.
Crafting Menu Item Info
Recipes
Each craftable item will have its own unique recipe. this will consist of items that can be found throughout the environment. This recipe will be displayed in the crafting menu and will show how many of each item you need. How many you currently have. How much each craft will make and how long it will take to craft. When you click on an item, the craft button will be disabled until your inventory possess the required recipe. Once you have acquired the recipe ingredients, the craft button will become enabled and you can click it to craft the item.
Crafting Queue
This is something i would like to include but is not the most important feature of the crafting menu. By having a crafting queue I can allow the player to stack items they want to craft instead of having to wait for one to finish before starting another. It also allows the player to cancel an item refunding all the ingredients before they are used.
So with all this in mind I created a crafting menu layout in Photoshop to give me an idea of how it will all look.
I then took this design and started implementing it into unreal engine 4.
In all honesty this took a lot of time to create and get the basic functionality of changing from the main menu to the crafting menu as well as changing the categories. I also had to add every single item as a pick up so that i could create the recipes for each item. It was a slow boring process but i'm glad I have got it all in now.
Here is an example below of both the quick craft menu and the main crafting menu after i had created it in ue4.
quick craft menu (Bottom left Side of screen)
main crafting menu
I'm having trouble getting the inventory to display on this menu so that is why the right hand side of the menu is bare. I will try to fix this in the future.
Next weeks update I hope to have all the functionality for the main crafting system in place. I will try to get the quick crafting working also but it is not as important.
Obtained ITems Notification
I also added the functionality to display a notification when an item is picked up so that the player knows exactly what it is and how much they have just gained of that item.
When an item is picked up a widget is created in the bottom right hand side of the screen, next to the player attributes. A blend in animation is played, the widget is shown for one second and then the blend out animation is played.
If more than one item is added at a time, it will store it in an array and when the current notification has finished it will call the next notification in the array and then play that. This will continue until the array is empty.
Here is an example below. It is very basic but the functionality is working and I can revisit it at a later date and make it look better if i wish to do so.
TReE CHOPPING UPDATE
I have also updated my tree chopping functionality. Previously it was just a number displayed in the main interface. I have now made it so that when the line trace is made and a tree is hit that it adds it to the wood icon in the inventory.
Here is an example of the change i made below.