[0.15.2] Recipes not set on assembling mach. from blueprints

Post your ideas and suggestions how to improve the game.

[0.15.2] Recipes not set on assembling mach. from blueprints

Postby factoriouzr » Wed Apr 26, 2017 9:21 am

Recipes are not set on assembling machines when placed from blueprints if the recipe is not yet researched.

Other entities like requester chests have their requests set to not yet researched items, same with filters on inserters. We should have the same behaviour for assembling machines and other factories. The current behaviour is inconsistent, confusing, and frustrating. When I place a blueprint and it's built (Ie. I have the factories, etc needed), the factories show up blank (they also show up blank in the placed ghost).

All factories should allow setting their recipes before the research is done, same as all other entities that can request, filter etc, have conditions etc.
factoriouzr
Filter Inserter
Filter Inserter
 
Posts: 462
Joined: Sat Jun 06, 2015 2:23 am

Re: [0.15.2] Recipes not set on assembling mach. from blueprints

Postby ssilk » Sat Apr 29, 2017 10:12 pm

Added to viewtopic.php?f=80&t=45635 Improvements for the Construction-Phase (Handling of Blueprints / Ghosts / Copy / Pre-Configuration)
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
User avatar
ssilk
Global Moderator
Global Moderator
 
Posts: 10388
Joined: Tue Apr 16, 2013 10:35 pm
Location: Würzburg, Germany

Re: [0.15.2] Recipes not set on assembling mach. from blueprints

Postby factoriouzr » Wed May 17, 2017 12:42 pm

Can this please be prioritized for 0.15. This is a big sore point in how blueprints work. Everything else has their filters, limits, requester slots set (eg logistics chests, interters, filter inserters etc), but factories don't have their recipes set. Just gray out the recipe picture if it's not researched and don't enable the factory if it's not researched, but allow the recipe to be set on the factories.
factoriouzr
Filter Inserter
Filter Inserter
 
Posts: 462
Joined: Sat Jun 06, 2015 2:23 am


Re: [0.15.2] Recipes not set on assembling mach. from blueprints

Postby ssilk » Wed May 17, 2017 6:00 pm

This is then a bug. Is there not already such a bug posted?
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
User avatar
ssilk
Global Moderator
Global Moderator
 
Posts: 10388
Joined: Tue Apr 16, 2013 10:35 pm
Location: Würzburg, Germany

Re: [0.15.2] Recipes not set on assembling mach. from blueprints

Postby Rseding91 » Thu May 18, 2017 1:03 am

ssilk wrote:This is then a bug. Is there not already such a bug posted?


It's not a bug, it's working this way by design.

Setting a recipe in an assembling machine is the same as allowing that recipe to be used. If you could load a blueprint with power armor 2 at the start of a map you could craft everything the game had to offer without ever researching the recipes.

So, this is not going to change. You can't make a ghost with a recipe you haven't unlocked because you haven't unlocked it yet.

Things like requester chests don't matter because they can request all day long but that doesn't make the items magically appear.
If you want to get ahold of me I'm almost always on IRC and Discord.
Rseding91
Factorio Staff
Factorio Staff
 
Posts: 7376
Joined: Wed Jun 11, 2014 5:23 am

Re: [0.15.2] Recipes not set on assembling mach. from blueprints

Postby mophydeen » Thu May 18, 2017 8:28 am

Rseding91 wrote:
ssilk wrote:This is then a bug. Is there not already such a bug posted?


It's not a bug, it's working this way by design.

Setting a recipe in an assembling machine is the same as allowing that recipe to be used. If you could load a blueprint with power armor 2 at the start of a map you could craft everything the game had to offer without ever researching the recipes.

So, this is not going to change. You can't make a ghost with a recipe you haven't unlocked because you haven't unlocked it yet.

Things like requester chests don't matter because they can request all day long but that doesn't make the items magically appear.



I understand why you are doing it this way. But it's not blueprint friendly. A blueprint friendly way would be to allow the recipe to be set by the blueprint but not craftable in game till unlocked.
eg. I have a blueprint with all science (2bottles/color/sec) when I place it down at the start of a new game only the red/green are placed&set. The others are placed&not-set. After unlocking the recipe I have to manually set the assemblers.

possible solution:
- ghost recipes
mophydeen
Filter Inserter
Filter Inserter
 
Posts: 490
Joined: Sun Nov 22, 2015 5:02 pm

Re: [0.15.2] Recipes not set on assembling mach. from blueprints

