Download

[Help] Need help on creating a progressive crafting system.

Hello survivors, I am working on a progressive crafting system to make crafting a bit more interesting besides just building things. It is intended to work like this.

  1. Start with simple item ‘A’ blueprint.
  2. Crafting item ‘A’ opens Item ‘B’ blueprint which requires Item ‘A’ to craft.
  3. Item ‘A’ blueprint and Item should be removed when Item ‘B’ blueprint is crafted/revealed. To keep the system progressing.

So far I have the crafting station working, all blueprints made, models, etc. I added all of the blueprints to the crafting station inventory and it in fact works were you have to craft ‘A’ and use component ‘A’ to craft ‘B’, ‘B’ to ‘C’ etc. The problem I am having is ALL the blueprints are visible in the station. I have can not come up with a way to make only the relevant blueprint visible. Previous item are consumed as a resource on construction of the next step so that’s no problem. It is simply hiding the higher level blueprints and disposing of the lower level ones that has me stumped.
Any words of wisdom would be great! I have been working at this for days checking all available options and frankly have run out of ideas.
Thanks, Tom

Tom, you can actually assign categories to your items and they will automatically organize themselves. Since you were vague on specifically what you were crafting, it’s hard to give you any more advice; but essentially you could make an a,b, and c folder so that all items would be in there.

Hello Survivors,
Thanks for your reply TheRealAzrael. I figured the abstraction of my idea would actually be easier to understand, but I will explain the whole mod and see if it will generate any ideas. First let me say I do not like the way crafting is handled or not handled in game as it is more of just a building system not crafting IMHO.
So, The way my crafting station “Design Desk” works is this. I will use the Bow as an example…

  1. Initial BP takes a basic primitive bow and some other items to create a ’ Initial primitive Bow research item’
  2. Next 10% BP takes ’ Initial Bow research item’ + other items to produce ‘Primitive Bow research 10% item’
  3. Next 20% BP takes ‘Bow research 10% item’ + other items to produce ‘Primitive Bow research 20% item’
  4. …30%,…40%,…etc
  5. Final BP in that level(primitive) takes ‘Primitive Bow research 90% item’ + other items to produce Ramshackle Bow BP’(fully craftable with none random stats)
  6. Next level takes ‘Ramshackle Bow’ + other items to produce ‘Initial Ramshackle Bow research item’
    and the cycle continues.
    As you can see this becomes very complex and cumbersome when lumped all into the inventory of the ‘Design desk’ just 2 level upgrades on 1 item takes 22 BPs so even with a bow folder for say 4 levels of improvement you would have 40+ BPs. This is my reason for finding a way to hide all blueprints until that stage of progress is reached and once used they would become irrelevant unless you start over on that item completely as the ‘research item’ is consumed so they could be removed/hidden again. What I really need, I think is to figure out how to make the Initial blueprint create a 10% BP that is then consumed to make the 20% …etc …etc… I have tried setting the ‘is blueprint property’ and ‘can be blueprint’ but never end up with the 10% research blueprint just the 10% research item and I also need to be able to use the blueprint as a resources for crafting the next stage.
    Well there it is, still confusing but that is how it is actually working now. I had plans to make upgradable versions of many items as well as some custom ones say you have a completed cloth hat and chitin hat make it possible to use these to create an insulated chitin hat.
    Thanks, Tom

Edit - I wanted to note that only the craftable final items have an associated engram. The intermediate items (percentage BPs) are actually children of the note class only used to save progress and provide an icon. Is an engram necessary to make a created item a BP when created such as the percentage BPs?

Hey man that seems like a perfect idea for a mod I am currently working on. If you can get that figured out it sounds great! https://forums.unrealengine.com/showthread.php?81331-Evolution-Of-Warfare-Technology

To limit the space being taken up, you could definitely organize these into categories. Currently I don’t think there is a limit on categories, so you could start with the tier qualities (prmiitive, ramshackle, apprentice, etc) then move into type (weapon, structure, consumable) then more specific (bow, axe, pike, etc) and in there you could have general categories for your percentages.

Granted, it would be quite the undertaking to organize everything properly, but without re-writing the crafting system, that would probably be your best option. If you are competent in blueprinting, you might just be able to “create” your own crafting susbstructure.

Ok another thought… I am still trying to avoid hundreds of BPs. I am a programmer in several languages this in fact would be easily solved with some access to the code, but we have what we have. If this was strictly a code based problem in C++ I would simply overload the research function to provide an output based on the input variables I.E if you feed the research BP a 10% item you get a 20% item and so on and so forth which would reduce it to 1 research blueprint. Anyone know a way to overload the blueprint system as in the same terms as an OO programming language. It seems to be pretty strictly enforce input to output, but I am not familiar with the UE I do see mention of abstract classes and such. Thanks again, Tom

