These past couple of days have been so frustrating creating the inventory system. Firstly, because it is difficult getting everything connected to the rest of the game and secondly, because I couldn’t settle on a style. So I ended up making a couple of versions. I redeveloped the structure behind the inventory items to make it scalable in the future and this included the early structures for crafting requirements.
I originally started with the classic minecraft/7 days to die/terraria style inventory and planned a crafting system like 7 days to die/terraria/rust. Then I got talking to people and we ended up talking about how cool Skyrim’s inventory is, with the object preview etc.
So I created an inventory like this and got it fully connected to the game. You could view your inventory, select object and these would ‘equip’ in the game. But then I started thinking about using it and started to talk myself out of it. Like, ‘how would you handle a quick select menu?’ and ‘if it the game ever went to console or mobile how would it work?’. I could answer these but I realised it would change the gameplay I wanted. So I scrapped it.
I went back to the original play and created the minecraft/7 days to die/terraria. I had some trouble with the implementation in Unity, it was little things like the hierarchy of gameobject. I also started using the grid layout which started making it a little more complex, especially when dragging items about. And then there was the quick select bar. Anyways, after about 3 different versions I am happy with the one I have. In terms of functionality you need to imaging 7 days to die with crafting and inventory on the same screen.
Here is an example of the drag and drop functionality being tested. Currently the inventory is randomly populated for testing. As you drag and drop it also updates the inventory that is stored in the memory.
Still a lot of work to do, but overall I am happy with the progress and direction of the inventory system. After this I need to add interaction between objects so you can pass items from your inventory to a storage place, and visa versa.