Wayland Comes To Minecraft

The overall adoption and implementation of Wayland — intended as a replacement for the decades-old X11 windowing system — in the Linux world has been full of fits and starts. But perhaps the most surprising adopter we’ve seen yet is this Minecraft patch which brings a full Wayland compositor into the game.

This software project, called Waylandcraft, is the brainchild of a developer known as [EVVIE] who spent a considerable amount of time and effort getting this to work. According to a post on GamingOnLinux it was also done the old fashioned way, with no AI involved.

Users wanting to run this compositor need a Linux system to run Minecraft, as well as the Fabric mod loader and a few other tools. For those wishing to show off to their friends, though, they’ll need to do so in-person as streaming the Wayland windows to other users in the server is not possible.

With everything running, you’ll be able to launch arbitrary programs and have the windows placed within the Minecraft world as if they were in-game. Users can place the windows in any orientation and can interact with them like any other desktop environment. [EVVIE] has released all of the code under the GPL for anyone wanting to try it out or build on the project itself.

If you haven’t spun up a Minecraft server at all yet, all you really need is something like an ESP32 to get started.

Continue reading “Wayland Comes To Minecraft

What Can You Run On A 1960s Univac? Anything You’re Willing To Wait For!

There are two UNIVAC 1219B computers that have survived since the 1960s and one of them is even operational. [Nathan Farlow] wanted to run a Minecraft server on it, so he did. After a lot of work, of course, which is described in a detailed blog post, and, a YouTube video by [TheScienceElf] we’ve embedded below.

The UNIVAC is a seriously weird architecture by modern standards: it’s got eighteen-bit words — yeah, not even a power of two — and one’s compliment arithmatic with a weird signed zero thing going on. There’s one 36-bit and one 18-bit register, and only 40,960 words of memory. Eighteen-bit words. Yeah, it was the 1960s and they were making it up as they went along.

[Nathan] wasn’t, entirely, as this weird system is both well-documented and already had an emulator — in BASIC, of all things. [TheScienceElf] used the docs and the existing emulator to recreate his own in Rust so he could test their somewhat crazy plan without wasting cycles on real hardware. The plan? Well, there are really only two options if you want to build modern software for a niche architecture: one is to add niche support to something like GCC, and the other is to write a RISC V emulator and compile to that. We’ve seen that second one before, and that’s the route [Nathan] took.

Of course, [Nathan] is a machine learning guy, so he made the best possible use of LLMs — though it’s interesting to see that unlike Z80 Assembly, Claude Code really couldn’t wrap its virtual head around the UNIVAC’s assembly language, and [Nathan] had to bang out the RISC V emulator himself. Emulator in hand, [Nathan] and friends had code to run on the museum UNIVAC. A single frame of an NES game took 40 minutes, but hey, at least it finished before they got back from lunch.

[TheScienceElf]’s YouTube treatment teases hosting Minecraft, but it wasn’t a full server, just the login portion. That they were able to get TCP/IP over serial and set up a handshake between a 2020s laptop and a 1960s computer is still mighty impressive. Just the work the Vintage Computer Federation put in to get and keep this antique running is mighty impressive all on its own, but it’s wonderful they let people play with it.

Continue reading “What Can You Run On A 1960s Univac? Anything You’re Willing To Wait For!”

Arnis Brings The World To Minecraft: Bedrock Edition

A couple of years ago, we covered a project called Arnis, created by [Louis Erbkamm], which allowed you to generate any portion of Earth into Minecraft blocks and maps. It was already impressive, but since we last checked in the open source project has made some incredible progress.

When we first covered Arnis, it was stuck on the Java edition of Minecraft. But now the project has been updated to support the more modern Bedrock Edition, meaning you can put your home into any device’s version of Minecraft!

Beyond Bedrock version support, the actual tool has improved with proper elevation generation using data provided from NASA. This allows you to view the Alps or the Himalayas in all their voxel glory, or explore an entire map of the Moon. Perhaps what’s even more impressive is that the generation is accurate enough to be used in an actual research study involving flood mitigation education.

All of this has been made possible with help from a passionate community who have volunteered their time to assist [Louis] with the project — a testament to the power of open source.

Running A Minecraft Server On A WiFi Light Bulb

WiFi-enabled ‘smart’ light bulbs are everywhere these days, and each one of them has a microcontroller inside that’s capable enough to run all sorts of interesting software. For example, [vimpo] decided to get one running a minimal Minecraft server.

The Bl602-equipped board inside the LED lightbulb. (Credit: vimpo, YouTube)
The Bl602-equipped board inside the LED lightbulb. (Credit: vimpo, YouTube)

Inside the target bulb is a BL602 MCU by Bouffalo Lab, that features not only a radio supporting 2.4 GHz WiFi and BLE 5, but also a single-core RISC-V CPU that runs at 192 MHz and is equipped with 276 kB of RAM and 128 kB flash.

