I Made 2048 with just Redstone!

Поділитися
Вставка
  • Опубліковано 21 лис 2024

КОМЕНТАРІ • 1,6 тис.

  • @mattbatwings
    @mattbatwings  2 роки тому +1197

    Thanks for watching! Let me just put a few things here that might address what you're about to comment about :)
    "1 in 9 instead of 1 in 10? Couldn't you just combine a 1 in 5 and a 1 in 2 with an AND?"
    Yes, yes you could! I didn't think of that at the time.
    "The 'open row, empty spot' method is not a uniform distribution."
    That's completely true, and this is something I knew about while making it. I thought that since the game is symmetrical, it wouldn't matter, and it would approach a uniform distribution in infinity.. but this is false! The distribution is unfortunately heavily determined by your playstyle. If more of your moves are down than up, then the distribution is heavier towards the bottom. Great catch guys!
    Now that I think about it, I think it might be impossible to have a uniform distribution for every case. 0 thru 9 empty spots can be done with shulker box randomizers, and you can get some values from 10-16 by combining smaller values together, but 13 is prime.. Is a 13 way uniform distribution circuit possible in minecraft? Does anyone know?
    Thanks again for the support, and I'm glad you guys are so interested in the video! :))

    • @savageraccoon787
      @savageraccoon787 2 роки тому +57

      This comment isn't pinned yet.

    • @mattbatwings
      @mattbatwings  2 роки тому +78

      @@savageraccoon787 Thanks lol

    • @savageraccoon787
      @savageraccoon787 2 роки тому +14

      @@mattbatwings lol

    • @zippingrat6563
      @zippingrat6563 2 роки тому +36

      Does the game chek if you lose? Can you reset it?

    • @mattbatwings
      @mattbatwings  2 роки тому +87

      @@zippingrat6563 It does not check explicitly, but you won’t be able to move, so you’ll know. And yes, there’s a reset button that you can use at any time.

  • @The_Horizon
    @The_Horizon 2 роки тому +2369

    loved feeling stupid after watching this :)

    • @pierdolsieszmato.
      @pierdolsieszmato. 2 роки тому +45

      Didn't expect you here, it's nice to see 2 my favorite Minecraft youtubers in 1 place

    • @Ellieisme1234
      @Ellieisme1234 2 роки тому +8

      Same I feel dumb too

    • @dronko-fire-blaster
      @dronko-fire-blaster 2 роки тому +3

      same

    • @ajbs_alexo_713
      @ajbs_alexo_713 2 роки тому +42

      You feel stupid
      *says the guy that has crashed several P2W servers with genius lag machines and duping methods*

    • @The_Horizon
      @The_Horizon 2 роки тому +24

      @@pierdolsieszmato. wait till you see both of them in another place

  • @sebastiansosnowski3859
    @sebastiansosnowski3859 Рік тому +89

    Im very impressed with the fact that redstone builds these days are very close in concept to integrated circut designs

  • @okboing
    @okboing 2 роки тому +3194

    this dude just checks every single box, posts regularly, has good content, explains how the things work really well, there isn't a single thing to hate about you man

    • @mattbatwings
      @mattbatwings  2 роки тому +269

      thanks rainbow :)

    • @Kesuaheli
      @Kesuaheli 2 роки тому +38

      This ^

    • @Sfn2.0
      @Sfn2.0 2 роки тому +65

      also awesome voice, smooth transitions, good humor and high editing quality overall ♥

    • @danisob3633
      @danisob3633 2 роки тому +21

      u shouldnt be looking for things to hate xD.

    • @golemofiron7250
      @golemofiron7250 2 роки тому +6

      Other than not being able to do it on Xbox because mods and Java

  • @isuckatclicking200
    @isuckatclicking200 2 роки тому +7

    This man could be an engineer, but he picked this.

  • @CraftyMasterman
    @CraftyMasterman 2 роки тому +1231

    will say it again, this is my new favourite redstone series i can feel my brain expanding

  • @AndreasHontzia
    @AndreasHontzia 2 роки тому +384

    I have a major in computer science, played Minecraft since beta, and 2048 when it came out. The approach is really good. Well done! You are awesome! I wonder how hard it would be to create a programming language that compiles to redstone. I have written compilers at University, but never designed a custom programming language. You can build a NAND gate in Minecraft, so this should be possible. Oh, my fingers are itching, but I don't have the time.

    • @blackbriarmead1966
      @blackbriarmead1966 2 роки тому +28

      I think this is more in the domain of electrical engineering. And that programming language you are thinking of is VHDL. I've heard of projects that can turn verilog into redstone, but it's wildly inefficient compared to what designing a circuit by hand can do. There is so much complexity in redstone, it's basically impossible to directly convert code into a working, fast redstone circuit unless the thing you're making is extremely regular in structure. There are 3d routing problems, timing issues, etc. Maybe if the components are well defined and a genetic algorithm is used to optimize the placements of the components, but that sounds really hard as well

    • @trainsis8317
      @trainsis8317 Рік тому +8

      @@blackbriarmead1966 if you cand build an algorithm to generate a 3d array of every gate and combinors, its doable

    • @CrystalLily1302
      @CrystalLily1302 Рік тому +11

      @@blackbriarmead1966 As an electrical engineering student who just finished a class on HDL and digital circuit design, the issue would really be that redstone operates under different rules and routing restrictions than what any HDL and synthesizer are meant to work with so you would need to basically create a new form of HDL and a completely uniqe synthesizer if you wanted it to be efficient at redstoning

    • @Fudgaroni
      @Fudgaroni Рік тому +2

      He actually made an entirely programmable computer, but it uses assembly or whatever it's called

    • @theforeskinsnatcher373
      @theforeskinsnatcher373 8 місяців тому

      I mean "compiles to redstone" could mean a lot of things. I dont think turning code directly into redstone builds is feasible, unless you generate the builds by a very scheme like taking some basic building blocks for logic gates and putting them together. But this will be very inefficient. A more realistic approach in my opinion would be to build a general purpose cpu and then have creating a program that can compile higher level code into the CPUs ISA. THis has already been done before, and scripts to programm read only memory like this exist. But again, since redstone CPUs are usualyl very limited it makes more sense to code in assembly directly instead of trying to create a compiler for it.

  • @meqs
    @meqs 2 роки тому +261

    Didn’t unterstand anything, but really impressive! 😂😁

    • @mattbatwings
      @mattbatwings  2 роки тому +32

      Thanks!! Feel free to make a short on it:))

    • @ParakeetDSi
      @ParakeetDSi Рік тому +2

      Take the time to learn Redstone

    • @jacobcraft3497
      @jacobcraft3497 11 місяців тому

      I somehow knew exactly what he was saying

    • @GameRoMan
      @GameRoMan 8 місяців тому

      @@mattbatwings Make a tick-tack-toe and 4-in-a-row games

  • @inconspicuoususername
    @inconspicuoususername 2 роки тому +9

    In a similar project, I actually devised my own solution for the random tile chooser: I made a loop of hoppers that represented each space, locked all the ones that represented empty spaces, and waited for a singular item within that hopper loop to get trapped.
    It's overcomplicated, atrociously non-uniform, but I'm still proud of figuring out SOMETHING all on my own as a relative-novice in redstone.

  • @luckylluck2
    @luckylluck2 2 роки тому +444

    One minor bug is that the tile choosing for the new 2 (or 4) is not really uniform. In the example at 10:24 the upper two open tiles have a ~33% chance each, while the lower two open tiles only have a ~17% chance.

    • @mattbatwings
      @mattbatwings  2 роки тому +167

      What a keen observation! That’s very true and I should have mentioned that.
      I feel like it should still approach uniform in infinity though, right? So not really a bug?
      Edit: Nevermind, check my pinned comment!

    • @Ellieisme1234
      @Ellieisme1234 2 роки тому +16

      I dont even know what this guy means

    • @M_1024
      @M_1024 2 роки тому +26

      @@Ellieisme1234 in the original game all tiles have the same chance to be selected, he made a bug that makes some tiles more frequent than others

    • @baactiba3039
      @baactiba3039 2 роки тому +8

      Love how the timestamp was 10:24

    • @M_1024
      @M_1024 2 роки тому +2

      @@baactiba3039 me to

  • @haph2087
    @haph2087 8 місяців тому +3

    You can still use a 7 segment display, you just have to tile it differently. Rather than having 7 segment displays with 1 block in between each copy, build 7 segment displays with -1 blocks in between each copy. That is, to have each tiling overlap by 1 block. Conveniently, since the block powering arrangement of 7 segment displays is symmetric, the wiring does not immediately conflict.
    Now I wanna go build one.

  • @wmpowell8
    @wmpowell8 2 роки тому +612

    ruining Matt’s life:
    - the maximum possible tile in 2048 is 131,072 (2^17)
    - choosing a random row then a random cell in that row does not favor each cell equally; it favors cells in rows with less tiles

    • @shanewalsch
      @shanewalsch 2 роки тому +2

      Why tho?

    • @samlaenen8209
      @samlaenen8209 2 роки тому +85

      @@shanewalsch I explained it in a comment of my own, here it is (why tiles in rows with less open ones are favored) : This is really impresive, but I really hate your rng. When chosing rows 1st, than columns really messes up the equal chances of it choosing each box, let's say in the most extreme case: only 2 rows are left, 1 with 1 open space and the other with 4, since you chose the row 1st they both have about 50% chance or 1/2. Here's where it get's bad, when you chose a column now in the row with 1 box has 100% chance if it was chosen, but in the 4 open space row has only have a 25% chance or 1/4 of getting picked. This results in 1 box with a 50% chance rate and 4 boxes with a 12.5% chance rate.

    • @shanewalsch
      @shanewalsch 2 роки тому +4

      @@samlaenen8209 okay, thanks for an explanation

    • @Jwellsuhhuh
      @Jwellsuhhuh 2 роки тому +10

      @@samlaenen8209 this be some Monty hall shit right here

    • @vinicus508
      @vinicus508 2 роки тому +12

      @@samlaenen8209 That's a pretty good explanation. Probability is so damm counterintuitive lmao.

  • @vinicus508
    @vinicus508 2 роки тому +10

    12:44 that's literally my greatest fear when it comes to redstone (and I'm also finding out that its also the case as an engineering major lmao), the components works beatifully on their own but wiring them all up together sometimes is so fucking hard. I just love how much minecraft redstone can challenge your brain into solving problems. You explained it beatifully, and I loved the strategy of coding it in some programming language first to get confortable with the algorithm.

  • @romanlegion5837
    @romanlegion5837 2 роки тому +1

    You explain all of this so easily to the point where I both understand everything you’re saying and yet have no idea

  • @Minecraft-3699
    @Minecraft-3699 2 роки тому +59

    Amazing how you are able to describe these things in a way that people with even a basic understanding of redstone can actually kind of comprehend what is going on, sort of demystifying these massive complex structures

  • @zoriathevoidmage
    @zoriathevoidmage 2 роки тому +3

    1:48 When he cuts to "Alright I made the ROM lines" is the equivalent of "So I did some off camera mining and did a bit of building. Also I killed the Ender Dragon, but my footage got corrupted, so here's the achievement to prove it."
    It's hilarious though and i love it

  • @TrideGD
    @TrideGD 2 роки тому +161

    Seeing the process is super interesting, now I see why the Redstone is so big lmao

    • @deaddoctor
      @deaddoctor 2 роки тому +13

      i really didn't exprect you here

    • @DeLittleCat
      @DeLittleCat 2 роки тому +6

      @@deaddoctor I also didn't

    • @JasminUwU
      @JasminUwU 2 роки тому +5

      Most of it is just the nice looking screen

    • @etmezh9073
      @etmezh9073 2 роки тому +9

      why is a gd user here ???????????/

    • @fryen_
      @fryen_ 2 роки тому +3

      @@etmezh9073 to be fair, they do both have cubes

  • @halal_gaming2010
    @halal_gaming2010 10 місяців тому

    I love how matt doesn't just make the thing but will proper go in detail and tell them what is going on and even try to put it in a simpler way

  • @Ddeletham
    @Ddeletham 2 роки тому +77

    Just amazing how you handle these giant circuits without giving up or messing up so much you have to start over. It's just not in it for me, but I usually tried to make everything myself. Maybe that was my mistake.
    So to complete the game there's only a few things missing:
    Add a lamp that turns on when you first get a 2048 to show "win" condition and some way of stopping the game when you lose ^^
    Additionally what would be really useful would be a noob button to revert one stage, but only one stage. (Would probably be annoying to implement, as it involves another layer of memory)

    • @mattbatwings
      @mattbatwings  2 роки тому +29

      Yeah a win lamp would be nice, but the cool thing is, you won’t be able to move when you lose, so you don’t need detection for it :)

  • @KingOreo2017
    @KingOreo2017 2 роки тому +10

    So many good things to say about this video! So many things I’ve been trying to learn about the fundamentals of computers clicked while watching this, and it was nice to see your thought process in the video. When I first saw this in my recommended, I figured you used command blocks and I was still impressed. Instant Minecraft classic video

  • @c8t9yt
    @c8t9yt 2 роки тому +16

    I love how you just said "ok I just made a bunch of ROM lines" like you just crafted a bunch of leads. You made it sound WAY less complicated.

  • @calebmalcarne5873
    @calebmalcarne5873 2 роки тому +2

    Electrical Engineering student here, this is legit engineering, like, you could take some of these principals and do this in real life, very impressive

  • @ETCubing
    @ETCubing 2 роки тому +30

    Im so glad you did this project, a few months ago you actually inspired me to try this. I'm a pretty avid 2048 player so this game came to mind when i wanted to build some sort of computer in minecraft. I ended up giving up on the project since it was a bit too much of a task for me. I didn't want to make any compromises when making the game, meaning I wanted to make it functionally identical. So I wanted the random tile generation to be as random as possible, your system works and is quite ingenious but the distribution is nowhere close to a perfectly random distribution. I ended up making individual circuits for choosing the position of a random tile for each case, (one empty space to fill, 2 empty spaces to choose from, 3 spaces... to 14 spaces, choosing 1/13 chance with redstone was quite difficult but I got a system that closely approximates 1/13). I also kept it as a 1/10 chance for a 4 tile to randomly generate even though 1/9 was much simpler. The thing that stumped me was the tile merging and how to store the memory for each tile. Now you covered the edge case for merging 2 2 4 4 merging to 0 0 4 8, but there's also the case of 2 2 2 2 that would merge to 0 0 4 4. And I couldn't figure out a way to make a general merging circuit that would correctly handle both, let alone figuring out how to fit 4 of them for each direction. The last compromise I didn't want to make was that I didn't want to limit my game to only the 8192 tile. so I made a display (very similar to your chess board display) to handle up to the 65536 tile since that is (for all intents and purposes) the highest achievable tile by a human player, and that would require 17 different memory states meaning I couldn't use signal strength. Like I said before I ended up giving up on the project, and I'm super glad to see you delve into making 2048 in redstone though not quite functionally identical to the original game. Well done and who knows, if I ever get back into minecraft I may take a stab at it again with some of your ideas which should make the process easier a second time around.

    • @mattbatwings
      @mattbatwings  2 роки тому +10

      I also found prime numbers (above 9) to be really hard. I tried a very similar method to yours off screen and scrapped the footage. Numbers like 14 can be made by combining a 7-way and a 2-way randomizer, but those primes man.. Super happy to inspire you and hope you can finish it one day! Get help from my discord too if you want!

    • @ETCubing
      @ETCubing 2 роки тому +8

      ​@@mattbatwings Using upwards pointing droppers filled with stackable and unstackable items into downward facing hoppers with a comparator reading it. a circuit that will have a random chance at letting a redstone pulse pass through:
      My closest attempt to a 1/11 circuit was [ (2/5 AND 2/9) OR (1/2 AND 1/9 AND 1/5 AND 1/5) ] with a real chance of 1/10.99945
      And my best approximation of 1/13 was [ (2/3 AND 2/5 AND 2/7) OR (1/6 AND 1/6 AND 1/5 AND 1/7) ] with a real chance of 1/12.99990
      Using more AND and OR gates between more dropper/hopper circuits could lead to more accurate approximations, but I figured having 6-7 droppers per circuit was practical enough for how accurate the results were to the number I was going for.

    • @madseskildsen3915
      @madseskildsen3915 2 роки тому

      A quick correction, I think that 131072 is actually the highest number but it requires 4 to be generated when you fill up the board the last time instead of a 2

    • @ETCubing
      @ETCubing 2 роки тому +1

      @@madseskildsen3915 I'm well aware, but the 65k tile is the highest possible tile that is realistically achievable, there has been much discussion about this in the 2048 community, the odds of even a perfect AI getting the 131k tile are astronomically low.

  • @kaz49
    @kaz49 2 роки тому +1

    These videos really show how complicated computers are. That machine is HUGE!

  • @43615
    @43615 2 роки тому +5

    the "signal gravity"-based design shows a valuable insight: sometimes you need to stop thinking like a computer and use a simpler and more direct visualization/abstraction. the algorithm could also have been implemented using some crazy general-purpose logic machine, but that would be 10x the size for the same speed.

  • @preyrarny
    @preyrarny 2 роки тому +1

    This really reminds me of old sethbling videos in the best way possible

  • @greenstonegecko
    @greenstonegecko 2 роки тому +6

    HERE IT IS. I've waited a whole 5 days since your community post.
    It's 11pm on a saturday but idc. Thanks for the video!

  • @maxx2905-s4e
    @maxx2905-s4e 2 роки тому

    You are the only guy who uses the entire resources of a PC hardware by making most complex redstone stuff in such a way that even the GPU and CPU needs time to process your contraptions

  • @SiegeFriedGrief
    @SiegeFriedGrief 2 роки тому +44

    I'm sure you will one day have an amazing career in computer science.

    • @ishmalala
      @ishmalala 2 роки тому +1

      i mean the way he talks i feel like he is a cs student already. He talks in edge cases like i feel like he wouldnt talk like that if he only just knew some python

    • @CyCloNeReactorCore
      @CyCloNeReactorCore 2 роки тому +8

      @@ishmalala man codes a game in python, recreates that code in raw binary in minecraft, creates a literal computer.. i feel like CS is a given here

  • @lennartmael
    @lennartmael 2 роки тому +1

    What we learn in class: Turning on a redstone lamp
    What's on the exam:
    No, but seriously, this is so impressive! Keep up the amazing work!

  • @JonDaFun
    @JonDaFun 2 роки тому +24

    THIS IS SO AWESOME!!! I was considering making 2048 for a program in my computer but I wasn’t even sure how it’d work. You managed to pull it off with it being pretty fast (I’m assuming nothing was sped up)! I loved the walkthrough process of making this. And your video editing/spacing is just right! I hope to see more videos like it in the future 🤞👏

  • @notaprogamer8306
    @notaprogamer8306 2 роки тому +2

    It's so amazing to see what is possible with a block game.

  • @josiahneal7455
    @josiahneal7455 2 роки тому +22

    The way you explain everything is incredible! I've learned so much from this channel, keep up the amazing work!

  • @nostera5142
    @nostera5142 Рік тому

    I understand nothing about those circuits, I just am a casual redstone video enjoyer, and I like when the redstone confuses me but also captivates me. This one has the perfect balance of both. Bravo!

  • @Angie-dj1wc
    @Angie-dj1wc 2 роки тому +8

    this is hella impressive! and also your voice is really soothing for some reason haha

  • @blitzbuildz2312
    @blitzbuildz2312 2 роки тому

    bro I don't know anything about redstone or coding and this was incredibly entertaining, don't know how this channel isn't more popular

  • @Jolynor
    @Jolynor 2 роки тому +17

    This man is so underrated for how much effort he puts in his videos. He should be at 100k

  • @pikachu5664
    @pikachu5664 2 роки тому +1

    Im just gonna put it out there, if there was a minecraft video game contest between matt and mumbo jumbo, matt would no doubt come out on top

  • @nope-gx5vz
    @nope-gx5vz 2 роки тому +16

    you could do RNG using a 4 bit rom filled with random values, then use a clock and counter register to output one of those numbers depending on the register's value. this is very similar to using trig functions such as sin(x) and using the system time as an offset for rng. its a bit less clean than what you found but it is an interesting thought and the original doom supposedly used a list of random numbers for its RNG.

    • @mattbatwings
      @mattbatwings  2 роки тому +6

      very interesting! thanks!

    • @HansLemurson
      @HansLemurson 2 роки тому +1

      A "Linear Feedback Shift Register" is also another interesting option.

  • @alpercancakr6719
    @alpercancakr6719 Рік тому

    how is everybodys comments are this much calm This is the coolest thing ever. I didnt understand any part of what you're doing at all. Today you showed me mountains of knowledge and understanding that I always wanted to have but could not comprehend. huge respect to you my friend

  • @ATOM-vv3xu
    @ATOM-vv3xu 2 роки тому +26

    there is a very compact decoder that uses rails, you should search for it, its way smaller than that

    • @ATOM-vv3xu
      @ATOM-vv3xu 2 роки тому +2

      and you should have gamma 10 activated all the time

  • @anthonyvigoa563
    @anthonyvigoa563 2 роки тому

    I'm jealous of your knowledge,I spent literally 2 days making a timed closing and opening 4 layered door and you're out here making a small computer in a few hours

  • @neka5723
    @neka5723 2 роки тому +18

    It's incredible what can be made with simple mechanics you are incredibly smart, wonderful video and explanations keep it up!

  • @NSSignalGuy
    @NSSignalGuy Рік тому

    This is the one and only UA-camr that actually shows a decent amount of the building process of these monster red stone contraption’s

  • @calebhoff409
    @calebhoff409 Рік тому +3

    Your redstone builds are amazing, your earned another subscriber

    • @calebhoff409
      @calebhoff409 Рік тому +1

      And the video, you do a great job explaining and keeping me engaged

  • @naif2109
    @naif2109 2 роки тому +1

    I can feel my brain getting bigger, the video was amazing

  • @devonounapuu
    @devonounapuu 2 роки тому +4

    I really really like your new video style( now i can understand everything)

  • @jan_kulawa
    @jan_kulawa 11 місяців тому

    one idea I had for the random number generator is the same as used in the original Doom. just pre-generate a list of random numbers (within the range you want), and have a counter updated at every game tick which goes through this list. whenever a random number is needed, just output the nth number of this list, where 'n' is the counter's value at that moment. you can hardcode whatever function you'd apply to those random numbers into the list instead, and this is very fast. the downside is that you need a very long list for it to really "feel" random

  • @thefireox5595
    @thefireox5595 2 роки тому +13

    As usual, mattbat redstone best in these type of games :D

  • @justrad7637
    @justrad7637 8 місяців тому +2

    20:25 , no you SHOULD get another tile , thats how the game works

  • @devynsmith5280
    @devynsmith5280 2 роки тому +4

    Your extra definition popups are extremely useful. Such as "also known as XY plotter" and "also called a signal bit". Truly helps a lot. You are extremely thorough

  • @AzaleaTFG
    @AzaleaTFG Рік тому

    8:00 i am so glad you did that cause i don’t wanna see you struggle making a vertical circuit

  • @psykat777
    @psykat777 2 роки тому +17

    Hey, when is logical redstone #16 coming out?

    • @mattbatwings
      @mattbatwings  2 роки тому +10

      Not for a while, but I hope to eventually turn it into a CPU tutorial

    • @psykat777
      @psykat777 2 роки тому +1

      @@mattbatwings Cool! I'm still wondering on how to do the 8 bit multiplier, which I'll hopefully learn in that very last episode!

    • @user-Player530
      @user-Player530 2 роки тому

      @@psykat777 use the sequential multiplier for 8 bit, even though a CCA only works for 8 bits, there it no combo of numbers form multiplier input that make it unable to add.

  • @joshualiley
    @joshualiley 2 роки тому

    I think your best shout at even distribution is to use a combination of 2 different methods:
    1) If there are 9 or less squares available, use the trick you just did
    2) If there are 10 or more squares available, randomly generate a square from the entire grid, if it is occupied, generate another square until you get an available square. Since the majority of the squares in the grid are still available with this method, it shouldn't take too long to land on an available square

  • @JumpsPresents
    @JumpsPresents 2 роки тому +3

    Absolutely INCREDIBLE. Not only is this an above and beyond build in its own, the content itself is phenomenal. Explaining just about every step, cutting out the boring troubleshooting, great editing and commentary. I don't say this much, but this video is genuinely a 10/10, there is no way you could have done this video better.

  • @SENTRY456123
    @SENTRY456123 2 роки тому

    I thought you were doing everything from scratch before watching this video, wondering how it was made really, really quickly. This video taught me that it is not bad to -steal- borrow someone's idea.

  • @RexxStone
    @RexxStone 2 роки тому +6

    This is so clean!! :D Good job man, great stuff as usual :)

    • @RexxStone
      @RexxStone 2 роки тому +1

      Also still love that format! Sooo informative!

    • @mattbatwings
      @mattbatwings  2 роки тому

      Thanks so much bro!

  • @rubensf7780
    @rubensf7780 Рік тому

    This is one of my favourite matbatwings videos of all time. It’s so fascinating, easy to understand, educational and enjoyable. Thank you for this video!

  • @IdkDom
    @IdkDom 2 роки тому +5

    I have never seen this amount of dedication and work for anything like this. The hours and time you put into these projects is amazing, especially considering your channel isn't absolutely massive. Big props to you and keep doing what you do!

  • @ast88888
    @ast88888 5 місяців тому +1

    if you have 2 open rows, one with one empty slot and the other with 4, then the one with one empty slot will have a 50% chance of being chosen, rather than a 20% chance, therefore it is not perfectly random.

  • @sjege
    @sjege 2 роки тому +3

    This randomly showed up in my recommended and couldn't be happier.
    I felt nostalgia for the greats of old, like Sethbling cubehamster and qmagnet, but also found that your way of explaining the circuit is much better!

  • @IroAppe
    @IroAppe 2 роки тому

    Wow, it's so good to see how the progress is. What your thoughts are at each step. How to not confuse yourself with everything at once, but tackle everything with small baby steps, and then assemble up from there. How neatly organized and modularized your circuit is. You showed us the little bugs and downs that happen during development. And finally, we got treated to a nice showcase! Great video! You do it very well.

    • @IroAppe
      @IroAppe 2 роки тому

      And, since 2048 is so easy to understand for everyone as a game. This will probably be the best video I can show to unrelated people. How we can apply logic via Redstone. Share my fascination. With 23min it has a great length.

  • @anthonycannet1305
    @anthonycannet1305 2 роки тому +16

    Not 100% certain about how those gravity circuits work, but wouldn’t it be faster if those circuits each always calculated the board state after their move as soon as the board gets updated, then just grab whichever state you need? In other words, the “up” circuit would always hold the current board + up, then when you select the up move the current board changes to the “up” circuit’s output. If I’m understanding the system correctly, pushing the up button means you send the board to the specific circuit, wait for it to calculate, then grab it’s output into the board. If the up circuit is always calculating the up move immediately, then pushing the up button just means you wait for the current board to match the up circuit’s output, then display it, and then the next up move is calculated. There’s less time between pushing the button and updating the screen. Really it’s just changing the phase in the system’s cycle. Instead of (send, calculate, receive, display, repeat) It’s (receive, display, send, calculate, repeat).
    I think the way to implement that change would be to have the gravity circuits always receiving the board state, but having their inputs and outputs blocked by repeater locks. When you try to receive from one of the four, it’s input gets locked and it’s output gets unlocked. That way it doesn’t try to update itself while the board is changing, but at the same time the other 3 circuits automatically get the new board state and calculate their moves. Once the board is loaded correctly, the repeater locks go back to normal (locked output, unlocked input) and the circuit then calculates the next state for that move. While it calculates that, the memory is also sending the board state to the display so it basically merges the two steps (send and display) to happen at the same time, which should theoretically make it run faster.
    Of course none of that is possible if those four move circuits can’t receive continuous input…

    • @mattbatwings
      @mattbatwings  2 роки тому +16

      Great comment!
      Changing the cycle of the phases could definitely speed things up. Parallelizing the sending of the board specifically is definitely faster than my method.
      The 4 compressors can indeed receive continuous input! You can send to all 4 compressors at once by placing them all under the board like a stack of pizza boxes, and using the "blue spiral circuit" to repeat main memory to all of them at once. Then the board could get retrieved using the method you described, with another set of spirals going up.
      Damn you, now I want to remake it!

  • @will9186
    @will9186 2 роки тому +1

    What a video! You’ve got my subscribe :D

  • @gigmo1235
    @gigmo1235 2 роки тому +4

    keep up the great work 💪💪

  • @rwolterbeek
    @rwolterbeek 2 роки тому

    Just amazing, I absolutely adore 2048, played a few matches to the max score possible on a 4x4 board (65.536 without insane luck and 131.072 with insane luck) and this is just the best of both worlds!

  • @calculatedrisk5463
    @calculatedrisk5463 2 роки тому +13

    Have you ever considered using a flow chart to explain your ideas? They are very helpful in breaking downs tasks to simpler parts

    • @mattbatwings
      @mattbatwings  2 роки тому +8

      Yeah, I use those sometimes, they may not be the typical flow chart but for example the animation with the board moving is a flow of the tasks in this video

  • @TSPxEclipse
    @TSPxEclipse 2 роки тому

    Imma be honest man, idk how this channel isn't at the same level as or higher than Mumbo yet. And after seeing the integration of Python for visualizing what kinds of circuits you would need is a level of genius I would have never thought of and will absolutely be using for any redstone contraptions I'll use in the future. This video makes me also want to extend this concept into the real world and try to make a physical version of 2048 (even though there are probably several others that have done that before)

  • @poggertroll
    @poggertroll 2 роки тому +6

    so hyped for the year 2048

  • @Speed001
    @Speed001 Рік тому

    I can feel my brain getting bigger just watching this
    21:12 "I've been playing around for a few hours" then showing your different attempts, that's a blast of nostalgia for me.
    Also restarting and making a better (display) system, lol.
    Subbed

  • @BeefandCheese
    @BeefandCheese 2 роки тому +6

    I understood this up until the 5th minutes, so you're doing a great job!

  • @LogicraftRedstone
    @LogicraftRedstone 2 роки тому +1

    Wow, very well done! Thoroughly enjoyed you taking us through your journey to build this, awesome work 😎

  • @mememaster7786
    @mememaster7786 2 роки тому +4

    Mattbatwings in 2025: makes a working NASA-computer

  • @ImIcterine
    @ImIcterine Рік тому

    Hello! I have been working on 2048 but with command blocks. I was so confused because i didnt know how 2048 works. When i heard you explain compress, merge and compress, it was a lot easier. Thanks for the help!

  • @oly1325
    @oly1325 Рік тому +4

    Me trying to make a redstone door

  • @josicx2507
    @josicx2507 Рік тому

    I honestly don't understand a thing in this video, though I find it extremely stunning to watch you build this stuff. Well done!

  • @TechnoSpirit
    @TechnoSpirit Рік тому +2

    Super cool video! I just want to say that a little piece of …. copied your map and used in one of his videos without crediting you. And this unfair

  • @thinkublu
    @thinkublu 2 роки тому

    It's really interesting how redstone physically represents code, logic, and circuitry - I find it so fucking cool

  • @OskarP2601
    @OskarP2601 2 роки тому +9

    thats cool. now make call of duty.

  • @Lexalyss
    @Lexalyss 5 місяців тому +4

    who’s watching this in the year 2048 😂

  • @DerDevil1998
    @DerDevil1998 2 роки тому

    What a cool idea! I love these pure redstone old school Minecraft videos lol.
    I would have done the user input a bit different. A glass floor directly above the display combined with 1 block high tripwire hooks surrounding the player (all 4 directions), lets a player input commands in the direction he is walking. (the lengths of the tripwire can be adjusted so the tripwire hooks, and the block they connect to, dont block the view). Then the Player doesnt need to aim for these small buttons, and he can continously observe the display without the need to interrupt his focus. I havent tested this suggestion so I dont know how practicable it is.
    Also bonus challenge: Add a button to reverse the last move you did.

  • @fredjerik6592
    @fredjerik6592 2 роки тому

    this guy is insane. i played a lot of minecraft in my life but never got into redstone. I knew the basics but that was it. But wow you really make me wanna play more again.

  • @gybody4653
    @gybody4653 2 роки тому

    I have no idea what you're talking about but i am enjoying every moment of it

  • @_fudgepop01
    @_fudgepop01 2 роки тому

    Whatcha said about reusing stuff and not reinventing the wheel at around 5:30 is SUCH GOOD KNOWLEDGE - very well said too!!~
    Great content dude! Glad the algorithm (praise be) showed me this stuff today :3

  • @joepspaanjaars1435
    @joepspaanjaars1435 9 місяців тому

    I really liked it when you said it's okay to use other peoples stuff instead of wanting to figure it all out by yourself. Every piece of todays tech is made possible by many generations of wisdom build upon eachother.

  • @HACSSuperbMiner
    @HACSSuperbMiner 2 роки тому

    DUDE how have I just now found this channel? I love working with displays, ROMs, and computer irl and you do all those things in Minecraft! Amazing video and content, pal! You’ve earned a sub!

  • @realryleu
    @realryleu 2 роки тому +1

    I think test-driven development would be super useful for your Minecraft builds, It's probably worth looking into.

  • @elwivi663
    @elwivi663 2 роки тому

    Even tho I don't understand a single thing in this video you still somehow make me watch the whole thing, amazing stuff

  • @uzakikun606
    @uzakikun606 9 місяців тому

    Bro you actually got me so interested in redstone, is there a video explaining all the basics that can get me started?

  • @YoxiiPlz
    @YoxiiPlz Рік тому +1

    This is really so incredible amazing, you can literally make whatever you want at this point in Minecraft!

  • @L1NEr3
    @L1NEr3 2 роки тому +2

    Dude your like my new idol.
    Your good at Redstone and coding 2 things I'm not but want to invest time into you are so talented

  • @Jmonsky
    @Jmonsky Рік тому

    One thing that would be cool to do, is since your move / merge logic is independent for each possible input, to calculate each move each time, and then only copy the result of the chosen one into the game state. I believe this would make it more responsive since it would update much faster after the button press, with the logic all happening on the back end. Maybe add a gate to the inputs to allow a "queue" of inputs that it only pops from when the cpu is done calculating. Just a thought, but awesome video!

  • @NeptuneMood08
    @NeptuneMood08 2 роки тому

    i like 2048 and love Minecraft but never thought to merge them
    this clearly took a lot of work, but it turned out successfully
    good job and thanks for your hard work

  • @DatBoi_TheGudBIAS
    @DatBoi_TheGudBIAS Рік тому

    Not only did u blow my mind by making something like dis with Redstone, U also exploded my ears with Dat last banger of an edit

  • @evangrove599
    @evangrove599 2 роки тому

    you're criminally underrated my man. Video quality is insane for just 30k subs. Keep it up the numbers will follow.

  • @Lordstrike72
    @Lordstrike72 2 роки тому

    This is absolute wizardry and my jaw was on the floor the whole video. Well done sir

  • @loucurador
    @loucurador 9 місяців тому

    Very cool congratulations! But in my opinion, the screen would look much better vertically, I understand why the logical/operational part is horizontal, but that doesn't stop the screen from being vertical, with this simple change the game would be visibly more pleasant, the aesthetics better, and easier to play.
    Just an idea.
    Taking this opportunity to say that your videos are very informative and fun. Thanks ! 🤩

  • @h8rsbeware496
    @h8rsbeware496 2 роки тому

    ok. what.
    you just.... made that look like an everyday project... thats talent

  • @sargentgullible2794
    @sargentgullible2794 2 роки тому

    What makes this kind of thing insane is that it's theoretically all possible to build in Survival. You just need a LOT, and I mean a LOT of supplies to build the damn thing.

  • @TraeKryzer
    @TraeKryzer 2 роки тому

    This is really cool! I could totally see it being hooked up to pressure plates and pushing you back with pistons, that way you could constantly view the board and just use the keyboard.