Page 1 of 2

New abilities for smart inserters (and a locomotive change)

Posted: Tue Dec 02, 2014 7:14 pm
by Tinyboss
I would like to allow smart inserters to insert or remove anything from any container. For instance, a smart inserter programmed to move alien artifacts could take them from a purple science assembler, and a smart inserter programmed to move copper plates could stick them back into a furnace (assuming that furnace was working on copper).

Why? Two reasons:

1. The player can do these things, and it's in the spirit of Factorio that anything I can do myself, I should be able to automate.

2. There's a thread in the Balance forum about inserters removing fuel from locomotives. Some people like this behavior (using it to supply coal to outposts for example), but others find it annoying and counterintuitive. My proposed solution is to make burnable items count as "input materials" for locomotive engines, so that regular inserters won't touch them. But anyone who likes taking coal out of locomotive engines can still do so, with the new improved smart inserters.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Tue Dec 02, 2014 8:57 pm
by User_Name
That will significantly change the game. For example, smelting line would not need a belt anymore, it can be daisy-chained line of smart inserters utilizing stack bonus to output shitload of copper it produces into one box.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Tue Dec 02, 2014 9:06 pm
by n9103
Posting to support this change.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Tue Dec 02, 2014 9:43 pm
by katyal
I think this needs to be considered carefully before changing anything... inserters are fundamental to the game and any change to them could lead many unintended consequences.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 12:09 am
by Rahjital
I'd support this suggestion on one condition: smart inserter gui gets a checkbox where you can specify whether you want them to behave like a normal inserter or take everything. Car fuel stations currently depend on smart inserters not touching the fuel slots and would be broken, as could some mods with more complex recipes be; we would merely be exchanging one fringe problem for another.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 4:35 am
by LordFedora
Well the standard operation smart inserters (when you want to control just their movements by a logic/logistics condition) can be done easy by not setting a filter

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 6:56 am
by ssilk
"Anything from any container." You mean the stacks, in the device, right? https://forums.factorio.com/wiki/inde ... rage/Stack

Well, this is a quite game changing suggestion, so I've two questions:

- From which one? How do you select the stack? There are several stacks in a device. See https://forums.factorio.com/wiki/inde ... rage/Stack
I think you want to use the item filters for that.You need to know, that the assembly is quite moddable, and with v0.11 it is also the same code as for the furnace; how would you distinct between filling fuel-stack (which might contain coal) and filling a stack of coal? How should that work, if an assembly has the same item for input and output? That are allowed things.

- Why? What is the worth for the game? How does this improve the game-play? Or what does this fix, which isn't working well yet?

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 9:32 am
by MF-
Smart inserters are already loaded with independent functionality
a) they can choose which items they pick
b) they can be enabled/disabled by a CCnet condition
c) they are a bit faster

those functionalities are independent enough
(a person seeking only "a"/"b"/"c" won't be impaired by the other features)
and could be considered "smart"


What you propose is a feature of a super-dumb inserter that can't tell slots apart.
Why should being super-dumb be limited to smart inserters?

Perhaps a better implementation of the requested feature would be one of ThermalExpansion (minecraft mod),
where each slot could be assigned to machine's side
-> perhaps in factorio each slot could be configured to be NONE, IN, OUT, BIDIR?
More of an idea for a mod though.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 11:24 am
by Tinyboss
ssilk wrote:"Anything from any container." You mean the stacks, in the device, right? https://forums.factorio.com/wiki/inde ... rage/Stack
Yes, that's right.
ssilk wrote:Well, this is a quite game changing suggestion, so I've two questions:

- From which one? How do you select the stack? There are several stacks in a device. See https://forums.factorio.com/wiki/inde ... rage/Stack
I think you want to use the item filters for that.You need to know, that the assembly is quite moddable, and with v0.11 it is also the same code as for the furnace; how would you distinct between filling fuel-stack (which might contain coal) and filling a stack of coal? How should that work, if an assembly has the same item for input and output? That are allowed things.
I'd say that in the case where the same item (which appears in the smart inserter's filter) functions as input and output, the inserter should prefer to fill input stacks if facing the building, and prefer to remove from output stack(s?) if facing away.
ssilk wrote:- Why? What is the worth for the game? How does this improve the game-play? Or what does this fix, which isn't working well yet?
The idea for this suggestion came from the discussion about inserters taking fuel from locomotives, described in my first post in this thread.

