Archive

In my last blog post (Fun with Maps) I discussed the complexities around map development for Interactive Fiction, especially given the design tension between maintaining historical accuracy and fostering engaging gameplay. During my most recent trip to Williamsburg last September, I found that the Colonial Williamsburg Foundation helped address the map dilemma by issuing a simplified version of their visitor map. This is the visitor map that is currently being published (along with the daily events in the colonial city area).

I took this map and eliminated the extraneous information based on the actual game and story requirements. That gave me a very clean map from which to work. You can see that this map provides a layout of the relative positions of buildings, the streets they are on, and distance information.

Using this clean map, I marked the positions of the buildings and other navigation junctures that would be needed in (this version of) the game. Then I connect the locations where I wanted pathways, so that I could visualize the compass headings to use in terms of game commands. (You can see the blue lines connecting the red and green squares.)

Finally, I pulled the background out in order to have the unadorned map to use in building navigation functionality within Inform 7.

The red boxes represent buildings or structures that have further navigation within, while the green boxes are simply outside locations. Using this map, I was quickly able to create basic navigation in Inform 7, and I am using the map as a location checklist for the location descriptions. (Additionally, I am creating the logic in Inform 7 to handle multiple stops at the same location, and requests for more information regarding locations.

In addition, this map allowed me to visualize some navigational shortcuts to help with the flow of the game. For example, I’ve created a custom command “street” that functions at many of the building locations on the Duke of Gloucester Street (that’s the main street running from the College of William & Mary in the west to the Capitol Building in the east). When a player is at the entrance of one of those buildings, using the “street” command will take the player to one of a number of unmarked positions on the Duke of Gloucester Street, between the two cross streets that apply to the building where the player is. From the unmarked position, the player can see the buildings up and down between the cross streets and choose to navigate directly to any of them. These unmarked positions on the Duke of Gloucester Street are not accessible through standard compass-direction navigation.

Within the next week or two, I’ll have a robust version of the game navigation completed in Inform 7 and available for download to the original Kickstarter backers.

Maps are essential to many Interactive Fiction games, especially those that involve activity in various locations. Interactive Fiction game maps that deal with real locations, however, are challenging to implement, as there is a trade-off to be had between realism and playability. If the design is meant to represent the physical layout with utmost fidelity, the details of the map can potentially slow down and frustrate game play as the player is forced to move from one seemingly meaningless location to another in order to get to the desired destination. It’s similar to the counterpoint between a flight simulator and a flight game–the realism of a true simulator can be very boring, unless it’s the simulation itself that interests you.

Likewise, the conflicting visions of the HWLN: is it a simulation of the physical layout of Williamsburg as it was in the months leading up the signing of the Declaration of Independence, or is it a game about the events taking place during that time? That conflict plays itself out everytime I return to the map and struggle with the appropriate level of detail to include. I’ve been wanting the game to be both, but that may not be the wisest choice for the HWLN as a game.

Part of the challenge was addressed in part by the new daily maps published by the Colonial Williamsburg Foundation for visitors. The new map (show in the picture above) is actually a streamlined version of an earlier visitor map which you can view here. The older map is much more detailed, and perhaps in the Colonial Williamsburg Foundation’s thinking, it was not as user friendly. Whatever the case, the new map gives me a good template for a more streamlined game map, on which I am currently working and will implement at least initially in Inform 7.

So for the sake of playability, I’ll work with a less detailed map. But at some point, as an exercise in modeling an accurate picture of history, I’ll return to the “high resolution” version in order to satisfy my inner purist.

One of the locations that will be an area for exploration and interaction within the game is the Peyton Randolph House. Peyton Randolph (1721-1775) was a key figure in American history, and had he not died in the fall of 1775, it is likely that his signature, not John Hancock’s, would be iconic on the Declaration of Independence.

While much of the floor plan research has been possible through architectural documents from the Colonial Williamsburg Foundation, I discovered that the Randolph house historical layout was not well documented. Last week I was able to travel to Williamsburg for a quick visit and tour the building. I took a number of photographs and sketched out the floor plan on a pad of graph paper to capture the layout. I’ll post some of the pictures here shortly.

Another piece in place. While the progress is slower than I’d like, the movement is forward!

In the last entry, I discussed the challenges of producing logical text adventure maps based on real geography; in this case, the physical geography of the city of Williamsburg in the late 1700s. The good news is that the streets and main building locations have been preserved, which helps in map development. But the challenges of using a real place that needs to be reproduced in the context of an adventure game map are even more challenging when using exisitng building architecture. The constraints of walls, doors, hallways, rooms, and stairs along with their comparative physical location relationships don’t leave much room for “adventure navigation license.” The biggest challenge is in using the compass rose as a foundation for navigation, where you have 8 directions of movement from any particular point (north, northeast, east, southeast, etc.). Add “up” and “down” for a total of 10 basic commands that can be typed to specify movement. Consider the following diagram:

The player location can represent anywhere in physical space: a forest clearing, a small cave chamber, a grand ballroom. Adding the “up” and “down” directions provides a good deal of movement options including 3-dimensional flexibility, for a total of 10 choices for player movement from any given location in the game. However, particular real locations can be difficult to reproducing using the compass rose navigational framework without making overly compromising game navigation decisions. For example, suppose we’re dealing with a long hallway with many doors on both sides, like a hotel hallway:

We can see here that a single “location” representing the hallway is not a practical solution to get to the individual hotel rooms; there four north directional choices and four choices for going south. While creative programming can help (“enter room 101,” “enter room 103,” “enter room 105,” etc.), that approach tends to add to the command complexity for what should be one of the easier tasks in Interactive Fiction play: moving from one spot to another. A different approach might be to segment the hallway:

Using this approach, we see that using the compass rose commands are sufficient for us to navigate to any location on the map without any amiguity. But there’s a tradeoff in that getting from Hall Location 1 to the room in the far northeastern corner would take five steps in the game. The can be tediuos for the player, especially if there is not a particularly great amount of game content to be discovered in each of those Hallway locations.

It is this navigation design issue that is driving the development of the building interior set of game maps. Some creativity allows us to “bend” the compass rose directions to suit our needs, for example:

Here we have a location that could be a hallway, with accesssibility to three doors on the northern face of the hall and three doors on the southern face. We would need to address this layout in the text description of the location, something like, “You are in an east-west running corridor with six doors total on the northern and southern walls. North of you is a single door, and you likewise see doors on the northwest corner as well as the northeast corner of the corridor. The southern wall has the same arrangement of doors.”

As work progresses on developing the Williamsburg buildings’ intererior maps, it is this interpretation of the compass rose that allows us to achieve an acceptable level of architectural fidelity. The Governor’s Palace is easily one of the most complex structures being reproduced within the game, and it is also one of the key narrative locations. There are four floors to the Palace, and the maps are displayed below:

This mapping structure gives a total of 44 separate player locations for the game, but remember that these 44 locations are at the single Governor’s Palace location on the overall physical map. There are still quite a few buildings to map (which means researching all the architectural plans from the Colonial Williamsburg Library. Lots of fun in the days ahead!

Developing a map for an Interactive Fiction environment can be challenging especially if the game is based on real-world geography, as is the Historical Williamsburg Living Narrative. A large part of the value of this game is the historical accuracy–which not only includes the events of the time but the geography and architecture as well. In designing the game map, I am considering external landscape and building floor plans separately, and here I describe the process by which the external landscape portion of the game map was developed.

I started working from the map provided by the Colonial Williamsburg Foundation for guests visiting the city. Below is a scanned version of that map, already partially “cleaned up” (that is, much of the extraneous information–modern buildings, bus route lines, restroom symbols, etc.–have already been removed). After working with this map for a brief period of time, I found a few characteristics I didn’t like. Most significantly, there wasn’t a sufficient level of detail regarding building shapes and grounds, and the relative sizes, locations, and distances between buildings wasn’t accurate enough for me to use in creating descriptions.

At this point I changed my approach. In order to ensure fidelity to the actual physical layout of Williamsburg, I decided to use satellite imagery for the initial layout work. Google Maps provided excellent resolution from the Governor’s Palace in the north to the Public Hospital in the south, and the College of William and Mary in the west to Christiana Campbell’s Tavern in the east. The city’s overall layout was depicted quite clearly.

Once I had an accurate map from which to work, I was able to select the significant buildings, associated grounds, and pathways between that the player would be using. I superimposed this image on top of the map, and this gave me the level of detail I wanted for development.

Peeling away the city map, this is what the initial pass at the game map looks like. While this map contains all the information needed to create accurate location descriptions (for example, it will be important to note the distance of the College of William and Mary from the city proper), this version of the map is a bit difficult to work from in building the Interactive Fiction navigation scheme. For that task, a logical map is more appropriate.

This logical map was built from the physical line map (above), connecting locations using only the eight compass directions, and not taking into consideration the sizes of buildings or their actual distance from each other. Also, no assumptions can be made between “nodes” in the map below if they are not connected by a direction line. In other words, if a node is to the west of another node, but they are not connected by an east-west line, they may not be precisely east and west of each other. This map simplifies and compresses the physical map information for ease of navigation programming. The yellow nodes represent place locations where the player may go, while the blue nodes represent buildings or structures that have additional rooms or internal locations not depicted here. Those additional locations will be represented in further mapping exercises.

By using this logical map along with the visual information obtained from the line map superimposed from the Google satellite image, I will be able to create rich in-game descriptions of the physical Williamsburg environment. For example, an east-west running path on the logical map may actually be a long, curved road on a hilly slope, and that level of detail will be captured in the game for a rich and hopefully satisfying experience.

Tomorrow my family and I will arrive in Williamsburg, where we will spend the weekend and depart on Monday. The goal will be to gather research materials from the Colonial Williamsburg Foundation and perform a physical survey of the colonial city, documenting with photographs and audio notes for later transcription. Technically, while this is work, the environment will cover our days with a great measure of enjoyment.

I’d like to take this opportunity to thank one of the project backers, who also happens to be a personal friend that lives near my home (in Central Florida). The family and I left on this journey last Thursday. We drove up to the suburban Maryland area to visit my mother and sisters (who have their own families and homes between Washington, DC, and Baltimore). In my haste to get on the road, I actually forgot the camera I most wanted to use for the Williamsburg photography. (I also forgot our Williamsburg passes, but since we are annual members, I wasn’t worried about getting in.)

My wife called Marcy M., our backer/neighbor and asked if she would be able to go to our home, pick up the camera and passes, then ship everything to me in Maryland. Marcy came through, and now I’m happy to have the camera I most wanted to use for the photography!