This was plenty of space for the minimalist Minecraft server [vimpo] wrote several years ago. The project says it was designed for “machines with limited resources”, but you’ve still got to wonder if they ever thought it would end up running on a literal lightbulb at some point.

It should be noted, of course, that this is not the full Minecraft server, and it should only be used for smaller games like the demonstrated TNT run mini game.

Perhaps the next challenge will be to combine a large set of these light bulbs into a distributed computing cluster and run a full-fat Minecraft server? It seems like a waste to leave the BL602s and Espressif MCUs that are in these IoT devices condemned to a life of merely turning the lights on or off when we could have them do so much more.

Continue reading “Running A Minecraft Server On A WiFi Light Bulb”

Building A Minecraft Lantern For Halloween

Sometimes it’s fun to bring props from video games into the real world. [Hulk] has done just that with their latest Halloween build—creating a working replica of the lantern from Minecraft.

Key to the build is the 3D printed enclosure, which faithfully mimics the look of the in-game item. By virtue of Minecraft’s simplistic visual style, it’s a relatively straightforward print, without a lot of quirky geometry or difficult overhangs that might otherwise trip up your printer. It’s printed in six parts and assembled with acrylic lenses which act to diffuse the light coming from inside.

Electronically, an Arduino Nano runs the show. It’s hooked up to a pair of NeoPixel addressable LED rings, which provide rich RGB colors on demand. Rotary pots are installed on the enclosure to enable the color to be tuned to the user’s desire. Power is courtesy of an 18650 lithium-ion cell and a TP4056 module ensures the battery is kept happy when charging.

It’s a fun prop build, and one that would be the perfect addition to any Minecraft costume. Except for maybe a chicken jockey, because they don’t use lanterns. In any case, we’ve seen similar work before, too.

Continue reading “Building A Minecraft Lantern For Halloween”

ESP32 Hosts Functional Minecraft Server

If you haven’t heard of Minecraft, well, we hope you enjoyed your rip-van-winkle nap this past decade or so. For everyone else, you probably at least know that this is a multiplayer, open world game, you may have heard that running a Minecraft server is a good job for maxing out a spare a Raspberry Pi. Which is why we’re hugely impressed that [PortalRunner] managed to squeeze an open world onto an ESP32-C3.

Of course, the trick here is that the MCU isn’t actually running the game — it’s running bareiron, [PortalRunner]’s own C-based Minecraft server implementation. Rewriting the server code in C allows it to be optimized for the ESP32’s hardware, but it also let [PortalRunner] strip his server down to the bare essentials, and tweak everything for performance. For example, instead of the multiple octaves of Perlin noise for terrain generation, with every chunk going into RAM, he’s using the x and z of the corners as seeds for the psudorandom rand() function, and interpolating between them. Instead of caves being generated by a separate algorithm, and stored in memory, in bareiron the underground is just a mirror-image of the world above. Biomes are just tiled, and sit separately from one another.

So yes, what you get from bareiron is simpler than a traditional Minecraft world — items are simplified, crafting is simplified, everything is simplified, but it’s also running on an ESP32, so you’ve got to give it a pass. With 200 ms to load each chunk, it’s playable, but the World’s Smallest Minecraft Server is a bit like a dancing bear: it’s not about how well it dances, but that it dances at all.

This isn’t the first time we’ve seen Minecraft’s server code re-written: some masochist did it in COBOL, but at least that ran on an actual computer, not a microcontroller. Speaking of low performance, you can’t play Minecraft on an SNES, but you can hide the game inside a cartridge, which is almost as good.

Thanks to [CodeAsm] for the tip. Please refer any other dancing bears spotted in the wild to our tips line.

Continue reading “ESP32 Hosts Functional Minecraft Server”

Minecraft Clone Manages With Nothing But HTML + CSS

Can a 3D Minecraft implementation be done entirely in CSS and HTML, without a single line of JavaScript in sight? The answer is yes!

True, this small clone is limited to playing with blocks in a world that measures only 9x9x9, but the fact that [Benjamin Aster] managed it at all using only CSS and pure HTML is a fantastic achievement. As far as proofs of concept go, it’s a pretty clever one.

The project consists of roughly 40,000 lines of HTML radio buttons and labels, combined with fewer than 500 lines of CSS where the real work is done. In a short thread on X [Benjamin] explains that each block in the 9x9x9 world is defined with the help of tens of thousands of <label> and <input type="radio"> elements to track block types and faces, and CSS uses that as a type of display filter. Clicking a block is clicking a label, and changing a block type (“air” or no block is considered a type of block) switches which labels are visible to the user.

Viewing in 3D is implemented via CSS animations which apply transforms to what is displayed. Clicking a control starts and stops the animation, resulting in a view change. It’s a lot of atypical functionality for plain HTML and CSS, showing what is possible with a bit of out-of-the-box thinking.

[Simon Willison] has a more in-depth analysis of CSS-Minecraft and how it works, and the code is on GitHub if you want a closer look.

Once you’re done checking that out and hungry for more cleverness, don’t miss Minecraft in COBOL and Minecraft Running in… Minecraft.