If you go through the posts here you’ll find a few where I was trying to de-make Sierra On-line’s King’s Quest game. They’re some of the most visited pages on the site (probably because people are looking for maps of the actual game not my demake…) I was attempting to translate the graphical text adventure game into just a text adventure. I had the game mapped out and had started placing objects into the game when two things happened that killed the project. The first was my limited knowledge of the engine I was using, Inform 7. The second was my computer dying. I thought I had backed up all my files before wiping the old computer but when it came time to copy everything over to the new one… and with that I dropped the project to move on to other things.
I’m ready to try again now! I’ve got some books that should help too. I picked up Aaron Reed’s Creating Interactive Fiction with Inform 7, a nice thick tome that I’m hoping should help me figure out the intricacies of Inform when I get stuck. And The Official Book of King’s Quest, a guide to the game’s that I’ll be using as a pseudo design document for my KQ1 de-make.
I’m going to take a little more time this go around understanding Inform’s language before I take on the entirety of KQ1. It was easy enough to create a giant map of Daventry in the Inform engine but populating it with objects and people to interact with proved quite a bit more difficult. I’ll easier make some smaller test games first or build up the game in small sections that I can just add to each other in the end…
I guess you can look forward to seeing these and perhaps playing them too?
I bet you thought I’d forgotten all about this, hadn’t you? Well, you’re only mostly right! I hadn’t forgotten! I just got really busy and then the de-make got really hard. As easy as it is to create rooms and items in Inform 7 it isn’t so easy programming for how said objects, and people are supposed to interact with the player.
My first hang up was not having all the items the player can pick up in each room simply be listed whenever they typed ‘look.’ Then it was getting a Character to reply to the player when the player talked to him. Next, I realized I needed to explicitly tell the game that some items couldn’t be picked up and carried away by the player (like trees, rocks, rivers, etc…) It dawned on me that I might need, no I definitely needed some help.
I did some research and this book: Creating Interactive Fiction with Inform 7 kept popping up. So, I ordered it. I’d taken myself to the limits of winging it with Inform 7, I have the map, I have the various items, and I even have some characters in the code. But, none of it works together.
I hope to fix that soon! Barring that. I might put the de-make on the back burner and try something a little simpler, and original first. You wouldn’t think a 20+ year old game would be such a complicated beast. And, I’m sure for coders and designers it might not be. For me, though this has been quite the challenge! I’m dedicated to seeing it through to the end though!
Making rooms is the easiest thing you can do in Inform 7. the code consists of nothing more than: “The Castle is a room.” That single short sentence after being compiled will create a single room in a very simple and very boring IF game. Add this to the end of that sentence: “”Your view is dominated by a large, weather-beaten castle.”” and now your room has a description. Add “It is north of the Road. It is east of the Mountain Pass” and now your IF has three rooms and if you were playing it you could freely move between the them. The entire program would look like this:
The Castle is a room. “Your view is dominated by a large, weather-beaten castle.” It is north of the Road. It is east of the Mountain Pass.”
Since making maps was the simplest part of designing the game I decided to start there with the KQ de-make (KQD). I printed out a copy of the the map for KQ1:
I figured I’d just make a copy of the map and be done. It’d be super easy because I didn’t have to do anything but cut and paste. As I started to do so though and I as I looked at my map in Inform. It didn’t make a lot of sense. The map for KQ has a lot of unused space in it. Daventry is a 6 x 8 grid with 48 screens in it. Of those 48 at least 20 of them have nothing in them that the character can pick-up or interact with. In some of them random creatures might pop up but there is nothing for the player to do but admire the primitive computer art and read a couple of boxes of short, descriptive text. While this seems like bad game design, and it is, at the time what KQ was doing was completely new. This was the first PC adventure game that allowed players to walk through a world and just look at the surroundings with their eyes. Before KQ you had nothing but descriptive text. If I did copy the map as is, I’d be creating rooms in which there was nothing for the player to do. Some empty rooms make sense to create atmosphere, but having nearly half of them was too much.
Another thing you’ll notice is that the maps consists of screen capture each area of the map consists of a single image that filled the computer screen. The player moved from screen to screen traveling left, right, up, or down. This makes a lot of sense for a grid-like world. IF though doesn’t have screens and therefore is not based on a grid, the convention in IF is that the player can move in not only the four cardinal directions (N,S,E,W) but also the four ordinal directions (NE, NW, SE, SW.) If I were to use the original map in IF and add in the ordinal directions nearly every place would be accessible from the other and mapping as well as memorizing routes would become overly complicated.
I’d like to say I noticed this almost immediately and quickly corrected the problem… I was done with about 1/4 of the map before I realized I was making useless rooms and over-connecting them before I realized that this wasn’t a “good” idea. I took out the printed copy of the KQ map and started mashing rooms together, deleting others, and incorporating some rooms into larger regions (important for things later.) I went through four of five iterations of the map before I settled on the one below. As I move forward though there is no guarantee that further changes won’t be made.
The second level up is the Cloud Kingdom, the first is the mountain stairway between Daventry and the Cloud Kingdom (as well as the upper reaches of a single tree) The starting level is Daventry. CS is the Castle where the player starts. The Castle and the tan colored tiles around it were where I started making the map and still have the cardinal directions as the means of passage, this is the “developed” part of Daventry and have the right-angled roads would show that. The blue and pink regions are the two rivers in Daventry (here named Leams and Nene) the river in the east is where the gnome is located the one in the west is where the hole to the Leprechauns. GH is the witches’ gingerbread house, GP is the Goat Pen, and CF is the clover field. That should be enough to orient you. While the original game contained 48 rooms (not including interiors and the cloud kingdom) KQD only contains 34, a reduction of 31%.
With the map done the next step will be adding descriptive text to each room. I plan on ripping much of it from the original and then populating the rooms with objects and characters. Once that is done, and that is a lot. I need to create the code that will allow for the solving of puzzles, the interaction of various objects, NPCS,and the ability for the players to interact with said NPCs.
I got a lot of work ahead of me.
If you have any questions, comments, criticism, help, etc. Please do leave them in the comments I’m very new at this and I’m interested in whatever you have to say.