Announcement

Collapse
No announcement yet.

Action RPG Inventory System

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • replied
    Originally posted by wrfstudios View Post
    Thanks for taking a look. I was able to fix the issue by deleting ALL the references to the struct and then replacing ALL the references and then re-linking - not too crazy about doing that all the time so... I would be curious to find out if 4.12.5 works better.
    I just encountered this problem and I am using 4.12.5. Could you elaborate on how you corrected this problem? It's not clear to me what you mean by "deleting ALL the references to the struct". In C++? Blueprints?

    Leave a comment:


  • replied
    Originally posted by Pirate View Post
    This is an art export issue. Make sure your head asset is skinned to the skeleton headbone and exported out properly before importing into unreal.



    Sounds like a bug with unreal and structs. You are using 4.10? I know in 4.11 a lot of struct issues were fixes (not all but it was a good start).




    I will test with 4.12.5 when I get a chance and let you know if the bug still persists.
    Thanks for taking a look. I was able to fix the issue by deleting ALL the references to the struct and then replacing ALL the references and then re-linking - not too crazy about doing that all the time so... I would be curious to find out if 4.12.5 works better.

    Leave a comment:


  • replied
    Originally posted by toothpick007 View Post
    Can anyone help me on wihy this is happening I have tried everything to get this to work and its driving me insane
    This is an art export issue. Make sure your head asset is skinned to the skeleton headbone and exported out properly before importing into unreal.

    Originally posted by wrfstudios View Post
    Please see previous reply (thread up 2 threads)... but its giving errors if I change the "Inventory Item" Struct also... and try to package game

    Error: UStructProperty::Serialize Loading: Property 'StructProperty /Game/InventorySystem/Blueprints/Components/InventoryComponent.InventoryComponent_C:GetInventoryItems.InventoryItems.InventoryItems'. Unknown structure.

    is there a trick to refreshing the struct after editing it?

    because it seems like if I add an entry to the struct... it then becomes an "unknown structure"
    Sounds like a bug with unreal and structs. You are using 4.10? I know in 4.11 a lot of struct issues were fixes (not all but it was a good start).

    I will test with 4.12.5 when I get a chance and let you know if the bug still persists.

    Leave a comment:


  • replied
    Yes it was a matter of broken functions after migration that needed to be pointed in the right direction. Thanks for taking the time to respond!

    Leave a comment:


  • replied
    Please see previous reply (thread up 2 threads)... but its giving errors if I change the "Inventory Item" Struct also... and try to package game

    Error: UStructProperty::Serialize Loading: Property 'StructProperty /Game/InventorySystem/Blueprints/Components/InventoryComponent.InventoryComponent_C:GetInventoryItems.InventoryItems.InventoryItems'. Unknown structure.

    is there a trick to refreshing the struct after editing it?

    because it seems like if I add an entry to the struct... it then becomes an "unknown structure"

    Leave a comment:


  • replied
    Can anyone help me on wihy this is happening I have tried everything to get this to work and its driving me insane

    Leave a comment:


  • replied
    Adding another entry to the ToolTipInfo Struct compiles without errors and runs ok... but wont let me cook and package...

    I added a simple integer "Regeneration" variable under the intelligence variable

    here are the errors in the log file

    LogProperty:Error: UStructProperty::Serialize Loading: Property 'StructProperty /Game/InventorySystem/Blueprints/Components/InventoryManagerComponent.InventoryManagerComponent_C:SetToolTip.ToolTipInfo'. Unknown structure.
    MainFrameActions: Packaging (Windows (32-bit)): UE4Editor-Cmd: [2016.07.06-19.34.55:737][ 0]LogInitisplay: LogProperty:Error: UStructProperty::Serialize Loading: Property 'StructProperty /Game/InventorySystem/Blueprints/Components/InventoryManagerComponent.InventoryManagerComponent_C:GetItemToolTip.K2Node_MakeStruct_ToolTipInfo'. Unknown structure.
    MainFrameActions: Packaging (Windows (32-bit)): UE4Editor-Cmd: [2016.07.06-19.34.55:738][ 0]LogInitisplay: LogProperty:Error: UStructProperty::Serialize Loading: Property 'StructProperty /Game/InventorySystem/Blueprints/Components/InventoryManagerComponent.InventoryManagerComponent_C:Client_SetToolTip.ToolTipInfo'. Unknown structure.
    MainFrameActions: Packaging (Windows (32-bit)): UE4Editor-Cmd: [2016.07.06-19.34.55:739][ 0]LogInitisplay: LogProperty:Error: UStructProperty::Serialize Loading: Property 'StructProperty /Game/InventorySystem/Blueprints/Components/InventoryManagerComponent.InventoryManagerComponent_C:ExecuteUbergraph_InventoryManagerComponent.K2Node_CustomEvent_ToolTipInfo'. Unknown structure.
    MainFrameActions: Packaging (Windows (32-bit)): UE4Editor-Cmd: [2016.07.06-19.34.55:740][ 0]LogInitisplay:


    I immediately went to the SetToolTip function in the InventoryManager component to see if there was anything obviously wrong but there wasn't... I did a "refresh nodes" to see if that would help...

    but its like the struct gets broken when I add a new entry to the "ToolTipInfo" Struct (even if I delete the entry and put it back to exactly what it was before... it no longer works and always gives me that error during packaging)

    (using 1.5 version and ue4 4.10.4 version)

    Do I need to do something else? Thanks
    Last edited by wrfstudios; 07-06-2016, 04:00 PM.

    Leave a comment:


  • replied
    Originally posted by OverRated_AU View Post
    Hi LLews, are you also assigning your new slot with a slot number in its details under inventory slot in widget?
    Yep that worked i cant belevie i missed that Thanks Overrated slots now work as intended.
    Thanks for all the help its been great
    Last edited by LLews; 07-05-2016, 10:48 AM.

    Leave a comment:


  • replied
    Originally posted by LLews View Post
    Yep all of them are numbered correctly
    its 14th in the enum starting from 0 as head. Named 14th here in the equipment.
    [ATTACH=CONFIG]100636[/ATTACH]
    Then in the array its 14th as well
    Thanks for the help though
    Hi LLews, are you also assigning your new slot with a slot number in its details under inventory slot in widget?

    Leave a comment:


  • replied
    Yeah i had doen both of thoose
    Click image for larger version

