A downloadable add-on

Buy Now$3.99 USD or more

Recipe List Extension

Ever look at my crafting system plugin and think "This is great and all, but how does the player keep track of recipes they've made"? Well this extension is (partly) for you!

Features:

  • Recipe list scene shows all known craftable items and all recipes for those items in one easy to navigate menu scene.
  • The scene is split by craft category to make the lists less cluttered
  • All categories can be browsed, even the hidden, or disabled ones
  • If enabled, the player can also craft items directly from this scene
  • Visually supports recipes that contain category items as ingredients.

This extension adds in a new recipe list scene, or more specifically, adds a recipe list mode to the existing crafting scene. As mentioned above, the base functionality for this mode is for the player to view all known (unlocked) recipes for all available crafted items. This means that when the player unlocks an item via crafting it successfully for the first time, or by default, or via plugin command, it immediately becomes available on this recipe list screen to view.

Recipe List

Showing informational mode

If enabled, the developer can also set it so that the recipe list screen doubles as a synthesis menu as well. This is basically a new shell on the crafting system back-end, which turns the original system onto its head a bit. The best usage case for this would be to disable the original crafting system menu command entirely, and only use the recipe list. This changes the system into a synthesis style crafting system, rather than an ingredient based one. 

Making a Better Sword

This recipe is disabled because the player doesn't have the materials required

Alternatively, of course, you can use both systems in tandem, and allow the player to discover recipes via experimentation, and then recreate those recipes more easily from the recipe list scene instead. The possibilities are endless (not really).

The new scene comes with several new messages and buttons which are customized on a crafting category basis, just like the original plugin, as well, which is probably par for the course as the recipe list mode of the crafting scene is very different than the original mode.

One of the other big features of the base Crafting System plugin was the ability to make recipes that contained an 'ingredient category item'. This allowed developers to create one recipe which had several required ingredients, but one of those ingredients can be any of a pool of ingredients that belongs to a specified category. The base plugin's demo project contained one such item, the 'Cooked Meat' item. This recipe required an item labeled as 'meat', and a seasoning. In a normal recipe based crafting plugin, an item like that might take several recipes to make, one for each different kind of meat item the player could have. This would clutter up the UI as well, having to scroll through a dozen different cooked meat recipes to get to the next item wouldn't be great either, right?

Spicy Salsa BAM

A category ingredient is shown on the right

Well this extension keeps the ingredient categories function of the recipes from the base plugin. Recipes that contain an ingredient category item will show the required category in the display, and force the player to choose a valid item from the pool when crafting it. There are a number of configurable parameters to control how these category items are displayed in the UI as well.

Feel free to browse through the screenshots I've uploaded as well, there are a couple of widescreen ones too. 

As mentioned, most of the text can be changed based on the current crafting category, and some of it even changes base don the ingredient category. The information on the recipe list window (required level, success rate) will also be hidden if your base crafting plugin is set up to not use levels, or to not have soft failure chances too. 

I have also added a plugin command to call a specific category for the recipe list scene. I can't think of a good situation for which this could be used, outside of disabling the crafting scene entirely and using it to call the recipe list from an outside object, like a common event or a blacksmith anvil event or something.

CallRecipeList category
If you omit a craftcategory name, it will call the main recipelist window as if you got there from the menu command. Specifying a categoryname will lock the player to that category, preventing them from viewing or crafting recipes belonging to other categories entirely. This command works the same as the CallCrafting plugin command from the base crafting plugin.


Terms of Use:
This add-on requires the Crafting System plugin to function. Purchasing it without the base plugin will be non-functional. Do not purchase this extension if you do not have the base crafting system plugin.

You may:

  • Use this extension in any project you like, commercial or non-commercial.
  • Edit the extension to make changes to functionality, add or remove features, or anything else for personal use only.
  • Share changes to this extension via further extension plugins.
  • Profit from extensions to this plugin, via commissions, crowdfunding, etc.

