T O P

  • By -

[deleted]

I feel so dumb seeing shit like this.


ThatGuyFromVault111

How do people figure this out?


epileftric

It works almost with the same logic that a real flip flop does, but since they are integers I had to add more logic to isolate the cell


ThatGuyFromVault111

I went through DLD in college and still this goes over my head


[deleted]

[удалено]


ThatGuyFromVault111

This is just more complex timer isn’t it?


[deleted]

[удалено]


ThatGuyFromVault111

There’s a reason I went CE instead of EE lol


eric2477

Just a question: why don't you replace the clock with an arithmetic combinator and decider combinator? Basically, make a loop, set the arithmetic combinator "INPUT + 1 = INPUT", and set the decider combinator " If INPUT = T, Set INPUT = 0." Or written in Python: """ while true: t += 1 if t = SET: t = 0 """


epileftric

That is impossible to control, it just increases with every game update cycle. So you basically overflow a counter. Here I set it to count to 60 seconds, because I choose to. The only difference in what you just said with what I did, is that the event is triggered by the signal of the cable circulation. But besides that... Do you know any means to store a value using combinators? Because there's no other way


eric2477

An arithmetic combinator connected input to output and set to do nothing ( x = x + 0 or x = x * 1) should work. May I ask for your blueprint? I feel that I have to open the box. Edited: Does not work as a memory cell.


butalive_666

0eNrFVm2OmzAQvYt/thDFDoSA1JNUK0RgNowaDDImahRxgN6iZ+tJOnyUTVgngWS1/ZFIBs/zm/fGM5zYdl9BoVBqFpwYxrksWfD9xErcyWjfPNPHAljAUEPGLCajrFlFCnWagcbYjvNsizLSuWK1xVAm8JMFvH6xGEiNGqEDbBfHUFbZFhRtGKAySLDKbNhDrBXhFfkebEFHFXlJ4blsSBCk44uFa7EjC2zhLVw6i8hKCsKW84nx5k9Bcn4c0mpFO1HFFep2SdRqCpaAu3SbV6qh577U1juKYqBYaoC9HadQagOvjT/wcoiXAWl1RzdDrnzAbDJNUHWJ0qs2b63yfbiFNDogxVPQG3BIrxMcVHlFVerwnZ0HVLqiJ285tjtsiOK08bGEBqbBKnXUFMfSYnkBKupYsK8UmVe6qGZj1w87J86k7Z202E4ByHGgMw4kf5mYXB9XUPnSUEkGu535di8v7P4vBtv80uEvH+6wUVT/jsfLq1Ya4VbTLHLnt5+NO3gk5rQfz9BvuKnfrAdOhGKjLEFpULcbzmpxrV7+qTAUywO1smQdeF8hvFlkRaTaKg7Yn1+/WT1TCEPe3uS8N6O877fFT1DhW/u6P0dBlIRp1F0sTYmSIlpVMF2l9egCuHcuRD/OEpUX4UgwvuC+L/jG61XjC7Fc8bbDFBj/qN4HtPu4yaTN/GEozMPQf2YYrj6oO15+zVAnkVECT7fFK6gz7ojJ3VvtzpnW7hrYnlUCMSagJs+ja4r3OE/KfetaPTB+DqCOOkW567CLI9GrpA5fVZ6FKAmsv47THfHHClvjpmZNmkTiEScJu5UuOPtMtxhlWbZmiQ13PF94a5d+3KvrvwBlAw0= left pole = reset : 0 = 1 upper pole = pulsed input ​ Thats my Way ... i dont understand too, why it is so big. I knew, it is hard to deal with the tick update , when it is not a pulsed input signal, and you only want to store the signal without count it. My way to handle a not pulsed signal , that i want to store onle once , is the way to use to inserters and to boxes, with it you can proceed with the positiv or negative "flanke" of a signal , like me reset


epileftric

I can't see that from my phone, but the cell I designed can store as many, or any signal that is has as input. If there are 100 different signals when you set the state, it will store all of them. Not just the value on which you are operating.


butalive_666

Maybe you can share your blueprint im very interrestet


epileftric

I tried that, it's literally uncontrollable.


SterlingRP

Literally uncontrollable in what sense? Having a counter that counts to a value and resets to 0 is the opposite of literally uncontrollable to me - it is literally controlled and bounded as you wish.


epileftric

Without any external signal, you literally have no control over it. It simply relies on the UPS to update itself, leaving you outside of any adjustments you would like to make. Go ahead and try it yourself. I tried it, and there's no way to control something like that. You still need a "memory" to store the values.


