Which Inventory to Choose?

So I’m in the market for an inventory system, I’m quite surprised that there are only two on the Marketplace to choose from!

I’ve watched the videos and read much of the forum topics for each of them, they both look really good and both developers are active in helping customers, so it’s a tough choice!

One thing I have been looking for that neither seem to support is some kind of classification/category system. They both put all items of all types into a single inventory grid so you have your apples and oranges mixed in with your weapons and potions etc. I was looking for a way to have multiple grids where items you pick up are placed into their appropriate inventory, “Consumables”, “Weapons”, “Tools”, “Magic” for example, and then you have a series of buttons to view each inventory, like tabs.

So my first question is; to which of these inventory systems would something like that be easiest to add?

Secondly, do either of them allow you to define what actions can be performed on each item in the inventory? For example, can you prevent an item from being dropped or use it as a ‘button’ to fire some event or call a function (I’m wondering how flexible they are)?

It’s quite possible I missed the answers to these whilst looking through both systems, there’s a lot of info to digest, so any advice would be appreciated.

Cheers!

I don’t know about the systems, but i have my own and NORMALLY, you can easily create such a categorized system your self. I assume you just use different arrays for
the food, and weapons. When picking them up, you just check the ItemType (which could be an ENUM in the Base Class). Creating a grid for the other arrays similar to the first one
and putting them into an Item Switcher. This is not that hard.

For the actions i can’t tell, because like i said, i don’t know about the systems.

Hey there,
Just wanted to say, the inventory system I’ve created supports item filtering, and you can set items to be usable (usage of an item triggers blueprint function which does what ever you tell it to do)

take a look here, maybe it will satisfy your needs: Inventory and Equipment System - Marketplace - Unreal Engine Forums
The system should be on the marketplace by end of next week, but you can already buy it via sellfy for discounted price.

Hello, I use Jcinventory and for your needs it has a category to choose where to clasify an item so i guess you can make what you need with it.

@eXi Yes I did consider building my own, but frankly $30 for an already working system that supports networking etc and has been tested and used by multiple people is a bargain. If my requirements had been very different then yes, it would make sense to start from scratch.

@Axxi, thanks for confirming that! JCInventory looks very good.

@Sarr, thanks, I completely missed your topic somehow! I’ve read really good things about your other products (one is on my wish list) and this looks great. Yes it’s at an earlier stage than the other two, at least in the video, but it does look like it’s orientated more towards the things I’m after. The major issue would be multi-player support, is that in yet?

Thanks all for your replies,

Cheers!

Not yet, but I will have multiplayer working within few days as Im using the system for a multiplayer project.

I posted a semi-detailed review about JCInventory a day or so ago if you check the last page of the thread here for it for more info. Might help you decide.
All I’ll say is that if you want to expand the system beyond the basics, meaning more than just have the items stored in the grid then you will have to be comfortable enough to learn any of them out there and take the time to learn them so you can integrate them into your game properly. I use JC’s and i know it pretty well now. Theres basic “backpack” and container support in it already. I was able to figure out how to set rules up, so when an item is picked up, where it gets dropped to(backpack a or b or c or whatever) and also what items CAN be put in backpacks or containers etc… so the rough-in is already there for what you want, providing youre comfortable with blueprints.

I haven’t tried any of the others. Whichever you go for, do leave feedback on the thread for it. The creators need the word of mouth and it helps the shoppers make decisions too!

Hi, yes I saw your review and it was very useful, thank you for taking the time to write that up!

I don’t have a problem with delving into the implementations and learning how they work so I can make changes etc, I expect to have to do that for anything I buy, unless I’m extremely lucky and it’s exactly what I need!

Regarding the changes you’ve made to JCInventory, how easy were they to integrate so they’ll survive future updates of the system? So if JC releases an update for bug fixes or features will your changes still work or will you have to redo them?

Cheers!

Hey there MajorFailure,
The truth is with blueprint systems is they are extremely hard to upgrade. If there are any major issues i make videos of how to fix them, but the biggest thing you will miss out if you deeply root JcInventory into your game is new features.
It really depends how much customization you do. The problem with blueprints is that to upgrade it you need to remove the old system then migrate the new one (trust me, i have done this 3 times with my own project as JcInventory has developed, its a pain in the ***). But this will be the issue with anything blueprint based AFAIK (unless epic or the community make some kind of merge tool) the issue is that blueprints need context in order to work, unlike say C++ that you can just kind of paste together. Each time there is a engine upgrade you can count on upgrade videos, that’s for sure. And as for feature creep, i have promised myself to give it a long miss for a while and work hard on documentation, so hopefully adapting now wont lead to missing anything.
I will say that for UE 4.9 the bag system has been cleaned up, as well as some code refactoring to make things clearer. There will also be a third person example pawn. But nothing too major.

As for picking the right solution, i think everything out there is good. My inventory does indeed have a lot of features, but with that comes a bigger system to learn, and it might be overkill for your projects, or maybe you would rather something very simple as a guide to learn your own. I guess at the end of the day it just comes down to your project and your feelings! Good luck!

Well to be honest. I’ve worked with UE4 for about 5 months now. My project started small and its waaay bigger than i thought it would get. I started around 4.3 i think and am now on 4.8.2. The only part of my project I didnt build myself was the inventory system. Which I installed on 4.8.2. So havent updated with it yet, but nothing I’ve built has ever broken from an update, other than weapons attached to meshes when a bug in 480 only allowed for manual attaching.

That said, Staggerlee summed up blueprints pretty well. They’re both amazing and delicate at the same time. For example, try using a function in 100 different places, then go and add a new input to that function and try to compile. The editor will scream at you if youre lucky, or just crash entirely because the new input isn’t present in the 100 nodes already placed. You have to refresh nodes on each one…(or hit save before compile and restart the editor sometiems updates them all). Also it’s true if you want something simple that lets you pick up and store an icon to represent an item, that system is easy, but if you want something thats more complex and customizable, the system will be, well more complex and customizable. Steeper learning curve for sure. Personally I’d much prefer a complex system with more features thats left open for me than a simpler one that works anywhere out of the box without thought.

yes and no. It depends on how updates come out. If its a blind replacement of the whole system, then no my changes will get overwritten since I’ve modified a lot of the main system in certain parts. If the changes to the system are documented though it should be easy enough to update semi-manually… if need to update at all. As mentioned its not really that difficult to understand (once you understand it), but it can be a real pain to modify systems to reflect updates on any project. Cost time really. I wasn’t and am still not too familiar with interfaces and a few other things so the system seemed a bit daunting to me at first. It does take time… stepping through it to figure out who does what, how and where etc. Once you do though you can pretty much make it do whatever.

How it survives future updates from epic I donno.

Apologies for the late reply, been away for a few days.

Thanks very much for your replies, I’ll make a decision soon, I’m sure whichever I choose will be a good foundation, just need to finish off my current task which is taking longer than planned (always the way it seems!).

Cheers!

I just went with the new kid on the block :slight_smile:

In all honest I’d recommend against getting any from the marketplace, they are actually very easy to make, and I can’t seem to understand the code behind the one’s I’ve seen, they are rather complex.