JCInventory, Grid based jigsaw Inventory for your projects

**n00854180t **You are a gem. I had not thought about implementing it ondrop() like that and i agree it is very clean. One thing i would change is to store the offset in the JcDragAndDropPayload, its the widget that holds the information about what is being dragged. I will move this into the main project once i test it, but the logic looks solid! Nice work:slight_smile: and clear guide might i add.

Cheers for that worked like a charm. Didnt even use the slot details pin so all good.

Thanks, happy to help :smiley:

That’s a great idea, I’ll implement that and update the guide in my post tomorrow.

Staggerlee, do you got a video or tutorial yet with the scope on looting?

Another cannot be generated from (none)

BlueprintEditorCompileResults:Error: Error Graph named ‘Interact’ already exists in ‘JCInventoryItem’. **Another one cannot be generated from (none) **
BlueprintEditorCompileResults: Info The execution path doesn’t end with a return node. Cast Failed
BlueprintEditorCompileResults:Warning: Warning [0166.58] Compile of JCInventoryItem failed. 1 Fatal Issue(s) 0 Warning(s) [in 2,985 ms]

Any ideas what (none) could be? - I am creating a material instance of a mesh that is inheriting from JcinventoryItem. It appears to me that as its doing this its trying to create another function in a non existing actor(at least, uniquely non existent)… Need to be able to “Spawn actor from class” with a Material Instance changing the look. I think its making your Jcinventory mad.

BTW. This forum is a nightmare. Aside from the Docs or Videos, its hard to contact you. Put it in theblueprints or something. Personally, when I am trying to find a solution to an issue, and the response of the creator is “Go check in the middle of a 7 page forum” makes me a little nervous. Do yourself a favor and put my $30 i gave you and buy a domain and build a simple site with tracking, forums, and direct contact. Unreal marketplace severely lacks any way to contact the company of the product you just purchased -this isn’t your fault, I’m just saying that you should beat them to the punch. This forum-to-find-answers thing is a dying breed (I believe someone covered in a previous post how critically important having true-blue help docs is for the learning process.
I’ve broken Jcinventory about 8 times now but I’m not giving up.
Oh btw, I found “DICKS” hidden in there as a variable field name, nice one.
mk-

Hey there, thanks for your feedback and welcome to the forums!
Sorry you are having a hard time but i am glad you have not given up. You can find docs on my youtube channel or on the wiki . I am currently working on both new video docs and wiki docs for 4.9. My preferred method of contact is via PM on these forums, you can expect a response within 24 hours to account for time differences.

AS for your issue! I’m afraid i’m not too sure, let me get this straight, you have made a child of JcInventoryItem and you are replacing the material on the item with a instanced materal. I don’t believe this would have any effect on the system. After having tested this i did not run into any issues- its a strange one indeed. Can you provide more information?

hey Staggerlee thanks for a awesome system, i was coming to report my compile issues, but i see a fix above so imma try that first, also will the crafting system but “elaborated” on at all? if not i guess i could try my hand at doing so was just curious and didnt want to do unnecessary work lol

Staggerlee - A world of difference with the new system, really awesome work.

**@uint32 **, i love your user name. Sorry, im not sure what you mean about the scope on looting?

hey Supermanofgaming, In terms of the crafting system- i am yet to do a video on how to ‘extend’ it, however the option is built in to JcInventory. When you craft an item on the item craft list it also fires an event, this is where you can add code to extend the simple system for more complex interaction. Im working hard on written docs at the moment but i might be able to slip in a video to explain this more. No promises as its lower priority then the core documentation im afraid.

You can find the event in the item BP, as the function craft item.

**MrMrC **im glad you liked the changes! JcInventory should have been done this way to begin with but blueprint components where not accessible when jcinventory was started.

Has anybody integrated this system as the master inventory for other BP items (i.e. generic shooter weapons). Trying to make it work but honestly confused. Should I re-parent the Other BP (i.e. generic shooter weapon items) under JCInventoryItem? How do you handle the concept of duplicate meshes etc. I assume there is some form of simple way that I am missing.

i would assume the weapon would have to be a child of the inventory item BP, for this reason…i didnt create any of my weapons or consumables etc as they all would need to be compatible with my inventory(in this case JCI) and i needed to establish that first…so in your case(i purchased generic shooter but have yet to open it) i would assume setting up as a component(4.9) like the video and converting the weapons to JCinventory items should do the trick

hmmm let me try that

One more question. Staggerlee - is there a more elegant solution that could be added into core JC in the future. I.e. that would allow JC to wrapper other item structures through configuration?

@Staggerlee - So I finally figured out how to get the base slot to tile properly behind an item image! All you have to do is resize the base slot image itself to be the same size as the inventory slot size in the settings, and then set the tiling to both horizontal and vertical.

I have mine set up to have the drag and drop payload be transparent so it just shows the item, but doing the same there will make it consistent if that’s what you’re going for. I think combined with the other change to drag offsets the inventory feels and looks nicer :smiley:

Edit: I also set up child class of JCInventoryItem to handle Skeletal meshes, for animated guns, bows etc.


Edit again: Question - How do you change the size of the default inventory grid? I see how it adds more space with the J and K keys, but editing the values directly so they start that size doesn’t seem to jive. Thanks :slight_smile:

Video showing off JCInventoryItemAnimated, the tiling BaseSlot behind objects, and the mouse down position being preserved, though it doesn’t show the on drop functionality. Oh and of course the bow I implemented, and the ongoing reskin :slight_smile:

JCInventoryItemAnimated should also allow for carrying ragdolled skeletal meshes, such as rat corpses.

@Staggerlee - Your code is great btw, very clean and well commented :slight_smile:

I’m willing to share any of the improvements I’ve made .

I just got an update for JC in Epic launcher. Any changes/bug fixes or Epic playing around again…

Wondering about the update myself.

Hey guys,
The update was just the bug fixes detailed . Your not missing out on new content. :slight_smile:

I did however switch the tooltip system to use the unreal engine tool tip system, but unless your modifying that you wont notice a difference. Just trying to clean up the code every time i release.

Also, love the update on your project. I must say seeing implementation videos/gifs of jcinventory really makes me happy. I agree about the grid spacing as well n00854180t, your UI is looking really nice.

@Staggerlee, I was wondering how to make it so the inventory starts with more space? I tried editing the values that the demo changes when pressing J or K but it doesn’t seem to work.

you cant change them directly. When the size of the inventory changes it needs to update a lot of things, that’s what the function handles.

Check the RPCcomponent in your pawn to set the initial size, then, have a look at the function called RPCChangeInventorySize. That should do the trick :smiley: