Hello, I created a complete inventory with 2 widgets, structure file, interface and actors for the objects. but the save system is making me suffer a lot hahaha, any kind soul who wants to give me a hand?
Can you show what you have so far?
pick up object
BP_Component_inventory ( add item )
BP_Component_inventory ( remove item )
Widget_window_Inventory ( event construct )
Event graph Widget_window_invetory ( add object - call function, and comprobed slot )
Function in Widget_window_invetory
Widget_Slot_inventory ( add Comprobed item info and remove item info )
struct_item
BP_Actor ( pick item, and variable info item struct-item )
BP_Interface ( pick up and use item )
Thank you in advance for helping me, I hope you can understand the mechanism of my inventory with those photos
I can’t really see what’s going on here, but I can see you’re saving references. You can’t use references to actors for inventory, because once the actor is destroyed, the reference doesn’t point at anything.
If you want to store things in an inventory, you can save the class of the object. Next time the player wants to see or use the object, you have to spawn one from that class.
In the images I showed there is no saving system, that is, there is only the operation of the inventory
I know, I was a bit confused about that, as you were asking about saving things… ![]()
quick heads up before you go further: dont store actor references in the inventory if you plan to save it, refs invalidate when the actor is destroyed or the game restarts. store the item class (or row ID) plus stack data in a struct array instead, spawn the actor only when equipped or dropped. that one change fixes most inventory-save pain later.
for the save side itself, Advanced Save System, a save/load system plugin for Unreal Engine 5, gives you slots + serialization + async saves in BP: Advanced Save System. its on sale ($23.93).