---------------------------------------------------------------
User_Name wrote:That will significantly change the game. For example, smelting line would not need a belt anymore, it can be daisy-chained line of smart inserters utilizing stack bonus to output shitload of copper it produces into one box.
Interesting...I wonder how much of a stack size bonus is required to make this worthwhile? If it only works well with the endgame bonuses, then maybe it's a good thing that new paradigms appear later in the tech progression. If it works better right away, I agree that's a big problem.


---------------------------------------------------------------
MF- wrote:What you propose is a feature of a super-dumb inserter that can't tell slots apart.
Why should being super-dumb be limited to smart inserters?
Rather than "super-dumb", I think of it as "smart enough" to be trusted to remove from input slots or fill output slots, if the player has said that it should. I don't think the proposed change will interfere with any current uses of the smart inserter. If I'm wrong about that, I definitely would like to see examples. Then the suggestion would have to be modified (or abandoned).


Thanks for the discussion!

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 12:07 pm
by ssilk
Tinyboss wrote:
ssilk wrote:- Why? What is the worth for the game? How does this improve the game-play? Or what does this fix, which isn't working well yet?
The idea for this suggestion came from the discussion about inserters taking fuel from locomotives, described in my first post in this thread.
So this solves more than needed...

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 12:44 pm
by Tinyboss
ssilk wrote:So this solves more than needed...
Well, if the locomotive fuel issue is the last thing keeping Factorio from perfection, then yes. ;-)

I think "what the player can do, the player can automate" is central to the spirit of Factorio, and this lets smart inserters do some things that currently only the player can. Although the idea for this suggestion came from the locomotive fuel problem, I think it's also a worthwhile suggestion on its own.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 1:35 pm
by MF-
Tinyboss wrote:
MF- wrote:What you propose is a feature of a super-dumb inserter that can't tell slots apart.
Why should being super-dumb be limited to smart inserters?
Rather than "super-dumb", I think of it as "smart enough" to be trusted to remove from input slots or fill output slots, if the player has said that it should. I don't think the proposed change will interfere with any current uses of the smart inserter. If I'm wrong about that, I definitely would like to see examples. Then the suggestion would have to be modified (or abandoned).
Why can't I trust other inserters to remove from input slots or fill output slots?
Using a different kind of inserter only changes the speed of the imminent screwup.

I remember using smart inserters at many places to limit my production (scenario "b"), no filters. Probably not relevant

PS: Output slots of minecraft machinery are by-default output-only and cannot be inserted into (even by hand)
Would preventing the player from inserting into output slots fix your issue as well? Just asking...

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 1:40 pm
by MF-
PS: Some downsides of daisy chaining. Didn't give them much thought.
1 What about input slot limits? Usually the input slot on furnaces is limited to 5 items or so.
-- If you research the insterter-stack-bonus-5 (if that exists), it'll prevent the furnaces from functioning properly
2 When your line backs up, the furnaces will take way more time to ramp-up production again when needed,
-- since their output slots will be immediately re-clogged by product from the furnace above.
3 How do you load the first furnace / unload the last furnace quickly enough?
-- You wouldn't be able to use a belt there, due to inserter-stack-bonus not being applied.
-- EDIT: Ok, chests+logistic network would probably do. I'd consider such factory visually-unpleasing, though.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 1:56 pm
by Boogieman14
MF- wrote:1 What about input slot limits? Usually the input slot on furnaces is limited to 5 items or so.
I don't believe this is correct. Inserters normally will stop input once there's 5 items there, but I'm fairly certain the input is limited to a full stack of ore (pretty much just like any other machine will hold a full stack, even if the recipe only takes 1) - As of 0.11 at least, this might be a result of the merging of furnaces and assemblers.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 2:12 pm
by The Lone Wolfling
I support this change for locomotives, for the record. Not sure about the other components.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 3:24 pm
by ssilk
Tinyboss wrote:
ssilk wrote:So this solves more than needed...
Well, if the locomotive fuel issue is the last thing keeping Factorio from perfection, then yes. ;-)

I think "what the player can do, the player can automate" is central to the spirit of Factorio, and this lets smart inserters do some things that currently only the player can. Although the idea for this suggestion came from the locomotive fuel problem, I think it's also a worthwhile suggestion on its own.
It fixes a problem, that we don't have and it changes the behaviour of smart inserters in a way, which is quite difficult to understand.
I think the change for the loco is ok, this is already written down in the balance-board.

