Create module request when placing ghost over existing building

Post your ideas and suggestions how to improve the game.

Moderator: ickputzdirwech

IronCartographer
Filter Inserter
Filter Inserter
Posts: 464
Joined: Tue Jun 28, 2016 2:07 pm
Contact:

Superimposing moduled blueprint onto unmoduled entities

Post by IronCartographer »

TL;DR
Pasting a blueprint of entities with modules should function as expected, even if the entities already exist without modules.

What ?
Currently, module-request proxies for construction are only created along with the ghost image for the production machine. Why not allow their creation on existing entities (and unmoduled ghosts) by pasting a new blueprint with modules included?
Why ?
Consistency. Pasting blueprints applies recipes, circuit settings, etc... Why not module requests too? :)
AngledLuffa
Fast Inserter
Fast Inserter
Posts: 187
Joined: Fri Jan 05, 2018 5:18 pm
Contact:

Re: Superimposing moduled blueprint onto unmoduled entities

Post by AngledLuffa »

Sounds like a good improvement. If you're stuck in the meantime not wanting to update tons of machines, this mod can help:

https://mods.factorio.com/mods/Choumiko/ModuleInserter
taleden
Manual Inserter
Manual Inserter
Posts: 3
Joined: Thu Nov 12, 2020 3:52 pm
Contact:

QoL for ghost mode, copy-paste and blueprint placement

Post by taleden »

TL;DR
Building in ghost-mode and placing blueprints should be able to upgrade or convert similar existing entities to more closely match the ease of use of direct building.
What ?
When ghost-building, cut/copy-pasting or placing a blueprint on top of an existing ghost:
  • Always allow upgrading similar entities (i.e. eastbound yellow belt ghost to eastbound red belt ghost);
  • Hold SHIFT to also convert compatible entities (i.e. overwrite a belt ghost direction, or put a splitter ghost onto an existing belt ghost, just like is allowed when direct building);
  • Hold CTRL+SHIFT to also replace conflicting entities (i.e. delete any other non-upgradable, non-convertible ghosts that are in the way of the new ghosts).
When ghost-building, cut/copy-pasting or placing a blueprint on top of an existing built entity:
  • Leave the default behavior unchanged (allow only when all overlaps are exact matches or entirely new entities);
  • Hold SHIFT to upgrade similar entities (i.e. flag assembler 1s for in-place upgrade to assembler 2s, just like the upgrade planner);
  • Hold CTRL+SHIFT to force-build by converting compatible entities (i.e. flag a belt for deconstruction and put a splitter ghost there) and replacing conflicts (i.e. flag a pair of underground belts for deconstruction and put a machine ghost there, perhaps because the blueprint also upgraded the belts and they reach further underground now).
Specifics on terms used above
Why ?
Direct entity placement is currently very smooth and intuitive: you can build different variations of inserters, belts, pipes, poles, assemblers, etc directly on top of existing ones (i.e. red belt on existing yellow belt, blue inserter on existing yellow inserter, etc), even loosely out-of-type in some cases (i.e. red belt on existing yellow underground, red splitter on existing yellow belt but only in the same orientation).

Ghost-mode and blueprint placement, however, is significantly more clumsy and counter intuitive. You can't ghost-build (or place a blueprint of) a red belt on top of an existing yellow underground, or on top of an existing yellow belt, or even on top of the ghost of a yellow belt; in fact, you can't even ghost-build a yellow belt on top of the *ghost* of a yellow belt in order to change its orientation. This restrictiveness is supremely irritating and a common pain point for many players as they gain mastery of the game and move into using ghosts and blueprints, as evidenced by the many times these same features have been requested in the past going back over three years.

The goal of this thread is to refine the comments from those earlier threads into a comprehensive proposal that would vastly improve quality of life for ghost mode, copy-paste and blueprint usage, without introducing unexpected behavior that might disrupt existing workflows.
Further thoughts below, hidden to avoid scaring folks with too many words
And... that's all I guess. Discuss!
Last edited by taleden on Mon Nov 16, 2020 3:05 pm, edited 2 times in total.
User avatar
NotRexButCaesar
Smart Inserter
Smart Inserter
Posts: 1133
Joined: Sun Feb 16, 2020 12:47 am
Contact:

Re: QoL for ghost mode, copy-paste and blueprint placement

