I’m about halfway through Once Upon Atari: How I Made History By Killing an Industry by Howard Scott Warshaw, and loving it.
Howard Scott Warshaw, if you didn’t know, was a programmer for Atari in the early 80s. He worked in their console division, where he developed the games Yar’s Revenge, Raiders of the Lost Ark, and E.T.: The Extra-Terrestrial for the Atari 2600. These were groundbreaking games on the most popular home console of its day, and accomplished many “firsts”.
In 1983, the video game market suddenly collapsed, due to a combination of a multitude of factors, but at the time Warshaw’s E.T. was often given blame for causing what came to be known as the “Great Crash of ’83’. E.T. has often been referred to as “the worst video game of all time” but that is quite unfair to the game, which pushed the limits of the Atari 2600 hardware, and while not perfect, was by no means a bad game — although it was drastically over-produced by Atari, leading to a huge amount of unsold inventory, which hurt the company’s bottom line. Warshaw was given 5 weeks to develop the game, a feat thought by his managers to be impossible given that most Atari 2600 games took about 6 months to develop.
This is all well known and chronicled history for video game fans. Warshaw to his credit has been remarkably accessible and open about his story for some time, and has given numerous interviews over the years. He’s even been known to appear on the Atari Age facebook page and comment once in a while. He’s truly a legend of the industry, and a wonderful, brilliant human being. This book details his story, how he came to work for Atari, what went on there during his tenure (confirming a lot of the oft-retold stories about the workplace culture), and how he faced the indignity of being cast as the creator of the “worst game of all time”.
Warshaw left Atari and went on to become a licensed psychotherapist and has helped people like himself, who worked in the high tech field to deal with the immense pressures that they’re put under to be creative, be correct, and deliver products that will make billions of dollars for themselves or their shareholders.
I haven’t gotten to that part of the book yet, but from what I already know of his story, his approach to dealing with failure, or at least the perception that he had been responsible in large part for a massive and very public failure of what had just a year prior been the fastest growing company in the history of the world, is remarkable as it is instructive. He has embraced the label, but adds to it that his Yar’s Revenge is often cited as one of the best video games on the Atari, thus giving him the rightful claim to having the greatest range of any game developer. Turning a negative into a badge of pride, he has faced the critics, rebutted them with not just clever rhetoric, but also facts, figures, and sound reasoning, and provides us an example of how “failure” often isn’t failure, that perceptions matter, that what you tell yourself matters, and that above all it does not define us — we have the power, if we choose to use it, to define ourselves.
Warshaw’s writing style is accessible, not overly technical, candid, often quite humorous, warm and insightful. Reading his book makes me admire him even more than I did, and grateful for the handful of times that he’s Liked something that I’ve said on the Atari Age facebook page, and most of all, thankful for the many hours I spent as a young child engaging with, and enthralled by, his digital creations.
Atari Age, the fan-operated homebrew operation that holds the most legitimate claim to the legacy of Atari-that-was, has opened up pre-orders for a new batch of games for the Atari 2600, 5200, 7800, and 400/800/XE systems, and even the Atari Jaguar.
I’m most excited about Zoo Keeper, a faithful port of the early 80’s arcade classic to the 2600 developed by Champ Games — who have been killing it with their talented Atari 2600 ports of classic arcade games like Galaga and the upcoming Robotron 2084 — and Ninjish Guy in Low-Res World, a homebrew platformer for the 2600 in the vein of Super Meat Boy. I’ve been looking forward to playing a 2600 homage to one of my top early 80’s arcade classics Zoo Keeper for quite some time.
Also-worth-a-look releases are Deepstone Catacomb, a zelda-like adventure game, which looks really well done for an Atari 2600 title. Venture Reloaded, another early dungeon crawler, finally does justice to the classic arcade game Venture, should appeal to fans of the original.
Fans of the maze genre should find Hugo Hunt and Robot City to their liking. Dare Devil shows off some impressive chiptune chops and parachuting action reminiscent of classic games like Frogger, Freeway, and of course Sky Diver. But it appears to be an update or direct sequel to 1983 release, Parachute. Cannon Head Clash is a really fun-looking 2p artillery duel with destructive terrain and frantic action. If you enjoyed games like Outlaw/Gunslinger, and Combat on the 2600, this is one to check out. It’s even available for SECAM60 television sets, which is amazingly rare for a homebrew. Avalanche should appeal to fans of Activision’s classic paddle game, Kaboom!Tower of Rubble features fantastic audio, and super-slick animation and platform-edge hanging action as you struggle to stay atop a crumbling tower of falling blocks.
All of these new games show that the Atari 2600, released now 43 years ago back in 1977, still has many extra lives nearly half a century later, and nearly three decades after the last Atari 2600 rolled off the assembly line. The dedication of the programmers who pull off these minor miracles to their craft is astounding. The fact is that every produced by the homebrew community these days are among the best ever released on their platform. While the prices might seem steep at $40-50 apiece, the games are produced by hand in small batches, and are every bit as professionally presented as the best games produced by top industry developers during the system’s heyday. If you’re a fan of the system and still have working hardware hooked up in your house, they are absolutely worth their price.
I haven’t even looked at the titles for the other systems yet, because my budget frankly can’t take it. Just about every game I have looked at looks like a game worth playing, with most of them being must-buys.
Champ Games revealed their latest project last night: an Atari 2600 port of Robotron 2084. One of the best videogames of all time.
The announcement, released through ZeroPageHomebrew’s twitch.tv stream, comes a year after Champ announced their homage to Galaga, later renamed Galagon. Champ is also working on an Atari 2600 port of early 80s arcade classics Zookeeper and Lunar Lander, both of which look fantastic even in pre-release work-in-progress states.
Champ have been consistently delivering amazing port of classic games on the Atari 2600 platform that far exceed the system’s original capabilities, and play very close to arcade-perfect. This version looks a tad bit slower and not as smooth, but is incredible considering it is running on an Atari 2600. There’s an ARM processor inside the cartridge helping out, too.
This is a must-own port of a classic game if you own an Atari 2600, and it’s on my very short list of eagerly awaited Atari 2600 games that I want but don’t have.
Even if 2020 is a complete dystopian hellscape, at least we’ll have Robotron and Zookeeper to play during our indefinite social distancing and sheltering at home. That makes it almost OK, right?
The business entity currently calling itself “Atari” published a new tech blog today, to address their current status with delivering the long-overdue Atari VCS systems. As usual, things are not well.
At the time of this writing, the world is in the grip of a global pandemic of COVID-19, which originated in China, and has lead to major economic disruptions as authorities in China have shut down entire cities in an effort to contain the spread of the virus. Under such circumstances, it’s entirely understandable that this could cause delays.
Rather immediately, though, we see the usual disturbing signs that not all is well with the project, beyond these circumstances that are beyond anyone’s control:
…We have confirmed delivery of enough parts by the end of March to build our first 500 Atari VCS production units. A good portion of these first Atari VCS units are earmarked as dev kits for developers.
Four things leap out about this revelation:
One: Previously, Atari had been targeting March 31 for when the VCS would be available for purchase at retail, through GameStop and Wal Mart.
Two: Indiegogo preorders topped out around 10,000, and presumably Atari must have been intending to supply additional thousands or tens of thousands of units to stock retailers. But now they say they will have “parts” for 500 units by the end of March, well off the numbers needed to fulfill even the pre-order.
Three:“a good portion of these first Atari VCS units are earmarked as dev kits for developers.”
So… to be clear on this. Atari’s business plan is to:
Sell consoles through pre-order.
Design the consoles.
Build the consoles.
Provide the consoles to crowdfunding backers and retail and developers all at the same time.
Now developers start working on software for use on the console.
I don’t need to spell out why this is the wrong order to do things in, do I?
Getting “dev kits” into the hands of developers early so that there can be launch titles available when the hardware reaches consumers is vital to the success of the console. Games take months and years to develop. They’ve been working on the AtariBox project for a good 3 years now, they should bloody well have games on it when they release it to consumers.
But given that this is just a commodity Linux box in a fancy looking shell that is “certified” to run Unity engine games, what exactly does anyone need with a “dev kit” anyway? The only thing I can think of would be that the VCS’s classic joystick is different enough from a standard gamepad (which they also have for the system) that there’s some need for a dev kit. That’s plausible, but it still doesn’t excuse Atari from not getting dev kits into the hands of developers partnering with them well in advance of the console’s expected release date, which I will point out again is already about two years later than they promised during the crowdfunding campaign.
Four: Why are they receiving parts? Why aren’t they assembling everything in China? What the fuck?
The blog post goes on from there to go into minute details of manufacturing defect tolerances, for some reason. I guess to show that they have a lot of problems building defect free cases for the thing? That’s reassuring!
I guess they want us to believe that they are working hard with manufacturing to get the details right, but that this hasn’t been easy, and this has been part of the reason for all the delays.
And from there, some footage of people playing emulated Atari arcade titles such as Asteroids, Crystal Castles, and Centipede. And a video of someone playing Fortnight, allegedly on an Atari VCS system. Which, hey, great, but that’s something anyone can do right now, on a computer they already have.
“Atari” then go on to mention that their planned schedule of events has been disrupted as events such as GDC, SXSW, and E3 have been canceled due to the COVID-19 pandemic. Which, given the history of “Atari” attending these events in the last 2-3 years, maybe just means that the there wasn’t any point in them renting a hotel suite across the street from the convention and inviting attendees to swing by while they’re in the neighborhood, riding the event’s coattails.
Will “Atari” be at Pax, or Comic Con? Who knows? Who cares?
The bottom line is: You ain’t seeing your Atari VCS pre-order at the end of March. Surprise, surprise. And if you ever do receive your system, it’ll be around the same time that developers receive their dev kits. So while you’re waiting breathlessly for the next 2-3 years for them to crank out games that were actually designed for this system, you’ll be able to enjoy a library of existing games, many of which are already available elsewhere, and have been for literally the entire history of video games.
Today my inbox had an email from Atari in it, announcing that they are now ready for developers to start making games for the system. Which is supposed to be released to retail in March. Lol.
OK, so this might be slightly less ridiculous than it seems. Let’s recall that the real Atari gave Howard Scott Warshaw a whole 5 weeks to crank out E.T.: The Extra-Terrestrial. Which he did. Because HSW is a beast.
But mainly, it’s not unreasonable because millions of game developers already have projects that they’re developing in Unity3D, and it’s probably trivial in most cases to create a build that will run on Linux, which is what AtariBox’s OS will be based on.
The announcement reads as follows:
Hello Backers, Fans, and Followers!
In light of our recent confirmation of Unity compatibility with the Atari VCS, it’s time to start unlocking access and giving game and app developers the green light to start developing new games and making plans for porting existing content to the platform. We have recently contacted interested developers with our initial plans and are happy to now share more with our broader audiences.
Getting content onto the Atari VCS will be straightforward and easy for both large professional studios and independents alike. Most developers already have all the tools they need to develop for our Linux Debian-based OS and can start right away.
Atari will also have a path to get your games and apps into the Atari VCS store and make real money!
A couple hundred BackerKit survey remain incomplete. If you have not completed one, go to https://atari-vcs.backerkit.com now and request your survey. It only takes a few minutes and will make your Atari VCS shipment(s) run smoother and faster.
Ongoing thanks again to every backer, fan, and developer. We can’t wait to see what you create!
— The Atari VCS Team
So, great. Potentially, tens of thousands of already-existing games built with Unity can be easily ported to the AtariBox, which if for some reason you wanted to play games on that platform instead of one of the half dozen or so platforms that you already own that has been capable of playing Unity games since forever, then hooray — you can!!
Let’s be clear, announcing “Unity compatible” is neither shocking, nor impressive. Your smart phone, your web browser, and your generic PC can all run Unity games. So can your Macintosh PC, and your iPad.
It’s rather difficult to imagine what hurdles Atari might have needed to leap over in order for their AMD x64 linux PC in a fancy case might have had to overcome in order to verify that it could run Unity games. Because, frankly, it is stupid easy to do. Which is one of the really nice things about Unity.
It’s yet another underwhelming announcement in a series of underwhelming announcements from Atari about the “progress” that they’ve managed to “achieve” with their New VCS project.
But let’s be clear: you or I could assemble a PC capable of running Unity games in about an hour with components that I ordered from NewEgg, probably for around the same cost as what Atari is selling the VCS for, and it wouldn’t take me 3 years to develop it.
Atari’s latest Medium blog update mentions that they are now working on establishing compatibility with other game development engines. But this should also be a trivial exercise as well, given that the Atari VCS is a generic linux PC under the hood. From what they’ve said, they’re only really developing a graphical shell environment (and even then, very likely all they’re doing is creating a “skin” for some existing graphical shell, with minimum customization, plus an app store and a launcher. But I expect that we’ll be hearing that Atari VCS will support Godot engine, GameMaker Studio 2, Unreal Engine, the Gnu C Compiler, and pretty much anything else that already has the means to build executable binaries for Linux.
But if you know what that means, it’s not even slightly impressive, because literally everything in the world can run linux, and can run software compiled for linux.
The one nice thing that I see in Atari’s announcement today is that they are taking only a 12% cut of your sales if you produce exclusive content for the Atari VCS, and just 20% for non-exclusive content sold through their app store. Which is a lot better than the 30% cut that is taken by Valve, Apple, and Google for selling apps through their stores. Of course, considering that Atari has only had about 10,000 units in pre-sale that we know of (based on their initial Indiegogo crowdfunding) it seems that limiting your game’s audience to AtariBox customers is going to cost you a lot more in sales revenue than that 8% could ever hope to make up for.
So… meh. It doesn’t look, then, like there will be a whole lot of exclusive titles for this system, which means that there won’t be any reason to buy this system, which means that there won’t be any reason to target this system for exclusive game titles, which means that this whole thing is unlikely to catch on. Pretty much as I’ve said all along.
If you’re a developer and interested in more information, they say to write to firstname.lastname@example.org. Which, maybe, hopefully, finally won’t bounce messages sent to it, as they have the last two times I tried to write to them over the past year.
This past Saturday, Dec 7, I had the joy of exhibiting my game, Ancient Technologies, at the Akron Art Museum’s Open World Arcade. It was an honor to have my game selected by the committee for inclusion in the event.
I made Ancient Technologies in 2016 for Ludum Dare 36, already quite a while ago. In preparation for the event, I wanted to make a few improvements and add features I’d wanted to include in the game, but hadn’t had time for due to the time constraints of the game jam weekend.
As a result, behind the scenes, I did battle with a few “ancient technologies” of my own.
Plenty of time to get ready
About a month prior to the event, I had to decide how to bring my game to the public. I didn’t want to use my daily driver laptop for this, as it is the machine I depend on for everything, and I just didn’t want to assume any additional risk with it being touched by anyone who I didn’t know. But I have an old AMD Phenom II PC that I built around 10 years ago, which had sufficient specs to play the game, so I decided I would bring that.
I don’t run this box a whole lot, so the very first thing I needed to do was get it updated. I had wiped it some time ago, and reinstalled Windows Professional 7.1 x64, Google Chrome, a few other minor apps, and then hadn’t used it for much since then. So when I powered it on, the first thing I wanted to do was run Windows Update. WU detected about 150 updates that needed to be downloaded and installed, which took quite some time to complete, and I expected that it would take an hour or so, but it ended up taking far longer than it should have. My PC ran updates overnight, and I woke up the next day to find that it had failed to apply updates.
I then had to spend a few days researching the failure, and trying various things to get the system to update. Eventually, I found a Microsoft tool that fixes Windows Update when it breaks in the way mine was broken, and was able to install updates. Well, almost all of them. There’s still one update that just will not install, no matter what I do. Oh well. Typical Microsoft garbage.
I didn’t need to have the PC connected to the internet for the event, so I wasn’t that worried about not having it 100% updated, but I always like to run systems that are updated and maintained.
Once the hardware was updated, I turned my attention to the game. There were a number of features that I had to drop from the original Ancient Technologies, so I took the opportunity to work on adding these.
The most important to me were the UFOs and the player’s special ability (hyperspace, shields, or flip) that in the Atari 2600 version of Asteroids that I was re-creating inside of Ancient Technologies, is activated by pressing Down on the joystick. Fortunately, getting these implemented wasn’t terribly difficult, and I found it enjoyable to add these things in and get to see the fully realized vision of what I had wanted this game to be. It took me only about four evenings to do it, and it mostly went smoothly.
And, actually, adding these features wasn’t what took most of my time, it was fixing numerous minor bugs that I kept finding in the game as I tested it, and I tested the game extensively. None of these bugs were game breaking, and probably wouldn’t have been noticed by players in a short session, but, being a perfectionist, if I know it’s there, if I can fix it, it needs to be fixed. Numerous minute details, like logical conditions that should prevented certain sound effects from being heard, such as the TV being turned off, or the game console being unplugged or the cartridge being removed from the slot, needed to be checked and tested and fixed.
I figured out a simpler way to do this: create an audio group for all the sound effects that play through the in-game TV, and then set the gain to 0 when the TV is off.
The last minute stuff
The day before Open World Arcade, I tested out my game one last time. This time, I did more extensive play testing with my gamepad. Mostly, I’d been testing the game with keyboard input, since it was more convenient. To my horror, I discovered that the D-pad on Xbox 360 gamepads is absolutely terrible. It wasn’t so noticeable before, but now that Down does something, I kept accidentally hyperspacing when I just wanted to turn. It was completely unacceptable. The engineers who fucked up the D-pad on the XBox 360 gamepad should be flayed and their families put to ruin. Seriously, you guys, how hard is it to include a bit of tech that’s been around since the mid-80s, and not make it total garbage?
Suddenly, on short notice I had to find a better controller, a wired gamepad that worked via Xinput, and that has a really good D-pad.
I researched and couldn’t find any reviews that I considered reliable enough for alternative wired XBox 360 controllers that have a D-pad that doesn’t suck. I did find a number of tutorials on how to do surgery on your controller to make it work better, but I wasn’t willing to take a risk on it so close to deadline. I’ll probably do it later, though.
I did end up finding a few controllers for Xbox One that had reviews for good D-pads. I wanted to pick up a Hori Fighting Commander, which looked like it would be ideal, as it lacks analog sticks, it therefore must have a good D-pad. But I couldn’t find a physical store to buy one at within 100 miles, and I couldn’t order one to be delivered and have any hope of getting it in time. This was super frustrating.
I ended up picking up a PowerA Enhanced Wired gamepad for Xbox One.
Then I found that because Microsoft is a horrible company, they couldn’t be bothered to ensure that Xbox One controller drivers were available and easy to install for Windows 7, and had to spend several hours trying to find a method to install drivers so that my PC would recognize the damn thing. I still don’t have it working on my laptop, but fortunately, for whatever reason, I found a driver that will install and work on the PC I intended to use for the Arcade. Why the exact same driver won’t install on my laptop, I have no friggin’ clue. Goddammit, Microsoft, why? Why do you have to be so abysmal when it comes to supporting your own shit?
One nice thing, though, the D-pad on the PowerA Enhanced Wired gamepad for Xbox One is better than the horrible D-pad on the otherwise pretty darn good Xbox 360 controller.
Another last minute idea that I had was that I thought it would be fun to put Ancient Technologies side-by-side with the original. I had the equipment, I only needed a small enough CRT TV set that I could easily transport it and set it up. I didn’t have one, but I put the word out and one of my friends had a small TV that I could borrow.
Game day started out smoothly, until I realized during setup that I had forgotten to pack my PC’s speakers. My desktop system has a nice set of 5.1 speakers which were really more than was called for, and I knew I had a set of regular stereo speakers in a closet somewhere, meant to grab them, got distracted, and forgot. This necessitated a last minute run to a store where I could pick up a set. Fortunately, I had plenty of time before the opening of the Arcade to do this, and it ended up not being a huge deal, but I had to drop another $25 on that, which, after the $25 I had to spend on a gamepad yesterday, left me annoyed at myself.
When I came back from the store, I happened to check my phone, and saw in one of the Facebook communities that someone had posted a photo of their old living room gaming setup:
Seeing this hit me emotionally, and it made me feel that the game I was about to exhibit belonged and had relevance and cultural resonance. So may people in my generation grew up in a house with a big wood cabinet color TV set, and hooked up their game systems to it.
I also discovered, to my dismay, that the TV set that I borrowed wouldn’t work. I didn’t have time to test it prior to the event, but when I looked at it more closely, I discovered that the power button was gone. There was a hole where it used to be. A remote control was taped to the TV set, but when I tried it, it wouldn’t work, and then I noticed that the batteries inside had gone bad and corroded the contacts, so there would be no way to use the TV. Regretfully, I put the TV and the Atari back in my car, and they would not be a part of the show.
Turning my attention to the PC, I booted it, launched, and tested that everything was working as it should. Of course, it wasn’t. Why should it be? I had only tested extensively and fixed every visible problem that I could see for a week. But somehow or another, the “put down” sound effect that I had coded wasn’t working. When you unplug the cartridge, or the power cord, it’s supposed to play the sound, but it doesn’t for some reason. I had never noticed this previously to the day of the event. My first thought was, “OK, somehow or other, I accidentally added the “put down” sound effect into the group of sounds that play through the in-game TV set, which is off, and that must be why the sound isn’t playing.” Nope! When I turn the TV on, the sound still doesn’t play. And when I went back to review my code, the “put down” sound effect isn’t in the TV sounds audio group. What’s more, if you unplug the joystick it also plays the same sound, and that’s the one place where it’s still working properly. Looking at the code in that object vs. the others, it’s the same frickin code: when you click the mouse on the object, play the sound. It works there, but not in two other places that are identical. No clue why. Maybe it’s because the joystick stays in the same place, while the cartridge and power cable move, putting them away from the mouse cursor, which somehow retroactively fails the audio_play_sound() function, even though it’s in the same god damn code block as the code that moved the object? WTF, GameMaker? What the Fing F?
Ancient Technologies is coded in GMS 1.4, which is no longer supported. I suppose the next thing to do would be to import the project into GMS 2, compile it, and see if it behaves the same way. I had been enjoying picking up this old project and working on it again, but with weird shit like this breaking for no explainable reason, it really puts me off wanting to do anything serious with GameMaker.
This problem wasn’t a showstopper. Most people who played the game probably wouldn’t have noticed it at all, not knowing that there was supposed to be a sound played when there was none, or in a lot of cases not even doing the action that would have triggered the sound effect. But after looking into it and finding no fault in my code whatsoever, I’m more frustrated with GameMaker Studio than ever.
The Open World Arcade
The event itself was great. I sat in my chair all day, and people came up and gave Ancient Technologies a try. I tried to give each person the experience from the start of the game, rather than leave the Atari console hooked up and playing Asteroids already. Players were about 50%-50% on having owned an Atari or played one before. I had people of all ages try it out, from about 4 on the low end to a gentleman who looked to be in his 60s.
Most of them were uncomfortable with the controls at first, having forgotten the function of the Down direction, or never having known it. I observed that nearly all of them immediately went to the dual analog sticks on the gamepad, a conditioned reflex that explaining the controls to them would not undo. About half of the players opted to use the keyboard controls rather than the gamepad, and it occurred to me that I could just as well have not bothered providing the gamepad at all, and no one would have really missed it.
Almost everyone started out playing the Hyperspace variation, and everyone’s immediate reaction to starting the game was to rapidly touch every control on the gamepad to figure out what did what. In virtually every case, the first thing they did was blink out of existence, into hyperspace, and then re-appear, confused and often about to collide with an Asteroid, which would promptly kill them. I realized pretty quickly that Hyperspace was probably the worst ability to start players off with, and that Shields or Flip would have been a much better choice. I needed to explain to most players that there were several variations, and how to access them using the Game Select switch on the console by clicking it with the mouse.
Many players seemed to hesitate after losing a life, reaching for the mouse for some reason. I’m not sure what they were thinking in the moment, but perhaps they weren’t aware of how many lives they had remaining, and thought that they would need the mouse to restart the game. But most players didn’t play more than once, even though I told everyone they could play as many times as they liked. It occurred to me that using the gamepad’s start button would have been convenient, but this wasn’t really a design decision given that I was trying to replicate the experience of hooking up and using an Atari 2600, and the Game Reset switch is on the console, not on the controller. A few players left their game in-progress, but I didn’t let it bother me.
I had left a stack of flyers with information about the game, but if anyone took one, I’d be surprised. I don’t think anyone did, although a handful at least looked at it. I also left a notepad for players to leave feedback or a comment, and only one person did so. I’m not sure what to take away from that, to be honest. I didn’t push anyone to leave me feedback or take a flyer or one of the business cards that I had, unless they engaged me in conversation and seemed like they would like one, then I gently offered that they could take one if they wanted.
Most of the “feedback” I obtained was through silently observing players and noting common patterns in how they engaged and interacted with the game. This gave me a bunch of ideas of things that I wish I would have thought of to put in the game, but couldn’t have thought of without watching someone else experiencing the game. Any time I noticed anything that could have been added or changed to make the experience better, I took note of it. Much of this was help/tutorial text on screen. Although, I wanted to avoid that, since the first part of the game is figuring out how to hook up the Atari. But I think something, like a ? icon in the corner that appears after several seconds of nothing happening, could have possibly helped players get into the game. As it was, I found that I had to explain to most of the players how to set up the Atari, and I think that defeated much of the purpose of letting them figure out the “Mystery of the Ancients” for themselves. Another feature I would have liked to add was an idle timer that reset the game after a period of inactivity, so that it would always start the next player off with a fresh experience even if I forgot to reset the game after the last person.
In all, it was a great experience for me to show my little game to random people and see how they interacted with it. Thanks to the Akron Art Museum and their wonderful staff for organizing this event.
I had one more idea for an interesting map. This time I wanted to emphasize the importance of the Bridge to the map. So I thought, I would split the map into two halves, and put the bridge between them, as the only way to get from one side of the map to the other.
This was my prototype:
I thought that this map had interesting potential, but I also had some concerns. I wanted to make sure that the traffic flow would still work, and that by splitting the map in this way, I didn’t make it likely that random movement would tend to collect everybody in one area of the map, and I wanted the random distribution of characters to not be unevenly distributed between east and west ends of town. I also wanted to ensure that the subway system would be evenly distributed, both in terms of entrances and exits, and that the subway provided useful shortcuts.
As I walked through this map, I quickly decided that a less obvioulsy symmetric map would be more interesting. I re-arranged screens and quickly came up with this:
The connections between the screens are a bit different from my previous versions. Moving horizontally, the map wraps, shifting up a row if you’re at the east edge, and down if you’re at the west edge. Vertically, the columns wrap around without shifting. The Bridge screen is different, when moving vertically it wraps around back to itself. This serves to keep the Bridge screen isolated, so bridge pieces will be somewhat protected from the helicopter when placed here.
Finally, the extreme corners of the map, the northeast and southwest corner screens, are connected to each other horizontally, creating a second junction between the two halves of the map. This helps provide a route for Clark Kent to walk to the Daily Planet at the end of the game, without being forced to use the Subway system, although this overworld walking route is very long.
The subway exits are again unchanged, and the subways provide several routes for traversing from one side of the map to the other. I arranged the subway system so that each colored subway screen has two exits on the opposite side of the map, and one exit on the same side of the map.
Thus, despite the broken bridge in the center, this map has very nice traffic flow between both halves of the map, many interesting shortcuts, and a challenging layout to learn, without the confusing one-way vertical borders on the Phonebooth and Bridge screens that vexed many beginner players of the original. After playing this map a few times, I think it’s every bit as good as the original, and might even be more fun to play. And aesthetically, I love that the Bridge is now the centerpiece of the map, and truly joins the two halves of Metropolis together.
Here’s the map again, with the wrap routes indicated:
I don’t think there’s much more I can do with the map after this. So I think this is where I will leave the evolution of the map variations.
I would still like to introduce randomized bridge piece starting screens, but to figure that out will require more understanding of the source code than I currently have.
I also think it would be neat to make a super-rom that includes all of the map variations in one file, switchable via the Game Select switch. Again, this is beyond my current capabilities with my very limited understanding of the source code and 6502 asm.
You can download the entire collection of romhacks here:
My research on Superman has lead me to a deep understanding of the map topography, and I have come to regard it as an inspired design. But whenever I hear people talk about Superman, I feel like I must be in the minority. People who like the game tend to agree with me, while people who don’t, don’t.
Often I’ll hear players who do not have the appreciation for the game that I have complain that the map is a weakness in the design. I always rebut this by saying that yes, it’s confusing at first but once you learn it, it’s actually a strength. I can point to all the shortcuts that are made possible by the map topology, its utility in weighting the randomness of the AI movement, and argue that it’s actually beneficial that the map is confusing, because it makes the overworld seem bigger than it really is, and adds to the challenge of the game.
But I think it would be even more convincing to demonstrate alternative maps, and let players experience them and decide for themselves.
It’s fairly likely that I’m the only one in the world who cares about this, and I’m almost certainly the only one who cares about it as much as I do. But what the hey.
I decided to see if I could could learn how to hack the ROM for Superman, and change the map navigation in order to rearrange the map screens. This would be preferable for authenticity, but it might also be limiting, in terms of what’s actually possible.
If that doesn’t work, or if I have ideas for expanding on Superman‘s design that aren’t feasible in a romhack, the other option would be to remake Superman in GameMaker, keeping it as faithful to the Atari version as possible, and experiment with the map that way.
The easiest Map design to implement would be to make the vertical and horizontal sequences identical, and to make up/right be “forward” and left/down be “backward”. The subway system could be left unchanged, up to go to the next station, and any other direction to exit back to the overworld, keeping the exit screens the same as in the original. At the end of the list of overworld, we can loop back to the beginning.
The biggest problem with this redesign idea is that there are no overworld shortcuts, other than to take the subway. To get to/from anywhere, it is always a straight line. This is slow, tedious, and to me, it seems like it would be boring. Subway travel helps somewhat to speed up travel, and becomes more important. But a bigger problem is that the gangsters can’t really spread out deep into the map by randomly moving in one of four possible directions. Their possibilities have been halved; they can only go forward or backward to the next screen, and so they will all be found in the first few screens, and rarely if ever would they make it to the end of the map.
But on the plus side, this map is extremely easy to navigate, much harder to get lost in. Gone are the one-way vertical transitions from the Phone Booth and Bridge screens, and the confusion they created. This might make it an ideal variation for a very young player, or for someone who is very inexperienced with Superman.
The other easy to understand map would be a cartesian grid. We have a problem in that 21 overworld screens do not map neatly to a regular grid of equal rows/columns. We can take a 5×4 grid to get 20 of the rooms in, with one room left over. We could truncate the overworld to simply remove this screen, which is the easiest solution. At the end of each row or column, we can either have a hard edge, where you cannot proceed beyond, or we can wrap around to the start of the row or column, or we can increment the row/column and move to the start of the next row or column. I’m not sure how to make a hard edge work, though. The easiest way would be to make these edges refer back to the same room, but doing it this way, Superman would still warp to the other side of the same room, which would be weird. Still, as a proof of concept, it’s quick and easy to do.
The advantage of this map is that it would be still be easier to understand and learn. The disadvantage is that, at least using the first two traversal approaches, you can no longer go through the entire overworld by going in one direction. When the world loops, it will only take you to the beginning of the the current row or column.
The ROM Hack
I looked into it and discovered that the ROM hack path would be much easier than I had anticipated. So much of the work had already been done for me by others.
I searched the web and found decompiled assembly source code for Superman, which had been nicely annotated.
This saves me a ton of time. I don’t have to learn how to disassemble the rom myself, and I don’t have to learn 6502 Assembly well enough to be able to make sense of the disassembled code to figure out what’s going on.
So, literally, all I had to do to get started was:
Install Visual Studio Code
Install Atari Dev Studio plugin
Open the decompiled superman.asm
Test it in Stella
I’m astounded that it’s this easy. The annotated source code is documented well enough that I can tell where I need to make my edits, and what the changes I need to make are. Hats off to the homebrew community for developing these tools and making the information generally available!
First, I did a test compile to make sure that the decompiled assembly that I had was viable. It compiled right away without any problems. I fired up Stella and ran it, and it ran, and seemed to play exactly like Superman. Success!
To make the edits, I read through the source .asm file and tried to understand what I could. Fortunately, the file is reasonably well documented. Without actually knowing 6502 ASM, I can’t say I understand everything I’d like to, but I can see enough that I should be able to make edits by trial and error, and make progress.
From reading through the code, I infer that the stuff after a semi-colon is a comment, so the different comments explaining the Offsets help me to understand that Offsets 4 through 7 have to do with the connections between the different screens in the map. All I should need to do is update them with different addresses, and the map will change! Easy!
In my next update, I’ll present my modded Superman maps and do a little analysis of them.
This morning, my email inbox greeted me with another announcement from Atari, explaining how excited they were that the VCS is “going into pre-production.”
I’m not entirely clear what this means, given that the normal understanding of the term “pre-production” would seemingly cover the entire history of the AtariBox project, given that nothing has gone into production so far.
Some more teaser images showing prototype hardware in various stages of assembly, and some explanation of the design/layout of the motherboard, apparently in response to the reaction to the first announcement where they showed an image of the motherboard, which lead to speculation about whether it was real, or complete, or might have been hastily created by a company that specializes in rapid turnaround in order to give Atari something tangible to show backers while they continue to delay more meaningful steps toward release of a product.
There’s some more information in Atari’s latest Medium article — it is capable of running both Linux and Windows (hardly surprising, given the AtariBox is an AMD x64 system); it will have a fan-based cooling system (to me this is disappointing news, as I would have hoped for a silent running system, but again not terribly surprising, given that most computers these days are fan-cooled); default RAM will be 8GB (2×4) and user upgradeable, some frankly boring talk about plastic injection molds… and they’re still working on the actual software that will run on the system, although they had teased something at E3, it’s not ready to run on this hardware yet. Which is really bizarre — if this AMD x64 system is capable of running Linux and Windows, and if they can tease the front-end that they’ve been working for on some type of computer system, then what’s so different about the AtariBox hardware that Atari can’t run it on the machine they’re designing it for right now? Why couldn’t they all along, every step of the way? Something is not right about their software delivery lifecycle if they can’t create builds that will run on their target hardware.
I guess if there’s one positive thing to take from this announcement, it’s that Atari are apparently stepping up the frequency of their announcements, which may be a good sign that they are actually making progress with bringing their vision closer to reality.
That is, however…
Today The Register is reporting that Rob Wyatt, the architect of the VCS, has quit the project, and claims that he hasn’t been paid in 6 months. It was reported earlier that Wyatt was starting a new project, and after Atari’s previous announcement, rumor boards were awash with speculation about whether Wyatt was still on board with Atari. Atari’s PR deflected questions about it, but it’s clear now that Wyatt is no longer working with Atari on the VCS project.
The Register’s reporting on this project has been very thorough and is to be commended.
Sadly it’s looking more and more like AtariBox has been smoke and mirrors, underfunded wishes, and — let’s be frank — lies, and appears to be increasingly unlikely to launch. And even if it does, there’s no indication that it will be worth buying, due to a lack of first-party exclusive game content.