You may not:

  • Share this extension, the base plugin, or the demo project with anyone.
  • Claim full ownership of, any extensions made for this plugin.
  • Modify the header, or the filename of the extension.
  • Share modifications to this plugin directly. Any modifications to this plugin must be shared as a standalone extension, that requires both this extension, and the base plugin to function
StatusReleased
CategoryTool
Rating
Rated 5.0 out of 5 stars
(2 total ratings)
AuthorRamza
Tagscrafting-system, extension, plugin, RPG Maker, synthesis

Purchase

Buy Now$3.99 USD or more

In order to download this add-on you must purchase it at or above the minimum price of $3.99 USD. You will get access to the following files:

Plugin Download 94 kB

Development log

View all posts

Comments

Log in with itch.io to leave a comment.

can i please get the help file for this plugin and the crafting level

(+1)

Hi,

can you help me? When I open the recipe menu, some recipes give me this error

TypeError

Cannot read property 'length' of undefined

And the game crashes. It happens sistematically with certain recipes but I haven't been able to figure out what's wrong with them.

(+2)

Actually, after some trial and error, I believe is is when one of the ingredients is not an item, but a category.

In some instances, it won't show the category name and display a blank space, but stll display the recipe  (is it actually an option or with this feature we can only list items as ingredents?) while in others, it just crashes with the abovementoned message.

(1 edit) (+1)

Hi there.

It should show the category, there are options in the plugin params to control what it draws when it finds a category ingredient. At least one of the options has it scroll through a list of ingredients of that category, so the issue might be one of the ingredients it's finding being bugged or something.

I think what's likely happening here is that it's set to show the category name with an icon, but the icons weren't set up in the plugin parameters, so the window can't draw the icon because the length of the list is undefined.

That error could also be caused if you're using an old save, as well. Since the icon list might be tied to the save file or something. There's always something screwy going on when you use an older save file.

~Ramza

(+1)

Found! "Category Behaviour" was left blank in the plugin parameters.  Thanks

Hey Ramza

I was looking for an option to hide recipes if they don't meet the required level. Is that an option?

It isn't currently, but it can be.

You might be the first person I'm aware of who uses that parameter, so be sure to let me know if you run into any weird issues with it as well :)

I appreciate it. I can definitely let you know if I run into any issues.

Just wondering if there was any update on this or did i miss something

(1 edit)

I know that this one is probably something that i'm doing wrong. Im having a Main Menu bug though. I followed the directions in the script to work it with VisuMZ Main Menu core. But this still keeps happening. How do I stop it from displaying in the regular menu or should I just accept that thats its location? Also where should I be placing these in the order of scripts? The spot their in seems to be working minus this glitch.

Hello there.


The second option from the top in the plugin parameters for the recipelist plugin should be the 'Bind to Main Menu' parameter. If you set it to false, it won't show up in the menu at all. Or... it shouldn't, anyway. There isn't a way to adjust where in the menu list it binds, without using another plugin which changes the main menu commands. There are instructions for how to bind it to the main menu using the YEP_MainMenuCore and the VisuStella Main Menu Core plugins in the help documentation.


If you're a little more JS savvy, the function starting at line 630 is where it draws the menu command. You can roughly move it around the menu command list by loading it before or after different functions that load the menu commands. It loads after addOriginalCommands(), so there will be plugins that load commands before it, or after it, if they alias different functions.

~Ramza

Any chance of making this category specific?
Ramza.CSXParams.AllowCrafting

I get this UI bug with it: 
Description of an item is aligned to the top bar instead of a bottom of the screen.

Hi, does this plugin require 'Ramza_CS-Core'? But after I install 'Ramza_CS-Core', the system will make an error. Can you help me see what's going on?

(+1)

Your version of the Ramza_CraftingSystem plugin is woefully out of date. It's from a time before CS_Core was a thing, so the two of them are calling the same functions from eachother over and over causing this error.


Update it to the latest version and that should solve the problem.

~Ramza

(+1)

Yes, it was indeed a problem of having an outdated version. Thank you for your prompt answer. PS: You should update your engineering package plugin.

Hello Ramza!

It would be cool if the recipe list shows you the current amount of the item you have in your inventory. This way it´s easier to keep track how many items you wanna craft. Maybe you have time to implement that!^^

