本帖最后由 云阁旧梦 于 2023-3-24 19:20 编辑
BetterStructures
作者:MagmaGuy
丨
Github丨
wiki丨
插件介绍 |
EliteMobs插件作者MagmaGuy的另一优秀插件 BetterStructures插件,旨在适应任何世界的定制预制结构。任何人都可以下载、编辑和创建这些版本。除了高级版本之外,您现在还可以从itch下载152个免费版本。
这些建筑可以放在空气中,液体(常规海洋和熔岩海洋)上,适合地表和地下。BetterStructures将地下分为两部分—浅层地下和地下深处。它也适用于任何世界——主世界,末地和下界,以及大多数“正常”的minecraft世界(skygrid是唯一已知的例外)。 |
|
主要特点 为服务器添加更多结构建筑 根据不同群系生成对应建筑 使用预制结构或使用 WorldEdit/FAWE 创建自己的结构! 适用于任何世界(支持多世界) 随机宝藏箱子 可以在结构建筑中生成指定生物 只会在新的区块生成(已加载区块不会自动生成) 快速和轻量级 支持自定义项目 |
|
重要提示:如果想使用自己制作的结构建筑,需要至少下载一个作者提供的结构包
然后将自己的结构原理图放入结构包中,即可生成新结构
[tr][/tr][/table]
[/table][/table]
插件要求
BetterStructures依靠WorldEdit或FastAsyncWorldEdit(选择一个)将原理图传递到您的世界中。
WorldEdit插件,详见:
FastAsyncWorldEdit插件,详见:
部分图片展示
可免费获得部分结构展示
可付费获得部分结构展示 |
原理图 |
由于原理图文件的大小,BetterStructures没有预先打包的结构。但是,默认版本可以在 https://magmaguy.itch.io/ 上免费获得。
您还可以使用其他现有的原理图或下载非官方原理包甚至制作自己的原理包!
每个下载页面都描述了安装内容的过程,通常只需解压缩文件夹并将其放在服务器的目录中即可。
安装方法:将下载的压缩包解压,解压后的文件夹放入/plugins/BetterStructures/schematics
|
权限 [table=98%,Silver]
|
目前,BetterStructures中只有一个权限 - betterstructures.warn。此权限是为管理员授予的,并在插件放置结构时通知管理员。管理员可以单击此通知以传送到生成。这是测试生成器设置和结构位置的最佳方式。 |
指令 /betterstructures reload——重新加载BetterStructures配置和原理图。
通过重新加载,您可以在结构原理图文件夹中的文件后添加或删除结构,或者将生成器编辑应用于生成器文件夹。
/betterstructures place <schematicname> <schematictype>——在类型逻辑之后放置一个示意图。
schematictype有效类型为SURFACE、SKY、LIQUID_SURFACE、UNDERGROUND_SHALLOW、UNDERGROUND_DEEP
放置允许您查看结构如何在世界中放置。这对于查看它的适用性,是否有任何特定问题以及测试生物生成等非常有用。这绕过了特定的生成器限制 - 如果您想测试自动生成,则必须通过四处飞行并手动验证来做到这一点。
/betterstructures lootify <generator> <minamount> <maxamount> <chance>——允许您将持有的物品添加到生成器的宝藏列表中。这允许您将复杂的自定义物品添加到宝箱的宝藏列表中,并可能使用来自各种插件的物品来执行此操作(兼容性应该很好,但不能保证)。
/betterstructures version——查看当前插件版本
/bettestructures silent——可在没有权限的情况下禁用游戏中的结构生成
|
|
配置 config.yml- #井号仅代表注释,不影响配置——Cotwluh
- #默认配置不建议修改,如有特殊情况可按需酌情修改
- #常规世界最低Y轴
- lowestYNormalCustom: -60
- #常规世界最高Y轴
- highestYNormalCustom: 320
- #下届最低Y轴
- lowestYNether: 4
- #下届最高Y轴
- highestYNether: 120
- #末地最低Y轴
- lowestYEnd: 0
- #末地最高Y轴
- highestYEnd: 320
- #常规世界空中结构最低生成高度
- normalCustomAirBuildingMinAltitude: 80
- #常规世界空中结构最高生成高度
- normalCustomAirBuildingMaxAltitude: 120
- #末地空中结构最低生成高度
- endAirBuildMinAltitude: 80
- #末地空中结构最高生成高度
- endAirBuildMaxAltitude: 120
- #每千个区块空中结构生成权重
- airStructuresPerThousandChunks: 0.5
- #每千个区块海洋结构生成权重
- oceanStructuresPerThousandChunks: 0.5
- #每千个区块陆地结构生成权重
- landStructuresPerThousandChunks: 2.0
- #每千个区块浅层地下结构生成权重
- shallowUndergroundStructuresPerThousandChunks: 2.0
- #每千个区块深层地下结构生成权重
- deepUndergroundStructuresPerThousandChunks: 2.0
复制代码 |
ValidWorlds.yml- #井号仅代表注释,不影响配置——Cotwluh
- #此配置文件根据服务器世界自动生成
- #由于各服务器情况不同,仅展示常规世界
- #各服主可按各自服务器情况适当修改
- #有效世界
- Valid worlds:
- #世界名称:是否开启结构自动生成(true/false)
- world: true
- world_nether: true
- world_the_end: true
复制代码 |
|
|
自定义内容 在BetterStructures中的所有内容都是可编辑的。您可以根据自己的喜好修改任何原理图文件和生成器设置。
更加具体设置可以前往Wiki查看
Generators 生成器是BetterStructures配置系统中最强大的部分。默认情况下,有 27 个生成器,它们共同管理 BetterStructures 当前提供的 200 多个结构生成,虽然您可以创建自己的生成器,但也可以使用现有生成器作为快捷方式。 生成器作用是提供结构生成位置并定义宝藏箱子。默认生成器的命名方式也应该非常容易猜到它们的作用。 生成器的唯一必填字段是设置<structureType>,此设置决定建筑生成位置:空中、浅层地下、深层地下、地表或液体表面
isEnabled
设置是否启用生成器。
structureType
设置结构是什么类型。请注意,您可以同时列出多种类型!有以下设置:
地表
地表结构在世界表面生成。唯一的例外是下界环境。
空中
空中结构在空气上方80到120个方块之间生成,可在config.yml中配置。唯一的例外是下界环境。
浅层地下结构
- structureType:
- - UNDERGROUND_SHALLOW
复制代码 浅层地下结构在主世界生成于y=0和y=60之间,在下界生成于y=60和y=120,在末地不会生成
深层地下结构
- structureType:
- - UNDERGROUND_DEEP
复制代码 深层地下结构在主世界中生成于y=-64和y=0之间,在下界生成于y=0和y=60,在末地不生成。
**注意:**您会注意到有两个地下设置。这是因为只有一个会导致地下非常稀疏,因为Minecraft有很多地下空间,玩家经常会错过地下结构,因为他们没有挖掘它们。这也保证了在不同深度的均匀分布。
液体表面结构
- structureType:
- - LIQUID_SURFACE
复制代码 液体表面结构将在液体上生成。在主世界的情况下,它们会在水面上生成,而且几乎总是在海洋上生成。在下界的情况下,它们将在熔岩湖中生成。不会在末地生成。
validWorlds
设置允许生成结构的世界列表。如果未定义列表,它将允许的所有世界生成结构,除非另有限制(例如环境类型或生物群系)。
validBiomes
设置允许结构生成的生物群系列表。如果未定义列表,则将假定每个生物群系都允许生成!
这需要使用Spigot API定义的生物群系列表。
treasureFilename
设置结构生成宝箱所读取的宝藏内容文件,通过读取treasure文件获得宝藏内容注:官方wiki未更新此内容
例如 - treasureFilename: treasure_nether.yml
复制代码 则该类型结构生成时宝箱内宝藏按照treasure_nether.yml规定内容生成 |
Schematics 原理图是由WorldEdit或FastAsyncWorldEdit生成的文件,其中包含您将要粘贴结构的方块。有关如何制作原理图的请前往WorldEdit和FastAsyncWorldEdit插件指令中进行详细了解,但是通常是通过使用//pos1和//pos2,然后//copy,最后输入/schem save <schematicname>来选择立方体的两个相反的角来完成原理图创建。
特殊方块
BetterStructures有两个特殊的方块:屏障和基岩。WorldEdit / FAWE可以正常粘贴的任何其他方块,但屏障和基岩是例外。这些方块不是粘贴,而是替换为以下自定义行为:
屏障
屏障使生成器判定不要在该位置粘贴任何方块。这意味着在原世界最初生成的任何方块都将保留在那里。
建造者可以使用它来模糊建筑边缘,使其看起来更自然,或者将墙壁模塑成潜在的洞穴,以及其他技巧。
基岩
基岩使生成器判定该位置是一层。这意味着,如果在默认的世界生成中已经存在一个实体方块,则该方块将不会被修改;但是,如果该方块是固体或液体,它将被基座上的固体方块替换。稍后将详细介绍基座。
建造者可以使用它来创建具有矿车轨道等特征的楼层,或者保证路径存在,而不必覆盖世界上最初位于该位置的方块。
生物生成告示牌
BetterStructures中有一种特殊的告示牌,叫做生物生成告示牌。如果您采用普通告示牌并将其放置在某个位置,请确保第一行输入[spawn],并且第二行输入具有遵循Spigot API的实体类型名称,则将在该位置生成一个自定义实体。
例如,如果你有一个在第一行写着[spawn]和第二行上写着ZOMBIE的告示牌,那么当生成结构时,会在该告示牌位置生成一个僵尸。这也可以用于非生命实体,如盔甲架或末影水晶。
应用这些特殊方块
为了更好地理解这些特殊方块的工作原理,建议您将一些默认结构原理图移动到 WorldEdit 或 FastAsyncWorldEdit 插件的原理图文件夹中,并粘贴它们以查看它们的原始外观,然后使用 //paste 命令查看插件粘贴的内容。
锚点
锚点是生成原理图时确定的位置。当简单地粘贴//copy原理图时,是您相对于结构的位置。
锚点对于正常结构原理图非常重要。
- 对于曲面结构,建议您在复制建筑时站在建筑的最低点。
- 对于地下结构,建议您站在建筑的顶部。
- 对于液体结构,建议您站在水面上。
- 对于空中结构,建议您站在建筑的顶部。
请注意,在复制时,您应该始终非常靠近或直接位于结构的顶部 - 距离越远,需要粘贴构建时就越滞后。
|
原理图配置 每个原理图文件都有一个原理图配置。如果刚刚将原理图文件添加到服务器,则在重新启动或/betterstructures reload之后生成配置。 这些配置允许您为原理图粘贴设置以下内容:
isEnabled
设置是否启用原理图。如果禁用,则不会将其生成在任何位置。
weight
权重-根据原理图被读取的可能性来设置原理图的权重。
权重值为1.0 如果您设置权重为2.0则被选中的可能性将比其他构建版本高 2 倍。如果你设置为0.5,它将有一半的机会被选中。
注意:请记住,特定构建被选中的几率会根据总共有多少构建来争夺将获得结构的位置而发生巨大变化!
pedestalMaterial
重要提示:可选字段!
基座材料使用 spigot api material names设置基座方块的材料类型 - 必须使用,否则将不起作用!
基座是放置在地表和地下建筑物之下的方块,以适应任何空隙并提高建筑物与世界的契合度。这些也是在原理图中替换基岩的相同方块。
当配置中未定义任何内容时,将分析粘贴位置下的方块,并选择最佳拟合度作为最佳集成外观的材料。
generatorConfigFilename
此选项按文件名设置原理图将使用的配置文件的名称。这需要完整的文件名,包括末尾的扩展名.yml。例如
- generatorConfigFilename: generator_surface_global.yml
复制代码 如果要使用可在生成器配置文件夹中找到的已定义生成器,则generator_surface_global.yml是正确的选项。 |
Developers API 在插件作者撰写时,没有BetterStructures的maven存储库,因此必须手动导入。
Events 注意:事件在 com.magmaguy.betterstructures.api 中
BuildPlaceEvent 在即将放置生成时调用。公开有关将要放置结构名称以及通过 WorldEdit 放置在何处的数据。
不要尝试修改放置的结构!您可以修改一些小东西,但更改整个结构可能会导致结构不合适。
这是可取消的。
ChestFillEvent
当箱子装满时调用。使用容器快照清单安全地存储要应用的数据。
对战利品应通过对快照清单添加或删除物品的方法进行修改。 这是可取消的。
|
treasures 注:由于官方Wiki未更新此配置说明,以下配置均由实测后总结而出,不代表官方注释 宝藏生成文件含有五类,分别是:treasure_end(末地宝箱)、treasure_nether(下届宝箱)、treasure_overworld_surface(主世界常规宝箱)、treasure_overworld_underground(主世界地下结构宝箱)、treasure_special(特殊宝箱) 使用/betterstructures lootify <generator> <minamount> <maxamount> <chance>指令可将自定义物品添加到宝藏列表中,但是不能添加到treasure_special(特殊宝箱)文件中,原因未知 设置宝藏内容。即物品名称(注意大小写)
amount
设置要生成的量。表示范围amount=MIN-MAX,例如,要生成 1 到 5 个物品之间:amount=1-5
chance
设置物品掉落的几率。这是一个介于 0 和 1 之间的值,其中 0 表示 0%,1 表示 100%,0.5 表示 50%。
例
- loot:
- - material=COAL:amount=2-5:chance=0.02
- - material=BONE:amount=2-5:chance=0.02
复制代码 请注意=和:作为分隔符的具体用途。格式非常重要! |
|
|
宝藏文件 楼主修改后的宝箱宝藏文件
仅精简化,未额外添加物品
删除个别重复的宝藏,删除大部分无用物品(各色染料、各种木制品、各色羊毛等)
可使用/betterstructures lootify <generator> <minamount> <maxamount> <chance>指令自行添加自定义物品,文件修改后重载插件即可
文件下载
|
|
性能提示 如果您在使用 BetterStructures 时遇到性能问题,可以使用一些技巧来解决性能影响!
对于普通服务器:
1)使用FastAsyncWorldEdit(FAWE)而不是WorldEdit。这应该会非常有帮助。
2)检查您的服务器视图距离。 在 server.properties 中修改。较高的视距会生成指数级的区块 - 视距为 40 可导致每个玩家加载 5000 个区块。
对于配置较差的服务器:
1)确保有足够的RAM。建议有大约3GB或更多的RAM才能顺利运行插件(插件不使用3GB,这包括Minecraft和其他插件需要的)。
2)只是预生成你的世界!有很多插件可以预生成你的世界,只要在你提前安装了BetterStructures,你就会看到这些结构。一旦生成,BetterStructures将不会使用任何运算!
|
|
下载及更新记录 下载
更新记录
注意:建议但不强制删除生成器配置
版本 1.4.2
- [新] BetterStructures只会在BOSS死亡并被移除后,受保护区域才会被移除
- [修复]修复了在某些操作系统中导入路径无法按预期工作的个别情况
- [修复]修复了未安装EliteMobs时会错误显示的警告
- [调整] 调整了 treasure_special.yml 以使用掠夺命令
版本 1.4.1
- [修补程序] 修复了全新安装无法正确生成默认文件的问题
版本 1.4.0
- 更新新的免费结构包理学士 |岩浆盖伊的免费精英神社 (itch.io)
- [新]添加了导入文件夹并重新转换了所有现有的结构包以使用导入系统,与EliteMobs相同,只需在其中放置一个压缩文件夹并使用/bs reload重新加载!
- [新]BetterStructures的导入系统可以导入到EliteMobs中
- [新]改进了错误日志记录
- [新] 更新了文档
- [新]原理图现在可以完全关闭
- [新]添加了 EliteMobs集成![elitemobs] 在告示牌的第一行,所有其他行都可用于将文件名写成一个连续条目
- [新]添加了 WorldGuard 兼容性!拥有精英怪的区域将自动受到保护,直到BOSS被杀死。卸载 BetterStructures 后,这些保护区域消失
- [新增] 添加了禁用新建筑警告的配置设置
- [新功能] 添加了 /bettestructures silent 命令,可在没有权限的情况下禁用游戏中的结构生成
- [新功能] 在 ValidWorlds.yml 中添加了配置设置,以禁用新世界中的结构生成
- [优化] 降低了地形充足性的检查量
- [调整] 修复了导致实体无法在方块中心生成,有时导致窒息的问题
- [修复] 将 generator_underground_shallow.yml 更改为仅在普通类型世界中使用
- [修复] 修复了地下滴水石生成器实际上不会在地下滴水石生物群系中生成建筑的问题
版本 1.3.5
- [添加]为betterstructures添加maven repository(专家存储库 )
- [修复]修复了某些版本的FAWE和WorldEdit出现的问题
版本 1.3.4
- [修复] 修复了API事件,允许其他插件根据需要正确修改位置/宝箱填充行为
- [删除] 删除可能无效的异步实施,将被替换为更好的粘贴解决方案
版本 1.3.3
- [新功能] 添加了具有 betterstructures.version权限的 /betterstructures version命令
- [修复] 修复了默认情况下末地结构生成器使用下界宝藏列表的问题
提示:更新版本后,删除generators文件夹,然后重启服务器或使用指令重新加载插件即可
版本 1.3.2
- [新] 添加了以下 API 事件:
- BuildPlaceEvent :在确定结构位置后调用,但在粘贴之前。可取消。
- ChestFillEvent:一旦确定宝箱的战利品,但在放置之前调用。可取消。
- [新功能] 为付费结构包添加了treasure_special宝库文件,目前为空
- [新] 原理图配置现在可以正确保存自己的宝藏配置
- [重构] 重新构建系统内部,以便更好地适应新的基于宝藏文件的战利品系统
版本 1.3.1
- [修复] 1.3.1 中与某些配置更改相关的错误的修补程序,对于给您带来的不便,我们深表歉意
版本 1.3.0
- [新] 新的结构包:the Adventure pack!
- [新]宝箱中的宝藏被重制!
- 添加了“宝箱”配置文件夹
- 在宝箱文件夹中添加了默认的宝藏配置
- 生成器现在引用配置文件夹中的特定宝藏文件,而不是包含他们自己的个人宝藏列表
- lootify命令现在还添加了一个“信息”部分,具有玩家可读的值,以帮助了解条目用于什么物品
- 原理图的配置可以通过在原理图的配置中设置宝藏文件来覆盖其生成器的宝藏配置
- Lootify命令现在写入宝藏配置
- Lootify命令现在应该正常运作
- [新] 末影晶体不再显示底部基座
更早版本更新内容请到Spigot查看
|
更新计划
暂无其他更新计划
EliteMobs兼容即将推出
|
|
|
迟到的授权搬运
|
首次搬运插件如有问题,请及时指出,非常感谢!
确实非常棒的插件
低版本原地哭死