Post by NotRexButCaesar »

Sounds nice, but it probably won't be added: very similar things have been suggested in the past(I'm sure ssilk will add some links in a little while)
—Crevez, chiens, si vous n'étes pas contents!
User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12889
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: QoL for ghost mode, copy-paste and blueprint placement

Post by ssilk »

Pffffffff. 8-) I respect the details and completeness in this suggestion, but as moderator I would like to help.
First I recommend reading the sticky threads; how to write good suggestions. Because this one is too long and too detailed. :) I try to explain, taleden: you are not implementing this. If this would be a chair you want to have built from a carpenter, you describe how to hold him the saw. :) :D
Another thing: you try to solve a very complex subject by mixing three different suggestions. Try to separate the problems into small and simple suggestions.

And AmericanPatriot said it already: lots of other suggestions. :)

viewtopic.php?f=6&t=59554 Hotkey to replace existing structures with blueprint
viewtopic.php?f=6&t=88691 Better Blueprint Placement
viewtopic.php?f=6&t=84697 Better UX for placing, removing, and configuring ghost structures
viewtopic.php?f=6&t=80563 mark-for-upgrading when blueprinting over fast-replaceable entities
viewtopic.php?f=6&t=47993 Allow Fast Replace using blueprints

Similar discussions:
viewtopic.php?f=6&t=83149 [UPD] Rail planner is practically broken around your base

And my current opinion about that is this: all the suggestions show that there is an issue. They describe different solutions. The implementation is not in our hands and in this case I would like wube to choose one or the ones they like to implement.
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
taleden
Manual Inserter
Manual Inserter
Posts: 3
Joined: Thu Nov 12, 2020 3:52 pm
Contact:

Re: QoL for ghost mode, copy-paste and blueprint placement

Post by taleden »

I realize that my attempt at a thorough explanation of the suggestion got a little wordy, but I don't think it's that complicated when you break it down into its component pieces -- all it comes down to is recognizing the four levels of similarity/difference between what the player is trying to place vs what's already there, and offering a few reasonable options (using modifier keys like SHIFT, which are already used this way) for which levels to allow/handle (just like is already done for trees). That's all.

I also disagree that it's mixing different suggestions; the unifying principle is that right now, ghost placement behaves differently than direct building in ways that are awkward and counter intuitive, and there doesn't seem to be any good reason for that other than nobody's ever bothered to go back and make ghost building as slick and easy as direct building now is. But this seems like a good time to bring it up again, since 1.1 seems to be all about QoL improvements, many of which relate to (in my view) much smaller and less noticeable edge cases than ghost/blueprint placement, which is something almost every player deals with quite frequently.

There are even a few aspects of the current behavior that verge on being bugs, or at least very surprising. For example, if you copy a factory and go to paste it over another existing factory, the preview will be blue as if it's an exact match and so pasting will have no effect. And yet if you click to paste anyway, it will cause the existing factory to change its recipe to match what you copied. This can get even more troublesome with things like combinators; if you pull up a big blueprint to check it against what you have built, it may look like a match (all blue) even if some combinator logic differs, and pasting will overwrite all that combinator logic without warning.

I have also read all of the prior threads you linked -- in fact if you notice, I also linked them in my post :D -- and I cite them as evidence that these issues have been bugging a number of folks for quite some time (over three years since the oldest of them). But one thing I noticed in those threads is that they tended to devolve either into folks objecting to the deconstruct behavior as a default (because of course you don't always want that), or else folks getting into complicated changes to blueprints themselves (extra layers, extra settings, etc), or folks just misunderstanding what was being suggested

So my goal with this thread was to sketch out a logically consistent and straightforward way to smooth out all the interactions related to ghost placement without significantly changing default behaviors and without requiring any changes to blueprints themselves. In fact, all of the functionality to implement this scheme already exists: the deconstruction planner can already flag things for removal, and new ghosts can be placed over flagged entities before they're even removed; the upgrade planner can already flag things for replacement, and the new entity will inherit any configuration from the old; the blueprint placement process already scans tile-by-tile for conflicts to tint them red and block the placement; and blueprint placement can already check for SHIFT, turn certain conflicts (i.e. trees) from red to green and flag them for deconstruction before placing. So all that's required is to perform those conflict tests with a little more granularity (four possibilities -- matching, upgradable, convertible, conflicting -- rather than only matching and conflicting) and, if SHIFT and/or CTRL are pressed, invoke the flags for upgrade or deconstruction as needed.
User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12889
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: QoL for ghost mode, copy-paste and blueprint placement

Post by ssilk »

Well, let me say it so: as moderator, which wants to bring up as many suggestions into the game I love, I like the completeness of this suggestion. I don’t like the length, because the devs tend to ignore those wall-of-text-posts. It could be expressed much with less words. That’s my concerns with this suggestion. :)
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
taleden
Manual Inserter
Manual Inserter
Posts: 3
Joined: Thu Nov 12, 2020 3:52 pm
Contact:

