Is it possible to forbid quality recipes basing on assembler quality?

Place to ask discuss and request the modding support of Factorio. Don't request mods here.
snakeru
Burner Inserter
Burner Inserter
Posts: 13
Joined: Sun Nov 24, 2019 5:48 pm
Contact:

Is it possible to forbid quality recipes basing on assembler quality?

Post by snakeru »

I noticed that on my second run I'm intentionally delaying researching the quality because of the UI downside: all recipe selections suddenly get a second step and that step is in most cases completely unneeded - I have to just confirm that normal quality is indeed what I want.

Is it possible to restrict quality recipes so that they could only be crafted on certain assemblers that meet the quality requirements? If yes - I'll probably mod it for myself and then publish for everyone else, I already saw similar feedback regarding the UI.

The idea is as follows: to craft a recipe of quality X your assembler MUST itself be of quality of at least X. Examples:
1. A normal quality assembling machine (1,2 or 3 - doesn't matter) could only produce the normal quality recipes and will therefore never get the extra UI step. It could still produce higher quality items if quality modules are inserted, but it could never be used to assemble a quality recipe directly.

2. An uncommon quality assembler could assemble normal and uncommon recipes (and produce rare+ only sometimes and only with quality modules), etc.

I'm imagining some kind of LUA script that would go through the recipe catalog at load time and adjust list of recipes that an assembler is allowed to assemble. This way the extra quality will remain hidden for most of the factories.

Is such a thing possible?


==== Some more thoughts on the matter ====
I understand, that this makes production of the quality items somewhat harder. For mass-production you need not only quality modules, but also you need to get lucky enough to get assemblers of sufficient quality. Building a full-scale quality plant that could handle all 5 levels and never get jammed with extra items becomes delayed and more of a challenge.

That said - I'm totally fine with that idea.
Arcus
Inserter
Inserter
Posts: 25
Joined: Thu Dec 14, 2023 12:07 pm
Contact:

Re: Is it possible to forbid quality recipes basing on assembler quality?

Post by Arcus »

This just sounds like a total pain in the ass that would add a massive amount of annoyance to the gameplay and massively restricts dozens of playstyles. If you're "totally fine with it", you obviously did not think through the implications at all. If anything this is ridiculous anti-QoL that would add needless frustration rather than streamlining things, because now you have to find an appropriate quality assembler for any quality step rather than just clicking through the menu an additional time to set the recipe.

Plus, once you start using legendary assemblers, you still have to go through the full recipe quality selection anyway, so this solves nothing.
curiosity
Filter Inserter
Filter Inserter
Posts: 570
Joined: Wed Sep 11, 2019 4:13 pm
Contact:

Re: Is it possible to forbid quality recipes basing on assembler quality?

Post by curiosity »

Arcus wrote: Sun Jan 12, 2025 6:55 pm This just sounds like a total pain in the ass that would add a massive amount of annoyance to the gameplay and massively restricts dozens of playstyles. If you're "totally fine with it", you obviously did not think through the implications at all. If anything this is ridiculous anti-QoL that would add needless frustration rather than streamlining things, because now you have to find an appropriate quality assembler for any quality step rather than just clicking through the menu an additional time to set the recipe.

Plus, once you start using legendary assemblers, you still have to go through the full recipe quality selection anyway, so this solves nothing.
Good thing this is an API request and thus won't be imposed on anyone. Now if only it's been phrased an one instead of something out of the Modding help forum...
Post Reply

Return to “Modding interface requests”