A desktop LED implementation of the arcade game Cyclone

Going Around In Circles With Homemade Arcade Classic Cyclone

The classic arcade game Cyclone has attracted many players, along with their coins, thanks to its simple yet addictive gameplay. In its most basic form it consists of a light racing around a circular track, which the player then has to stop at exactly the right place. Arduino enthusiast [mircemk] made a home version of this game, which allows addicts to keep playing forever without running out of quarters.

Instead of an arcade cabinet, this smaller version has an upright 3D-printed ring that holds 60 WS2812 LEDs. A further six in the center of the ring act as a score counter. An Arduino in the base drives the LEDs and runs the game, which is based on an earlier iteration built by [oKeeg]. An interesting addition is a large homemade “arcade button”, which is large and sturdy enough to withstand any abuse inflicted on it by a frustrated player.

Retro-style sound effects and flashing light sequences give the game a bit of an arcade vibe, even without a big cabinet and piles of coins. Simple LED games like this are always great eye-catchers in any home or office; if you like this one, be sure to check out other LED games like the handheld LEDBOY, the one-dimensional dungeon crawler TWANG, and this LED racing game. Continue reading “Going Around In Circles With Homemade Arcade Classic Cyclone

DOOM Comes To The RP2040

To the point of being a joke, it seems like DOOM is adapted to run on everything these days. So it was only natural that we would see it ported to the RP2040 by [Graham Sanderson], the tiny chip powering the Raspberry Pi Pico.

You might be thinking, what’s different about this port? There have been 55 articles about DOOM here on Hackaday, showing it running on everything from web checkboxes to desk phones. The RP2040 has 256 K of RAM, two decently clocked processor cores, and 2 MB of flash, so it’s not the most constrained platform ever to have DOOM run it. But [Graham] also set some very lofty goals: all nine levels needed to be playable, faithful graphics and music, multiplayer, and it would output to VGA directly. It should play just like the original. DOOM has a demo that is stored as a sequence of input events. They form excellent regression tests as if the character gets stuck or doesn’t make it to the end; then you’re not accurate according to the original code.

There are two big problems right out the gate. First, a single level is larger than the 2 MB storage that the RP2040 has. And to drive the 320×200 display, you either need to spend a lot of your CPU budget racing the beam or allocate a vast amount of RAM to framebuffers, making level decompression much harder.

A default compression scheme wouldn’t cut it because it needed a high compression ratio and random access since decompressing into RAM wasn’t an option. However, carefully optimizing and compressing the different data structures yielded great results. Save game files are given a similar treatment to ensure they fit into the remaining flash after all the levels (34k).

The result is fantastic, and it supports DOOM, Ultimate DOOM, and DOOM II. The write-up goes into far more detail than we could here; enjoy the read. If you decide to make a day trip to the depths of Hell on your own Pi Pico, be sure to let us know in the comments.

Continue reading DOOM Comes To The RP2040″

Minecraft furnace IRL

Replica Minecraft Furnace Actually Powers The Game

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.

We’ve seen other Minecraft-IRL crossovers before. Fancy a ride in a minecart? We’ve got that covered. Or maybe you’d rather control a desk lamp from within the game? That’s a thing, too.

Continue reading “Replica Minecraft Furnace Actually Powers The Game”

Automated Chess Board Plays You

If you’ve ever played chess or even checkers, you’ve probably thought about making a board that lets a computer play you without having to enter your moves and look at the board on a screen. [Greg06] not only thought about it, but he built it.

The board looks great and uses foamboard which makes it easy to reproduce. Each piece has a small magnet within and an electromagnet on an XY motion system can selectively pick up and move pieces. In addition, a reed switch under each square can tell if a square is occupied or not.

Continue reading “Automated Chess Board Plays You”

Mortal Kombat Stand Up Arcade machines

Mortal Kombat ROM Hack Kontinues Arcade Legacy

September 13th 1993, colloquially known as Mortal Monday, became a dividing line in the battle for 16-bit supremacy. The mega popular arcade game Mortal Kombat was ported to Super Nintendo and Sega Genesis consoles, and every fanboy and fangirl had an opinion on which version truly brought the hits.

