Giter VIP home page Giter VIP logo

jiongjionger / neverlag Goto Github PK

View Code? Open in Web Editor NEW
91.0 12.0 21.0 422 KB

一个专注于优化我的世界服务端性能、减少延迟、修复服务端/其他常用插件BUG、限制或禁用破坏多人游戏平衡的游戏机制的插件(A plugin that focuses on optimizing minecraft server performance, reducing server lag, fix server and popular plugin bug, limiting or disabling the game mechanism that hurt multiplayer balances.)

License: GNU General Public License v3.0

Java 100.00%
minecraft-plugin craftbukkit spigot-plugin performance-monitoring laggreduce optimization-tools

neverlag's Introduction

NeverLag (WIP)

一个专注于优化我的世界服务端性能、减少延迟、修复服务端/其他常用插件BUG、限制或禁用破坏多人游戏平衡的游戏机制的插件。此插件尚未完工。
A plugin that focuses on optimizing Minecraft server performance, reducing server lag, fix server and popular plugin bug, limiting or disabling the game mechanism that hurt multiplayer balances.

主要功能

修复服务端/热门插件BUG

  • 修复老版本MOD服骨粉刷方块/物品的BUG
  • 修复部分版本服务端和某些插件多个玩家一起访问同一个容器刷物品的BUG
  • 修复1.7版本服务端聊天使用某个特殊符号和颜色代码蹦服/蹦客户端的BUG
  • 修复部分版本服务端使用超长内容创建牌子蹦服的BUG
  • 修复部分版本服务端流水+头颅+比较器+漏斗无限蹦服的BUG
  • 修复离线模式服务端,不同ID大小写UUID不同导致可以同时登录的BUG
  • 修复在某个特殊情况丢弃物品可以双倍的BUG(具体实现不便透露,直至1.12才被修复)
  • 修复使用活塞可以刷铁轨的BUG
  • 修复部分版本矿车+地狱门可以一定概率刷物品的BUG
  • 修复1.8.8以前的版本卡出负数物品可以无限使用的BUG
  • 修复部分版本服务端在下界使用特殊手段在加载与未加载区块边界用漏斗刷物品的BUG
  • 修复部分版本服务端配合取消了PlayerPlaceEvent事件后没取消物理事件,导致可以用门刷甘蔗、仙人掌的BUG
  • 修复1.8版本以后的服务端可以用粘液块和活塞创造永动机导致卡服的游戏机制
  • 修复快捷商店(QuickShop)使用大箱子一边出售一边收购导致的刷物品BUG
  • 修复在无权限的领地、地皮等地方使用铁砧等物品将玩家带皮肤的头颅等破坏为骷髅头
  • 限制使用怪物蛋右键刷怪笼可以改变刷怪笼类型的游戏机制(很多多人服务器都会贩卖怪物蛋,特别是动物蛋)
  • 限制特定世界村民交易的功能(防止多人游戏里物品和附魔书快速贬值)
  • 限制创造模式的玩家使用ALL-U-WANT等MOD创造非法物品或者生存模式玩家利用ALL-U-WANT等同类MOD利用书本签名虚体卡实体创造非法物品、附魔书

清理功能

  • 定时清理地面掉落物(可以设置不清理的世界、不清理的物品种类、附近有玩家不清理、提前通知、悬浮倒计时等)
  • 定时清理实体(可以设置不清理的世界、不清理的实体类别、附近有玩家不清理、提前通知等)
  • 定时清理密集实体,密集的实体例如大量动物在1X1的范围内不但会产生大量碰撞箱导致服务器卡顿,还会导致附近的玩家客户端FPS骤降甚至掉线
  • 高频红石检测与清理(红石线路和比较器可以分开设置阀值)
  • 自动清理非法类型的刷怪笼,例如玩家使用怪物蛋修改后的刷怪笼,可以自定义清理或者修改为自然类型

