Deleting objects while cursor full

Bugs that we were not able to reproduce, and/or are waiting for more detailed info.
Post Reply
Azethoth
Burner Inserter
Burner Inserter
Posts: 16
Joined: Thu Nov 19, 2020 10:42 pm
Contact:

Deleting objects while cursor full

Post by Azethoth »

Pipette something onto the cursor. Hover over existing item. Right click deletes, you can now place the item. Sometimes you can just click and it will replace it.

Now copy the identical item onto the cursor. You can no longer click to replace. You can no longer right click to delete then left click to replace. You have to clear the cursor and deal with the problem items. Same thing for blueprint on the cursor.

Expected: identical behavior to the pipette case.
Bonus: for multiple item blueprints or copies: Do not make me individually delete stuff, let me have a a force delete and replace modifier key. Or have a timer based forcing the way deleting railway sections works.

This is the sole frustration I have with the interface. Well, other than the signal wire mess.

Loewchen
Global Moderator
Global Moderator
Posts: 8318
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: Deleting objects while cursor full

Post by Loewchen »

I do not understand what you mean. What do you mean with: Now copy the identical item onto the cursor. Identical to what? How do you "copy" onto a cursor?
Make an example that uses actual items and entities and describe exactly what you do please.

Rseding91
Factorio Staff
Factorio Staff
Posts: 13209
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: Deleting objects while cursor full

Post by Rseding91 »

