Description |
Here is the first improved and added layout.
It was previously layout_gehenna_lava_paths and is now layout_cocytus_water_paths. The change is because it did not fit the style mumra more--or-less agreed on for Gehenna, but it did fit the Cocytus style. I asked mumra about this (when he was still here) and he said it was OK with him.
I also added depth convergence. On deeper floors, there are wider paths, less cover, and more open water. The paths also end a bit farther from the walls (on average), but that is mostly stylistic. |
Attached Files |
0001-Update-and-enable-layout_cocytus_water_paths.patch [^] (3,156 bytes) 2014-06-20 05:11 [Show Content] [Hide Content]From c036d87591f32b00a3990f2b222bb5e626af822d Mon Sep 17 00:00:00 2001
From: infiniplex <infiniplex@hotmail.com>
Date: Thu, 19 Jun 2014 20:59:49 -0600
Subject: [PATCH] Update and enable layout_cocytus_water_paths
---
crawl-ref/source/dat/des/builder/layout_caves.des | 35 ++++++++++++++---------
1 file changed, 22 insertions(+), 13 deletions(-)
diff --git a/crawl-ref/source/dat/des/builder/layout_caves.des b/crawl-ref/source/dat/des/builder/layout_caves.des
index e7a9276..04e409e 100644
--- a/crawl-ref/source/dat/des/builder/layout_caves.des
+++ b/crawl-ref/source/dat/des/builder/layout_caves.des
@@ -440,14 +440,14 @@ MAP
ENDMAP
##############################################################
-# layout_gehenna_lava_paths
+# layout_cocytus_water_paths
#
-# TODO: Replace lava with deep water, add to Cocytus with weight
-# 10, and rename to "layout_cocytus_water_paths".
+# Previously named layout_gehenna_lava_paths, had lava instead
+# of water, and appeared in Gehenna.
#
-NAME: layout_gehenna_lava_paths
+NAME: layout_cocytus_water_paths
DEPTH: Coc
-WEIGHT: 0
+WEIGHT: 10
ORIENT: encompass
TAGS: overwritable layout allow_dup unrand layout_type_open_caves
{{
@@ -457,10 +457,14 @@ TAGS: overwritable layout allow_dup unrand layout_type_open_caves
extend_map { width = gxm, height = gym, fill = 'x' }
-- Set a scale to produce some nice-sized chunks
- local scale = util.random_range_real(.5,1.0)
- local path_break = crawl.random2(101)/500 + 0.2 -- 0.2 .. 0.4
- local wall_break = crawl.random2(101)/250 + 0.2 + path_break -- 0.4 .. 1.0
- local padding = crawl.random_range(5,12)
+ local depth_fraction = you.depth_fraction()
+ local scale = 0.95 + crawl.random_real() * 0.25 - depth_fraction * 0.35
+ local path_break = 0.15 + crawl.random_real() * 0.05 + depth_fraction * 0.05
+ local wall_break = 0.8 - crawl.random_real() * (0.6 - path_break)
+
+ -- between outmost paths and outmost water
+ local padding = 8 + crawl.random_real() * 6 + depth_fraction * 6
+
-- Setup a worley function
local worley1 = procedural.worley_diff { scale = scale/4 }
if (scale > 1.5 and crawl.coinflip()) then
@@ -475,19 +479,24 @@ TAGS: overwritable layout allow_dup unrand layout_type_open_caves
for x = 1,gxm-2,1 do
for y = 1,gym-2,1 do
- local val = worley1(x,y) + 1 - procedural.boundary_map(x,1,padding,gxm-2-padding,gxm-2)/2 - procedural.boundary_map(y,1,padding,gym-2-padding,gym-2)/2
+ local val = worley1(x,y) + 1
+ - procedural.boundary_map(x,1,padding,gxm-2-padding,gxm-2)/2
+ - procedural.boundary_map(y,1,padding,gym-2-padding,gym-2)/2
if (val) > wall_break then
mapgrd[x][y] = "x"
elseif (val) > path_break then
- mapgrd[x][y] = "l"
+ mapgrd[x][y] = "w"
else
mapgrd[x][y] = "."
end
end
end
- zonify.map_fill_zones(_G, 1, 'l')
-
+ -- we want to fill flight-accessable areas with water and all
+ -- closets with rock
+ zonify.map_fill_zones(_G, 1, 'w')
+ nsubst(". = 1:@ / *:.")
+ fill_disconnected{wanted = '@', fill = 'x'}
}}
MAP
ENDMAP
--
1.8.1.2
layout_cocytus_water_paths.png [^] (22,149 bytes) 2014-06-20 05:11
|