EDIT: Started the series. Scroll down to get a link to the newest episode!
Introduction:
2 years ago i started using Unreal Engine 4 and learned a lot watching different tutorials and the livestreams. However, i noticed that there are many tutorials about basic stuff (e.g. navigating in the viewport) but few about the more complicated things like building a turn-based combat system or a dialogue system. I know that there are a lot of tutorials about inventories as well but i think that most of them are on a really basic level and therefore can’t be used in a real game. Because of that, i spent the last 3 weeks working on a complex inventory system which is both very functional and easily customizeable.
Knowing that the marketplace is full of such systems, i am not trying to get it in there but planning to create a tutorial series on how to do it from start to finish. Nevertheless i do not want to waste my time on creating something nobody wants to see so i decided to share my thoughts here and wait for some feedback before i start creating the videos.
So please, if you are interested in watching a tutorial series like that let me know by leaving a comment here or in the comment section of the showcase video
** Showcase:**
List of features:
supports different functionality for stackable and non-stackable items
supports variables for the amount of slots in your inventory and the maximum stack size
open/close the inventory widget by pressing “i” on your keyboard
drag around the inventory widget to change its position in the viewport
move close to a pickup actor to obtain the assigned item
on receiving an item you will see a notification widget showing you which item and how many instances of it you picked up
receiving a stackable item will search for an already existing stack of the item and add it to it, receiving a non-stackable item will always fill out a new stack
pickup actors will be destroyed after receiving the item unless your inventory was full and the item could not be added
right click on an item to show a menu with all possible actions for it (e.g use it, throw it away or split the stack)
you can freely move the items in the inventory by dragging and dropping them on a free slot. If you drop an item onto another one they will swap their position
dropping an item outside of the inventory will throw it away if it is a non-stackable item, if it is stackable a widget will apear asking you how many instances of the item you want to throw away
supports different functionality for different item categories (e.g. quest items cannot be thrown away)
double-click on an item to use it (or right click and hit “use” in the action menu)
using an item will execute custom funcionality that is defined in the item class (the system includes a health potion that restores some of your health and shows a health bar)
hold shift while dragging a stackable item to split it to another slot (imagine you had 90 potions on one slot, you will then have two slots each with 45 potions)
drag a stackable item onto another slot of the same item to recombine the stack
supports a hotkeybar
drag around the hotkeybar to change its position in the viewport
drag an item on a slot of the hotkeybar to assign it to a button on your keyboard
you can then hit the button on the keyboard to use the assigned item
the whole system is totally customizeable. On spawning the inventory actor you can define:
the amount of slots in your inventory
the amount of slots per row in your inventory
the maximum size of a stack inside the inventory
whether or not to show a notification when receiving an item
the amount of seconds for which the notification will be visible
whether or not there should be a hotkeybar
the amount of hotkeys in the bar (from 1 to a maximum of 9)
new item can be added easily by creating a child of the “Master_Item” class. You can then change:
the name of the item
its description
its icon
whether or not you can stack this item
which category it belongs to (e.g. consumebale, equipment, readable, quest item, material, ...)
whether it can be used or not (some quest items for example should never be used)
what it does when it is used
the name of the action when it is used (e.g. a letter is not used but read), this is diplayed in the action menu
Thank you for reading this and make sure to let me know if you want to see the series on Youtube
The people who would be interested by your tutorial are likely not to come over here. Just pointing this out.
I clicked your link because I’m trying to do a clean inventory system with multiple sized items and when I read the word “Complex” I was hoping for this. But unfortunately no, you’re teaching what most inventory tutorials already teach out there. I’m not disregarding your work, doing tutorials and helping the community is amazing. But you wanted to know if it’s worth your time, I think this topic is already covered.
You added the notification feature but it’s just another system that you plugged in. You’re not necessarily looking for that when trying to make an inventory system.
Regarding the inventory system I’m making, I managed to got it working following this method. It’s not clean at all but at least it’s working.
The only inventory tutorial I’d be looking for is a clean diablo-like inventory system.
Hi
the reason i opened this post was that i did not find any tutorials for inventory systems that feature stacks/Drag&Drop/proper tooltips/notification etc.
Also i do not understand why you think that a size-based system would justify the description “complex”: Doing a size-based system is not that hard to do, however it is simply not the system i was planning to do because im not interested in it.
Still thank you for your feedback,
WOW this is amazing THANKYOU! this is what i been having an issue with! i made my own inventory system and couldn’t figure out how to make items stackable. THIS IS TOO COOL!!!
please release this in the market place ASAP!!! i totally want to buy this man! this is too freaking cool!
SELL IT PLEASE!
yea i thought its a release of content but still. this is really cool. he should sell it… and ill be the first buyer as long as its not overpriced like a lot of content :P.
I really appreciate your enthusiasm
However you will not have to buy anything since it will be a free tutorial series. Just follow along and you will get the same result that is shown in the video as well as the knowledge to extend upon it or to modify it to your needs
YES I know it will be free but dude you should sell this. i know it would make a killing. and i really don’t like any of the inventory systems on the market place.
NONE have this ability for stacking or this cool slide in “you recieved item” stuff or multi sized inventory. i think the coolest part of it is the look. most out there are dull looking(not to impune their work) but none have detailed item info tooltips… this system is better than most for me.
Question:
Will it support “trading items” with other players or just single player mode?
Honestly i am not that interested in making money
Currently it only supports single player mode but after i finished the series i will probably add multiplayer support.
It’s a minority of users who come on the forum. But anyway looks like I was wrong on all sides and that the tutorial is interesting to lots of people!
So here it is:
Just uploaded the first video of the series which is about creating our project and importing some textures to use later. I know it is a really short video but i want to keep the topics separated and the next ones will surely be longer and on a more advanced level. Part 2 will hopefully be published tomorrow and deals with building our item classes.
By the way i know my english sucks so please you do not have to tell me