Behind the Curtain: Over the Shoulder
by Charles Watkins

Part 3: Layout

In this series of articles I’m taking readers along as I make a map.

Since last time, ‘Lost Crusade’ has come alive as I placed the adventure and location objects on the map and got all the important scripts working. (Most of the time, anyway.) If you want to know more about the planning and design work, please see the previous two articles in this ‘Over the Shoulder’ series.

In many ways, this is most enjoyable part of mapmaking, so I’m almost sorry to bring it to an end. From here on out, I may make a few tweaks and embellishments, but I will probably not introduce any significant new functionality. Because I wanted to get into testing in plenty of time to finish by New Years, I have postponed writing the dialog. This will give me something to do while the map is being tested. Dialog can be done through Events assigned to individual heroes so that they speak only when the central character is present. Some of these are Triggered, some are Placed, and some are Timed. There are a couple that are delayed action—when an Event occurs a variable records the day and a Timed Event employs a numeric comparison to see whether some required interval has passed.

I had intended to create a ‘skeleton’ map with all the important objects laid out before beginning the detailing, but I found I could make better progress alternating between the activities. So each edit session, I would work on one area of the map, laying out its main objects and landscaping the area around them. Then I would come back and fill in the spaces. I did this 20 times over the course of about 3 weeks. Each time I incremented the version number so that as I go to test, the map will be version 0.21. On release, I’ll reset the version number to 1.0 and go from there.

For the rest of this article, I’d like to show you some of the notable locations on the map and make some comments about what went into them. It may come as a relief that I will not be lecturing on the history of the Crusades this time – but that will come again when I discuss the narrative and dialog. Next time, I should have test results to cover and will be ready to wrap up the project.

This is the starting area, Eleanor’s hometown of Aquitaine. After she arrives in Akkadia, Louis will capture the town and surrounding area. Each structure has a Triggerable Event called ‘LoseTown’ that causes it to change color to Neutral. Since there is the possibility that the player has a few armies running around, the same Event also unleashes a marauder to clean them up. There’s nothing they can accomplish and I don’t want to distract the player.

I had previously thought I would be able to require the player to keep the Sword of the Gods in Eleanor’s possession, but this turned out to be impossible -- as far as I can tell. The problem is you can test to see whether an army has a certain artifact, but you can’t test a specific hero. So the best I could do is make sure the sword stayed in Eleanor’s party. My script used a condition to determine whether (a) Purple player owned the sword and (b) Eleanor’s party did NOT own the sword. I did this mainly to get the initial party through the portal together with the sword. Once they enter the portal, Eleanor is ‘reborn’ in another party and the sword is long gone.

This is the Sprite Portal. The party has lost the Sword of the Gods in an ambush and will follow the trail to the Portal. I have positioned Sprites along the trail to urge the player to go that direction, but eventually it will be evident that all other paths are closed.

A One-Way Portal is embedded in a Quest Gate. To enter the Portal, the party must first satisfy the conditions of the Gate, which are to have all four nobles and the sword together. I may change this to a Two-Way Portal since the party is not coming back anyway. On coming out of the Portal the party hits a PlacedEvent called ExitSpritePortal, where the action really begins. The key to this transaction was having everything happen on the same move — the check to see the party is all together, the journey through the portal, and the events that occur on arrival.

The problem was not so much how to kill off the starting party so they could be ‘reborn’ in the new world, but how to dispose of the bodies. If I killed them at Aquitaine, some other army could take the bodies back and resurrect them. If I waited till they arrived in Akkadia to kill them, then the player might have Eleanor haul them around – and the reborn Eleanor might be disturbed to come across her own corpse. So I sent them into the dimensional void, where the player can get a glimpse at the space between worlds before the party is killed off. The bomb is to wipe out the Exit Portal so the player won’t try to get back there. Note the bubbles in the void – it turns out you can drop objects into the void using an Object Brush.

On the Figure, you can’t see the ‘ExitSpritePortal’ Event marker, but this is where the action starts.  This Placed Event initiates a combat that the player cannot win and triggers another event called ‘EleanorReborn’, which performs a Change Color on an Eleanor clone to bring it into the game. I found I needed to run the ‘LoseTown’ and ‘EleanorReborn’ scripts prior to the combat so that the player would not be able to retreat and so that defeat would not result in an immediate LOSS. I also found it necessary to take the Sword of the Gods from the party, since there could have been a treasure pile if it were not equipped at the time of the combat.

This is Elise, the Nature town inhabited by Celeste and her subjects. Celeste is a powerful hero and I don’t want the player using her to carry the party, so the Quest Gate uses a NOT HAS SPECIFIC HERO condition to not allow any party through the gate that includes Celeste. Elise will first turn Green and the Purple.
Celeste needs to stay home because of periodic Orc attacks on the town.

