A new version of the Inventory System is available with more multiplayer-related features. The Multiplayer Interaction Demo can now run in multiple modes, through two separate implementations of the Character scene: The simple character scene leverages the MultiplayerSynchronizer and can either let the client have authority and move the character, or have the client send inputs to the server, which then applies the movement logic server-side. A separate netfox character scene leverages the netfox addon to implement client-side prediction and server reconciliation.
Features:
Added a “drop all items” to the GGInventoryUI toolbar.
Added a GGAccessTestPolicy to the access manager for delay and failure testing of policies.
Added crafting to the main tour
Added crafting recipe collection
Added MyMultiplayerSpawner, which reads scenes from a directory to populate its auto spawn list
Added hotbar access policy
Hotbar tracks item when its moved around in the inventory
The GGInventory’s items_changed signal now supports batching
The GGInventory’s swap_items() method now atomic/emits a single items_changed signal
Added reusable MyItemDropHandler to drop items near character within configurable distance
Multiplayer Interaction demo character now includes two versions; A “simple” version, and a “netfox” version for client-side prediction.
Added Multiplayer Lobby demo; similar to the Multiplayer Interaction demo, but uses WebRTC with a lobby server that allows clients to join via lobby code.
Added window management examples to main tour
Added link to multiplayer lobby demo to main tour for web build
The main tour theme selector now uses the resource name as the theme name
Multiplayer interaction demo character can equip tools and weapons, with hotbar integration
Weapon types and item serialization enhancements
Bug fixes:
The inventory controller default action strategy handles touchscreen double-tap as double-click
Camera callback in physics process for smoother ux
Correction to sequencer action strategy method name
Correctly apply inventory search filter to inventory UI
Crafting component gdmaim enum compatibility
Disable project allow_hidpi and remove tour autoscaling via content_scale_factor due to issue with Godot’s drag-and-drop handling
Don’t export GGItemData active property
Don’t show sequencer’s save button on web
Adjust drag-and-drop order of operations to batch items_changed correctly
Drop filtered items compatibility with allow_gaps set to false
Enable access manager’s open access policy delay timer
Proper GGInventoryUI slot_scene handling when in list view
Inventory UI’s grid and list view allow for grid columns configuration
Correct architecture guide references to demos
Hide sort menu’s clip_text at label breakpoint
Inventory expirations updates item quantity via LUT
Fix for simple inventory UI support
Inventory transfer stacking strategy batches items_changed so items can unequip correctly during transfer
Inventory UI passes slot_scene to controller even when outside tree
Larger Multiplayer Interaction demo character client scope shape to avoid Godot 4.2.2 MultiplayerSpawner’s visibility regression issue
Main menu eats/handles inputs when visible
MDI Game UI allows interactions while inventory is open
Correct minimum inventory browse and transfer UI sizes
Correction to main tour overlay layer
Prevent dropping items from multiplayer interaction demo loot bag
Properly clean up access manager’s pending contexts
React to hotbar actions when button is released
SDI Game UI inventory browse UI focus handling
SDI Inventory transfer UI handles input events while open
SessionManager only reacts to server-side join/leave signals
Show WebRTC warning when in web mode
Open window with noopener option on web to preview separate Godot instance smashing ArrayBufferView
Splitting inventory items fills slots to the left, if the right side is full
Splitting items resets the TTL to item type expiration
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.
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 …
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 …
Need optimized export templates with PCK encryption support but don’t want to have to set up a build pipeline or download the entire compilation toolchain on your computer? Well, now it is. Fill out the form, checkout, and we’ll email you the download link after the compilation completes. Compilation may take 30 minutes to 3 …
Development snapshot #4 of Godot Engine 4.1 is here. Among many other changes, it fixes a lighting issue related to using Light-only mode in CanvasItemMaterial (#44559). Unfortunately, it also introduced a UX issue with gradient color pickers (#77745), which makes it quite difficult to work with gradients at all. If you use gradients, I recommend …
Inventory System v1.14 available
A new version of the Inventory System is available with more multiplayer-related features. The Multiplayer Interaction Demo can now run in multiple modes, through two separate implementations of the Character scene: The simple character scene leverages the MultiplayerSynchronizer and can either let the client have authority and move the character, or have the client send inputs to the server, which then applies the movement logic server-side. A separate netfox character scene leverages the netfox addon to implement client-side prediction and server reconciliation.
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
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 …
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 …
Introducing GodotBuilder: Custom Export Templates built on demand
Need optimized export templates with PCK encryption support but don’t want to have to set up a build pipeline or download the entire compilation toolchain on your computer? Well, now it is. Fill out the form, checkout, and we’ll email you the download link after the compilation completes. Compilation may take 30 minutes to 3 …
Godot Engine 4.1.dev4 is available
Development snapshot #4 of Godot Engine 4.1 is here. Among many other changes, it fixes a lighting issue related to using Light-only mode in CanvasItemMaterial (#44559). Unfortunately, it also introduced a UX issue with gradient color pickers (#77745), which makes it quite difficult to work with gradients at all. If you use gradients, I recommend …