优化与控制功能

  • 减少火焰蔓延间隔,提升服务器流畅度
  • 自定义开关爆炸破坏方块效果
  • 让热门区块保持在内存更长的时间,减少热门区块加载和卸载产生的不必要开销
  • 让出生点区块不常驻内存,如果有多个世界,可以减少不少内存占用
  • 限制高空流水
  • 自定义开关TNT的链式爆炸效果
  • 自定义开关区块卸载时清理实体的功能(可指定清理类型)
  • 自定义设置玩家聊天和使用命令的间隔时间
  • 自定义开关跳跃破坏农田的游戏机制
  • 自定义设置实体生成概率(可以通过自然生成、村庄生成铁傀儡,地狱门生成猪人等条件设置概率,概率为0即为禁止)
  • 自定义开关限制实体最大数量(可按动物、怪物等类型设置,也可以按怪物蛋、刷怪笼等条件设置)
  • 自定义限制实体穿越传送门的功能
  • 自定义限制一定范围内的区块内tiles的数量,例如限制附近只能放置50个漏斗来避免玩家制造不必要的大型红石传输设备卡服
  • 自定义在TPS过低时执行指定操作(例如清理掉落物、清理实体、执行某些指令、显性调用gc方法等)
  • 使用PandaWire替换原生红石线路算法,实现大幅提升红石性能减少红石设备带来的开销