Name:	EquipmentType.PNG
Views:	1
Size:	190.6 KB
ID:	1111507
    Click image for larger version

Name:	equipedmeshes.PNG
Views:	1
Size:	308.0 KB
ID:	1111506
    I think both of theese are corrently done is there anywhere else that delcares what each slot is or similar
    *Edit ok so my item now equips in the slot but does not show up in game but if i unequip it it unequips the head slot not the selected slot also when nothing is in the head slot it still does not unequip
    Attached Files
    Last edited by LLews; 07-04-2016, 06:35 PM.

    Leave a comment:


  • replied
    Originally posted by LLews View Post
    Yep Thanks pirate That fixed the loading of items from the load logic but the slot still thinks it the head slot unfortunately as in if i move any item there it says it can not be equiped but if i move a head item there Then it equips it but it slots the item into the actual head slot also it the new slot is right click it ddequips the head slot if that makes any sense
    You need to update the Switch in the InventoryManagerComponent->GetEquipmentTypebySlot function.
    Since you have this new Equipment Slot you need to return the new Equipment Type that fits it.
    In the Enum the HEAD type is #0 that's why it thinks your new slot is a head slot as it's getting a null value (0).

    Click image for larger version

Name:	EquipmentTypeBySlot.png
Views:	1
Size:	147.8 KB
ID:	1111496

    There are only two switches for EquipmentSlots and the other is in the EquipmentInventoryComponent->Update Equipped Meshes function which handles replicating and updating the changes onto the Character when an item of that EquipmentType is equipped.

    Leave a comment:


  • replied
    Yep Thanks pirate That fixed the loading of items from the load logic but the slot still thinks it the head slot unfortunately as in if i move any item there it says it can not be equiped but if i move a head item there Then it equips it but it slots the item into the actuall head slot also it the new slot is right click it dequips the head slot if that makes any sense

    Leave a comment:


  • replied
    Originally posted by LLews View Post
    Yep all of them are numbered correctly
    Oh I know what the issue is.

    In InventoryPlayerController in the ServerLoadPlayerItems function you need to add another pin for the new equipment slot. It's this function that is loading the Inventory Item into the wrong slot.

    Click image for larger version

Name:	LoadItems.png
Views:	1
Size:	99.6 KB
ID:	1111493

    To get the load items logic to work with your changes it requires hooking up your new Equipment Slot and making sure it exists in the right place/order in the NPCItems struct.

    Not sure why it thinks it's the head slot on hover though, but lets see what happens once it's loading the item into the right slot.
    Last edited by Pirate; 07-04-2016, 01:51 PM.

    Leave a comment:


  • replied
    Yep all of them are numbered correctly
    Click image for larger version

Name:	Enum.PNG
Views:	1
Size:	28.6 KB
ID:	1111484
    its 14th in the enum starting from 0 as head. Named 14th here in the equipment.
    Click image for larger version

Name:	Equipment.PNG
Views:	1
Size:	261.3 KB
ID:	1111485
    Then in the array its 14th as well
    Click image for larger version

Name:	Inventory.PNG
Views:	2
Size:	209.3 KB
ID:	1111486
    Thanks for the help though

    Leave a comment:


  • replied
    Originally posted by LLews View Post
    Thanks For the reply Pirate I had done both of thoose, [ATACH=CONFIG]100547[/ATTACH]
    This is how things are looking in a blank project as you can see theres a fern in the added slot if the class item spawing is enabled seems to be the first item in the list from the class.
    Along with this as youll see in the next image while the mouse is hovered over the added slot it belives its over the head slot [ATTAC=CONFIG]100548[/ATTACH] sorry for the text was done with the Snip tool.
    Make sure your equipment slots in the equipment umg widget are numbered correctly, and that they match the same slots are your equipment slots Enum and your make inventory array, all 3 need to follow the same order.

    Leave a comment:

Working...
X