本篇教程由作者设定未经允许禁止转载。

DLD模组的优势

DLD模组作为地牢类模组最大的优势就是可自定义的内容极多,使得它可以适配各种各样的整合包,可以使用它弥补整合包中某些生物刷怪量不足、某些材料难以获取等问题。

配置文件解释

DOOMLIKE DUNGEON配置文件教程-第1张图片

BlockFamiliesDOOMLIKE DUNGEON配置文件教程-第2张图片

DLD地牢可自定义生成地牢结构所使用的方块,可将地牢的方块替换为任何种类的方块。而此处该文件夹用于设定DLD地牢结构所用方块的族。

{
  "name": "crumbling_walls_1",
  "blocks": [
    "minecraft:stonebrick",
    "minecraft:stonebrick(1)",
    "minecraft:stonebrick(2)",
    "minecraft:air"
  ]
}

例如,crumbling_walls指的是破碎的墙结构,在"blocks":[ID]中则为构成破碎的墙的方块,修改其内容即可将破碎的墙的外观进行修改,支持其他模组的方块

SpecialChests

这是个特别的文件夹,用于专门设定地牢战利品中的特殊奖励;该奖励与地牢总体战利品奖励相互独立,但是其拥有更高的优先级,若此处有设定,则以此处文件中的战利品为准;若此处无设定,则以全局战利品为准。

你可以自行新建配置文件并填写关键内容,书写时需遵守下文中的书写规则,否则不生效。

注意:只在此新建文件不会有任何效果!新建的文件需要在themes文件中进行额外调整才可生效!详见教程2.3.1.3 战利品设定

书写规则

该文件中书写特殊奖励的格式为:

type, level, modid.name, minimum amount, maximum amount, NBT tag (from nbt.cfg)

示例:

# What goes in the chests
# Each line contains:
# type, level, modid.name, minimum amount, maximum amount, NBT tag (from nbt.cfg)
#
# type must be gear, heal (food / health), or loot (treasure)
# level must be an integer from 1 to 8 representing the value / difficulty of guarding mobs
#       Normally this should be 1 to 7, a value of 8 will appear only in rare teasure chests
# modid is the official ID of the mod; for vanilla items the modid is "item"
# name is the in-code, unlocalized name
# minimum and maximum determine the stacks sizes
#
# You can now create alternate version in the SpecialChests folder and attach those to 
# dungeon themes.

gear, 1, minecraft:stone_sword,     1, 1
gear, 1, minecraft:leather_helmet,  1, 1
gear, 1, minecraft:leather_leggings,    1, 1
gear, 1, minecraft:leather_boots,   1, 1
gear, 1, minecraft:leather_chestplate,  1, 1
gear, 1, minecraft:arrow,           4, 12
gear, 1, minecraft:potion,              1,  1, WBREATH1
gear, 1, minecraft:potion,              1,  1, NEYE1

gear, 2, minecraft:stone_sword,     1, 1
gear, 2, minecraft:iron_sword,      1, 1
gear, 2, minecraft:stone_pickaxe,   1, 1
gear, 2, minecraft:stone_axe,       1, 1    
gear, 2, minecraft:bow,             1, 1
gear, 2, minecraft:shield,          1, 1
gear, 2, minecraft:leather_helmet,  1, 1
gear, 2, minecraft:leather_leggings,    1, 1
gear, 2, minecraft:leather_boots,   1, 1
gear, 2, minecraft:leather_chestplate,  1, 1
gear, 2, minecraft:iron_helmet,     1, 1
gear, 2, minecraft:iron_leggings,   1, 1
gear, 2, minecraft:iron_boots,      1, 1
gear, 2, minecraft:iron_chestplate,     1, 1
gear, 2, minecraft:arrow,           4, 12
gear, 2, minecraft:potion,              1,  1, WBREATH1
gear, 2, minecraft:potion,              1,  1, WBREATH1
gear, 2, minecraft:potion,              1,  1, NEYE1

type

type部分只可以填写gear(装备)、heal(食物等)、loot(战利品)这三个,用于给整体战利品进行分组、分类

level

level为1到8的整数,用于调整战利品的稀有度、保护该战利品的敌对生物的强度。通常只使用1到7,若设定为8则为战利品特别稀有,附近的怪物也会特别强大。

modid.name, minimum amount, maximum amount 

modid.name:写入你希望生成的战利品的ID,支持任何模组的任何物品

minimum amount:生成时的最小数量