命令与其他

  • reload 重新加载配置文件
  • ping 可以以GUI的形式查看在线玩家的真实网络延迟(排序显示)
  • benchmark 测试服务器单线程计算性能
  • clear 手动清理指定实体类型
  • gc 手动调用垃圾回收来回收内存
  • hardware 列举服务器硬件和操作系统信息(包含物理内存总量、剩余量、操作系统版本、JVM版本和启动参数、CPU具体信息等,防止一些黑心面板服)
  • info 查看服务端信息(包含当前服务端可用内存、最大内存、分配内存、使用内存、运行时间、平均每秒红石计算次数、实时TPS、平均TPS、按世界显示在线玩家、区块数量、实体数量(具体到动物和怪物数量)、tiles数量(具体到箱子、漏斗、熔炉等每一个类型的数量)
  • chunkinfo 按照指定类型的数量对当前所有加载的区块排序统计

制作中(尚未完工)

  • 插件性能分析(查询和排序所有插件的性能和占用情况)

权限节点

  • neverlag.command.benchmark
  • neverlag.command.chunkinfo
  • neverlag.command.clear
  • neverlag.command.gc
  • neverlag.command.hardware
  • neverlag.command.info
  • neverlag.command.ping
  • neverlag.limit.hopper.<数量>
  • neverlag.limit.dispenser.<数量>
  • neverlag.limit.piston.<数量>
  • neverlag.limit.dropper.<数量>
  • neverlag.bypass.cooldown.chat
  • neverlag.bypass.cooldown.command

联系方式

Email: [email protected]

neverlag's People

Contributors

jiongjionger avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

neverlag's Issues

Project format

I don't know how to test it and I even don't know the dependence of this project,perhaps you should format this project to the mvn etc.

建议:增加插件报错分析

新手腐竹看不懂插件报错,希望可以在插件报错的时候直接中文显示出错的插件名字,事件的名字

建议:添加插件重复提示

由于众所周知的原因,一些腐竹回将两个相同的插件(文件名不同)放入plugins中,导致服务端加载插件时出错。故建议NeverLag能加入类似问题的提醒帮助腐竹解决报错。

建议:添加主线程休眠功能

不知道可不可行,我是BC服的,有时候某些区服实在太占内存但是又不想关,能不能在服务器没人的时候休眠主线程(相当于关服了),只留一个线程检测玩家进服,如果玩家进服再重新启动主线程(就是开服),除了时间长一点,应该会很好优化内存占用吧

neverlag 1.3.0 在Paper version git-Paper-243 (MC: 1.14.4) (Implementing API version 1.14.4-R0.1-SNAPSHOT)中出现粘液块无法被粘液活塞推动的问题

#请不要修改Version
Version: 1

# 清理掉落物品
ClearItem:
  #是否开启
  Enable: true
  #不清理的世界名字
  NoClearItemWorld:
  - 'noclearworld'
  #清理周期
  Delay: 900
  #不清理的物品ID,如贵重物品
  NoClearItemIDList:
  #钻石铲
  - 277
  #钻石锄
  - 293
  #钻石稿
  - 278
  #钻石斧
  - 279
  #钻石剑
  - 276
  #钻石头盔
  - 310
  #钻石胸甲
  - 311
  #钻石裤
  - 312
  #钻石鞋
  - 313
  #铁套
  - 256
  - 257
  - 258
  - 267
  - 292
  - 306
  - 307
  - 308
  - 309
  #金套
  - 283
  - 314
  - 315
  - 316
  - 317
  #弓
  - 261
  #锁链套
  - 302
  - 303
  - 304
  - 305
  #附魔书
  - 403
  #信标
  - 138
  #钻石
  - 264
  - 57
  #铁
  - 265
  - 42
  #金
  - 266
  - 41
  #绿宝石
  - 388
  - 359
  #是否清理展示框
  ClearItemFrame: false
  #是否清理船
  Boat: false
  #是否清理经验球
  ExpBall: true
  #是否清理正在坠落的方块
  FallingBlock: false
  #是否清理画
  Painting: false
  #是否清理矿车
  Minecart: false
  #是否清理箭头
  Arrow: true
  #是否清理雪球
  Snowball: true
  #清理时的提示信息
  Message: '&6[扫地小红]&a扫掉了 &c%COUNT% &a个垃圾!我真棒!'
  #清理前的提示
  PreMessage: '&4[扫地小红]&c地上的垃圾还有 &7%TIME% &c秒就要被我扫掉了哦!'

#实体清理
ClearEntity:
  #是否开启
  Enable: true
  #清理周期
  Delay: 1500
  #是否仅到达数量上限才清理
  OnlyClearWhenLimit: true
  #限制数量
  Limit: 800
  #是否清理动物
  Animals: false
  #是否清理怪物
  Monster: true
  #是否清理鱿鱼
  Squid: true
  #是否清理村民
  Villager: false
  #清理时的提示信息
  Message: '&b[扫地小红]&a吃掉了 &c%COUNT% &a个蜘蛛!我真棒!'

#红石类
RedStone:
  #是否开启高频红石检测
  Enable: true
  #高频红石阀值
  Limit: 240
  #检测周期
  Time: 10
  #清理的物品ID
  Clear:
  #红石线
  - 55
  #红石块
  - 152
  #红石火把
  - 75
  - 76
  #是否掉落物品
  Drop: true
  #是否公告
  IsMessage: true
  #公告消息内容
  Message: '&b[&2忆雨bot&b]&a发现&c高频&a红石!已经被我吃掉啦!请不要&c恶意&a使用高频红石!!&c位置为:%Location%, 附近玩家: %Player%'

#区块类
Chunk:
  #Spawn区块是否不常驻内存
  #若使用了多世界插件,开启本功能可以有效减少内存的占用
  NoSpawnChunk: false

#保护农田不被踩踏
#防御熊孩子在他人领地农田跳跃破坏农田
ProtectFarm:
  Enable: true

#爆炸不破坏方块、物品
#关闭爆炸破坏可以有效减少爆炸产生的计算力以及避免地形被破坏
AntiExplode:
  Enable: false

#防御小号爆服
AntiBot:
  Enable: true
  #限制一个IP在额定时间内能登录的帐号数量
  Limit: 3
  #限制一个IP在多少时间能登录额定的帐号数量
  Time: 180
  #IP白名单
  WhiteList:
  - '127.0.0.1'
  Message: '&b您在短时间内登录了太多小号,喝杯茶休息片刻吧,请稍后再试。'

#防御Motd/Ping压测蹦服
#低于1.8的版本强烈推荐开启
AntiMotdPing:
  Enable: true

#防止实体农场(密集)
#定时检测1X1大小内的实体数量,如果大于阀值则清理
#防止大量实体在狭小空间内可以有效解决刷怪笼自动化和挂机导致的卡顿
#该功能也能有效防御恶意实体密集的卡服行为
AntiFarmMob:
  Enable: true
  Time: 30
  Limit: 10

#限制实体总数量
MobLimit:
  Enable: true
  #总实体数量超过设定则不再生成动物
  Animal: 250
  #总实体数量超过设定则不再生成怪物
  Monster: 500
  #区块怪物实体超过设定数量,刷怪笼不工作
  SpawnerMobChunkNum: 64

#限制使用命令和聊天的频率
ChatCommandRate:
  Enable: 
  #聊天间隔时间(秒)
  ChatDelay: 0.5
  #使用命令间隔时间(秒)
  CommandDelay: 0.5
  #命令超频的提示语
  CommandMessage: '&e[&2忆雨bot&e]&b您输入指令的速度太快了,喝杯茶休息几秒吧 :)' 
  ChatMessage: '&e[&2忆雨bot&e]&b人家都要被你刷屏了,速度慢一点啦~'
  Message: '&e[&2忆雨bot&e]&b请不要在人家服务器里打小广告!'
  #命令白名单,在该白名单的命令无视间隔时间
  #仅需添加命令的开头部分。例如/res tp,仅需添加/res
  #不需要考虑大小写的问题
  CommandWhiteList:
  - '/spawn'
  - '/back'
  - '/res'

#限制刷怪速率
#设置为100则不做限制,设置为0则直接禁止,单位是百分比
#本功能主要用于平衡、禁止自动化建筑,如刷铁塔、刷金塔、刷萤石、红石塔等
SpawnRate:
  Enable: false
  #设置特殊区块(女巫、史莱姆)的刷怪速度,单位为百分比
  ChunkRate: 100
  #刷怪笼生成怪物速度
  SpawnerRate: 100
  #村庄生成铁傀儡的速度,设置为0可以禁止刷铁塔等不平衡的自动化建筑
  IronRate: 80
  #普通、自然条件的生成速度
  CommonRate: 100
  #传送门的生成速度,设置为0可以禁止猪人通过传送门,防止建造刷金塔
  PortalRate: 100
  #是否限制刷怪笼刷出的怪掉落物品
  AntiDropFromSpawner: false
  #是否限制刷怪笼刷出的怪掉落经验
  AntiDropExpFromSpawner: false

#防御容器漏洞刷物品
AntiChestBug:
  Enable: true
  Message: '&b[&2忆雨bot&b]&e这个物品还在使用,你无法破坏。'

#是否防御门作弊
#门的漏洞存在于所有版本的服务端,强烈建议打开本功能
#该漏洞可以在领地等限制权限的地区无限刷甘蔗、仙人掌
AntiDoorCheat:
  Enable: true

#是否防御骨粉作弊
#骨粉漏洞仅存在于1.6.4~1.7.10的MCPC+服务端,其他版本无需开启本功能
#可以自行添加MOD中的物品ID,如暮色树苗
AntiBonemealCheat:
  Enable: false
  BlackList:
  #树苗
  - 6
  #红色蘑菇
  - 39
  #灰色蘑菇
  - 40

#是否防御地狱漏斗作弊
#禁止地狱的漏斗运行,防止利用bug刷物品
#建议全版本服务器开启本功能
AntiNetherHopperCheat:
  Enable: false

#是否开启防御矿车作弊
#开启本功能后,漏斗矿车、矿车、TNT矿车等所有矿车无法通过传送门
#从而防御地狱门刷物品作弊,地狱门刷物品bug几乎通杀所有版本,虽成功率不高,但建议打开本功能
AntiMinecraft:
  Enable: false

#防御一些其他插件的漏洞
#目前防御的有:
#signshop非法执行任意命令
#chestshop无限刷钱
FixPluginBug:
  Enable: false

#是否开启防御无限物品bug
#该bug覆盖1.6.4~1.8,通过特殊手法可以导致某些物品的数量小于0,从而实现该物品的无限使用
#若使用了某些MOD,利用该bug使得物品的数量小于0,更是会导致服务器崩溃,存档损坏,重启报错导致无法开服
#强烈建议开启本功能
AntiCountBug:
  Enable: false

#是否开启防御粘液块制作的永动机蹦服
#仅有1.8+的服务器才需开启
AntiPMM:
  Enable: false

#是否开启防御快捷商店大箱子刷钱的bug
#没有安装QuickShop可以不用开启
FixQuickShop:
  Enable: true
  Message: '&b[&2忆雨bot&b]&e快捷商店禁止使用大箱子!'

#是否开启防御牌子蹦服的bug
#建议所有版本的服务端开启
AntiCrashSign:
  Enable: true
  Message: '&b[&2忆雨bot&b]&e你的牌子内容包含非法字符或内容过长。'

#是否开启防御聊天发送特殊代码崩掉客户端
#只有部分客户端才会有这个bug,但是强烈建议开启
AntCrashChat:
  Enable: true

#是否开启防御无限刷铁轨
AntiRail:
  Enable: false

#是否开启防御背包编辑器(例如ALL-U-WANT)
#如果有创造服或者有玩家拥有创造,强烈建议打开
#某则玩家不但可以制造神器,还可以用来卡服蹦服
#本功能兼容全版本,但需要前置插件
AntiInvEditor:
  Enable: true

#是否防御作弊MOD
#感谢fromgate为本功能提供核心代码
#原理为在用户进入服务器时发送特定的代码,让作弊MOD自行关闭
#你可以根据需要自行增减Code下面的代码
#给用户添加 NeverLag.NoCheck 权限,则不对该用户进行MOD作弊防御
AntiCheatMod:
  Enable: true
  Code:
  # CJB Xray 防御CJB透视
  - '&3 &9 &2 &0 &0 &2 '
  # CJB Fly 防御CJB作弊飞行
  - '&3 &9 &2 &0 &0 &1 '
  # CJB Radar 防御CJB雷达
  - '&3 &9 &2 &0 &0 &3 '
  # Rei's Minimap 防御Rei小地图
  - '&0&0&1&e&f'
  - '&0&0&2&3&4&5&6&7&e&f'
  # Zan MiniMap 防御Zan小地图
  - '&3 &6 &3 &6 &3 &6 &e'
  - '&3 &6 &3 &6 &3 &6 &d'
  # Automap 防御AutoMap
  - '&0&0&1&f&e'
  - '&0&0&2&f&e'
  - '&0&0&3&4&5&6&7&8&f&e'
  # SmartMove 防御灵活动作作弊
  - '&0&1&0&1&2&f&f'
  - '&0&1&3&4&f&f'
  - '&0&1&5&f&f'
  - '&0&1&6&f&f'
  - '&0&1&7&f&f'
  - '&0&1&8&9&a&b&f&f'
  # Zombe 防御Zombe秒破坏和飞行等作弊
  - '&f &f &2 &0 &4 &8 '
  - '&f &f &4 &0 &9 &6 '
  - '&f &f &1 &0 &2 &4 '
  # Schematica 防御Schematica模组
  # 强烈建议所有服务器都开启对它的防御
  # 该模组可以盗取服务器里的任何建筑
  - '&0&2&0&0&e&f'
  - '&0&2&1&0&e&f'
  - '&0&2&1&1&e&f'

建议添加修复GUI界面刷物品功能

有一些服务器插件会让镶嵌/锻造/分解等GUI界面刷物品...

个人思路:
玩家把物品放入GUI界面内 直接关闭客户端 GUI物品依然保存在内 玩家重上服务器 物品不会返回背包 会保存在GUI界面内...

求编译~

求编译,我是个Python程序员只熟悉Python,对Java表示没法安装eclipse,求解决……

建议:集成针对用户名大小写的修复

建议添加一个可选修复项,在玩家加入服务器时检测是否存在同名不同大小写的已登录(或已存在)玩家,并做出相关反映(例如提示使用正确大小写)

2.0缺少语言文本而报错

试了一下,不过我的系统默认是英文,插件没有en_GB.yml文件报错,我自己弄好加上去的话只能解包放入,请问能否在NeverLag文件夹创建一个lang文件夹,可以直接放入直接的语言文本;另外就是给插件设置一个如果遇到不支持的语言时,使用默认的zh_CN.yml文本,而不是直接报错关闭.谢谢!

[16:50:08 INFO]: [NeverLag] Enabling NeverLag v2.0-SNAPSHOT
[16:50:08 ERROR]: Error occurred while enabling NeverLag v2.0-SNAPSHOT (Is it up to date?)
java.lang.RuntimeException: Language file en_GB.yml not found!
at cn.jiongjionger.neverlag.I18n.load(I18n.java:44) ~[?:?]
at cn.jiongjionger.neverlag.NeverLag.onEnable(NeverLag.java:67) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264) ~[patched_1.12.1.jar:git-Paper-1196]
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:316) [patched_1.12.1.jar:git-Paper-1196]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:404) [patched_1.12.1.jar:git-Paper-1196]
at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugin(CraftServer.java:382) [patched_1.12.1.jar:git-Paper-1196]
at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugins(CraftServer.java:331) [patched_1.12.1.jar:git-Paper-1196]
at net.minecraft.server.v1_12_R1.MinecraftServer.t(MinecraftServer.java:442) [patched_1.12.1.jar:git-Paper-1196]
at net.minecraft.server.v1_12_R1.MinecraftServer.l(MinecraftServer.java:403) [patched_1.12.1.jar:git-Paper-1196]
at net.minecraft.server.v1_12_R1.MinecraftServer.a(MinecraftServer.java:341) [patched_1.12.1.jar:git-Paper-1196]
at net.minecraft.server.v1_12_R1.DedicatedServer.init(DedicatedServer.java:290) [patched_1.12.1.jar:git-Paper-1196]
at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:616) [patched_1.12.1.jar:git-Paper-1196]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_152-ea]
[16:50:08 INFO]: [NeverLag] Disabling NeverLag v2.0-SNAPSHOT

