本帖最后由 zhanshi123 于 2021-7-13 00:47 编辑
AdvancedCleaner
介绍
AdvancedCleaner 可以帮助你高效解决服务器掉落物和实体多的难题
你只需安装插件至服务器,使用默认配置文件,即可对服务器进行一定的优化
原理介绍
本插件的掉落物清理和实体清理,均使用异步任务进行计时
掉落物清理会在清理时异步判断掉落物是否满足配置文件中的清理规则
在判断后再进行清理
本插件较为新颖的地方为,会根据附魔和nbt判断是否需要清理
并且在临近清理时,玩家丢弃东西会进行一定的提示和阻止
实体清理目前是定时检测每个区块中每个类型的实体的数量,并根据配置文件进行判断是否需要清理
与一般的插件不同的是 本插件会将实体清理至上限数量,而不是全部清理
命令
配置文件
配置文件有详细的注释 一般服务器使用默认配置即可
默认配置文件如下
复制代码
使用JavaScript来判断是否需要清理
script.js中可以编辑规则
复制代码
下载
下载和版本历史请前往 http://dl.zhanshi123.me/#AdvancedCleaner 进行下载
升级到1.2,1.3版本请删除script.js重新生成
源码链接: https://gitee.com/Soldier233/AdvancedCleaner
本插件所用所有代码均为原创,不存在借用/抄袭等行为
AdvancedCleaner
介绍
AdvancedCleaner 可以帮助你高效解决服务器掉落物和实体多的难题
你只需安装插件至服务器,使用默认配置文件,即可对服务器进行一定的优化
原理介绍
本插件的掉落物清理和实体清理,均使用异步任务进行计时
掉落物清理会在清理时异步判断掉落物是否满足配置文件中的清理规则
在判断后再进行清理
本插件较为新颖的地方为,会根据附魔和nbt判断是否需要清理
并且在临近清理时,玩家丢弃东西会进行一定的提示和阻止
实体清理目前是定时检测每个区块中每个类型的实体的数量,并根据配置文件进行判断是否需要清理
与一般的插件不同的是 本插件会将实体清理至上限数量,而不是全部清理
命令
| 命令 | 用途 |
| /ac item | 立刻执行物品清理任务 |
| /ac entity | 立刻执行实体清理任务 |
| /ac reload | 重载插件 |
配置文件
配置文件有详细的注释 一般服务器使用默认配置即可
默认配置文件如下
- item:
- enable: true
- blackList:
- - 'BEACON'
- - '@SHULKER_BOX'
- - 'DIAMOND'
- - 'DIAMOND_ORE'
- - 'GOLD_INGOT'
- - 'GOLD_ORE'
- - 'IRON_INGOT'
- - 'IRON_ORE'
- - '@SPAWN_EGG'
- - '@EMERALD'
- - 'PLAYER_HEAD'
- - '@SKULL'
- - 'NAUTILUS_SHELL'
- - 'HEART_OF_THE_SEA'
- - 'TRIDENT'
- - '@MUSIC_DISC'
- - 'ELYTRA'
- - 'TOTEM_OF_UNDYING'
- - 'CONDUIT'
- #不清理的物品列表 开头为@的意思为只要枚举名包括后面的文本,则不清理
- #例如默认配置文件中的@SHULKER_BOX可以代表所有颜色的潜影箱
- checkValue:
- enable: true
- #是否检查物品价值
- #规则见scritp.js
- interval: 600
- #清理间隔 单位为秒
- broadcast:
- cleanDone: '§7地面掉落物清理完成,清理了 §e{0} §7个掉落物。'
- countDown: '§7将在 §e{0} §7秒内开始清理地面垃圾'
- #消息自定义
- notifications:
- - 60
- - 30
- - 10
- #距离清理多少秒的时候发送提示
- dropResist:
- enable: true
- #是否阻止玩家清理垃圾前丢东西
- consult: '§7服务器即将进行&e掉落物清理&7,你确定要扔东西吗?如果你确认,请§e再次丢弃§7,并且下次丢弃时不再显示该提示'
- #询问时的消息
- confirmed: '§7已经§e解除丢弃限制§7,如有物品丢失,请自行承担责任'
- #确认丢弃的消息
- value: 10
- #小于多少秒开始限制
- entity:
- enable: true
- #是否开启实体清理
- interval: 300
- #检测间隔
- limit:
- ZOMBIE: 8
- SKELETON: 8
- VILLAGER: 10
- PIG_ZOMBIE: 6
- #每个区块中 各类型实体的最大数量,超过数量会清理超出限制的部分
- #实体类型为枚举名
使用JavaScript来判断是否需要清理
script.js中可以编辑规则
- var Material = Java.type("org.bukkit.Material");
- var isNeedToClean = function (item) {
- var itemStack = item.getItemStack();
- /*
- if (item.getLocation().getBlock().getType() === Material.STATIONARY_WATER) {
- return false;
- }
- */
- //如果需要不清理水中的物品 可以将上方注释删除
- if (!itemStack.hasItemMeta()) {
- return true;
- }
- if (itemStack.getEnchantments().size() < 3) {
- return true;
- }
- return false;
- };
- //返回true清理 返回false则不清理
- //如果不懂JavaScript 请不要修改 这里的意思是 有nbt数据或者附魔数量大于3个的 物品 不会清理
下载
下载和版本历史请前往 http://dl.zhanshi123.me/#AdvancedCleaner 进行下载
升级到1.2,1.3版本请删除script.js重新生成
源码链接: https://gitee.com/Soldier233/AdvancedCleaner
本插件所用所有代码均为原创,不存在借用/抄袭等行为
看起来不错诶,支持原创嗷!
看起来十分好 不错
很棒的插件!
66666好东西 下载
喜欢这样简洁功能又多的插件!!支持
希望能多添加一个 清理的时候 是否提示玩家 (就是可以全程后台运行,不需要任何提示)
本帖最后由 小五萌萌哒 于 2019-11-17 21:37 编辑
不错 就是要报错是不是最新版本 用的是1-1
不错 就是要报错是不是最新版本 用的是1-1
小五萌萌哒 发表于 2019-11-17 21:28
不错 就是要报错是不是最新版本 用的是1-1
请提供报错信息
非常好的插件
zhanshi123 发表于 2019-11-17 21:52
请提供报错信息
翻译过来就是 在卸载插件时出现错误(是否为最新版本)
paper 221 1.14.4
小五萌萌哒 发表于 2019-11-18 18:32
翻译过来就是 在卸载插件时出现错误(是否为最新版本)
paper 221 1.14.4
只有这个信息没有用
要完整的报错信息
zhanshi123 发表于 2019-11-19 23:38
只有这个信息没有用
要完整的报错信息
重载时候报错
[21:04:12 WARN]: Unexpected exception while parsing console command "ac reload"
org.bukkit.command.CommandException: Unhandled exception executing command 'ac'
in plugin AdvancedCleaner v1.1
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[pat
ched_1.14.4.jar:git-Paper-199]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:15
9) ~[patched_1.14.4.jar:git-Paper-199]
at org.bukkit.craftbukkit.v1_14_R1.CraftServer.dispatchCommand(CraftServ
er.java:739) ~[patched_1.14.4.jar:git-Paper-199]
at org.bukkit.craftbukkit.v1_14_R1.CraftServer.dispatchServerCommand(Cra
ftServer.java:701) ~[patched_1.14.4.jar:git-Paper-199]
at net.minecraft.server.v1_14_R1.DedicatedServer.handleCommandQueue(Dedi
catedServer.java:456) ~[patched_1.14.4.jar:git-Paper-199]
at net.minecraft.server.v1_14_R1.DedicatedServer.b(DedicatedServer.java:
418) ~[patched_1.14.4.jar:git-Paper-199]
at net.minecraft.server.v1_14_R1.MinecraftServer.a(MinecraftServer.java:
1075) ~[patched_1.14.4.jar:git-Paper-199]
at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.jav
a:919) ~[patched_1.14.4.jar:git-Paper-199]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_181]
Caused by: java.lang.NullPointerException
at me.zhanshi123.advancedcleaner.Main.onDisable(Main.java:95) ~[?:?]
at me.zhanshi123.advancedcleaner.command.sub.ReloadCommand.onCommand(Rel
oadCommand.java:16) ~[?:?]
at me.zhanshi123.advancedcleaner.command.CommandsExecutor.handle(Command
sExecutor.java:48) ~[?:?]
at me.zhanshi123.advancedcleaner.command.CommandsExecutor.onCommand(Comm
andsExecutor.java:27) ~[?:?]
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[pat
ched_1.14.4.jar:git-Paper-199]
... 8 more
1.7.10不配用这个么
小五萌萌哒 发表于 2019-11-21 21:07
重载时候报错
[21:04:12 WARN]: Unexpected exception while parsing console command "ac reload"
这个应该是你禁用了实体清理
然后重载引发的bug
不重载的话不影响使用
下个版本修复
zhanshi123 发表于 2019-11-22 23:07
这个应该是你禁用了实体清理
然后重载引发的bug
不重载的话不影响使用
嗯是的 1.14.4清实体会影响某些红石机器使用
坐等下版本
很不错呢,比neverlag扫地更好用呢
很好的插件
感谢分享
很好的插件
一直在找的插件,谢谢楼主分享
[17:23:29] [Server thread/INFO]: [AdvancedCleaner] Disabling AdvancedCleaner v1.1
[17:23:29] [Server thread/ERROR]: Error occurred while disabling AdvancedCleaner v1.1 (Is it up to date?)
java.lang.NullPointerException: null
at me.zhanshi123.advancedcleaner.Main.onDisable(Main.java:95) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265) ~[patched_1.15.2.jar:git-Paper-118]
at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:372) ~[patched_1.15.2.jar:git-Paper-118]
at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:468) ~[patched_1.15.2.jar:git-Paper-118]
at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:454) ~[patched_1.15.2.jar:git-Paper-118]
at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:447) ~[patched_1.15.2.jar:git-Paper-118]
at org.bukkit.craftbukkit.v1_15_R1.CraftServer.disablePlugins(CraftServer.java:404) ~[patched_1.15.2.jar:git-Paper-118]
at net.minecraft.server.v1_15_R1.MinecraftServer.stop(MinecraftServer.java:742) ~[patched_1.15.2.jar:git-Paper-118]
at net.minecraft.server.v1_15_R1.DedicatedServer.stop(DedicatedServer.java:752) ~[patched_1.15.2.jar:git-Paper-118]
at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:974) ~[patched_1.15.2.jar:git-Paper-118]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_101]
1.15.2关服的时候就出现这样的报错
[17:23:29] [Server thread/ERROR]: Error occurred while disabling AdvancedCleaner v1.1 (Is it up to date?)
java.lang.NullPointerException: null
at me.zhanshi123.advancedcleaner.Main.onDisable(Main.java:95) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265) ~[patched_1.15.2.jar:git-Paper-118]
at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:372) ~[patched_1.15.2.jar:git-Paper-118]
at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:468) ~[patched_1.15.2.jar:git-Paper-118]
at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:454) ~[patched_1.15.2.jar:git-Paper-118]
at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:447) ~[patched_1.15.2.jar:git-Paper-118]
at org.bukkit.craftbukkit.v1_15_R1.CraftServer.disablePlugins(CraftServer.java:404) ~[patched_1.15.2.jar:git-Paper-118]
at net.minecraft.server.v1_15_R1.MinecraftServer.stop(MinecraftServer.java:742) ~[patched_1.15.2.jar:git-Paper-118]
at net.minecraft.server.v1_15_R1.DedicatedServer.stop(DedicatedServer.java:752) ~[patched_1.15.2.jar:git-Paper-118]
at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:974) ~[patched_1.15.2.jar:git-Paper-118]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_101]
1.15.2关服的时候就出现这样的报错
这个厉害,顶起来
Fur_Xia 发表于 2020-2-26 17:26
[17:23:29] [Server thread/INFO]: [AdvancedCleaner] Disabling AdvancedCleaner v1.1
[17:23:29] [Server ...
不影响使用
下个版本修复
原创插件很棒!支持~
Object result = invocable.invokeFunction("isNeedToClean", itemStack.hasItemMeta(), itemStack.getEnchantments().size());
script.js 里面 只有java传过来这两个固定的参数么
script.js 里面 只有java传过来这两个固定的参数么
谢谢 很好用的插件
支持原创!在服务器里看服务器娘已经有点厌烦了- -
请问这个插件如何防止矿车被扫走?
支持1.15.2的版本是哪一个啊
海灵_DD 发表于 2020-3-6 12:05
支持1.15.2的版本是哪一个啊
都支持的
推荐!已经安装到服务端!
请问可否对实体清理也启用类似的js脚本功能?或者说直接加入被命名的怪物无法被清理的功能?
感谢楼主的分享
能不能清理怪物啊
QAQ我报错了
535223628 发表于 2020-3-15 04:06
QAQ我报错了
提供启动时的报错
非常好用的插件!
智能的扫地大妈
很不错的插件支持
建议功能
不允许清理地面上掉落物世界名称
不允许清理地面上掉落物世界名称
535223628 发表于 2020-3-16 00:41
我输入/ac 报错 用的是jre64 moshi服务端
服务端问题 可以考虑关闭js部分功能
zhanshi123 发表于 2020-3-19 19:51
服务端问题 可以考虑关闭js部分功能
wuwuwu 明明这么喜欢这个插件的说
找到了一款超级棒的插件,这下就不卡顿问题了
好的插件都是你做的 = = 送你上第一页 推荐给全部人 新手点赞 = =
挺不错的清理插件,顶一个
打扰下...请问1.16能用吗
很不错的插件