Go, Go, Godot!
  • 0

Inventory System v1.17 available

October 24, 2024

A new version of the Inventory System is available. This release includes various refinements to existing systems to flesh out more combat-related functionality.

Inventory Ammo Provider

The GGAmmoProvider component is responsible for providing ammunition to equipped weapons. Previously, it only had a “simple” strategy: Creating ammunition out of thin air. The new GGAmmoProviderInventoryStrategy pulls ammunition from items in the inventory it’s connected to. This allows players to pick up ammunition from loot boxes and item spawns

Weapon and Combat Refinements

The MyRangedWeapon2D class, which powers the two example guns in the Multiplayer Interaction Demo has received some ammo consumption refinements to go with the Inventory Ammo Provider mechanic and now emits signals when firing/reloading. Melee weapons and projectiles now use the GGHurtBox component to deal damage. The HurtBox applies damages to a HitBox, which is then processed by a DamageCalculator strategy to update the HealthStats component.

The new Ghost “Enemy” spawns as part of the Multiplayer Interaction Demo, and can receive damage from both melee and ranged weapons. When taking hits, the amount of damage floats above the character/object, which is all handled on the server and replicated to clients for multiplayer by a new set of classes.

Changelog

Features:

  • Added a new configurable MyEntitySpawner2D to spawn the Ghost
  • Added the GGAmmoProviderInventoryStrategy, along with some ammo and projectile rework.
  • Added configurable target (defaults to “_blank”) for the GGRichTextURLOpener.
  • Added GGFloatingNotifier component to inform the GGFloatingDisplay component to display floating numbers for server and clients.
  • Melee Weapons now each have dedicated scenes.
  • Ranged Weapons were reworked for improved ammo handling and signal emission when firing and reloading.

Bug fixes:

  • Corrected the Drag-and-Drop configuration for the Inventory In-Game Menu UI integration.
  • Ensure damage calculation only runs server-side.
  • Various corrections to the netfox implementation of the character scene.
  • The Tour instructions now correctly show that CMD (instead of CTRL) is the drag-and-drop modifier on Mac.

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.

Get It Now
Learn More

assetgdscriptgodottutorial
Posted in Godot.
Share
PreviousInventory System v1.18 available
NextInventory System v1.16 available

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Related Posts

  • January 30, 2024

    Inventory System v1.1 available

    Hot on the heels of 1.0, version 1.1 allows for gaps in the inventory. This release also correctly bakes the release version into the PDF Guide.

  • Godot Game Engine Logo
    September 15, 2022

    Godot Engine 4 reaches beta

    Just a couple of days ago, Godot 4.0 alpha 17 was announced. Today, Godot Engine 4.0 beta 1 was released. Be sure to check out the announcement. There are lots of improvements across the board; rendering, lighting, physics and navigation, animation, and scripting.

  • September 25, 2023

    Generating documentation for GDScript

    Any sufficiently large code base needs documentation. Documentation tends to come in all sorts of shapes and sizes. Among them are high-level architecture and design docs, class and method interface documentation, and inline comments to explain optimized or complex algorithms so the reader doesn’t have to parse the logic in their head (often, this is …

  • Strings
    December 17, 2022

    When not all strings are Strings. Detect bugs in your GDscript more easily with static typing

    One of the benefits of working with Godot Engine is that GDScript allows one to operate high level. GDScript is dynamically typed, so not even variable types have to be specified, but I would strongly recommend using static typing wherever possible. It can help with performance but primarily adds clarity when trying to follow the …

    © 2026 GoGoGodot.io. All rights reserved.