建议:插件的一些Bug或者说改进

乐乐我,,,诺,我是真心来提建议的,
嗯。

1.BlockExplodeEvent在1.8才出现,老版本一旦有这个监听器会在开启时报错。
2.插件如果已经有了反负数物品,那么就无需防御玩家破坏正在打开的箱子,可能会浪费资源。
3.我记得刷怪笼类型好像也可以用发射器修改刷怪类型,这条不确定,如果错了求原谅。

默认配置文件的一处错误

NeverLag1.3.0_ANSI.jar

默认生成的配置文件NeverLag\config.yml 在第74行 为: Boat: fasle
前后文:
#是否清理船
Boat: fasle
#是否清理经验球
ExpBall: true

这应该是不小心打错了 ,应为为false 而不是fasle

Bug或者建议?不要在低TPS时gc内存。

嗯,我刚才看到了一个类:LowTpsAction,
看起来是在服务器tps低的时候执行。
但是我非常不建议在低TPS时进行gc。
亲测每次gc都会导致服务器短暂接近一秒的卡顿。
人多时可能更长。
如果在低TPS时进行gc,绝对是火上浇油。

所以吧,Gc功能我建议应该定期执行,当服务器卡顿反而不应该执行了。

至于释放内存,应该弄区块卸载比较好吧。

