区域化性能
沿用 Folia 的区域线程调度模型,让彼此独立的世界区域并行处理,释放多核心处理器性能。
基于 Folia,继承 Luminol 特性与配置框架
专注 Bukkit 插件兼容、原版行为修复与高性能服务端体验
BakaFork 是面向新版本 Minecraft 的非官方 LightingLuminol 延续分支,在 Folia 区域化架构之上迁移老特性并持续修复。
沿用 Folia 的区域线程调度模型,让彼此独立的世界区域并行处理,释放多核心处理器性能。
保留 Luminol 配置体验,补充 Bukkit 调度兼容、品牌自定义与命令方块开关等生产所需能力。
稳定、兼容、可观测
自动识别插件 Folia 支持状态,按需选择区域调度器或兼容调度路径,并支持手动覆盖策略。
从 luminol_global_config.toml 加载品牌名称、实验功能、修复项与性能优化参数。
包含登录队列限制、方块更新保护、载具同步及区域化世界数据管理。
提供 TPS Bar、Region Profiler、Watchdog 与区块系统吞吐计数器。
处理区域线程下的方块更新、实体传送和线程安全问题,尽可能保持原版体验。
GitHub Actions 使用 Windows 环境自动应用补丁、构建 Paperclip,并上传可运行 JAR。
SIMD 向量化、CPU 亲和性绑定、村民呆滞化、传感器节流、投射物限制等多项优化。
碰撞行为模式、寻路修复、高速度修复、记忆清理、传送门限流等 12 项修复。
玩家、实体和区块都在同一个 Minecraft 世界中。传统核心把整个世界的工作压在一个主线程上;Folia 将相距较远的区域拆开,让多个 CPU 线程同时处理。
无论玩家分散得多远,所有区域都要等待同一个主线程。某一区域任务过多时,整个世界都会一起卡顿。
相距较远的区域分别运行。一个区域繁忙时,其他区域仍可由各自线程正常处理,充分利用多核心 CPU。
JDK、Git 与两条 Gradle 命令
PS git clone https://github.com/Baka-Sky/LightingLuminol-Fork.git
PS cd LightingLuminol-Fork
PS .\gradlew.bat applyAllPatches
PS .\gradlew.bat createPaperclipJar
首次启动后读取 luminol_config/luminol_global_config.toml
配置加载器在插件启动前完成读取,实验功能、性能优化和修复项均通过清晰的 TOML 分区管理。
[misc]
server_mod_name = "BakaCore"
[experiment.command]
enable_command_block = true
enable_tick_command = true
[unsupported.folia_scheduler_compatibility]
enabled = true
# luminol_config/luminol_global_config.toml
[misc]
server_mod_name = "LightingLuminol"
[experiment.command]
enable_command_block = true
enable_tick_command = true
# Windows Server 2025 / Windows 11
java -Xms4G -Xmx4G -XX:+UseG1GC \
-jar lightingluminol-26.2.jar nogui
# 兼容不支持 Folia 的 Bukkit 插件
[unsupported.folia_scheduler_compatibility]
enabled = true
# 修改后完整重启服务器
LightingLuminol 面向需要多核心扩展能力,同时希望保留 Luminol 功能与配置体验的服务端。
玩家分散在不同区域探索、建造时,让相距较远的区域并行运行。
多区域负载面对大量实体、玩家移动与插件任务,减少单主线程成为瓶颈的概率。
高玩家密度把不同位置的复杂运算分散到区域线程,避免所有区块争抢一个线程。
复杂区块运算为正在使用 Paper 系核心的服主提供清晰的迁移入口与兼容配置。
Paper 生态迁移成熟的 Bukkit API 与服务端基础
将独立区域交给多个线程处理
性能配置、修复与实用特性
基于 Luminol 的特性参考与代码移植
面向实际部署维护的 BakaFork
Windows 11 与 Windows Server 2025 均可运行,已有服务器迁移前请先完整备份。
安装 64 位 JDK,并确认 PowerShell 中 java -version 可用。
从 GitHub Actions 下载最新成功构建,将 Paperclip JAR 放进服务器目录。
同意 EULA 后启动一次,生成 Paper、Folia 与 Luminol 配置文件。
复制世界、插件和配置;逐个确认插件是否原生支持 Folia 调度器。
修改 luminol_global_config.toml 后停止并重新启动,不要使用热重载。
插件显示绿色启用不代表所有功能都线程安全。优先选择明确标注 Folia 支持的版本。
使用区域、全局和异步调度器,最适合生产环境。
可能可以加载,但传送、实体和区块操作仍可能失败。
在区域线程模型下可能出现异常、数据竞争或服务端崩溃。
查看作者说明,并在与生产服一致的环境中测试。
java -Xms4G -Xmx4G -jar lightingluminol-26.2.jar nogui.\gradlew.bat applyAllPatches.\gradlew.bat createPaperclipJarstop部署前最常遇到的几个问题
它基于 Folia 的区域化多线程架构,并迁移 Luminol 的配置与增强功能。它仍保留 Paper 生态基础,但线程模型与普通 Paper 不同。
Luminol 全局配置在服务端启动阶段读取。保存文件后需要输入 stop 正常停服,再完整启动服务器。
不能保证。插件必须正确适配 Folia 的区域调度模型。兼容开关只能辅助部分插件运行,不能把线程不安全的插件自动变安全。
stop 会依次保存玩家、世界与区块数据。直接终止 Java 或批处理窗口可能造成未保存数据丢失。
在 luminol_config/luminol_global_config.toml 的 experiment.command 分区中修改 enable_command_block,并完整重启。
打开 GitHub Actions,选择最新一次成功的 Build LightingLuminol 工作流,并下载其中的构建产物。