Simple MicroPython Game Is A 30 Minute Game Dev Course

Sometimes, it’s really useful to watch a project’s parts come together one piece at a time in order to get a complete understanding and mental picture of the whole, and we found that to be the case with this simple, retro-inspired sample game from [ezContents]. (Video, embedded below.) The code is on GitHub but if you’re at all interested in what goes on behind the scenes in a game like that, don’t miss the video.

In the video, each game element and function is illustrated, showing exactly what gets done and why. This part is collision detection (click to enlarge.)

These sprite-based games are mostly about moving a small graphical object (a sprite) around a screen in response to user input, and managing what happens when collisions are detected between the player’s sprite and other sprites like enemies, projectiles, and so forth. The development process is wonderfully documented and demonstrated in a video, as each separate part of functionality gets built and explained one piece at a time.

The simple game is made using ArduPy (which is MicroPython combined with Arduino APIs) using Seeed Studios’ Wio Terminal, a small microcontroller development board with integrated screen, sensors, and button inputs including a little directional clicker that [ezContents] uses as a joystick.

The video of the whole process is embedded below; give it a watch and you’ll maybe come away with inspiration, but you’ll definitely have a much better understanding of how these types of games are developed, even if you’re not using the same hardware or development environment.

Continue reading “Simple MicroPython Game Is A 30 Minute Game Dev Course”

Four Servo Fingers Play Simon Better Than You Ever Could

Remember Simon? We sure do. Simon — as in “Simon says…” — from the leading edge of electronic games in the 1970s, which used four buttons, colored lights, and simple tones as the basis for a memory game. Players had to remember the specific sequence of lights and replay the pattern in order to advance to the next round. It was surprisingly addictive, at least for the era.

For those who never quite got into the Simon groove, fear not — the classic game has now been fully automated. While there were plenty of approaches that could have taken to interfacing to the game, [ido roseman] went with the obvious — and best, in our opinion — technique and simulated a human player’s finger presses with servo-controlled arms. Each arm carries a light-dependent resistor that registers the light coming from the key it’s poised above; the sequence of lights is sensed and recorded by an Arduino, which then drives the servo fingers’ replay attack. The fingers aren’t exactly snappy in their response, which might cause problems — if we recall correctly, Simon is somewhat picky about the speed with which the keys are pressed, at least at higher levels of play.

On the whole, we really like this one, not least for the nostalgia factor. We’ve had a lot of recreations of Simon over the years, including a Dance Dance Revolution version, but few attempts to automate it. And a crazy idea: wouldn’t it be fun to replace the replay attack with a machine learning system that figures out how to play Simon by randomly pressing keys and observing the results?

Continue reading “Four Servo Fingers Play Simon Better Than You Ever Could”

K’nex Pinball Machine Is A Playable Work Of Art

It’s really a wonder that we missed this one, what with all the extra time in front of a computer we’ve had over the last year or so. But better late than never, we always say, so behold, (a little at a time, because there’s quite a lot to look at), [Tyler Bower]’s pinball machine built entirely from K’nex.

Where do we even start? This is a full-size pinball machine, as in 7′ tall, 5′ long, and 3′ wide. [Tyler] estimates that it’s made from about 16,000 pieces, or around 73 pounds of plastic, much of which was obtained locally and is secondhand. Many of those pieces make up the ten drill motor-driven chain lifts in the back — these move the ball through the machine after it goes through one of the track triggers and return it to the playfield in various delightful ways.

Speaking of ways to score, there are nine of them total, and some are harder to get to than others. They all involve some really amazing K’nex movement, and each one uses aluminum foil switches to trigger scoring through a MaKey MaKey.

Of course there’s a multi-ball mode, but our favorite has to be the trap door in the playfield that gets you to the mini pinball game in the upper left, because only the best pinball games have some kind of mini game. Either that, or our favorite is the rotating arm that swings around gracefully and drops the ball on a track. Anyway, all nine elements are explored in the video after the break, which frankly we could watch on repeat. If you’re hungry for more details, there’s quite a bit of info in the description.

The only thing this machine is missing is a tilt switch, but as you’ll see in the video, it would probably get triggered quite often. Is this somehow not cool enough for you? Here’s a slightly bigger K’nex ball machine that doesn’t seem to move as much, but also isn’t a full freaking pinball machine complete with meta game.

Continue reading “K’nex Pinball Machine Is A Playable Work Of Art”

Guitar Hero Robot Actually Shreds

Once a popular craze, most of the public has sold or stashed away their plastic video game instruments and forgotten the likes of Guitar Hero and Rockband. Having never been quite satisfied with his scores, [Nick O’Hara] set out to create a robot that could play a Guitar Hero controller. It would be easy enough to use transistors to actuate the buttons or even just a Teensy to emulate a controller and have it play the perfect game, but [Nick] wanted to replicate what it was really like to play. So after burning out a fair number of solenoids (driving them over spec) and learning on his feet, [Nick] slowly began to dial in his robot, Jon Bot Jovi.