新的BUG汇报:某机制可使玩家无视木牌锁箱

没错又是我shaokeyibb
今天发现了一个问题,我不知道他是mc的bug还是neverlag的锅还是NPC的问题,所以我在这里告诉你们:当玩家离开箱子或是其他东西的时候,这些东西会自动变成石头(貌似是为了节约CPU占用?),如果在服务器网络卡顿(或TPS较低)时,玩家可快速跑到那个石头旁然后当石头变成箱子的时候右键!然后箱子就被打开了!

请问我该怎么编译这个插件

2.0版虽然没有完工,但1.3版在我的1.12的服务端已经无法正常运行,请问我编译这个2.0版要用到什么api呢,另外bukkit api我该用什么版本呢?求大佬解答

建议:刷怪笼相关功能

添加控制"使用怪物蛋修改刷怪笼怪物类型"特性的选项
添加"自动移除非法类型的刷怪笼"功能(以上功能的补救措施)

neverlag和史莱姆方块(匠魂)以及活塞混合产生的error

[08:40:41] [Server thread/ERROR] [Minecraft/]: Could not pass event BlockPistonExtendEvent to NeverLag v1.3.0
org.bukkit.event.EventException
	at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:338) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT]
	at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[RegisteredListener.class:1.7.10-R0.1-SNAPSHOT]
	at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:507) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT]
	at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:492) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT]
	at net.minecraft.block.BlockPistonBase.func_150078_e(BlockPistonBase.java:144) [app.class:?]
	at net.minecraft.block.BlockPistonBase.func_149695_a(BlockPistonBase.java:114) [app.class:?]
	at net.minecraft.world.World.func_147460_e(World.java:1099) [ahb.class:?]
	at net.minecraft.world.World.func_147459_d(World.java:1036) [ahb.class:?]
	at net.minecraft.block.BlockRedstoneWire.func_150177_e(BlockRedstoneWire.java:83) [ana.class:?]
	at net.minecraft.block.BlockRedstoneWire.func_149695_a(BlockRedstoneWire.java:330) [ana.class:?]
	at net.minecraft.world.World.func_147460_e(World.java:1099) [ahb.class:?]
	at net.minecraft.world.World.func_147441_b(World.java:1062) [ahb.class:?]
	at net.minecraft.block.BlockRedstoneDiode.func_149911_e(BlockRedstoneDiode.java:247) [akj.class:?]
	at net.minecraft.block.BlockRedstoneRepeater.func_149749_a(SourceFile:132) [anf.class:?]
	at net.minecraft.world.chunk.Chunk.func_150807_a(Chunk.java:655) [apx.class:?]
	at net.minecraft.world.World.func_147465_d(World.java:812) [ahb.class:?]
	at net.minecraft.block.BlockRedstoneDiode.func_149674_a(BlockRedstoneDiode.java:73) [akj.class:?]
	at net.minecraft.world.WorldServer.func_72955_a(WorldServer.java:702) [mt.class:?]
	at net.minecraft.world.WorldServer.func_72835_b(WorldServer.java:284) [mt.class:?]
	at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:931) [MinecraftServer.class:?]
	at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431) [lt.class:?]
	at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809) [MinecraftServer.class:?]
	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669) [MinecraftServer.class:?]
	at java.lang.Thread.run(Unknown Source) [?:1.8.0_121]
