№ · BUFF 系统 CH.06.25
主页 · ⚡ Buff 系统 · 《同福客栈》Buff配置索引文档

《同福客栈》Buff配置索引文档

📅 2026-06-25 · 📦 12.5 KB · ⚡ Buff 系统 · 📝 MD 文档 🏷️ 时间🏷️ Buff🏷️ 设计

概述

本文档索引了《同福客栈》游戏中所有Buff配置,包括核心Buff定义、角色Buff配置、客栈Buff配置等。

核心Buff定义

文件位置

  • src/data/buffs/catalog.ts - 核心Buff定义(15个)
  • src/data/buffs/types.ts - TypeScript类型定义
  • src/data/buffs/configs.ts - Buff配置(4个示例)

核心Buff列表

1. 经营状态类Buff

| Buff ID | 名称 | 分类 | 目标类型 | 持续类型 | 标签 | |---------|------|------|----------|----------|------| | inn_peak_hour | 高朋满座 | business | inn | conditional | #PeakHour #BusinessBonus | | inn_half_business | 半营业状态 | risk | inn | conditional | #HalfBusiness #OperationalCrisis | | inn_qixia_famous_inn | 七侠镇名店 | business | inn | time (72 slots) | #FamousInn #BusinessBonus |

2. 危机类Buff

| Buff ID | 名称 | 分类 | 目标类型 | 持续类型 | 标签 | |---------|------|------|----------|----------|------| | inn_sanitation_crisis | 垃圾堆积 | risk | inn | conditional | #SanitationCrisis | | inn_security_crisis | 门户大开 | risk | inn | conditional | #SecurityCrisis | | inn_hygiene_suspend | 临时卫生整顿 | official | inn | conditional | #HygieneSuspend #SanitationCrisis |

3. 员工状态类Buff

| Buff ID | 名称 | 分类 | 目标类型 | 持续类型 | 标签 | |---------|------|------|----------|----------|------| | staff_mood_low | 罢工边缘 | mood | staff | conditional | #StaffMoodLow | | staff_health_low | 带病硬撑 | health | staff | conditional | #StaffHealthLow |

4. 官府事件类Buff

| Buff ID | 名称 | 分类 | 目标类型 | 持续类型 | 标签 | |---------|------|------|----------|----------|------| | gov_tax_audit | 邢捕头突击查税 | official | inn | time (6 slots) | #GovAction #TaxAudit | | gov_sanitation_inspection | 突击卫生检查 | official | inn | time (2 slots) | #GovAction #SanInspect |

5. 夜间类Buff

| Buff ID | 名称 | 分类 | 目标类型 | 持续类型 | 标签 | |---------|------|------|----------|----------|------| | night_closed_house | 正常打烊 | night | inn | conditional | #ClosedAtNight | | night_patrol_gap | 夜巡空档 | night | inn | conditional | #NightRisk |

6. 势力合璧类Buff

| Buff ID | 名称 | 分类 | 目标类型 | 持续类型 | 标签 | |---------|------|------|----------|----------|------| | faction_guest_station | 官商一体 | business | inn | conditional | #GuestStation #FactionCombo | | faction_black_white | 黑白通吃 | social | inn | conditional | #BlackWhiteAlliance #FactionCombo |

7. 特殊类Buff

| Buff ID | 名称 | 分类 | 目标类型 | 持续类型 | 标签 | |---------|------|------|----------|----------|------| | peer_patrol_support | 联机巡夜支援 | social | inn | conditional | #PeerAssist #NightSupport | | new_game_plus_foundation | 周目传承 | meta | meta | infinite | #NewGamePlus #MetaProgression |

角色Buff配置

文件位置

  • src/data/buffs/buff-config-template.ts - 角色Buff配置模板(46个)

角色Buff分类

1. 员工心情类Buff (8个)