I'm also super confused. I suspect you're picking up 2 different items (one of which doesn't let you interact with entities when held?) or you're holding the ghost cursor maybe?
If you want to get ahold of me I'm almost always on Discord.

mmmPI
Smart Inserter
Smart Inserter
Posts: 2741
Joined: Mon Jun 20, 2016 6:10 pm
Contact:

Re: Deleting objects while cursor full

Post by mmmPI »

Rseding91 wrote:
Sat Dec 05, 2020 6:48 pm
you're holding the ghost cursor maybe?
That's what i understood. If you have an entity selected from the pipette, say assembly tier 3 you can fast replace a tier 1. (left click)
Otherwise you need to right click to delete say a chemplant, before you place the assembly tier 3. Which you can do while still holding the assembly 3. ( righ click then left click)

But when you have a ghost, or a blueprint in hand. You can't fast replace or right click to delete the blocking item while holding the ghost. You need to clear cursor first, then remove the assembly tier 1, then reselect the tier 3 with pipette or from inventory and then only place it.

There is the shift key, that allow to force position blueprint on top of trees, but it doesn't apply if you want to force an assembly 3 on an assembly 1 for example. Or a stack inserter instead of a regular inserter. For those the upgrade planner can do but not all entity.

Azethoth
Burner Inserter
Burner Inserter
Posts: 16
Joined: Thu Nov 19, 2020 10:42 pm
Contact:

Re: Deleting objects while cursor full

Post by Azethoth »

OK let's use real entity names and "ghost cursor". Yes, my bad, I meant the ghost cursor mostly, but the behavior is the same for picking up a stack of items from inventory.

Drop two underground pipes. One facing up and one facing down some distance apart.
Use the pipette. There is now an underground pipe ghost cursor. Or pick up a stack of underground pipes from inventory. Which makes a "real cursor" / ghost cursor?

As long as the cursor orientation, of the pipe, is up or down, I can click on either the up or down pipe. If the new direction is reversed, it changes what I clicked on. This is desirable behavior. If i do a single rotation off axis I can no longer fast replace or ghost replace or whatever. This is undesirable behavior. (Unless I am drag replacing, in which case it would be good not interrupt existing pipelines.)

Now ctrl-c or cmd-c copy one of those pipes. No amount of clicking or changing its orientation allows you to affect the existing pipes on the ground. Same for a blueprint of a single underground pipe. This is undesirable behavior. At the very least shift should let me force a replace, or I should just straight up be able to replace.

As a side note, for directional items like the underground pipes it is in fact worse than normal, because if you are rotated off the axis the object is in there is also no way to replace it. There could be, it could be simple direction change right?

Now try the same thing for a blue belt. Much improved, you can always change the direction to whatever is on the cursor. But again, the very femtosecond you ctrl-copy a blue belt off the ground you can no longer place it on an existing blue belt to change its orientation.
But when you have a ghost, or a blueprint in hand. You can't fast replace or right click to delete the blocking item while holding the ghost. You need to clear cursor first, then remove the assembly tier 1, then reselect the tier 3 with pipette or from inventory and then only place it.

There is the shift key, that allow to force position blueprint on top of trees, but it doesn't apply if you want to force an assembly 3 on an assembly 1 for example. Or a stack inserter instead of a regular inserter. For those the upgrade planner can do but not all entity.
Exactly. This sucks. When I have robots to do the work or are in range, why can I not just place the copied or blueprinted items? Why do I have to laboriously clear the cursor, delete stuff, then go hunt for that blueprint once more which does not sticky onto the copy stack? The exact same code that detects a conflict can instead generate a list of items that auto delete before the actual paste happens. Why can the entities not be deleted while holding the shift key exactly as with trees? Even inventory full issues could either happen as with the trees, dropping on ground, or error out with an inventory full message.

Note that for large pastes, it is not trivial or straightforward to delete the offending items.

The only issue is with entities left over that adversely interact with the blueprint or copied items. But that happens now anyway for non conflicting pipes, belts inserters left in unfortunate spots.

Azethoth
Burner Inserter
Burner Inserter
Posts: 16
Joined: Thu Nov 19, 2020 10:42 pm
Contact:

Re: Deleting objects while cursor full

Post by Azethoth »

Loewchen wrote:
Sat Dec 05, 2020 6:19 pm
I do not understand what you mean. What do you mean with: Now copy the identical item onto the cursor. Identical to what? How do you "copy" onto a cursor?
Make an example that uses actual items and entities and describe exactly what you do please.
The game lets you press your OS copy keyes (ctrl-c or cmd-c) then drag select item(s) and then copy your selection. Visual feedback for this state is the copied items being on the cursor and following it around. This is very handy, you should try it.

As for identical item: well in step one you pipetted something. Now ... copy ... that item. if you are trying it with a red splitter, then copy a red splitter. Or blue belt, etc.
Last edited by Azethoth on Sat Dec 05, 2020 10:05 pm, edited 2 times in total.

Loewchen
Global Moderator
Global Moderator
Posts: 8318
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: Deleting objects while cursor full

Post by Loewchen »

Azethoth wrote:
Sat Dec 05, 2020 9:02 pm
The game lets you press your OS copy keyes (ctrl-c or cmd-c) then drag select item(s) and then copy your selection. Visual feedback for this state is the copied items being on the cursor and following it around. This is very handy, you should try it.
This does not "copy an item on the cursor" it creates a hidden blueprint, and you can only select entities with it and not "item(s)".

mmmPI
Smart Inserter
Smart Inserter
Posts: 2741
Joined: Mon Jun 20, 2016 6:10 pm
Contact:

Re: Deleting objects while cursor full

Post by mmmPI »

Azethoth wrote:
Sat Dec 05, 2020 8:28 pm
Drop two underground pipes. One facing up and one facing down some distance apart.
Use the pipette. There is now an underground pipe ghost cursor. Or pick up a stack of underground pipes from inventory. Which makes a "real cursor" / ghost cursor?

As long as the cursor orientation, of the pipe, is up or down, I can click on either the up or down pipe. If the new direction is reversed, it changes what I clicked on. This is desirable behavior. If i do a single rotation off axis I can no longer fast replace or ghost replace or whatever. This is undesirable behavior. (Unless I am drag replacing, in which case it would be good not interrupt existing pipelines.)
The pipette has 2 different mode, maybe this has caused confusion. Depending on your option when you try to pipette something you don't have in inventory, it will either make the "niiiint" sound for "no", or it will give you a ghost item.

you can find that in "setting" "interface" "interaction".

When you have a real item instead of the ghost though i am unable to reproduce . ( i can fast replace undergound pipe if it's a 180° rotation, i cannot fast replace perpendicular underground pipes, nor can i fast replace a chemplant and an assembly which is the normal behavior).

I do not believe the bald sentence to be exact, i think those are 2 different things. Personnaly the pipette i have set up so that it never show a ghost, rather the game makes a noise to tell me i don't have the item in inventory.

Then if i want to use a ghost i use CTRL C CTRL V, and in this case i experience what you describe, the impossibility to fast replace. ( not even 180° underground pipe, pressing the shift key here will just ignore what's blocking underneath and paste what it can so if you have only 1 item it produces no result at all.)

However for underground pipes as it's your example, it is never possible to fast replace when the orientation are perpendicular. Only reverse 180°.

The fast replace is only and always allowed when i used pipette because the pipette never give me ghost only real item.

Using the other option where the pipette would give you a ghost sometimes, you will not be able to delete an item using right click while holding a ghost. Same as if you used ctrl C ctrl V , but you would if the pipette had given you an item that is present in your inventory.
Azethoth wrote:
Sat Dec 05, 2020 8:28 pm
Exactly. This sucks. When I have robots to do the work or are in range, why can I not just place the copied or blueprinted items? Why do I have to laboriously clear the cursor, delete stuff, then go hunt for that blueprint once more which does not sticky onto the copy stack? The exact same code that detects a conflict can instead generate a list of items that auto delete before the actual paste happens. Why can the entities not be deleted while holding the shift key exactly as with trees? Even inventory full issues could either happen as with the trees, dropping on ground, or error out with an inventory full message.

Note that for large pastes, it is not trivial or straightforward to delete the offending items.

The only issue is with entities left over that adversely interact with the blueprint or copied items. But that happens now anyway for non conflicting pipes, belts inserters left in unfortunate spots.
I think that explains why the game works this way. If you try to place a blueprint onto something, it won't let you. If you want to place what you can on top of the existing and don't deal with the conflict, you press shift, but the left over entity and missing part may cause problem. That's a "force" key.

However imagine you want to place a circular blueprint let say a wall around something. You don't want to destroy the thing, you just want to put the wall around it. If some part are colliding the game can't know which one to delete and which one to keep. What you'd want is that the game somehow ask you for every conflicting entity, do you want to keep existing or copy on top .

Or you would want an alternative shift key, let say the ALT key, when you press it, it force copy while deleting what's under the new. This doesn't exist in game. In the use case of a single item, that would mean you could ALT key a pipe, over a belt, or an assembly above a chemplant.

That's a bit like merging 2 folders. The OS will ask you what to do with the duplicate. either you leave them in place, ( the shift key ). or replace the duplicate by the newer, (Alt key).

Unless i'm misunderstanding, you are not talking about something that recently changed due to the change of the ghost building and is now broken.
You are asking why is it impossible to delete something with right click while holding a ghost or a blueprint, or a copied item, but it is possible with a real objet. right ?

that question i asked myself before turning the off the settings that makes the pipette give me ghost when i don't have the item. :)

On a side note, you also suggest a way to do a "copy and erase what was there", (like the alt key i proposed) as the "bonus". Which would be more precise than a "ctrl X", or "Alt D" Something that would only erase the part that are conflicting with the new copy, like trees with the shift key. ( but unlike player placed entity with the shift key).

Azethoth
Burner Inserter
Burner Inserter
Posts: 16
Joined: Thu Nov 19, 2020 10:42 pm
Contact:

Re: Deleting objects while cursor full

Post by Azethoth »

Loewchen wrote:
Sat Dec 05, 2020 9:14 pm
Azethoth wrote:
Sat Dec 05, 2020 9:02 pm
The game lets you press your OS copy keyes (ctrl-c or cmd-c) then drag select item(s) and then copy your selection. Visual feedback for this state is the copied items being on the cursor and following it around. This is very handy, you should try it.
This does not "copy an item on the cursor" it creates a hidden blueprint, and you can only select entities with it and not "item(s)".
Ok entities then. Is there a stickied glossary of terms somewhere so we can report things with better precision and using the correct jargon?

As a programmer I am willing to do that.

User avatar
invisus
Filter Inserter
Filter Inserter
Posts: 284
Joined: Fri Sep 21, 2018 5:33 pm
Contact:

Re: Deleting objects while cursor full

Post by invisus »

Azethoth wrote:
Sat Dec 05, 2020 10:08 pm
Ok entities then. Is there a stickied glossary of terms somewhere so we can report things with better precision and using the correct jargon?

As a programmer I am willing to do that.
Well, there is https://wiki.factorio.com/Glossary but I'm not sure that is exactly what you're looking for.

Azethoth
Burner Inserter
Burner Inserter
Posts: 16
Joined: Thu Nov 19, 2020 10:42 pm
Contact:

Re: Deleting objects while cursor full

Post by Azethoth »

mmmPI wrote:
Sat Dec 05, 2020 10:01 pm
The pipette has 2 different mode, maybe this has caused confusion. Depending on your option when you try to pipette something you don't have in inventory, it will either make the "niiiint" sound for "no", or it will give you a ghost item.
Per Loewchen above there are two cases: a real in inventory item on the cursor or a ghost item / hidden blueprint.
I play without the ghost replacement setting because I did not like how it worked. the beep + copy paste sucks but sucks less.
mmmPI wrote:
Sat Dec 05, 2020 10:01 pm
When you have a real item instead of the ghost though i am unable to reproduce . ( i can fast replace undergound pipe if it's a 180° rotation, i cannot fast replace perpendicular underground pipes, nor can i fast replace a chemplant and an assembly which is the normal behavior).
A blue belt lets you replace in any rotation. A copied blue belt, aka ghost or invisible blueprint blue belt, will not replace in any orientation.
Perhaps I am asking for more broadspread "fast replace".
mmmPI wrote:
Sat Dec 05, 2020 10:01 pm
However for underground pipes as it's your example, it is never possible to fast replace when the orientation are perpendicular. Only reverse 180°.
It should be.
mmmPI wrote:
Sat Dec 05, 2020 10:01 pm
The fast replace is only and always allowed when i used pipette because the pipette never give me ghost only real item.
Why? Why not just always replace. Either with a real or ghost item. That would be a better interface right? Even if it requires the shift key or alt / option key it would be better. This thread is about improving the interface. Not verifying that it works the way it works.
mmmPI wrote:
Sat Dec 05, 2020 10:01 pm
Using the other option where the pipette would give you a ghost sometimes, you will not be able to delete an item using right click while holding a ghost. Same as if you used ctrl C ctrl V , but you would if the pipette had given you an item that is present in your inventory.
Why? This is not good UI. We already know the code exists for the pipette case with in inventory items. By simply removing the code that prevents this useful action the UI will be improved. Consistency is a good thing in a UI.
mmmPI wrote:
Sat Dec 05, 2020 10:01 pm
I think that explains why the game works this way. If you try to place a blueprint onto something, it won't let you. If you want to place what you can on top of the existing and don't deal with the conflict, you press shift, but the left over entity and missing part may cause problem. That's a "force" key.

However imagine you want to place a circular blueprint let say a wall around something. You don't want to destroy the thing, you just want to put the wall around it. If some part are colliding the game can't know which one to delete and which one to keep. What you'd want is that the game somehow ask you for every conflicting entity, do you want to keep existing or copy on top .

Or you would want an alternative shift key, let say the ALT key, when you press it, it force copy while deleting what's under the new. This doesn't exist in game. In the use case of a single item, that would mean you could ALT key a pipe, over a belt, or an assembly above a chemplant.

That's a bit like merging 2 folders. The OS will ask you what to do with the duplicate. either you leave them in place, ( the shift key ). or replace the duplicate by the newer, (Alt key).

Unless i'm misunderstanding, you are not talking about something that recently changed due to the change of the ghost building and is now broken.
You are asking why is it impossible to delete something with right click while holding a ghost or a blueprint, or a copied item, but it is possible with a real objet. right ?

On a side note, you also suggest a way to do a "copy and erase what was there", (like the alt key i proposed) as the "bonus". Which would be more precise than a "ctrl X", or "Alt D" Something that would only erase the part that are conflicting with the new copy, like trees with the shift key. ( but unlike player placed entity with the shift key).
Well no, the requests do not exist in the game. They only sometimes under special circumstances exist in the game. But they should. It would make the game better and the experience consistent. I may have made a mistake in not labeling this "feature request" or something.

There is no reason to worry about merging folders and files as an analogy. That is an implementation detail. Nobody would want to have that surfaced in the UI, it would be bad UI. At any rate, the code exists to detect conflicts. The conflict entities simply need to be added to a delete list.

Yes, I exactly want copied entities or blueprints or whatever to erase and replace existing entities just like they can replace existing trees. I think using the shift key to force this is good. It is already a perfectly fine and working use case for trees. That would still let you try out the fit of a blueprint vs existing entities / trees / rocks / etc. when not using shift and getting UI confirmation that something is in the way and in fact red stuff all over the problem area(s). Just like with trees you can press undo if you did not like the results and are fast enough or far enough away.

While someone is in that code they can even clean up the part where you delete some area, paste an almost identical pattern of entities on top does not cancel the entities that remain the same in the exact same locations. Like moving a row of 6 chests with 9600 items each by one chest should involve deleting 1 chest and emptying 9,600 items. Not deleting 6 chests and emptying 57,600 items. So if this feature is implemented, unchanged entities should not get deleted and then replaced with their identical selves. However if their mods or wiring or logistics settings etc changed it should be as if they got erased and replaced. A chest should keep its contents. Although that would require some logic when the contents differ perhaps. Certainly a steel chest that exists before and after need not change.

Azethoth
Burner Inserter
Burner Inserter
Posts: 16
Joined: Thu Nov 19, 2020 10:42 pm
Contact:

Re: Deleting objects while cursor full

Post by Azethoth »

OK, my apologies. I posted this before coffee this morning and chose bugs (I think). Which explains our mutual bafflement and utter confusion.

Unlike under bugs, I was able to find a close duplicate in the feature request section:
viewtopic.php?f=6&t=92300

I will extract the useful stuff and repost under that enhanced forced blueprint feature request.

Post Reply

Return to “Pending”