summaryrefslogtreecommitdiffstats
path: root/crawl-ref
diff options
context:
space:
mode:
authorDarshan Shaligram <dshaligram@users.sourceforge.net>2010-01-16 21:21:34 +0530
committerDarshan Shaligram <dshaligram@users.sourceforge.net>2010-01-16 21:23:28 +0530
commitfc861cd85fb2044058363096b391f1c21ec8e660 (patch)
tree45e09abedcb7b56afea7e88eee1d0dec41f74f09 /crawl-ref
parentd70fef927f87c743c1deb13bc285f06d3cc7dc6e (diff)
downloadcrawl-ref-fc861cd85fb2044058363096b391f1c21ec8e660.tar.gz
crawl-ref-fc861cd85fb2044058363096b391f1c21ec8e660.zip
Re-enable Swamp, randomly disable one of the Swamp, Snake Pit, or Shoals instead of flipping between Swamp and Shoals only (rob, dpeg).
Diffstat (limited to 'crawl-ref')
-rw-r--r--crawl-ref/source/dat/descript/branches.txt22
-rw-r--r--crawl-ref/source/ng-init.cc37
-rw-r--r--crawl-ref/source/travel.cc4
3 files changed, 30 insertions, 33 deletions
diff --git a/crawl-ref/source/dat/descript/branches.txt b/crawl-ref/source/dat/descript/branches.txt
index 104c50dcf0..c36bf7c712 100644
--- a/crawl-ref/source/dat/descript/branches.txt
+++ b/crawl-ref/source/dat/descript/branches.txt
@@ -44,9 +44,10 @@ Swamp
A swampy wasteland, complete with ooze, muck, flies and large slavering
carnivorous monsters.
-The Swamp is five levels deep and contains the decaying rune. A dungeon
-features only one of the Swamp or Shoals branches. If the Swamp is
-present, the entry is located between Lair:2 and Lair:5.
+The Swamp is five levels deep and contains the decaying rune. A
+dungeon features only two of the Snake Pit, Swamp and Shoals branches.
+If the Swamp is present, the entrance is located between Lair:2 and
+Lair:5.
%%%%
Shoals
@@ -56,9 +57,10 @@ making up a few islands in a vast sea. Out of a sudden, a bloodcurdling
scream fills the air, followed by a gurgle. Anxiously, you look around and
wonder: Who is the predator? And who is the prey?
-The Shoals are five levels deep and contain the barnacled rune. A dungeon
-features only one of the Swamp or Shoals branches. If the Shoals are
-present, the entry is located between Lair:2 and Lair:5.
+The Shoals are five levels deep and contain the barnacled rune. A
+dungeon features only two of the Snake Pit, Swamp and Shoals branches.
+If the Shoals are present, the entrance is located between Lair:3 and
+Lair:6.
%%%%
Slime Pits
@@ -68,14 +70,16 @@ deep down, hidden safely away in secret chambers without door or window for
acid to leak in.
The Slime Pits are six levels deep and contain the slimy rune. The entry is
-between Lair:5 and Lair:8.
+between Lair:6 and Lair:8.
%%%%
Snake Pit
Home of the serpent, lair of the naga.
-The Snake Pit is five levels deep and contains the serpentine rune. The
-entry is between Lair:3 and Lair:6.
+The Snake Pit is five levels deep and contains the serpentine rune. A
+dungeon features only two of the Snake Pit, Swamp and Shoals branches.
+If the Snake Pit is present, the entrance is located between Lair:3 and
+Lair:6.
%%%%
Hive
diff --git a/crawl-ref/source/ng-init.cc b/crawl-ref/source/ng-init.cc
index 9fc0cd32f9..332c8c2708 100644
--- a/crawl-ref/source/ng-init.cc
+++ b/crawl-ref/source/ng-init.cc
@@ -46,12 +46,6 @@ static unsigned char _random_potion_description()
return static_cast<unsigned char>(desc);
}
-// [dshaligram] FIXME: This is to push more playtesting towards Shoals,
-// should be removed before release.
-#ifdef DGAMELAUNCH
-#define SHOALS_TESTING
-#endif
-
// Determine starting depths of branches.
void initialise_branch_depths()
{
@@ -61,23 +55,20 @@ void initialise_branch_depths()
branches[BRANCH_LAIR].startdepth = random_range(8, 13);
branches[BRANCH_HIVE].startdepth = random_range(11, 16);
branches[BRANCH_SLIME_PITS].startdepth = random_range(6, 8);
-#ifndef SHOALS_TESTING
- if ( coinflip() )
- {
- branches[BRANCH_SWAMP].startdepth = random_range(2, 5);
- branches[BRANCH_SHOALS].startdepth = -1;
- }
- else
-#endif
- {
- branches[BRANCH_SWAMP].startdepth = -1;
- branches[BRANCH_SHOALS].startdepth = random_range(2, 5);
- }
- branches[BRANCH_SNAKE_PIT].startdepth = random_range(3, 6);
- branches[BRANCH_VAULTS].startdepth = random_range(14, 19);
- branches[BRANCH_CRYPT].startdepth = random_range(2, 4);
- branches[BRANCH_HALL_OF_BLADES].startdepth = random_range(4, 6);
- branches[BRANCH_TOMB].startdepth = random_range(2, 3);
+ branches[BRANCH_SWAMP].startdepth = random_range(2, 5);
+ branches[BRANCH_SHOALS].startdepth = random_range(3, 6);
+ branches[BRANCH_SNAKE_PIT].startdepth = random_range(3, 6);
+ branches[BRANCH_VAULTS].startdepth = random_range(14, 19);
+ branches[BRANCH_CRYPT].startdepth = random_range(2, 4);
+ branches[BRANCH_HALL_OF_BLADES].startdepth = random_range(4, 6);
+ branches[BRANCH_TOMB].startdepth = random_range(2, 3);
+
+ // Disable one of the Swamp/Shoals/Snake Pit.
+ const branch_type disabled_branch =
+ static_cast<branch_type>(
+ random_choose(BRANCH_SWAMP, BRANCH_SHOALS, BRANCH_SNAKE_PIT, -1));
+ dprf("Disabling branch: %s", branches[disabled_branch].shortname);
+ branches[disabled_branch].startdepth = -1;
}
#define MAX_OVERFLOW_LEVEL 9
diff --git a/crawl-ref/source/travel.cc b/crawl-ref/source/travel.cc
index 0d2561a44b..8cc72ae6c3 100644
--- a/crawl-ref/source/travel.cc
+++ b/crawl-ref/source/travel.cc
@@ -2008,7 +2008,9 @@ static int _prompt_travel_branch(int prompt_flags, bool* to_entrance)
std::string msg;
if (target.startdepth == -1
- && (i == BRANCH_SWAMP || i == BRANCH_SHOALS ))
+ && (i == BRANCH_SWAMP
+ || i == BRANCH_SHOALS
+ || i == BRANCH_SNAKE_PIT))
{
msg += "Branch not generated this game. ";
}