Mgfractal: Improve spawning behaviour
authorparamat <paramat@users.noreply.github.com>
Mon, 17 Jul 2017 16:27:35 +0000 (17:27 +0100)
committerparamat <mat.gregory@virginmedia.com>
Mon, 17 Jul 2017 19:19:43 +0000 (20:19 +0100)
Spawn player 1 node higher to avoid spawning waist-deep in a possible
biome 'dust' node, such as tundra snowblock.
Tune default offset to spawn players in a more interesting location on the
mandelbrot sets, on a raised area that looks like a spawn platform.
Tune julia parameters to help avoid spawn search failing, especially for
fractal 6.

src/mapgen_fractal.cpp
src/mapgen_fractal.h

index 13da2f18012e8946978d7e058da3d869cbdeb0ef..720408dbb68d10995a5d308dc3dd2c4cff4e811f 100644 (file)
@@ -156,7 +156,8 @@ int MapgenFractal::getSpawnLevelAtPoint(v2s16 p)
                        air_count = 0;
                } else if (solid_below) {  // Air above solid node
                        air_count++;
-                       if (air_count == 2)
+                       // 3 to account for snowblock dust
+                       if (air_count == 3)
                                return y - 2;
                }
        }
index a14c5c5e100a5a293a7e3d8b4ef6ead9a7dd0b55..b3f69cb78fab9d15798838cd27b4543e6972ebc0 100644 (file)
@@ -39,12 +39,12 @@ struct MapgenFractalParams : public MapgenParams
        u16 fractal = 1;
        u16 iterations = 11;
        v3f scale = v3f(4096.0, 1024.0, 4096.0);
-       v3f offset = v3f(1.79, 0.0, 0.0);
+       v3f offset = v3f(1.52, 0.0, 0.0);
        float slice_w = 0.0f;
-       float julia_x = 0.33f;
-       float julia_y = 0.33f;
-       float julia_z = 0.33f;
-       float julia_w = 0.33f;
+       float julia_x = 0.267f;
+       float julia_y = 0.2f;
+       float julia_z = 0.133f;
+       float julia_w = 0.067f;
        NoiseParams np_seabed;
        NoiseParams np_filler_depth;
        NoiseParams np_cave1;