| Buff ID | 名称 | 效果 | |---------|------|------| | STAFF_MOOD_HAPPY | 心情愉悦 | 工作效率+30%, 心情衰减-30% | | STAFF_MOOD_SAD | 情绪低落 | 工作效率-20%, 心情衰减+30% | | STAFF_MOOD_ANGRY | 怒火中烧 | 工作效率-30%, 出错率+50%, 冲突概率+100% | | STAFF_MOOD_CALM | 心如止水 | 心情衰减-50%, 抗压能力+30% | | STAFF_MOOD_EXCITED | 兴奋激动 | 工作效率+20%, 出错率+30% | | STAFF_MOOD_BORED | 百无聊赖 | 工作效率-15%, 创新概率-50% | | STAFF_MOOD_GRATEFUL | 感恩戴德 | 忠诚度+40%, 心情衰减-40% | | STAFF_MOOD_ANXIOUS | 焦虑不安 | 出错率+80%, 健康衰减+20% |

2. 员工健康类Buff (8个)

| Buff ID | 名称 | 效果 | |---------|------|------| | STAFF_HEALTH_EXCELLENT | 精力充沛 | 健康衰减-40%, 工作效率+15% | | STAFF_HEALTH_POOR | 身体虚弱 | 健康衰减+50%, 工作效率-15% | | STAFF_HEALTH_SICK | 生病不适 | 工作效率-40%, 健康衰减+100% | | STAFF_HEALTH_RECOVERING | 康复中 | 健康恢复+50%, 工作效率-10% | | STAFF_HEALTH_FATIGUED | 疲惫不堪 | 工作效率-30%, 健康衰减+80% | | STAFF_HEALTH_ENERGETIC | 活力四射 | 工作效率+25%, 心情提升+10% | | STAFF_HEALTH_WEAK | 虚弱无力 | 工作效率-25%, 出错率+40% | | STAFF_HEALTH_IMMUNE | 免疫增强 | 抗病能力+50%, 健康衰减-20% |

3. 员工技能类Buff (8个)

| Buff ID | 名称 | 效果 | |---------|------|------| | STAFF_SKILL_MASTER | 技艺精湛 | 服务质量+40%, 顾客满意度+20% | | STAFF_SKILL_NOVICE | 经验不足 | 服务质量-10%, 顾客满意度-10% | | STAFF_SKILL_SPECIALIST | 专精一艺 | 专精效率+60%, 通用效率-10% | | STAFF_SKILL_VERSATILE | 多才多艺 | 适应性+30%, 通用效率+10% | | STAFF_SKILL_RUSTY | 技艺生疏 | 服务质量-20%, 出错率+30% | | STAFF_SKILL_INNOVATOR | 创新思维 | 创新概率+40%, 顾客满意度+15% | | STAFF_SKILL_MENTOR | 导师风范 | 团队效率+20%, 培训效率+50% | | STAFF_SKILL_LEARNER | 勤奋好学 | 技能成长+50%, 适应性+20% |

4. 员工特殊状态Buff (8个)

| Buff ID | 名称 | 效果 | |---------|------|------| | STAFF_FATIGUE_EXTREME | 极度疲劳 | 工作效率-40%, 出错率+100%, 健康衰减+80% | | STAFF_INSPIRED | 灵感迸发 | 创新概率+30%, 顾客满意度+15% | | STAFF_STRESSED | 压力山大 | 心情衰减+50%, 出错率+60%, 健康衰减+30% | | STAFF_MOTIVATED | 斗志昂扬 | 工作效率+30%, 心情提升+20% | | STAFF_CONFUSED | 手忙脚乱 | 出错率+100%, 服务质量-30% | | STAFF_FOCUSED | 全神贯注 | 工作效率+40%, 出错率-50% | | STAFF_DISTRACTED | 心不在焉 | 工作效率-20%, 出错率+50% | | STAFF_BLESSED | 福星高照 | 幸运+30%, 稀有事件概率+50% |

5. 员工关系类Buff (8个)