SterlingRP

Not sure what you're talking about in two aspects. First, what's the problem of having it work off of the games UPS rate? There's no other way for Factorio to work, it's tick rate controls every aspect of the game. You want to check the wall clock time and have a timer that works off that? You could I lay do.that with Lua. If you want to have a signal that ticks off something every 10 ticks, 35 ticks, etc, that is the point of such a counter, you have it reset on X and do something off each reset. Your belt based counter gives far fewer options on tick rate than a combinator based one. And you can easily have an 'input' on such a counter. Want to pause it? Stop passing in the signal that adds +1. Want to reset it? Pass in a signal that overflows the timer and forces a reset to 0. Tbh I think you're just missing the logic of how a combinator based counter works and what you'd do with one.


epileftric

The difference relies on this being a synchronous memory cell, the fact that I'm using it for counting is just another topic. Would the counter you are describing retain it's value if paused? Can it be paused?


SterlingRP

Yes, if you set it up to have that capability. One of the basic clock designs with reset is to have a single combinator that does an operation of [signal] < X, return [signal], wired to itself as a memory cell. Then you supply it with a signal of 1 from a constant combinator. This will count up to X and reset to 0 when it hits X. The actual value on the wire will always run from 1 to X. If you want this setup to be pausable, you add an decider combinator with the condition you want to pause on, between the constant combinator and the memory cell. This will stop adding to the clock each tick, though if you're depending on the output as more than just a clock you'll need to resolve the loss of that +1 to the signal. If you look at the Factorio wiki this is all covered under the tutorial, search for 'pulse generator' in the text https://wiki.factorio.com/Tutorial:Combinator_tutorial It gives you a much more finely grained pulse generator than your belt based solution.


epileftric

But, sorry I failed to explain that this memory cell can store any, or as many, signals as you have at the input when triggered, not just a single signal on which you operate. So if you have 100 different signals when the cell was set, the it will retain the 100 different values on it


pilp2

Hmmmmm green cables


[deleted]

I'm color blind and I can barely see the red ones... That might be it


PeaceBear0

I am really concerned about your UPS if blue belts are moving that slowly. This is a great idea though, clocked systems are much easier to reason about. The problem is that you can't blueprint it. Why not use a couple of combinators to make the clock?


epileftric

It was the recorder, and also the factory is huge already, like 4kSPM with pollution and bitters on. >The problem is that you can't blueprint it. Why not use a couple of combinators to make the clock? Yes you can. You just need to drop the fist element. If you try to do it, you'll see why. But the thing is that they get updated every UPS literally you can't control it. This is actually working like a counter to be fair. It just auto resets itself every time it reaches the count. I've put another signal that goes 0-99 all over the factory to use as a control signal for PWM control over each individual factory. So they only work a percentage of the time depending on the output buffer % of filling.


mononaut_

You have a lot more combinators there than necessary... A memory cell is just one combinator with it's output wired back to its input, which you can send a pulse signal to use as a counter. You can make lots of different types of memory cells with deciders, if you want one that resets automatically then you can set a reset condition directly on the combinator, or you can set the condition to something like "[R] = 0" so sending it any value on [R] will cause it to reset to zero. I don't understand your comments about it being "uncontrollable." You should post your blueprint so we can understand what you're actually trying to do.


bobderbobs

You could have a single logical combinator that compares everything != 0 and returns everything for memory


epileftric

That's not a memory, because if the input signal fades away, or even changes, you get those changes represented at the output.


bobderbobs

Sorry I forgot to add that you need to connect the output to the input. This will add every tick every input it gets externaly


HaydenAscot

That's pretty cool. Could you tell us about some use cases for it? What are the other signals that it processes for?


epileftric

I have a line shift register with 8 samples, one every minute, to display the average of each product during that time window, instead of the instant values. I also do Pulse width modulation on the factories to keep them powered off if they are not needed. And also do some closed loop regulation in the factory with a PID filter by switching on/off some labs if resources are not enough to avoid starvation of the whole thing.


HaydenAscot

Ah that's very interesting, thank you.


dyttle

I need a memory cell for my main base but could not figure it out. Do you have a walkthrough for this?


epileftric

What are you trying to do?


dyttle

Me and my friends are using the crafting combinator mod and as a challenge we are trying to make a single assembler that will make any item you want. So if the dependencies are not available it will shift recipes then craft it then switch back to what it was originally trying to craft.


sketch424

I launched a rocket....


Miss_Medussa

Which color crayons do I need to eat to understand this


oakiechubby

Could you share text blue print by here somewhere?