Skip to main content

0.2.0

Unreal Versions

  • 5.4
note

Going forward, the example map will only be updated for the most recent version of Unreal.

Changes

  • Added a level for third person games (LV_BoltExample_ThirdPerson).
    • The example uses a simple focus/interaction system for picking up items and opening chests.
    • Added functions OnFocused and OnUnfocused to the BPI_Interactable interface. These are called locally when the actor gets focused/unfocused by a player.
  • Added new widgets for an item hotbar.
    • Note that this hotbar only works for using items; we will not be implementing a hotbar for the items' abilities. See the UI Guide for more info.
  • Removed most dependencies on the example map's C++ classes from widgets.
    • Some dependencies can't be avoided due to the way GAS is set up.
  • Renamed ItemOperationHandler to InventoryComparisonViewModel
  • Removed BPI_ItemOpHandlerWidget interface
    • Replaced with individual Initialize functions for inventory widgets and slot widgets
  • InventoryComparisonViewModel is only used for inventory comparison windows
    • W_WorldItemPickupButton requests directly from the inventory controller
    • Drop button requests directly from the inventory controller
    • Added a function Play Feedback For Result to BPFL_WidgetUtils for playing feedback from any class
  • The Player Controller contains the FeedbackCatalog instead of the ItemOperationHandler; pickup and drop buttons tell the player to send feedback using the catalog
  • Renamed PickupItemStack to HeldItemStack
  • Renamed W_GenericInventoryWindow to W_InventoryComparisonWindow_Generic
  • W_InventoryComparisonWindow_Generic is now responsible for mapping inventory classes to the inventory widgets it spawns.
  • Added the W_InventoryComparisonWindowBase class for inventory windows.
    • W_PlayerInventory and W_InventoryComparisonWindow_Generic both derive from this class
    • The ViewInventory function (from BPI_PlayerWithInventory) now takes the W_InventoryComparisonWindowBase class.
      • Notably, this is the "Window" class, not the "Inventory" class.
      • This puts it more in line with the PushContentToLayerForPlayer function from the Lyra Example.
  • W_WidgetStack on the HUD now uses CommonActivatableWidgetStack.
    • Windows pushed to the stack must derive from CommonActivatableWidget.
    • Windows receive the OnActivated/OnDeactivated events when reaching/leaving the top of the stack, respectively.
  • Inventory windows and the HUD now derive from CommonActivatableWidget.
    • These classes use common UI's GetDesiredInputConfig to handle input config changes.
      • For example, the mouse cursor should become visible when opening your inventory in third person.
  • Inventory widgets now unbind from delegates when destructed.

Bug Fixes

  • Fixed a bug in the non-stoch example map that caused equipment to spawn additional item sockets when loaded.
  • Fixed a bug where inventory delegates would get called during engine teardown.