Postby ssilk » Thu May 18, 2017 11:24 am

mophydeen wrote:- ghost recipes

That is also a suggestion made more than twice in the last weeks: To be able to set a receipe before it enabled.

In my eyes this is still more like a bug, not just an issue, cause it makes blueprints much more useless and is an unawaiteable issue....
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
User avatar
ssilk
Global Moderator
Global Moderator
 
Posts: 10388
Joined: Tue Apr 16, 2013 10:35 pm
Location: Würzburg, Germany

Re: [0.15.2] Recipes not set on assembling mach. from blueprints

Postby Lav » Thu May 18, 2017 11:41 am

As someone who made a similar suggestion, I concur.

Please note that it's not necessary to enable unresearched recipes in assemblers. What is necessary is to enable unresearched recipes in ghost assemblers, highlight them to indicate they're not yet available, and prevent bots from automatically constructing them before the recipe is researched.

Essentially, remove restrictions on anything ghostly.

This ties into the suggestion to automatically transfer ghost settings onto items manually placed over the ghosts. If player is placing an item of the same type over the ghost, ghost settings/recipes should automatically transfer to the placed items if it's possible given player's research state. If it's not possible, then player should lose those settings/recipes, that's fair. Ideally, the game should be able to recognize non-identical items of the same type (placing Assembler II over a ghost Assembler III, or a fast inserter over stack one) - that's extra, but would make using late-game blueprints easier in the early game. Plus there won't be any need to create several blueprints of the same setup in different game stages.
User avatar
Lav
Filter Inserter
Filter Inserter
 
Posts: 338
Joined: Mon Mar 27, 2017 10:12 am
Location: Minsk, Belarus

Re: [0.15.2] Recipes not set on assembling mach. from blueprints

Postby factoriouzr » Thu May 18, 2017 12:05 pm

Rseding91 wrote:
ssilk wrote:This is then a bug. Is there not already such a bug posted?


It's not a bug, it's working this way by design.

Setting a recipe in an assembling machine is the same as allowing that recipe to be used. If you could load a blueprint with power armor 2 at the start of a map you could craft everything the game had to offer without ever researching the recipes.

So, this is not going to change. You can't make a ghost with a recipe you haven't unlocked because you haven't unlocked it yet.

Things like requester chests don't matter because they can request all day long but that doesn't make the items magically appear.



You may have designed it that way at some point, but now it's not working well with other game features (such as blueprints, both before blueprint sharing and especially now with blueprint sharing). It's inconsistent with other entities that do keep their settings and frustrates players.

I think you should take a softer stance on this as it's clearly not a desired way for it to work and, as I said, it's inconsistent with other blueprintable entities.

I don't see why it's such a big deal to add an "enabled" property to all factorioes that is not visible to the user. When you set a recipe on a factory (from ghost, placed by robots or set by the player), you simply check if the recipe is researched already (O(1) operation, constant time, fast, just a hash table lookup). If the reciipe is researched, you set "enabled=true) on that factory and the factory produces the good if all it's other conditions are met (ie. has resources). If the recipe is not yet researched, then you set "enabled=false" (or don't do anything, as the default is already false) and the factory doesn't produce anything. The only other thing to do is when a new research is done, just check all the factories with that recipe already set and set them to "enabled=true". This doesn't have to be done in one tick either, just do a few per tick (what you already do for roboports for eg as you don't check every entity every tick).

This is all fast, constant time operations, and shouldn't be difficult to implement (granted I don't know your code, but I assume you have objects for each assembly machine and other factories, as each can be configured independenty, and contain different resources at any one time, so you just add another property to one class). Right now you must have logic saying that if a recipe is not set, you disable the input fields and don't allow production from that machine. Thus that if statement just has to be changed to "if (enabled == true) { <...produce...>}". This is the same cost as the current check, so there is no performance hit.
factoriouzr
Filter Inserter
Filter Inserter
 
Posts: 462
Joined: Sat Jun 06, 2015 2:23 am

Re: [0.15.2] Recipes not set on assembling mach. from blueprints

Postby mophydeen » Thu May 18, 2017 12:24 pm

and show a recipe research warning on top off the machine to warn the player why the assembler/.. is not working.

eg. missing modules
mophydeen
Filter Inserter
Filter Inserter
 
Posts: 490
Joined: Sun Nov 22, 2015 5:02 pm


Return to Ideas and Suggestions

Who is online

Users browsing this forum: No registered users and 12 guests