Researchers still don't know why this Atari 2600 game works

Incredibly efficient code that nobody can figure out... written by a stoner who was too blitzed to remember how he himself came up with the algorithm. Brilliant.
Haven't we all. I still have a code from back in late 80s and early 90s that I'm asking myself what that really me that wrote it.
 

mbk34

Posts: 65   +20
Seems pretty simple to me. Each row is mirrored on either side. Each side is made from 8 blocks that are either there or not there with a border of blocks on either side. That means each allowed row can be held in one 8 bit byte. I'd then just have a list of valid rows that can continue from any given row and pick one at random maybe with the option to repeat the preceding row. To improve it a bit you could have different probabilities for each potential following row which might produce prettier looking mazes. Then all you have to do is add the power up and bad ghosts in the free areas.

Levels could get longer as the game proceeds and you'd alter the probability of adding the power ups and the bad things as the game continues. It doesn't look like the most interesting of games or like rocket science.
 
Assembly is different than higher languages but certainly decipherable. It would help to see the code but I am guessing the ones who have looked at it may not be familiar with it. Looking at the Reddit messages I see where the confusion lies and some have soled this easily.

I have been up late many a night and resorted to , uhh, enhancements and it is surprising what you can come up with.
 

Fox God Records

Posts: 23   +17
This is how we're eventually going to end up with warp drive.

"He told me it came upon him when he was drunk and whacked out of his brain, he coded it up … overnight before he passed out, but now could not for the life of him remember how the algorithm worked."
 
Assembly is different than higher languages but certainly decipherable. It would help to see the code but I am guessing the ones who have looked at it may not be familiar with it. Looking at the Reddit messages I see where the confusion lies and some have soled this easily.

I have been up late many a night and resorted to , uhh, enhancements and it is surprising what you can come up with.
Some larger software houses were developing the code on PDP-11 and then porting it to microcomputers, but many didn't have that privilege.
So for us "unprivileged", we didn't have much choice with compilers and high level languages (apart from native BASIC), best tool you had was monitor and long nights...
 

kmo911

Posts: 206   +22
If the codes are inside a game it may be encrypted by atari game engine. so putting someting betwen a rom file and a atari editor reader could revale this game code.
had it benn converted from a nother rom module a copy from someting or just coded in a way that was new in that time. now like pyton it was a game that was annoying difficult and ended fast. if enabling cheat code for unlimited wall cracker it would be playable. and a remake in unreal engine 4.5-5.0 to just try out how I was working. but with better image quality. REMAKE it and dont forget that code. if the code for crysis 1-? are forgotten hov can it be recoverd then ? how about a time machine back in time ?
 

Mugsy

Posts: 638   +101
I edited a similar program way back then and have a bit of insight that might help:

As mentioned, the maze is assembled "on-the-fly" as it scrolls by on screen using "jigsaw" like squares to build it line by line. But there was also a "hidden" line... a randomly zig-zagging path of success... being drawn at the same time (invisible because it matched the maze floor color), and the maze jigsaw piece that overlapped the line ALWAYS had to have two open ends to ensure it was never blocked.

The other squares only had to match the walls of the preceding row to remain consistent.

The maze could only be scrolled in one direction (no going back) because there wasn't enough memory to recall what was previously drawn.
 
  • Like
Reactions: donnieD
I had saved this article for later reading as I was interested why researchers wouldn't "know why this game works". I finally got around to reading the referenced scientific paper and I was disappointed to find that this news article is very misleading, but pleasantly surprised by what the paper is actually about.

The researchers consider themselves digital archaeologists - reverse engineering code and techniques from an Atari game. One of the things they looked at was the maze generation algorithm which uses a 32-byte lookup table. After trying a few things to see if the table was following some patterns, they conclude:

"Our conclusion is that the table values were manually chosen, or manually tuned, by the maze algorithm designer."

There is nothing magical about this algorithm, as the researchers themselves already conclude earlier in the paper:

"This is a “make-break,” and acquiring these allows the player to make a new piece of maze wall or, more importantly, remove an existing piece of wall."

"The fact that make-breaks are needed speaks to the algorithm used for maze generation (...)"

It is important to note that the paper spends a lot more time on the history of the game (as you would expect from archaeologists). This is also why they contacted the original developer to understand how certain code came to be and what provided the hilarious quote that is featured in this news article.

In short, for those interested in the history of Atari 2600 game development, I would highly recommend the paper, but don't expect to find any unsolved mathematical mysteries.
 
  • Like
Reactions: mbk34
Actually even in the video there is an unsolvable maze. The maze starting at 4:50 needs make-breaks to pass.

I was watching the video and while the voice-over was extolling the magic of the maze generator this maze rolled by.. Oh irony.