2024-10-16 05:43:00
www.pcgamer.com
Minecraft is what you make of it. If you want to build a tower base, you can. If you want to build an underground lair, you can. If you want to lock up the local villagers inside said underground lair and keep watch over them like a creepy zoo, well, you can do that too. If you’re really clever about it, you can create entire computer systems out of basic blocks and redstone.
Most Minecraft players have probably tinkered with a little redstone here or there—the wonder material that can be pounded down into dust and act as a sort of conductor-cum-electricity source in the game. But likely nothing compared to this creation from Ryan Boulds, a student at Union University in Jackson, Tennessee.
Here’s a 32-bit computer built by Boulds. A gargantuan network of adders and gates repeating far off into the distance.
“There are 1,107,419 total blocks,” Boulds tells me.
That’s 545,538 quartz blocks, 10,859 glass blocks, 11,042 black concrete blocks, 3,272 redstone lamps, 7,460 redstone torches, 494,322 redstone dust, and 34,926 repeaters, to be precise.
Boulds started working with logical redstone while studying for his computer science bachelor’s degree. He says it all started “for the fun of it” as a way to explore the similarities between logic gates and redstone. These two fairly disparate concepts coalesce into something extremely impressive, something many creators have been exploring since the game’s release.
“I began to realize how similar redstone from Minecraft behaved to the breadboard.”
What Boulds was building on a breadboard in class—a plug-and-play electronics construction platform—he was also able to build in Minecraft. And it just snowballed from there. When one project was completed, he’d start an even more complex creation, with greater challenges to overcome.
This steady tinkering eventually led to this, a functioning calculator.
With his initial calculator design only able to add two numbers together, Boulds expanded the calculator’s capabilities with full addition, subtraction, multiplication, and division. The calculator could also be used to find the remainder of a division problem or a modulo operation. This project took around 300 hours to complete.
“So, how do I surpass building a massive calculator? My answer to that question was to build a 32-bit computer that I would be able to program with my own assembly language that resembles Arm assembly code.”
This is when Boulds first took to posting about his creations on social media, on the advice of his friends and classmates. It was a good move, too, as shortly after posting about his latest project, a functioning 32-bit computer, one of his videos has gone viral on TikTok with 15.4 million views.
“I honestly was excited when I received 200 views on TikTok. I never expected it to go viral considering that there are so many YouTubers that I consider to be much better at redstone engineering than I am.”
@ryan_boulds
♬ Archangel Chamuel Manifest Abundance & Love – Solfeggio Frequencies Sacred & Biosfera Relax
How does it work?
A complex network of AND, OR, NOR, NAND, XOR, XNOR, half adders, full adders, S-R latches, and more—it’s a lot to get your head around. More so when it’s not simple schematics and rather made using a mishmash of Minecraft blocks and redstone circuitry.
“As far as my Redstone computer is concerned, I can add, subtract, multiply, divide, modulo, Bitwise AND, Bitwise OR, Bitwise NOT, Bitwise XOR, Bit Shift Left, Bit Shift Right, Bit Rotate Left, Bit Rotate Right, find if AB, and find if A=B. It has 16 registers that can save 32-bit signed binary numbers,” Boulds explains.
Boulds sent over his basic plan and progress for the computer, as scrawled on a whiteboard in the traditional fashion of a computer science student. A slightly updated version includes a diagram (map?) of the creation, including RAM, program counter, ALU, cache, and even a functioning screen.
“I use the World Edit mod on Minecraft Java Edition. I keep schematics… to speed up the building process so that I do not have to build every single individual circuit repeatedly.”
The computer isn’t completed yet—there’s still a ways to go—though it’s possible to get a glimpse of how it works in practice in this video of the calculator. A few switches are hit, an array of switches in the distance light up in unison, and a screen shows what value is stored in each register. The computer will, if all goes to plan, be much easier to program than this, however.
The cascading symmetry and immaculate repeating circuitry are undoubtedly impressive. I asked Boules if this was intentional or inherent in the 32-bit design. Turns out it’s a bit of both. The adders are only 2 blocks wide and only one block is required to carry a signal, which means it can all be packed closely together on a Minecraft map.
“I built each component of the ALU in separate pieces, and I stacked them on top of each other to minimize the space that they took up. It is symmetrical now, but it was not always.
“Thank goodness World Edit has a move command.”
But there are limitations when building colossal creations in Minecraft. The biggest is what can be effectively ‘run’ in the game at any one time in the game, known as the simulation distance, which is capped at 32 chunks. Each chunk is a 16 x 16 x 384 area, which is a larger area than it sounds as it includes every block vertically in that 16 x 16 square, from bedrock to the sky’s upper limit. That means if something falls outside of the simulation area, even just one part of the computer, the whole thing might stop working.
A mod called Nvidium helps circumvent the simulation distance issue, along with 57 other mods for various optimisations and extra functions. Boulds sent me a list.
Alternate Current, Animatica, BadOptimizations, Bedrodium, CIT Resewn, Capes, Cloth Config API, Concurrent Chunk Management Engine, Cubes Without Borders, Debugify, Dynamic FPS, Enhanced Block Entities, Entity Culling, Exodium, Fabric API, Fabric Language Kotlin, FabricSkyBoxes Interop, Fast Better Grass, Fastquit, Faster Random, FerriteCore, FeyTweaks, ImmediatelyFast, Indium, Language Reload, Lithium, Memory Leak Fix, Mod Menu, Mod MenuHelper, Model Gap Fix, ModernFix, Noisium, Nvidium, OptiGUI, Puzzle, Reese’s Sodium Options, Remove Reloading Screen, Server Core, Sodium, Sodium Extra, StutterFix, ThreadTweak, ThreatenGL, Translations for Sodium, Video Tape, YetAnotherConfigLib, YourOptions Shall Be Respected, Zoomify, e4mc, Carpet, Controlify, Chunks fade in, Iris Shaders, LambDynamicLights, More Chat History, NoChat Reports, Paginated Advancements & Custom Frames, World Edit.
This many mods did send a shiver down my spine. Minecraft is not known for being a demanding game, it’ll run on practically anything, but surely there’s a limit to how many mods and how many circuits it can run at any given time before it goes into total meltdown.
“Due to the size of the computer, vanilla Minecraft has struggled to run on my PC due to the scale. For that reason, I have a mod list to optimize Minecraft so that I get significantly higher frame rates.”
This modded version of Minecraft runs just fine, actually.
You might be surprised to find out that Boulds’ PC is not, as one might expect, an oversized tower stuffed with multiple high-end Nvidia graphics cards and an AMD EPYC chip. It’s a Lenovo Legion 7 Gen 6 gaming laptop powered by a Ryzen 7 5800H, RTX 3070, 32 GB of RAM and two 1 TB SSDs.
Boulds’ laptop logs a spectacular 470–940 fps while flying across the calculator. I was expecting much, much worse—like, 10 fps on a good day kinda worse. But nope, it’s pretty smooth sailing. And the world file only takes up 843 MB.
What’s next?
This PC isn’t finished. It’s maybe halfway done. There’s still a lot of work to get it fully operational yet Boulds wants to get it finished pretty soon. He’s hoping to get the computer up and running by the time he graduates, which is in… two months.
“For this project, I wish to build a Program counter (PC), Memory address register (MAR), Memory data register (MDR), Current instruction register (CIR), CPU cache, RAM, and main memory. I would like to have an interface where you can program an instruction file into the RAM and transfer it to the main memory when you are done with it”
“So, writing, saving, and loading programs.”
The idea being that, eventually, the computer can be programmed to run certain programs without the sort of manual input required today.
“I want to be able to program with the computer using a user interface (UI) that will make it easy to program with a custom assembly language like real ARM assembly code,” Boulds explains, calling the current programming experience “terrible”.
What’s more, there are further optimisations to be made to this design. For starters, the way it’s built today relies on techniques and approaches to match those used on a breadboard, a physical device. By ditching any real-world practical limitations or techniques and leaning into the wonderful world of redstone, much more is possible.
It’s not like this is a brave new world for Minecraft. Boulds was inspired by other Minecraft creators, such as SethBling, and also recommended others to check out tutorials from mattbatwings. An ongoing video series from mattbatwings outlines exactly how to build a redstone computer from scratch, a handy resource for the budding builder.
In turn, Boulds says he’s been inspired to try to teach others how to create logic with redstone over on TikTok.
“This remains a fun hobby of mine rather than a job. But with that said, I do enjoy making content that has some educational merit showing math, electrical engineering, and computer science concepts in a fun and engaging way with short videos.”
This following on from his massive success showing off his computational creation: 15.4 million views and counting. And it’s not even fully built yet.
Support Techcratic
If you find value in Techcratic’s insights and articles, consider supporting us with Bitcoin. Your support helps me, as a solo operator, continue delivering high-quality content while managing all the technical aspects, from server maintenance to blog writing, future updates, and improvements. Support Innovation! Thank you.
Bitcoin Address:
bc1qlszw7elx2qahjwvaryh0tkgg8y68enw30gpvge
Please verify this address before sending funds.
Bitcoin QR Code
Simply scan the QR code below to support Techcratic.
Please read the Privacy and Security Disclaimer on how Techcratic handles your support.
Disclaimer: As an Amazon Associate, Techcratic may earn from qualifying purchases.