The brains of the bot are a Raspberry Pi running some OpenCV-based code that identifies blobs of different colors. The video feed comes from a PS2 via an HDMI capture card. Solenoids are driven via an 8 channel driver board, controlled by the Pi. While it missed a few notes here and there, we loved seeing the strumming solenoid whammy rapidly on the strummer. All in all, it’s a great project, and we love the design of the robot. Whether played by a robot, turned into a synthesizer, or recreated from toy pianos and mechanical keyboards, Guitar Hero controllers offer many hacking opportunities.

Continue reading “Guitar Hero Robot Actually Shreds”

Two-Player PVC Racing Rig Plays Daytona USA

SEGA’s Daytona USA is that big orange arcade racing machine you remember from the 90s that still seems to hang on in cinemas and pizza joints worldwide. Its controls may be floaty and physics unrealistic, but it’s probably the one racing game that almost everyone has played at one point or other. [Tom Tilley] decided to build a PVC racing rig for the game during his travels in Thailand.

As a bonus, the lightweight rigs can be broken up and transported easily by scooter.

PVC pipe is used to whip up the frames for the budget simulator, inside which each player sits. Different sizes of PVC pipe and various adapters are used to create a basic steering wheel, to which a potentiometer is attached, while the centering mechanism is simply a rubber band. The pedals are built similarly and fitted with microswitches. The build relies on a cheap USB gamepad that mimics the typical PlayStation Dual Shock design, with the pot and switches wired in place of the existing thumbstick and buttons. A computer running the PC version of Daytona USA is then used to complete the setup, along with a projector for split-screen fun.

It’s certainly not a high-end simulator by any means, but for the price of some pipes and cheap controllers, [Tom] was able to create a two-player racing rig for a fraction of the cost to hire the real arcade machine for a weekend. The kids that playtested the system certainly seemed to have a good time, as well. We’ve seen similar low-tech builds before, too – with impressive results. Video after the break.

Continue reading “Two-Player PVC Racing Rig Plays Daytona USA”

Could Seven Gamers Play Quake On Just One 1996 SGI Machine?

[Linus Tech Tips] undertook a fun experiment a few years back. By running multiple virtual machines on a single tower PC with tons of RAM and GPUs, it was possible to let seven gamers play on a single rig at once. [CelGenStudios] found the idea intriguing, and has theorised that the same feat could be possible on mid-1990s Silicon Graphics hardware.

The idea is to use the Origin 2000 server as the base. These didn’t ship with any form of video output or even a keyboard and mouse interface. However, by substituting in the IO6G module from the Onyx2 machine, and SI graphics cards from the Octane, it’s possible to get graphics and input up and running. With multiple graphics cards and a few CAD DUO boards installed via a PCI adapter called the “shoebox”, there’s provisions for up to four separate monitors, keyboards and mice. With all this hardware, it’s theoretically possible for four users to login to the X server running in the IRIX OS on the Origin 2000 machine. Then, it’s a simple matter of firing up four instances of Quake and a dedicated server and you’re up and gaming.

[CelGenStudios] goes so far as exploring the limits of the supercomputer-grade hardware, suggesting that 7 players or more could be possible. Unfortunately, SGI hardware isn’t easy to come by, nor is it cheap, even decades after release — so thus far, the concept remains untested. We’d dearly love to see such a setup happen at QuakeCon or a hacker con, though, so if you pull it off, you know how to call. We note there’s a few Octane 2000s at the Jim Austin Computer Collection, so perhaps they might be the ones to achieve the feat.

In the meantime, check out a practical exploration of the concept on modern hardware with the original [Linus Tech Tips] project. The basic theory is simple – create a hugely powerful PC, with a beefy CPU, plenty of RAM, and one graphics cards for each of the seven players. They run multiple virtual machines and managed to deliver a full 7 player experience running off just one CPU.

Continue reading “Could Seven Gamers Play Quake On Just One 1996 SGI Machine?”

Kitchen Bump Bar Plays Doom Between Orders

For as much as we love reverse engineering projects, we have to admit that we almost passed up on this “kitchen bump bar” hack. Having never had the privilege of working in the food-service industry — well, there was that time working at Chuck E. Cheese’s, but that only lasted for one shift — we were unaware of what a bump bar is, and the whys and hows of hacking one to the point where it can play Doom.

We’re glad we stuck with it, though, because [Kiwa]’s hack is pretty cool, and we got to learn a little about the technology of the modern commercial kitchen. Most fast food and family casual restaurants have what’s known as a “kitchen display system”, which relays orders from the wait staff to the kitchen. You’ve probably seen parts of the KDS, like the touch screens used by the wait staff to enter orders, or the screens dangling in the kitchen that display the pending orders. A bump bar is a small terminal used by the kitchen crew to review orders and move them around in the queue, or “bump” them, as needs dictate.

The bump bar [Kiwa] dug into appears to be a model from the early 2000s and very sturdily built, as anything used in a kitchen would need to be. Hooked up to a monitor and a keyboard, [Kiwa] discovered that it booted right into an OS with all the familiar trappings of DOS. After a detour for a teardown and dumping the flash contents, [Kiwa] was able to boot it up and run Doom, albeit somewhat slowly. It also looks like he’s got a couple of different Windows versions running, and even played some Solitaire.

It’s always fun to see what will run Doom — an NES, an oscilloscope, a thermostat, or even a bag of potatoes.

Thanks to [Fritnando] for the tip.