Nintendo’s version opted to remove the blood and gore in an attempt to preserve the company’s family-friendly image, while Sega’s offering merely locked the game’s more violent content behind a cheat code that so many fans learned by heart: ABACABB. Nintendo’s decision to censor Mortal Kombat on their console pushed public opinion in favor of the Sega Genesis version being superior, though it was clear that corners were cut in order to squeeze it onto a cartridge. Recently a group of developers led by [Paulo] sought to restore the Genesis version to its full potential with a ROM hack they’re calling Mortal Kombat Arcade Edition.

Mortal Kombat Arcade Edition is the sort of ROM hack where every facet of the game has been retouched. All sorts of sound effects and animations that were omitted in the 1993 translation to the Genesis have now been restored in higher quality. Every fighter’s look was remastered to more closely match the arcade presentation complete with move timing tweaks. Secret characters like Reptile, Noob Saibot, and Ermac are all playable, plus all the character bios from the arcade game’s attract mode make an appearance. An SRAM save feature was implemented in order to save high scores, and for an additional dose of authenticity there’s even a “DIP switch” configuration screen where you can set it to free play.

This ROM hack comes as an IPS patch that can be applied to a legitimate dump of the user’s Sega Genesis or Mega Drive cartridge. The site hosting the Mortal Kombat Arcade Edition patch features an online IPS patching tool called Rom Patcher JS that makes the patching process more convenient for those attached to their browser. The patched ROM can then be enjoyed in the user’s favorite emulator of choice, though running it on original hardware via a ROM cart is also possible (even encouraged). Considering the limitations of the Sega Genesis’ color palette the revamped look of Mortal Kombat Arcade Edition is all the more impressive. It just goes to show you that Genesis still does!

Not ready to FINISH HIM? Check out this countertop arcade build featuring some Mortal Kombat II art, or marvel at the incredible effort that went into creating the Knights of the Round ROM hack known as Warlock’s Tower.

Continue reading Mortal Kombat ROM Hack Kontinues Arcade Legacy”

Wordle bot

Solving Wordle By Adding Machine Vision To A 3D Printer

Truth be told, we haven’t jumped on the Wordle bandwagon yet, mainly because we don’t need to be provided with yet another diversion — we’re more than capable of finding our own rabbit holes to fall down, thank you very much. But the word puzzle does look intriguing, and since the rules and the interface are pretty simple, it’s no wonder we’ve seen a few efforts like this automated Wordle solver crop up lately.

The goal of Wordle is to find a specific five-letter, more-or-less-common English word in as few guesses as possible. Clues are given at each turn in the form of color-coding the letters to indicate whether they appear in the word and in what order. [iamflimflam1]’s approach was to attach a Raspberry Pi camera over the bed of a 3D printer and attach a phone stylus in place of the print head. A phone running Wordle is placed on the printer bed, and Open CV is used to find both the screen of the phone, as well as the position of the phone on the printer bed. From there, the robot uses the stylus to enter an opening word, analyzes the colors of the boxes, and narrows in on a solution.

The video below shows the bot in use, and source code is available if you want to try it yourself. If you need a deeper dive into Wordle solving algorithms, and indeed other variant puzzles in the *dle space, check out this recent article on reverse engineering the popular game.

Continue reading “Solving Wordle By Adding Machine Vision To A 3D Printer”

Make Your Own Tabletop Game Organizers With Online Tool

There is a vibrant cottage industry built around selling accessories to improve the storage and organization of tabletop games, but the more DIY-minded will definitely appreciate [Steve Genoud]’s deckinabox tool, which can create either 3D-printable designs, or ones more suited to folded paper or cardstock. Making your own organizer can be as satisfying as it is economical, and [Steve]’s tool aims to make customization simple and easy.

The tool can also generate models for folded paper or cardstock.

The interface for customizing the 3D-printable token tray, for example, begins with a simple filleted receptacle which one can split into additional regions by adding horizontal or vertical separators. The default is to split a given region down the middle, but every dimension can of course be specified.  Things like filleting of edges (for easier token scooping) and other details are all handled automatically. A handy 3D view gives a live render of the design after every change.

[Steve] has a blog post that goes into some added detail about how the tool was made, and it makes heavy use of replicad, [Steve]’s own library for generating browser-based 3D models in code. Intrigued by the idea of generating 3D models programmatically, and want to use it to make your own models? Don’t forget to also check out OpenSCAD; chances are it’s both easier to use and more capable than one might think.