Announcement

Collapse
No announcement yet.

Action RPG Inventory System

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

    Originally posted by Infyy View Post
    Has someone experienced anything similar? Or does someone have a clue what's happening here?
    Yes, i have the same bug, already tried adding IsValid node.
    Reallusion Unreal Engine Community Manager / LEGENDS of EPICA [Twitter] [Facebook] [YouTube] [Vimeo]

    Comment


      So after further investigation I found the reason for this bug, at least in my case. I added something to the InventorySlot Widget which allows me to display Tooltip Information based on the actual item in the inventory. Currently the system gets the tooltip data from the global item database, but as I am implementing an ammunition system the user shall see the current number of cartridges in his clip, not the initial number from the item database.

      Therefore I called the PlayerInventoryComponent of the current PlayerController and used the "GetInventoryItem" function for the currently hovered slot to get the ItemInformation from there, instead of the database. Somehow this bugs the references and something called "REINST" (there are many threads and answerhubs on this, just search for "umg widget REINST") appears.
      I solved my problem by removing my code and implementing the logic via a blueprint interface.
      So note: references inside child widgets are bad, use interfaces or event dispatchers

      Comment


        Originally posted by Infyy View Post
        I solved my problem by removing my code and implementing the logic via a blueprint interface.
        So note: references inside child widgets are bad, use interfaces or event dispatchers
        Yes, this is why I had to add the blueprint interface because after 4.10 the blueprint compiler was getting stuffed up and giving reinst errors. If you are accessing information from a c++ class it should be fine to do things normally, but using an blueprint interface to access the data from blueprints was the workaround an engineer at epic told me to do.
        \\VANGUARD INTERACTIVE

        Marketplace - Action RPG Inventory System | Multiplayer TopDown Kit | Advanced Social System
        Multiplayer TopDown Kit Tutorials - Merging The Action RPG Inventory System | Removing the Fog of War
        Action RPG Inventory Tutorials - Merging Into Your Project | Adding New Items | FPS Controls w/ UI Mode Toggle

        Comment


          After working with this for a long time, I could create a crafting system. I did a few tests and I didn't see any problems. I don't understand much about the blueprints so I could have kept the codes too long but I don't think it will make a difference for the player.

          It looks like this.
          Click image for larger version

Name:	firstpic.jpg
Views:	1
Size:	46.0 KB
ID:	1120602

          Click image for larger version

Name:	looklikethis.jpg
Views:	1
Size:	116.1 KB
ID:	1120603

          I had a good day I guess.

          Comment


            Getting this error, recent changes include upgrading to 1.7 and adding a horizontal box with some buttons, to the hotbar widget, without calling any inventory functions or other informations. There is a cast to the player controller, and to the HUD reference. I could move the additions to their own widget, but i don't think it is related to that error, which only recently begun to popup. Still investigating.

            Error Blueprint Runtime Error: Attempted to assign to None from function: 'ClearInventorySlotItems' from node: Set ItemInformation in graph: ClearInventorySlotItems in object: InventoryManagerComponent with description: Attempted to assign to None
            Error Blueprint Runtime Error: Attempted to access missing property. If this is a packaged/cooked build, are you attempting to use an editor-only property? from function: 'ClearInventorySlotItems' from node: Set ItemInformation in graph: ClearInventorySlotItems in object: InventoryManagerComponent with description: Attempted to access missing property. If this is a packaged/cooked build, are you attempting to use an editor-only property?
            Last edited by unit23; 12-27-2016, 08:37 AM.
            Reallusion Unreal Engine Community Manager / LEGENDS of EPICA [Twitter] [Facebook] [YouTube] [Vimeo]

            Comment


              Originally posted by Emrehan View Post
              After working with this for a long time, I could create a crafting system. I did a few tests and I didn't see any problems. I don't understand much about the blueprints so I could have kept the codes too long but I don't think it will make a difference for the player.

              I had a good day I guess.

              That's not a bad start i recommend creating your crafting logic in its own component and just pulling from it from your player controller, try making a data table for your crafting list like mine below.



              Here an example of comparing item stats using a tooltip.

              Comment


                Originally posted by unit23 View Post
                Getting this error...
                Still looking into this, the equipment window also does not show icons any longer. Sometimes i get this error as well (closing the window is np). Any ideas are welcome.

                Error Blueprint Runtime Error: Attempted to access missing property. If this is a packaged/cooked build, are you attempting to use an editor-only property? from function: 'CloseEquipmentWindow' from node: Set IsSlotHovered in graph: CloseEquipmentWindow in object: InventoryManagerComponent with description: Attempted to access missing property. If this is a packaged/cooked build, are you attempting to use an editor-only property?
                Error Blueprint Runtime Error: Attempted to access missing property. If this is a packaged/cooked build, are you attempting to use an editor-only property? from function: 'CloseEquipmentWindow' from node: Set IsRightMouseButtonDown in graph: CloseEquipmentWindow in object: InventoryManagerComponent with description: Attempted to access missing property. If this is a packaged/cooked build, are you attempting to use an editor-only property?
                Reallusion Unreal Engine Community Manager / LEGENDS of EPICA [Twitter] [Facebook] [YouTube] [Vimeo]

                Comment


                  Originally posted by unit23 View Post
                  Still looking into this, the equipment window also does not show icons any longer. Sometimes i get this error as well (closing the window is np). Any ideas are welcome.

                  Are the slots showing a REINST when hovered over in UMG?

                  Comment


                    Hello, my friend. After packpage my project, ContainerWidget, InventoryWidget, and EquipmentWidget - don't visible. But logic is work! Help please.
                    In Editor all good.
                    Thanks
                    Last edited by DiziART; 12-28-2016, 07:17 PM.

                    Comment


                      Quick question, once again:

                      All usable items are child of World_Actor (well, at least the swords/cardboard items, shield). I made a struct with World_Actor Class Reference, so I can use this later on in a Spawn Actor from Class. The thing is, I also made a variable in the NPC so I can manually add which items to drop (to the ground) when the mob dies. If I do a Spawn Actor From Class I can see all the items just fine. However, if I go to the NPC variable (or in the struct) it will only show up the Shield, Sword(s) and Axe (4 items). I kinda also crashed when I tried to spawn it calling the SpawnActor From Class and in the class input putting the World_actor class reference from the NPC variable.
                      Side note: if I open the, for example, "Cardboard Boots" and compile->save, it will show up on the variable/struct (so that I could pick it), but still crashing

                      So, Im just wondering if there is a difference between the Axe/Sword(s)/Shield and the Equipment Armors in general :P if something changes on the inside so I can work my way around

                      Or

                      How would you recommend me to store the actor(s) (item) references in a struct so I can access them, to spawn it when a npc dies :P (drop)
                      Last edited by Namesis; 12-28-2016, 08:51 PM.

                      Comment


                        Originally posted by OverRated_AU View Post
                        That's not a bad start i recommend creating your crafting logic in its own component and just pulling from it from your player controller, try making a data table for your crafting list like mine below.



                        Here an example of comparing item stats using a tooltip.
                        Thanks a lot for your suggestion. I created a radio button for the crafting panel, and I connected it to the datatable so that the items automatically generated in the widget. In the same way, Crafting Informations come from the Data Table and Crafting progress starts when i press the button.

                        http://i.imgur.com/UqcQ4VR.jpg

                        How can I access the total amount value of item (example apple) that are scattered in different slots in the inventory?
                        Attached Files
                        Last edited by Emrehan; 12-29-2016, 05:14 AM.

                        Comment


                          Originally posted by Namesis View Post
                          Quick question, once again:

                          All usable items are child of World_Actor (well, at least the swords/cardboard items, shield). I made a struct with World_Actor Class Reference, so I can use this later on in a Spawn Actor from Class. The thing is, I also made a variable in the NPC so I can manually add which items to drop (to the ground) when the mob dies. If I do a Spawn Actor From Class I can see all the items just fine. However, if I go to the NPC variable (or in the struct) it will only show up the Shield, Sword(s) and Axe (4 items). I kinda also crashed when I tried to spawn it calling the SpawnActor From Class and in the class input putting the World_actor class reference from the NPC variable.
                          Side note: if I open the, for example, "Cardboard Boots" and compile->save, it will show up on the variable/struct (so that I could pick it), but still crashing

                          So, Im just wondering if there is a difference between the Axe/Sword(s)/Shield and the Equipment Armors in general :P if something changes on the inside so I can work my way around

                          Or

                          How would you recommend me to store the actor(s) (item) references in a struct so I can access them, to spawn it when a npc dies :P (drop)

                          There a few ways of handling this depending on what you want, the easiest way is to create a function and call it when the NPC dies and just loop its inventory and spawn a container actor like a backpack or something and move the NPCs items to that, another way is to set the NPC to usable when it dies but this can create problems because of its collision if your playing a death anim.

                          Originally posted by Emrehan View Post
                          Thanks a lot for your suggestion. I created a radio button for the crafting panel, and I connected it to the datatable so that the items automatically generated in the widget. In the same way, Crafting Informations come from the Data Table and Crafting progress starts when i press the button.

                          http://i.imgur.com/UqcQ4VR.jpg

                          How can I access the total amount value of item (example apple) that are scattered in different slots in the inventory?
                          Nice looks good are you going to add a create timer and item filters? , To get the total item amounts i created a function in the IMC that loops though your inventory to check if you have the req items this is all done on the client then when you actually craft a item it uses this same function but on the server for a finial check.

                          Comment


                            Originally posted by DiziART View Post
                            Hello, my friend. After packpage my project, ContainerWidget, InventoryWidget, and EquipmentWidget - don't visible. But logic is work! Help please.
                            In Editor all good.
                            Thanks
                            Have you made any changes to the UI? Are you working from a fresh version of 1.7?

                            Also please go into the InventoryLayout UMG widget and to the event graph. Then check the variables slot on the left and if you see the word component s expand that and delete the reference variable shown there. This will only be there in earlier versions and is not being used by any logic in the widget but may cause bugs because unreal is buggy.
                            \\VANGUARD INTERACTIVE

                            Marketplace - Action RPG Inventory System | Multiplayer TopDown Kit | Advanced Social System
                            Multiplayer TopDown Kit Tutorials - Merging The Action RPG Inventory System | Removing the Fog of War
                            Action RPG Inventory Tutorials - Merging Into Your Project | Adding New Items | FPS Controls w/ UI Mode Toggle

                            Comment


                              Have you made any changes to the UI? Are you working from a fresh version of 1.7?
                              - No. I do not change this logic. I use 1.6 version. UE 4.14

                              Comment


                                Sup Dudes

                                I tried to give the armor of the character of the same abilities like the Assault_Rifle Blueprint.
                                I am sure it can be optimized but it is already working . for both server and client.

                                every one is free to use this tutorial as they need or even use it as the 1.8 version of the ActionRPGInventory System

                                Comment

                                Working...
                                X