跳到正文

MyWorldGen

作者:impiaaa

MyWorldGen 让你能轻松为自己的世界添加自定义世界生成。

收藏

截图

介绍

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

MyWorldGen:你的世界,由你做主

你是否曾觉得 Minecraft 的世界太…荒凉?不够友好?或者只是缺少乐趣?别担心!MyWorldGen 将彻底改变 Minecraft 的世界生成方式。它不会添加新的生物群系,也不会试图用奇形怪状的硬编码结构来填充世界,而是依靠你来丰富自己的世界。你只需将一些 schematic 文件放进 .minecraft/worldgen 文件夹,它们就会开始出现在你的单人游戏世界中。你也可以将它安装到服务器上,为自己的社区打造自定义世界生成内容!

源代码与问题追踪
论坛帖子
CurseForge 模组页面
CurseForge 项目页面

截图

以下是模组附带的一些示例在世界中生成后的画面。




一座地下墓穴,里面还有战利品!


完全兼容模组!这是我制作的一座墓园,它出现在超多生物群系的森林里。


看来我发现了一座废弃的发电厂。里面的 batbox 还剩下一些电量。

更多截图

使用说明

想要制作自己的世界生成内容?这很简单!如果你已经准备好了 schematic 文件,可以直接把它放进 .minecraft/worldgen 文件夹。否则,只需在创造模式世界中建造一些东西,然后使用“MyWorldGen”创造模式标签页里的“Schematic save wand”将其保存为 schematic 文件,它就会存到正确的目录中。

保存魔杖

保存魔杖使用矩形选区方式。如果你用过 WorldEdit 或 MCEdit,应该会很熟悉。右键点击(激活)第一个角落方块,魔杖就会发光,表示已记录一个选区点,同时选区周围会显示一个蓝色方框。再激活对角的方块,就会弹出保存对话框。下方的“高级设置”会说明各个按钮的用途;不过,你也可以只输入名称,其他设置保持默认。

加载魔杖

要确认保存是否正确,可以使用加载魔杖将 schematic 放置到世界中。只需右键点击一个方块,然后选择要加载的文件。

锚点方块

有两种特殊方块可以决定结构如何放置到世界中,它们都可以在“MyWorldGen”创造模式标签页中找到。第一种是锚点方块。只有当所有锚点方块都与世界中已有的方块匹配时,结构才会被放置到世界中。

地面锚点:与当前生物群系的“顶层方块”匹配。通常是草方块;沙漠生物群系中则是沙子,蘑菇生物群系中则是菌丝。

空气锚点:与任何“可替换”方块匹配,但液体除外。包括空气、高草、蕨类、枯灌木和浮雪。

石头锚点:匹配所有材质为“rock”的方块,包括石头、矿石、地狱岩和末地石——基本上就是所有用镐挖掘的方块。

熔岩和水锚点:匹配流动或静止的方块。

木头、泥土、沙子和树叶锚点:匹配各自对应的材质类型。

物品栏锚点:这种特殊锚点只会匹配你放入其物品栏的 9 种方块中的任意一种。例如,物品栏锚点中放有石头方块和草方块,那么结构在该位置只能使用石头方块或草方块。

尽量在每个建筑中至少使用一个锚点方块,否则模组只会把建筑放在地表的某个位置,这可能不是你想要的效果。不过也别使用太多锚点方块,否则会更难找到合适的位置!

放置在世界中后,锚点方块会作为忽略方块使用。

忽略方块

将结构示意图放入世界时,矩形区域内的所有世界方块都会被替换,即使原本是空气方块也是如此。如果你想保留结构某个部分的现有方块,请使用忽略方块。不过通常只有形状不规则的地下结构才需要这样做。

外部工具

我说的结构示意图文件,确实就是结构示意图文件。它和 MCEdit、WorldEdit 等工具使用的是同一种格式!这意味着你甚至不必在 Minecraft 中制作自己的世界生成内容!事实上,还有许多数据库提供可免费下载的结构示意图文件:

Minecraft Schematics.com
Minecraft-Schematics.net
Planet Minecraft

此外,借助魔杖,这个模组也可以用于在创造模式建筑中进行基础的复制和粘贴。

进阶

除了标准的结构示意图 NBT 格式(参见此处)之外,MyWorldGen 还添加了一些可选的 NBT 标签。你可以使用任何 NBT 编辑器添加或编辑这些标签;我一直在使用带有 Mono 的 NBTExplorer。

  • randomWeight (integer, default 10):数值越大,结构出现的可能性越高,其他结构出现的可能性则越低。
  • chestType (string, default dungeonChest):指定箱子使用的战利品类型。如果此字段存在但为空,箱子将保留原有内容。可选值包括 mineshaftCorridor、pyramidDesertyChest、pyramidJungleChest、pyramidJungleDispenser、strongholdCorridor、strongholdLibrary、strongholdCrossing、villageBlacksmith 和 bonusChest。
  • excludeBiomes (list of strings, no default):此结构不会生成于其中的生物群系列表。此标签不能与 onlyIncludeBiomes 同时使用。
  • onlyIncludeBiomes (list of strings, no default):此结构只会生成于其中的生物群系列表。此标签不能与 excludeBiomes 同时使用。
  • lockRotation (boolean, default false):Minecraft 中方块旋转并不太可靠,所以如果你很在意结构的外观是否完美,启用此选项后,结构将始终朝向同一方向。
  • generateSpawners (boolean, default true):启用后,放置到世界中的所有刷怪笼都会随机生成一种地牢生物。关闭后,刷怪笼会保留其方块实体中指定的生物。
  • fuzzyMatching (boolean, default false):启用一种替代方法来寻找结构生成位置。它不会尝试寻找与所有锚点都匹配的位置,而是随机选择一个锚点,再为其寻找合适的位置。这种方法速度更快,也能确保结构更容易生成,但生成效果会比较粗糙。
  • terrainSmoothing (boolean, default false):此选项只有在同时启用 fuzzyMatching 时才有意义。锚点方块放置到世界中时,无论它是否与所在位置匹配,都会填充周围空间,使其与锚点相匹配。例如,不匹配的地面锚点会用泥土填充其下方的空气。
  • MWGIDMap:由于方块 ID 可以重新配置,此项可确保不同安装之间的兼容性。除非你知道自己在做什么,否则不要修改!

