Day 325 Project Rance — C++ Inventory Backend Testing & Refinement [TBS]
Dawnward Interactive
0:00 / 0:00
Day 325 Project Rance — C++ Inventory Backend Testing & Refinement [TBS]
31 просмотр · 6 дн. назад
Dawnward Interactive
76 подписчиков
31 просмотр · 6 дн. назад
08/09/2026
During testing, I found several areas in the first implementation that could be improved, so today I refined how item statistics and classifications are handled.
Files created:
'InventoryEffectDisplayLibrary.h/.cpp' — Reads the actual modifiers from gameplay effects and converts them into UI-ready values such as 'Physical Power +20' or 'Health +50% Max Health'.
Files modified:
'InventoryTypes.h' — Expanded the runtime display-stat data and replaced the separate category and subcategory fields with a single hierarchical 'ItemTypeTag'.
'ItemDefinition.h' — Removed manually entered numerical UI stats and added 'AdditionalInfo' for optional non-numerical descriptions.
'RanceInventorySubsystem.h/.cpp' — Generates display statistics from gameplay effects, calculates character-dependent values, and filters inventory entries through 'GetItemViewsByType'.
'DefaultGameplayTags.ini' — Replaced the separate category and subcategory hierarchies with unified tags such as 'Inventory.Equipment.Weapon' and 'Inventory.Item.Potion'.
These revisions removed duplicated numerical data and simplified the classification structure. A single hierarchical tag can now identify an item at multiple levels, while gameplay effects remain the authoritative source for both gameplay values and their future UI presentation.
Today, I also tested category filtering, actual world pickups, inventory update events, using items, equipping and unequipping items, equipped-item reservation, and replacing equipment. All of these worked correctly, and the corresponding gameplay effects were also applied and removed from the character as expected. I still need to test in-session persistence when switching levels, disk save/load, and a complete save test. After those tests, I can consider what else may need improvement and possibly start working on the UI part.