Inventory UI prototype

design goals

  • Create a controller-friendly inventory system based on a parent-child dichotomy between different items, then leverage this dichotomy to encode several different types of relationships and interactions.
  • Provide a “scratch space” to give players detailed, low-level control and a hands-on feeling whenever they interact with their equipment and the environment.
  • Let players handle all interactions with game objects, in the world and their inventory, on a single screen; pickup/drop, tool selection, crafting, attachments, etc.



item parenting

Items can be a PARENT or a CHILD.

CHILD items can be attached to PARENT items, with contextual constraints depending on their type.


radial selection

When a PARENT item is selected, their radial menu can be accessed with LS.

PARENT items can have more than attached CHILD items under their radial menu; they can have switches or toggles as part of their children.


space navigation

The screen is divided into 4 spaces:

INVENTORY on left, WORKSPACE in the center (with an UPPER and LOWER), and WORLD on the right.

INVENTORY displays all of your current items.

Items in your INVENTORY can be sent to the UPPER and LOWER WORKSPACE to make manipulating and switching between them faster.

Items under WORKSPACE are still safely on your avatar; you can back out of this screen safely at any time without losing these items from your possession.

Items under WORLD are not currently on your avatar, but are close enough to interact with.


active space

Use DPAD LEFT and RIGHT to select the active space columns of INVENTORY, WORKSPACE and WORLD.

 

Use DPAD UP and DOWN to scroll through items while in the INVENTORY or WORLD, or switch between the UPPER and LOWER WORKSPACE.


send from active space

Send the currently selected item from the active space to a different space with A B X Y.

B sends items to the WORLD.

X sends items to the INVENTORY.

Y sends items to the UPPER WORKSPACE.

A sends items to the LOWER WORKSPACE.

 

Sending items from INVENTORY or WORKSPACE to the WORLD is equivalent to dropping them.

Sending items from WORLD to the INVENTORY or WORKSPACE is equivalent to picking them up.

 

If a PARENT item is being sent to a WORKSPACE occupied by another PARENT item, they’ll swap places.

If a PARENT item is being sent to INVENTORY, it will be added to the scrollable list there, or swap with the last active PARENT there if there's no additional room for it.

 

If a CHILD item is being sent to a compatible PARENT item, it will be attached to that item.

If a CHILD item is being sent to an incompatible PARENT item, or to a blank WORKSPACE, it will not move.

Unless they're loose in the world, CHILD items must have a PARENT.

 

If a CHILD item is being sent to the WORLD from any other space, they will group into dynamic piles, as many as are necessary. New piles will be created each time the last pile is filled.

Piles behave like PARENT items, only they can’t be moved into the INVENTORY or WORKSPACE. Only their children can be moved.

Once a pile is empty of all its children, it disappears from the WORLD.


EXAMPLE

Click through to see how you'd attach a cannister in your INVENTORY to a tool in your WORKSPACE.