如果你不确定这些选项的作用,可以查看随附或生成的结构文件作为示例。

常见问题 我敢肯定总有人会问

  • “以前没人做过这个吗?”做过(很多次),但我想自己做一个。我想做出易于上手、可扩展且兼容性好的东西。
  • “整合包呢?”这个模组是开源的,所以我没法真正阻止你用它做任何事。不过,如果你能链接回这里,我会很感激。也请告诉我一声!
  • “为什么模组方块旋转不正常?”请让模组作者以 Forge 处理原版方块的相同方式实现 rotateBlock。
  • “火把掉下来了!”这是 Forge 方块旋转机制的限制。它会强制更新方块,使无效的方块配置恢复正常。以后我可能会实现自定义旋转。

更新日志

1.4.1

  • [1.9] 修复副手持有物品时发生的崩溃
  • 修复 MWG 方块在水中损坏的问题(将材质类型改为 “iron”)
  • 改进结构文件在世界中的放置方式(所有方块更新会一次性完成,不再执行不必要的更新。此外,现在使用加载魔杖放置时,结构会朝向背离你的方向。)
  • 添加了简单的保护机制,防止无限递归
  • 改进对没有锚点的结构文件的支持
  • [1.9] 修复忽略方块碰撞时出现的异常

1.4

  • 实现模糊匹配和地形平滑
  • 更详细的保存法杖 GUI
  • 重制资源包处理方式(需要 JSON 索引;可在 JSON 中设置/覆盖生成参数)
  • 为保存法杖添加选择框
  • 更新了部分内置蓝图,以使用新的模糊匹配系统(和往常一样,删除或移走 worldgen 文件夹即可查看)

1.3.4

  • 修复了一些崩溃问题

1.3.3

  • 基于 1.7.10 构建,但仍应兼容 1.7.2
  • 旋转锁定(NBT 标签 “lockRotation”)
  • 遵循地图的“生成结构”设置
  • 为加载锚点添加无损/按生成状态切换选项
  • 各种小修复,详见 https://github.com/impiaaa/MyWorldGen/commits/1.7

1.3.2

  • 修复专用服务器崩溃问题
  • 修复保存和加载元数据的问题

1.3.1

  • 修复实体保存问题
  • 修复某些情况下无法识别锚点方块的问题
  • 修复法杖堆叠数量为 0 的问题(导致了一些物品栏异常)
  • 将部分法杖逻辑移至服务端(可能会缺少某些功能,但可靠性大幅提升)
  • 修复废弃矿井入口蓝图

1.3

  • 支持 1.7!
  • 修复在专用服务器上加载模组的问题。注意:现在新增了一个配置选项 enableItemsAndBlocks;如果希望未安装该模组的 Forge 客户端也能连接,必须将其关闭。
  • 针对 MC 1.7 进行了大量内部更改和修复。部分 MWG v1.2 蓝图可能不兼容。
  • 添加了对 OpenBlocks 捐赠站的支持 😉

1.2

  • 更新至最新版 Forge
  • 更改了一些内容,为 1.7 做准备
  • 添加了物品栏锚点:可匹配 9 个物品栏槽位中的任意方块

1.1

  • 更新至 1.6.3(预发布版)
  • 添加了木头、泥土、沙子和树叶锚点
  • 添加了专属创造模式物品栏标签页

1.0

  • 改进世界生成算法,并使其可配置
  • 添加了对资源包的支持;会在所有资源包的 assets/myworldgen/worldgen 目录中查找蓝图。
  • 添加了更多示例蓝图;如果你正在升级,请删除/移走 worldgen 目录,或自行从 jar 文件中提取这些蓝图。
  • 略微改进了无锚点蓝图的放置方式
  • 添加了 mcmod.info 文件

捐赠

任何帮助都将有助于我们继续开发!

签名

[url=http://www.minecraftforum.net/topic/1902599-][img]https://media.forgecdn.net/attachments/10/373/pack.png[/img][/url]

计划中的功能包括不忽略锚点方块,以及用于复杂结构的锚点对锚点方块。虽然这个模组在 Forge 服务器上应该可以正常运行,但我之后也许会制作一个 Bukkit 版本,不过功能会受到限制。

欢迎在下方分享你的蓝图和资源包!也欢迎反馈 Bug、崩溃问题或其他建议。

常见问题

MyWorldGen 支持哪些 Minecraft 版本?

MyWorldGen 支持 Minecraft Java 版 1.6.2–1.9,共 7 个版本,可用的加载器:Forge。下载时注意选择和你游戏版本一致的文件。

MyWorldGen 怎么安装?

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

评论

登录后评论和评分