dpy0428
1.19.1
如何自定义维度所能生成的结构
如何自定义流浪商人所交易的物品

发是的个的发
循环执行这两条指令。说明:由于原版中data merge指令只能识别一个实体并修改实体的数据,因此要先用第一条指令检测流浪商人并给流浪商人交易菜单,再用第二条指令给已经修改交易的商人一个tag,这样一来始终把修改对象保持在一个实体范围内
  1. execute as @e[type=wandering_trader] unless entity @s[tag=seller] run data modify entity @s Offers.Recipes append value {priceMultiplier:0.1f,xp:10,rewardExp:1b,buy:{id:"minecraft:emerald",Count:10b},sell:{id:"minecraft:crossbow",Count:1b}}
  2. execute as @e[type=wandering_trader] unless entity @s[tag=seller] run tag @s add seller
复制代码
(Value后的大括号里的sell可以改成自己想出售的物品,buy可以改成物品所需的费用,Count后的数字则是物品的数字。Value前的append可以改成merge,append是在商人原有交易的基础上添加交易,而merge则是覆盖原有商人的交易)

dpy0428
发是的个的发 发表于 2022-7-29 11:29
循环执行这两条指令。说明:由于原版中data merge指令只能识别一个实体并修改实体的数据,因此要先用第一条 ...

我想要随机的物品,然后我看战利品表里没有这个

发是的个的发
目前我也在学习如何用数据包自定义维度生成的结构,我可以分享一下自己的经验。
目前我只会在主世界生成结构。你需要在数据包中有三个文件夹,分别是structures(用来存放你想要生成的结构的NBT文件,也就是结构本身各种建筑方块),tags(用来存放你想要该结构所生成的群系的标签),worldgen(存放真正控制生成结构的json文件)。
structures文件夹很简单,你只需要先用方块摆好自己想要的结构,再用结构方块储存起来,然后起正确的名字放进去就好了。
tags文件夹里面我是这样的。在tags里面还有一个worldgen文件夹,在worldgen文件夹里面还有一个biome文件夹,在biome里面还有一个has_structure文件夹,在has_structure文件夹里面就是关于结构生成的群系的json文件了。我的json文件里代码是这样的
  1. {
  2.   "values": [
  3.     "minecraft:dark_forest",
  4.     "minecraft:swamp",
  5.     "minecraft:mangrove_swamp",
  6.     "minecraft:plains",
  7.     "minecraft:meadow",
  8.     "#minecraft:is_ocean",
  9.     "#minecraft:is_river",
  10.     "#minecraft:is_beach",
  11.     "#minecraft:is_mountain",
  12.     "#minecraft:is_hill",
  13.     "#minecraft:is_taiga",
  14.     "#minecraft:is_jungle",
  15.     "#minecraft:is_forest",
  16.     "minecraft:stony_shore",
  17.     "minecraft:mushroom_fields",
  18.     "minecraft:ice_spikes",
  19.     "minecraft:windswept_savanna",
  20.     "minecraft:windswept_hills",
  21.     "minecraft:desert",
  22.     "minecraft:savanna",
  23.     "minecraft:snowy_plains",
  24.     "minecraft:plains",
  25.     "minecraft:sunflower_plains",
  26.     "minecraft:swamp",
  27.     "minecraft:mangrove_swamp",
  28.     "minecraft:savanna_plateau",
  29.     "minecraft:dripstone_caves",
  30.     "minecraft:lush_caves"
  31.   ]
  32. }
复制代码

这可以让结构生成在平原

worldgen文件夹里面就挺复杂的,我只用了四个文件夹,一个是structure(里面存放的json文件控制你所要生成的结构,以及该结构生成的群系,当你在这个文件夹里面放了可被读取的json文件的话,你是可以在游戏中用 /locate指令找到这个你所定义的结构),一个是structure_set文件夹(里面的json文件控制你在刚刚那个structure文件里所放的结构的生成的密度之类的,挺容易混淆structures,structure和structure_set这三个文件夹的作用的),template_pool文件夹(里面存放结构的拼图方块,当然如果你的结构里没有拼图方块,可以省略这个),processor_list(处理器列表,存放对结构继续处理的文件,例如像地牢就是用处理器列表来随机替换一些方块,替换成有裂缝的,这样显得更旧)
具体要说完的话要挺久的,建议下载我的这个数据包来拆开看一看
https://www.mcbbs.net/thread-1367506-1-1.html

dpy0428
本帖最后由 dpy0428 于 2022-7-29 11:56 编辑
发是的个的发 发表于 2022-7-29 11:48
目前我也在学习如何用数据包自定义维度生成的结构,我可以分享一下自己的经验。
目前我只会在主世界生成结 ...

我在官方的文档里没有看到has_structure文件夹..这个咋用呀
你的数据包里也没有自定义群系呀..

下一页 最后一页