Playing DOOM In Discord With A Special Image URL

Can you play DOOM in Discord? At first glance, that may seem rather nonsensical, as Discord is a proprietary chat service and neither a hardware device nor something else that may seem like an obvious target for being (ab)used for demon-shooting points. That is, until you look at Discord’s content embedding feature. This is where [PortalRunner]’s Doomcord hack comes into play, allowing you to play the entire game in a Discord client by submitting text messages after embedding a very special image URL.

Rather than this embedding being done in the client as done with e.g., IRC clients, the Discord backend handles the content fetching, caching, and handing off to clients. This system can easily be used with an animated GIF of gameplay, but having it be seen as a GIF file required adding .gif to the end of the URL to trick Discord’s backend into not simply turning it into a static PNG. After this, Discord’s throttling of message speed turned out to kill the concept of real-time gameplay, along with the server load.

Plan C thus morphed into using Chocolate Doom headless, rendering gameplay into cached video files by using the demo gameplay feature in DOOM. The Doomcord server template project provides a server if you want to give it a whirl yourself. Since this uses recorded gameplay, the switch was made from GIF to the WEBP format to save space, along with a cache expiry system. Just level 1 with all possible input sequences takes up 12 TB of disk space.

Continue reading “Playing DOOM In Discord With A Special Image URL”

NTRON Plays Games, Music

What do you get if you meld a Raspberry Pi, a chiptune synthesizer, and a case that looks like an imaginary Kenback-2000? Well, if you are [Artifextron], you get the NTRON. Part Nintendo console, part chip tune synthesizer, and part objet d’art. You can see the device do its things in the video below.

This is less of a bare metal design and more of a synthesis of parts, but it is a very clever system design using audio mixers and an assortment of modules to do its tasks. It does have an IC handling the gamepad ports. Of course, it also features a ton of 3D printed parts.

Continue reading “NTRON Plays Games, Music”

When Low SRAM Keeps The DOOM Off Your Vape

The PIXO Aspire is a roughly $35 USD vape that can almost play DOOM, with [Aaron Christophel] finding that the only thing that realistically stops it from doing so is that the Cortex-M4-based Puya PY32F403XC MCU only has 64 kB of SRAM. CPU-wise it would be more than capable, with a roomy 16 MB of external SPI Flash and a 323×173 pixel LC touch screen display covering the other needs. It even has a vibration motor to give you some force feedback. Interestingly, this vape has a Bluetooth Low-Energy chip built-in, but this does not seem to be used by the original Aspire firmware.

What [Aaron] did to still get some DOOM vapors on the device was to implement a screenshare firmware, allowing a PC to use the device as a secondary display via its USB interface. This way you can use the regular PC mouse and keyboard inputs to play DOOM, while squinting at the small screen.

Although not as completely overpowered as a recent Anker charging station that [Aaron] played DOOM on, we fully expect vapes in a few years to be perfectly usable for some casual gaming, with this potentially even becoming an original manufacturer’s function, if it isn’t already.

Continue reading “When Low SRAM Keeps The DOOM Off Your Vape”

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”

The Sixteen-Year Odyssey To Finally Emulate The Pioneer LaserActive Console

The 1993 Pioneer LaserActive certainly ranks high on the list of obscure video games. It was an odd duck; it used both a LaserDisc for data storage and provided compatibility with a range of existing video game consoles. Due to the rarity and complexity of this system, emulating it has proven to be a challenge. The Ares emulator version 146 is the first to officially add support for the LaserActive. You’d expect getting to that point to be a wild journey. It was, and [Read Only Memo] documented the author’s ([Nemesis]) quest to emulate the odd little machine.

The LaserActive had a brief lifespan, being discontinued in 1996 after about 10,000 units sold. Its gimmick was that in addition to playing regular LaserDiscs and CDs, it could also use expansion modules (called PACs) to support games for other consoles, including the Sega Genesis and the NEC TurboGrafx-16. You could also get PACs for karaoke or to connect to a computer.

By itself, that doesn’t seem too complex, but its LaserDisc-ROM (LD-ROM) format was tough. The Mega LD variation also presented a challenge. The LD-ROMs stored entire games (up to 540 MB) that were unique to the LaserActive. Finding a way to reliably dump the data stored on these LD-ROMs was a major issue. Not to mention figuring out how the PAC communicates with the rest of the LaserActive system. Then there’s the unique port of Myst to the LaserActive, which isn’t a digital game so much as an interactive analog video experience, which made capturing it a complete nightmare.

With that complete, another part of gaming history has finally been preserved and kept playable. Sure, we have plenty of Game Boy emulators. Even tiny computers now are powerful enough to do a good job emulating the systems of yesterday.

The Nintendo Famicom Reimagined As A 2003-era Family Computer

If there’s one certainty in life, it is that Nintendo Famicom and similar NES clone consoles are quite literally everywhere. What’s less expected is that they were used for a half-serious attempt at making an educational family computer in the early 2000s. This is however what [Nicole Branagan]  tripped over at the online Goodwill store, in the form of a European market Famiclone that was still in its original box. Naturally this demanded an up-close investigation and teardown.

The system itself comes in the form of a keyboard that seems to have been used for a range of similar devices based on cut-outs for what looks like some kind of alarm clock on the top left side and a patched over hatch on the rear. Inside are the typical epoxied-over chips, but based on some scattered hints it likely uses a V.R. Technology’s VTxx-series Famiclone. The manufacturer or further products by them will sadly remain unknown for now.

While there’s a cartridge slot that uses the provided 48-in-1 cartridge – with RAM-banked 32 kB of SRAM for Family BASIC – its compatibility with Famicom software is somewhat spotty due to the remapped keys and no ability to save, but you can use it to play the usual array of Famicom/NES games as with the typical cartridge-slot equipped Famiclone. Whether the provided custom software really elevates this Famiclone that much is debatable, but it sure is a fascinating entry.

No Die? No Problem: RealDice.org Has You Covered

Have you ever been out and about and needed to make a check against INT, WIS or CON but not had a die handy? Sure, you could use an app on your phone, but who knows what pseudorandom nonsense that’s getting up to. [Lazy Hovercraft] has got the solution with his new site RealDice.org, which, well, rolls real dice.

Well, one die, anyway. The webpage presents a button to roll a single twenty-sided die, or “Dee-Twenty” as the cool kids are calling it these days. The rolling is provided by a unit purchased from Amazon that spins the die inside a plastic bubble, similar to this unit we covered back in 2020.  (Alas for fans of the venerable game Trouble, it does not pop.) The die spinner’s button has been replaced by a relay, which is triggered from the server whenever a user hits the “roll” button.

You currently have to look at the camera feed with your own eyes to learn what number was rolled, but [Lazy Hovercraft] assures us that titanic effort will be automated once he trains up the CVE database. To that end you are encouraged to help build the dataset by punching in what number is shown on the die.

This is a fun little hack to get some physical randomness, and would be great for the sort of chatroom tabletop gaming that’s so common these days. It may also become the new way we select the What’s That Sound? winners on the Hackaday Podcast.

Before sitting down for a game session, you might want to make sure you’re all using fair dice. No matter how fair the dice, its hard to beat quantum phenomena for random noise.