当前位置:首页 > CN2资讯 > 正文内容

我的世界模组制作器java

4天前CN2资讯


1.12.2自定义建筑生成

1.16.5自定义建筑生成

1.18.2自定义建筑生成

我们本次尝试在主世界生成一个自定义的建筑。

由于版本更新缘故,1.19的建筑生成将不涉及任何Java包的代码编写,只需要在数据包中对建筑生成进行自定义。

1.首先我们要使用游戏中的结构方块制作一个建筑,结构方块使用教程参考1.16.5自定义建筑生成的第一步。

我们将建筑保存为nbt文件

之后在开发包run\saves\建筑所在的存档\generated\你的modid\structures的路径下找到该nbt文件:

2.来到数据包中,路径一般为src\main\resources\data\你的modid:

新建structures包,将第一步中的nbt文件放入其中(文末附该nbt文件下载):
新建tags包 -> tags包中新建worldgen包 -> worldgen包中新建biome包 -> biome包中新建 -> has_structure包 -> 包中新建一个ggd.json文件(名称和你的nbt建筑名称保持一致),用于指明我们的建筑会在什么地形生成:

ggd.json

{ "replace": false, "_comment": "指明我们的建筑会在什么生物群系中生成,比如草原、沙漠、雪原等", "values": [ "#minecraft:is_jungle", "#minecraft:is_forest", "#minecraft:is_taiga", "minecraft:desert", "minecraft:plains", "minecraft:snowy_plains", "minecraft:sunflower_plains", "minecraft:savanna", "minecraft:savanna_plateau", "minecraft:windswept_savanna" ] }
新建 worldgen包 -> 包中分别新建三个文件夹structure,structure_set,template_pool,可以参考上图:
之后在template_pool包中新建一个ggd包 -> ggd包中新建start_pool,用于指定该建筑起始生成信息:

start_pool.json

{ "name": "re8joymod:ggd/start_pool", "fallback": "minecraft:empty", "elements": [ { "weight": 1, "element": { //该建筑起始生成的nbt文件,也就是我们第一步中的那个文件名称 "location": "re8joymod:ggd", "processors": "minecraft:empty", "projection": "rigid", "element_type": "minecraft:single_pool_element" } } ] }
之后在structure包中新建我们的建筑文件ggd.json

ggd.json

{ "type": "minecraft:jigsaw", //建筑起始生成池 "start_pool": "re8joymod:ggd/start_pool", "size": 2, "max_distance_from_center": 80, //在什么群系中生成 "biomes": "#re8joymod:has_structure/ggd", "step": "surface_structures", "start_height": { "absolute": 0 }, "project_start_to_heightmap": "WORLD_SURFACE_WG", "use_expansion_hack": false, //建筑中可以生成什么生物 "spawn_overrides": { "creature": { "bounding_box": "piece", "spawns": [ { "type": "minecraft:parrot", "weight": 1, "minCount": 1, "maxCount": 4 } ] } } }
最后在structure_set包中新建文件ggd.json,将该建筑集合放入其中:

ggd.json

{ "structures": [ { //上面structure包中的建筑放进来,生成权重为1 "structure": "re8joymod:ggd", "weight": 1 } ], "placement": { //修改这个建筑id,注意两个不同的建筑的salt值不要一样 "salt": 1642136453, //两个相同建筑的间隔多大 "spacing": 20, //这个值不要比spacing大 "separation": 6, //随意向周围扩展生成这种建筑 "type": "minecraft:random_spread" } }

3.保存文件,运行游戏:

通过指令快速找到群系位置
/locate biome minecraft:群系名称

通过点击坐标可以传送到指定地形:

如果你可以在群系中找到对应的建筑,就大功告成了!

ggd.nbt下载

密码:8r94


    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/22226.html

    分享给朋友:

    “我的世界模组制作器java” 的相关文章

    选择最佳Gigabit VPS托管服务指南

    当我第一次听说Gigabit VPS时,我很快意识到它不仅是一个技术术语,而是一个可以极大改进在线业务性能的工具。那么,Gigabit VPS究竟是什么呢?简而言之,Gigabit VPS意指那些配备每秒10千兆位网络连接的虚拟专用服务器。这种高带宽的连接速度,显然适合那些需要流畅流媒体、快速文件传...

    搬瓦工Plan v2:高性价比VPS套餐详解与用户指南

    搬瓦工Plan v2作为一个限量版VPS套餐,给很多用户带来了新的选择。与之前的The Plan套餐相比,Plan v2在配置与流量方面都实现了显著的提升。这款套餐不仅是一种实用的解决方案,也为不同需求的用户提供了灵活的选择。接下来,我将分享一些关于这个套餐的背景信息、主要升级点以及它适合哪些用户。...

    全面解析VPS测评:如何选择最佳虚拟专用服务器

    了解VPS(虚拟专用服务器)对许多人来说并不陌生。在我们的网络环境中,VPS作为一种重要的服务器解决方案,广泛应用于网站托管、应用开发、以及各种在线服务的支持。VPS让用户可以在共享环境中获得类似独立服务器的资源,提供了灵活性和更好的性能。与共享主机相比,VPS的显著优势在于更高的资源保障和自定义能...

    使用getenforce命令管理SELinux执行模式的技巧与经验

    getenforce的基本概念 当我开始接触Linux系统的时候,SELinux这个名字总是让我感到神秘。经过逐渐的探索,我了解到SELinux(Security-Enhanced Linux)是一个强大的安全模块,它为Linux系统提供了细致的访问控制。这时候,getenforce命令便进入了我的...

    Rocky Linux 更新源配置及优化方法

    我最近对Rocky Linux这款操作系统有了更深入的了解。Rocky Linux是一个以开源为基础的企业级操作系统,跟Red Hat Enterprise Linux(RHEL)兼容。它的设计宗旨在于为用户提供一个稳定和可靠的平台。因此,更新源就显得非常重要,影响着系统的升级和软件的安装。 选择合...

    黑五狂欢购物攻略:如何高效享受黑色星期五折扣

    黑五,全称“黑色星期五”(Black Friday),是每年感恩节后的第一天。随着这个节日的到来,许多商店和电商都会推出琳琅满目的促销活动,标志着圣诞购物季的开端。我第一次听到黑五,是在朋友们热火朝天地讨论即将到来的折扣和特卖,这种热情真是难以抗拒。 黑五起源于美国,为什么叫“黑色”呢?这个名字其实...