Best Games - Pengo
When I was a kid I would go over to a friends house to play games on his Commodore vic20. I would arrive under the pretext that we were going to play street hockey. Most of the time we actually would play street hockey, because hey, street hockey is fun. The entire time we were playing there was a tune playing in the back of my mind. It was popcorn, and it goes like this.
During the 80s there were about seven thousand computer and game systems that you could port your game to. A lot of games were written for dedicated arcade hardware that could easily cost 10 times what a home computer sold for. The code and hardware were so closely tied in a lot of the arcade machines that the circuit boards were usually one offs. A massive, expensive, collection of chips, wires, and printed boards would be used in one game and that would be it.
Due to this level of specialization, porting a game from the arcade to home computers was more often than not, a ground up rewrite. You might have noticed that the video above was of a game titled ICE and not Pengo. If you could ground up rewrite a game faster than another developer, or better than another developer, and you couldn’t, or didn’t, get actual legal approval to do any such thing, you would put it out under a different name. That’s just how it went. Once in a while a developer creating a clone of a popular game would have the decency to change the art or music as half lidded shrug toward copyright law. Cymbal Software, the creators of ICE, were about as brazen as you can get. This was the version of Pengo I would play at my friends house.
I was aware of the arcade version of Pengo, but the only versions I had played at the time were the ones that were re-creations for the Tandy computers, Atari Computers, and of course, the Commodore vic20 and 64. They were much thinner clones of the original game. Still, I could tell that there was something more going on with Pengo than your standard maze chase game.
All through the early 80s maze chase games, like Pac-Man, were common as dust bunnies. At first glance Pengo seems to be yet another in this genre. I’ve even read it referred to as a maze chase more than once. Of course if you play it you will find that the Pengo shares very little with Pac-Man. First off, the maze isn’t really a maze at all. Pengo’s movement isn’t really restricted in any way. If there is a block in your way, just push it and it will slide until it collides with another block or the edge of the screen. If another block is behind it, smash it and walk right through. It’s not really a maze if you can make your own path. Pengo is action, puzzle, and strategy all at once.
That’s the really fascinating thing about Pengo. All of it’s levels are randomly generated, so while you can create strategies, there are no patterns for winning the game. Planning, and reaction matter in equal parts. The game is a series of interlocking systems that you have to learn and exploit to be successful. I may be wrong, but I don’t think there are many examples of unconstrained, systems based video games, like Pengo, from the early 80s. Pengo may be the earliest example of random level generation where the environment is actually a gameplay element. I could be wrong about this too, but I couldn’t find any other strong examples aside from Rogue, but in Rogue the levels are fixed in place after they are generated, and not really subject to player manipulation. For it’s time, Pengo is pretty unique.
While doing some research on the game, I came across this gem. It seems that some folks have been reverse engineering the original game code to port it to different platforms, emulated and otherwise. While doing this conversion work one guy came across a bug in the original maze creation algorithm. I could go into all sorts of nerdy rambling about how he found that the code is self modifying so the program is actually changing itself as it runs so that the programmers can pack everything more efficiently into the limited memory and processor cycles available. Suffice to say, if you are the sort of person that would be interested in such a thing you should read this.
Otherwise you should probably just watch these really cool videos of mazes being randomly created.
And just in case you missed it, here is Pengo and Popcorn again!
I searched around to find the original illustrator files I used to cut all the pieces for Captain Joystick, but I seem to have backed them up so well I may need spelunking equipment to retrieve them. You will have to settle for photos of the finished product.
When I built my first arcade stick, I knew that I would eventually build a full size, stand up arcade cabinet. Captain Joystick, doesn’t look much like the typical arcade cabinet. That was absolutely intentional. I had a few criteria when I started on the project. I wanted to create a stand up arcade experience. I’ve never been a huge fan of sit down cocktail cabinets, which is probably a product of my particular brand of nostalgia. I’m sure all those people who prefer cocktail cabinets have good reasons, I was just never going to make one. I had no interest in hauling around a giant 200lb MDF monstrosity full of exposed wiring and spiders, so converting an old Mortal Kombat machine was out of the question. I don’t care for the CRT experience and I have no love of scanlines. I have a pretty firm belief that the play of a game does not depend on a certain combination of outdated technologies. I sort of like the crisp, bright image of PacMan played on a 1080p LCD screen. It’s old and new all at the same time.
There were some arcade cabinets out there in the mid 90s called show piece cabinets or pedestal cabinets, where the screen and speakers were separated from the controls by a couple of feet. The controls were embedded in an oversized podium. Only the real big money making games were housed in these giant cases. Arcade operators must have hated them. You could probably fit 3 games in the same floor space.
Computer hardware and displays change extremely quickly. The games I would be playing on this cabinet and their controls are cemented in time. The idea of having a control pedestal that I could hook up to any computer, game system, or display really appealed to me.
If I was going to make a podium, and I was going to have a bunch of empty space underneath the controls, I figured I might as well make the best of it. I designed a stack of shelves inside the cabinet and put doors on both sides. For a while I had game consoles in there, but in the end it will likely be used to house a very small computer, and whatever junk I toss in.
I designed all the milling files in illustrator and some router specific vector drawing software. I cut everything out of some ½” sheets of MDF and a ⅛” thick sheet of acrylic. The acrylic is inlayed in the top of the control surface. The router table is accurate to a few thousandths of an inch, but MDF is notorious for expanding like a sponge. Until I sanded the edges, the acrylic fit way too tight. On one particularly hot summer afternoon when I was working on the cabinet the acrylic bowed up and made a loud popping noise as the tension was released. It scared the bejesus out of me. The same expansion caused the doors to go slightly concave after I milled off most of the surface. I managed to fix most of these minor issues, but there are a few things I would probably do differently if I were to make a new one.
I designed the space invader on the front, the swoop on the doors and the engraved text, so that I could mill them all out on the table fairly quickly, as I only had one night on the router table to do most of the work. I had planned everything out so that all the parts would fit together like puzzle pieces. The cabinet should be self supporting and fairly strong with no adhesives or fasteners at all, but I made sure to glue it all together and put a few screws in there, just for peace of mind.
The paint is just a basic gloss acrylic, and I did it in a bit of a rush. At some point, likely this summer, I will have to disassemble the thing and give it several nice gloss coats, sanding in between. I really wanted the finish to be as bright and smooth as the acrylic on top. Only the edge around the controls is finished to that level right now. It doesn't quite have that monolith quality I was going for.
All the buttons and sticks shown in these pictures were taken from my old arcade stick. I have since removed them and put them all in a new stick that I built for my cousin as a Christmas gift. The new buttons and sticks arrived a while ago and they should be a little more future proof than these ones were.
Now I’m in the final stages of wiring up the controllers. I have to wait for some connectors I ordered to arrive, since no electronics supply store in this town is open past 5pm. It’s a small delay really when you consider that the cabinet has moved from our old place to our new place, and occupied every floor of our home for extended periods, without even once being used to play a video game. A few more days won’t hurt.
I used to build signs. Lots of them. Aside from a couple of detours into advertising and sculpture, I built signs all through the aughts. I learned to use vinyls, acrylics, plastic, wood and aluminum to construct a pleasing storefront. I stuck stickers for the government.
The first sign shop I worked at was fairly advanced for a small mom and pop. All the design was done using industry standard software. Not sign industry software mind you, software specific to sign manufacture is usually pretty terrible, this was the standard graphic design software. Illustrator, Photoshop, and their corel equivalents. When we had to we would use the sign industry nonsense too. We used that software to feed into several high end manufacturing machines. Several vinyl cutters, a heat transfer printer, a large format inkjet printer that could print a 4 foot wide image on pretty much any flexible material you could feed into, and last, but not least, a large computer controlled router machine.
I was the new guy at the shop and I knew just about nothing. It took a while, but the crew there patiently taught me to use each of the machines, probably so I wouldn’t just be in the way while they worked. I got fairly confident using most of them, but I was very reluctant to use the router. I can only justify my fear of the machine, by telling you that almost everything in a sign shop is either sharp or toxic, but the only one that could slice off all your fingers and keep on going, is the router table. I avoided using it for quite a while, but in the interest of having some workplace redundancy I became one of the people trained to use the router.
I’m not sure when it happened, but pretty quickly I was the only one using the thing 90% of the time. The main shop was very small, and the router table was a six foot wide 10 foot long piece of equipment that weighed roughly the same as a datsun. It lived across a parking lot in a two bay commercial garage that was only accessible from the back alley. I would stop at the main shop in the morning, pick up a few work orders, a cup of coffee, and head over to the router garage, sometimes for the rest of the day. I became very, very familiar with that particular table. I only drilled holes through it a couple of times. Anything I broke on it I also fixed. I calibrated it to a few thousandths of an inch, and tuned it until It could cut a sheet of acrylic and only scratch the protective paper on the far side. I got very good at using the router.
A few years later I was at a different shop, operating a different router table, and I figured it was about time I built that arcade cabinet that I had been dreaming up.
Next time I’ll go over the design, and construction of Captain Joystick, the current incarnation of the ongoing arcade controller saga.
I started writing a piece about the building of my arcade cabinet, but I think it’s important that I go back a bit. I just need to fill in the parts that let a reader understand why anyone would embark on such an endeavor in the first place. In 1998 I discovered MAME.
I was sitting in the basement surfing on very limited dial up internet. Something had put it in my head to look up Legendary Wings.
Legendary Wings is a Capcom shooter that came out in arcades about ten years earlier. During one summer, I had played the game an embarrassing amount at the local convenience store. It got to the point that I would walk into the store with one quarter in my pocket, drop it into the machine, and play straight through to the end. If I didn’t manage to complete the game with that one quarter, I considered it a failure and left the store to ride around on my bike some more. I could do that three or four times a day and make a few dollars last for a week. It was no wonder that I would still have a fondness for what I knew to be a fairly generic shooter.
During my search I found a few screenshots that were too large to comfortably download using my 56k modem. I also uncovered some information I hadn’t been aware of, like the fact that the japanese release had different player characters to the version I had spent so many hours on. More importantly I found some people talking about how they had just played it. At home. On their computers.
Over the next couple of days I filled a ZIP disk with the MAME arcade emulator, a solid handful of mid 80s classic games and a couple other emulators with clever names like Nesticle, and Genecyst. Clever in a 5th grade sort of way. I had just downloaded a significant chunk of my childhood.
I had a keyboard and an old, pre-thumbsticks gamepad as controllers. I could play a half way decent game of Excitebike on a keyboard, but it was only a matter of time before I felt the need to graduate to proper arcade sticks.
About a year later I had access to broadband internet and the collection of arcade games grew well beyond the 100MB limits of a ZIP disk. I went hunting around and found that HAPP controls sold arcade parts to pleebs like me. I picked up a couple arcade sticks and a fistfull of buttons. I had absolutely no experience building arcade sticks, and really didn’t have any materials to work with. I gathered up some scrap plywood, 2x4 offcuts, and a crap ton of acrylic paint to cover poor seams.
When I told some friends at school what I was going to do, we had a small arcade stick building party. I used my scrap wood and the circuit board from an old gamepad. My friend used MDF and a PS1 controller. Soldering up the very fine wires to the even finer solder points on the board was tricky. I’ve gotten much better at it in the intervening years, but I’m sort of surprised that both sticks ended up working perfectly.
I used that clunky stick for several years, until I finally decided that it was time to build a full arcade cabinet. As luck would have it, I had become a CNC router operator by then, and had access to both the tools and skills to build something more impressive than a scrap wood box. But I’ll cover that next time.
I started writing a description of the work I was doing to finish off my arcade cabinet. I was only going write about the joystick and button wiring, but as I was doing that I started to get deeper into the entire construction process. This time, I’ll leave you with a couple of pictures of the current state of things, and next time I’ll have a full rundown of what I built and why.