跳到正文

LR’s Dynamic Dungeon

作者:LinkedR

在这个类Rogue维度中探索随机生成的地牢,包含多种生物群系、难度配置和奖励!

收藏

截图

介绍

介绍由机器翻译自 CurseForge 原页面,仅供参考。

这个模组的灵感来自其他地牢模组和各种 Roguelike 游戏。

 

简短介绍。

制作一张地牢通行证,搭建平台,激活传送门,然后进入地牢!在那里,你将遭遇各种威胁,考验自己的实力,并收获努力换来的奖励!

(上方展示视频包含来自 Better-Combat 的攻击动画。所有第三方内容的版权仍归其原作者所有。)

建议搭配 LR’s Blockollection 使用,这样就能拥有更多生物群系!

不那么简短的介绍。

-探索完附近所有结构,却厌倦了为了来点刺激而花上几个小时到处寻找?
-想在一个必定有威胁的地方测试装备?
-想试试运气,看看能不能获得那些诱人的战利品?
-想在随机生成的地牢中迷失方向?

我不能保证这能解决你所有这些烦恼,不过或许值得一试!

这个模组新增了一个地牢维度,专为反复挑战地牢而设计,包含以下内容:
-手工制作的结构。
-随机选择敌人。
-随机选择生物群系。
-宝藏房间。

你还可以使用挑战者通行证来提高难度,挑战地牢时敌人的属性会提升,作为交换,你将获得更多战利品!
这些通行证还可以叠加使用。如果你想挑战一个拥有1000 点生命值、每次攻击造成100 颗心伤害的僵尸,那就尽管来吧!

 

物品与机制。

–地牢通行证。

(使用 3 张纸和任意一种原版怪物部件合成)

用錾制石砖搭建一个平坦的平台,并用任意方块搭建顶部,然后在平台上使用地牢通行证来激活地牢传送门!

在已激活的传送门上使用地牢通行证即可重置地牢,将其恢复至第 1 阶段,并将地牢难度恢复至等级 1!

–挑战者通行证。

(使用 3 张纸和 4 个原版怪物部件合成)

在已激活的传送门上使用,可通过提高敌人的生命值和伤害来提高当前地牢挑战的难度,作为交换,你将获得更多战利品!地牢挑战重置时,难度也会一并重置。

–阶段补充。

(使用地牢通行证和 4 个圆石合成)

对着激活的传送门使用以重新生成当前阶段,适用于地牢生成不完整的情况,例如只遇到死路。

–地牢补充。

(使用地牢通行证和 8 个圆石合成)

与阶段补充类似,对着激活的传送门使用,但会补充所有阶段。
(相比之下,阶段补充只补充当前阶段)

 

内容添加。

以下内容面向模组制作者或真正了解自己在做什么的人,因为错误修改可能导致意外结果,包括可能的游戏崩溃。
按照正确的结构,可以通过数据包或模组向地牢中添加更多生物群系、生物和战利品!

添加生物:

要添加生物,你可以在data/lrdynamicdungeon/enemy_pool/compatibility/创建目录(例如data/lrdynamicdungeon/enemy_pool/compatibility/my_mod_id/),并为每个阶段包含一个 json 文件(stage_1.json、stage_3.json等,并不强制要求每个阶段都有),在其中你可以按照以下格式将生物(或生物组)添加到任意文件中,以指定其出现的阶段:

{
  >敌人类型<: [
    [
      [>敌人 id<, >x 偏移<, >y 偏移<, >z 偏移<, >可选 NBT 数据<]
    ]
  ]
}

例如,要将一只大史莱姆添加到“ground”池中:

{
  "ground": [
    [
      ["minecraft:slime", 0, 0, 0, { "Size": 2 } ]
    ],
    >其他组<
  ],
  >其他类型<
}

或者一组敌人,例如3 只蜘蛛和1 只僵尸:

{
  "ground": [
    [
      ["minecraft:spider", 0, 0, 0],
      ["minecraft:spider", 0, 0, 0],
      ["minecraft:spider", 0, 0, 0],
      ["minecraft:zombie", 0, 0, 0]
    ],
    >其他组<
  ],
  >其他类型<
}

