2.11

Engine support: 5.4

!!! Warning Lots of classes have been renamed, moved and/or deprecated. I HIGHLY recommend backing up your project or setting up your source control first just in case.

Some items may have some objects in the ObjectsAndDrivers array (now called TraitsAndComponents) be reset to null due to classes being renamed.

Any container that was assigned as List will most likely break as the enum has been renamed to Traditional !!!

This version also comes with a new example project and this version will not be tested with the old. Documentation can be found here

Renames

  • Item Objects -> ItemTrait, new prefix is IT and classes have been moved into their own Traits folder.

  • Item Drivers -> ItemComponent, new prefix is IC

  • Item Struct Object -> ItemInstance, new prefix is II

  • The container style List is now Traditional.

Documentation will reflect these renames once 2.11 is officially published on the marketplace.

Traits and Components

  • The blueprint parents (BP_O_ItemObject/BP_AC_ItemDriver) are getting removed in the next update. Please reparent your classes to ItemTrait/ItemComponent. I can not label them as "Deprecated" because it would also label all children as deprecated. You can use the reference viewer to help find all classes referencing them.

  • The IT_ContextMenu trait has been deprecated.

  • Components are now soft referenced.

Item Asset

  • ItemInstance is now soft referenced and no longer instance editable. It made no sense to have it be instance editable as you should just use the class defaults

  • Removed the EItemType enum

Inventory Component

  • When selecting an asset inside your container settings items array, the dropdown will now automatically filter all item assets that fit your CheckCompatibility function. Read the ItemAsset code comment for more information.

  • When selecting an item instance, it will now prevent mixing ItemInstance classes and prevent "wild" ItemInstance's. More information can be read about in the DA_CoreItem documentation

  • Added GetItemsByTagQuery and GetContainersByTagQuery

Both of these settings can be disabled through the IFP project settings.

Widgets

  • Containers can now pass a custom padding to tiles and item widgets.

Reworks

  • BP_Interactable is now deprecated and all logic has been moved to BP_AC_Interactable, allowing any actor to be interactable without worrying about hierarchy. You will now want to reparent your interactables to either your own parent or AActor and add the BP_AC_Interactable actor component.

  • The UpdatePreview is now called on the owner, as usual, but is now also called on the inventory widget if the owner has an inventory component.

Bug fixes

  • Items would keep their equipped tag when moved out of an equipment container.

  • Splitting an item via MoveItem could break if the destination split was into another container.

  • The texture for the SocketButton texture and ItemEditor collapse button was in the example project and not the plugin.

  • Cursor would snap if the user would close an attachment with, then release the mouse while hovering over the player preview.

  • ItemAbilityTrait did not allow for multiple copies.

  • Some combinations of container settings and item widget could result in the item icon stretching.

  • When trading with a vendor, the currency would be given to the player first, then the item would be moved to the vendors inventory. This would lead to currency not going into the tiles that the item used to occupy, which could lead to the player not receiving the currency if their inventory was full, but would have space after the trade.

  • TryApplyCooldown was not calling CheckCooldown correctly.

2.11.1 (5.5 only)

  • The Use button would appear on vendor items

  • GetTraitByClassForItem if used with AllowChildren, would then ONLY accept children of the specified class. Simple fix, just check if the two classes are the same here

  • New example project could not split items because the new project used UI input mode only and the drag widget relied on the player controller receiving input.

  • Splitting an item, then dropping it, would result in the default item asset count being used.

  • AdjustContainerSize was not adjusting the tile coordinates correctly, leading to items and tiles going into wrong spots.

  • AdjustContainerSize would kick clients if the container was shrunk and an item had to be dropped.


Color Sheet:

functions - variable - category - class