欢迎来到Minecraft插件百科!
对百科编辑一脸懵逼?
帮助:快速入门
带您快速熟悉百科编辑!
因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289
查看“TerrainControl”的源代码
←
TerrainControl
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于这些用户组的用户执行:
用户
、
自动确认用户
、
巡查者
您可以查看和复制此页面的源代码。
{{Bukkit Plugin Infobox |插件名=TerrainControl |版本=v2.7.2 |前置插件=无 |兼容服务端版本=1.7.2-1.8.3 |網址=[https://github.com/MCTCP/TerrainControl/wiki/ WikiOnGithub] }} {{待搬运}} [[TerrainControl/en|查看原文]] [https://github.com/MCTCP/TerrainControl/wiki Github Wiki] == 概述 == Terrain Control 是一款高级的地形生成器. 通过多样化的配置文件,它使得用户可以在不了解Java的情况下,而控制Minecraft地形生成机制的大多数方面. 它可以运行在Bukkit/Forge服务端以及带有Forge的单人游戏上. Terrain Control 继承自旧版的 [http://www.minecraftforum.net/topic/313991-phoenixterrainmod/ PhoenixTerrainMod], 而其又是基于著名的 [http://www.minecraftforum.net/topic/71565-biomemod/ BiomeTerrainMod]. Terrain Control 由[http://dev.bukkit.org/profiles/Khoorn/ Khoorn]维护 (同时也是Github上的 [https://github.com/Wickth Wickth] ). *控制水平与垂直方向的地形生成噪声函数 *控制每个生态群系的地形生成高度以及波动性 *由图像生成生态群系图 *控制生态群系,岛屿和大陆的规模 *自定义生态群系 *众多关于洞穴与峡谷的设置项 *控制自然结构的生成,诸如天然矿井、要塞和村庄 *对矿物、植物、地牢、池塘和其他生成物的完全控制 *自定义树木和其他对象(BO2 以及 BO3) *替换方块 *支持视觉设置,如设置树叶的颜色 (需要客户端也安装TerrainControl) <br /> 想了解更多,来[https://github.com/MCTCP/TerrainControl/wiki/Features 这里]看看吧! == 向导 == === 准备工作 === ==== 安装向导 ==== 时间: 2014.1.5 Terrain Control 插件支持CraftBukkit, Spigot, Cauldron and Forge (甚至单人游戏). 一个普通的jar文件可以在所有这些平台上面运行. * Forge (单人游戏) 首先, 下载并且安装Forge. 运行一次Minecraft以确保所有文件正常运行. 然后通过百科主页面上的下载链接下载插件. 确保和Minecraft本体的版本对应.把文件放进.minecraft文件夹下的mods文件夹. 你现在可以创建一个Terrain Control所定义的世界类型.这个 Mod 只会影响到这一个世界与这个世界的类型. 如果你没有更改在 .minecraft/mods/TerrainControl/worlds/YOUR_WORLD_NAME/ 里面的配置文件, 世界只会成为一个默认的Minecraft世界. 每当你改变了配置, 你必须删除 .minecraft/saves/YOUR_WORLD_NAME/region 文件夹来重新生成世界. 被更改的设置不会影响到已经生成的区块. 向导会教给你如何自定义一个世界类型. * CraftBukkit, Spigot 和 Cauldron 服务器 只需要把jar文件丢尽plugins文件夹,就像其他的Bukkit插件一样. 这并不需要在玩家的客户端上安装相应的单人游戏版本, 但是如果安装了可以体验到更多的特性. 在你安装完成之后, 你必须仍然为你的新世界激活这个插件. 如果你没有一个多世界管理插件类似于Multiverse, 下面给你的 bukkit.yml 来允许插件操作这个世界 (使用空格按钮, 不要使用 tabs!): worlds: 你的世界名称: generator: TerrainControl 如果你使用了 Multiverse, 你可以创建一个Terrain Control 类型的时间通过使用命令: /mv create 世界名称 normal -g TerrainControl 如果你正在使用多世界插件来应用Terrain Control 来更改你的一个默认类型的世界, 也要增加 Terrain Control 到 bukkit.yml (操作:上面描述过). Terrain Control 需要正确的将这个世界初始化为默认世界. (鉴于本人水平,本语段可能出现了歧义) 如果你在使用另一个多世界管理插件, 查找该插件的介绍文档. 使用 TerrainControl (没有一个空格在 Terrain 和 Control之间) 作为控制者名称(即generator 后面填的).区分大小写. 如果你没有更改在 plugins/TerrainControl/worlds/YOUR_WORLD_NAME/ 文件见下的配置, 世界只会成为一个默认的Minecraft世界. 每当你改变了配置, 你必须删除 .minecraft/saves/YOUR_WORLD_NAME/region 文件夹来重新生成世界. 被更改的设置不会影响到已经生成的区块. 向导会教给你如何自定义一个世界类型. * Forge服务器(也就是官服) 确保Forge安装到了服务器. 把插件放进mods文件夹. 去 server.properties 文件然后设置level-type 到 TerrainControl (没有一个空格在 Terrain 和 Control之间). 删除主世界的 level.dat 来得到一个正确的世界类型. 如果你没有更改在 .minecraft/mods/TerrainControl/worlds/YOUR_WORLD_NAME/ 里面的配置文件, 世界只会成为一个默认的Minecraft世界. 每当你改变了配置, 你必须删除 .minecraft/saves/YOUR_WORLD_NAME/region 文件夹来重新生成世界. 被更改的设置不会影响到已经生成的区块. 向导会教给你如何自定义一个世界类型. ==== 准备工作向导 ==== 欢迎,新的使用者! 在你成功的安装Terrain Control之后, 你可以开始创建你的新世界. 创建一个创造模式的世界(TerrainControl作为控制者),世界的种子需要是”12”. 我们使用这个特定的种子是为了使你的世界与教程所介绍的相同.如果你不需要创建一个TerrainControl世界使用这个特定的种子,只需要跳过这个列表. * 如果你是单人游戏, 左键创建新的世界按钮, 选择创造模式作为游戏模式然后填写一个名字. 左键更多世界选项按钮, 把种子改成12然后选择 TerrainControl 作为世界类型. 确保打开了允许作弊, 你需要使用 /tp 命令. * 如果你在 Bukkit 服务器上然后你有 Multiverse 多世界插件,你可以使用 /mv create world_name NORMAL -s 12 -g TerrainControl 来创建世界然后使用 /mv tp world_name 来传送到这个世界. * 如果使用的是另外一个多世界管理插件而且使用的是Bukkit服务器.查询多世界插件的帮助文档.创建一个新世界记得把12作为世界的种子,将TerrainControl作为世界类型. * 如果你在使用Bukkit服务器但是没有任何多世界管理插件,去 bukkit.yml 然后再增加下列内容: worlds: 你的世界名称: generator: TerrainControl 记得把 “你的世界名称” 改为你所习惯的世界名称. 而且,在文件里面不要使用tab键,只能使用空格键.前往 server.properties 文件然后将 level-seed 设置为12.删除整个世界文件夹来得到一个全新的 level.dat 文件含有正确的种子. * 如果你使用的是Forge服务器(官服), 前往 server.properties 然后设置 level-type 为TerrainControl 然后 level-seed 为12. 删除整个世界文件夹来得到一个全新的 level.dat 文件含有正确的种子. 现在登陆一次你的世界让 Terrain Control 生成全新的配置. 使用命令 /seed来验证种子是12. 你会注意到这个世界和默认的Minecraft世界没有任何区别: 别忘记你还没有更改一点点配置文件哟! 关掉你的服务器/游戏吧. 找到你的Terrain Control 设置文件夹.Locate your Terrain Control settings folder. (如果不知道在哪儿可以参考安装说明嘤). 你应该可以看到一些类似于这样的东西: [[文件:TerrainControl-1.png||TerrainControl-1]] 让我们打开 WorldConfig.ini. 使用Notepad 当然很好哦. 但是不要使用含有字体样式的编辑器哦,比如说Word. 带有 # 开头的行为注释。注释对每一个变量进行了解释。在Wiki的WorldConfig页面上,你还可以找到更多的信息。 译者注:今后的“region”文件夹统一译为区块文件夹 为了验证所有的东西都正常工作,我们来更改一个数值试试。GenerationDepth是个好东西来更改。如果你把它设置成9,所有的生物群系大小减半(仅仅是x和z两个方向,就是说高度还是原来的).如果你设定为了11,所有的生物群系大小翻倍,同时也只是在x和z两个方向。 如果你设置为12,那么生物群系的大小将会变得和“巨型生物群系”世界类型的生物群系大小一样大。让我们试试,把它改成12,然后保存。 如果你愿意(重新)打开游戏/服务器,你依然看不到任何变化。你必须探索新的区块来查看新的地形,和其他的控制器(如WorldEdit)别无二样。这实在是很无聊,但是你可以删除在区块文件夹,但是如果你删除世界文件夹里面的区块文件夹。这仅仅是删除了地形,但是保存了玩家的位置信息和种子。注意!不要再服务器/游戏运行时这么做! 在你成功删除了区块文件夹之后,打开服务器/游戏来测试你的更改。你应该能看到含有一个大型生物群系的世界。 现在时候后来浏览一下WorldBiomes文件夹了。再次强调:不要忘记关掉服务器/游戏。你会发现一大堆代表生物群系配置(BiomesConfig)的 .bc 文件。有些文件看起来非常有规律 (啥是 Sky.bc?), 别的就根本不是生物群系 (从哪儿开始是沙滩生物群系? 河流呢?),还有一些是非常奇怪的名字 (梅萨高原 F M?). 这些名字都是又Mojang确定的。 [[文件:TerrainControl-2.png||TerrainControl-2]] 现在你可以忽略这些奇怪的生物群系名字。仅仅是打开 Desert.bc 文件。如果你往下翻这个文件,你可以发现BiomeHeight 和 BiomeVolatility(就是在'''Terrain Generator Variables'''下面的东西)。来让我们在沙漠上面加点山丘吧。 设置 BiomeHeight 为 0.2 (让地形更高一点,而不是多加点山丘) 还有 BiomeVolatility 设置为 0.4 (让这里多加点山丘). 现在保存一下,删除区块文件夹。如果你确定你使用的是12号种子,你可以使用/tp -19 80 -306来传送到一块沙漠里面。 [[文件:TerrainControl-3.png||TerrainControl-3]] 也许悬崖边的石头惹恼了你,也许沙石看起来更棒。关闭游戏/服务器,打开 Desert.bc 然后设置 StoneBlock (在“Block”部分) 为 SANDSTONE. 这把所有的石头改成了沙石。关闭游戏/服务器,删除区块文件夹然后打开服务器/游戏。 [[文件:TerrainControl-4.png||TerrainControl-4]] 现在也许你体验到了Terrain Control的一丁点力量。是时候教给你新东西了!如果你就是想知道其他的设置会产生什么效果,你可以好好看一下 WorldConfig 和 BiomeConfigs文件里面的设置. 如果你要创建你的自定义生物群系,你应该继续读下去直到向导结束。在主页面你还可以发现一大堆其他向导。样例页面也许很有用哟。 ==== 你的第一个自定义生物群系 ==== 在这个向导里面我们来创建我们的第一个自定义生物群系。在前面的教程中我们把默认的沙漠多加入了一些丘陵,把石头替换为沙石。我们现在将创建一个有很多花和一些树的山地。 你可以使用之前的世界继续工作。或者,您可以创建一个种子为12的新的世界。请确保GenerationDepth也设置为 12 (在 WorldConfig.ini 中找到)。这将使生物群落更大。如果你已经这么做了,你可以使用本教程中的坐标。如果不是,你会发现自己在一些其他生物群落中迷路了,你必须自己找很多的一些生物群系。 我们将通过向生物群系列表添加自定义的生物群系开始。我们要修改的第一个选项是 CustomBiomes。打开 WorldConfig.ini 文件,并搜索该选项。要编辑看起来像这行而且有CustomBiomes的一行: CustomBiomes:Flowerfield:40 这样会使Terrain Control控制器读取叫做Flowerfield 的生物群系。生物群系的ID将设置为40。生物群系ID就像方块ID一样,但是这有专门的列表记录以及最高的生物群系ID只能是254,两个生物群系不能出现相同的ID。 如果你重启了你的游戏/服务器,你会在 BiomeConfigs 目录下发现一个新文件: FlowerfieldBiomeConfig.ini。然而,你的世界看起来没什么变化。我们需要将我们生物群落系添加到生物群系列表。NormalBiomes(在WorldConfig.ini里面)是个不错的选择,因为这使它生成为正常的生物群系,就和大多数生物群系一样。下面来把你的生物群系添加到NormalBiomes 列表: NormalBiomes:Desert,Forest,Extreme Hills,Swampland,Plains,Taiga,Jungle,Flowerfield 确保服务器关掉/游戏地图没有开启,删除世界文件夹区块文件夹然后重新打开服务器/地图。然后使用/tp -1010 78 -11来传送到这个位置,你可以看见你自定义的生物群系。不过它看起来还不是那么好,但别忘记,你还没有改变任何设置呢: [[文件:TerrainControl-5.png|TerrainControl-5]] 如果你没有使用单人游戏Mod: Terrain Control,颜色会出现一点点差别。 首先,我们来使劲绿化一下生物群系。打开 FlowerfieldBiomeConfig.ini。向下滚动直到你看见 Visuals 和 weather section(视觉效果&天气部分)。在这里你可以更改生物群系的颜色。但是,如果在客户端上没有Mod:TerrainControl,则不会有任何效果。如果你把地图应用在单人游戏上面,这当然一点问题也没有。但是如果你使用在Bukkit服务器上面,你的玩家只能看见Minecraft标准颜色模式。颜色为十六进制。你可以搜索一下“拾色器” 。请注意一下大多数拾色器使用的是带有前缀#的颜色编号,这在网页设计中是常见的。但是,TerrainControl要求使用0x来代替#,这是在Java中常见的。 在本教程中,我们并不打算启用颜色设置。TerrainControl有一个很酷的选项,可以使用别的生物群系的ID来保存我们自己的生物群许。这将会使颜色,天气和生物都和另外一个生物群系相类似。幸运的是,地形的形状和特性仍然看起来一样。我们打算使用蘑菇岛生物群系,因为它有很好看的绿色草地(通常不常见,因为那里覆盖满了菌丝,但试着在那里种一块草你就能发现了)。作为额外的奖励,没有地对生物生成在我们的花田上面。向上滚动查找 ReplaceToBiomeName 设置,并将其设置为 MushroomIsland。 请确保服务器关掉/地图没有打开, 删除世界文件夹内的区块文件夹并重新启动服务器/打开地图。使用命令 /tp-1010 78-11 传送到该位置,您现在可以看到生物群落绿了很多: [[文件:TerrainControl-6.png|TerrainControl-6]] 现在,我们要让生物群落多一点山丘。再次打开 FlowerfieldBiomeConfig.ini,将 BiomeVolatility 设置为 0.5。如果你现在想要看一眼,你会看到,在一些地方土地低于海平面。我们不希望这样,因为要解决这个问题所以我们把生物群系的海拔提高一下,而不是让其多一些山丘。将 BiomeHeight 设置为 0.5,使生物群落高一点。 关闭服务器/世界, 删除区块文件夹并重新打开服务器/世界。现在,您应该看到一些小山: [[文件:TerrainControl-7.png|TerrainControl-7]] 译者注:今后所有TerrainControl插件统一译为本插件 现在我们要将一些资源添加到生物群系。本插件拥有强大的资源控制体系。它是由一长串的列表来控制。每个资源可以是矿、 一颗植物、 一棵树,小湖之类。几乎所有资源都有其生成频率选项,该数据选项设置其生成频率是默认的多少倍。几乎所有的资源也有稀有设置,来确定成功尝试生成的概率。通常的地形有另一个限制因素: 如果没有足够的空间来生成一棵树,它仍然不会生成,即使概率是100。 资源系统所使用的函数语法也用于其他地方的一些配置。他是这样使用的: NameOfFunction(parameter,parameter,parameter,...) 函数名(参数,参数,参数,……..) 如果你有像 Microsoft Excel 电子表格使用的经验,这种语法应该熟悉。每个参数所做改变都会影响在资源中的东西。每个参数都会影响资源中的一些东西。 所有的资源同时摆放在一个列表中,叫做资源队列。但是这已经超出了本向导所能够介绍到的范围(查看这个页面),但是一些关于我们的植物生物群系的有趣的资源也许会被描述。 花在Minecraft中是单一的方块资源。在资源队列中, 有两个资源设计是为了单一方块。草的工作(即草在本插件的生成时做的运算)比植物更容易一些,但它只可以在地形的顶端生成。而植物在最小和最大高度之间选择一个随机值,然后看看这个位置是否是合适的。而草只是简单的把自己生成在最高的方块上面,关于这个你可以查看一下高度图。 出于某种原因Mojang在Minecraft游戏中使用植物的资源方式来生成花。我们没有理由也这样做,我们将使用草的资源生成方式。草的资源生成方式的语如下所示: Grass(Block,BlockData,Frequency,Rarity,BlockSource[,BlockSource2,BlockSource3.....]) 草(方块,方块数据,生成频率,稀有度,方块源[,方块源2,方块源3.....]) Block是方块的ID或者方块的名字,BlockData是方块的数据从0到15。Frequency 和 Rarity在之前已经讲解过好几段了。BlockSource是可以在此方块上生成所指定的方块。 首先,我们删除掉两行关于标准的花的生成,我们并不打算使用植物资源生成方式。从资源队列中删除这两行: Plant(RED_ROSE,2,100.0,0,128,GRASS,DIRT,SOIL) Plant(YELLOW_FLOWER,2,100.0,0,128,GRASS,DIRT,SOIL) 然后我们在资源队列的末尾添加如下的草地资源生成方式: Grass(RED_ROSE,0,40,100,GRASS) Grass(YELLOW_FLOWER,0,80,100,GRASS) 这应该会在每个区块上面多生成40个红玫瑰和80朵黄花。当然,地形并不总是总适合花的生成,所以我们不会看到那么多的花。另外一件事情是每次生成位置的选择是随机的,这意味着它可能替换一朵已经生成了的花! 像往常一样,如果你关掉了服务器/游戏,删除区块文件夹然后重新打开,你会看到这样的景象: [[文件:TerrainControl-8.png|TerrainControl-8]] 哇!好多好多花啊!让我们再添加一些高大的草来让我们的生物群系更好看一点怎么样哟?这儿已经有关于高大的草在资源队列里面了,所以我们只是更改一下资源生成的概率罢了。把这一行这么改一下: Grass(LONG_GRASS,1,10,100.0,GRASS,DIRT) 找到这一行: (注意把10替换成80) Grass(LONG_GRASS,1,80,100.0,GRASS,DIRT) 关掉服务器/游戏,删除区块文件夹然后重新打开游戏/服务器。看起来好多了,难道不是么? [[文件:TerrainControl-9.png|TerrainControl-9]] We're almost done with this tutorial, but we still want to add some trees. Without trees, it is very difficult to survive in a biome. The syntax of the tree resource is as follows: Tree(Frequency,TreeType,TreeType_Chance[,Additional_TreeType,Additional_TreeType_Chance.....]) It has a nifty syntax to specify what trees you want. For each attempt (there are Frequency attempts), it first chooses the first TreeType. If this Treetype fails to spawn, either because of the TreeType_Chance (this is a success percentage) or because of unsuitable terrain, it continues to the next one, the Additional_TreeType. If that tree also fails to spawn, it continues to the next one. This continues until all tree types in the list have been processed. Some tree types have bad names. For example, Forest is actually a birch tree. Tree is simply an oak tree. Add this line to the end of the resources queue: Tree(1,Forest,4,Tree,4) This means that there is just one attempt in each chunk. In that attempt, there is a 4% chance that the birch spawns (provided the terrain is suitable for that tree). If the birch tree doesn't spawn, there is a 4% chance that a normal oak tree will spawn. Close the server/world, remove the region folder and open the server/world again. Our biome is now technically finished: [[文件:TerrainControl-10.png|TerrainControl-10]] However, if you are on Bukkit and use the command /tc map, the biome will show up as a block biome. You can change this by choosing another color for the BiomeColor setting. We will use 0xb8e65c. Close the server/world, remove the region folder and open the server/world again. Execute the command /tc map. You should get a map like this one: [[文件:TerrainControl-11.png|TerrainControl-11]] If you had any problems recreating this world, you can download the completed version here. Congratulations, you have just created your own custom biome! You can now create as many custom biomes as you want. You know how to create hills, forests, grass, flowers, etc. Some additional tips: * BiomeTemperature:0 will cause the biome to be covered by snow. However, people without the TC mod on the client will see snow on the ground, but rain in the air. To fix this you can use ReplaceToBiomeName:Taiga. * Water is generated when the terrain falls under the sea level. Using the BiomeVolatility and BiomeHeight settings you can best control how the land is shaped. * Take a look in the configs of the default biomes to see how a certain effect is achieved. The downloads thread in the TC forums is also a valuable resource. Good luck! ==== Common problems ==== Terrain Control doesn't always do what you would expect. On this page some problems frequently encountered by beginners are highlighted. If you're still stuck, you can create a [http://dev.bukkit.org/server-mods/terrain-control/forum/ forum topic] that describes your problem. Be as detailed as possible and be prepared to post your startup log (preferably on pastebin.com or similar) or your settings (preferably in a ZIP file). * My world settings folder isn't created, only GlobalObjects exists. Terrain Control won't take over all your worlds when you install it. You'll need to enable it first for a world. Closely follow the installation instructions. When you're still stuck, it is important to post your startup logs when you are creating a forum topic. * My settings don't have any effect on the terrain. Have you tried regenerating the terrain? If yes, move your TerrainControl folder, start the server/the game again and look whether Terrain Control has remade the settings files. If not, Terrain Control is not even reading them. See the problem above this one on how to solve that. If yes, look at the BiomeMode and TerrainMode and make sure that they aren't set to Default (which makes them ignore your settings and use the vanilla settings instead). * I'm spawning in an ocean and I can't find any land Don't worry, it is there. Keep swimming. Alternatively, you can change the seed of the map (for servers: you'll need a new level.dat for this, changing it only in the server.properies isn't enough) to something else. The seed 11 will spawn you on land with the default settings. You can also disable or reduce the oceans using the LandRarity setting in the WorldConfig: [[文件:TerrainControl-12.png|TerrainControl-12]] * This specific setting doesn't work (but other settings do) Most settings are case sensitive and whitespace sensitive, so be precise. Some settings need higher values to give a noticeable effect. Other settings need the Terrain Control client (see the comments in the files and/or this wiki). Some settings are dependant on another setting (again, see the comments in the files and/or this wiki). If you are not experienced with Terrain Control, always make sure that SettingsMode is set to WriteAll. This will make Terrain Ontrol reset or remove everything it doesn't understand, so that you'll immediately notice that something was wrong. === Intermediate === ==== 如何从一张图片创建世界 ==== '''如果你不能找到你所需要的信息,你可以参考论坛或使用mysource所作的[http://kartwork.de/tutorial/html/map_by_image.html 这个教程]''' 创造属于你自己的世界是很困难的,河流,岛屿,也许总是会在错误的地方产生,这应该不是你想要的。也许你的山看起来不够好,当然,你也可以拥有更多生物群系的选项。.但是,运用地形控制的功能,从一个图像生成生物群系. 你可以完全操控你的世界,或者使用原有生态环境并改变地形来创建一个图片 [https://github.com/MCTCP/TerrainControl/wiki/Creating-a-world-from-an-image#small-map-improvements to do some small map improvements]. ===== 优点与缺点 ===== 优点: * 完全控制你的生物群落 * 使其更容易处理 * 可以用来定制冒险的地图 缺点: * Images are not infinite, you must fall back on another biome generator when you are outside the image. * 没有随机生物群系组合:生物群系布局看起来一样好(或坏),正如你所画的。 * 有一些怪异的东西将在下面说明。 ===== 创建一个图像 ===== 在每一个[https://github.com/MCTCP/TerrainControl/wiki/BiomeConfigs BiomeConfigs] 有一个''BiomeColor''变量. 这个变量应该是生物群系的十六进制颜色。它不仅用作 ''/tc map'' 命令输出颜色,而且作为输入图像的颜色。必须使用准确的“BiomeColor”在画的形象让生物群落产生。Two biomes may not have the same color, if they do that color will result in ocean generating instead. For each custom biome you should change the ''BiomeColor'' from 0x000000 (black) to another color. The default biome colors in both RGB and hex (Terrain Control uses the same colors as [http://www.minecraftforum.net/topic/626786-amidst/ AMIDST]): [[文件:TerrainControl-13.png|TerrainControl-13]] Each pixel on the image represents 4x4 blocks. As said above, the color in the image must be exactly the ''BiomeColor'' . Most brush tools of the photo editors won't work, as they change the color to another one: [[文件:TerrainControl-14.png|TerrainControl-14]] The blurring (called anti-aliasing) allows objects to blend properly with the rest of an image, however Terrain Control doesn't recognize those colors. When Terrain Control finds a color it doesn't have a config for it places ocean. It is better to use editors (commonly called) pencil tool since that tool doesn't use anti-aliasing. Be sure to save the image as a png file as this is the only format supported and most other formats will change the colors during compression. Before generating a world check the image to ensure it hasn't been anti-aliased or compressed. Another common error is to resize the image without disabling anti-aliasing: [[文件:TerrainControl-15.png|TerrainControl-15]] When painting your image from scratch either assume the right edge (right as 'not left', not as 'not wrong') is north, or use the top as north (as most commonly do) and rotate your image 90 degrees clockwise before generating. If you are editing a map made from the ''/tc map'' command see that section below. ===== Letting Terrain Control generate it properly ===== After you are satified with your image and everything is rotated and resized correctly, it's time to let Terrain Control do the work! Place the image next to the WorldConfig.ini file and take a look at the following settings in that file: ''ImageMode'' - Can be set to ''ContinueNormal'' or ''FillEmpty'' . ''ContinueNormal'' will tell Terrain Control to generate terrain randomly (like ''BiomeMode:Normal'' , based on it's settings) once it has hit areas outside the image. ''FillEmpty'' will fill any areas outside the image with the biome set in the ''ImageFillBiome'' setting, default ocean. ''ImageFile'' - The name of the image file to use, default of map.png. Must be a .png image. ''ImageFillBiome'' - The biome to use for generation once outside of the image area when ''ImageMode'' is set to FillEmpty. (Note: need to test if this changes the biome used when TC finds a biome color it doesn't recognize or conflicts with another biome color.) ''ImageXOffset'' and ''ImageYOffset'' - Shift the the co-ordinate position of the image, useful for getting the center of your image at x:0 y:0. When using ''ContinueNormal'' set these to half the image size. In FillEmpty mode set this to half the image size in the negative value. Example - A 500x500 pixel map.png would have X and Y offset set to 250 in ''ContinueNormal'' and -250 in FillEmpty. ===== Editing a random map using /tc map and ContinueNormal ===== Terrain Control has the command ''/tc map'' to output a biome map. The images generated by it can, with some extra work, be reused as an input image for ''FromImage'' . When using ''/tc map'' Terrain Control will make the right edge (right as 'not left', not as 'not wrong') of the map north, so to get north at the top of the image rotate it 90 degrees counter clockwise. When ''/tc map'' outputs it does so at 1 pixel = 1 block, but the input is always 1 pixel = 4x4 blocks. To get the image the right size it must be downsized to a quarter its normal size. ==== Basic world customization ==== '''''Under construction. The IsleBiomes and BorderBiomes still need to be described.''''' This tutorial will help you shaping your world. In this tutorial only ''BiomeMode:Normal'' is described The tutorial is written for both singleplayer and multiplayer, with or without the [https://github.com/MCTCP/TerrainControl/wiki/Terrain-Control-User-Interface User Interface]. You should already have installed Terrain Control and you should also know how to change the settings and how to regenerate the world. If not, look [https://github.com/MCTCP/TerrainControl/wiki/Installation-instructions here] for the installation instructions and [https://github.com/MCTCP/TerrainControl/wiki/Beginners%27-tutorial-without-the-UI here] for a beginners' tutorial. Start again with a new world. First of all, open the [https://github.com/MCTCP/TerrainControl/wiki/WorldConfig WorldConfig.ini] file and look at the settings below 'Biome Generator Variables' (for the UI: World tab -> Biomes tab). Scroll a little bit down and you will see four variables: ''NormalBiomes'' , ''IceBiomes'' , ''IsleBiomes'' and ''BorderBiomes'' . To understand them you need a little more background information. The Minecraft world is made of continents. On the mainland the ''NormalBiomes'' generate. The rest is filled by the biome Ocean. To make things a bit more interesting you can give biomes a border (for example, beaches are a border between the biome Ocean and most other biomes) using the ''BorderBiomes'' . Also you can generate biomes inside other biomes. They are called ''IsleBiomes'' . For example, MushroomIsland is a isle biome inside the Ocean biome. Some areas of the map are marked as 'frozen'. When a frozen area is generated on top of a continent one of the ''IceBiomes'' will spawn (instead of one of the 'NormalBiomes'). If it's generated on top of an ocean the biome FrozenOcean will spawn (however you can toggle this off). ===== Technical biomes ===== There are also some 'technical biomes'. They are not considered as a true biome, but they make the terrain more varied. This section describes their function in the default settings, and maybe inspires you to create your own. Keep in mind that you can change everything: if you would want, you could even generate the TaigaHills biome as a border between jungles and deserts. River is one of the technical biomes: it's called a river, but it is just a biome with a lot of water. The world generator places that biome on top of the continents (in the shape of a river), and when a frozen area generates on top of a river, the biome FrozenRiver generates instead (however you can toggle this off). You can edit the RiverBiomeConfig to generate something that doesn't look like a river at all: [[文件:TerrainControl-S1.jpg|TerrainControl-S1]] There are also some Hill-biomes: TaigaHills, JungleHills, DesertHills and ForestHills. Those are added as a IsleBiome and they generate inside the Taiga, Jungle, Desert and Forest. When you see a large hill inside one of these biomes, you can be sure that you are looking to a HillsBiome. (Although Extreme Hills is added to the 'NormalBiomes' and doesn't generate inside other biomes). River, which is just a biome with much water, is also added as a IsleBiome : it is generated as an isle inside the swamps. MushroomIslandShore is generated as a BorderBiome between the MushroomIsland and all other biomes (usually an ocean) to smooth out the transition, and Extreme Hills Edge (also a BorderBiome ) is added to smooth out the transitions between the Extreme Hills and most other biomes. Most people working with Terrain Control use a lot of technical biomes to generate the terrain they want. They use them to smooth out the transition between two biomes, to make a biome more varied, to generate snow peaks, etcetera. For example, [https://github.com/Burckhart Burckhart] [http://dev.bukkit.org/server-mods/terrain-control/forum/41337-nested-biomes/#p2 has used] a lot of BorderBiomes and IsleBiomes to generate a mountain range. [[文件:TerrainControl-17.jpg|TerrainControl-17]] ===== NormalBiomes ===== Here you can see a map of just land and ocean. [[文件:TerrainControl-18.png|TerrainControl-18]] The green areas are filled with the NormalBiomes and the blue areas are filled with the biome Ocean. You can use the variable LandRarity to adjust the ratio between land and ocean: [[文件:TerrainControl-12.png|TerrainControl-12]] Now it's time to see how that green land is filled. We set LandRarity on 100. If you look at the NormalBiomes variable, you will see the following: NormalBiomes:Desert,Forest,Extreme Hills,Swampland,Plains,Taiga,Jungle Which gives the following biome map ( IsleBiomes and IceBiomes are removed so that the image looks cleaner): [[文件:TerrainControl-20.png|TerrainControl-20]] If you want a hot world, you can remove most biomes from NormalBiomes : NormalBiomes:Desert,Jungle [[文件:TerrainControl-21.png|TerrainControl-21]] (If you still see some cold areas ingame, it's because of the IceBiomes . We see about them later.) You can change the rarity of the biomes in the [https://github.com/MCTCP/TerrainControl/wiki/BiomeConfigs BiomeConfigs]. If you want to have less jungles in your world, go to the JungleBiomeConfig.ini and set BiomeRarity (which is actually the biome probability) to 25. [[文件:TerrainControl-22.png|TerrainControl-22]] That was it for NormalBiomes for now. Later on we will add our own custom biomes. ===== IsleBiomes ===== ''TODO: Here we play around with some isle biomes'' Isle biomes are biomes that can be placed in other biomes. The biome needs to be smaller (so BiomeSize needs to be higher) to be able to spawn in another biome. When a biome is used as an isle biome BiomeRarity works slightly different. It is now very sensitive: BiomeRarity:100 will make it spawn everywhere in the biome (except at the borders - to fill that area you should use a border biome). BiomeRarity:99 will make it spawn in about 50% of the biome, BiomeRarity:98 in 25% of the biome and so on. Mister_Tesseract has made a detailed tutorial about isle biomes. [https://docs.google.com/document/d/1pVqAE28zkS-eVFyxt3HtnLwEkJrGcPShEORhoGxZbOk/edit Read it here]. ===== BorderBiomes ===== ''TODO'' 译者注:这是作者还没有完成,不是译者没有翻译 ===== IceBiomes ===== Some parts of the world are marked as 'frozen'. If a frozen area is generated on top of a continent, one of the IceBiomes will spawn. If a frozen area is generated on top of a river, the biome FrozenRiver will spawn instead. You can toggle this off by setting FrozenRivers ([https://github.com/MCTCP/TerrainControl/wiki/WorldConfig WorldConfig]) to false. If a frozen area is generated on top of an ocean, the biome FrozenOcean will spawn. You can toggle this off by setting FrozenOcean ([https://github.com/MCTCP/TerrainControl/wiki/WorldConfig WorldConfig]) to false. You can change the probability of the frozen areas by changing the IceRarity variable. Lower values give less frozen areas, higher values will make more parts of the map frozen. Please note that the temperature of the biome is not determined by adding it to the IceBiomes list, but by the BiomeTemperature variable in the BiomeConfigs. You can have cold biomes in the NormalBiomes list (Taiga is an example of that in the default configs), and you can have hot biomes in the IceBiomes list. This makes the name IceBiomes a little misleading. ===== CustomBiomes ===== By default only the vanilla biomes are in the BiomeConfigs folder. To add your own biome you must first add it to the CustomBiomes list. This will make Terrain Control generate it's settings file (or use the file if it already exists). However, it doesn't generate them in the world. Just like the vanilla biomes you must add it to one or more of the four biome lists. So your custom biome is always on at least two places in the WorldConfig.ini. (However, you can also let your biomes generate from an image, in which you just add it to the CustomBiomes list and to the image. More about that [https://github.com/MCTCP/TerrainControl/wiki/Creating-a-world-from-an-image over here].) After each entry in the list you will see a ":" with a number after it (if you don't add it by yourself, Terrain Control will add it): CustomBiomes:MyBiome:50,MyOtherBiome:51 This is the biome id which is saved in the world. Never change this without resetting the world! (Imagine you had a custom Jungle biome with id 50, and now the id 50 is used by a snow biome. This would cause all custom Jungles to be frozen!) Also, never use a id that is already in use by vanilla. Currently vanilla uses the ids 0-22, but as new biomes are added to vanilla, new biome ids will be used. If you use a biome id above 40 you should be save for a very long time. ==== Basic biomes customization ==== This page focuses on the basics of creating and editing biomes including changing ground and water blocks, ore generation, tree/plant spawning and creating hills/pits. For info on the ReplacedBlocks feature, using CustomHeightControl and more difficult features like waterfalls see Advance Biomes Customization (Under Construction). Biome editing may be broken into four main parts: biome placement, terrain shape, biome population and appearance. For information on biome placement see [https://github.com/MCTCP/TerrainControl/wiki/Basic-world-customization this tutorial]. ===== Terrain shape ===== The basic shape of the terrain is affected by a lt of variables. You can change the height, how hilly it is and up to what level air blocks should be filled with water blocks. The shape of the terrain is forming during the first pass of terrain generation, just after the biomes have been calculated. ====== Terrain height ====== The first and most important variable in determining a biomes height is the BiomeHeight setting. This variable is dependent on what WorldHeightBits is set to in the worldconfig. Minecraft divides the terrain height it generates into equal positive and negative values with a BiomeHeight of 0.0 representing the middle. On default settings ( WorldHeightBits:7 ) the terrain will generate up to 128 blocks in height, which would put BiomeHeight:0.0 at y=64. If WorldHeightBits is changed to 8 then the generation height doubles to 256, and every height settings effect roughly doubles. BiomeHeight:0.0 becomes y=128 and upping it to 0.1 will have double the effect of raising it to 0.1 on WorldHeightBits:7 . Upping the WorldHeightBits to 8 is necessary to get terrain generation up to the maximum of 256. WorldHeightBits may be lowered to have the opposite effect, with each step lower the terrain generation max height will be cut in half. A WorldHeightBits of 6 would not generate terrain above y=64. Note: these two features do not work if the generator is set to OldGenerator in the [https://github.com/MCTCP/TerrainControl/wiki/WorldConfig WorldConfig]. Changing ExtraBiomeHeight can create overhangs and cliffs 8 times its value. Changing ExtraHeightConstrictWaist determines how the cliffs generate. Keeping values between -0.4 and 1.0, positive values give the cliffs an hour glass like shape by removing the middle region ( 4 x ExtraBiomeHeight ). Greater than 1.0 can cause hanging and floating terrain. Negative values cause the middle region ( 4 x ExtraBiomeHeight ) to expand. Decreasing below -0.4 can start to create shelves that can have massive caves beneath. The following table can help with determining what height settings to use based on WorldHeightBits of 7 and 8. Do not use -2.0 as a BiomeHeight setting as this is bugged (causes a division by zero). Also note the terrain will not generate to the max of 256 and will stop at 255, if not a few blocks before that. BiomeHeight may have any value between -10 and 10, although any value above/below 4/-4 has no further effect. {| class="wikitable" |- ! BiomeHeight !! WorldHeightBits:7 !! WorldHeightBits:8 |- | -4 || 0 || 0 |- | -3.5 || 7 || 10 |- | -3 || 16 || 28 |- | -2.5 || 24 || 45 |- | -2 || Error || Error |- | -1.99 || 32 || 60 |- | -1.5 || 40 || 78 |- | -1 || 48 || 95 |- | -0.5 || 57 || 111 |- | 0 || 67 || 128 |- | 0.5 || 76 || 144 |- | 1 || 85 || 156 |- | 1.5 || 94 || 173 |- | 2 || 102 || 190 |- | 2.5 || 111 || 207 |- | 3 || 119 || 223 |- | 3.5 || 128 || 240 |- | 4 || 128 || 255 |} ====== Terrain volatility ====== There are a lot of settings to fine-tune how hilly the terrain is. The most important of them is BiomeVolatility . Increasing it will make the terrain more hilly. 0.0 makes the terrain almost flat. A value of 1.0 will give you hills. 2.0 gives you cliffs. Just like BiomeHeight the effects are doubled on WorldHeightBits:8 . This setting does not work on TerrainMode:OldGenerator . ===== Biome population ===== During the second pass of terrain generation the biomes are populated with resources like ores, trees, custom objects, flowers, tall grasses and small ponds above/below sea level. After this is done, biomes with a low BiomeTemperature will be covered in snow. You can find all resources in the [https://github.com/MCTCP/TerrainControl/wiki/Resources-queue Resources queue]. ===== Appearance ===== There are things that haven't got anything to do with terrain generation, but that you still want to change. For exampe, uou can edit the colors and weather of the biome. Sadly, the vanilla singleplayer client will ignore all those settings. It will also display custom (non-vanilla) biomes with the colors and weather of the plains biome. Players will need to install the Forge version of Terrain Control to fix this. These settings, along with a description, can be found [https://github.com/MCTCP/TerrainControl/wiki/BiomeConfigs#wiki-biome-visual-settings here]. === Advanced === ==== A TerrainControl Analysis ==== ===== Slice It Up ===== A TerrainControl Analysis by Mister_Tesseract, modified by the community. This page has been copied from [https://docs.google.com/document/d/1pVqAE28zkS-eVFyxt3HtnLwEkJrGcPShEORhoGxZbOk/edit here] over to the wiki. Discuss this article in [http://dev.bukkit.org/bukkit-plugins/terrain-control/forum/43563-a-terrain-control-analysis/ this forum thread]. ===== Table of contents ===== * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#introduction Introduction] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#defaults The chosen “default” values for the variables] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#generation-process Generation Process] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#icesize-and-ice-biomes IceSize and Ice Biomes] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#border-and-isle-biomes Border and Isle Biomes] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#biomerarity BiomeRarity] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#biomecolor BiomeColor] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#riverbiome RiverBiome] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#biometemperature-and-biomewetness BiomeTemperature and BiomeWetness] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#replacetobiomename ReplaceToBiomeName] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#biomeheight BiomeHeight] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#fracturehorizontal-and-fracturevertical FractureHorizontal and FractureVertical] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#biomevolatility BiomeVolatility] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#maxaverageheight-and-maxaveragedepth MaxAverageHeight and MaxAverageDepth] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#volatility1-and-volatility2 Volatility1 and Volatility2] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#customheightcontrol CustomHeightControl] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#surfaceblock-and-groundblock SurfaceBlock and GroundBlock] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#useworldwaterlevel UseWorldWaterLevel] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#replacedblocks ReplacedBlocks] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#biome-visual-settings Biome visual settings] * [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#credits Credits] ===== Introduction ===== [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#top Back to top] Hello and thank you for your interest in this research about TerrainControl. I, Mister_Tesseract, call it a “research” and not a “tutorial” because it is more than a tutorial in that it tries to understand how the plugin works beyond what you really need to make it work in a general purpose. It is also less than a tutorial because it doesn’t provide many how-to’s (but perhaps I will do that a little more in the future). My ambition with this research is that after reading this once it is complete, you should be able to understand the deep mechanics that rule the TerrainControl generator enough to make virtually every possible biome in Minecraft. Why not a simple step-by-step tutorial? I see two main reasons for this. The first one is that TerrainControl is such a complex and vaste plugin that you cannot learn much from a step-by-step tutorial that would teach you how to make just one biome and then leave you on your own. There are so many parameters in TerrainControl that a tutorial would need to guide you through the creation of at least ten different biomes in order to have you get a glimpse of what it can do. The second reason, a more personal one, is that it’s not my style to make that kind of tutorial. I have studied physics (and epistemology a little) and all that science gives you a methodology you cannot get out of your head just like that (and it’s so cool). So I set up an experimental protocol, I take measurements, I estimate margins of error, and I try to find applications for the newly acquired knowledge, which is pretty much what researchers do. This method cannot lead to a how-to tutorial without loss of information. But in the future I’m probably going to try and make a “generic” how-to which will explain in what order it is best to build a biome. Obviously, I could look inside the source code and find the exact laws that rule the TerrainControl plugin and the Minecraft generator (or maybe I’ll find nothing at all) but believe me or not, I do this as if it was part of the game ; and I actually find it interesting and funny. In other words, I’m like a Minecraft crazy scientist trying to find the laws of the creation the universe. Sometimes I might not be very clear in my explanations, and I apologize in advance for anything you couldn’t understand and that is due to my lack of clarity. Such clarity is one of my objectives but my priority was to finish a first version in order to release it as soon as possible. Hopefully that clarity will soon stop being a problem thanks to your feedback. I try to use generated map images (with the command /tc map) as much as possible but sometimes I had to make more precise measurements, or it just didn’t help to have a map image (for instance when the image doesn’t show altitude). Here is the method I followed when a map image was not enough to fulfill the requirements in precision: 1.Create a world config with only one Biome in addition to Ocean and use it in a new world. 2.Delete the region folder if there is one. 3.Start the game in that world and make measurements about height, slope and shape of the terrain, and vegetation and ores. 4.Change a setting in the Biome config and save. 5.Quit the game. 6.Repeat from 2. until having enough measurements to have an accurate enough idea of the curve’s behaviour. What I am looking for in this research is pertinence in terms of utility and not necessarily finding the exact inflection point of a function. For example, sometimes I will indicate what happens if you set a value inferior to -0.25 for MaxAverageHeight , but if you go at -0.20 it won't change very much so I could have put -0.20 to be more precise in my work. But the value -0.25 is safe and precise enough to be used as a zero and the lost information is a low cost compared to the time it would take to find the limit with better precision. This is what I mean by ‘utility’. This partially explains the absence of regular intervals in the tables. You will also find odd values like 3.62 followed by 4.0 which seem close enough but I kept the measurement made at 3.62 because it gives a better idea of how strong you have to go down from 256. There is also the default irregularity in terrain when all values are zero or close to their minimal effect. This doesn’t allow a perfect output in layer numbers because the terrain is not perfectly flat, even in the flattest areas (with most settings). I decided to choose the layer of floor that seemed to be the most represented in my environment after looking around a little, which was closest to the idea of an average/median value. This study is evaluating every separate variable all other things being equal. If you have different results it is probably because you changed two variables at once. Some combinations of several variable changes will give expected results and some won’t. It is already a huge work to study each variable separately ; I probably won’t step into the details of studying every couple or triplet because it would take a very long time. A very important point about all this research is that I write things here as I discover them. The facts (measurements) are obviously real and you will be able to reproduce them at will; but my interpretation is relative and it is always possible that a new fact comes burn my paradigm down to ashes. It happened to me when I came to Border and Isle biomes, as their size couldn’t match my interpretation. I then had to start from square one with world generation. Conclusion: take every interpretation I make about this with a grain of salt. This is science, and as Karl Popper established it, if it’s science, then it can be tested. Even the most certain knowledge can be rammed down by the tiniest new fact. That is why I encourage you to comment and tell me when I’m wrong so the interpretation can be rebuilt and our knowledge in TerrainControl can see progress. ===== The chosen “default” values for the variables ===== [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#top Back to top] The values and effects provided here were determined with using this [http://pastebin.com/RdG7BEGx WorldConfig.ini] with a flat, resourceless [http://pastebin.com/npbudUdJ PlainsBiomeConfig.ini] biome. There are a few differences with default/vanilla settings: * WorldHeightBits = 8 (max land height = 28 = 256) so regular land will be at layer 128 (instead of 64 for vanilla Minecraft). The default value for this is usually 7, which prevents land from appearing above layer 128. * Almost every biome value is 0.0. The values that differ from zero are VolatilityWeight1 and VolatilityWeight2 because their default values are repectively 0.5 and 0.45. Sometimes BiomeVolatility is 0.1 instead of 0.0 because it looks like other variables are multiplied by BiomeVolatility and 0.0 would nullify them. * No resources at all, for faster generation: it’s a lot of work for the computer to generate a new map at every game, and finding ores is of course not the objective. This is true for doing research like mine, but it is also true when it comes to creating custom biomes. There will be a point where you’ll be reloading a new map every 60 seconds and change the value by 0.05 in order to get the fine tune. Then you want to go as fast as possible and resource generation takes a lot of processing time. That is why ore, trees and mob distribution is the thing you want to create in last position in your biome, especially with a slow computer. Of course, when it will come to researching about ore generation, it will be included as well. ===== Generation Process ===== [https://github.com/MCTCP/TerrainControl/wiki/A-TerrainControl-Analysis#top Back to top] This part is about how I view how terrain generation works. I have acquired a good comprehension of it after reading this thread on the forums of dev.bukkit.org and I have developed my own way to formulating it but it’s basically the same explanation. I wanted to explain separately WorldConfig.ini and xBiomeConfig.ini but it’s not possible to do without gaps or redundancy so I’m going to explain both of them as a whole. You will just have to figure out yourself where each variable stands. One thing that I want to point at is that you can use any seed for TerrainControl. I noticed on the bukkit forums that some people kept using the seed “tim1998+steps1956” (which is not more special than any other seed). It is not mandatory at all. Every seed will work with TerrainControl, just like every seed works in the vanilla game. The smallest unit of size that the generator can create is 1 chunk. By default, GenerationDepth has a value which is around 10. Every new increase of 1 for GenerationDepth is a double in size for the largest thing the generator will be able to generate. The biggest possible size for a generated surface will then be 2<sup>GenerationDepth</sup>. '''Important note''': the following description is not true for biomes set as Border or Isle, only for normal Biomes. Borders and Isles will be explained right after. At first, the world is a full Ocean. Once GenerationDepth is determined, the generator will add land areas (not biomes yet, only landmass) on that Ocean. This depends on three parameters: LandSize , LandRarity and LandFuzzy . LandRarity has “useful” values from 90 to 99 (100 if you want very little or no Ocean). It’s not a linear function, so below 94 it’s very difficult to find any land. LandSize will determine size of landmasses, and then the generator will add ice areas with IceSize the same way. [[文件:TerrainControl-S3.png]] LandFuzzy adds irregularities to the landmass borders (maybe biome borders ?). Its value has to be between 0 and GenerationDepth - LandSize because those irregularities use the accuracy of the generator. with value 0 there won’t be any fuzzy added to the land borders, and maximum LandFuzzy values will add lots of irregularities which size will vary from half of the landsize (LandSize - 1) to 1 chunk. After that, the generator will fill in the biomes, from the largest (small BiomeSize value) to the tiniest (large BiomeSize value). I’ve determined that the biggest sized item the generator can create will be roughly 2GenerationDepth times bigger than 1 chunk. Demonstration: 1. Open a reset world. 2. Go to coordinates 0,0 and look towards east. 3. Go forward until you step on a new biome, then stop. 4. Note your coordinates which are at the limit between biomes (x or z should be 0). 5. Increase GenerationDepth by 1. Reset the world and open it again. 6. Repeat steps 2 to 5 as many times as desired. These are the results I got : {| class="wikitable" |- ! GenerationDepth !! Distance |- | 9 || 34 |- | 10 || 67 |- | 11 || 136 |- | 12 || 269 |} If you look well you may notice that the distance doubles when increasing GenerationDepth by 1. In every direction it’s the same pattern. The following table is a direct consequence of that. With a biome taken from the first line, you can find biomes smaller than half a chunk because of other settings. I made it with a special biome with a very high BiomeHeight. It made it easier to spot while researching for GenerationDepth and other size variables. Note that the same table can be used for BiomeSize and IceSize instead of LandSize . Because the values in this table are theoretical, the size of biomes, land and iceland will differ from the values indicated here but a biome A with 1 more in BiomeSize than a biome B will always have approximately 4 times the surface of biome B. I have still to determine an acceptable margin of error for this ; until then it should be accepted as a good enough approximation that two biomes with the same size class have a surface ratio inferior to 4, and two biomes with 1 in size class difference should have a surface ratio between 2 and 8. {| class="wikitable" |- ! LandSize !! GD - LandSize !! Land size in chunks !! Land size in blocks |- | GD || 0 || 1 || 16x16 = 256 |- | GD-1 || 1 || 4 (not 2 because it’s a surface and 2*2=4) || 32x32 = 1.024 |- | GD-2 || 2 || 16 || 64x64 = 4.096 |- | GD-3 || 3 || 64 || 128x128 = 16.384 |- | GD-4 || 4 || 256 || 256x256 = 65.536 |- | GD-5 || 5 || 1024 || 512x512 = 260.000 |- | GD-6 || 6 || 4096 || 1024x1024 = 1.000.000 |- | ... || ... || ... || ... |- | 1 || GD-1 || 4GD-1 || 2GD-1x2GD-1 |- | 0 || GD || 4GD || 2GDx2GD |} Recap : * GenerationDepth : Largest possible size for an item. * GenerationDepth - Landsize : The bigger it is, the bigger the land size. * GenerationDepth - Icesize : The bigger it is, the bigger the ice size. * GenerationDepth - BiomeSize : The bigger it is, the bigger the biome size (not true for Isle Biomes). * A decrease of 1 in size class means a double size in blocks. [[文件:TerrainControl-S4.png]] == The settings explained == === Variable names === === WorldConfig === === BiomeConfigs === === PluginConfig === === BO2 Objects === === BO3 Objects === === Land Fuzzy === == Other pages == === Examples page === === Commands and Permissions === === Compatibility with other mods === === Compatibility with WorldPainter === == External tutorials == * General tutorial by mysource * Effect of the seed on a map and working with higher (y>128) worlds by mysource * Achieve certain world styles by mysource * Create a map by image by mysource * World merging by mysource * How Terrain Control's biome generator works by Khoorn * Cave variables explained by thedeadlytao * GenerationDepth and LandSize/Rarity Explained by thedeadlytao
本页使用的模板:
模板:ArticleCategory
(
查看源代码
)
模板:Bukkit Plugin Infobox
(
查看源代码
)
模板:Info
(
查看源代码
)
模板:Languages
(
查看源代码
)
模板:Main
(
查看源代码
)
模板:Plugin Infobox
(
查看源代码
)
模板:信息表
(
查看源代码
)
模板:信息表/列表
(
查看源代码
)
模板:待搬运
(
查看源代码
)
返回
TerrainControl
。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
编辑相关
百科公告
编辑帮助
互助客栈
贡献分数
测试沙盒
发布条目
插件分类
管理
安全
聊天
编程
经济
修正
娱乐
综合
信息
机械
角色
传送
网页
整地
创世
付费
其它
工具
链入页面
相关更改
特殊页面
页面信息
相关网站
MCMOD百科
Minecraft中文百科
Minecraft纪念论坛
Minecraft百度贴吧
虚无世界Wiki