What’s So Random About Ms. Pac-Man

I’m not going to say that famously Ms. Pac-Man is a more random game than Pac-Man, because who really knows things like that who isn’t a hardcore gamenerd. But among hardcore game nerds, it’s common knowledge. (If you didn’t know, A. congrats on your coolness, and B. sorry to now destroy your coolness.) Here a video about how randomness works in that game, from Retro Game Mechanics Explained (21 minutes):

Pac-Man is a game that is vulnerable to patterns: if you do exactly the same thing each time on the same level, the same results will occur. There is one pseudo-random element in Pac-Man though: when vulnerable ghosts reach an intersection, the code picks an arbitrary address from a range of memory addresses, then uses that value to pick a direction to decide which route to take. Two implications of this: vulnerable ghosts are most likely to head left at intersections and least likely to go up, and if any byte in that range changes the behavior of the game slightly changes too, even if it’s not an executable byte. Patterns still work in Pac-Man, despite this pseudo-random function, because the seed is reset at the start of every level, so if you do exactly the same thing, vulnerable ghosts will still have the same information fed to their movement routines.

Ms. Pac-Man has other sources of randomness: the ghosts, in Scatter mode, use a different source of pseudo-randomness to decide where to go, one that isn’t so easy to manipulate; and which fruit appears and which of four predefined routes (three for one of the mazes) it’ll take through the board.

Ms. Pac-Man doesn’t have its ghosts scatter periodically through the level like they do in Pac-Man. They only scatter at the start of the board. It’s not much randomness, but it’s enough to upset rote pattern creation, since each ghost has the opportunity to make several decisions of which path to take during that period. The way the randomness is handled is interest itself. The ghosts pick one of the corners of the board, much like they would in original Pac-Man, but randomly, when making their choice of target to home in on.

So there! Now you can amaze your friends, if it were 40 years ago and your friends were then able to be impressed by your knowledge of Ms. Pac-Man! You’re retroactively welcome!

Random Elements of Ms. Pac-Man (Retro Game Mechanics Explained on youtube, 21 minutes)

Figuring Out Yars’ Revenge Code From Its Graphics

What is Set Side B about? We talk about old arcade and NES games, Nintendo things, weird gaming-related videos, ancient MMORPGs, and other weird and idiosyncratic things largely as they inspire us, much as how beta particles and gamma rays inspire random atoms as they pass through them, causing mutations and cancers along the way. (Alpha particles are too bulky to pass through, but that’s really just highly energetic ionized helium anyway!)

One foundational aspect of what we choose to highlight, though, are the extremely technical things, and wow, in that regard today’s link delivers. The brilliant Youtube channel Retro Game Mechanics Explained, which appears here semi-frequently, did a video on the Atari VCS/2600 game Yars’ Revenge that has to be seen to be believed, if not always quite understood.

It’s been random floating game knowledge for a while that the “Neutral Zone” area in Yars’, a flashing and coruscating band of lights that serves as something of a safe zone for the player’s bug, was the direct result of reading the game’s own code out of memory translated and displayed on screen. After all, machine language opcodes are just data, and the VCS has such a hugely limited address space that any reuse of that data is helpful.

RGME went through the graphics displayed on-screen and tried to see how much of the game’s code could be pieced together using it. The answer was, a fair bit, but not all. The process is really the most interesting part about it. Here it is:

Of particular note, the top comment on the video (because it got pinned there by RGME) is from Yars’ Revenge creator Howard Scott Warshaw himself!

In passing, let me just comment for a moment on what a weird phenomenon Yars’ Revenge is? It’s the best-selling original (non-port or license) piece of software for the old Atari. It’s such a weird artifact. It’s not a traditional style of game design. It’s got atmosphere, and strangely evocative sound. And it has that odd easter egg that can just outright end your game if you’re not careful. It really feels like an object of its time, that couldn’t have both come about and be as popular as it was in any other age. It didn’t inspire many imitators. But, it did come about, and it was popular, and I’m glad that’s true.

I watch this video and I wonder that it seems targeted so directly at me personally, that I wonder if anyone else might enjoy it at all. But then I look at its view count and see it’s approaching 200 thousand in around two weeks, so someone else out there must like it too. So: please watch the video, if you care about bits and bytes, opcodes and operands, and Exclusive-Ors. Or want to learn about those things. If neither is true for you, I’m sure there’ll be something more to your tastes tomorrow.

Reverse Engineering Game Code from the Neutral Zone in Yar’s Revenge (Youtube, 41 minutes)