What you say about direct access to the stacks is perhaps a good idea... but I won't use then inserters for that, cause they are too limited. I think more to bots, which can directly access the stacks of devices. Advanced logistic bots, something into that direction. But cause I don't see any real need into that direction yet, I think it is eventually too early to think about that. On the other hand: This runs also into an "unwanted direction" of micromanagment. I don't want to think about the stacks inside a device. I don't want to build a layout, which hides it's secrets (cause will have problems to see, what inserters or bots move). And it compresses the layout, which is per se not bad, but normally we don't have a space-problem in factorio.



What I really want is easier building of combinations of chests, inserters and assembly and so on. Some kind of intelligent blueprint and build-assistent. But also that is far, far away. :)

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 3:55 pm
by Tinyboss
The Lone Wolfling wrote:I support this change for locomotives, for the record. Not sure about the other components.
Yes, we could make vehicle fuel stacks special with respect to smart inserters. I didn't suggest it that way, because it seemed like a special rule that's not really consistent with the rest of the game. But it is a possibility, and it does have the advantage of not changing the rest of the game at all, and preserving access to the current behavior for those who like it.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 4:15 pm
by Rahjital
@ssilk: I don't think this is a 'fix' for anything, but rather a feature for veteran players, kinda like red and green wires are - not needed if you don't want to use them or don't know how to, but still very useful if used right (much like in the idea User_Name pitched on the first page). It would also break some useful things, so I think there should be a way to enable or disable it manually.

Also, the idea of advanced logistic robots is an interesting one, but this sounds more like a inserter thing really. Robots don't have a real need for taking stuff out of inventories because they can already fly over any obstacles.
The Lone Wolfling wrote:I support this change for locomotives, for the record. Not sure about the other components.
Making it train engines even more inconsistent than they are does not sound like a good idea to me. The second point of the suggestion was supposed to fix exactly this kind of inconsistency.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 6:24 pm
by katyal
I've been thinking about this a lot and I'd like to chime in with my opinion and the reasoning behind it.

The problem as stated is that fuel is being removed from locomotives even when the player doesn't want it to be. While changing the behaviour of inserters or a subset of inserters is one possible way to fix this, it would impact many other areas of the game.

I prefer to look for the simplest change that will cause the least impact on the rest of the game and solve the problem at hand. I believe that the simplest solution is to set things so that fuel can no longer be removed from locomotives.

What is the impact of this change? We can no longer use locomotives as fuel "wagons" to refuel outposts. This behaviour is consistent with the behaviour of other vehicles in the game and more consistent with a locomotive's primary purpose, to move trains.

How difficult is it to setup a workaround to the lost functionality? While I admit that in specific cases space may be a factor, I don't believe there is a significant difference between routing fuel to and from the locomotive or routing it to and from a wagon.

Conclusion:

The best solution to the locomotive/fuel problem is to prevent inserters from taking fuel out from locomotives.

Addendum
Adding functionality to smart inserters in such a way as we could choose whether or not to use it would be fantastic, I love new possibilities. I just don't agree with replacing existing functionality to fix something like the loco/fuel problem.

Re: New abilities for smart inserters (and a locomotive chan

Posted: Wed Dec 03, 2014 7:27 pm
by Tinyboss
katyal wrote:I believe that the simplest solution is to set things so that fuel can no longer be removed from locomotives.
First off, thanks katyal, and everyone else for the great discussion!

That said, I prefer "leave it as-is" to this proposed solution. I think n9103's refueling solution using the current behavior is particularly elegant. My feeling is that the current behavior can be confusing for new players, but that once the player understands what's happening, it's very easy to prevent. It would be a shame if the solution ended up killing off sweet designs like n9103's.
katyal wrote:How difficult is it to setup a workaround to the lost functionality? While I admit that in specific cases space may be a factor, I don't believe there is a significant difference between routing fuel to and from the locomotive or routing it to and from a wagon.
I don't think it's a matter of difficult routing, but convenience and elegance. Every locomotive needs fuel, and every locomotive carries fuel. It's great to be able to siphon off a little from each one to resupply any who need it. If we kill off this behavior, then we have to put a fuel slot in a cargo wagon of each train, and we have to put it in the same wagon on each train, or else build fully smart stations everywhere.