本帖最后由 Kenneth_z 于 2020-10-23 11:30 编辑
AshManPro
AshManPro是一个清理服务器多余实体的插件
下载:
API:
添加不清理的实体 - AshManPro.addExemptedEntity(long eid);
- AshManPro.addExemptedEntity(Entity entity);
- AshManPro.addExemptedEntity(long eid,Entity entity);
复制代码删除不清理的实体 - AshManPro.removeExemptedEntity(long eid);
- AshManPro.removeExemptedEntity(Entity entity);
复制代码
命令:
- /am force | 强制清理所有实体
- /am help | 查看插件帮助
功能:
- 3种清理触发器与清理执行器
- 可设置区块卸载时可自动清理在区块中的实体
- 可设置不清理带NBT的物品
- 可通过API设置不清理的实体
- 可以使用配置文件设定清理排外的玩家或世界
- 清理前倒计时,可以有效防止误伤
配置文件:
- # ____ ____
- #| _ \ _ __ ___ __ _ _ __ ___ / ___| ___ _ ____ _____ _ __
- #| | | | '__/ _ \/ _` | '_ ` _ \\___ \ / _ \ '__\ \ / / _ \ '__|
- #| |_| | | | __/ (_| | | | | | |___) | __/ | \ V / __/ |
- #|____/|_| \___|\__,_|_| |_| |_|____/ \___|_| \_/ \___|_|
- # _ _ __ __ ____
- # / \ ___| |__ | \/ | __ _ _ __ | _ \ _ __ ___
- # / _ \ / __| '_ \| |\/| |/ _` | '_ \| |_) | '__/ _ \
- # / ___ \\__ \ | | | | | | (_| | | | | __/| | | (_) |
- #/_/ \_\___/_| |_|_| |_|\__,_|_| |_|_| |_| \___/
- # 清理前的提示信息
- beforehand-message:
- 20: 将在20秒后清理所有实体和物品
- 10: 将在10秒后清理所有实体和物品
- # {0}为清理的物品数量,{1}为清理的实体数量
- terminate-message: 本次清理一共清理了{0}个物品,{1}个实体
- # 清理方式
- eliminate-type:
- "0": # 清理所有世界
- enable: true
- # 以下世界将不会被清理
- eliminate-level-except: ["example world"]
- "1": # 仅清理有玩家的世界
- enable: false
- # 清理玩家大于阈值的世界
- threshold: 1
- # 以下世界将不会被清理
- eliminate-level-except: ["example world"]
- "2": # 清理玩家附近的实体或物品
- enable: false
- # X轴的偏移
- offsetX: 16
- # Y轴的偏移
- offsetY: 5
- # Z轴的偏移
- offsetZ: 16
- # 以下玩家将会不会被清理附近的实体或物品
- eliminate-player-except: ["pn1"]
- # 开启清理物品
- eliminate-items: true
- # 不清理带NBT的物品
- eliminate-items-except-nbtcontains: true
- # 清理实体
- eliminate-entity: true
- # 强制清理所有实体,会无视保留实体的限制
- eliminate-entity-force: false
- # 在区块卸载的时候删除所有在区块里的实体
- eliminate-entity-after-chunk-unload: false
- # 触发清理的条件
- eliminate-trigger:
- "0": # 当服务器实体总数大于某值时清理
- enable: true
- # 检测到实体数量大于该值将会启动清理
- threshold: 50
- # 检测的时间 单位秒
- detect-interval: 300
- "1": # 当服务器平均TPS小于某值时清理
- enable: false
- # 检测到平均TPS小于该值将会启动清理
- threshold: 19.2
- # 检测的时间 单位秒
- detect-interval: 300
- "2": # 当服务器实体总数大于某值并当服务器平均TPS小于某值时清理
- enable: false
- # 实体数量需大于该值才会启动清理
- entityThreshold: 50
- # 平均TPS需小于该值才会启动清理
- AvgTPSThreshold: 19.2
- # 检测的时间 单位秒
- detect-interval: 300
复制代码
使用方法:
清理实体有触发条件与清理方式两个类型,触发条件有例如实体数量、TPS等。清理方式有清理整个世界以及清理玩家周围实体两种。 你可以根据你的需求自由选择。
更新记录:
- 2020/01/20 插件首版v1.0.0
- 2020/01/21 修复部分bug
- 2020/01/22 增加了命令以及API
- 2020/01/23 修复bug,感谢@wode490390 指出
- 2020/02/04 修复bug
- 2020/03/09 修复bug,感谢@xiaolu550 指出,增加对PlaceholderAPI的支持,可以在输出的文本中使用占位符
- 2020/10/23 优化代码
Github仓库:
Github
|
|
|
|
[groupid=1708]Pioneer Group[/groupid]