To gain access to the town – this is the gate within the gate -- Eleanor will need either to have healed a Sprite she encounters soon after arrival, and who will then join her, or she will need to prove herself by healing a Wise Old Tree in neighboring Fredonia. (I try to give the player two ways to accomplish most main objectives.) Once this requirement is satisfied, a Triggered Event turns Elise Green, so it becomes an ally and the party can enter. On entry, they get the second main quest as the Standard Event: Entered — to locate and return with Eldaron, the Elf King. Eldaron is being held by some Orcs, but when he eventually enters Elise, it turns Purple via another Triggered Event.

There are two Quest Huts here. One sends the party off looking for the Druid Iblis and the other teaches Nature magic to Eleanor after she owns Elise. This second one uses a compound condition to make sure only Eleanor will get the skill. It is not possible for the Quest Hut to award Nature to a specific hero, so it is necessary to require that only one hero can enter. Another part of the condition determines whether Eleanor has an open skill slot and ask whether the player wants to fill it now.

Fredonia is a small human community build around a Wise Old Tree. The tree has the blight, as depicted by the overlayed dead tree. When Elise approaches, the Placed Event allows her to ‘heal’ the tree by deleting the dead part.

Each of the other dwellings has a minor quest. In one, the Mayor rewards the party for healing the tree. In another, a siege engineer needs a cart to repair his Catapult. (This will be extremely valuable in Foss as a prototype for the War Machine Factory.) A tavern offers the traditional drinking contest, and a retired soldier offers to train some Squires to be Crusaders.

Just Southeast of here there is an archeologist who can restore some nearby ruins, which show that Life was once present in Akkadia. Since this kind of work takes some time, I used the archeologist Completion Script to set a variable that indicated when the requirement was satisfied. Then a Timed Event running every two weeks checks to see whether enough time had passed, and if so to delete the objects blocking the ruins and notify the player.

Here’s the Municipal District in Foss. The Garrison is well fortified, but will Color Change to Green (ally) when the player completes the Tax Collector quest. It was not possible to uncheck “Can Remove” for a Neutral, but I found you can uncheck it if you change it to a color and it will stay unchecked when you go back to Neutral.

The Blue Keymaster provides access to Foss Town and some other areas. The Treasury Vault is where the party deposits the collected taxes, gaining access to some minor treasures. To access the Conservatory of Order, the player will need to join the Mage Guild, which is another quest.

The Tunnel goes down to the Dungeon, shown next.

The VIP section of the Dungeon needs special keys to enter, and these are available in the Guard House. The player get the keys and the guards join afte the guards get their back pay. That’s done with a Triggered Event that performs a Change Color for all the Gold Golem guards in the area.

One of the Prisons holds Godfrey, who reveals that he had found the Sword of Swiftness and hidden it before being taken captive. The Brown Idols in the cells represent parts of the map to where he buried the sword. Godfrey will take on the protector role with Eleanor and the two will have some conversations when they are in the same party. It turns out the each of the main characters represents a different type of relationship—Raymond is the friend, Hugh is the oppressor, Omar is the love interest, etc. More on this once I’ve written the dialog.

The Ninja in the bottom cell has Master Stealth, and will likely get off a surprise attack on the party. If no-one has Scouting, then the Bandits will attack with surprise as well. In the cell to the Southeast, there is a fairly well advanced Order Mage. She offers to join, but cannot leave the cell (like Celeste). The solution, which is a little different than with Omar, is to engage her in ‘shadow’ combat and allow her to retreat to the nearest town. This exploits a peculiarity whereby a Color Change performed by the Standard Event: Encountered results in the player controlling both sides in the combat.

Chernobyl is the center of Chaos in Akkadia, so I gave the landscape a random look. The Quest Gate sends the party looking for the Dragonslayer – who turns out to be the Ranger Raymond. The condition is satisfied when the party returns with Raymond and the Completion Script triggers a Color Change to Green for Chernobyl. Inside, I have seven Chaos lords, each specialized in a different spell. Once the gate is opened, they can come out—but if the player blocks the gate and keeps them inside, they will come along in the Color Change to Purple. I’m not sure how useful they will be, but filling up all 7 Garrison slots insures that the creature dwellings will be full.

On gaining entry to Chernobyl the party receives the quest to fetch a Megadragon, which will trigger another Color Change, this time to Purple, and allow Eleanor to learn Chaos Magic at the Quest Hut next door. To get the Megadragon, Eleanor needs to go to Dragon Cave, next.

There is no creature dwelling for Megadragons, so I made one using the Triggered Script for a Quest Hut. To access it, the player will need GM Stealth or beat the guard. If Raymond is in the party the player has the option of sneaking behind the Megadragon and extracting the Flaming Sword from its haunch. A Triggered Script on the Megadragon takes away the sword and replaces the Megadragon with a Troglodyte, as if it was deflated. (I may add a subquest that allows Raymond to become a Dragonmaster and in that case I will add a Color Change event to allow him to recruit the Megadragon.)

The Upper Crypt has two entries. One is a hefty Garrison and the other has a block against the Elf King. Down below are two chambers, one for Life and one for Death. This is where the Sword of the Gods and Soul Stealer originally resided.

