Building Circuit Abominations in Factorio

แชร์
ฝัง
  • เผยแพร่เมื่อ 23 ก.ย. 2024

ความคิดเห็น • 1.1K

  • @DoshDoshington
    @DoshDoshington  ปีที่แล้ว +1343

    This is a bit of a weird one. I'll get to finishing up Seablock now
    The sandbox is the Editor Extensions mod.
    (At 11:35 I mistakenly say modulo it by 10,000 when it should've been 100.)

    • @gramioerie_xi133
      @gramioerie_xi133 ปีที่แล้ว

      You motherfucker. I was right about to sleep. Now I absolutely can’t for almost an hour now.
      Bastard. Make worse content.

    • @Pedro_Colicigno
      @Pedro_Colicigno ปีที่แล้ว +29

      After watching, a lot of what you mentioned about memory handling, reminded of TIS, how you usually had a bunch of nothing cicles just to get the timing right. Actually, most things I can relate to Zachtronics games, hummmmmmmm I wonder why

    • @jmatya
      @jmatya ปีที่แล้ว +3

      Did you hopefully enjoy it at least? 😁 I mean it's wonderful. I'd make this a university class homework over the semester. 😇

    • @fauxfirefur
      @fauxfirefur ปีที่แล้ว +1

      I mean, you can just go into the editor and then overwrite the current plane of existence with lab tiles to get the same result.

    • @BloodyMobile
      @BloodyMobile ปีที่แล้ว +1

      Space Exploration Sea Block when? xD
      just kidding, I don't think that'd work in any way...

  • @earthypinkunicorns8986
    @earthypinkunicorns8986 ปีที่แล้ว +5040

    Its crazy how this man explained everything so well and I understood none of it.

    • @alkhemia23
      @alkhemia23 ปีที่แล้ว +103

      literally me frfr

    • @maxhallo1931
      @maxhallo1931 ปีที่แล้ว +79

      Can't be caught liking this

    • @agushernandezquiroga9064
      @agushernandezquiroga9064 ปีที่แล้ว

      People say there's no such thing as a bad student, only a bad teacher. This video proves that's bullshit.

    • @gekkenman9538
      @gekkenman9538 ปีที่แล้ว +9

      100% agree !

    • @BloodyMobile
      @BloodyMobile ปีที่แล้ว +48

      Some things are simply too complex for one explaination to cut it.
      I've made a bit based resource encoder for Space Exploration, so multiple planets could request or provide resources via cannons on a single data line.
      Because back then I didn't feel like figuring out how to set up a time encoder instead. (turned out to be easy enough /after/ I tried, 200 hours into the save)
      And I /still/ only understood 1/4 of the printer : /

  • @filiformis
    @filiformis ปีที่แล้ว +1625

    Coming from an embedded systems programming background it's interesting watching all of these fundamental computing concepts get built up in front of my eyes with all of these funny building blocks.
    Now build a RISC pipeline.

    • @flavortown3781
      @flavortown3781 ปีที่แล้ว +25

      How would one program it? Putting items in boxes would be neat

    • @acters124
      @acters124 ปีที่แล้ว +17

      Make a whole base risc pipelined

    • @dogefort8410
      @dogefort8410 ปีที่แล้ว +61

      ... now I want a warehousing mod, but for logic operations. 😂

    • @TheGunzbeep-TG
      @TheGunzbeep-TG ปีที่แล้ว +7

      @@dogefort8410 THIS!

    • @luziferius3687
      @luziferius3687 ปีที่แล้ว +54

      There are some proof-of-concept compilers for VHDL to factorio combinators out there.

  • @InvadeNormandy
    @InvadeNormandy ปีที่แล้ว +1710

    Time to watch an entire video about a game I don't play and enjoy every second of it. 🗿

    • @john.dough.
      @john.dough. ปีที่แล้ว +17

      just like minecraft :)

    • @matt5075
      @matt5075 ปีที่แล้ว +40

      Yes. Live vicariously through Dosh’s misery.

    • @bosch5303
      @bosch5303 ปีที่แล้ว +6

      500h in 3 months here 🫠

    • @Wolfboy607
      @Wolfboy607 ปีที่แล้ว +21

      I can't recommend this one enough. It's a steep learning curve, but many people turn out with an addiction.

    • @Joel-qo6gt
      @Joel-qo6gt ปีที่แล้ว +5

      Uh oh. I've been recognised.

  • @calyodelphi124
    @calyodelphi124 5 หลายเดือนก่อน +42

    At 23:55 the technique that you employ with the belts is a similar technique used in PCB design for timing-sensitive signals: meandering. For anyone else reading with a desktop PC, if you take a moment to closely examine the printed traces on something like your computer's motherboard, specifically between the memory sticks and the CPU, you'll find TONS of wiggly traces that go back and forth. Those are meanders and their sole purpose is to make the traces all exactly the same length so that the data signals arrive to the CPU's input buffers at _exactly_ the same time. You'll also see this in the differential pair traces on expansion cards like graphics cards and whatnot because PCI express is similarly timing-sensitive due to the extremely high bandwidth.

    • @Cdrsan
      @Cdrsan 5 หลายเดือนก่อน +1

      I took a look on the pcb for my mobo and it's true, cool :)

  • @lolzinator44
    @lolzinator44 ปีที่แล้ว +255

    unironically probably one of the greatest tutorials on basic comp sci on yt. This is like the first semester of a comp sci degree crammed into 45 minutes of watch time, you can even follow along in factorio itself as you watch. awesome.

    • @KamikazeCommie501
      @KamikazeCommie501 9 หลายเดือนก่อน +32

      This isn't 'basic'. The only people that understood anything in this video are people that already understood it before clicking it.

    • @thedapperturkey
      @thedapperturkey 9 หลายเดือนก่อน +24

      ​@@KamikazeCommie501there are alot of concepts in this video I didn't understand yet that I now do because of this video

    • @creativecraving
      @creativecraving 8 หลายเดือนก่อน +6

      Well, I didn't cover any of this in my Comp Sci coursework; I would have to assume it's for an electrical engineering degree, not a programming one.

    • @gabrielc7861
      @gabrielc7861 8 หลายเดือนก่อน +1

      ​@@KamikazeCommie501seems like a intelligence issue, this is advanced circuit knowledge, you'll only learn something if you have watched the previous video on basic circuit knowledge.

    • @joshualettink7582
      @joshualettink7582 8 หลายเดือนก่อน +11

      @@KamikazeCommie501 As a firmware engineer I can say that at work this would be considered basic indeed, of course in the context of hardware/firmware engineering.

  • @DouglasFish
    @DouglasFish ปีที่แล้ว +751

    You're on a different plane of existence and I am thankful I can absorb some of this knowledge

    • @Hr1s7i
      @Hr1s7i ปีที่แล้ว +13

      You won't be allowed to graduate electronics at any uni if you don't know this stuff.

    • @NONAME-ey6qs
      @NONAME-ey6qs ปีที่แล้ว +18

      @@Hr1s7i Idk, Im an electrical engineer and Im sure I wouldn't be if I was asked to explain whats happening in this video. Sounds more like CS to me, and sadly looks much cooler than what I do for a living.

    • @Hr1s7i
      @Hr1s7i ปีที่แล้ว +4

      @@NONAME-ey6qs Eh, I might be slightly off with this one. At the local uni, this kind of digital schematics and logic is told as part of electronics engineering course (the uni has separate diploma for electronics in the form of embedded systems and the like, while electrical engineering is a high voltage set of courses), automation course and CS course. I assumed it's the same everywhere else. My bad >.

    • @VOXindie
      @VOXindie 8 หลายเดือนก่อน

      @@NONAME-ey6qs the only CS part I could recognize is the bit related stuff.

    • @JorenVaes
      @JorenVaes 7 หลายเดือนก่อน

      ​@@NONAME-ey6qsAt least at my alma mater, CS focused on the algorithms. Digital design (which this very much is) is the realm of electrical engineers.

  • @PicaMula
    @PicaMula ปีที่แล้ว +306

    As an EE and Factorio lover. This is one of the most amazing projects I have ever seen.

    • @jmatya
      @jmatya ปีที่แล้ว +2

      What is EE?

    • @tomaszkarwik6357
      @tomaszkarwik6357 ปีที่แล้ว +20

      ​@@jmatyaelectrical engineer

    • @tistelnilsson
      @tistelnilsson ปีที่แล้ว +1

      Google Factorio Sandman. But this is the best explanation so far :) Really good project!

  • @cyrolocker1229
    @cyrolocker1229 ปีที่แล้ว +555

    This video feels like my brain is being slowly microwaved while funkytown plays muffled in the distance
    10/10 factorio content

    • @notoriousgoblin83
      @notoriousgoblin83 ปีที่แล้ว +16

      This is a perfect description

    • @theendofthestart8179
      @theendofthestart8179 ปีที่แล้ว +2

      the fact that some will read this comment without knowing is insane to me

    • @robforskinstein
      @robforskinstein ปีที่แล้ว +9

      Not funkytown… 😐 🔪 💀

    • @deathkorpswatchmaster2414
      @deathkorpswatchmaster2414 11 หลายเดือนก่อน +2

      I love being a rival cartel member, ooh they are so nice they are giving me an IV

  • @macfeej
    @macfeej ปีที่แล้ว +164

    I love that he had True Nukes installed while doing this

  • @TheLargestRat
    @TheLargestRat 11 หลายเดือนก่อน +15

    This was like a software engineering textbook stood up and started giving me a lecture. My brain is fizzing and I want to cry, thank you please make more

  • @Pedro_Colicigno
    @Pedro_Colicigno ปีที่แล้ว +221

    I think I've learnt more in this video than reading the wiki page tbh. Keep going Dosh, I hope I don't beat Seablock before you because your ideas usually help me haha

  • @genericytprofile852
    @genericytprofile852 ปีที่แล้ว +55

    I've always found that learning how mechanics work, especially with programming/electronics, is way way easier to do when you have a project you are working towards. Learning concepts without any application is like learning to row while the boat is still on the shore. TY so much for this video, would love to see any of the other crazy stuff you do in your spare time. Next up, creating a computer monitor in factorio lol

  • @Orion_5764
    @Orion_5764 ปีที่แล้ว +16

    No single part of this video is insanely complicated, but the perfect monotone and insane information density makes it very hard to follow 100% of the time. I found it best to watch it at 75% speed. Definitely learnt some tricks I never thought of in the first 8 minutes of the video

    • @Orion_5764
      @Orion_5764 ปีที่แล้ว +3

      Well he just started explaining the printer itself and I am entirely lost. I'm just watching pretty pixels go across the screen 🫡 might have something to do with the fact that it's almost 4:00 a.m.

  • @cooldud7071
    @cooldud7071 ปีที่แล้ว +178

    I never bothered learning circuits in Factorio, but these videos have made me consider making my own hardly-working garbage.

    • @Dschonathan
      @Dschonathan ปีที่แล้ว +24

      Ive built a nuclear power plant that would play All-Star by Smash Mouth whenever Uranium was successfully enriched without knowing any of the fundamentals of this video. Circuits are really fun and useful even if you don't know computer science.

    • @thefool8224
      @thefool8224 ปีที่แล้ว +8

      @@Dschonathan someone made a darude sandstorm video inside factorio using this stuff. i dont even know how

    • @theendofthestart8179
      @theendofthestart8179 ปีที่แล้ว +5

      at least make a sushi belt for science, they really look sooooo good and its satisfying to make it yourself

    • @LtDan-fy7lc
      @LtDan-fy7lc 2 หลายเดือนก่อน

      @@thefool8224 Seems to me you could make something resembling that with a massive grid-shaped version of the 7-segment display Dosh displayed in this video, combined with a very large one of those ring buffers. Seems like all you need to do from there is "write a program" (aka create a clock circuit that outputs specific variables at specific times) that tells a bunch of the lights to turn on in a specific sequence.

    • @thefool8224
      @thefool8224 2 หลายเดือนก่อน +1

      @@LtDan-fy7lc i didnt do enough programming to go beyond a calculator

  • @int2201
    @int2201 ปีที่แล้ว +409

    Wow this guy seems super smart, he should be an engineer :)

    • @holl7w
      @holl7w ปีที่แล้ว +26

      engineer gaming.

    • @holl7w
      @holl7w ปีที่แล้ว +37

      the engineer is enginear your location.

    • @davisdf3064
      @davisdf3064 ปีที่แล้ว +1

      Engineer? Yeah, he's engiNEAR HIS FUCKING LIMIT!

    • @MrTeddy12397
      @MrTeddy12397 ปีที่แล้ว +11

      @@holl7w the engineer is engideer

    • @ilayfedorenko9713
      @ilayfedorenko9713 ปีที่แล้ว +2

      He is, and he have degree to prove it

  • @dungewar
    @dungewar ปีที่แล้ว +103

    YAY, now THIS is the only tutorial that I've really ever needed, and I intend to fully watch it.
    I don't need all these tips & tricks, I already know them! But this beast is something else.
    thank you for making this

  • @Floris_VI
    @Floris_VI ปีที่แล้ว +19

    The fact this video contains the word simple is truly a crime

    • @irrelevant_noob
      @irrelevant_noob หลายเดือนก่อน

      Well, everything is relative... The use at 6:25 is quite justified imo. ^^

  • @fiqures1529
    @fiqures1529 ปีที่แล้ว +93

    I see circuits and Todd Howard and I know it’s gonna be a good time

    • @tiamatwar
      @tiamatwar ปีที่แล้ว +2

      You mean Hodd Toward?

    • @Zoabdy
      @Zoabdy ปีที่แล้ว

      Todd Coward

  • @Gegellibu
    @Gegellibu ปีที่แล้ว +31

    For filtering out many signals at once there is actually a small-ish way to do so. To achieve this we multiply the signals of each wire together. This is done as follows:
    Let all signals on red be "r" and all on the green line "g". Then if we compute o = (r+g)^2 (which we can since addition & pow are valid AC operations) we obtain an interesting output signal:
    If we were to expand it we see that we get: o = r^2 + 2rg + g^2. If we now subtract the r^2 and g^2 from o we are left with 2rg, which after dividing by 2 is a element wise multiplication of each signal. In the end, if we were to assign "roles" to the different wires, such as red carrying the data, and green carrying the signals you wish to extract (either 0 or 1), then we end up with filtered line filtering an arbritrary amount of signals with only 7 ACs in total.

    • @Michaelonyoutub
      @Michaelonyoutub 11 หลายเดือนก่อน +1

      Yeah I was thinking something like this would have been possible when he was talking about it

    • @ColonelSandersLite
      @ColonelSandersLite 9 หลายเดือนก่อน +3

      Written a little more succintly for clarity, this would be -
      RG = [(R+G)^2 - R^2 - G^2]/2
      It's important to know that this is very flawed. The exponentiation will make this overflow pretty easily. The biggest number you can work with is +/-46340. In factorio terms, that's not really all that big. It's less than 6 cargo wagon loads of green circuits for instance.

    • @Gegellibu
      @Gegellibu 9 หลายเดือนก่อน

      @@ColonelSandersLite I'm aware of the overflow. However since we here have integer arithmatic, we are basically computing the entire thing mod 2^32, which in this case causes the overflow to occur in "both directions" e.g. when also computing the r^2 we have the same type of overflow.
      As I'm currently too lazy to prove the actual mathematical formulation for which numbers the above equation works I wrote a simple c++ script to just check all the possible combinations in the int32 type. This yields the smallest range of values which work to be [-1073741825, 1073741824] which is a lot larger than the estimate you've given.
      If intrested, the script was:
      ```cpp
      #include
      #include
      #include
      int main()
      {
      int32_t lower = std::numeric_limits::min();
      int32_t upper = std::numeric_limits::max();
      for (int32_t i = std::numeric_limits::min(); i < std::numeric_limits::max(); ++i) {
      int32_t a = (i + 1) * (i + 1); // (r + 1)^2
      int32_t b = i * i; // r^2
      int32_t c = a - b - 1; // (r + 1)^2 - r^2 - 1 = 2r
      int32_t d = c / 2; // r, should be equal to i
      if (d != i) {
      if (i < 0) {
      lower = i;
      } else {
      upper = i;
      break;
      }
      }
      }
      std::cout

    • @Gegellibu
      @Gegellibu 9 หลายเดือนก่อน +5

      However, I've recently also come up with a bit perfect way to extract any amount of signals, keeping the entire range of bits available (by doing a sort of vectorized AND operation)
      If we have our "data" signals given on the red line, and want to extract all the signals from it which are given on the green line, the "filter" line proceed as follows:
      1. The filter signals you want to extract should all be set to a value of -1 (or in hex 0xffff_ffff)
      2. Compute the following for both signals:
      a. "each" >> 1 -> "each" AND 0x5555_5555
      b. "each" AND 0x5555_5555
      3. Then add the results for the red and green signals on both the a. and b. branches, i.e. (red a. + green a.) and (red b. + green b.). This can be done by connecting them to the same next stage combinators. (Now if both signals have a 1 in the corresponding bit's place, it carries over to the next bit's place)
      4. Extract all the carried bits:
      a. (red a. + green a.) -> "each" AND 0xAAAA_AAAA
      b. (red b. + green b.) -> "each" AND 0xAAAA_AAAA -> "each" >> 1
      5. Now finally recombine the extracted carry bits by re-adding them, simply by connecting the outputs of both stages to the same line (e.g. red)
      The idea behind this is we extract every 2nd bit from the original integers, setting all others to 0. Then when we add the resulting numbers only if both signals were 1 in that bit's position will it carry over to the next bit position (where the carry propagation stops, as it is guaranteed to be 0). I.e. this means we have the result of the AND operation 1 bit higher. The other stuff is just for splitting it into the 2 un-interleaved values, and recombining the 2 paths lateron. (0x5 = 0b0101 and 0xA = 0b1010)
      What's even cooler is that this entire thing can be done in 3 game ticks, with 9 combinators iirc.
      As a side note: This algorithm also contains a way to do vectorized bitwise XOR, if instead of the carry bit, we look at the original bit positions.

  • @ryanosborne7534
    @ryanosborne7534 ปีที่แล้ว +14

    I started playing factorio recently and got a whole new perspective on just how good at this game you are. I was getting bottlenecked constantly literally everywhere, my factory was an eldritch horror of belt lines, and my oil production was all fucked up. Massive respect, guess that's why I'm a geographer and not an engineer

  • @canolathra6865
    @canolathra6865 7 หลายเดือนก่อน +7

    Trying to add proper kerning to what is more or less a multi-color dot matrix printer is exactly the sort of madness I expect from this channel.

  • @adamquinn5735
    @adamquinn5735 ปีที่แล้ว +133

    But in all honesty this is the only guy who I have notifications on for and I have watched basically all his videos way to many times

    • @leduke79
      @leduke79 ปีที่แล้ว +5

      High quality content, indeed. But there are several other streamers I enjoy, delivering in various formats. I would say don't stop with Dosh. Michael Hendriks insane difficulty and insight, BoldViking's ginormous builds, JDplays' soothing voice, Krydax' control, YamaKara's professional pasta, Nefrums and AntiElitz et al speedruns, and Ryan Brown has a good, compressed format, too.
      Not affiliated, just find that Dosh is a superb addition to the solid Factorio content factory.

    • @adamquinn5735
      @adamquinn5735 ปีที่แล้ว +2

      ​@@leduke79thanks for the recommendations I'll look into them

  • @TheAgamemnon911
    @TheAgamemnon911 ปีที่แล้ว +35

    I like how with this printer, refilling the ink is actually the easiest part.

  • @insanecreeper9000
    @insanecreeper9000 ปีที่แล้ว +14

    Chekhov's nuke was a great addition, I kept wondering when it would crop up again

    • @romanzhed7220
      @romanzhed7220 ปีที่แล้ว +1

      Huh, missed it. When did he planted the nuke?

    • @nadarith1044
      @nadarith1044 ปีที่แล้ว

      @@romanzhed7220 In the pseudo-random part, at 10:12

    • @romanzhed7220
      @romanzhed7220 ปีที่แล้ว

      @@nadarith1044 thanks!

  • @sniksnik9809
    @sniksnik9809 ปีที่แล้ว +12

    As someone who has never played nor will likely play Factorio or really any automation game, this was still super interesting to watch. The fact that you were able to break it down enough that I figure I could follow along in-game is highly impressive

  • @Izithel
    @Izithel ปีที่แล้ว +25

    This is the second time this week I learned about bit shifting, probably a coincidence but it's funny that it happened twice.
    The other was about how OpenTTD generates its random town names.
    Also this is probably one of the best explanations of how circuits work so far.

    • @livedandletdie
      @livedandletdie ปีที่แล้ว +1

      That's an interesting tidbit of data, I didn't know they used bit-shifting to generate it's random town names.

  • @vfrostbane225
    @vfrostbane225 ปีที่แล้ว +14

    I actually really love these tutorial type videos. genuine concepts and factorio knowledge packed into a madness fueled project.

  • @wizzowsky9099
    @wizzowsky9099 ปีที่แล้ว +15

    This is hands down the best and most follow-able advanced circuits video I have seen. Cheers for some amazing work and an impressive printer!

  • @weavminas
    @weavminas ปีที่แล้ว +8

    I'm sitting here in a combination of entertained, awestruck, and inspired.

  • @rocknred7647
    @rocknred7647 ปีที่แล้ว +11

    I'm a huge fan of in-game logic systems being used to make things completely unrelated to the gameplay loop. From Doom in Factorio to advanced calculators in Minecraft, this stuff rules. Awesome video, would love to see more like it.

  • @killingtimeitself
    @killingtimeitself ปีที่แล้ว +12

    Coming from a multi year background of technical MC where i have a very good understanding of applying basic logic and basic logic circuits in that specific application, and then my stints with Barotraumas logic system and its utter mess of complication, where i learned that somethings just can't be helped (if you know you know) to now, factorio, with is foreign but familiar seemingly logic system, that i understand partially, and just need to comprehend fully in order to make use of properly.
    I must say, thank you for this video. This is exactly what i needed in order to properly comprehend factorio logic properly.

  • @webbugt
    @webbugt ปีที่แล้ว +4

    You made this in a perfect time for me. I just got back into Factorio after about 6 months.
    Right now I'm working on a "smart" train dispatch computer, where any compatible train can go to any compatible station. All tracked via resource, station and train IDs. Which can also be dynamically assigned, bypassing the need to input a lot of values via constant combinators.
    My latest version is fully "analog" in a sense it processes each resource separately and is based on constant signals and processing of the same. The version I am working on right now has "digital" memory, task assignment and such all while keeping track of train length/config/wagons in order not to send a fluid train for an ore task or a 6 long train for a 2 wagon train task.
    I managed to assemble (still optimizing it) an addressable memory cell where (in a pulse) "I" signal determines the "ID" or the memory position while the rest of the signals (excluding R) get stored. On the other side you can send a pulse of Q=some_id and you recieve the signal set as a pulse on the next tick. R=some_id erases given memory position and frees ub the memory cells for new values (since we a re working with the space limit of how many memory cells are in a single module).
    I've already got a working POC of train dispatching with 1 frame delay. 3 trains with exactly the same schedule going to 3 identical stops (only difference is the id). From a perspective of a single train. On the same tick, the train recives the signal to go and the specific station I need the train to go to is enabled (with 1 train limit). The destination station stays enabled via latch until a train arrives. The train will "take" the single position in the station on the same tick, allowing you to send other trains via the same mechanism.
    The only issue I am currently trying to solve on the conceptual level is what to do about low-power states. I still need to test what happens with an electronic circuit when it works at 10% of power or if it completely loses signals if power is completely lost.

    • @A_Simple_Neurose
      @A_Simple_Neurose ปีที่แล้ว

      Just make it run of a battery that charges periodically from the main network with a switch. You could pipe steam into tons of tanks to act as a higher capacity battery too.

    • @Xahnel
      @Xahnel ปีที่แล้ว

      I have an idea: have a low power mode. No trains run on low power mode, except fuel trains. Have the network turn off if you lose power entirely, and only reactivate by hand. Make turning it on also reset the dynamic trains, so new trains can be assigned to new stops dynamically from zero.

  • @LazerWolf21
    @LazerWolf21 ปีที่แล้ว +7

    As someone who just got their undergraduate degree in computer engineering a few months ago, I really can appreciate all the effort that went in to making this. I think I can understand how this works for the most part, but I might have to download the blueprint and see. Awesome content, keep it up.

  • @KriegsverbrechenGaming
    @KriegsverbrechenGaming ปีที่แล้ว +3

    ok so i am a trained electrician from germany, focus on automisation. half of my training (3,5 years long) was literally logic and how to make working and efficient software, machines and assembly lines. i somehow understood next to nothing even though you wonderfully explained everything, ngl. the fact you got this to a point you built that printer, honestly, hats off to you, beautiful stuff. great vid as well.

  • @bramfokke1460
    @bramfokke1460 ปีที่แล้ว +2

    The detailed explanation of how to create a digit display in vanilla the brute force way and how to optimize it was very educational. Great work!

  • @markeroo9297
    @markeroo9297 ปีที่แล้ว +59

    Love this kind of content, but as a computer engineering major just getting back to classes I feel like I could just as well be doing homework 😂

    • @aurias42
      @aurias42 ปีที่แล้ว +3

      But this is fun homework!

    • @Benny_Boo___
      @Benny_Boo___ ปีที่แล้ว +3

      or you could do your homework in factorio!

  • @kslav492
    @kslav492 ปีที่แล้ว +1

    I love this. It seems immensely complicated and the speed that you explain it along with the sped up gameplay feels like you are shooting information into my brain and very little is getting in. Your channel is amazing, and I appreciate you making long form videos. Thank you!

  • @honordevs
    @honordevs ปีที่แล้ว +3

    This video was exactly what I wanted, last time I played Factorio. I tend to get lost in the sauce, trying to figure out my own uses for translating functions into game mechanics, but it takes a long stare to come up with these designs... Then, I forget what I did and stare at it for another 30 minutes; trying to remember why you connect X to Y. I'm just glad to have it all in one great reference video.

  • @rajdeeppaul296
    @rajdeeppaul296 ปีที่แล้ว +2

    i can't even express how awesome this is, last time I was this much excited when I saw someone played Portal's still alive song in factorio by using circuits and speakers, and now you made a practical printer inside the game, and boy isn't it majestic. please make this kind of awesome things more

  • @eighttimesnine
    @eighttimesnine ปีที่แล้ว +3

    this is genuinely one of the most interesting videos ive seen on factorio and taught me a lot. i was considering complementing my programming degree with a computer science degree and now i am Very Heavily considering it

  • @l4vash
    @l4vash ปีที่แล้ว +2

    i probably won't get noticed but i really liked this tutorial, thank you dosh (your printer is awesome(

  • @RTOmega
    @RTOmega 5 หลายเดือนก่อน +8

    I feel like I just had a 6 hour seminar on computer logistics...

  • @gottimw
    @gottimw หลายเดือนก่อน +1

    that 40mins packs a year worth of CS course concepts. Nice

  • @KillingTheMeta
    @KillingTheMeta ปีที่แล้ว +3

    Love the vid Dosh, I have previous looked into how memory cells and clocks work with circuits, but could never get my head around why they worked. This was exactly what I needed.

  • @ktay2918
    @ktay2918 ปีที่แล้ว +2

    Logged in just to comment a big thanks. Explaining how the ticks behaved really helped. Good luck with the things.

  • @TheLoneWolfling
    @TheLoneWolfling ปีที่แล้ว +9

    IIRC you can single-step combinators by pulsing power to them. Useful for debug.
    (IIRC: a combinator with insufficient power in its internal buffer to update will simply not update that tick.)
    I wonder if you can use this for banked shift registers or memory cells. Definitely has its disadvantages, but may be interesting in some applications.

  • @takostyle
    @takostyle 3 หลายเดือนก่อน

    Dayum, mad respect to you sir.
    Came here to learn a bit on Factorio logic programming, left with an insatiable thirst for mad advanced Factorio experience.
    I enjoyed every minutes.

  • @BWwazup
    @BWwazup ปีที่แล้ว +6

    I am only 12 minutes in and my brain hurts.

    • @nadarith1044
      @nadarith1044 ปีที่แล้ว

      Train the brain, train it hard! if don't skip brain day it will eventually stop hurting

  • @maximilianseibert7851
    @maximilianseibert7851 ปีที่แล้ว +2

    After two minutes in, I forgot how understanding works. There were words thrown at me but I couldn't process them. It just felt like I was beaten up with computer science in my favourite video game. Great video. I love it

  • @dragonridertechnologies
    @dragonridertechnologies ปีที่แล้ว +9

    This was amazing. It's also a good insight into how Factorio processes data, which appears to be some cursed combination of digital and analog logic in a way that it keeps the most annoying components of each while somehow being even more cursed. Having to combine signal timing, additive values, and a relatively low ceiling for integer values is something I was not aware I'd have to do, seeing as I've never built anything this complex before.
    I have to ask if the end of the video was really when your randomizer went off, or if you had that timed to activate when you were done. I can't see you actually building this in that specific an amount of time, or being willing to accept a random explosion taking out your work-in-progress...?

    • @DoshDoshington
      @DoshDoshington  ปีที่แล้ว +7

      I stood around waiting for it to go off naturally, but it crashing the game was unexpected

  • @CriticalCipher
    @CriticalCipher 6 หลายเดือนก่อน +1

    This guide is very similar to engineering textbooks as in it doesn't make sence at first look but once you go around and play with the concepts it becomes super clear

  • @tjep2670
    @tjep2670 ปีที่แล้ว +20

    Everytime Dosh says "but thats easy" I think no, no its not..😢

  • @samwheller
    @samwheller ปีที่แล้ว +1

    Our friend just gave you like 4 college courses worth of info. Gratitude.

  • @ch10r0phy11
    @ch10r0phy11 8 หลายเดือนก่อน +7

    Who else voluntarily turned this 40 minute video into a 3-hour study session?

  • @wilbursoderberg9533
    @wilbursoderberg9533 ปีที่แล้ว +1

    Suprising that a machine like this one becomes so managable after being skillfully explained. Well done.

  • @bucketofnubbins8532
    @bucketofnubbins8532 ปีที่แล้ว +6

    A small detail, but I think the OR gate condition at 7:09 should be "checkmark > 0" rather than "checkmark > 1". Doesn't matter much as it goes by fast, but it could confuse someone. (>= would also work).

    • @dascandy
      @dascandy หลายเดือนก่อน

      Yep - @dosh please pin this comment!

  • @frequencyoffun5159
    @frequencyoffun5159 ปีที่แล้ว +1

    Dude, I work in cybersecurity and this vid legit helped me understand technical aspects of my job. Wtf is this.

  • @Razoid501
    @Razoid501 ปีที่แล้ว +3

    I am ungodly early to this video but I've been waiting for this

  • @Teneombre
    @Teneombre 7 หลายเดือนก่อน

    I'm happy to see I figured out a few of the trick there by myself. I always thank that the clock was a monstrosity to do in factorio and never actually tried to use it. Thanks to prove me wrong!

  • @Bearly_Coping
    @Bearly_Coping ปีที่แล้ว +6

    I feel threatened by this man.

  • @calebmcleod4089
    @calebmcleod4089 ปีที่แล้ว +1

    Thank you so much Dosh for tutorials like this. At times my lack of coding background (although I do know some logic) limits my ability to use the right terminology when asking for the answer to a question, this gives me a solid floor to at least start on, much appreciated.

  • @omerfarukaydn9281
    @omerfarukaydn9281 ปีที่แล้ว +4

    HOW TO CIRCUIT: BASICS

  • @felixfelicitus2411
    @felixfelicitus2411 10 หลายเดือนก่อน +1

    Currently making a fully automated loader/unloader train stop, which is turning out to be more complex circuitry than I've done before. Your data sanitization section gave me what I needed to make it work, ty ty. Such a simple concept, ultimately, but it's hard as fuck to figure it out when you're just experimenting around with combinators.

  • @viktort9490
    @viktort9490 ปีที่แล้ว +5

    To work with 16 colors, can you add 16 to every values with a constant combinator and add 16 to the "request" of every inserter ?

    • @livedandletdie
      @livedandletdie ปีที่แล้ว +1

      The biggest problem with that is you have to do more math each step of the way.

  • @asdfasdf-dd9lk
    @asdfasdf-dd9lk ปีที่แล้ว +1

    I absolutely love this, good work man !

  • @AFlyingBird702
    @AFlyingBird702 ปีที่แล้ว +3

    LET'S GOOOO

  • @Smertyuk
    @Smertyuk ปีที่แล้ว +1

    Thank you, this video helped me simplify my multiple ore input demand controlled smelting array logic. Seriously, it's way more helpful than the wiki page.

  • @Wespdx
    @Wespdx ปีที่แล้ว +4

    NOT THE ORPHAN OXEGEN SUPPLY!!

  • @Cecil_Augus
    @Cecil_Augus ปีที่แล้ว +2

    Finally. After watching the space exploration 3x, krastorio 2 3x and the bean madness 2x, a new video!
    (usually I watch doing something else, so its easy to re-watch wout getting bored)

    • @Atomy111
      @Atomy111 ปีที่แล้ว

      Get ready to rewatch everything again 😂

  • @Sgnolbo
    @Sgnolbo ปีที่แล้ว +2

    This video has me deeply concerned for my liver, as my drinking game for this channel involves drinking everytime I hear the phrases 'constant', 'combinator', or 'constant combinator'.

  • @fjiordor
    @fjiordor ปีที่แล้ว +1

    Chapeau!
    I am in awe how you manage to move from simple to complicated at an even pace this video while integrating previously introduced concepts into more complex systems.
    Many lecturers I had in university were significantly worse at this that you.

  • @dungewar
    @dungewar ปีที่แล้ว +1

    O k. I'm giving up on trying to understand this wizardry.
    Literally the most brain melting Factorio content for me throughout my 1000h of playing.

  • @CFHoneyBadger
    @CFHoneyBadger ปีที่แล้ว +2

    Whew. Amazing tutorial! Definitely one of the more helpful and advanced one's I've seen.

  • @NJP695
    @NJP695 2 หลายเดือนก่อน

    When I first got into Factorio and discovered the circuit system I immediately went to go make a clock. Somehow, my minutes kept doubling while everything before that was fine, so now i'm here to see what went wrong. Thank you

  • @dzuchun
    @dzuchun ปีที่แล้ว +1

    I'm really graceful anyway for you showing basics of Factorio combinators. I'm unlikely to start a new playthrough soon, but I feel that these ideas are kinda universal, and should have applications beyond Factorio

  • @vikenemesh
    @vikenemesh ปีที่แล้ว +1

    Oh my, a big video about circuits from dosh.
    You're actually right on time for me with this one: My Seablock base outgrew its own rail network and i need circuit fuckery to accelerate the existing junctions near the depot...
    I also wanted to dabble with Recursive Blueprints for extending the island automatically and need a programmable control unit for the deployer...
    Very much appreciated, dosh!

  • @joaolucasvieira2979
    @joaolucasvieira2979 ปีที่แล้ว +1

    Wow this popped up when I was rewatching space exploration (all three videos) for the fifth time, great timing!

  • @benediktkraas8576
    @benediktkraas8576 11 หลายเดือนก่อน

    Holy fudge, this was amazing! I made it to the end and will now never be able look at something seemingly magic in Factorio again and take for granted that it works. And I feel like at this point I understood about 40% which given I had little to no idea about combinators etc. but only most of the theorhetic concepts behind I find to be a good percentage. The first half of the video was better, deeper, more comprehensible than any other tutorial, blueprint, trial and giveup I have ever watched, reverse engineered and nuked respectively. All of that complex stuff explained in a halfway bored and halfway sarcastic voice was the icing on the cake. Amazing this is available for free for me to consume and break my mind over. Thank you!

  • @davebooks792
    @davebooks792 ปีที่แล้ว +1

    This is gonna be a video I need to watch a few times to fully absorb everything, but it will probably be more effective than the last 3 years of me trying to understand circuits.

  • @illich1010
    @illich1010 ปีที่แล้ว +1

    It's a masterpiece. I couldn't stop watching

  • @Huntracony
    @Huntracony 8 หลายเดือนก่อน

    Now _that_ was a good tutorial followed by a fun project. I think I now sufficiently understand Factorio circuits to start doing some (less) cool things of my own.

  • @iNezerroth
    @iNezerroth ปีที่แล้ว +1

    There is a trick to coloring lamps withouth extra filters. When you input negative value color into the lamp, it does satisfy activation condition, but color precedence prefers positive value over negative. I.e. if you want your lamp to be red, but you also have blue color in your circuit, you just have to make it negative for the lamp to be red. This is useful for flashing different colors.

  • @wpshadow
    @wpshadow ปีที่แล้ว +1

    Thank you a lot for this examples... I managed to complete my basic logic for my new base through your tutorial... It is awesome, thank you so much!

  • @clreyawesome3527
    @clreyawesome3527 8 หลายเดือนก่อน

    as a programmer, I can confirm that holy crapola. that algo can rithm.
    honestly glad to see just how the circuitry works and might end up tinkering with said circuitry in factorio.

  • @commandercyris
    @commandercyris ปีที่แล้ว +2

    I like your funny words magic man.
    But, fr very informative and a great explanations and examples, I’m gonna give something like this a try next time I hop on factorio.

  • @chrishorn9372
    @chrishorn9372 8 หลายเดือนก่อน +1

    That was amazing to see what you and a few Factorio circuits can make. Got to love the power of binary math.

  • @khloeprower6087
    @khloeprower6087 ปีที่แล้ว

    I'll be honest, I loved watching this video to listen to you talk. I will probably be using none of this in my factorio builds and can't even be sure my tiny brain absorbed any information at all.

  • @forban3738
    @forban3738 ปีที่แล้ว +1

    I think I actually understood most of it and if that's the case it will realllllly help me and my friends for our space exploration game! Thanks you so much for those tutorial of yours!

  • @blunttongs
    @blunttongs ปีที่แล้ว

    This is the kind of content I love. Building some highly-specific contraption for an incredibly mundane and not particularly practical use in the name of fun.

  • @procurement3681
    @procurement3681 6 หลายเดือนก่อน

    I'd have a lot of trouble remembering what all these things did during the building process even if I knew circuits inside and out. Impressive build!

  • @marv1373
    @marv1373 5 หลายเดือนก่อน

    This is absolutely insane. great job !

  • @mooj269
    @mooj269 ปีที่แล้ว +1

    this video will make me a whole lot smarter in my own special little way

  • @jettspyder
    @jettspyder ปีที่แล้ว +1

    a little vine boom sound effect plays in my brain every time you mention something I've studied as an ee major

  • @sashavaleria4287
    @sashavaleria4287 ปีที่แล้ว

    Ah yes, me, coming home from coding low level c for hardware simulation of space craft, sitting down to watch 'how to code even lower level hardware simulation for text displays'. Thanks dosh, you're the greatest!

  • @gawarwawar2481
    @gawarwawar2481 ปีที่แล้ว

    I will need to watch that several times, so many insights, so many cool tweaks, that I cant fully understand after watching it only once :D

  • @KravityGECK
    @KravityGECK ปีที่แล้ว

    I did NOT expect the Amogus. Well played.

  • @samuelemmert5136
    @samuelemmert5136 ปีที่แล้ว +1

    You made me actually cackle aloud with that brick drop at the end, bravo

  • @aliz1231
    @aliz1231 10 หลายเดือนก่อน

    Is this like Electronic Engineering class disguised as a Factorio guide? I understood nothing but I love it.

  • @olivevento6478
    @olivevento6478 3 หลายเดือนก่อน

    It’s amazing how he was able to visually demonstrate and explain autism like that