| Buff ID | 名称 | 效果 | |---------|------|------| | STAFF_RELATION_HARMONY | 团队和谐 | 团队效率+30%, 冲突概率-50% | | STAFF_RELATION_CONFLICT | 内部矛盾 | 团队效率-30%, 冲突概率+100% | | STAFF_RELATION_MENTOR | 师徒传承 | 培训效率+50%, 新员工成长+40% | | STAFF_RELATION_RIVALRY | 良性竞争 | 工作效率+15%, 技能成长+20% | | STAFF_RELATION_ISOLATED | 孤军奋战 | 心情衰减+30%, 团队效率-20% | | STAFF_RELATION_SUPPORTED | 众人相助 | 心情提升+20%, 工作效率+10% | | STAFF_RELATION_JEALOUS | 心生嫉妒 | 心情衰减+40%, 冲突概率+50% | | STAFF_RELATION_TRUST | 信任满满 | 忠诚度+30%, 创新概率+20% |

6. 员工成长类Buff (6个)

| Buff ID | 名称 | 效果 | |---------|------|------| | STAFF_GROWTH_RAPID | 突飞猛进 | 技能成长+100%, 经验获取+50% | | STAFF_GROWTH_STAGNANT | 停滞不前 | 技能成长-50%, 经验获取-30% | | STAFF_GROWTH_LEARNING | 潜心学习 | 技能成长+30%, 适应性+20% | | STAFF_GROWTH_EXPERT | 行业专家 | 服务质量+50%, 团队效率+30% | | STAFF_GROWTH_TRAINEE | 实习新人 | 服务质量-30%, 技能成长+80% | | STAFF_GROWTH_MASTERY | 融会贯通 | 服务质量+40%, 创新概率+30% |

客栈Buff配置

文件位置

  • src/data/buffs/buff-config-template.ts - 客栈Buff配置模板(8个)

客栈Buff分类

1. 营业状态类Buff

| Buff ID | 名称 | 效果 | |---------|------|------| | INN_PEAK_HOUR | 高峰营业 | 客流+50%, 营收+50%, 清洁衰减+40% | | INN_HALF_BUSINESS | 半营业状态 | 客流-50%, 营收-50%, 座位-50% |

2. 环境类Buff

| Buff ID | 名称 | 效果 | |---------|------|------| | INN_CLEAN_SPARKLING | 一尘不染 | 顾客满意度+30%, 声望获取+20% | | INN_DIRTY_MESSY | 脏乱差 | 顾客满意度-40%, 投诉概率+150% |

3. 安防类Buff

| Buff ID | 名称 | 效果 | |---------|------|------| | INN_SECURITY_TIGHT | 铜墙铁壁 | 偷窃概率-70%, 斗殴概率-60% | | INN_SECURITY_WEAK | 门户大开 | 偷窃概率+100%, 斗殴概率+80% |

4. 势力合璧类Buff

| Buff ID | 名称 | 效果 | |---------|------|------| | INN_FACTION_COMBO_MERCHANT | 官商一体 | 贵客订单+30%, 稀有客人+20% | | INN_FACTION_COMBO_BLACK_WHITE | 黑白通吃 | 偷窃/斗殴-50%, 声望获取+30% |

配置文件说明

1. catalog.ts

  • 包含15个核心Buff定义
  • 使用 defineBuff 函数定义Buff
  • 导出 BUFF_DEFINITIONS 数组和 BUFF_DEFINITIONS_BY_ID 字典

2. types.ts

  • 定义所有TypeScript类型
  • 包含 BuffDefinitionRuntimeBuffBuffSnapshot 等核心类型
  • 定义 BuffModifierKey 联合类型

3. configs.ts

  • 包含4个示例Buff配置
  • 使用 BuffConfig 接口定义
  • 导出 BUFF_CONFIGS 对象

4. buff-config-template.ts

  • 包含46个角色Buff配置
  • 包含8个客栈Buff配置
  • 使用 BuffConfig 接口定义
  • 导出 CHARACTER_BUFF_CONFIGSINN_BUFF_CONFIGSALL_BUFF_CONFIGS 对象

