this post was submitted on 30 Sep 2023
9 points (100.0% liked)

Factorio

1041 readers
80 users here now

A Lemmy community for the game Factorio made by Wube Software.

Rules

founded 1 year ago
MODERATORS
top 10 comments
sorted by: hot top controversial new old
[–] Karcinogen@discuss.tchncs.de 2 points 1 year ago (1 children)

Use an arithmetic combinator to multiply the contents of the chest by -1 and wire the output to the inserter. When the contents of the chest meet the desired amount, it will cancel out the constant combinator and allow the next filter to be set.

[–] drekly@lemmy.world 1 points 1 year ago* (last edited 1 year ago)

I got excited to go try...I can't read the contents and set requests at the same time :(

Right now I'm reading the rocket it's being fed into, and that gives a countdown of items. but if the box fills with a ton of resources, and it's waiting on four slow items, it just sits there waiting. then if the box fills up while its waiting for those first four, it jams the system.

[–] dohju@lemmy.world 1 points 1 year ago

I did this once with several constant combinators and a timer. You can then switch through the different combinations. It's not awesome or fast though

[–] Deestan@lemmy.world 1 points 1 year ago (1 children)

That's the limit of one inserter, unfortunately. Are you able to use a regular one given that the requester chest already filters?

[–] drekly@lemmy.world 2 points 1 year ago (2 children)

It's for loading a rocket in SE - There's a delay in when the rocket takes off and when it starts filling the storage at the other side, where the signal says it needs all the resources it's just sent out. The bots start arriving with all the items it needs, then the items that were launched land on the other side, get fed into the signal, and now it doesn't need them, so I want a blacklist filter to unload what it doesn't need.

Unfortunately it means right now that I'm unloading EVERYTHING except the first four items in the signal

[–] Deestan@lemmy.world 2 points 1 year ago (1 children)

Oh, I see! In my SE, I use a timer to stop the request for two minutes after launching. I am thinking to replace it with a state machine, like HAVE_REQUESTS (request active), when requests are loaded it goes to LAUNCH_READY (requests inactive), and when receiving pad signals it has cleared the pad and low bot activity it resets to first state.

[–] drekly@lemmy.world 2 points 1 year ago (1 children)

Ooo that sounds good! I'll look into making a timer!

[–] Wiwiweb@sh.itjust.works 2 points 1 year ago (1 children)

I came to this community late, but a timer is basically the common solution. It takes about 23 seconds between a rocket starting to launch and the items appearing in the landing pad.

[–] drekly@lemmy.world 1 points 1 year ago

I've been too busy to work on this yet, so you're not too late for me! That's super useful information thank you!

[–] dohju@lemmy.world 1 points 1 year ago

You could also just fill plain old normal chests with your requests and then just use a -1 to regulate requests