很好的插件,我的服务器已经用上了
沙发沙发!!!
存在较多机翻,以及二楼那位用户灌水
将会在48小时内击毙。
咱就是说,好好搬运插件不好吗,非得机翻作死。没活可以咬打火机但是请不要在插件版乱发东西。
还有这种插件呢有点可以哦先拿走
要是能支持mm怪物生成就好了
作者表示兼容即将推出,但是我只问了EliteMobs的兼容,以后应该会增加更多吧,我会及时更新的
支持的版本好少
不太好,这个插件要对数据包中携带的建筑生成部分会产生冲突!尤其是创世神!创世神都报错了!希望能在与数据包兼容方面能做好点(说实话加结构还不如直接找数据包加入呢,结构还少)
使用这个插件时尽量不用可以生成建筑的数据包,至于创世神报错,是否是安装了合适创世神的版本
毕竟是针对高版本开发的

是的,好像是你提到的我都装了(菜汪,不知道是不是这问题),还有一种可能会不会是创世神和那个你提到的类创世神插件受到了数据包地形生成模块影响报错?
我把那天的天日志文件给你吧
就这个,希望能看下
确实非常棒的插件
额,我不是专业的,但是日志大概意思可能是创世神和另一个类似创世神的插件冲突
我自己的服务器只用了创世神插件,然后搭配更好的结构插件,没有用作者推荐的那个,目前并没有发现问题,没有出现过报错,结构也能正常生成
你试试只用创世神和更好的结构,把那个FastAsyncWorldEdit卸载,应该可以吧......
感谢楼主分享,很有帮助谢谢!
插件不错,支持
很好的插件 感谢楼主分享
建筑的内的怪物,能否使用mm插件制作的怪物。还有建筑内的怪物貌似会因玩家离开而消失。
目前来说,只能使用原版的怪物,作者表示之后会开发兼容其他插件
怪物是跟随建筑同时生成的,玩家离开后好像不会重新生成怪物,emmmm我去跟作者反馈一下
请问这个算什么?是新的遗迹还是类似于村庄