Caused by: java.lang.NoSuchFieldError: SLIME_BLOCK
	at jiongjionger.listener.AntiPMM.onBlockPistonExtend(AntiPMM.java:25) ~[?:?]
	at sun.reflect.GeneratedMethodAccessor257.invoke(Unknown Source) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_121]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_121]
	at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:334) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT]
	... 23 more

以上为报错,每次活塞动作都会发生该错误,有概率导致服务器卡死(玩家连接超时)

Project suggestions

I am so lucky that I will post the first issue in your project.
And I have some ideas about it.I found that you didn't do something to prevent the player copying items through nether portal.
I hope you can add a bug fixer about the nether portal.
As you know,the nether portals often become the cause of some item-copying bug,And player will also be trapped in it if someone else place blocks besides the portals.
I hope you can add the function soon.

希望dalao能看的懂我的垃圾英文

建议:Sponge服务端版本

对于sponge服务端,目前几乎没有反作弊的插件,甚至根本没有对漏洞和压测的防护插件,如果能做出sponge版本的插件,对这个新的服务端的领域做出的贡献是相当巨大的。

怪物清理相关

在服务端未添加插件时
怪物根据难度正常生成
但是添加插件后因怪物数量限制功能导致怪物及时在困难模式下也不会正常刷出
即使关闭怪物生成限制这个功能
以上问题出现在1.3.0版本
且1.10以后的协议库对插件一些事件报错
望重视