Re: QoL for ghost mode, copy-paste and blueprint placement

Post by taleden »

I've edited to more closely conform to your preferred template, and to hide the clarifying discussions from folks who are afraid of words. :) As is hopefully clearer at a glance now, the meat of the proposal is really not long or complicated; all the clarifying definitions and examples were only intended to avoid some of the confusion and misunderstandings that I saw derail earlier threads on this subject.
User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12889
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: QoL for ghost mode, copy-paste and blueprint placement

Post by ssilk »

Looks much better now. :)
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
everlate
Manual Inserter
Manual Inserter
Posts: 3
Joined: Thu Dec 10, 2020 3:44 pm
Contact:

Create module request when placing ghost over existing building

Post by everlate »

When the ghost of a building with some modules is placed over an existing building without modules, the modules are not scheduled for placement. Normal placement of such a ghost is not prohibited. If the ghost is placed on an empty space the modules are scheduled and then inserted into the newly created building.
This behavior is inconsistent and can be considered as a bug because:
1. A user would expect a ghost placed in normal mode to be executed in full.
2. No prohibition warning is issued in normal placement mode
3. Placing the module-containing ghost upon empty space and over existing building behaves differently

Steps to reproduce:
1. Manually place electric furnace
2. Manually fill it with efficiency modules.
3. Cut the furnace with modules.
4. Wait until robots remove furnace with modules
4. Press Q to postpone ghost placement.
5. Manually place another electric furnace.
6. Paste the ghost with modules over the furnace.

What happens:
Nothing

What is expected to happen:
Request for modules on the existing building
Attachments
factorio-current.log
(5.54 KiB) Downloaded 135 times
Rseding91
Factorio Staff
Factorio Staff
Posts: 14250
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [1.1.5] Placing ghost over existing building does not place modules

Post by Rseding91 »

That's currently working as intended. Moving to ideas and suggestions.
If you want to get ahold of me I'm almost always on Discord.
User avatar
invisus
Filter Inserter
Filter Inserter
Posts: 284
Joined: Fri Sep 21, 2018 5:33 pm
Contact:

Re: [1.1.5] Placing ghost over existing building does not place modules

Post by invisus »

I've been using Module Inserter to get modules installed into accepting entities. Once they're there, I believe you can use the upgrade planner to swap between modules if you wish.

However in vanilla, to my knowledge, there are only two ways to get modules into a machine:
  1. Manually insert them
  2. Build a new machine from a blueprint that already contains them
I would love to see the ability to apply modules via blueprints like this, but I think it's been requested several times to no avail.
User avatar
QGamer
Fast Inserter
Fast Inserter
Posts: 214
Joined: Fri Apr 14, 2017 9:27 pm
Contact:

Re: [1.1.5] Placing ghost over existing building does not place modules

Post by QGamer »

This is a convenience I would really appreciate.
"Adam fell that men might be; and men are, that they might have joy."
Squelch
Filter Inserter
Filter Inserter
Posts: 346
Joined: Sat Apr 23, 2016 5:31 pm
Contact:

Re: [1.1.5] Placing ghost over existing building does not place modules

Post by Squelch »

There is already a method in the game, but it's kind of hidden -

Create a temporary blueprint instead of copy paste. This allows all attributes, including modules, to be copied to the existing building.
  1. Start a new BP
  2. Hold Shift while selecting the source building
  3. Place the ghost BP over the target building
  4. Dismiss the BP with the picker (Q)
By holding the shift key while selecting objects for a blueprint, a temporary BP is created at the cursor. This is not saved, does not get added to the clipboard history, and cannot be edited, but does allow absolute copies of buildings to be copied and pasted.

