A new version of the Inventory System is available. This version requires Godot Engine 4.3 and includes many refinements.
New Drag and Drop system
The Drag-and-Drop component has received a major overhaul. The previous system was quite complex and the separation of the classes that implemented the click-and-drag and click-and-release approaches had so much overlap that it made more sense to offer the two drag-and-drop modes through simpler, more streamlined configuration.
Inventory Popovers
The inventory system now also has a new popover feature. While hovering over an inventory item, a popover will show details about the item, much like a fancy tooltip. The presentation and behavior are customizable, and popover configuration is also included in the Inventory System Tour.
Theoretically, that section in the guide can now be simplified. However, instead of removing that knowledge, I’ve updated the section to explain why the workaround existed and is no longer needed. I believe there’s more value in understanding what changed, than not mentioning it at all.
Changelog
Features:
Replaced Drag-and-Drop strategies with the more refined Dragon Drop implementation
New Inventory Popovers that show details when hovering over items
New Inventory Item Filter
Inventory Item Weights
Replaced TileMap with TileMapLayer
Bug fixes:
Add game_ui node group to SDIGameUI in the inventory tour
Audio handling correction related to the Godot 4.3 audio changes
Drag-and-Drop modifier keys use CMD on Mac instead of CTRL
Drag-and-Drop now uses groups to determine draggable item controls
GGItemType.image data type changed to Texture2D instead of Resource
Inventory UI search box text alignment correction
Corrections to Multiplayer Demo transfer dialog context handling
Prevent UIContainer from setting input as handled
GGResizableControl sets input as handled to prevent UI interactions from leaking into character controller
The Inventory System Deep Dive and Architecture Guide helps game developers implement advanced multiplayer inventories using Godot Engine. The PDF Guide contains over 500 pages of code walkthroughs, diagrams, and explains concepts related to inventories, items, and more.
Right after I got my Steam Deck, I wanted to know how hard it is to get a Godot game running on it. What’s the developer experience for someone who’s stepping through this for the first time? It was really easy to do, so I’m sharing this here, whether you’re following along or like to …
Arguably, more fun than writing code is removing code. I was assembling a split-screen multiplayer UI. The goal behavior is to show/hide the appropriate displays for the players, depending on how many players there are. Initially, the code to update the UI was very simple, because I started with two players. In that case, you …
For some reason, my Godot game would no longer launch on the Steam Deck. I could hear it running as if it were running in the background, but the screen kept showing the Steam Deck’s UI. Since it’s all Linux I figured it should be possible to just drop to the command line and launch …
Inventory System v1.16 available
A new version of the Inventory System is available. This version requires Godot Engine 4.3 and includes many refinements.
New Drag and Drop system
The Drag-and-Drop component has received a major overhaul. The previous system was quite complex and the separation of the classes that implemented the click-and-drag and click-and-release approaches had so much overlap that it made more sense to offer the two drag-and-drop modes through simpler, more streamlined configuration.
Inventory Popovers
The inventory system now also has a new popover feature. While hovering over an inventory item, a popover will show details about the item, much like a fancy tooltip. The presentation and behavior are customizable, and popover configuration is also included in the Inventory System Tour.
RPCs with Typed Arrays
Godot 4.3 now supports RPCs with typed arrays, which previously required a workaround:
Theoretically, that section in the guide can now be simplified. However, instead of removing that knowledge, I’ve updated the section to explain why the workaround existed and is no longer needed. I believe there’s more value in understanding what changed, than not mentioning it at all.
Changelog
Features:
Bug fixes:
The Inventory System Deep Dive and Architecture Guide helps game developers implement advanced multiplayer inventories using Godot Engine. The PDF Guide contains over 500 pages of code walkthroughs, diagrams, and explains concepts related to inventories, items, and more.
Related Posts
Running Godot Games on Steam Deck
Right after I got my Steam Deck, I wanted to know how hard it is to get a Godot game running on it. What’s the developer experience for someone who’s stepping through this for the first time? It was really easy to do, so I’m sharing this here, whether you’re following along or like to …
Fire, Rain, and Black Hole particle effects
This video is from December last year and uses Godot 4.0-beta7, but I thought it was interesting, because… particle effects!
A GDScript refactoring exercise
Arguably, more fun than writing code is removing code. I was assembling a split-screen multiplayer UI. The goal behavior is to show/hide the appropriate displays for the players, depending on how many players there are. Initially, the code to update the UI was very simple, because I started with two players. In that case, you …
Launching Godot Games on Steam Deck from the command line via Remote Shell
For some reason, my Godot game would no longer launch on the Steam Deck. I could hear it running as if it were running in the background, but the screen kept showing the Steam Deck’s UI. Since it’s all Linux I figured it should be possible to just drop to the command line and launch …