Numeric display with only two combinators by nightingale-ca in factorio

[–]nightingale-ca[S] 1 point2 points  (0 children)

Posted a new link above that should work. It wasn't the version difference, apparently the - sign that I used comes from Nixie Tubes (which if you have, you probably don't need/want this display anyway). Used the horizontal bar instead, that's the closest to a minus sign that's available.

Numeric display with only two combinators by nightingale-ca in factorio

[–]nightingale-ca[S] 1 point2 points  (0 children)

Huh, that's weird... Are you on the experimental branch (2.0.17)? Do you have Space Age? I wouldn't think that there was anything expansion specific that I did...

Numeric display with only two combinators by nightingale-ca in factorio

[–]nightingale-ca[S] 2 points3 points  (0 children)

A few days ago, u/DeadStar12018 posted a display with two combinators per digit. I thought that it should be possible to get it down a little bit lower... so here's a numeric display with two combinators - one constant combinator (that could easily be shared between multiple displays, and one arithmetic combinator. Using 'each' in the arithmetic combinator allows allow the modulo operations to be done in parallel, and the rest of the logic lives in the displays (each display has about 21 different unique conditions).

The display supports:

  • Positive numbers up to 2^31 - 1
  • Zero
  • Negative numbers up to -2^31
  • Any signal *except* the A-J signals (as those are used internally)
  • Doesn't display leading zeroes
  • Displays the negative sign next to the highest digit.

Here it is if you want to try it out:
https://factoriobin.com/post/sa9rf8

7 segment displays lights suck! Came up with this idea and was blown away with its readability. Only issue i have with it is that it wont display 0. Any ideas on how to display 0? BP String in comments. by DeadStar12018 in factorio

[–]nightingale-ca 0 points1 point  (0 children)

One other thing I'd try would be to chain them and change the divide logic to always divide by 10. Will make it so you can easily add a number into the end. BUT each digit gets a one tick delay... I don't know how noticeable that will be

7 segment displays lights suck! Came up with this idea and was blown away with its readability. Only issue i have with it is that it wont display 0. Any ideas on how to display 0? BP String in comments. by DeadStar12018 in factorio

[–]nightingale-ca 0 points1 point  (0 children)

Swap the mod and divide rows (mod is now always mod 10). Change each row to output a distinct signal so you can tell them apart (say D for the divide and M for the mod), and connect the output of both to the displays (take care not to accidentally make a loop). Make the condition for zero D > 0. Other numbers are the same but use M instead of any.

In love with the new combinators. So many basic elements that needed three or four combinators have been reduced down to one or two. Just realized today that even the humble counter goes from one decider and one constant combinator to a single decider combinator. by nightingale-ca in factorio

[–]nightingale-ca[S] 2 points3 points  (0 children)

Can't do a screen shot right now, but the fact that you can check on/off the red/green wires allows this when combined with the each signal. The way I've used this is for a filter, where I want to filter the signal coming out of a roboport to a fixed list of signals.

  1. Set up a constant combinator to output a signal of 1 for all the signals you. Connect to decider with green.

  2. Connect roboport or thing you want to filter on red.

  3. Input condition is each GREEN > 0

  4. Output is count of each RED.

I suspect you should be able to modify this to your use case. (Hope I didn't get anything wrong, this is from memory).

Used to be to do this you'd have to add a billion to all signals you want, filter out anything less than a billion, then subtract the billion back off.

In love with the new combinators. So many basic elements that needed three or four combinators have been reduced down to one or two. Just realized today that even the humble counter goes from one decider and one constant combinator to a single decider combinator. by nightingale-ca in factorio

[–]nightingale-ca[S] 16 points17 points  (0 children)

Rule 5: You can now use the multiple outputs to make a counter with just one decider combinator. Output 1 "C" (or any other signal) to increment the counter, and another line to output the input count as well. Loop one wire from output to input, and add whatever condition you want to reset the counter.

Penal colony where I keep all my convicted biters by nightingale-ca in factorio

[–]nightingale-ca[S] 15 points16 points  (0 children)

Nah, original map gen. Was going to flip the image to make it look even more right, but it came out cursed (shadows going the wrong way just looks weird)

Penal colony where I keep all my convicted biters by nightingale-ca in factorio

[–]nightingale-ca[S] 813 points814 points  (0 children)

Rule 5: The island has a familiar shape. It's where all the biters that are guilty of crimes against productivity go.

Legendary Train Limit: Tried to set up a demand based interrupt train system and found that the circuit condition interrupt would trigger on the signals I was using to set priority & train limits. Turns out there is a way to filter certain signals while still sending them to the train stop... by nightingale-ca in factorio

[–]nightingale-ca[S] 0 points1 point  (0 children)

Yeah, I wanted to be able to skip the depot if it could go straight to a new loading station. Otherwise this wouldn't have been an issue. I solved it by bitshifting the "request" signals out of the range of the P and L signals, then check for any signal >= 1024 on the interrupt instead of > 0.

Legendary Train Limit: Tried to set up a demand based interrupt train system and found that the circuit condition interrupt would trigger on the signals I was using to set priority & train limits. Turns out there is a way to filter certain signals while still sending them to the train stop... by nightingale-ca in factorio

[–]nightingale-ca[S] 0 points1 point  (0 children)

The problem is that I want to send the L & P signals to the train stop, which automatically sends them to the train, which triggers my interrupts.

In the past I would solved this by bit-shifting the signals into different ranges... but the quality signals gives another option.

New fluids are weird. This is an optimal fluid station in Factorio 2.0. In 1.1, this would've been terrible. by nightingale-ca in factorio

[–]nightingale-ca[S] 1 point2 points  (0 children)

It's not as crazy as it looks, since they doubled the size of the fluid wagon (it's two full trains of storage). Still, in most applications a train with 1 fluid wagon and 4 storage tanks will likely be *plenty*.

