Advanced Inventory System #37
Labels
area: Code Quality
area: Controls
area: Extensibility
area: Gameplay Scalability
area: GUI
area: Player Ability
area: QoL/UX
area: Rendering
area: Visual
engine: Controls
engine: Graphics
engine: Inventory
engine: Menu
feature: Addition
feature: Expansion
feature: Update
gameplay: Addition/Expansion
status: Advisory
Requiring more ideas or brainstorming about issue.
type: Massive
type: Migrated
type: Plan
type: Proposal
type: Scheme
Milestone
Original: MinicraftPlus/minicraft-plus-revived#201, MinicraftPlus/minicraft-plus-revived#545, MinicraftPlus/minicraft-plus-revived#567, MinicraftPlus/minicraft-plus-revived#718
Background
Currently, the inventory implementation is immature and flexible enough for other functionalities, including equipment and hotbar slots. However, this is somewhat different from what I proposed previously1.
Suggestions
Now, the new inventory system would focus on both usability, convenience, aesthetics and flexibility. Mostly mentioned feature would be having more slots to switch on the player hand in the hotbar. In addition, to support more HUD related features or equipment, having a flexible hotbar system is quite essential here. If not, the implementation can be clunky and complex. Based on suggested features, this is the more complete proposal on the new inventory system.
Hotbar
Adding more slots to the hotbar has been mentioned couples of times, so it is the basic part. There is no much plan about the non-dominant hand, but shield may be implemented.
In fact, the above schema is flexible for extra equipment switching. When the hand can be empty easily, extras equipment can also be switched in the similar way.
The number of hotbar slots also decide the number of storage slots in inventory as a multiple of the number of hotbar slots (for aesthetics).
Inventory Tabs
The new GUI system can make the menus scalable, so more elements can be fit in the same view. Mostly, the tabs would be adjacent to the main inventory slots area, like in Minecraft. This way, player can equip and access the items conveniently with the tabs.
Several tabs would be available at first. The first thing is the personal crafting area, would be migrated into the second tab and removed from hotkey as a separate menu.2 The first tab would be the primary slots of equipment, including armor and perhaps the non-dominant hand. Other tabs can be added along with more feature additions.
Storage Menu & Slots
Due to the advanced layouts of the menus, the slot entries have to be less verbose. This means, the item names would be hidden from entries and instead displayed on description menu/tooltip for allowing more visible spaces for other elements, or else the menus may be either too small or unhuman. Then, the slot menu would become two-dimensional and the slots are fixed, including container menus, empty slots could appear in the middle. Stack merging, swapping and splitting would also be supported.3 However, searching ability would be disabled from these inventory menus but could still be available in creative mode inventory. Full keyboard controls would still be supported on this layout, but may be more hotkeys and can still benefit from 2D slot menus (reduced scrolling time). I guess the keyboard controls may be similar to controller controls on Minecraft Bedrock, this layout benefits the most on mouse with keyboard. (This is actually another topic.) One more point is that the item slots can be more intuitive and clear at a glance.
Inventory Type
As ideas, there are actually 3 types of inventory system (suggested by @JamesTDG):
Here, sized or shaped storage does not really fit the Minicraft game system while the weight capacity system may be complex to be implemented in game (but can be as a mod). At the moment, stack limit has already been implemented in game, but not yet fully scalable. The actual full use and adaption of feature may be reliant on #31. In fact, the stack limit system may not actually be completely scalable, based on the system seen in Applied Energistics and bundles (Minecraft). We have 2 routes here:
Similar to vanilla Minecraft inventory system and current implementation, but with more different limitation per different items.
Similar to bundles in Minecraft, each inventory is assigned with a storage space value instead of usable slots. Each item occupies the space with certain value of storage space, quite similar to weight capacity system, but in a different approach. Thus, it may not be really stack limits, though there are still slots and stacks (each stack may still be assigned with a stacking limit for overflowing items). However, the available slots are not static and functions based on storage slot positions may not work.
Equipment
Currently existing proposals include the power glove and maps. If those are implemented as equippable tools, this system can be beneficial. Players could (un)equip them in the inventory tabs (may also by dominant hand) and use them on hotbar/HUD. This includes the new armor system in which armors can be taken off. Still, more equipment items can be added in the future.
Expandable Inventory Limits
As we have an inventory limitation system, we should have an enhancement to expand the inventory limit in the late game as a reward or equipment. Moreover, as seen in Minecraft, functionalities to utilize limits (bundle) and extra carrier (shulker box) can greatly enhance playability and are extensive to the system.
Examples
We could have bags, backpacks, arrow bundles, portable chests, etc. "Enchantment of holding" might be either too powerful or relatively meaningless, so equipment as the abilities would be a better choice. In these examples:
ContainerDisplay
).In ideal, there should be different stack size limits to different items to ideally balance the game.
In addition, there is a suggestion to starting with a few slots, but using an upgradable backpacks for more slots in the inventory storage.
Conclusion
To sum up, these are the plans that could be done to overhaul the current inventory system in order to expand the capabilities for more features. Also, this also adds numerous features suggested by players, but better migrated and adapted into system. The number of available base inventory would be decided with expandabilities taken into consideration. This is a quite important feature update to the gameplay.
See Also
Footnotes
Discord post: "Advanced inventory menu"
This focused on an optional menu style with GUI style option. ↩
Discord post: "Merging Crafting Menu into Player Inventory Menu" ↩
Discord post: "Inventory item stacking support"
Previous post on the same topic was named "Inventory stack operation support". ↩
The text was updated successfully, but these errors were encountered: