Action RPG Inventory System

I’m pretty new to this blog, like a whole day. So if this has been posted incorrectly I apologise or if my question has already been covered again sorry. I have looked can’t find any resolution. Basically your product is ace but I can only really get like 75 percent from it as I cannot for the life of me correctly import a skeletal mesh to my object. In my case a backpack. It situate’s itself near the actors feet haha!. So my question is do you have a tutorial other than the one that briefly goes in to it, another perhaps more in-depth?.

Hi @Pirate There

when I drop an inventory item, the item disappears. How I do to make a dropped inventory item to remain visible?

Make sure the item has IsDroppable set to True and a World Mesh assigned in your ItemList DataTable.

To add a new Variable you need to add a new entry to the end of the InventoryItem Struct then make sure to search your blueprints for all instances of Make/Break InventoryItem so you can hookup your new variable. (This step will no longer be needed in the next update). So you will then need to edit the World_Actor class to have some logic that reads this scale variable and assigned the value after it is spawned into the world.

So you are right that is the better way. So simply create a variable called something like WorldScale so you know it will be assigned with the items WorldMesh then add the new set scale logic you want into the World_Actor blueprint.

has anyone successfully merge this inventory with bitraid melee system v2 just wondering because I am stuck for some reason I can’t interact with object nor to they highlight

How expensive is it to monitor the contents of inventory slots, if bound to a function in an UMG? Would having the content being checked every frame cause performance issues?

Yes it will cause lag its best to only check it when needed, what are you looking at doing if i may ask?

Nothing too complicated. Simple function that checks what item is in a slot and returns its name. If that were not too expensive, I would like to do it like that instead of creating an event to check for it for every possible situation.

If its a loop and its running though your inventory every tick it will create lag even if its UMG based, if you need to return a item with a follow name create a function which you can run when it needs to be returned.

Thanks Will.

Since I commandeered the intelligence attribute I’ll just keep using that instead of changing a bunch of stuff…

:slight_smile:

Hi Overrated,

Are you talking about the user actor blue print or in one of the usable actor code blocks somewhere?

I couldn’t find it.

Thanks,

Arthur

Tips for moving Inventory Icons around in the UI

Hi there,

I’m building a new HUD widget which is going to allow the player to construct something new from items in their inventory.

The will move items from the inventory to the hotbar.

From there they will bring up the new HUD with the B-Key which will have 2 empty containers in it.

They will select items from the hot bar by either pressing the hot bar number or dragging an dropping the item icon from the hotbar into my new containers in the new build HUD.

I’ve been going through the inventory code and looking at the drag/drop code, but I’m still unsure of the best way to do this. Does anyone have a good tutorials I can watch or code samples or forum updates I can look at to guide me?

I’ve also been looking for ANY thing that shows how to integrate a particle system into a HUD. The most recent entry I can find in the forum is 2 years old. Does anyone know if you can even do this? If you can does anyone have a tutorial I can check out?

Thanks,!

Arthur

Hi,

Both look in the details were you setup the items ID, if you set it in the usable actor blueprint it will apply to all if you set it to a single child it will only apply to that single actor, not if you wish it to work in networked you’ll need to change the code to allow that as its limited to Single Player.

So you looking to build a crafting system or similar? its probably best to learn the inventory UMG logic it will help you build your own widgets.

Particle system in UMG ? i think you mite be mistaken by video overlays effects made to match UI elements?

¡¾www.cgjoy.com¡¿6262cc82ge05bf97ddfff690.gif&d=1402832826

Hi Overrated,

So you looking to build a crafting system or similar? its probably best to learn the inventory UMG logic it will help you build your own widgets.
Yes I am building a crafting system. I am going through the inventory system’s UMG logic, but I’m just no getting how the dragging and dropping is working.

Particle system in UMG ? i think you mite be mistaken by video overlays effects made to match UI elements?
I’m not sure that I was confused, but I really like those video overlay effects!!! Is there a tutorial for that somewhere?

Thanks!

Arthur

Have you seen my crafting system using this inventory? make sure you don’t over complicate the functionality.

When building a GUI you would design it in Photoshop and create the effects in a program like after effects, then recreate it in UMG.

Good Morning,

So I’m working on my crafting system and it is very basic. I have a hud widget with only two elements in it. The player will press the number keep associated with a hotbar slot and this will move an item out of inventory and place the icon for that item in my new hud widget.

The problem is I have no idea how to get the icon form the associated inventory item and place it in my new hud element. I’ve got my branch all setup to do this is UseConsumableItem in the inventorymanagement component.

Does anyone have any sample code on how I might do this?

I’m not going to ever bother with dragging and dropping anymore since using the hotbar is a lot easier.

Thanks,

Arthur

The best advice I can give is to really look over the UMG code and the client UI code in the InventoryManagerComponent and get a feel for how it was designed. Once you start following the code through and see how different actions work behind the scenes you will be able to start creating new functions to do your new logic and include existing functions that already provide a lot of the functionality.

Alternatively understanding that the Item exists on the server and that the UI Icon is just a client representation sent from the server to ‘show you the client’ what you have in your inventory. This is the most important concept to understand and will help with your design moving forward. You will want the server to handle the crafting and modifications of the items and then simply update the clients UI with where the item is now or the changes made to it. For example if you start crafting with an item you would want the server to move it from the inventory into some sort of Crafting Work Bench Inventory. This logic will then update the clients UI so it removes from the Players Inventory as it is no longer there and then draws it in it’s new place in the Crafting Work Bench Inventory.

I’m not sure if anyone will be able to provide a sample of code to help you achieve your goal as the way you might approach making a crafting system may be entirely different as someone else. But without first the understanding of how the items and the UI interact with each other it might be a bit daunting of a task at first.

Hi I was wondering if you could point me in the direction of adding additional slots to the equipment Eg having left shoulder and then a right shoulder, as differant equipable armour slots, So far i have managed to figure out that i will need to add a Skeletal Mesh Component with name of the slot along with adding an entry to both EquipmentSlots and EquipmentSlotsType from here im a little stumped on where to continue
Thanks in advance and the tutorials have been a greet help so far.

So I bought this inventory recently and got it set up. Everything seems to work as far as I can tell but I’ve noticed that my frame rate has dropped by about 20 frames on average. Everything use to run at 120 now I’m getting anywhere from 90 to 100. Anyone else experience this?

The only new thing in my project is the inventory and that most of my inputs and controls have been moved from the character to the player controller.

Also Is there an ETA on when the 4.12 update to the inventory is going to happen?

I think that in order to increase your frame rate, you will want to take what happens in the Event Tick in the InventoryPlayerController (along with removing the delay node) and put it into a function that operates on a timer so that every X (< .05) seconds it calls the Client Get Usable Actor Focus function, and start that timer at the end of the Event Begin Play.

This is only theoretical, as I don’t know if it will actually increase your frame rate, but I always heard that putting something onto Event Tick would almost always decrease your frame rate.