命令结构

命令结构

用命令生成拼图结构!

结构

INFO


这个实用模组适用于 Neoforge、Forge、Quilt 和 Fabric,非常适合任何想要创建自定义拼图结构(jigsaw structures)的模组开发者或数据包制作者,他们希望有一种快速生成结构的方式,或者将所有 NBT 组件整齐地排列出来。它还提供了一种生成 configuredfeatures 和 placedfeatures 的方式,以便更轻松地调试这些内容。

这个模组的作用是创建了 /spawnstructure、/spawnpieces、/spawnrawstructure、/spawnfeature 和 /spawnplacedfeature 命令供你使用。命令的完整参数如下:

/spawnstructure

每个参数的详细说明:

- 结构生成的位置。可以使用 ~ ~ ~ 在你当前位置生成,或使用 ~50 ~ ~ 在你 50 格远的地方生成。

- 用于开始结构生成的模板池(template pool)路径。对于平原村庄,这将是 "minecraft:village/plains/town_centers",即村庄的起始池。你可以选择其他池用于测试目的。这是必填参数。此参数之后的所有其他参数都是可选的。

- 拼图结构从起始组件向外生成多少个组件。可以把它想象成一条分支应该延伸多长。而不是结构中组件的总数。村庄的深度为 6。

- 结构应该在地表顶部生成还是在玩家所在位置生成。

- 特殊的内部规则,用于调整组件的边界框。村庄需要将其设为 true 才能正确生成。所有其他结构应将其设为 false。

- 是否为此结构生成关闭结构处理器(processors)。处理器通常用于随机化结构的方块,或根据条件替换方块,例如村庄道路进入水中时变成木板。

- 如果为 true,游戏将发送数据包尝试让玩家重新加载所有可见区块。如果关闭,可能会提供显著的性能提升,但如果结构或特征以非常奇怪的方式放置方块,这些方块可能不会显示,直到区块被重新加载。例如,minecraft:forest_rock 特征放置方块时不会向客户端发送更改。大多数特征和结构都会正常工作,sendchunklightingpacket 可以设为 false。(默认值为 false)

- 如果你想在任意位置每次运行命令时都持续生成相同的结构布局,可以使用此参数并传入一个种子。非常适合用于测试你是否修复了结构中某个组件不生成的问题。

(仅 1.20.4+)/fillstructurevoid

每个参数的详细说明:

- 以你站立位置为中心的球体半径。球体内的空气将被替换为结构空位(structure void)。它通过递归扩散的方式运作,因此不会替换房屋内部或封闭空间中的空气。适合以快速粗略的方式用结构空位填充房屋外部。最好与 Structure Void Toggle 模组配合使用。

(仅 1.18)/spawnrawstructure

每个参数的详细说明:

- 结构生成的位置。可以使用 ~ ~ ~ 来生成。注意:ConfiguredStructures 可能会忽略此参数的 y 值,请注意这一点。例如,海底神殿总是生成在海平面以下。

- 要生成的 ConfiguredStructure。注意,许多结构有特殊的硬编码内部检查,可能会阻止生成。例如,如果该位置的地面低于 60,末地城将不会生成;沙漠神殿和丛林神庙不会在海平面或以下生成;其他结构可能有更严格的检查。生物群系检查已被绕过,对于许多原版结构,我添加了代码来绕过它们的许多严格检查,例如使得废弃矿井在执行此命令时总能生成。模组结构可能有极其严格的检查,阻止生成。这是必填参数。此参数之后的所有其他参数都是可选的。

- 是否将结构的边界保存到区块本身。此边界用于触发进度、随时间生成结构特定的生物(如守卫者和掠夺者),以及各种其他与边界相关的内容。

- 如果为 true,游戏将发送数据包尝试让玩家重新加载所有可见区块。如果关闭,可能会提供显著的性能提升,但如果结构或特征以非常奇怪的方式放置方块,这些方块可能不会显示,直到区块被重新加载。例如,minecraft:forest_rock 特征放置方块时不会向客户端发送更改。大多数特征和结构都会正常工作,sendchunklightingpacket 可以设为 false。(默认值为 true)

- 如果你想在任意位置每次运行命令时都持续生成相同的结构布局,可以使用此参数并传入一个种子。非常适合用于测试你是否修复了结构中某个组件不生成的问题。

/spawnpieces <spacing (1.20.4+)>

每个参数的详细说明:

- 搜索所有 NBT 组件并以网格形式生成的路径。此命令也可以针对单个 NBT 组件。这是唯一必填的参数。所有其他参数都是可选的。

- 开始放置组件的位置。默认值为 ~ ~ ~,即玩家站立的位置。

- 是否将每个生成的 NBT 组件自动保存到世界存档文件夹中的 "generated" 文件夹。

- 在 NBT 组件所放置的地板上使用什么方块。通常是屏障方块或石头。

- 用于清除 NBT 组件区域使用什么方块。常见的选择是空气或结构空位。

- 每行放置多少个 NBT 组件后开始下一行。

- 仅在 1.20.4 及更新版本中可用。组件之间应间隔多远。

(仅 1.18)/spawnfeature

每个参数的详细说明:

- 要生成的 configuredfeature 的资源位置。请注意,某些特征有内部检查来判断位置是否有效,例如沙漠水井需要放置在沙子上。

- 生成 configuredfeature 的位置。

- 如果为 true,游戏将发送数据包尝试让玩家重新加载所有可见区块。如果关闭,可能会提供显著的性能提升,但如果结构或特征以非常奇怪的方式放置方块,这些方块可能不会显示,直到区块被重新加载。例如,minecraft:forest_rock 特征放置方块时不会向客户端发送更改。大多数特征和结构都会正常工作,sendchunklightingpacket 可以设为 false。(默认值为 true)

(仅 1.18)/spawnplacedfeature

每个参数的详细说明:

- 要生成的 placedfeature 的资源位置。请注意,某些 placedfeatures 有内部检查来判断位置是否有效或稀有度放置。例如,沙漠水井有 1/1000 的稀有度放置,所以你可能需要执行此命令大约 1000 次才能让沙漠水井生成。

- 生成 placedfeature 的位置。注意:为了更好地模拟世界生成,此位置将把它所在区块的最底部角落位置传递给 placedfeature。因此使用此命令就像正常的世界生成一样,只是不进行生物群系检查。如果你的 placedfeature 有 "minecraft:biome" 放置检查,它将被忽略,以便在不处于正确生物群系的情况下也能更轻松地调试。

- 如果为 true,游戏将发送数据包尝试让玩家重新加载所有可见区块。如果关闭,可能会提供显著的性能提升,但如果结构或特征以非常奇怪的方式放置方块,这些方块可能不会显示,直到区块被重新加载。例如,minecraft:forest_rock 特征放置方块时不会向客户端发送更改。大多数特征和结构都会正常工作,sendchunklightingpacket 可以设为 false。(默认值为 true)

我希望你喜欢这个模组,它能让结构建造变得稍微容易一些。别忘了在上方的 Issue 标签页或下方的 Discord 中报告你发现的任何 Bug 或问题!你也可以在这个模组页面下留言

我的模组 Discord 链接,前往 #telepathicgrunt-mods 频道!:

https://discord.gg/K8qRev3yKZ

discord-logo-png-free-transparent-png-logos-discord-png-logo-300_300 (PNG)  | BeeIMG