GhostBuster Logger

基本信息

pl.asie.foamfix.ghostbuster.GhostBusterLogger —— 幽灵区块加载的记录与落盘。

静态开关

字段 默认 说明
debugChunkProviding false `/ghostbuster on
countNotifyBlock false 通知方块计数

两个字段都是 public static boolean 直接赋值,未加 volatile —— 跨线程可见性靠命令执行在主线程、hook 也在主线程保证。

方法

方法 行 说明
saveLogFile() 45 写日志文件,由 FMLServerStoppedEvent 触发
onProvideChunk(ChunkProviderServer, int x, int z) 106 被 GhostBusterHook 补丁注入到 ChunkProviderServer.provideChunk

onProvideChunk 的服务端筛选

第 136-137 行通过 classloader 反射加载并判断:

Class c = GhostBusterLogger.class.getClassLoader().loadClass(ste.getClassName());
if (MinecraftServer.class.isAssignableFrom(c)) { ... }

即只记录来自 MinecraftServer 子类的 stack trace 元素, 排除非服务端来源。

相关条目

源码

  • src/main/java/pl/asie/foamfix/ghostbuster/GhostBusterLogger.java