请参考 data/lrdynamicdungeon/enemy_pool/stage/ 中的阶段文件。

所有添加的敌人都会经过筛选,以确保它们存在于整合包中,跳过任何包含无效条目的组,同时接受其余部分!

 

添加宝藏战利品:

要添加战利品,可以在 data/lrdynamicdungeon/dungeon_loot/compatibility/ 下创建一个目录(例如 data/lrdynamicdungeon/dungeon_loot/compatibility/my_mod_id/),并为每个阶段添加一个 json 文件(stage_1.json、stage_3.json 等,不必为每个阶段都创建文件)。然后,你可以在对应文件中为想要出现战利品的阶段添加战利品(或战利品组),格式如下:
{
  >category, can make a new one too<: {
    "weight": >OPTIONAL, overwrites the weight for the category<,
    "weightAdd": >OPTIONAL, adds to the weight for the category<,
    "loot": [
      [
        [ >item id<, >quantity< ]
      ],
      >loot group 2<,
      >loot group 3<,
      >etc...<
    ]
  }
}

例如,可以找到2 组土豆,或者半组面包:
{
  "consumable": {
    "weightAdd": 1,
    "loot": [
      [
        [ "minecraft:potato", 64 ],
        [ "minecraft:potato", 64 ]
      ],
      [
        [ "minecraft:bread", 32 ]
      ]
    ]
  },
  >other categories<
}

请注意,如果该类别已经存在,新内容会与其合并(在此示例中,会与 “consumable” 合并)。
如果该类别不存在,则会直接创建新类别;如果未设置 “weight” ,则默认值为 3。

类别的”weight“越高,战利品被选中的概率就越大;大多数类别的权重约为 3。

如需参考,请查看 data/lrdynamicdungeon/dungeon_loot/ 下的阶段文件。

所有添加的战利品都会经过筛选,以确保它们存在于整合包中(包括附魔);包含无效条目的战利品组会被跳过,其余内容则会保留!

添加地牢 生物群系和房间:

地牢生物群系依赖两部分:用于生成房间的结构文件,以及用于指定这些房间应在哪里生成的json 文件 。

结构及其位置。

结构文件应放置在 data/lrdynamicdungeon/structures/ 中,然后你可以创建一个以任意生物群系命名的目录,例如 data/lrdynamicdungeon/structures/swamp/

每个生物群系都需要一个起始房间、至少一个Boss房间,以及至少一个普通房间,目录结构如下:
data/lrdynamicdungeon/structures/your_biome/
├-start.nbt
├-start.meta
├-boss/
| ┕->your boss room nbt + meta files<
┕-standard/
  ┕->your standard room nbt + meta files<

请注意,起始房间必须命名为 “start”,否则将无法识别!
你可以添加任意数量的 Boss 房间和普通房间;在该生物群系中,这些房间会被随机选取。房间名称也可以由你自行决定!

 

制作房间。

 每个房间由一个结构.NBT文件和一个.META文件组成,两者的文件名必须一致,例如crossing.nbt和crossing.meta。NBT 文件保存结构信息(方块、方块状态等),而 META 文件保存房间放置时所需的位置信息。

你可以用自己喜欢的方式制作结构 NBT 文件!(例如使用游戏内的结构方块、软件或自行编写代码等)。基本规则如下:

-请不要 在地牢维度内建造房间,否则会导致逻辑方块激活。


门
(房间连接方块):

-由3×3 的竖直墙面构成,必须放置在房间边缘才能正常工作。
-右键点击中央方块即可更改宝藏房间的生成概率(更改周围方块的概率不会有任何作用)。
-建议让所有门分别朝向房间的不同边缘。如果门彼此距离太近,其中一扇门可能无法生成房间。

敌人生成方块:

-这些方块会从对应的敌人组(地面、飞行、Boss 等)中随机挑选敌人。
-右键点击方块即可切换类型。

锁定方块:

-制作一扇普通的 3×3 门(使用房间连接方块),并将中间的方块替换为锁定方块。这样一来,玩家必须清除房间内的敌人才能继续前进。
-你也可以右键点击这些锁,在解锁时调整获得宝藏的概率。