I use this extensively to avoid filling the clipboard history with pastes that are only needed rarely, change filters and recipes from the map, and of course, to make genuine copies of buildings and their attributes.
Last edited by Squelch on Tue Dec 15, 2020 1:28 am, edited 1 time in total.
User avatar
invisus
Filter Inserter
Filter Inserter
Posts: 284
Joined: Fri Sep 21, 2018 5:33 pm
Contact:

Re: [1.1.5] Placing ghost over existing building does not place modules

Post by invisus »

Squelch wrote: Sat Dec 12, 2020 1:02 am There is already a method in the game, but it's kind of hidden -

Create a temporary blueprint instead of copy paste. This allows all attributes, including modules, to be copied to the existing building.
  1. Start a new BP
  2. Hold Shift while selecting the source building
  3. Place the ghost BP over the target building
  4. Dismiss the BP with the picker (Q)
By holding the shift key while selecting objects for a blueprint, a temporary BP is created at the cursor. This is not saved, does not get added to the clipboard history, and cannot be edited, but does allow absolute copies of buildings to be copied and pasted.

I use this extensively to avoid filling the clipboard history with pastes that are only needed rarely, change filters and recipes from the map, and of course, to make genuine copies of buildings and their attributes.
The sad part is, I think I once knew this little gem and have completely forgotten. Thanks for this one!
blazespinnaker
Filter Inserter
Filter Inserter
Posts: 665
Joined: Wed Sep 16, 2020 12:45 pm
Contact:

Re: [1.1.5] Placing ghost over existing building does not place modules

Post by blazespinnaker »

Squelch wrote: Sat Dec 12, 2020 1:02 am There is already a method in the game, but it's kind of hidden -

Create a temporary blueprint instead of copy paste. This allows all attributes, including modules, to be copied to the existing building.
  1. Start a new BP
  2. Hold Shift while selecting the source building
  3. Place the ghost BP over the target building
  4. Dismiss the BP with the picker (Q)
By holding the shift key while selecting objects for a blueprint, a temporary BP is created at the cursor. This is not saved, does not get added to the clipboard history, and cannot be edited, but does allow absolute copies of buildings to be copied and pasted.

I use this extensively to avoid filling the clipboard history with pastes that are only needed rarely, change filters and recipes from the map, and of course, to make genuine copies of buildings and their attributes.

Hmmm, might be missing something. Apologies if I am, but I couldn't get this to work. Isn't the OP bug that this doesn't work?
OptimaUPS Mod, pm for info.
User avatar
invisus
Filter Inserter
Filter Inserter
Posts: 284
Joined: Fri Sep 21, 2018 5:33 pm
Contact:

Re: Create module request when placing ghost over existing building

Post by invisus »

Yeah, just tested it, and I wasn't able to get it to add new module requests. I had to first remove the existing buildings before planting the module loaded version via blueprint. :(
Squelch
Filter Inserter
Filter Inserter
Posts: 346
Joined: Sat Apr 23, 2016 5:31 pm
Contact:

Re: Create module request when placing ghost over existing building

Post by Squelch »

Hmm yes it doesn't work for modules. Everything else such a recipe and filter changes works, but modules can only be added to a new/empty building. It seems odd that modules are treated differently.

I just confirmed 0.17.x too, so it must have been this way for some time - perhaps always

Apologies for the false trail.

I have to add my +1 to this suggestion now.
User avatar
MEOWMI
Filter Inserter
Filter Inserter
Posts: 334
Joined: Wed May 22, 2019 12:21 pm
Contact:

Re: Create module request when placing ghost over existing building

Post by MEOWMI »

I'll +1 this because adding or changing modules at all with bots is a major pain to do remotely.

It's actually similar if you want to update entity settings remotely... most commonly for me, changing circuit conditions or splitters. Very cumbersome to do remotely.
Squelch
Filter Inserter
Filter Inserter
Posts: 346
Joined: Sat Apr 23, 2016 5:31 pm
Contact:

Re: Create module request when placing ghost over existing building

Post by Squelch »

MEOWMI wrote: Sat Dec 12, 2020 5:50 pm It's actually similar if you want to update entity settings remotely... most commonly for me, changing circuit conditions or splitters. Very cumbersome to do remotely.
That does work with the temporary blueprint method above. It is just modules that are the exception.
Post Reply

Return to “Ideas and Suggestions”