So, either Equipable or IsWeapon, or both, are reading as False.
But, that means ActiveGameInstance->WeaponActive? is reading as True, so your GameInstance is loading properly and read that value properly.
If you are trying to get an ItemData from an empty array, it’s never going to pass.
You can set the default values in the MyGameInstance blueprint, just like you would any other blueprint.
You’ll want to populate your inventory with the available items the same way you did when you populated the inventory in MyCharacter.
And make sure each of your entries has a unique ItemID.