Thank you for this major update, Ramza!
I've been following the development on this plugin for quite a while.
I understand the original intentions for this plugin, but this update (as well as the additive traits) will seal the deal for me!

May I offer a suggestion or idea for a feature? I don't want to try to bloat or complicate your plugin, but what do you think about the idea of party members having different crafting 'skill levels' as a optional choice the user can set up and then the player can pick which character can craft it?

For an example, you have Harold, Therese, Marsha and Lucius. Harold has a higher level in Weapon Forging than the others and gains levels faster. Therese is higher level in Armor Smithing, etc.
So naturally, the player will just pick however has the highest level to perform the craft since the chance is higher.

But what if there was a twist to where, if set up, different characters have different traits even if they're not well-versed in that crafting branch? Taking the example again of Harold. Let's say he has a skill level of 5 in Weapon Forging and Marsha is level 1. If you selected Marsha to perform the craft, she could have a passive special trait where if she does Weapon Forging, she has a chance to imbue states on any weapon with +MAT, +MP (or whatever the states do) corresponding to her level (maybe a formula?). E.g: level 1 WF would be a 10% chance for state1. Level 3 would be a 13% chance for state1 or a 5% chance for state2 which is a better version of state1.
Lucius could have a "Careful" passive where he has a +7% chance to craft WF items.
Therese has a +25% chance to craft axes, spears and clubs, but -10% to all other weapons types (that are tagged).
Again, something the user would have to set up so those who don't wish to use this system (and use it how it currently is) isn't forced to use this. Or maybe as an extension.

Would give different reasons to use other characters other than whoever has the highest level.
Not sure how hard this would be to implement, but I thought that I would share this before I forget.

Thanks for coming to my Ted Talk.

While that is a pretty neat idea, it's unfortunately more than a little outside the scope of the plugin as is. 

As an extension, it has potential, maybe, but for paid extensions like that I'd have to look at how much work would go into it versus how many people would actually use it, and I'm not sure it's at a point where that's going to be feasible.

Firstly, it'd require a pretty substantial (optional) overhaul to how craft experience is stored, calculated, and handed out. As right now, experience and levels are stored in $gameParty, and with the change of crafting going to an individual, it'd need to be stored on those individuals. 

Next, there's really no space currently in the scene to display who is doing the crafting as is. So at least one window would need to be modified slightly to at least contain a name, or maybe a face, or the currently selected actor.

Traits being passed on from the actor to only certain items, and only in certain crafting types is definitely a neat idea, but it'd also require a whole lot of new note tags. Maybe the additive traits tags could serve double purpose here too, but in general, having that many tags is a QC nightmare when it comes to actually testing.

Applying the results of those tags in itself probably wouldn't be too difficult, all things considered, as long as the scene already knew which actor was actually crafting, adding them to the item with a % chance would be pretty simple. The problem is getting to the point where these tags exist and can be added.

Plus, there'd be no good way to even see these actor-effects in game in the first place. One issue I have with the additive ingredients traits already is that there currently isn't a way for the player to see them or know they exist. For this to be intuitive at all, there'd need to be some way for the player to see those actor traits as well, requiring another window somewhere, likely not on the crafting scene itself as it's already pretty full.

Like I said, it's a decent idea, but I don't think it's something I'm going to be able to do here. Though my terms of use do allow someone (say you?) to pay someone else to make it for you, or even make it yourself and then sell it for profit too, as long as it still requires my plugin to function at all.

Thanks for your input, though.

~Ramza

(+1)

Hmm, you're right, a lot of the issues you've raised is ones that came up in my mind as well.
Regardless, thanks for giving it a think!

Hey Ramza! I found something!

In DQ11 Mode, when you only have 1 ingredient, you can still craft from the recipe list, with an recipe that uses 2 of the same items.



And maybe another quality of life feature would be, to let the cursor stay at the recipe position when you craft something. That would make it easier to craft multiple of the same items in DQ11 Mode!^^

have a nice day!
(1 edit)

