主题
这页不讲长篇原理,只回答一个问题:
我现在想改某个签到行为,到底该改
config.yml的哪一块?
一、最短索引:按你现在想改的东西来找
如果你现在要改的是:
- 今天到底什么时候刷新 →
reset - 玩家数据存哪、要不要切换到数据库 →
storage - 是否允许补签、补签范围、条件、限制与 requirement →
make-up - GUI 标题、日期格、统计栏与按钮文案 →
gui/*.yml - 玩家成功 / 失败提示 →
messages - 每次签到都发什么 →
rewards.daily - 连续签到跨档位奖励 →
rewards.streak-tiers - 累计签到手动领奖 →
rewards.total-tiers - 全服固定 7 日周期奖励 →
templates.weekly.fixed-cycle - 玩家个人 7 日循环奖励 →
templates.weekly.personal-cycle - 固定周期累计签到奖励 →
templates.weekly.period-accumulate - 每月指定日期奖励 →
templates.monthly.calendar-days - 每月累计签到里程碑 →
templates.monthly.milestones - 月终奖 →
templates.monthly.final-reward - 控制台命令奖励 / 消息奖励 / 物品库奖励 →
actions
如果你还不确定,继续往下看“按场景找配置”。
二、按场景找配置
1)我想改“今天”到底是哪一天
优先看:
reset.timezonereset.hourreset.minute
典型场景:
- 希望凌晨 4 点才刷新签到
- 不同地区服务器时区不同
- 玩家反馈凌晨签到状态不符合预期
最常见判断:
- 凌晨 1 点还显示昨天 → 很可能是业务日设定本来就如此
- 跨服环境时间理解不一致 → 先看
timezone
2)我想切换数据后端或准备迁移
优先看:
storage.typestorage.database.typestorage.database.table-prefixstorage.database.sqlite.filestorage.database.mysql.*
补充判断:
- 当前正式环境建议优先用
database yaml更适合 legacy 兼容、迁移与临时排障
典型场景:
- 想从 YAML 切到 SQLite / MySQL
- 想知道数据库文件或连接配置该改哪
- 想确认迁移前该先跑什么命令
最常见判断:
- 只是改了
storage.type,历史数据不会自动跟着过去 - 切换后建议先
preview,再validate,最后再执行带confirm的迁移命令
3)我想改补签规则
优先看:
make-up.window-daysmake-up.allow-cross-monthmake-up.conditionsmake-up.formula-variablesmake-up.limits.*make-up.cost.requirementsmake-up.cost.groups
典型场景:
- 补签只能补最近几天
- 是否允许上个月月底补签到本月初
- 补签是否需要权限 / 等级 / PAPI 条件
- 补签是否有次数上限
- 补签是否要消耗货币、背包物品或仓库物品
最常见判断:
- 玩家说昨天不能补签 → 先看窗口、跨月限制、conditions 与 limits
- 玩家能补签但不该能 → 先看业务日、窗口与高级规则共同作用
- 明明有道具却提示缺少补签资源 → 再检查 item matcher、仓库来源与运行时依赖
4)我想改签到界面外观
优先看:
gui/calendar.yml中的标题、槽位与展示物品gui/confirm-dialogs.yml中的补签确认弹窗
典型场景:
- 修改标题颜色
- 调整日期格布局
- 修改“今日可签到”“已补签”“未来日期”等物品外观
- 调整统计栏显示文案
如果你只是想改文案,优先改:
calendar.yml里的展示物品name / loreconfirm-dialogs.yml里的description / confirmButton / cancelButton
除非你明确知道布局要怎么变,否则不建议先动槽位。
5)我想改玩家提示消息
优先看:
messages.*
典型场景:
- 签到成功提示
- 重复签到提示
- 补签失败提示
- 累签奖励未达成提示
如果你要统一服内风格,这里通常比 GUI 文案更值得优先统一。
6)我想改最基础的签到奖励
优先看:
rewards.daily
适合场景:
- 每次签到都给固定奖励
- 每次补签也给同类奖励
- 想先跑通基础链路
如果你是第一次接入 HNSignIn,推荐先只配这块。
7)我想改阶段奖励
优先看:
rewards.streak-tiersrewards.total-tiers
区别记法:
- 连续签到 →
streak-tiers - 累计签到 →
total-tiers
其中:
streak-tiers自动发放total-tiers需要玩家在 GUI 手动领取
8)我想改周模板奖励
优先看:
templates.weekly.fixed-cycletemplates.weekly.personal-cycletemplates.weekly.period-accumulate
适合场景:
- 做全服固定一周运营奖励表 →
fixed-cycle - 做玩家个人成长签到 →
personal-cycle - 做本周期累计签到达标奖励 →
period-accumulate
如果你只能先选一个测试,建议:
- 想要“全服统一节奏”就先测
fixed-cycle - 想要“玩家个人成长”就先测
personal-cycle
9)我想改月模板奖励
优先看:
templates.monthly.calendar-daystemplates.monthly.milestonestemplates.monthly.final-reward
区别记法:
- 按“几号”发 →
calendar-days - 按“本月累计签到多少天”发 →
milestones - 按“本月终局目标”发 →
final-reward
10)我想改奖励的实际执行动作
优先看:
- 各奖励节点下的
actions
支持:
commandmessagelibrary-itemitem-spec
最常见判断:
- 想发原版或其他插件奖励 →
command - 想给玩家提示 →
message - 想发共享物品库物品 →
library-item - 想直接定义物品身份 / PDC / 自动序列号 →
item-spec
如果你要用 library-item,还要额外确认 HNCore 对应来源已接好;如果你要用 item-spec,则要确认 spec 结构符合 HNCore 语义。
三、最常改的几块配置
如果你刚开始用,最常改的通常是:
resetmake-upmessagesrewards.dailytemplates.weekly.fixed-cycletemplates.monthly.final-reward
这几块已经足够搭一套可上线的基础签到体验。
四、最推荐的起手改法
想先求稳
先改:
resetmake-uprewards.dailymessages
想先做成长感
再加:
templates.weekly.personal-cycletemplates.monthly.milestones
想先做活动感
再加:
templates.weekly.fixed-cycletemplates.weekly.period-accumulatetemplates.monthly.calendar-days
五、给运维的最短口诀
可以直接记成这句:
时间看
reset,补签看make-up,界面看gui,基础奖励看rewards,周活动看templates.weekly,月活动看templates.monthly。