起始房间:

-包含一个地牢传送门,方便玩家返回。
-至少包含一扇门。

标准房间:

-包含一个朝向 南方 的开放式3×3入口(也就是说,进入房间时,你 面朝北方)。
-建议至少放置一个敌人生成方块。
-至少包含一扇门。

Boss 房间:

-包含一个朝向南方 的开放式入口(也就是说,进入房间时,你 面朝北方)。
-包含一个敌人生成 Boss 方块。
-在地板某处放置一个下一阶段传送门方块 即可;Boss 被击败后,它会改变周围方块。

每个房间的 meta 文件:
-这些文件的结构如下:
{
  "doors": [
    {
      "facing": "south",
      "leftshift": >value<,
      "verticalshift": >value<,
      "backshift": >value<

    }
  ]

}

这些值用作锚点,以便在放置房间时调整其位置。最简单的计算方法是面朝北方 进行测量:
–leftshift:从入口中心量到左侧墙壁,再减去 1。
–verticalshift:从入口中心量到最低处的方块,再减去 1。
–backshift:房间从北到南的长度(包括墙壁)。

 


兼容性 json 文件。

准备好基础结构文件(至少包括起始房间的 nbt 和 meta 文件、至少一个标准房间,以及至少一个Boss房间),并将它们放置在正确路径下(位于 data/lrdynamicdungeon/structures/your_biome/)后,就可以创建兼容性 json 文件了。该文件应放在 data/lrdynamicdungeon/dungeon/compatibility/,例如 data/lrdynamicdungeon/dungeon/compatibility/your_mod_id.json。在该文件中添加以下内容:

{
  "requires": [ >array of required mods< ],
  "stages": {
    >stage number<: [ >array of biomes to add< ],
    >repeat for other stages<
  }

}

例如:
如果你创建了 3 个生物群系,并想将其中一个添加到第 3 阶段,另外两个添加到第 5 阶段,同时确保存在 “mod_1” 和 “mod_2″,内容如下:

{
  "requires": ["mod_1", "mod_2"],
  "stages": {
    "3": ["biome_1"],
    "5": ["biome_2", "biome_3"]
  }
}

可查看 data/lrdynamicdungeon/dungeon/ 中的文件作为参考。

 

如果正确完成了这些步骤,你的生物群系和自定义房间就会出现在地牢中!启动世界后,查看日志中的 “[Dungeon Compat] Compatibility attempted, current stages:”,即可确认你的生物群系是否已注册。该日志会显示当前已加载的生物群系;如果注册成功,你的生物群系就会出现在列表中!

 

兼容性。

本模组内置了与我的另一个模组 LR’s Blockollection 的兼容性,它会向地牢中添加额外的生物群系。

我鼓励模组制作者为本模组添加兼容性!按照上面的文档操作,就可以将你的内容添加到地牢中,希望这些说明足够简单易懂!(添加生物 和物品 相当简单;而制作生物群系 则需要创建结构。)

此外,本模组还内置了与以下模组的部分 兼容功能:
生物 会自动加入地牢生成:
–天境
–Ancient Legends by TDO
–新生魔艺
–Box of Horrors
–Deeper and Darker
–L_Ender’s Cataclysm
–Legendary Armory
–Legendary Monsters
–Mowzie’s Mobs
–Strongy
–Thermal
–暮色森林

物品/附魔 会自动添加到宝藏室中:
–Apotheosis
–Apotheotic Additions
–应用能源2
–Better Weaponry
–Cobblemon
–机械动力
–Cyclic
–Draconic Evolution
–Homebound
–L2 Complements
–Legendary Armory
–通用机械
–Powah
–Primal Magick
–Solar Craft
–Strongy
–热力膨胀
–暮色森林

常见问题

LR’s Dynamic Dungeon 支持哪些 Minecraft 版本?

LR’s Dynamic Dungeon 支持 Minecraft Java 版 1.20.1,可用的加载器:Forge。下载时注意选择和你游戏版本一致的文件。

LR’s Dynamic Dungeon 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

LinkedR 的其他作品

查看全部 →