Thanks for the report. I can already see how I managed to make this mistake without even having looked at the code yet. I'm sure the logic for enabling the craft button is only checking each ingredient, and since you have 1x Wurzeltrank, it's passing the check for each Wurzeltrank, because it has no ability to earmark the first one as being used already. That should be fixable for sure.

Cris also reported a couple of other problems yesterday, so I'm gonna try to fix them all today, if I get the chance.

~Ramza

Also, there is a little bug when you enter the recipelist via plugin command. You press ok to craft something and you can still move the cursor in the recipe list. After one buggy menu cursor thing, it normalizes.

That was one of the things Cris brought up last night. Lol.

I'll get to it soon.

~Ramza

(1 edit)

Hey Ramza!

Is it possible to relock a recipe? 
And can you unlock a recipe with a name? (example: UnlockRecipe Potion)

And the update 1.15 is really nice. Maybe you could remove the "/" for the DQ11 mode, because it doesn´t show the recipe cost.

Have a nice day^^

Hey there.

I don't currently have a way to relock a recipe once it's been learned. I'm uhh, honestly not sure what use that could be, but I can see if I can add that in a future update. Keeping in mind of course that even if the recipe is locked it can still be crafted, locking it just prevents it from showing in the preview window, and from showing in the recipe list menu.

I don't have a way to unlock a recipe by name at all, currently. That's a pretty good suggestion, so I will see about implementing that in a future update as well. The only issue I can perceive is that recipe names don't need to be unique, but making it unlock an array of recipes if more than one with the same name exists shouldn't be too difficult.

The '/' on DQ11 mode is an oversight. I'll get that fixed in an update as well.

I need the relock ability for an tutorial. In this tutorial you craft an "Awakening Potion", but later on in the game, the "Awakening Potion" is called differently because they didn´t know the right name for it right away. Renaming a recipe should do the trick too.^^

To unlock the recipe by name gives the advantage to not mess up you recipe unlock books. In my game you can find recipes in bookshelfs, but when I mess around with the position of the recipes in the plugin, the index to unlock might change and cause maybe trouble.

Thank you for your quick reply as always.

Hey Ramza!

Is there a way too Show and Hide the Recipe List in the Menu like the Main Plugin? I think it´s "ShowCraftScene" and "HideCraftScene" there.

I wanted to do this with the Recipe List too, but I couldn´t find it?  Is there a trick to do it?

Heya.

For some reason, I never included a plugin command to do this. I will include one in the next update, as the switch exists, it just isn't attached to a plugin command.

In the mean time, you can use a script call command to set $gameParty._showRecipeList = false to hide the command from the menu, and set it back to true again to show it. You can also use $gameParty._enableRecipeList = false to disable it from the menu, while still showing the command as well.

~Ramza

Hello,

I hope I dont´t stress you out, because I´m asking that much. Do you have time to update the Text strings like in the Main Plugin? But there is no hurry.

And I have a question/suggestion:


What´s the red box for? I could not find anything about it...

Maybe you can change that to look like the Informational mode.  But if I´m wrong and the box is for something, then don´t bother with me xD

I thougt it would be more optimal to see more of the recipes at once.^^

Hey there.

I'll see about updating those text strings soon.

As for the red box, that box is there for selecting a wildcard ingredient. If the recipe contains one, when you select to craft it, the craft button forces the user to pick an ingredient that matches the category of the wildcard ingredient, using that window. I could put in a plugin parameter to hide this window and extend the result item window to compensate, but then if it was hidden, recipes with wildcard ingredients wouldn't work right.

It seems like I use your plugin completely different as its supposed to be xD I was never in need of wildcard ingredients.

Such as parameter to hide that window would really be a pleasure^^ thank you in advance!

I have uploaded version 1.13 which adds a couple of plugin parameters to customize some of the strings on the window, and also makes use of a couple of the updated strings from the base plugin (mainly the 'Crafting...' one).

I also added a new parameter to extend the result item selection window to the full length of the scene. If you turn this option on, the red highlighted window in your screenshot will be hidden until it is needed.

-Ramza