maximum amount:生成时的最大数量

NBT tag (from nbt.cfg)

为该战利品附加特别的NBT信息,其运作方式就如同原版MC中的NBT一样,例如附魔、药水;药水这种没有NBT就不能运作的物品一定需要NBT标签。

例如示例中的第一行WBREATH1即为NBT信息。

需要注意的是此处的NBT并不是游戏中的NBT,而是配置文件NBT.cfg中被设置的NBT(见下文)

themes

该文件夹是对DLD地牢更精细的客制化。DLD地牢的生成逻辑为群系,即按群系不同进行生成,因此该文件夹中的文件针对群系进行了很细致的分类,可以修改不同群系中DLD地牢的外观、敌对生物等,可以进行修改从而非常的契合整合包。

注意:配置文件中的绿色字体不会对配置产生任何影响,通常为说明性文字,删除、修改它们不会影响配置文件

DOOMLIKE DUNGEON配置文件教程-第3张图片themes里的文件名称不可修改,每一个文件的名字代表了该种风格的DLD地牢的自定义信息。如:oceanic即为海底DLD地牢的相关文件;nether为下界地牢的相关文件。

以comment为例

群系

biomes =  FOREST, PLAINS, MOUNTAINS, HILLS, DESERT, FROZEN, WASTELAND
NotInBiomes =  NETHER, END, MESA, SAWMP
BiomeWhiteList =
BiomeBlackList = minecraft:jungle, minecraft:jungle_hills, minecraft:jungle_edge, minecraft:mutated_jungle, minecraft:mutated_jungle_edge

第一行:该种风格的DLD应该生成在哪些群系,可选FOREST, PLAINS, MOUNTAIN, HILLS, SWAMP, WATER, DESERT, FROZEN, JUNGLE, WASTELAND, NETHER, END, MUSHROOM, MAGICAL。

第二行:该种风格的DLD不应该生成在哪些群系

第三行:群系白名单

第四行:群系黑名单

注:第四行的黑名单使用的是标准的MC群系ID指定群系,而第一行的群系则为该MOD设定的代码,它并不是MC可以识别的群系ID,也不像MC的群系ID那样进行精确划分

Y轴设定

minY =  25
maxY =  50

用于设定地牢的最高与最低Y轴限制

战利品设定

ChestsFile = chests.cfg

此处的chests.cfg文件指的是配置文件根目录中的文件,详见本教程一开始截图中的chests文件。

chests文件为公用的战利品文件,其书写规则与2.2部分完全一致,唯一的区别就是它是一个公用的战利品文件。在themes中的任何文件中,如果你在ChestsFile = 这里填写了chests.cfg,那么该地牢就会读取这个文件设定的战利品。

无特殊设定的话,themes中的文件都应该填写它。

特殊设定,可参考教程2.2.1 书写规则。假如你在这个文件夹中自己书写了一个战利品文件,命名为114514。若你想让某个地牢调取114514的战利品而不是chests的战利品,那么这里可以填写:

ChestsFile = 114514.cfg

通道

buildFoundation =  true

true表示在地牢与地面之间生成入口;若为false则不生成入口,必须手动寻找才可以

结构

sizes =  2, 5, 10, 5, 1

地牢尺寸,数字越大地牢越可能生成的大。此处必须填写5个数字,概率会按照数字的排序进行计算。

# Roofless, wall-less rooms; mostly for surface dungeons
outside =  2,  20,  10,  0,  0,  0
# Amount of liquid blocks (pools) on the floor
liquids =  0,   0,  0, 0, 0,  100
# Number of extra doors which may lead to rooms off the main route
subrooms =  5, 20, 50, 45,  5,  0
# Frequency of trying to place a mini-room inside a larger room
islands =  5,  50, 10, 50, 20,  0
# How many pillars to use
pillars =  5,  30, 60, 40, 20,  0
# Not used, but will be the number of fences around outdoor rooms
fences =  5,  15, 30, 75, 25,  0
# How generally semetric and organized roosm appear
symmetry =  5,  15, 30, 75, 25,  0
# How much variability in the blocks to be used
variability =  25, 75, 50, 25, 5, 0
# Idea borrowed from Greymerk's Roguelike dungeons; chance of not building over airblocks
degeneracy =  50,  5, 15, 50, 10,  0
# How many feature to add to rooms
complexity =  5,  10, 25, 75, 15,  0
# How much variation in the Y should be found
verticle =  5,  10, 25, 20, 10,  0
# How many entrances to place
entrances =  2,   0, 0, 0, 0,  0
naturals =  25,  10, 5, 0, 0,  0