配置文件修改后自动还原的问题

我编译最新版本后 ,修改配置文件启动,结果配置文件被直接还原。调试后发现应该是插件本身的问题.。

cn.jiongjionger.neverlag.config.ConfigManagernoClearItemWorldnoClearItemIdnoClearEntityWorld等 HashSet 都没有初值,都是 null。

运行到 cn.jiongjionger.neverlag.config.AbstractConfig 第 85~89 行时:

Object def = f.get(this);
if (!config.contains(key)) {
    config.addDefault(key, def);
    return;
}

当不存在节点时就增加 default 值……但增加的值也是 null,null值节点在保存的时候被忽略,然后直接return 了。所以每次到这就不往下读配置,写出一遍初始配置,然后又启动又到这里重复一遍 ,配置怎么都读不了……

我表达的不是很清楚,望修复此问题……

疑似问题?

NeverLag清理掉落物品时貌似会连着Quickshop的悬浮物品一块清理掉。。。。希望修复

neverlag 1.3.0在Paper端出现 is it up to date问题

Paper version git-Paper-243 (MC: 1.14.4) (Implementing API version 1.14.4-R0.1-SNAPSHOT)
插件列表:banbadword, BanBadWords*, BKCommonLib, BungeeTabListPlus, ChairStairs*, ChestCommands, ColorMOTD*, Essentials, floodgate, GroupManager*, HolographicDisplays, ImageMaps, MiaoChat, Multiverse-Core, NeverLag*, PlaceholderAPI, ProtocolLib, ServerPingLib, ServerTeleport*, SuperVanish, Train_Carts, Vault, ViaBackwards, ViaRewind, ViaVersion, WorldBorder
(均最新版本)
错误信息:

