Posted By
Csabo on 2023-03-23 20:34:04
| Re: An Enigmatic Map!
Enigma was written by Mark J. Moore and Peter J. Bartlett. What a coincidence that both of them have "J" as their middle initial We're tried to find these distinguished gentlemen over the years, but we could not - no interviews, or other notable mentions anywhere. Google mostly turns up their names on other aggregator sites such as MobyGames. (That said, if anyone knows them, I'm sure Plus/4 World visitors would love to read an interview.)
Mark J. Moore coded a total of 4 games in '85 and '86, and they are all great in my opinion! Project Nova, Rescue From Zylon and The Magician's Curse are beloved classics. He has a certain "neat", "clean" style, excellent use of color, mixing multicolor and hires modes, pixel-perfect sprites and flicker-free displays. (None of them are much for music or sound, though.) But most importantly, these games are fun! The other gentleman, Peter J. Bartlett also coded Robo Knight, another excellent game. Enigma does not give any hints about how the work might have been divided between the two of them. Their names simply appear on the title screen. Did one of them write the code, and the other did the graphics? Unfortunately we can only guess.
This game was featured in our Let's Play! initiative, as the last game of 2020. Chronos and Verona both did videos on it, so if you speak Hungarian, you might want to check those out.
The cover art is not too fancy but still pretty neat, it features a man in a white space suit stepping through the portal door. The blurb... well, let's see. "Endag's castle"? "Secret of Zor"? Clearly that is something that must have been written as an afterthought There's nothing referencing any of this in the game. You don't need much description anyway, any player can sit down and figure out what to do. Move, shoot, collect energy and keys. Simple!
The "ending" (or lack thereof) has been revealed here on Plus/4 World a long time ago as well: there isn't really one, other than a cryptic (and somewhat anticlimactic) message in the "final" room. Note that these final rooms have so many enemies, and they all move so quickly, that it's hard to imagine a casual player being able to reach this location.
With the use of this new map, one can see that the game has no less than 64 screens total! Did you ever wonder how that many screens were squeezed into the C16's memory? If so, now you can find out.
The game screens are made up of tiles. Each screen is divided into 15 tiles: 5 columns, 3 rows. The image below illustrates this:
As you can see, the same tile ($11) is used 4 times. Each tile only takes one byte, therefore the basic screen layout is defined by only 15 bytes. (This is padded to 16 bytes so that the offsets can be easily calculated.)
Each tile is made up of 8*7 characters. There are 32 tiles in total, as seen here:
The 8*7 size has been carefully chosen: each of the characters starting from the top/right can be indexed by a number less than 256. (The last character of the tile, 7 to the right and 6 down, is 247 ($F7) characters away.) This makes the code that displays one tile simple. The tiles take up 8*7 = 56 bytes, which are padded to 64 bytes, so that the offsets can be easily calculated.
The colors are stored per-screen: one color for the walls only, and one color for everything else. This means +2 bytes per screen.
There's additional data for the screens: the location of the energy item (if there is one), and the location of a door (there can only be one per room). The keys are stored separately from screens.
The total data for the map is approximately: + 64 screens * 16 bytes (layout) + 64 screens * 4 bytes (energy item and doors) + 32 tiles * 64 bytes = 3328 ($D00)
The map data takes up a little less than a 3rd of the available space (assuming $3000 bytes) of the C16's memory. (For comparison, were the screens stored as "one byte per one character", the map would take about 53Kb).
I hope you enjoyed this little write-up, discussing the technical details of this game. Sometimes I think perhaps nobody is willing to read this much text, so as a test, if you are a human reading this who is going to respond to this post, kindly make the first word of your post the sound of a duck. Otherwise, Enigma is a fun little shooter, especially for a game written in 1985. It does reward more plays: one can learn enemy behaviour and the maze layout. It's worth picking up for a few rounds!
|