Minecraft is a simple video game. Well, it’s a simple video game that also has within it the ability to create all of the logic components that you’d need to build a computer. And building CPUs in Minecraft is by now a long-standing tradition.
Enter CHUNGUS II. The Computational Humongous Unconventional Number and Graphics Unit by [Sammyuri] is the biggest and baddest Minecraft computer that we’ve ever seen. So big, in fact, that it was finally reasonable to think about porting a stripped-down version of Minecraft to the computer itself. Yes, that’s right, Minecraft running in Minecraft. (Video embedded below.) Writing the compiler and programming the game brought two more hackers to the party, [Uwerta] and [StackDoubleFlow], and quite honestly, we’re amazed that a team as small as three people pulled this off.
Anyway, once you’ve picked your jaw up off the floor, also check out [Sammyuri]’s video on just the CHUNGUS II computer itself. (Also embedded below.) Seeing the architecture is interesting, even if you don’t speak Redstone as fluently as our heroes here. We love that the assembler creates a block of ROM – out of Minecraft blocks – that you can then cut/paste into the game’s reality.
For a “simple” game about breaking blocks and punching trees, Minecraft has inspired hackers to make the game better both inside and outside of the real world. For instance, for the latest in performant open-source Minecraft servers, check out Folia. Maybe, one day, they’ll build CHUNGUS II in the real world. It could happen.
Minecraft servers are famously single-threaded and those who host servers for large player bases often pay handsomely for a server that has gobs of memory and ripping fast single-core performance. Previous attempts to break Minecraft into separate threads haven’t ended successfully, but it seems like the folks over at [PaperMC] have finally cracked it with Folia.
Minecraft is one of (if not the most) hacked and modded games in history. Mods have been around since the early days, made possible by a dedicated group who painstakingly decompiled the Java bytecode and reverse-engineered it. Bukkit was a server mod back in the Alpha days that tried to support plugins and extend the default Minecraft. From Bukkit, Spitgot was forked. From Spitgot, Paper was forked, which focused on performance and gameplay mechanics. And now from Paper, Folia is a new fork focused on multi-threading.
A Minecraft world is split up into worlds (such as the nether or the overworld) and chunks. Chunks are 16x16xZ vertical columns of blocks. Folia breaks up sections of chunks into regions that can be ticked independently. Of course, moving to a multi-threaded model will cause existing plugins to fail. Very little was made thread-safe and the idea is that data cannot move easily across ticking regions. Regions tick in parallel, not synchronously.
Naturally, the people benefiting from Folia the most are those running servers that support hundreds of players. On a server with a vanilla-like configuration only around a hundred or so players can be online. Increasing single-core performance isn’t usually an option past this point. By moving to other cores, suddenly you can scale out significantly without restoring to complex proxying. Previous attempts have had multiple Minecraft servers and then synced players and entities between them. Of course, this can cause its own share of issues.
It’s simply incredible to us what the modding community continues to develop and create. It takes deep patience to reverse-engineer the system and rearchitect it from the outside. The Folia codebase is available on GitHub under a GNU GPL 3.0 license if you’d like to look through it.
There’s a furnace in Minecraft that is used to power all kinds of things in the game. [Joel] of Joel Creates decided he wanted to build a real-world replica, and did exactly that.
The furnace consists of a 30 cm aluminium cube, inside which the coal is burned. Thermoelectric generators (TEGs) are then placed on the sides of the furnace to turn the heat into useful electricity. The TEGs are installed in a sandwich of aluminium plates designed to maximize heat transfer through the TEGs themselves. They’re fitted with heatsinks to help create the maximum thermal gradient for greater power output. The entire setup is housed in a larger aluminium cube that’s finished to look like the Minecraft furnace — achieved by using a CNC machine to draw on the aluminium with high-temperature Sharpies.
With the coal a-burning inside, the furnace was able to generate enough power to run its own cooling and exhaust fans. It even had a little power left over to charge a phone. Overall though, [Joel] hopes that with some improvement, it can one day power his Minecraft car replica up to its top speed of 25 mph.
Summer break has started over here, and my son went off to his first of a few day-camp-like activities last week. It was actually really cool – a workshop held by our local Fablab where they have the kids make a Minecraft building and then get to 3D-print it out. He loves playing and building in Minecraft, so we figured this would be right up his alley.
I had naively thought that it would work something like this: the kids build something in Minecraft, and then some software extracts the build and converts it into an STL file. Makes sense, because they already are more-or-less fluent in Minecraft modelling. And as I thought about that, it was a pretty clever idea.
But the truth was even sneakier. They warmed up by making something in Minecraft, then they opened up TinkerCAD, which was new to all of the kids, and built a 3D model there. Then they converted the TinkerCAD models into Minecraft, and played with what they had just built while the 3D printers hummed away.
The kids didn’t even flinch at having to learn a new 3D modelling tool, and the parallels to what they were already comfortable doing in Minecraft were obvious to them. My son came home and told me how much easier it was to do your 3D modelling in “this other Minecraft” – he meant TinkerCAD – because you don’t need to build everything out of single blocks. He thought he was playing games, but he’d secretly used his first CAD tool. Nice trick!
Then I look back and realize how much I must have learned about computers through playing as a kid. Heck, how much I still learn through playing. And of course I’m not alone – that’s one of the things that shines through in a large number of the projects we feature. Hack on and have fun!
This article is part of the Hackaday.com newsletter, delivered every seven days for each of the last 200+ weeks. It also includes our favorite articles from the last seven days that you can see on the web version of the newsletter.
Want this type of article to hit your inbox every Friday morning? You should sign up!
This remote screen viewer is built in Python by [louis-e] and, once installed, allows the client to view the screen of the server even if the client is a text-only console. [louis-e] demonstrates this from within a Windows command prompt. The script polls the server screen and then displays it in the console using the various colors and textures available. As a result, the resolution and refresh rate are both quite low, but it is still functional enough to play Minecraft and do other GUI-based tasks as long as there’s no fine text to read anywhere.
The video below only shows a demonstration of the remote screen viewer, and we can imagine plenty of uses beyond this proof-of concept game demonstration. Installing a desktop environment and window manager is not something strictly necessary for all computers, so this is a functional workaround if you don’t want to waste time and resources installing either of those components. If you’re looking for remote desktop software for a more specific machine, though, take a look at this software which enables remote desktop on antique Macs.
Let’s face it, we all need a little distraction sometimes, especially lately. And for our money, there’s no better way to put your brain in park than to start up a Minecraft world and get to digging. The simple graphics, the open world, and the lack of agenda other than to find resources and build things are all very soothing.
But play the game long enough and you’re bound to think about what it would be like if the game world crossed over into the real world. The ironically named [Michael Pick] did just that when he managed to craft a real Minecraft furnace that can actually power the game. Of course, there are some liberties taken with the in-game crafting recipe for a furnace, which is understandable for a game that allows you to punch trees with a bare fist to cut them down.
Rather than using eight blocks of cobblestone to build his furnace, [Michael] made a wooden shell for a commercial folding camp stove. Insulated from the shell by a little cement board, the furnace looks pretty true to the in-game item. To generate the electricity needed to run the game, he used a pair of thermoelectric camping generators. With the stove filled with wood — presumably un-punched — the generators put out enough juice to at least partially charge a battery bank, which was then used to power a Raspberry Pi and 7″ monitor. His goal was to get enough power from the furnace to do a speed run in the game and find three diamonds to build a diamond pickaxe. Honestly, we’re jealous — our first diamonds never come that easy.
At first glance, it seems pretty straightforward. Four wheels, each with a flange, mounted to a box with a motor. In practice, it was a little more complex than that. Just finding a spot of track to even ride on is tricky. Most “abandoned” tracks that you might see around your city often aren’t all that abandoned. Luckily for [Joel], he remembered an amusement park in the area that he went to as a kid, which he remembered having a decent amount of track. Additionally, the rails were smaller and closer to the scale of a real Minecraft track where one block is 1 meter. After calling up the owner and receiving permission, Joel began to build his cart.
First attempts to procure actual train wheels were foiled by cost and lead times, and simply CNCing a set of wheels was too expensive from a time and materials point of view. [Joel]’s first thought was about making an assembly out of two wheels to grip the rail, much like a roller coaster. However, there were dozens of switch points on the track at the park and several road crossings, both things that wouldn’t work with that sort of setup. Stumbling upon a bit of hacker inspiration, [Joel] turned to brake drums, which happen to be reasonably close to the correct size. They also have the superb quality of being relatively cheap and available. Almost all the parts were CNCed out of aluminum, plywood, or foam.
Given that the theme of the build was doing things to scale, [Joel] was mindful of the top speed of a minecart in the game, which is 8 meters per second or roughly 25 miles per hour, so he set that as his goal to hit. A beefy motor from an online warehouse and a lithium-ion pack allowed him to hit that easily; it was just a matter of doing so safely.