Well, I have been making good progress with this using autocrafting BPs and hiding most of them … What I need to know now is how do I add BPs to crafting stations so they are visible without having them on the engram dialog where you spend points. I can add the engram as ‘additional engram blueprint class’ in Primaldata_BP and StructureInventory, it is then visible in both places, but when I add them to ‘additional structure engrams’ so it doesn’t appear in the engram selection dialog no luck getting it to show up in my crafting structure… Any ideas?

Default Engrams in the inventory are for forcing things to be learnt and invisible when set to 1, if you don’t match up an array index to the Default Inventory Item then they will remain visible at all times, for auto-crafting and such, this is what I have been doing for my Mods, I make sure all the required to learn engrams are at the top of the Default Invetory Items array and then I assign a Default Engram index of true(1) to them all, then leave out the Default Engram indexes for all subsequent engrams that are automatic

Thanks for the response! I have tried this but for some reason when they are added this way they ignore the ‘use default folder’ flag and just get placed in the grid not in a folder…am I missing something? It works fine if added as a regular engram.

Edit - I also noticed all of my engrams brought it through the structures default inventory are all blueprints with isn’t a big deal I guess, but I tried setting the ‘is engram’ option and then they are not placed/usable… What is the correct use or purpose of ‘Is engram’ on the BP?

I hit another small snag if someone could help. I have the research bit working to create next tier items as far as stats go in that I removed the randomness and made them level appropriate and of course I can call my custom made items whatever ‘Ramshackle’, Apprentice’, etc… However this is just the name and does not include the fancy coloring of a properly create item of that tier. I played with the generic quality under the item stats but it simply added an effectiveness field to the item but never improved the actual apparent quality. If the name field is left blank it will always say primitive ‘whatever’ even if it has 3-5X the stats of the original primitive version. Anyone have a handle on how the quality system works?

The quality system is a bit odd.
To use it, first of all you have to check the “Use Item Stats” box. Then, each item has 8 types of stats (in vanilla). They all work more or less the same as far as quality is concerned.

Hadn’t tested Default Modified Value and you can’t change Randomizer Power.

Randomizer Range Override (RRO) is how many “steps” there are for every unit of “quality”, where quality is an arbitrary number assigned to an item/blueprint upon spawning. For an item of quality 5, the game rolls 5 X-sided dice (where X is the RRO). The greater the RRO, the higher the possible difference between the same “quality” items.

Randomizer Range Multiplier (RRM) is how many base values each “step” (each point of RRO) is worth. If it’s set to 1.0, then one point of RRO will be a 100% increase.

State Modified Scale (SMS) is the final multiplier applied to the stat. It is a flat number, nothing fancy here. It is generally recommended to have the product of SMS and RRM equal to 0.001 (0.1%), unless you want larger “steps”.

Initial Value Constant (IVC) is the added value of an engram crafted item (a.k.a. rating 0.00). When using percentages, 1.0 equals to 100%. So, if you set this to 1 and use percentages, a 0-quality stone pick will do 32 damage instead of 16, and if you’re using integers, it will do 17 damage. The 16 itself comes from the weapon file.

Rating Value Multiplier (RVM) is how much this stat affects Item Rating. The formula is unclear, but definitely not linear. The higher the number, the more an increase in this stat affects Item Rating.

The thing is, Item Rating is what the displayed quality of items (primitive, ramshackle, apprentice etc) is based on. It’s primitive from 0 to 1.25, then ramshackle up to 2.5 etc. Is this directly related to the usefulness of the item? Yes and no.
Item Rating itself is NOT based on the resulting stats, but rather the “arbitrary quality” of the item - in other words, the number of attempts the game makes at rolling dice for each stat - and the RVM of that stat. When the game spawns items or blueprients of some quality, the total number of dice used is randomized, as is their spread between the stats. While unlikely, it is possible for an item with lower rating to have higher stats.

Also, the Generic Quality stat (named effectiveness in-game) affects things such as food, water or torpor gain/loss from consumables (giving the displayed % of normal).

So, your problem is that your stat doesn’t affect the RVM enough, OR the RRO, RRM or SMS is too high. Alternatively, if you changed the threshold for displayed quality in PrimalGameData, that could be it.

An issue I was unable to resolve is that you can give stackable items quality, but they won’t go into different stacks based on it and instead will inherit the quality of the existing stack.

Wow great explanation Thanks!.. I appear to be fighting the mechanics of the quality system by removing this randomness for my items. for test purposes I have spawned hundreds of items in game and you are correct many higher tier items can have stats lower than lower tier ones and the stats are all over the place. So far I have only got a couple of items completed in my mod, so I will work with this a little further and see if I can at least tighten the range of the randomness and still use it before I move on.
Thanks Again.