This game is quite simple in how it uses the Atari 2600 hardware. Atari Hardware can draw exactly 6 things on a scanline: Playfield, Ball, Sprite 1, Sprite 2, Missile 1, Missile 2. So Adventure made the player be the Ball, the thin walls (seen on two rooms) be the missile, and two of game objects become the two sprites. There is also the torch-light sprite that can take the place of one of the game objects in dark rooms, drawn behind the background.
The game makes no attempt at all to re-use a sprite slot for another sprite appearing further down the screen. It's just two sprites, then no more.
The game also uses the hardware's pixel-level collision detection to check for collisions rather than bounding boxes, so when the sprites are flickering, they cannot collide with the player. But collision detection is not the only way that objects can interact, there's also the Bat and Magnet, or the dragons having objects to guard/run away from. The bridge also makes the game ignore player collisions for a particular bounding box inside the bridge.
Adventure kept it small mainly by indirection. Each room has a pointer for its graphics, 4 exit locations, and the color/darkness flags. The game doesn't need to do anything special to handle most rooms, so that keeps the code size pretty small. And because it's using pointers to graphics data, room data can even start in the middle of another room's data, so things like a bottom barrier can become a top barrier in the next room to use that data.
The only real time you need to handle things specially is that some room exits are conditional based on whether Game 1 is selected or not.
Because it was so simple to reuse the rooms, there was enough empty space in there for the Easter egg. The "Created by Warren Robinett" sprite alone is a whopping 96 bytes of sprite data.
But you don't need all that much special code to get the Easter egg into the game. You define one additional room that reuses an existing room layout, and add one more sprite to the list of sprites. The sprite is pre-placed in the new room, as defined by the data that initializes all the game objects. The code for the dot mostly uses the existing code for objects, you can pick up and drop objects already, and the dot is no different in that respect. There is a little bit of added code for removing the right side barrier when it's in the correct sprite slot (easy to happen when three objects are in the room), and there's also a little bit of extra code to override the right-side exit for the room.
I'm old, I played the original "Adventure" for the Atari 2600 to death when I was a kid and am a huge fan . And, personally I really liked Pixa. I thought they did a good job of translating it to something interesting with mobile controls and I "cleared it". I suspect maybe only oldies like me seeing it through the less of nostalgia would get into it.
I don't remember how long it took to clear, a few hours at least because it has multiple maps.
Thx for posting this I never ran across it before. I too played the original when it came out and actually wrote to Atari after I found the invisible dot and the hidden room / Easter egg. They wrote me back and told me I was one of the first people to find / report it to them which was kind of an honor for my eight-year-old self. I wish I kept that letter lol
I built a clone of it for Windows using Direct X in probably 1999/2000. I don't have a Windows machine, but I think Microsoft's obsession with backward compatibility means it probably still works:
It replicates the 2600 game, and adds two new levels (additional castle and maze), and two new (optional) objects, a candle that shows more of the labyrinths, and a shield that prevents the dragons from eating you.
It's absolutely amazing to compare Adventure on the Atari 2600 with a fancy, ray traced game today. What's even more amazing is that both have the ability to capture our attention for hours. It just goes to show how significant of a role imagination plays in games.
I found the easter egg in Adventure on my own, however, this was using the method of turning the 2600 power switch on and off really fast which caused the game to boot into a semi broken mode where one of those thin vertical black lines would be moved over, such that you could go under it. that's how I got into the room. I thought if I kept experimenting like this I'd find the source code for the game, but that didn't happen. learned about the dot some years later.
When you bring the dot into the screen with the wall, the wall turns light gray to match the background color. Yet the wall is still there, and still drawn on top of the background and player.
Someone might be misled into thinking that the color change has some effect on how the collision detection works, thinking that because the background and wall are the same color, the collision detection must not work anymore. But this is not the case, the game logic is actually checking that the dot is changing the wall color in order to disable collision for the wall.
I thought I was the only one that knew/did this!
I also did this on my Pitfall 2 (awesome soundtrack, btw) and watch Harry fall through the otherwise solid ground, landing directly beside the gold monkey (or whatever it was) to instantly win the game!! Good times. ;^)
I was only about 8 when Adventure was released. I basically had no interest in it at all. We'd go to Sears or the mall every week and I'd grab a handful of cartridges, but I never wanted this one.
It is very strange considering my affinity for weird stuff. I loved the BASIC Programming cartridge, and later in life, I would amass a huge Infocom collection starting with Zork on the C=64. But this graphical Adventure held no interest for me or my sister. Neither did Superman, which was modeled after it. Sure, I heard a lot about it. I heard enough to squick me, because it seemed that the devs were sort of abusing the hardware limitations to provision this weird adventure-y experience in a graphical format that I would not enjoy. (Nor would I get very far in exploring this world because it was so, picky-picky-picky. If you ever played E.T. on the 2600, you'd understand!)
When Haunted House was released 2 years later, I did pick that one up, out of morbid curiosity, I suppose, and it was kind of interesting, but not something that I spent a long time figuring out. I followed the Swordquest series with interest, (the marketing built those up with a real mystique and some epic fanfare: https://en.wikipedia.org/wiki/Swordquest#Contest) and invested some time in some of those, but still -- I suppose, even back then, I was far more interested in the "twitch" action type games. We loved Pitfall and other Activision titles such as River Raid.
This game is quite simple in how it uses the Atari 2600 hardware. Atari Hardware can draw exactly 6 things on a scanline: Playfield, Ball, Sprite 1, Sprite 2, Missile 1, Missile 2. So Adventure made the player be the Ball, the thin walls (seen on two rooms) be the missile, and two of game objects become the two sprites. There is also the torch-light sprite that can take the place of one of the game objects in dark rooms, drawn behind the background.
The game makes no attempt at all to re-use a sprite slot for another sprite appearing further down the screen. It's just two sprites, then no more.
The game also uses the hardware's pixel-level collision detection to check for collisions rather than bounding boxes, so when the sprites are flickering, they cannot collide with the player. But collision detection is not the only way that objects can interact, there's also the Bat and Magnet, or the dragons having objects to guard/run away from. The bridge also makes the game ignore player collisions for a particular bounding box inside the bridge.
...in 4KB.
Racing the beam - https://en.wikipedia.org/wiki/Racing_the_Beam
Adventure kept it small mainly by indirection. Each room has a pointer for its graphics, 4 exit locations, and the color/darkness flags. The game doesn't need to do anything special to handle most rooms, so that keeps the code size pretty small. And because it's using pointers to graphics data, room data can even start in the middle of another room's data, so things like a bottom barrier can become a top barrier in the next room to use that data.
The only real time you need to handle things specially is that some room exits are conditional based on whether Game 1 is selected or not.
Because it was so simple to reuse the rooms, there was enough empty space in there for the Easter egg. The "Created by Warren Robinett" sprite alone is a whopping 96 bytes of sprite data.
But you don't need all that much special code to get the Easter egg into the game. You define one additional room that reuses an existing room layout, and add one more sprite to the list of sprites. The sprite is pre-placed in the new room, as defined by the data that initializes all the game objects. The code for the dot mostly uses the existing code for objects, you can pick up and drop objects already, and the dot is no different in that respect. There is a little bit of added code for removing the right side barrier when it's in the correct sprite slot (easy to happen when three objects are in the room), and there's also a little bit of extra code to override the right-side exit for the room.
There's a kinda remake/update/reimagined version of "Adventure" for iOS called Pixa
https://apps.apple.com/us/app/pixa/id826977016
I'm old, I played the original "Adventure" for the Atari 2600 to death when I was a kid and am a huge fan . And, personally I really liked Pixa. I thought they did a good job of translating it to something interesting with mobile controls and I "cleared it". I suspect maybe only oldies like me seeing it through the less of nostalgia would get into it.
I don't remember how long it took to clear, a few hours at least because it has multiple maps.
Thx for posting this I never ran across it before. I too played the original when it came out and actually wrote to Atari after I found the invisible dot and the hidden room / Easter egg. They wrote me back and told me I was one of the first people to find / report it to them which was kind of an honor for my eight-year-old self. I wish I kept that letter lol
The author of Atari 2600 Adventure, Warren Robinette has an extensive explanation of how the game works on his personal website: http://www.warrenrobinett.com/inventing_adventure/inventing_...
Play Atari 2600 Adventure online.
https://atarionline.org/atari-2600/adventure
I once ported the game into Flash, using a disassembly of the game as reference. I had it on my website, but it got DMCA-ed off for trademark reasons.
Robot Chicken "advertisement" for Adventure.
https://www.youtube.com/watch?v=rNK44eqvP38
And of course, the "someone get this freakin duck away from me!"
https://www.youtube.com/watch?v=OOQDtZg0sCo
This is my favorite game for the 2600.
I built a clone of it for Windows using Direct X in probably 1999/2000. I don't have a Windows machine, but I think Microsoft's obsession with backward compatibility means it probably still works:
https://naildrivin5.com/adventure/index.html
Here's the C++ code in all its glory: https://github.com/davetron5000/adventureclone/
It replicates the 2600 game, and adds two new levels (additional castle and maze), and two new (optional) objects, a candle that shows more of the labyrinths, and a shield that prevents the dragons from eating you.
It's absolutely amazing to compare Adventure on the Atari 2600 with a fancy, ray traced game today. What's even more amazing is that both have the ability to capture our attention for hours. It just goes to show how significant of a role imagination plays in games.
Although the 2600 version leaves a LOT more to the imagination...
“Of all the original games Atari put out for the VCS, Adventure may be the one that most people are familiar with today.”
Is it? It’s certainly up there. But I would think Pitfall would be the best known today in terms of gameplay.
That aside, I really enjoyed the article.
Pitfall was from Activision, not Atari
I found the easter egg in Adventure on my own, however, this was using the method of turning the 2600 power switch on and off really fast which caused the game to boot into a semi broken mode where one of those thin vertical black lines would be moved over, such that you could go under it. that's how I got into the room. I thought if I kept experimenting like this I'd find the source code for the game, but that didn't happen. learned about the dot some years later.
When you bring the dot into the screen with the wall, the wall turns light gray to match the background color. Yet the wall is still there, and still drawn on top of the background and player.
Someone might be misled into thinking that the color change has some effect on how the collision detection works, thinking that because the background and wall are the same color, the collision detection must not work anymore. But this is not the case, the game logic is actually checking that the dot is changing the wall color in order to disable collision for the wall.
In the https://benfry.com/distellamap/ for Adventure, you can see the "Created By" easter egg plainly in the sprite data :)
Yo!!!!!
I thought I was the only one that knew/did this! I also did this on my Pitfall 2 (awesome soundtrack, btw) and watch Harry fall through the otherwise solid ground, landing directly beside the gold monkey (or whatever it was) to instantly win the game!! Good times. ;^)
if you played adventure:
https://news.ycombinator.com/item?id=35571077
I was only about 8 when Adventure was released. I basically had no interest in it at all. We'd go to Sears or the mall every week and I'd grab a handful of cartridges, but I never wanted this one.
It is very strange considering my affinity for weird stuff. I loved the BASIC Programming cartridge, and later in life, I would amass a huge Infocom collection starting with Zork on the C=64. But this graphical Adventure held no interest for me or my sister. Neither did Superman, which was modeled after it. Sure, I heard a lot about it. I heard enough to squick me, because it seemed that the devs were sort of abusing the hardware limitations to provision this weird adventure-y experience in a graphical format that I would not enjoy. (Nor would I get very far in exploring this world because it was so, picky-picky-picky. If you ever played E.T. on the 2600, you'd understand!)
When Haunted House was released 2 years later, I did pick that one up, out of morbid curiosity, I suppose, and it was kind of interesting, but not something that I spent a long time figuring out. I followed the Swordquest series with interest, (the marketing built those up with a real mystique and some epic fanfare: https://en.wikipedia.org/wiki/Swordquest#Contest) and invested some time in some of those, but still -- I suppose, even back then, I was far more interested in the "twitch" action type games. We loved Pitfall and other Activision titles such as River Raid.
For more good details about Atari 2600 development, check out this GDC postmorterm talk of Pitfall
https://www.youtube.com/watch?v=MBT1OK6VAIU