itch.io is community of indie game creators and players

Devlogs

From Clicks to Sticks: Building a Controller-Friendly Inventory

UnAbandoned Ware
A downloadable game for Windows

Hello again, Disgruntled Gamers! KennyBlanks here, back with another devlog to walk you through one of the more challenging systems in our upcoming game, UnAbandoned Ware. Anyone who's played a Resident Evil game knows just how critical the inventory system is - and I made it my mission to create a UI that felt like it came straight from the PS1 era. But, we're now four console generations past the original PlayStation, so I knew it needed a modern overhaul. I wanted that gritty texture, heavy atmosphere, and chunk font feel, but with smooth, intuitive gamepad navigation. This post is a little peek behind the curtain at how that all came together. 

On the right side of the screen, you'll see a grid layout that holds the player's items. Getting those slots to lock into place just right was trickier than I expected. Unity does offer a built-in "Grid Layout Group" component, but it wasn't giving me the pixel-perfect, anchored behavior I needed for this retro look. So I rolled up my sleeves and wrote my own layout system instead. The grid resizes and positions slots manually based on the number of rows and columns I predefined (5x4). 

The result? A limited, but clean inventory where every item is always visible and neatly locked into place. Here's a snipped from my custom layout logic:

This method gets the size of the parent panel, divides it into a grid, and places each item accordingly. It's super flexible, and it let me break away from the generic "Unity look" I wanted to avoid. 

Now Playing Nice With Gamepads!

Making the inventory look good was one thing - but making it feel good on a controller? That was an entirely different animal. Thankfully, Unity's new Input System made it possible. By manipulating the Event System's currentSelectedGameObject, I was able to "point" at UI elements and let the player smoothly navigate across them using a gamepad. The event-driven system let me treat controller inputs the same way as mouse clicks or keyboard taps. But of course, that wasn't the end of the story. I ran into some annoyances like making sure only one button was active at a time, maintaining focus when switching tabs, and handling weird edge cases. All of this took some creative scripting and thinking outside of the box. It wasn't glamorous work, but it made the interface feel much more polished and professional. I'm extremely proud of how clean and responsive it feels now, but stay tuned because there's even more to come :) 

Thanks for reading and stick around for more updates as we bring UnAbandoned Ware to life, one creepy screen at a time. 

Download UnAbandoned Ware
Leave a comment