主题
如果你只想先把 HNCore 跑起来,并尽快确认脚本系统、核心重载与工具箱都正常工作,可以按这份最短流程操作。
最短上线流程
1. 放入插件并启动一次服务器
将 HNCore 的 jar 文件放入服务端 plugins 目录后启动服务器。
插件在首次启动时,会通过 plugin.yml -> libraries 自动解析运行时 Java 库,这个过程通常是需要联网的;如果部署环境完全离线,建议先在可联网环境预热一次库缓存。
首次启动后,通常会生成:
plugins/HNCore/
├── config.yml # 主配置文件
├── storage.yml # 存储配置(数据库/Redis)
├── auth.yml # 统一授权配置
├── entity-names.yml # 实体名称映射
├── toolbox-search-aliases.yml # 工具箱搜索别名
├── GroovyScripts/ # Groovy 脚本目录
│ ├── KeepInventory.groovy
│ ├── NoHunger.groovy
│ └── ...
└── GroovyConfig/ # 脚本配置目录
├── KeepInventory.yml
├── NoHunger.yml
└── ...2. 先确认主配置中的脚本系统已开启
打开 plugins/HNCore/config.yml,确认以下配置处于合理状态:
yml
log:
level: INFO
feature-scripts:
enabled: true
release-examples: true
groovy:
enabled: true如果你只是正常上线,建议先保持 log.level: INFO;排障时再临时切到 DEBUG 或 TRACE。
如果 release-examples: true,HNCore 会在首次启动时释放默认示例脚本与配置。
3. 再看一眼 storage.yml 与 auth.yml
当前版本把数据库 / 共享存储配置独立放到了 storage.yml,把统一授权接入配置独立放到了 auth.yml。
如果你只是先体验默认脚本,可以先保持:
yml
database:
enabled: false
storage:
mysql:
enabled: false
redis:
enabled: false
cluster:
transport: auto也就是说,第一次上手不需要先把 MySQL / Redis 配起来。
如果你当前还没有接 HN 系列付费模块,auth.yml 也可以先保持默认:
yml
auth:
enabled: false在这种情况下,HNCore 启动日志里通常会看到:
cluster.node-id自动回退为服务器名@端口transport=loopback
这代表 ClusterBus 已建立,但当前仅本服本进程自测可用,不会跨服。
4. 确认默认示例脚本已经生成
当前默认示例脚本为:
KeepInventory.ymlNoHunger.ymlWorldProtect.ymlExplosionProtect.ymlAutoRespawn.ymlEndermanProtect.ymlDurabilityProtect.ymlVoidProtect.ymlPvpControl.ymlMobSpawnControl.ymlNoDrop.ymlNoFireSpread.ymlNoRain.ymlNoFallDamage.ymlFixedTime.ymlClearDroppedItems.ymlNoDamageIndicator.yml
这些文件位于 plugins/HNCore/GroovyConfig/,对应的脚本文件位于 plugins/HNCore/GroovyScripts/。
5. 选择要启用的脚本
到 plugins/HNCore/GroovyConfig/ 中,修改对应脚本配置里的 enabled:
yml
enabled: true6. 重载脚本并验证
在后台执行:
text
/hncore reload scripts然后继续检查:
text
/hncore scripts list
/hncore scripts enabledlist:确认系统识别到了哪些脚本enabled:确认当前真正处于启用状态的脚本
7. 先学会看共享状态与集群状态
如果你后面准备折腾:
storage.yml- Redis
- MySQL
- ClusterBus
- HNAttribute 的跨服同步
建议先记住这两个命令:
text
/hncore status
/hncore cluster status它们分别适合确认:
/hncore status- 共享数据库是否启用 / 激活
- 共享存储 MySQL / Redis 是否启用 / 激活
- 当前键值后端到底是 Redis 还是 MySQL
- 共享消息总线(Pub/Sub)是否真的可用
- 统一授权是否启用、授权中心地址和商品授权码是否已配置
- 共享物品库有哪些来源、哪些来源当前可用
/hncore cluster status- 当前节点 ID
- 当前 transport 是
redis还是loopback - ClusterBus 是否真的可用
- action registry 与基础 metrics
8. 顺手验证一次核心重载
如果你刚改的是:
config.ymlstorage.ymlentity-names.yml
那应该执行:
text
/hncore reload这个命令会一起重载:
- HNCore 主配置
storage.yml- Groovy 脚本系统
- 实体名称映射
- 共享数据库 / 共享存储状态
改完后建议马上再看一次:
text
/hncore status
/hncore cluster status这样你就不会只知道“reload 执行了”,而是不知道 Redis / PubSub / ClusterBus 到底有没有真的起来。
9. 打开一次工具箱
text
/hncore tools这样可以顺手确认:
- 工具箱 GUI 能正常打开
- 一级菜单能进入
Sound / Particle / Entity / Material - 全局搜索可用
toolbox-search-aliases.yml已成功生成并加载
四组常见功能组合
| 目标 | 建议先看的脚本 | 说明 |
|---|---|---|
| 基础世界保护 | WorldProtect、ExplosionProtect、EndermanProtect、PvpControl、MobSpawnControl | 先保护交互、爆炸破坏、生物搬运,再按需关闭大厅 PvP 与敌对生物生成 |
| 简化原版生存细节 | NoHunger、KeepInventory、DurabilityProtect | 适合想减少饥饿、死亡损耗与装备磨损管理成本的配置 |
| 大厅 / 展示世界 | NoDrop、NoRain、FixedTime、NoFallDamage | 适合大厅、主城、跑酷起点、展示图等想维持整洁观感和低打扰体验的场景 |
| 快速死亡回到流程 | AutoRespawn、KeepInventory、VoidProtect、MobSpawnControl | 一个负责自动复活,一个负责死亡物品与经验控制,一个负责虚空救援,也可顺手限制地图中的敌对怪刷新 |
上线后第一件事
建议优先执行一次:
text
/hncore scripts enabled
/hncore status
/hncore cluster status这样你能同时确认:
- 当前真正生效的脚本
- 共享数据库 / Redis / PubSub 是否处于可用状态
- ClusterBus 当前是
loopback还是redis
下一步读什么
需要确认目录和首启行为:看 安装与首次启动
需要理解
config.yml和storage.yml的分工:先看 config.yml 配置说明,再看 storage.yml 配置说明需要接 HN 系列付费模块或统一授权:看 auth.yml 配置说明
需要理解 ClusterBus、loopback / redis transport 与节点 ID:看 ClusterBus 与集群控制面
需要逐个比较脚本作用:看 GroovyScripts 总览
需要理解
/hncore status、/hncore cluster status、/hncore reload和/hncore tools:看 命令说明
