Inventory was the way we would incorporate the theme Finite Space into our game. You have one backpack and have to fit all items inside it. As I started implementing the backpack and items you can place in it, I quickly realised that this system was going to be fun to develop. I implemented functionality into the items to detect if they are colliding with other items in the backpack and if they are to drop to the ground instead of being added to the player's inventory.
We wanted our game to be goofy and funny as well chaotic, which gave us the idea to include Non-Playable Characters (NPCs). I implemented 2 different types of NPCs, the first ones followed a pre-set path and played voice-lines at specific points. While the other type of NPCs roamed the world and played voice lines when the player was in their vicinity, with a delay in between them to ensure that the player does not get annoyed.
During the development of the game we found that it was very slow to input all items manually, specifically because we had quite a few of them and wanted to have easy randomisation. This led me to create a tool, that allows us to easily create new items and have them automatically stored in the global data table that holds all the information about our items and makes sure we can always randomise them, and still preserve the ability to collect all items from your shopping list.
Throughout development, we faced many challenges, but the biggest one was the time constraint. Only having 3 days to produce a fully playable game in VR was quite the rush (pun intended). But it did teach us valuable lessons about how things can change quickly during development and the importance of adapting and working under pressure.