diff --git a/edgehead/assets/text/Knights/locations/008_big_o/000_big_o.egb.txt b/edgehead/assets/text/Knights/locations/008_big_o/000_big_o.egb.txt index 007d5969f..f9ca9e1e9 100644 --- a/edgehead/assets/text/Knights/locations/008_big_o/000_big_o.egb.txt +++ b/edgehead/assets/text/Knights/locations/008_big_o/000_big_o.egb.txt @@ -148,12 +148,12 @@ ROOM: $big_o_observatory POS: 26, 12 +FIRST_MAP_NAME: The Very Top +FIRST_HINT: The staircase is all marble and concrete, an exquisite combination of ancient minimalism and current excess. It leads up to a sun lit space. + MAP_NAME: Observatory HINT: At the very top of the Pyramid, a room for the Lich King. -FIRST_MAP_NAME: The very top -FIRST_HINT: The staircase is all marble and concrete, an exquisite combination of ancient minimalism and current excess. It leads up to a sun lit space. - DESCRIPTION: $NONE FIGHT_SITUATION: diff --git a/edgehead/assets/text/Knights/locations/012_big_o_antechamber/000_big_o_antechamber.egb.txt b/edgehead/assets/text/Knights/locations/012_big_o_antechamber/000_big_o_antechamber.egb.txt index bb619b5b9..1f5b08203 100644 --- a/edgehead/assets/text/Knights/locations/012_big_o_antechamber/000_big_o_antechamber.egb.txt +++ b/edgehead/assets/text/Knights/locations/012_big_o_antechamber/000_big_o_antechamber.egb.txt @@ -3,7 +3,12 @@ APPROACH: $big_o_antechamber FROM $top_of_climb // --- ROOM: $big_o_antechamber + +FIRST_MAP_NAME: A Clean Chamber +FIRST_HINT: Far apart from most of the commotion, this part of the Pyramid clearly sees much less regular use. The corridors are empty and clean, and they all converge on this one silent room. + MAP_NAME: Antechamber +HINT: The room with the trap door in the ceiling and the curious lock mechanism. POS: 26, 20 diff --git a/edgehead/assets/text/Knights/locations/024_darg_tent/000_darg_tent.egb.txt b/edgehead/assets/text/Knights/locations/024_darg_tent/000_darg_tent.egb.txt index 79d9b6f2e..aac8dd93c 100644 --- a/edgehead/assets/text/Knights/locations/024_darg_tent/000_darg_tent.egb.txt +++ b/edgehead/assets/text/Knights/locations/024_darg_tent/000_darg_tent.egb.txt @@ -4,7 +4,13 @@ APPROACH: $darg_tent FROM $barracks ROOM: $darg_tent POS: 33, 24 -MAP_NAME: Darg's tent + +FIRST_MAP_NAME: On Top of the Eastern Shaft +FIRST_HINT: There is access to the outside of the Pyramid here. The walls close to the ancient door are painted red and decorated with human teeth and other signs of orc power. + +MAP_NAME: Orc Leader's Tent +HINT: A tent placed on top of the Eastern shaft, overlooking the bay. + FIRST_DESCRIPTION: Tent outside, at the top of the elevator structure. Overlooking the bay. Some important orc must be stationed here. diff --git a/edgehead/assets/text/Knights/locations/024_outlook/000_outlook.egb.txt b/edgehead/assets/text/Knights/locations/024_outlook/000_outlook.egb.txt index 0dda5df8b..99c07d4db 100644 --- a/edgehead/assets/text/Knights/locations/024_outlook/000_outlook.egb.txt +++ b/edgehead/assets/text/Knights/locations/024_outlook/000_outlook.egb.txt @@ -4,7 +4,12 @@ APPROACH: $outlook FROM $top_of_climb ROOM: $outlook POS: 18, 24 + +FIRST_MAP_NAME: On Top of the Western Shaft +FIRST_HINT: Something is on top of the shaft. The access to outside is well used, though it's unguarded. + MAP_NAME: Outlook +HINT: A place for a sentry with excellent eyes. FIRST_DESCRIPTION: A hawkman is looking into the distance, looking bored. He sees me immediately, but doesn't seem to care. diff --git a/edgehead/assets/text/Knights/locations/026_top_of_climb/000_top_of_climb.egb.txt b/edgehead/assets/text/Knights/locations/026_top_of_climb/000_top_of_climb.egb.txt index cbb165019..d993e7ea8 100644 --- a/edgehead/assets/text/Knights/locations/026_top_of_climb/000_top_of_climb.egb.txt +++ b/edgehead/assets/text/Knights/locations/026_top_of_climb/000_top_of_climb.egb.txt @@ -7,7 +7,10 @@ APPROACH: $top_of_climb FROM $keep_servants ROOM: $top_of_climb POS: 19, 28 -MAP_NAME: Top of the climb + +// Using the same text even before the player has visited this place. +MAP_NAME: Top of a Shaft +HINT: A dark pit extends hundreds of feet toward the bottom of the Pyramid. FIRST_DESCRIPTION: A huge, dark pit. The bottom is unseen, in complete darkness. diff --git a/edgehead/assets/text/Knights/locations/029_crowdsource/000_crowdsource.egb.txt b/edgehead/assets/text/Knights/locations/029_crowdsource/000_crowdsource.egb.txt index 0636344c4..0d4a3567e 100644 --- a/edgehead/assets/text/Knights/locations/029_crowdsource/000_crowdsource.egb.txt +++ b/edgehead/assets/text/Knights/locations/029_crowdsource/000_crowdsource.egb.txt @@ -5,7 +5,12 @@ APPROACH: $crowdsource FROM $barracks ROOM: $crowdsource POS: 27, 29 + +FIRST_MAP_NAME: Religious Place +FIRST_HINT: Orc symbols indicate a temple, a sacrificial place, or both. + MAP_NAME: Crowd's Temple +HINT: A temple with no windows, lit by torches. The darkness and the rows of columns provide good opportunities to hide. FIRST_DESCRIPTION: This room serves as a temple for the orcs. It has no windows and is lit by torches. The darkness and the rows of columns provide good opportunities to hide. diff --git a/edgehead/assets/text/Knights/locations/031_barracks/000_barracks.egb.txt b/edgehead/assets/text/Knights/locations/031_barracks/000_barracks.egb.txt index 9f3138cfc..1aa19de03 100644 --- a/edgehead/assets/text/Knights/locations/031_barracks/000_barracks.egb.txt +++ b/edgehead/assets/text/Knights/locations/031_barracks/000_barracks.egb.txt @@ -7,7 +7,12 @@ APPROACH: $barracks FROM $darg_tent ROOM: $barracks POS: 34, 31 + +FIRST_MAP_NAME: Large Quiet Area +FIRST_HINT: Sounds of orcs snoring. + MAP_NAME: Barracks +HINT: A large room taking up two floors with bunk beds and a dining area. FIRST_DESCRIPTION: A large room taking up two floors. Bunk beds, and a dining area. [We] stay hidden. diff --git a/edgehead/assets/text/Knights/locations/034_conet/000_conet.egb.txt b/edgehead/assets/text/Knights/locations/034_conet/000_conet.egb.txt index 18279ae08..cfc14b5dc 100644 --- a/edgehead/assets/text/Knights/locations/034_conet/000_conet.egb.txt +++ b/edgehead/assets/text/Knights/locations/034_conet/000_conet.egb.txt @@ -9,9 +9,12 @@ c.hasHappened(evTookSarnToBleeds) ROOM: $conet POS: 17, 34 -MAP_NAME: Conet -// TODO: First map name should say "quiter area" +FIRST_MAP_NAME: Some Mechanism +FIRST_HINT: Somethings is making a quiet chafing sounds similar. Reminds me of millstones. + +MAP_NAME: Conet +HINT: A room filled with a large device. FIRST_DESCRIPTION: A kobold is operating a large device. He is turning a huge wheel, drawing some kind of a spring. diff --git a/edgehead/assets/text/Knights/locations/040_maintenance_shaft/000_maintenance_shaft.egb.txt b/edgehead/assets/text/Knights/locations/040_maintenance_shaft/000_maintenance_shaft.egb.txt index 4d873e7e5..de44b2965 100644 --- a/edgehead/assets/text/Knights/locations/040_maintenance_shaft/000_maintenance_shaft.egb.txt +++ b/edgehead/assets/text/Knights/locations/040_maintenance_shaft/000_maintenance_shaft.egb.txt @@ -4,7 +4,8 @@ APPROACH: $maintenance_shaft FROM $elevator_28 ROOM: $maintenance_shaft POS: 34, 40 -MAP_NAME: Maintenance Shaft above 28th Floor +MAP_NAME: Maintenance Shaft +HINT: A narrow crawlspace above the 28th floor. FIRST_DESCRIPTION: Musty, dark place. Through cracks, I can see rooms under me. diff --git a/edgehead/assets/text/Knights/locations/040_smithy/000_smithy.egb.txt b/edgehead/assets/text/Knights/locations/040_smithy/000_smithy.egb.txt index ddbd40633..a2bfb34a1 100644 --- a/edgehead/assets/text/Knights/locations/040_smithy/000_smithy.egb.txt +++ b/edgehead/assets/text/Knights/locations/040_smithy/000_smithy.egb.txt @@ -5,9 +5,15 @@ APPROACH: $smithy FROM $conet ROOM: $smithy POS: 24, 40 + +FIRST_MAP_NAME: Sounds of an Anvil +FIRST_HINT: A regular metallic beat and a smell of coal dust and hot steel. + MAP_NAME: Smithy +HINT: The involuntary workplace of my brother Sarn under the orc rule. FIRST_DESCRIPTION: +// TODO: describe crawling through a high ventilation shaft My brother, Sarn, working for the orcs, forging weapons. He seems not fully aware of his surroundings. [[CODE]] diff --git a/edgehead/assets/text/Knights/locations/042_elevator_28/000_elevator_28.egb.txt b/edgehead/assets/text/Knights/locations/042_elevator_28/000_elevator_28.egb.txt index f04a12ba7..95cb292df 100644 --- a/edgehead/assets/text/Knights/locations/042_elevator_28/000_elevator_28.egb.txt +++ b/edgehead/assets/text/Knights/locations/042_elevator_28/000_elevator_28.egb.txt @@ -9,7 +9,9 @@ APPROACH: $elevator_28 FROM $junction ROOM: $elevator_28 POS: 32, 42 + MAP_NAME: Elevator Shaft Entrance on 28th Floor +HINT: The metal doors on the side of the dark vertical shaft are half-open here, letting some light in. FIRST_DESCRIPTION: Orc noises from all around, but thankfully no orc in sight. [[IF !c.hasHappened(evKarlGuardsKilled)]]Brutal laughter from the east.[[ENDIF]] diff --git a/edgehead/assets/text/Knights/locations/042_gods_lair/000_gods_lair.egb.txt b/edgehead/assets/text/Knights/locations/042_gods_lair/000_gods_lair.egb.txt index 6af0d009e..e9397449b 100644 --- a/edgehead/assets/text/Knights/locations/042_gods_lair/000_gods_lair.egb.txt +++ b/edgehead/assets/text/Knights/locations/042_gods_lair/000_gods_lair.egb.txt @@ -7,12 +7,12 @@ FLAGS: $IDLE POS: 35, 42 +FIRST_MAP_NAME: Guard Room +FIRST_HINT: An antechamber to a much bigger room, with a guard post and a huge, reinforced gate. + MAP_NAME: God's Lair HINT: A temple to the ancients, overtaken by the orcs some time ago. For them, it serves as a pen for a huge creature, Karl. -FIRST_MAP_NAME: A guard room -FIRST_HINT: An antechamber to a much bigger room, with a guard post and a huge, reinforced gate. - FIRST_DESCRIPTION: Two orcs, a berserker and a captain, watch me approach in amazement. diff --git a/edgehead/assets/text/Knights/locations/045_junction/000_junction.egb.txt b/edgehead/assets/text/Knights/locations/045_junction/000_junction.egb.txt index 0069203dd..ea5caa5ca 100644 --- a/edgehead/assets/text/Knights/locations/045_junction/000_junction.egb.txt +++ b/edgehead/assets/text/Knights/locations/045_junction/000_junction.egb.txt @@ -15,11 +15,13 @@ c.hasHappened(evTookSarnToBleeds) ROOM: $junction POS: 27, 45 -MAP_NAME: Hub on 26th floor -HINT: An area of increased foot traffic in the heart of the orcs’ outpost. -FIRST_MAP_NAME: Increased foot traffic + +FIRST_MAP_NAME: Increased Foot Traffic FIRST_HINT: In this direction, footsteps and orc voices are more frequent. But the area is also dark and full of debris. It won’t be hard to hide. +MAP_NAME: Traffic Hub on 26th Floor +HINT: An area of increased foot traffic in the heart of the orcs’ outpost. + FIRST_DESCRIPTION: This place is traffic hub. Squads of orcs travel in every conceivable direction. Some are climbing rickety ladders upwards or downwards, others walk loudly across unkempt rooms. There are many paths through here, and many hiding spots. [We] have no trouble staying unseen. diff --git a/edgehead/assets/text/Knights/locations/048_reservoir/000_reservoir.egb.txt b/edgehead/assets/text/Knights/locations/048_reservoir/000_reservoir.egb.txt index ae2ea3079..cdb45c359 100644 --- a/edgehead/assets/text/Knights/locations/048_reservoir/000_reservoir.egb.txt +++ b/edgehead/assets/text/Knights/locations/048_reservoir/000_reservoir.egb.txt @@ -5,7 +5,12 @@ APPROACH: $reservoir FROM $training_grounds ROOM: $reservoir POS: 25, 48 + +FIRST_MAP_NAME: Damp Place +FIRST_HINT: Corridors around this place smell of stale water. A faint splashing can be heard. + MAP_NAME: Reservoir +HINT: A large, filthy pool in the middle of the building. FLAGS: $IDLE diff --git a/edgehead/assets/text/Knights/locations/052_cockroach_farm/000_cockroach_farm.egb.txt b/edgehead/assets/text/Knights/locations/052_cockroach_farm/000_cockroach_farm.egb.txt index c10249228..85260af06 100644 --- a/edgehead/assets/text/Knights/locations/052_cockroach_farm/000_cockroach_farm.egb.txt +++ b/edgehead/assets/text/Knights/locations/052_cockroach_farm/000_cockroach_farm.egb.txt @@ -4,10 +4,13 @@ APPROACH: $cockroach_farm FROM $junction ROOM: $cockroach_farm POS: 29, 52 + +FIRST_MAP_NAME: Smell of Rot +FIRST_HINT: The closer I am to this area, the more I can smell rotten food and flesh. No voices, though, and no footsteps. + MAP_NAME: Cockroach Farm HINT: The main source of food for the orcs. -FIRST_MAP_NAME: Smell of rot -FIRST_HINT: The closer I am to this area, the more I can smell rotten food and flesh. No voices, though, and no footsteps. + FIRST_DESCRIPTION: I am in a maze of twisty little passages, all alike. All crawling with cockroaches. diff --git a/edgehead/assets/text/Knights/locations/054_training_grounds/000_training_grounds.egb.txt b/edgehead/assets/text/Knights/locations/054_training_grounds/000_training_grounds.egb.txt index 2dd4303b8..d604df958 100644 --- a/edgehead/assets/text/Knights/locations/054_training_grounds/000_training_grounds.egb.txt +++ b/edgehead/assets/text/Knights/locations/054_training_grounds/000_training_grounds.egb.txt @@ -5,10 +5,15 @@ APPROACH: $training_grounds FROM $battlefield ROOM: $training_grounds POS: 21, 54 + +FIRST_MAP_NAME: Grunts of Strain +FIRST_HINT: Loud grunts and clashes of steel. Orc laughter. + MAP_NAME: Training Grounds +HINT: A small army of orcs, goblins and kobolds, all training for war. FIRST_DESCRIPTION: -An army of orcs, goblins and kobolds, all training for war. +A small army of orcs, goblins and kobolds, all training for war. DESCRIPTION: $NONE diff --git a/edgehead/assets/text/Knights/locations/064_battefield/000_battlefield.egb.txt b/edgehead/assets/text/Knights/locations/064_battefield/000_battlefield.egb.txt index 509e3c480..4ee3f8ab9 100644 --- a/edgehead/assets/text/Knights/locations/064_battefield/000_battlefield.egb.txt +++ b/edgehead/assets/text/Knights/locations/064_battefield/000_battlefield.egb.txt @@ -7,7 +7,12 @@ APPROACH: $battlefield FROM $training_grounds ROOM: $battlefield POS: 28, 64 + +FIRST_MAP_NAME: Battlefield Floor +FIRST_HINT: The frontier between the humans at the bottom and the orcs at the top. Currently held and guarded by the orcs. + MAP_NAME: Battlefield Floor +HINT: A floor devoid of walls. WHERE: among the columns diff --git a/edgehead/assets/text/Knights/locations/065_oracle/000_oracle_main.egb.txt b/edgehead/assets/text/Knights/locations/065_oracle/000_oracle_main.egb.txt index 4bd6a84b2..700fcc4fe 100644 --- a/edgehead/assets/text/Knights/locations/065_oracle/000_oracle_main.egb.txt +++ b/edgehead/assets/text/Knights/locations/065_oracle/000_oracle_main.egb.txt @@ -6,7 +6,12 @@ ROOM: $oracle_main FLAGS: $IDLE POS: 39, 65 -MAP_NAME: Oracle's + +FIRST_MAP_NAME: Someone's Study +FIRST_HINT: A room with a good view of the forest of San Francisco and the Bay. + +MAP_NAME: Oracle's Study +HINT: A place full of books and the smell of coffee. FIRST_DESCRIPTION: A woman is here. She seems deep in though, walking up and down the room, over debris. diff --git a/edgehead/assets/text/Knights/locations/067_jungle/000_jungle_entrance.egb.txt b/edgehead/assets/text/Knights/locations/067_jungle/000_jungle_entrance.egb.txt index 6c1eb10ea..159c8b8cd 100644 --- a/edgehead/assets/text/Knights/locations/067_jungle/000_jungle_entrance.egb.txt +++ b/edgehead/assets/text/Knights/locations/067_jungle/000_jungle_entrance.egb.txt @@ -6,7 +6,9 @@ APPROACH: $jungle_entrance FROM $pond ROOM: $jungle_entrance POS: 21, 72 + MAP_NAME: Jungle +HINT: This is where the interior of the Pyramid opens into a large crater, covered in vegetation. FIRST_DESCRIPTION: Corridors full of vegetation. Path through that, like a path in a forest, but indoors. diff --git a/edgehead/assets/text/Knights/locations/067_jungle/010_deathless_village.egb.txt b/edgehead/assets/text/Knights/locations/067_jungle/010_deathless_village.egb.txt index 63e606753..425954547 100644 --- a/edgehead/assets/text/Knights/locations/067_jungle/010_deathless_village.egb.txt +++ b/edgehead/assets/text/Knights/locations/067_jungle/010_deathless_village.egb.txt @@ -5,7 +5,12 @@ APPROACH: $deathless_village FROM $dragon_egg_room ROOM: $deathless_village POS: 18, 68 + +FIRST_MAP_NAME: Village in the Jungle +FIRST_HINT: I can see some buildings through the canopy of leaves. The buildings are placed on a ledge overlooking the crater. + MAP_NAME: Village of the Deathless +HINT: A village of cultists positioned on a ledge overlooking the jungle. FIRST_DESCRIPTION: On a ledge overlooking the jungle, a village of cultists. They call themselves the Deathless, and they worship the ancients. Their leader is a child. diff --git a/edgehead/assets/text/Knights/locations/067_jungle/010_dragon_egg.egb.txt b/edgehead/assets/text/Knights/locations/067_jungle/010_dragon_egg.egb.txt index 6912ff38f..04a0fc04b 100644 --- a/edgehead/assets/text/Knights/locations/067_jungle/010_dragon_egg.egb.txt +++ b/edgehead/assets/text/Knights/locations/067_jungle/010_dragon_egg.egb.txt @@ -6,11 +6,18 @@ c.hasHappened(evDeathlessRespectGained) ROOM: $dragon_egg_room POS: 15, 67 + +FIRST_MAP_NAME: Sacred Place +FIRST_HINT: A well-hidden place of worship near the village of the Deathless. + MAP_NAME: Sacred Place +HINT: The place with the Dragon Egg. FIRST_DESCRIPTION: The sacred shrine of the Deathless. +There's a pedestal here, and on it, the legendary Dragon Egg. + ![Illustration of a pedestal with "Ovum Draconis" written on it. On the pedestal, there is a frag grenade.](dragonegg.png) TODO: The Deathless decide they will give me the Dragon Egg, to aid in my quest. It's a big deal. I receive the dragon egg. The Deathless explain to me its operation. (It's a frag grenade.) diff --git a/edgehead/assets/text/Knights/locations/067_jungle/050_pond.egb.txt b/edgehead/assets/text/Knights/locations/067_jungle/050_pond.egb.txt index e96b13c21..8bd6ed8ab 100644 --- a/edgehead/assets/text/Knights/locations/067_jungle/050_pond.egb.txt +++ b/edgehead/assets/text/Knights/locations/067_jungle/050_pond.egb.txt @@ -5,7 +5,9 @@ APPROACH: $pond FROM $pond_lizard_rock ROOM: $pond POS: 14, 74 + MAP_NAME: Pond +HINT: A small body of water at the bottom of the crater. FIRST_DESCRIPTION: [We] follow a narrow path through the foliage, smelling the crispness of pine needles and the smell of fresh, cold air. The path leads towards a clearing with a pond. A strange, big, ancient object is suspended above the pond, held above the ground by damaged pillars. diff --git a/edgehead/assets/text/Knights/locations/067_jungle/060_pond_lizard_rock.egb.txt b/edgehead/assets/text/Knights/locations/067_jungle/060_pond_lizard_rock.egb.txt index 31adb4942..59c267ffb 100644 --- a/edgehead/assets/text/Knights/locations/067_jungle/060_pond_lizard_rock.egb.txt +++ b/edgehead/assets/text/Knights/locations/067_jungle/060_pond_lizard_rock.egb.txt @@ -6,7 +6,9 @@ c.playerHasVisited("pond_lizard_rock") ROOM: $pond_lizard_rock POS: 13, 72 -MAP_NAME: The Lizardman's Rock + +MAP_NAME: Lizardman's Rock +HINT: A concrete platform near the pond that serves as the lizardman's new base. FIRST_DESCRIPTION: [We] circle the pond and climb on a concrete platform that serves as the lizardman's new base. I notice a half-eaten human leg lying on the ground here. diff --git a/edgehead/assets/text/Knights/locations/070_knights_hq/000_knights_hq_main.egb.txt b/edgehead/assets/text/Knights/locations/070_knights_hq/000_knights_hq_main.egb.txt index 8243b0faa..68cff0196 100644 --- a/edgehead/assets/text/Knights/locations/070_knights_hq/000_knights_hq_main.egb.txt +++ b/edgehead/assets/text/Knights/locations/070_knights_hq/000_knights_hq_main.egb.txt @@ -10,7 +10,8 @@ FLAGS: $IDLE POS: 37, 70 -MAP_NAME: Knights Headquarters +MAP_NAME: Command Post +HINT: This is the original center of operations of the Knights of San Francisco. FIRST_DESCRIPTION: I come to the headquarters. A large room overlooking the bay. Latrines on the right, hanging out of the window frames, providing fertilizer to the farmer slope below. To the left, as far from the latrines as possible, the bunks where a few of the knights sleep. diff --git a/edgehead/assets/text/Knights/locations/072_elevator_12/000_elevator_12.egb.txt b/edgehead/assets/text/Knights/locations/072_elevator_12/000_elevator_12.egb.txt index 3c64d633f..058f545b0 100644 --- a/edgehead/assets/text/Knights/locations/072_elevator_12/000_elevator_12.egb.txt +++ b/edgehead/assets/text/Knights/locations/072_elevator_12/000_elevator_12.egb.txt @@ -10,10 +10,14 @@ ROOM: $elevator_12 FLAGS: $IDLE POS: 32, 72 -MAP_NAME: Elevator Shaft Entrance on 12th Floor -DESCRIPTION: -A rare access to the ancient elevator shaft. +MAP_NAME: Elevator Shaft Entrance on the 12th Floor +HINT: A rare access to the ancient elevator shaft. + +FIRST_DESCRIPTION: +Darkness shrouds most of the vertical shaft above, except for a single bright slit many floors above. Down here, only a narrow passage connects the elevator shaft with the corridors surrounding it. + +DESCRIPTION: $NONE NOTES: diff --git a/edgehead/assets/text/Knights/locations/078_slopes/000_slopes.egb.txt b/edgehead/assets/text/Knights/locations/078_slopes/000_slopes.egb.txt index ecfeedbc0..347fc6bda 100644 --- a/edgehead/assets/text/Knights/locations/078_slopes/000_slopes.egb.txt +++ b/edgehead/assets/text/Knights/locations/078_slopes/000_slopes.egb.txt @@ -6,7 +6,9 @@ ROOM: $slopes FLAGS: $IDLE POS: 42, 78 + MAP_NAME: Slopes +HINT: The farmland on the outer wall of the Pyramid. FIRST_DESCRIPTION: The steep slope of the Pyramid is covered in vines from this point down. Young men and women are picking Fruit. diff --git a/edgehead/assets/text/Knights/locations/083_farmers_village/000_farmers_village.egb.txt b/edgehead/assets/text/Knights/locations/083_farmers_village/000_farmers_village.egb.txt index 34f70a636..40c6195bd 100644 --- a/edgehead/assets/text/Knights/locations/083_farmers_village/000_farmers_village.egb.txt +++ b/edgehead/assets/text/Knights/locations/083_farmers_village/000_farmers_village.egb.txt @@ -8,12 +8,13 @@ ROOM: $farmers_village FLAGS: $IDLE POS: 35, 83 -MAP_NAME: Farmers' village -HINT: A settlement of people who farm the vines that grow on the outside of the Pyramid. -FIRST_MAP_NAME: A settled area +FIRST_MAP_NAME: Settled Area FIRST_HINT: From the outside, this part of the Pyramid is covered with vines, and there are clear signs of settlement in the windows. +MAP_NAME: Farmers' Village +HINT: A settlement of people who farm the vines that grow on the outside of the Pyramid. + FIRST_DESCRIPTION: The corridors here look more like streets. Painted walls on either side, with wooden windows in them, and doors. Well dressed people go about their business. Polite nods in my direction. diff --git a/edgehead/assets/text/Knights/locations/086_keep/010_keep_bedroom.egb.txt b/edgehead/assets/text/Knights/locations/086_keep/010_keep_bedroom.egb.txt index dc0242b3c..05a5fc9ef 100644 --- a/edgehead/assets/text/Knights/locations/086_keep/010_keep_bedroom.egb.txt +++ b/edgehead/assets/text/Knights/locations/086_keep/010_keep_bedroom.egb.txt @@ -13,7 +13,9 @@ ROOM: $keep_bedroom FLAGS: $IDLE POS: 15, 86 -MAP_NAME: Lord's quarters + +MAP_NAME: Lord's Quarters +HINT: Though derelict, these are still the nicest parts of the Keep. FIRST_DESCRIPTION: Redwood parquetry, the wooden flooring of the rich, creaks underfoot. diff --git a/edgehead/assets/text/Knights/locations/086_keep/010_keep_dining.egb.txt b/edgehead/assets/text/Knights/locations/086_keep/010_keep_dining.egb.txt index 94f32402e..08e9b7394 100644 --- a/edgehead/assets/text/Knights/locations/086_keep/010_keep_dining.egb.txt +++ b/edgehead/assets/text/Knights/locations/086_keep/010_keep_dining.egb.txt @@ -6,8 +6,9 @@ ROOM: $keep_dining FLAGS: $IDLE POS: 9, 86 + MAP_NAME: Dining Room -HINT: The place where the Lord of the Keep dined with his family. A place with a good overview of the Pyramid's surroundings. +HINT: The place where the Lord of the Keep dined with his family. A place with a good view of the redwoods outside. FIRST_MAP_NAME: Dining Room FIRST_HINT: I can see a female figure silhouetted against a tall window. She is not moving but I can feel she's alive, or at the very least undead. She waits. diff --git a/edgehead/assets/text/Knights/locations/086_keep/010_keep_servants.egb.txt b/edgehead/assets/text/Knights/locations/086_keep/010_keep_servants.egb.txt index d2aee712e..e38df3998 100644 --- a/edgehead/assets/text/Knights/locations/086_keep/010_keep_servants.egb.txt +++ b/edgehead/assets/text/Knights/locations/086_keep/010_keep_servants.egb.txt @@ -10,7 +10,9 @@ ROOM: $keep_servants FLAGS: $IDLE POS: 19, 89 -MAP_NAME: Servants' quarters + +MAP_NAME: Servants' Quarters +HINT: The cramped rooms where the servants of the Keep's owner once lived and worked. FIRST_DESCRIPTION: Clear signs of goblin activity. But deserted. A curious skull-shaped device in the middle of the room. diff --git a/edgehead/assets/text/Knights/locations/096_bleeds/000_bleeds_main.egb.txt b/edgehead/assets/text/Knights/locations/096_bleeds/000_bleeds_main.egb.txt index a240d1f0a..72b133bee 100644 --- a/edgehead/assets/text/Knights/locations/096_bleeds/000_bleeds_main.egb.txt +++ b/edgehead/assets/text/Knights/locations/096_bleeds/000_bleeds_main.egb.txt @@ -17,7 +17,7 @@ FLAGS: $IDLE POS: 37, 98 -FIRST_MAP_NAME: Some buildings +FIRST_MAP_NAME: Some Buildings FIRST_HINT: There seems to be a village or at least a homestead next to the Pyramid. MAP_NAME: The Bleeds diff --git a/edgehead/assets/text/Knights/locations/096_bleeds/050_bleeds_trader.egb.txt b/edgehead/assets/text/Knights/locations/096_bleeds/050_bleeds_trader.egb.txt index 42db22221..709fa61c7 100644 --- a/edgehead/assets/text/Knights/locations/096_bleeds/050_bleeds_trader.egb.txt +++ b/edgehead/assets/text/Knights/locations/096_bleeds/050_bleeds_trader.egb.txt @@ -9,7 +9,7 @@ FLAGS: $IDLE POS: 36, 97 -FIRST_MAP_NAME: A building that says "Trader" +FIRST_MAP_NAME: Trader's Shop FIRST_HINT: A mossy, stone building without a porch. The sign "Trader" is written above a window in simple grafitti letters. MAP_NAME: Trader's Shop diff --git a/edgehead/assets/text/Knights/locations/097_goblin_skirmish/000_goblin_skirmish_patrol.egb.txt b/edgehead/assets/text/Knights/locations/097_goblin_skirmish/000_goblin_skirmish_patrol.egb.txt index 01a983e9a..3191b5814 100644 --- a/edgehead/assets/text/Knights/locations/097_goblin_skirmish/000_goblin_skirmish_patrol.egb.txt +++ b/edgehead/assets/text/Knights/locations/097_goblin_skirmish/000_goblin_skirmish_patrol.egb.txt @@ -11,11 +11,10 @@ ROOM: $goblin_skirmish_patrol POS: 15, 97 FIRST_MAP_NAME: Smoke -FIRST_HINT: The smoke is black as death but the pillar is narrow. Looks like nothing more than a camp fire. Someone is not afraid to be found. +FIRST_HINT: The smoke is as black as death but the pillar is narrow. Looks like nothing more than a camp fire. Someone is not afraid to be found. -// This is not needed as of this writing, as we never re-visit. But we might change that in the future. MAP_NAME: Wilderness near the Bleeds -HINT: It's the place where I met the goblin patrol. +HINT: It's the place where I met the albino goblin. FIRST_DESCRIPTION: There is no path in the direction of the smoke. [We] go through the brush and step over logs and ancient rubble. diff --git a/edgehead/assets/text/Knights/locations/097_goblin_skirmish/100_goblin_skirmish_main.egb.txt b/edgehead/assets/text/Knights/locations/097_goblin_skirmish/100_goblin_skirmish_main.egb.txt index 8948a3603..08867cee1 100644 --- a/edgehead/assets/text/Knights/locations/097_goblin_skirmish/100_goblin_skirmish_main.egb.txt +++ b/edgehead/assets/text/Knights/locations/097_goblin_skirmish/100_goblin_skirmish_main.egb.txt @@ -4,7 +4,12 @@ APPROACH: $goblin_skirmish_main FROM $goblin_skirmish_patrol ROOM: $goblin_skirmish_main POS: 11, 97 -MAP_NAME: The Goblin Camp + +FIRST_MAP_NAME: Closer to the Smoke Stack +FIRST_HINT: Not too far to the source of the smoke now. + +MAP_NAME: Goblin Camp +HINT: A shared place of rest for the goblins who travel through here. WHERE: near the campfire diff --git a/edgehead/assets/text/Knights/locations/099_start/030_meadow_fight.egb.txt b/edgehead/assets/text/Knights/locations/099_start/030_meadow_fight.egb.txt index bf8fe5aca..a9663ddb9 100644 --- a/edgehead/assets/text/Knights/locations/099_start/030_meadow_fight.egb.txt +++ b/edgehead/assets/text/Knights/locations/099_start/030_meadow_fight.egb.txt @@ -8,7 +8,7 @@ ROOM: $meadow_fight POS: 49, 99 -MAP_NAME: Forest clearing +MAP_NAME: Forest Clearing HINT: The clearing in the forest of San Francisco where Tamara and I were ambushed. DESCRIPTION: $NONE diff --git a/edgehead/lib/writers_input.compiled.dart b/edgehead/lib/writers_input.compiled.dart index 0fac23f9a..425d61f67 100644 --- a/edgehead/lib/writers_input.compiled.dart +++ b/edgehead/lib/writers_input.compiled.dart @@ -670,7 +670,7 @@ final Room bigOObservatory = Room( positionX: 26, positionY: 12, mapName: 'Observatory', - firstMapName: 'The very top', + firstMapName: 'The Very Top', hint: 'At the very top of the Pyramid, a room for the Lich King.', firstHint: 'The staircase is all marble and concrete, an exquisite combination of ancient minimalism and current excess. It leads up to a sun lit space.', @@ -1033,7 +1033,15 @@ final Room bigOAntechamber = Room('big_o_antechamber', (ActionContext c) { final WorldStateBuilder w = c.outputWorld; final Storyline s = c.outputStoryline; s.add('', isRaw: true); -}, null, null, positionX: 26, positionY: 20, mapName: 'Antechamber'); +}, null, null, + positionX: 26, + positionY: 20, + mapName: 'Antechamber', + firstMapName: 'A Clean Chamber', + hint: + 'The room with the trap door in the ceiling and the curious lock mechanism.', + firstHint: + 'Far apart from most of the commotion, this part of the Pyramid clearly sees much less regular use. The corridors are empty and clean, and they all converge on this one silent room.'); final Approach dargTentFromBarracks = Approach('barracks', 'darg_tent', '', null); @@ -1134,7 +1142,11 @@ final Room dargTent = Room( fightIsOptional: true, positionX: 33, positionY: 24, - mapName: 'Darg\'s tent', + mapName: 'Orc Leader\'s Tent', + firstMapName: 'On Top of the Eastern Shaft', + hint: 'A tent placed on top of the Eastern shaft, overlooking the bay.', + firstHint: + 'There is access to the outside of the Pyramid here. The walls close to the ancient door are painted red and decorated with human teeth and other signs of orc power.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -1197,7 +1209,11 @@ final Room dargTentAfterDargArrived = Room( fightIsOptional: true, positionX: 33, positionY: 24, - mapName: 'Darg\'s tent', + mapName: 'Orc Leader\'s Tent', + firstMapName: 'On Top of the Eastern Shaft', + hint: 'A tent placed on top of the Eastern shaft, overlooking the bay.', + firstHint: + 'There is access to the outside of the Pyramid here. The walls close to the ancient door are painted red and decorated with human teeth and other signs of orc power.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -1255,7 +1271,11 @@ final Room dargTentAfterDargKilled = Room( fightIsOptional: true, positionX: 33, positionY: 24, - mapName: 'Darg\'s tent', + mapName: 'Orc Leader\'s Tent', + firstMapName: 'On Top of the Eastern Shaft', + hint: 'A tent placed on top of the Eastern shaft, overlooking the bay.', + firstHint: + 'There is access to the outside of the Pyramid here. The walls close to the ancient door are painted red and decorated with human teeth and other signs of orc power.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -1886,6 +1906,10 @@ final Room outlook = Room( positionX: 18, positionY: 24, mapName: 'Outlook', + firstMapName: 'On Top of the Western Shaft', + hint: 'A place for a sentry with excellent eyes.', + firstHint: + 'Something is on top of the shaft. The access to outside is well used, though it\'s unguarded.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -1920,7 +1944,12 @@ final Room topOfClimb = Room('top_of_climb', (ActionContext c) { final WorldStateBuilder w = c.outputWorld; final Storyline s = c.outputStoryline; s.add('', isRaw: true); -}, null, null, positionX: 19, positionY: 28, mapName: 'Top of the climb'); +}, null, null, + positionX: 19, + positionY: 28, + mapName: 'Top of a Shaft', + hint: + 'A dark pit extends hundreds of feet toward the bottom of the Pyramid.'); final Approach crowdsourceFromBarracks = Approach('barracks', 'crowdsource', '', null); final Approach crowdsourceFromBigOAntechamber = @@ -2335,6 +2364,10 @@ final Room crowdsource = Room( positionX: 27, positionY: 29, mapName: 'Crowd\'s Temple', + firstMapName: 'Religious Place', + hint: + 'A temple with no windows, lit by torches. The darkness and the rows of columns provide good opportunities to hide.', + firstHint: 'Orc symbols indicate a temple, a sacrificial place, or both.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -2395,6 +2428,10 @@ final Room crowdsourceAfterOrcsLeft = Room( positionX: 27, positionY: 29, mapName: 'Crowd\'s Temple', + firstMapName: 'Religious Place', + hint: + 'A temple with no windows, lit by torches. The darkness and the rows of columns provide good opportunities to hide.', + firstHint: 'Orc symbols indicate a temple, a sacrificial place, or both.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -2532,7 +2569,13 @@ final Room barracks = Room('barracks', (ActionContext c) { final WorldStateBuilder w = c.outputWorld; final Storyline s = c.outputStoryline; s.add('', isRaw: true); -}, null, null, positionX: 34, positionY: 31, mapName: 'Barracks'); +}, null, null, + positionX: 34, + positionY: 31, + mapName: 'Barracks', + firstMapName: 'Large Quiet Area', + hint: 'A large room taking up two floors with bunk beds and a dining area.', + firstHint: 'Sounds of orcs snoring.'); final Approach conetFromSmithy = Approach('smithy', 'conet', '', null, isApplicable: (ApplicabilityContext c) { final WorldState w = c.world; @@ -2864,6 +2907,10 @@ final Room conet = Room( positionX: 17, positionY: 34, mapName: 'Conet', + firstMapName: 'Some Mechanism', + hint: 'A room filled with a large device.', + firstHint: + 'Somethings is making a quiet chafing sounds similar. Reminds me of millstones.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -2912,6 +2959,10 @@ final Room conetAfterClearing = Room( positionX: 17, positionY: 34, mapName: 'Conet', + firstMapName: 'Some Mechanism', + hint: 'A room filled with a large device.', + firstHint: + 'Somethings is making a quiet chafing sounds similar. Reminds me of millstones.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -3015,7 +3066,8 @@ final Room maintenanceShaft = Room('maintenance_shaft', (ActionContext c) { }, null, null, positionX: 34, positionY: 40, - mapName: 'Maintenance Shaft above 28th Floor'); + mapName: 'Maintenance Shaft', + hint: 'A narrow crawlspace above the 28th floor.'); class KarlUseNecromancy extends RoamingAction { @override @@ -3234,6 +3286,10 @@ final Room smithy = Room( positionX: 24, positionY: 40, mapName: 'Smithy', + firstMapName: 'Sounds of an Anvil', + hint: 'The involuntary workplace of my brother Sarn under the orc rule.', + firstHint: + 'A regular metallic beat and a smell of coal dust and hot steel.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -3285,6 +3341,10 @@ final Room smithyAfterSarnSaved = Room( positionX: 24, positionY: 40, mapName: 'Smithy', + firstMapName: 'Sounds of an Anvil', + hint: 'The involuntary workplace of my brother Sarn under the orc rule.', + firstHint: + 'A regular metallic beat and a smell of coal dust and hot steel.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -3821,7 +3881,9 @@ final Room elevator28 = Room('elevator_28', (ActionContext c) { }, null, null, positionX: 32, positionY: 42, - mapName: 'Elevator Shaft Entrance on 28th Floor'); + mapName: 'Elevator Shaft Entrance on 28th Floor', + hint: + 'The metal doors on the side of the dark vertical shaft are half-open here, letting some light in.'); final Approach godsLairFromElevator28 = Approach('elevator_28', 'gods_lair', '', null); @@ -3985,7 +4047,7 @@ final Room godsLair = Room( positionX: 35, positionY: 42, mapName: 'God\'s Lair', - firstMapName: 'A guard room', + firstMapName: 'Guard Room', hint: 'A temple to the ancients, overtaken by the orcs some time ago. For them, it serves as a pen for a huge creature, Karl.', firstHint: @@ -4044,7 +4106,7 @@ final Room godsLairAfterNecromancy = Room( positionX: 35, positionY: 42, mapName: 'God\'s Lair', - firstMapName: 'A guard room', + firstMapName: 'Guard Room', hint: 'A temple to the ancients, overtaken by the orcs some time ago. For them, it serves as a pen for a huge creature, Karl.', firstHint: @@ -4096,8 +4158,8 @@ final Room junction = Room('junction', (ActionContext c) { }, null, null, positionX: 27, positionY: 45, - mapName: 'Hub on 26th floor', - firstMapName: 'Increased foot traffic', + mapName: 'Traffic Hub on 26th Floor', + firstMapName: 'Increased Foot Traffic', hint: 'An area of increased foot traffic in the heart of the orcs’ outpost.', firstHint: @@ -4625,7 +4687,14 @@ final Room reservoir = Room('reservoir', null, (ActionContext c) { 'A large, filthy pool in the middle of the building, covered with a layer of green sludge. The reservoir was clearly built by the ancients, with their straight lines and craftsmanship of the highest quality. There\'s an iron dam here, preventing the water from spilling into the corridors of the Pyramid.\n\nEverything is wet here, even the ceiling. Condensed water forms drops that land back on the water surface, making a hollow sound in the large room.\n\nSomething big just moved in the water.\n', isRaw: true); }, null, null, - isIdle: true, positionX: 25, positionY: 48, mapName: 'Reservoir'); + isIdle: true, + positionX: 25, + positionY: 48, + mapName: 'Reservoir', + firstMapName: 'Damp Place', + hint: 'A large, filthy pool in the middle of the building.', + firstHint: + 'Corridors around this place smell of stale water. A faint splashing can be heard.'); final Room reservoirAfterOpenDam = Room('reservoir_after_open_dam', null, (ActionContext c) { final WorldState originalWorld = c.world; @@ -4647,7 +4716,11 @@ final Room reservoirAfterOpenDam = Room('reservoir_after_open_dam', null, isIdle: true, positionX: 25, positionY: 48, - mapName: 'Reservoir'); + mapName: 'Reservoir', + firstMapName: 'Damp Place', + hint: 'A large, filthy pool in the middle of the building.', + firstHint: + 'Corridors around this place smell of stale water. A faint splashing can be heard.'); final Approach cockroachFarmFromJunction = Approach('junction', 'cockroach_farm', '', null); final Room cockroachFarm = Room('cockroach_farm', (ActionContext c) { @@ -4670,7 +4743,7 @@ final Room cockroachFarm = Room('cockroach_farm', (ActionContext c) { positionX: 29, positionY: 52, mapName: 'Cockroach Farm', - firstMapName: 'Smell of rot', + firstMapName: 'Smell of Rot', hint: 'The main source of food for the orcs.', firstHint: 'The closer I am to this area, the more I can smell rotten food and flesh. No voices, though, and no footsteps.'); @@ -4716,7 +4789,7 @@ final Room cockroachFarmAfterOpenDam = Room( positionX: 29, positionY: 52, mapName: 'Cockroach Farm', - firstMapName: 'Smell of rot', + firstMapName: 'Smell of Rot', hint: 'The main source of food for the orcs.', firstHint: 'The closer I am to this area, the more I can smell rotten food and flesh. No voices, though, and no footsteps.'); @@ -4730,7 +4803,7 @@ final Room trainingGrounds = Room('training_grounds', (ActionContext c) { final Actor a = c.actor; final WorldStateBuilder w = c.outputWorld; final Storyline s = c.outputStoryline; - s.add('An army of orcs, goblins and kobolds, all training for war.\n', + s.add('A small army of orcs, goblins and kobolds, all training for war.\n', isRaw: true); }, (ActionContext c) { final WorldState originalWorld = c.world; @@ -4739,7 +4812,13 @@ final Room trainingGrounds = Room('training_grounds', (ActionContext c) { final WorldStateBuilder w = c.outputWorld; final Storyline s = c.outputStoryline; s.add('', isRaw: true); -}, null, null, positionX: 21, positionY: 54, mapName: 'Training Grounds'); +}, null, null, + positionX: 21, + positionY: 54, + mapName: 'Training Grounds', + firstMapName: 'Grunts of Strain', + hint: 'A small army of orcs, goblins and kobolds, all training for war.', + firstHint: 'Loud grunts and clashes of steel. Orc laughter.'); final Room trainingGroundsAfterDamOpened = Room( 'training_grounds_after_dam_opened', (ActionContext c) { @@ -4779,7 +4858,10 @@ final Room trainingGroundsAfterDamOpened = Room( }, positionX: 21, positionY: 54, - mapName: 'Training Grounds'); + mapName: 'Training Grounds', + firstMapName: 'Grunts of Strain', + hint: 'A small army of orcs, goblins and kobolds, all training for war.', + firstHint: 'Loud grunts and clashes of steel. Orc laughter.'); final Approach battlefieldFromKnightsHqMain = Approach('knights_hq_main', 'battlefield', '', (ActionContext c) { final WorldState originalWorld = c.world; @@ -4824,6 +4906,10 @@ final Room battlefield = Room( positionX: 28, positionY: 64, mapName: 'Battlefield Floor', + firstMapName: 'Battlefield Floor', + hint: 'A floor devoid of walls.', + firstHint: + 'The frontier between the humans at the bottom and the orcs at the top. Currently held and guarded by the orcs.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -4882,7 +4968,14 @@ final Room oracleMain = Room('oracle_main', (ActionContext c) { especially: [compassId, northSkullId], how: "{approvingly|with respect}"); }, null, null, - isIdle: true, positionX: 39, positionY: 65, mapName: 'Oracle\'s'); + isIdle: true, + positionX: 39, + positionY: 65, + mapName: 'Oracle\'s Study', + firstMapName: 'Someone\'s Study', + hint: 'A place full of books and the smell of coffee.', + firstHint: + 'A room with a good view of the forest of San Francisco and the Bay.'); final askOracleAboutKeepInk = InkAst([ InkParagraphNode((ActionContext c) { final WorldState originalWorld = c.world; @@ -6526,7 +6619,11 @@ final Room oracleAfterOrcOffensive = Room( isIdle: true, positionX: 39, positionY: 65, - mapName: 'Oracle\'s'); + mapName: 'Oracle\'s Study', + firstMapName: 'Someone\'s Study', + hint: 'A place full of books and the smell of coffee.', + firstHint: + 'A room with a good view of the forest of San Francisco and the Bay.'); final Approach jungleEntranceFromDeathlessVillage = Approach('deathless_village', 'jungle_entrance', '', null); final Approach jungleEntranceFromPond = @@ -6549,7 +6646,12 @@ final Room jungleEntrance = Room('jungle_entrance', (ActionContext c) { final WorldStateBuilder w = c.outputWorld; final Storyline s = c.outputStoryline; s.add('', isRaw: true); -}, null, null, positionX: 21, positionY: 72, mapName: 'Jungle'); +}, null, null, + positionX: 21, + positionY: 72, + mapName: 'Jungle', + hint: + 'This is where the interior of the Pyramid opens into a large crater, covered in vegetation.'); final Room jungleEntranceMuddyFootprints = Room( 'jungle_entrance_muddy_footprints', (ActionContext c) { @@ -6589,7 +6691,9 @@ final Room jungleEntranceMuddyFootprints = Room( }, positionX: 21, positionY: 72, - mapName: 'Jungle'); + mapName: 'Jungle', + hint: + 'This is where the interior of the Pyramid opens into a large crater, covered in vegetation.'); final Approach deathlessVillageFromDragonEggRoom = Approach('dragon_egg_room', 'deathless_village', '', null); final Approach deathlessVillageFromJungleEntrance = @@ -6696,7 +6800,13 @@ final Room deathlessVillage = Room('deathless_village', (ActionContext c) { c.increaseSanityFromPeople(); }, null, null, - positionX: 18, positionY: 68, mapName: 'Village of the Deathless'); + positionX: 18, + positionY: 68, + mapName: 'Village of the Deathless', + firstMapName: 'Village in the Jungle', + hint: 'A village of cultists positioned on a ledge overlooking the jungle.', + firstHint: + 'I can see some buildings through the canopy of leaves. The buildings are placed on a ledge overlooking the crater.'); final Approach dragonEggRoomFromDeathlessVillage = Approach('deathless_village', 'dragon_egg_room', '', null, isApplicable: (ApplicabilityContext c) { @@ -6712,7 +6822,7 @@ final Room dragonEggRoom = Room('dragon_egg_room', (ActionContext c) { final WorldStateBuilder w = c.outputWorld; final Storyline s = c.outputStoryline; s.add( - 'The sacred shrine of the Deathless.\n\n![Illustration of a pedestal with "Ovum Draconis" written on it. On the pedestal, there is a frag grenade.](dragonegg.png)\n\nTODO: The Deathless decide they will give me the Dragon Egg, to aid in my quest. It\'s a big deal. I receive the dragon egg. The Deathless explain to me its operation. (It\'s a frag grenade.)\n\n', + 'The sacred shrine of the Deathless.\n\nThere\'s a pedestal here, and on it, the legendary Dragon Egg.\n\n![Illustration of a pedestal with "Ovum Draconis" written on it. On the pedestal, there is a frag grenade.](dragonegg.png)\n\nTODO: The Deathless decide they will give me the Dragon Egg, to aid in my quest. It\'s a big deal. I receive the dragon egg. The Deathless explain to me its operation. (It\'s a frag grenade.)\n\n', isRaw: true); c.giveNewItemToPlayer(dragonEgg); c.markHappened(evReceivedDragonEgg); @@ -6723,7 +6833,14 @@ final Room dragonEggRoom = Room('dragon_egg_room', (ActionContext c) { final WorldStateBuilder w = c.outputWorld; final Storyline s = c.outputStoryline; s.add('', isRaw: true); -}, null, null, positionX: 15, positionY: 67, mapName: 'Sacred Place'); +}, null, null, + positionX: 15, + positionY: 67, + mapName: 'Sacred Place', + firstMapName: 'Sacred Place', + hint: 'The place with the Dragon Egg.', + firstHint: + 'A well-hidden place of worship near the village of the Deathless.'); final Approach pondFromJungleEntrance = Approach('jungle_entrance', 'pond', '', null); final Approach pondFromPondLizardRock = @@ -6931,7 +7048,11 @@ final Room pond = Room('pond', (ActionContext c) { final WorldStateBuilder w = c.outputWorld; final Storyline s = c.outputStoryline; s.add('', isRaw: true); -}, null, null, positionX: 14, positionY: 74, mapName: 'Pond'); +}, null, null, + positionX: 14, + positionY: 74, + mapName: 'Pond', + hint: 'A small body of water at the bottom of the crater.'); final Room pondWithLizardman = Room( 'pond_with_lizardman', (ActionContext c) { @@ -6975,7 +7096,8 @@ final Room pondWithLizardman = Room( }, positionX: 14, positionY: 74, - mapName: 'Pond'); + mapName: 'Pond', + hint: 'A small body of water at the bottom of the crater.'); final Approach pondLizardRockFromPond = Approach('pond', 'pond_lizard_rock', '', null, isApplicable: (ApplicabilityContext c) { @@ -7010,7 +7132,9 @@ final Room pondLizardRock = Room( null, positionX: 13, positionY: 72, - mapName: 'The Lizardman\'s Rock', + mapName: 'Lizardman\'s Rock', + hint: + 'A concrete platform near the pond that serves as the lizardman\'s new base.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -7836,7 +7960,11 @@ final Room deathlessVillageOrcOffensive = Room( }, positionX: 18, positionY: 68, - mapName: 'Village of the Deathless'); + mapName: 'Village of the Deathless', + firstMapName: 'Village in the Jungle', + hint: 'A village of cultists positioned on a ledge overlooking the jungle.', + firstHint: + 'I can see some buildings through the canopy of leaves. The buildings are placed on a ledge overlooking the crater.'); final Room deathlessVillageQuake2 = Room( 'deathless_village_quake2', (ActionContext c) { @@ -7897,7 +8025,11 @@ final Room deathlessVillageQuake2 = Room( }, positionX: 18, positionY: 68, - mapName: 'Village of the Deathless'); + mapName: 'Village of the Deathless', + firstMapName: 'Village in the Jungle', + hint: 'A village of cultists positioned on a ledge overlooking the jungle.', + firstHint: + 'I can see some buildings through the canopy of leaves. The buildings are placed on a ledge overlooking the crater.'); final Room deathlessVillageQuake3 = Room( 'deathless_village_quake3', (ActionContext c) { @@ -7958,7 +8090,11 @@ final Room deathlessVillageQuake3 = Room( }, positionX: 18, positionY: 68, - mapName: 'Village of the Deathless'); + mapName: 'Village of the Deathless', + firstMapName: 'Village in the Jungle', + hint: 'A village of cultists positioned on a ledge overlooking the jungle.', + firstHint: + 'I can see some buildings through the canopy of leaves. The buildings are placed on a ledge overlooking the crater.'); final Approach knightsHqMainFromBattlefield = Approach('battlefield', 'knights_hq_main', '', null); final Approach knightsHqMainFromElevator12 = @@ -7987,7 +8123,9 @@ final Room knightsHqMain = Room('knights_hq_main', (ActionContext c) { isIdle: true, positionX: 37, positionY: 70, - mapName: 'Knights Headquarters'); + mapName: 'Command Post', + hint: + 'This is the original center of operations of the Knights of San Francisco.'); final talkToMiguelAboutDesertingInk = InkAst([ InkParagraphNode((ActionContext c) { final WorldState originalWorld = c.world; @@ -8210,7 +8348,9 @@ final Room knightsHqCaravanDeparture = Room( isIdle: true, positionX: 37, positionY: 70, - mapName: 'Knights Headquarters'); + mapName: 'Command Post', + hint: + 'This is the original center of operations of the Knights of San Francisco.'); final Room knightsHqOrcOffensive = Room( 'knights_hq_orc_offensive', (ActionContext c) { @@ -8252,7 +8392,9 @@ final Room knightsHqOrcOffensive = Room( isIdle: true, positionX: 37, positionY: 70, - mapName: 'Knights Headquarters'); + mapName: 'Command Post', + hint: + 'This is the original center of operations of the Knights of San Francisco.'); final Room knightsHqQuake2 = Room( 'knights_hq_quake2', (ActionContext c) { @@ -8295,7 +8437,9 @@ final Room knightsHqQuake2 = Room( isIdle: true, positionX: 37, positionY: 70, - mapName: 'Knights Headquarters'); + mapName: 'Command Post', + hint: + 'This is the original center of operations of the Knights of San Francisco.'); final Room knightsHqQuake3 = Room( 'knights_hq_quake3', (ActionContext c) { @@ -8336,7 +8480,9 @@ final Room knightsHqQuake3 = Room( isIdle: true, positionX: 37, positionY: 70, - mapName: 'Knights Headquarters'); + mapName: 'Command Post', + hint: + 'This is the original center of operations of the Knights of San Francisco.'); final Approach elevator12FromElevator28 = Approach('elevator_28', 'elevator_12', '', (ActionContext c) { final WorldState originalWorld = c.world; @@ -8352,18 +8498,28 @@ final Approach elevator12FromElevator28 = }); final Approach elevator12FromKnightsHqMain = Approach('knights_hq_main', 'elevator_12', '', null); -final Room elevator12 = Room('elevator_12', null, (ActionContext c) { +final Room elevator12 = Room('elevator_12', (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; final Actor a = c.actor; final WorldStateBuilder w = c.outputWorld; final Storyline s = c.outputStoryline; - s.add('A rare access to the ancient elevator shaft.\n', isRaw: true); + s.add( + 'Darkness shrouds most of the vertical shaft above, except for a single bright slit many floors above. Down here, only a narrow passage connects the elevator shaft with the corridors surrounding it.\n', + isRaw: true); +}, (ActionContext c) { + final WorldState originalWorld = c.world; + final Simulation sim = c.simulation; + final Actor a = c.actor; + final WorldStateBuilder w = c.outputWorld; + final Storyline s = c.outputStoryline; + s.add('', isRaw: true); }, null, null, isIdle: true, positionX: 32, positionY: 72, - mapName: 'Elevator Shaft Entrance on 12th Floor'); + mapName: 'Elevator Shaft Entrance on the 12th Floor', + hint: 'A rare access to the ancient elevator shaft.'); final Approach slopesFromFarmersVillage = Approach('farmers_village', 'slopes', '', null); final Room slopes = Room('slopes', (ActionContext c) { @@ -8383,7 +8539,12 @@ final Room slopes = Room('slopes', (ActionContext c) { final WorldStateBuilder w = c.outputWorld; final Storyline s = c.outputStoryline; s.add('', isRaw: true); -}, null, null, isIdle: true, positionX: 42, positionY: 78, mapName: 'Slopes'); +}, null, null, + isIdle: true, + positionX: 42, + positionY: 78, + mapName: 'Slopes', + hint: 'The farmland on the outer wall of the Pyramid.'); final Room slopesQuake1 = Room( 'slopes_quake1', (ActionContext c) { @@ -8426,7 +8587,8 @@ final Room slopesQuake1 = Room( isIdle: true, positionX: 42, positionY: 78, - mapName: 'Slopes'); + mapName: 'Slopes', + hint: 'The farmland on the outer wall of the Pyramid.'); final talkToGreenWomanAboutSlopesDeathInk = InkAst([ InkParagraphNode((ActionContext c) { final WorldState originalWorld = c.world; @@ -8573,7 +8735,8 @@ final Room slopesQuake2 = Room( isIdle: true, positionX: 42, positionY: 78, - mapName: 'Slopes'); + mapName: 'Slopes', + hint: 'The farmland on the outer wall of the Pyramid.'); final Approach stagingAreaFromFarmersVillage = Approach('farmers_village', 'staging_area', '', null); final Approach stagingAreaFromJungleEntrance = @@ -9621,8 +9784,8 @@ final Room farmersVillage = Room('farmers_village', (ActionContext c) { isIdle: true, positionX: 35, positionY: 83, - mapName: 'Farmers\' village', - firstMapName: 'A settled area', + mapName: 'Farmers\' Village', + firstMapName: 'Settled Area', hint: 'A settlement of people who farm the vines that grow on the outside of the Pyramid.', firstHint: @@ -10592,8 +10755,8 @@ final Room farmersVillageQuake1 = Room( isIdle: true, positionX: 35, positionY: 83, - mapName: 'Farmers\' village', - firstMapName: 'A settled area', + mapName: 'Farmers\' Village', + firstMapName: 'Settled Area', hint: 'A settlement of people who farm the vines that grow on the outside of the Pyramid.', firstHint: @@ -10765,8 +10928,8 @@ final Room farmersVillageQuake2 = Room( isIdle: true, positionX: 35, positionY: 83, - mapName: 'Farmers\' village', - firstMapName: 'A settled area', + mapName: 'Farmers\' Village', + firstMapName: 'Settled Area', hint: 'A settlement of people who farm the vines that grow on the outside of the Pyramid.', firstHint: @@ -11299,7 +11462,11 @@ final Room keepBedroom = Room('keep_bedroom', (ActionContext c) { final Storyline s = c.outputStoryline; s.add('', isRaw: true); }, null, null, - isIdle: true, positionX: 15, positionY: 86, mapName: 'Lord\'s quarters'); + isIdle: true, + positionX: 15, + positionY: 86, + mapName: 'Lord\'s Quarters', + hint: 'Though derelict, these are still the nicest parts of the Keep.'); final Approach keepDiningFromKeepBedroom = Approach('keep_bedroom', 'keep_dining', '', null); final Room keepDining = Room( @@ -11348,7 +11515,7 @@ final Room keepDining = Room( mapName: 'Dining Room', firstMapName: 'Dining Room', hint: - 'The place where the Lord of the Keep dined with his family. A place with a good overview of the Pyramid\'s surroundings.', + 'The place where the Lord of the Keep dined with his family. A place with a good view of the redwoods outside.', firstHint: 'I can see a female figure silhouetted against a tall window. She is not moving but I can feel she\'s alive, or at the very least undead. She waits.', afterMonstersCleared: (ActionContext c) { @@ -11525,7 +11692,12 @@ final Room keepServants = Room('keep_servants', (ActionContext c) { final Storyline s = c.outputStoryline; s.add('', isRaw: true); }, null, null, - isIdle: true, positionX: 19, positionY: 89, mapName: 'Servants\' quarters'); + isIdle: true, + positionX: 19, + positionY: 89, + mapName: 'Servants\' Quarters', + hint: + 'The cramped rooms where the servants of the Keep\'s owner once lived and worked.'); final Approach pyramidEntranceFromBleedsMain = Approach('bleeds_main', 'pyramid_entrance', '', null); final Approach pyramidEntranceFromFarmersVillage = @@ -13120,7 +13292,7 @@ final Room bleedsMain = Room('bleeds_main', (ActionContext c) { positionX: 37, positionY: 98, mapName: 'The Bleeds', - firstMapName: 'Some buildings', + firstMapName: 'Some Buildings', hint: 'This is a small village close the entrance to the Pyramid.', firstHint: 'There seems to be a village or at least a homestead next to the Pyramid.'); @@ -13460,7 +13632,7 @@ final Room bleedsTraderHut = Room('bleeds_trader_hut', (ActionContext c) { positionX: 36, positionY: 97, mapName: 'Trader\'s Shop', - firstMapName: 'A building that says "Trader"', + firstMapName: 'Trader\'s Shop', hint: 'The shop of Joseph and his son, Leroy. Sells basic items for the inhabitants of The Bleeds, and the Farmers of the Pyramid.', firstHint: @@ -15369,7 +15541,7 @@ final Room bleedsMainDuringCaravan = Room( positionX: 37, positionY: 98, mapName: 'The Bleeds', - firstMapName: 'Some buildings', + firstMapName: 'Some Buildings', hint: 'This is a small village close the entrance to the Pyramid.', firstHint: 'There seems to be a village or at least a homestead next to the Pyramid.'); @@ -15418,7 +15590,7 @@ final Room bleedsMainAfterCaravan = Room( positionX: 37, positionY: 98, mapName: 'The Bleeds', - firstMapName: 'Some buildings', + firstMapName: 'Some Buildings', hint: 'This is a small village close the entrance to the Pyramid.', firstHint: 'There seems to be a village or at least a homestead next to the Pyramid.'); @@ -15468,7 +15640,7 @@ final Room bleedsMainAfterQuake1 = Room( positionX: 37, positionY: 98, mapName: 'The Bleeds', - firstMapName: 'Some buildings', + firstMapName: 'Some Buildings', hint: 'This is a small village close the entrance to the Pyramid.', firstHint: 'There seems to be a village or at least a homestead next to the Pyramid.'); @@ -15520,7 +15692,7 @@ final Room bleedsMainAfterQuake2 = Room( positionX: 37, positionY: 98, mapName: 'The Bleeds', - firstMapName: 'Some buildings', + firstMapName: 'Some Buildings', hint: 'This is a small village close the entrance to the Pyramid.', firstHint: 'There seems to be a village or at least a homestead next to the Pyramid.'); @@ -15564,9 +15736,9 @@ final Room goblinSkirmishPatrol = Room( positionY: 97, mapName: 'Wilderness near the Bleeds', firstMapName: 'Smoke', - hint: 'It\'s the place where I met the goblin patrol.', + hint: 'It\'s the place where I met the albino goblin.', firstHint: - 'The smoke is black as death but the pillar is narrow. Looks like nothing more than a camp fire. Someone is not afraid to be found.', + 'The smoke is as black as death but the pillar is narrow. Looks like nothing more than a camp fire. Someone is not afraid to be found.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -16235,7 +16407,10 @@ final Room goblinSkirmishMain = Room( fightIsOptional: true, positionX: 11, positionY: 97, - mapName: 'The Goblin Camp', + mapName: 'Goblin Camp', + firstMapName: 'Closer to the Smoke Stack', + hint: 'A shared place of rest for the goblins who travel through here.', + firstHint: 'Not too far to the source of the smoke now.', afterMonstersCleared: (ActionContext c) { final WorldState originalWorld = c.world; final Simulation sim = c.simulation; @@ -16958,7 +17133,7 @@ final Room meadowFight = Room( null, positionX: 49, positionY: 99, - mapName: 'Forest clearing', + mapName: 'Forest Clearing', hint: 'The clearing in the forest of San Francisco where Tamara and I were ambushed.', afterMonstersCleared: (ActionContext c) {