标签: Bukkit

2 篇文章

thumbnail
Minecraft 大型多人游戏的未来?—— MultiPaper
从今年早些时候开始关注 MultiPaper,到现在 MultiPaper 的完成度终于值得让我写一篇文章赞美一下了(好欸!  GitHubMultiPaper/MultiPaper   MultiPaper 诞生的背景 TPS 的概念 每个架设过 Minecraft 的服主都多多少少要和 TPS (ticks per second) 打交道,MC 这个游戏的游戏世界所有内容都基于一个循环进行计算,每一个循环称为 1 个tick,每秒循环 20 次,如果这一秒循环次数不够 20 次,则会出现卡顿的情况,服务器会在下一秒尝试多循环补偿 tick 丢失。 由于每个部分(方块、生物、AI等等)他们之…
thumbnail
Bukkit 通过 StackTrace 追踪调用者插件实例
有时候在编写 Bukkit 的插件的时候,需要追踪特定方法调用者,以做出不同的行为和响应。但由于 Bukkit 的插件生态系统不同的插件由不同的作者维护,请求其他开发者适配你的接口通常比较困难。 好在,有一种方式可以间接的获取调用者的插件名,进而可以通过 PluginManager 取得插件实例。 获取谁调用的方法通常通过 StackTrace 进行。低版本的 Java 可以通过 new 一个 Exception 获得,而高版本中,Java 提供了一个 StackWalker 更高性能的方式获取。本文中使用 StackWalker 进行演示,演示环境为(JDK 17 + Spigot 1.18…