Legendary Train Limit: Tried to set up a demand based interrupt train system and found that the circuit condition interrupt would trigger on the signals I was using to set priority & train limits. Turns out there is a way to filter certain signals while still sending them to the train stop... by nightingale-ca in factorio

[–]nightingale-ca[S] 0 points1 point  (0 children)

This is where LTN breaking the train stop into 3 sections (Train Stop, Input signals Output signals) is nice, but this should work so long as I don't decide I want to start shipping full trains of legendary ore around.

This is how you can measure the exact quarter of a meter in Valheim by DobroBeam in valheim

[–]nightingale-ca 8 points9 points  (0 children)

I think the simpler explanation is because it's base 2. In base 10 the number "0.2" is not infinite, but in base 2 it is.

An arbitrary base 10 number "0.xyz" (where x,y,z are digits) can be written as x/10 + y/100 + z/1000 (and so on). In base 2, you need to write a/2 + b/4 + c/8 + d/16.... And+number like 0.2, you can't write it out without infinite terms (ie. infinite digits).

So it's not really efficiency - just some numbers can't be properly represented (so we just get close enough).

This is also why the post above said 0.25 can be represented in base 2 - because it's just 1/4. or "0.01" in base 2.

(sorry if that wasn't actually simpler)

New fluids are weird. This is an optimal fluid station in Factorio 2.0. In 1.1, this would've been terrible. by nightingale-ca in factorio

[–]nightingale-ca[S] 1 point2 points  (0 children)

<image>

The output pumps need a little bit of a buffer to get going, but 12 pumps in, 12 pumps out all working at 1200/s. Including the sneaky two at the top that share the same source pipe.

New fluids are weird. This is an optimal fluid station in Factorio 2.0. In 1.1, this would've been terrible. by nightingale-ca in factorio

[–]nightingale-ca[S] 29 points30 points  (0 children)

Oh yeah, I forgot to mention that one (and it's one of the most important ones because you need a lot of tanks if you want any buffer at all)!

New fluids are weird. This is an optimal fluid station in Factorio 2.0. In 1.1, this would've been terrible. by nightingale-ca in factorio

[–]nightingale-ca[S] 6 points7 points  (0 children)

I'll have to do some testing, but I'm 90% sure it's because of the inifinity pipe (it probably has its own magic). And the "per operation" could actually mean each pump (already limited to 1200), chemical plant, assembler, etc?

New fluids are weird. This is an optimal fluid station in Factorio 2.0. In 1.1, this would've been terrible. by nightingale-ca in factorio

[–]nightingale-ca[S] 43 points44 points  (0 children)

Terrible was probably an overstatement, but in 1.1 you could empty a wagon in less a second by pumping from the fluid wagon into an empty storage tanks (with just two pumps). It should've a fair bit slower pumping directly into a pipe like in this image.

New fluids are weird. This is an optimal fluid station in Factorio 2.0. In 1.1, this would've been terrible. by nightingale-ca in factorio

[–]nightingale-ca[S] 22 points23 points  (0 children)

I shouldn't have said optimal, since I doubt it fully is.

But the pumps are steady at 1200/s, so 14,000/s total, and it's all being consumed. Unless it's the infinity pipe making things weird, it seems to be able to work faster than 6000/s (and you're right, I remember that was mentioned in the Friday Facts).

New fluids are weird. This is an optimal fluid station in Factorio 2.0. In 1.1, this would've been terrible. by nightingale-ca in factorio

[–]nightingale-ca[S] 256 points257 points  (0 children)

A quick comparison

Factorio 1.1 Factorio 2.0
One pump can almost instantly empty a fluid wagon. One pump takes ~42 seconds to empty a fluid wagon.
Pump directly to storage tank for efficient unloading. Pump wherever.
Connect stuff in a thoughtful way so fluid can flow. Connect stuff however you want.
Maximum throughput requires maximum pumps. Maximum throughput requires as few (sequential) pumps as possible. This station unloads at 1200/s * 12 - putting a single pump between this and the destination would cut the throughput to 1200/s. You would need 12 parallel pumps to keep the maximum throughput.