[17:51:49 ERROR]: Error occurred while enabling NeverLag v1.3.0 (Is it up to date?)
java.lang.NoSuchMethodError: 'void com.comphenix.protocol.events.PacketAdapter.(org.bukkit.plugin.Plugin, com.comphenix.protocol.events.ConnectionSide, com.comphenix.protocol.events.ListenerPriority, java.lang.Integer[])'
at jiongjionger.NeverLag$1.(NeverLag.java:358) ~[?:?]
at jiongjionger.NeverLag.onEnable(NeverLag.java:359) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[patched_1.14.4.jar:git-Paper-243]
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:338) ~[patched_1.14.4.jar:git-Paper-243]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:420) ~[patched_1.14.4.jar:git-Paper-243]
at org.bukkit.craftbukkit.v1_14_R1.CraftServer.enablePlugin(CraftServer.java:467) ~[patched_1.14.4.jar:git-Paper-243]
at org.bukkit.craftbukkit.v1_14_R1.CraftServer.enablePlugins(CraftServer.java:381) ~[patched_1.14.4.jar:git-Paper-243]
at net.minecraft.server.v1_14_R1.MinecraftServer.a(MinecraftServer.java:474) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.DedicatedServer.init(DedicatedServer.java:290) ~[patched_1.14.4.jar:git-Paper-243]
at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:876) ~[patched_1.14.4.jar:git-Paper-243]
at java.lang.Thread.run(Thread.java:830) [?:?]

在另一个server Paper version git-Paper-243 (MC: 1.14.4) (Implementing API version 1.14.4-R0.1-SNAPSHOT)中,问题未出现。这两个文件(config。yml;neverlag1.3.0.jar 均相同)
插件列表:BanBadWords*, BungeeTabListPlus, ChairStairs*, ChestCommands, CoreProtect, Essentials, floodgate, GroupManager*, LockettePro, MiaoChat, Multiverse-Core, Multiverse-Inventories, Multiverse-NetherPortals, NeverLag*, PlaceholderAPI, ProtocolLib*, Residence, ServerTeleport*, SuperVanish, UBBDispenserShulkerBoxFixer*, Vault, ViaBackwards, ViaRewind, ViaVersion, WorldBorder
(均最新版本)

建议:添加服务器无人时自动休眠等问题

1.当服务器没有玩家时自动休眠服务器,减少内存占用
2.如果上面的不行的话那么能不能在没玩家的时候不要再进行掉落物清理了?这个在后台上面显示真的很坑。。。。
3.能不能进行动态内存调节,群组服表示这玩意会很有用

PaperSpigot1.8.8使用NeverLag1.3.0出错

PaperSpigot1.8.8使用NeverLag1.3.0出现Default system encoding may have misread config.yml
两种编码的插件都试过了,手动转码也试过了,不行
看到插件还在施工,就直接来Issue了=w=
望大佬测试一下
话说有没有啥同类插件啊,先救个急

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.