summaryrefslogtreecommitdiffstats
path: root/docs/Generator.html
diff options
context:
space:
mode:
authorMattes D <github@xoft.cz>2016-01-01 21:05:09 +0100
committerMattes D <github@xoft.cz>2016-01-01 21:05:09 +0100
commit80e1eb37ddfcbd224fe1d3491201ba8db3e1114f (patch)
tree436ba0fe305343c808b7078b5106981be9b00802 /docs/Generator.html
parentMerge pull request #2838 from cuberite/clang-3.8-ignore-flag (diff)
downloadcuberite-80e1eb37ddfcbd224fe1d3491201ba8db3e1114f.tar
cuberite-80e1eb37ddfcbd224fe1d3491201ba8db3e1114f.tar.gz
cuberite-80e1eb37ddfcbd224fe1d3491201ba8db3e1114f.tar.bz2
cuberite-80e1eb37ddfcbd224fe1d3491201ba8db3e1114f.tar.lz
cuberite-80e1eb37ddfcbd224fe1d3491201ba8db3e1114f.tar.xz
cuberite-80e1eb37ddfcbd224fe1d3491201ba8db3e1114f.tar.zst
cuberite-80e1eb37ddfcbd224fe1d3491201ba8db3e1114f.zip
Diffstat (limited to 'docs/Generator.html')
-rw-r--r--docs/Generator.html36
1 files changed, 18 insertions, 18 deletions
diff --git a/docs/Generator.html b/docs/Generator.html
index 85ebb91ca..3d4e09afe 100644
--- a/docs/Generator.html
+++ b/docs/Generator.html
@@ -1,12 +1,12 @@
<html>
<head>
-<title>Generating terrain in MCServer</title>
+<title>Generating terrain in Cuberite</title>
</head>
<body>
-<h1>Generating terrain in MCServer</h1>
-<p>This article explains the principles behind the terrain generator in MCServer. It is not strictly
-specific to MCServer, though, it can be viewed as a generic guide to various terrain-generating algorithms,
-with specific implementation notes regarding MCServer.</p>
+<h1>Generating terrain in Cuberite</h1>
+<p>This article explains the principles behind the terrain generator in Cuberite. It is not strictly
+specific to Cuberite, though, it can be viewed as a generic guide to various terrain-generating algorithms,
+with specific implementation notes regarding Cuberite.</p>
<p>Contents:
<ul>
@@ -80,7 +80,7 @@ neighboring chunks.</p>
<hr />
<a name="composablegen"><h2>The ComposableGenerator pipeline</h2></a>
-<p>This leads us directly to the main pipeline that is used for generating terrain in MCServer. For
+<p>This leads us directly to the main pipeline that is used for generating terrain in Cuberite. For
technical reasons, the terrain composition step is further subdivided into Height generation and Composition
generation, and the structures are really called Finishers. For each chunk the generator generates, in this
sequence:
@@ -131,7 +131,7 @@ generated for any number of dimensions.</p>
<a name="biomegen"><h2>Generating biomes</h2></a>
<p>The easiest way to generate biomes is to not generate them at all - simply assign a single constant biome
to everywhere. And indeed there are times when this kind of "generator" is useful - for the MineCraft's Flat
-world type, or for testing purposes, or for tematic maps. In MCServer, this is exactly what the Constant
+world type, or for testing purposes, or for tematic maps. In Cuberite, this is exactly what the Constant
biome generator does.</p>
<p>Of course, there are more interesting test scenarios for which multiple biomes must be generated as easy
@@ -175,7 +175,7 @@ gives us the seed's X position. We use another Perlin noise and the same calcula
seed.</p>
<p>Here's an example of a biome map generated using the Voronoi + jitter grid, as implemented by the Voronoi
-biome generator in MCServer:</p>
+biome generator in Cuberite:</p>
<img src="img/voronoijitterbiomes.png" />
<h3>Distorted Voronoi</h3>
@@ -194,7 +194,7 @@ coordinate before sending the coordinates down to the Voronoi generator:</p>
DistortedVoronoiBiome(X, Z) := VoronoiBiome(X + PerlinX(X, Z), Z + PerlinZ(X, Z))
</code>
-<p>The following image shows the effects of the change, as generated by MCServer's DistortedVoronoi biome
+<p>The following image shows the effects of the change, as generated by Cuberite's DistortedVoronoi biome
generator. It is actually using the very same Voronoi map as the previous image, the only change has been
the addition of the distortion:</p>
<img src="img/distortedvoronoibiomes.png" />
@@ -241,7 +241,7 @@ either add them somewhere into the decision diagram, or we can make the generato
</ul>
</p>
-<p>This is the approach implemented in MCServer's MultiStepMap biome generator. It generates biome maps like
+<p>This is the approach implemented in Cuberite's MultiStepMap biome generator. It generates biome maps like
this:</p>
<img src="img/multistepmapbiomes.png" />
@@ -296,10 +296,10 @@ generator uses distortion before querying the small areas.</p>
<img src="img/twolevelsmallgrid.jpg" /><br />
<img src="img/twolevelsmallareas.jpg" /><br />
-<p>The following image shows an example output of a TwoLevel biome generator in MCServer:</p>
+<p>The following image shows an example output of a TwoLevel biome generator in Cuberite:</p>
<img src="img/twolevelbiomes.png" />
-<p>Note that rivers are currently not implemented in this generator in MCServer, but they could be added
+<p>Note that rivers are currently not implemented in this generator in Cuberite, but they could be added
using the same approach as in MultiStepMap - by using a thresholded 2D Perlin noise.</p>
@@ -332,12 +332,12 @@ suddenly become smooth. The following image shows the situation from the previou
the averaging process: </p>
<img src="img/biomeheightsavg.jpg" />
-<p>The approach used in MCServer's Biomal generator is based on this idea, with two slight modifications.
+<p>The approach used in Cuberite's Biomal generator is based on this idea, with two slight modifications.
Instead of using a separate generator for each biome, one generator is used with a different set of input
parameters for each biomes. These input parameters modify the overall amplitude and frequency of the Perlin
noise that the generator produces, thus modifying the final terrain with regards to biomes. Additionally, the
averaging process is weighted - columns closer to the queried column get a more powerful weight in the sum
-than the columns further away. The following image shows the output of MCServer's Biomal terrain height
+than the columns further away. The following image shows the output of Cuberite's Biomal terrain height
generator (each block type represents a different biome - ocean in the front (stone), plains and ice plains
behind it (lapis, whitewool), extreme hills back right (soulsand), desert hills back left (mossy
cobble)):</p>
@@ -425,7 +425,7 @@ snow, for example.</p>
into an ice block if the biome is cold. This means that any water block that is under any kind of other
block, such as under a tree's leaves, will still stay water. Thus an additional improvement could be made by
scanning down from the surface block through blocks that we deem as non-surface, such as leaves, torches,
-ladders, fences etc. Note that MCServer currently implements only the easy solution.</p>
+ladders, fences etc. Note that Cuberite currently implements only the easy solution.</p>
<h3>Bottom lava</h3>
<p>Most worlds in MineCraft have lava lakes at their bottom. Generating these is pretty straightforward: Use
@@ -433,7 +433,7 @@ the user-configured depth and replace all the air blocks below this depth with l
that this makes this generator dependent on the order in which the finishers are applied. If the mineshafts
generate before bottom lava, the mineshafts that are below the lava level will get filled with lava. On the
other hand, if bottom lava is generated before the mineshafts, it is possible for a mineshaft to "drill
-through" a lake of lava. MCServer doesn't try to solve this and instead lets the admin choose whichever they
+through" a lake of lava. Cuberite doesn't try to solve this and instead lets the admin choose whichever they
prefer.</p>
<h3>Specific foliage</h3>
@@ -500,12 +500,12 @@ anywhere, so it would be rather useless.</p>
surface, perhaps a bit more in the mountaineous biomes. There should be quite a few more springs underground,
but there should definitely be more water springs than lava springs in the upper levels of the terrain, while
there should be more lava springs and almost no water springs near the bottom. To accomodate this, the
-MCServer team has made a tool that scanned through MineCraft's terrain and counted the amount of both types
+Cuberite team has made a tool that scanned through MineCraft's terrain and counted the amount of both types
of springs in relation to their height. Two curves have been found for the distribution of each type of the
spring:</p>
<img src="http://mc-server.xoft.cz/img/vanilla_springs_huge.png" />
-<p>MCServer uses an approximation of the above curves to choose the height at which to generate the
+<p>Cuberite uses an approximation of the above curves to choose the height at which to generate the
spring.</p>
<!--