相关元素多少。这里需要填写6个数字,其设定与尺寸完全一致,不过这里是其他的设定。例如第四行liquids=......,为地板上会生成多少个液体方块。可按自己需要进行调整。

需要自行利用翻译软件翻译开头的单词及说明文字理解其修改内容。

# The main block for building walls
walls =  minecraft:stonebrick, minecraft:cobblestone, minecraft:sandstone, minecraft:brick_block
# The main block for building floors
floors =  minecraft:stonebrick, minecraft:cobblestone, minecraft:dirt, minecraft:stone
# The main block for lining ceilings
ceilings =  minecraft:stonebrick, minecraft:cobblestone, minecraft:water, minecraft:double_stone_slab
# Blocks to be used as outdoor fences (not yet used)
fencing =  minecraft:stonebrick, minecraft:cobblestone, minecraft:sandstone
fencing =  minecraft:brick_block, minecraft:dirt, minecraft:stone
# Block to represent liquids; fill pools
liquid =  minecraft:water, minecraft:gravel
# Block from which to build pillars
pillarBlock =  minecraft:stonebrick, minecraft:cobblestone, minecraft:sandstone, minecraft:planks, minecraft:double_stone_slab
# Block found in cave-like areas
caveblock = minecraft:stone, minecraft:stone, minecraft:cobblestone, minecraft:sandstone,
# The block to fill empty spaces
air = minecraft:water

地牢风格,这里填写的时生成地牢总体结构所使用的方块,例如第二行walls =  minecraft:stonebrick, minecraft:cobblestone, minecraft:sandstone, minecraft:brick_block,意味着该风格地牢的主要的墙将由minecraft:stonebrick(石砖)、minecraft:cobblestone(圆石)、minecraft:sandstone(砂岩)、minecraft:brick_block(砖块)组成。相关设定当然也支持模组物品。

需要自行利用翻译软件翻译开头的单词及说明文字理解其修改内容。

# Weak, basic mobs; by default
commonMobs =  minecraft:guardian
# Tougher mobs everyday mobs
hardMobs =  minecraft:guardian
# Really tough mobs, Minefantasy brutes, mid-level Dungeons Mobs, and many of Lycanite's mobs go here
bruteMobs =  minecraft:elder_guardian, minecraft:guardian
# The baddest of the bad, Minefantasy dragon, Dungeon Mobs rakshasa, and all bosses go here; empty by default in the overworld
# but for The Nether this has Wither Boss.
eliteMobs = minecraft:elder_guardian
bossMobs = minecraft:elder_guardian

地牢刷新的怪物。

commonMobs = 、hardMobs =  、bruteMobs =、eliteMobs =、bossMobs =中,等号后面需写入敌对生物的ID(不支持刷怪笼生成的生物将不起作用);从左往右的顺序代表了敌对生物生成的数量和强度。如commonMobs的生物生成会很多,但没有额外强度;bossMobs的生物生成很少,但强度很高。

chests

通用战利品文件。其书写规则与2.2.1 书写规则一致。

DLDungeonsJBG

该文件是一些DLD地牢的其它可调整设置。通常不需要调整。

需额外注意的是

    I:FrequencyScale=8

它代表地牢的生成频率,数字越大地牢的频率越低。但是通常不建议将其设为小于8,这样会导致地牢之间互相重合,地下结构稀烂,不利于探索。

    I:Dimensions <
        0
        -1
     >

它代表地牢可生成的维度。DLD是可以生成在末地的,但你需要在此处加入1这个维度,并在之前的themes中使用END群系。

nbt

自定义nbt标签,请结合2.2.5 NBT tag (from nbt.cfg)的内容食用。

示例:

HEALTH1 Json {Potion: "minecraft:healing"}

HEALTH1则为战利品文件中的NBT标签,Json不需要修改,{Potion: "minecraft:healing"}则为正确的NBT代码。此处用法为完善物品信息。

LOOT  Short id 2

LOOT为战利品的NBT标签,Short id 2表示附魔ID为2的附魔。此处用法是给予物品对应的附魔。注意,1.12.2中所有附魔均以这种数字形式存储,需要特别查阅附魔对应的ID才行。

SLICE String Name "1919810"

SLICE 为战利品的NBT标签,String Name "1919810",表示该物品的名字会被命名为1919810。此处用法为修改物品名称。