配置规范

1. ID命名规范

  • 客栈级Buff:inn_ 前缀,如 inn_peak_hour
  • 员工级Buff:staff_ 前缀,如 staff_mood_low
  • 势力合璧Buff:faction_ 前缀,如 faction_guest_station
  • 夜间Buff:night_ 前缀,如 night_closed_house
  • 官府Buff:gov_ 前缀,如 gov_tax_audit
  • 周目Buff:new_game_plus_ 前缀,如 new_game_plus_foundation

2. 标签命名规范

  • 使用驼峰命名加 # 前缀
  • #PeakHour#SanitationCrisis#StaffMoodLow

3. 分类规范

  • business - 经营相关
  • mood - 心情相关
  • health - 健康相关
  • risk - 风险相关
  • official - 官府相关
  • night - 夜间相关
  • social - 社交相关
  • meta - 元数据相关

4. 持续类型规范

  • time - 时长类,需要指定 slots 数量
  • conditional - 条件类,满足条件时自动挂载/卸载
  • infinite - 永久类,永久生效

使用示例

1. 获取Buff定义

import { getBuffDefinition } from './data/buffs'

const peakHour = getBuffDefinition('inn_peak_hour')
if (peakHour) {
  console.log(peakHour.name) // "高朋满座"
  console.log(peakHour.tags) // ["#PeakHour", "#BusinessBonus"]
}

2. 获取Buff配置

import { getBuffConfig } from './data/buffs/configs'

const config = getBuffConfig('PEAK_HOUR')
if (config) {
  console.log(config.name) // "高峰营业"
  console.log(config.effects) // 效果列表
}

3. 获取角色Buff

import { getCharacterBuffConfig, CHARACTER_BUFF_CONFIGS } from './data/buffs/buff-config-template'

// 获取单个角色Buff
const happyBuff = getCharacterBuffConfig('STAFF_MOOD_HAPPY')
if (happyBuff) {
  console.log(happyBuff.name) // "心情愉悦"
}

// 获取所有角色Buff
const allCharacterBuffs = Object.values(CHARACTER_BUFF_CONFIGS)
console.log(`角色Buff总数: ${allCharacterBuffs.length}`) // 46

4. 获取客栈Buff

import { getInnBuffConfig, INN_BUFF_CONFIGS } from './data/buffs/buff-config-template'

// 获取单个客栈Buff
const peakHourBuff = getInnBuffConfig('INN_PEAK_HOUR')
if (peakHourBuff) {
  console.log(peakHourBuff.name) // "高峰营业"
}

// 获取所有客栈Buff
const allInnBuffs = Object.values(INN_BUFF_CONFIGS)
console.log(`客栈Buff总数: ${allInnBuffs.length}`) // 8

扩展指南

1. 添加新Buff定义

  1. catalog.ts 中添加新的 BuffDefinition
  2. 配置 idnametargetTypecategory 等基础属性
  3. 设置 tags 用于状态机判定
  4. 配置 durationstack 规则
  5. 添加 modifiers 定义数值效果
  6. 设置 visible 提供UI显示信息

2. 添加新角色Buff

  1. buff-config-template.tsCHARACTER_BUFF_CONFIGS 中添加新配置
  2. 配置 idnamedesciconisDebuff 等基础属性
  3. 添加 effects 定义数值效果

3. 添加新客栈Buff

  1. buff-config-template.tsINN_BUFF_CONFIGS 中添加新配置
  2. 配置 idnamedesciconisDebuff 等基础属性
  3. 添加 effects 定义数值效果

4. 添加新修饰符类型

  1. types.tsBuffModifierKey 类型中添加新键
  2. buffEngine.tssummarizeBuffs 函数中处理新修饰符
  3. 在游戏逻辑中使用 calculateFinalValue 计算最终值