You can barely see it, but inside the Quest Gate built into the Northeast wall is a Greater Ring of Negation. To get the ring, the player must complete the Undertaker quest, but this way I get to tantalize the player by displaying it beforehand. I’m trying to draw the player’s attention to the Crypt, since Hugh and the Soul Stealer wait below. The idea is for the player to come here after completing the other sword quests.

The Undertaker quest is optional and designed to see whether the player is committed to the principles of Life. To complete the quest, the player needs to release a Necromancer from a Prison and her presence will wreck morale if she joins the party. 

The Forge has had some changes since last time. Rosencrantz gives the party a look at the towns in the game and the Idols provide maps to the Temple Treasures. This was the hardest script to code in the entire map because it has to deal with all combinations of the Sword of Swiftness, Flaming Sword, and Soul Stealer. I’m not sure I’ve got it quite right yet. The player needs either the Sword of Swiftness or Flaming Sword to enter the Forge and needs them both to destroy Soul Stealer.

I tried to do all this in a single script but it got too tangled up, so I lined up some Placed Events that the party will trigger as they approach Rosencrantz. Another complicating factor was the possibility that a player would first refuse to give up a sword and then transfer it directly into Rosencrantz’ inventory, so that DestroySoulStealer had to be written as a Triggerable Event for Rosencrantz. I set a Boolean variable to indicate that Soul Stealer has been destroyed, but the only use of it is in the Quest Gate to the East, which opens to take the party back to Earth.

I’m pleased with the way the Garden of Earthly Delights turned out. I still have to do the dialog here, but I have all the ingredients for what could be a most engaging encounter – drugs, sex, forbidden knowledge. All PG rated, you understand.

The party arrives in the little room at the Southeast and must pick someone to climb the wall (alone) to open the door from the other side. Across the entry hall is the Death Library, which will not open to any hero with Life. To exit the front door, the party will need to visit the Red Keymaster Tent across the courtyard.

This is where it pays the player to have kept Omar in the party, because having been here before, he knows the traps and can open the doors. Otherwise, the party has some challenges ahead.

The inner courtyard is where Hassan I Sabbah has lured some of Christiandom’s Champions with promises of exotic pleasures. Once under his sway, he takes them to the Dark Knights Sanctum to be reborn as Dark Champions.  The elite are taken to the inner sanctum, where a reborn Iblis guards the Sword of the Gods. (It’s about time it showed up.) I’ve made Iblis a Demonologist (Nature + Death), but I have not seen whether he summons Imps like he’s supposed to because I’ve been using Quick combat for testing. I’ll have to set the strength of the Evil Garrison after I see what kind of force Eleanor can assemble. I wouldn’t be surprised if a typical party at this stage was Eleanor, Raymond, Godfrey, Omar, two good Shooters, and maybe some Angels. Some players may run one of the nobles as head of a defensive force, freeing a slot for something like Crusaders.

Hassan’s Portal leads to the basement of a desecrated abbey inside the Holy City. One of the Big Treasures is buried in the Altar room, and the Ice Gate is rigged to ‘open’ when the player defeats the Ice Demons, or sneaks past them. This is easily done with simple scripts. A cave tunnel leads to Solomon’s Stables. I don’t expect the player to recruit the Evil Eyes here, but they lend an atmosphere of corruption.

I may include some additional destinations for Hassan’s Portal. I’m thinking of a Neutral Necropolis, which could be the source of Hassan’s power. By blocking and blowing up Portals, the destinations could be made to change.

Solomon’s Stables did not turn out as well as I’d hoped. There’s something wrong with the colors and not much for the player to do. I’ll have to make it up in the dialog.

Out the Northwest are double doors to the Vault. It’s loaded with goodies, which make no difference to the ending -- so why not reward the player for getting this far? Here is the Portal to Jerusalem’s Temple Mount, which comes out in the marshalling area joined to the Temple complex.

Jerusalem is too expansive to show with a screen-grab, so the picture is just a bit of the City Wall. Notice the wall is rigged to come down if the player opts for the Armageddon ending, allowing the Teal Christians inside to mix it up with the Red Turks outside. The final tableau is set outside the central town, but you can’t see anything but a lot of bombs.

My original plan was to allow the player to take one side or the other in the fight, but I learned that a Color Change script for the main party would likely be deleted when the roster changes. So I could not change Eleanor’s group to Teal (Christians) or Red (Turks). The only other option would be to change the Teal or Red armies to Green, so they would fight as allies to Eleanor, but this means scripting a Change Color for all those armies around Jerusalem. I may get to it, but for now once the walls come down, it’s a free for all. This just about guarantees that the player loses, but I should also put in a time limit so the ending does not drag on too long.

For Eleanor to participate, I would also need to do something about Purple and Green armies left in Akkadia, if the other side is to have a chance. Perhaps I could create a special loss condition when the Turks are wiped out or when they take Jerusalem. I’ll have to look at this some more.


Next time: I’ll wrap this series up with an account of testing, final fixes, dialog, packaging, and release. About the time that article comes out, the map itself should be available.