Skip to content

本页聚焦 HNCore 的基础安装方式、首次启动后会生成什么,以及当前版本里最重要的 storage.yml / auth.yml / 工具箱 / 脚本系统初始化点。

安装方式

HNCore 插件 jar 放入服务端 plugins 目录后启动服务器即可。

首启运行库说明

HNCore 当前通过 plugin.yml -> libraries 自动声明运行时 Java 库。

这意味着:

  • 首次在 Paper 1.20.x 上启动时,通常需要联网下载依赖
  • 运行库通常来自 Maven Central
  • 如果部署环境完全离线,建议先在可联网环境预热一次库缓存

基本信息

  • 插件名:HNCore
  • 主命令:/hncore
  • 命令别名:/hnc
  • 软依赖:PlaceholderAPIProtocolLibMythicMobsNeigeItemsBaikiruto

软依赖的意思是:没有它们插件通常也能启动,但相关联动能力可能不会接入。

启动前建议准备

  • 先备份现有服务端与插件目录
  • 确认服务端能正常识别新放入的插件 jar
  • 如果你计划直接使用脚本系统,首次启动后要检查 GroovyScripts/GroovyConfig/ 是否成功生成
  • 如果你计划接共享数据库、共享键值存储或 Redis 消息总线,首次启动后要检查 storage.yml 是否已生成
  • 如果你计划接 HN 系列付费模块或内部授权模块,首次启动后要检查 auth.yml 是否已生成

首次启动会发生什么

HNCore 在启用时通常会:

  1. 生成默认 config.yml
  2. 加载 storage.yml
  3. 加载 auth.yml
  4. 初始化核心公式策略 formula.groovy
  5. 初始化共享数据库与共享存储入口
  6. 初始化 ClusterBus / 集群控制面(节点 ID、transport、channel、ping 服务)
  7. 初始化统一授权接入配置与运行时入口
  8. 初始化 Groovy 脚本系统,并在 release-examples: true 时释放默认脚本与配置
  9. 加载 entity-names.yml
  10. 初始化工具箱与搜索别名字典
  11. 注册 /hncore/hnc 命令

首次启动后常见文件

plugins/HNCore/ 下通常会出现:

  • config.yml
  • storage.yml
  • auth.yml
  • entity-names.yml
  • toolbox-search-aliases.yml
  • GroovyScripts/
  • GroovyConfig/

其中:

  • config.yml:HNCore 主配置,负责 log.level、兼容旧 debugformula.groovyfeature-scripts
  • storage.yml:共享数据库、共享存储、键值 / PubSub 与 ClusterBus 入口
  • auth.yml:统一授权接入配置,负责授权中心地址、商品授权码与缓存策略
  • entity-names.yml:实体名称映射
  • toolbox-search-aliases.yml:工具箱搜索别名字典
  • GroovyScripts/:脚本文件
  • GroovyConfig/:脚本对应配置文件
  • GroovyConfig/README.txt:内置脚本与配置用途的文字说明

默认脚本说明

当前内置的默认脚本包括:

  • KeepInventory
  • NoHunger
  • WorldProtect
  • ExplosionProtect
  • AutoRespawn
  • EndermanProtect
  • DurabilityProtect
  • VoidProtect
  • PvpControl
  • MobSpawnControl
  • NoDrop
  • NoFireSpread
  • NoRain
  • NoFallDamage
  • FixedTime
  • ClearDroppedItems
  • NoDamageIndicator

其中,MobSpawnControl 适合用来让大厅、主城、新手区这类世界默认不再生成敌对生物,同时保留友好生物;也可按需要进一步关闭友好生物生成,并通过 allowed-spawn-reasons 保留命令、怪物蛋、工具箱召唤或刷怪笼。默认也会放行 MythicMobs 生物。NoDamageIndicator 依赖 ProtocolLib,ClearDroppedItems 则适合做地面掉落物定时保洁。

它们通常会在目录中出现,但是否真正生效,取决于:

  1. feature-scripts.enabled
  2. feature-scripts.groovy.enabled
  3. 对应 yml 里的 enabled

首启后建议立刻检查的 5 件事

1. 目录是否生成完整

如果 GroovyScripts/GroovyConfig/storage.ymlauth.ymltoolbox-search-aliases.yml 没生成,后续功能就无法按预期使用。

2. 示例释放是否符合预期

重点检查:

yml
feature-scripts:
  release-examples: true
  • true:自动释放默认示例脚本与配置
  • false:只保证目录存在,不自动释放示例文件

3. 主配置中的脚本系统是否开启

重点检查:

yml
feature-scripts:
  enabled: true
  groovy:
    enabled: true

4. storage.yml 是否保持在你预期的状态

如果你当前只是使用默认脚本,可以保持:

  • database.enabled: false
  • storage.mysql.enabled: false
  • storage.redis.enabled: false

如果你准备接共享数据库、共享键值存储、Redis Pub/Sub 或 ClusterBus,就从这里开始配置。更细的参数说明可继续看 storage.yml 配置说明ClusterBus 与集群控制面

5. 至少执行一次命令检查

text
/hncore scripts list
/hncore scripts enabled
/hncore status
/hncore cluster status
/hncore reload
  • scripts list:看系统识别到了哪些脚本
  • scripts enabled:看哪些脚本正在真正生效
  • status:看数据库 / MySQL / Redis / 键值 / PubSub / 统一授权 / 共享物品库是否符合预期
  • cluster status:看节点 ID、transport、channel 与 ClusterBus 状态
  • reload:看核心重载后这些状态是否真的已经重新建立

升级或替换版本时的建议

  • 先备份现有的 config.ymlstorage.ymlauth.ymlGroovyConfig/
  • 不要只覆盖 jar 后就直接忽略控制台输出
  • 若更新后脚本行为异常,优先重新核对各脚本配置并执行一次:
text
/hncore reload scripts
  • 若更新后数据库、授权或共享存储状态异常,优先检查:
text
/hncore reload

它会同时重载主配置、storage.ymlauth.yml、实体映射、脚本系统与共享存储状态。

HN 系列插件文档