pet_data/docs/CONFIG_GUIDE.md

4.7 KiB
Raw Permalink Blame History

数据驱动配置说明

完全数据驱动

现在所有游戏核心参数都在 data/pet-species.js 中配置,您只需要修改这个文件就可以调整游戏体验!


📋 配置文件位置

/home/daniel/playone/pet_data/data/pet-species.js

⚙️ 可配置的参数

1. 系统更新间隔

baseStats: {
  // 系統更新間隔(毫秒)
  physiologyTickInterval: 60000,  // 生理系統60秒 (1分鐘)
  eventCheckInterval: 10000,      // 事件檢查10秒

快速调整示例

需求 修改值
生理变化更慢 physiologyTickInterval: 120000 (2分钟)
生理变化更快 physiologyTickInterval: 30000 (30秒)
事件更频繁 eventCheckInterval: 5000 (5秒)
事件更少 eventCheckInterval: 20000 (20秒)

2. 属性衰减速率

  // 衰減速率 (每 tick)
  hungerDecayPerTick: 0.28,      // 飢餓衰減
  happinessDecayPerTick: 0.42,   // 快樂衰減

计算公式

每 tick 衰减值 = 100 ÷ (目标秒数 ÷ tick间隔)

示例

  • 想让饥饿 8小时 耗尽tick间隔 60秒
    hungerDecayPerTick: 100 ÷ (8*3600 ÷ 60) = 100 ÷ 480 = 0.208
    

3. 便便系统

  // 便便系統
  poopChancePerTick: 0.067,      // 產生機率(每 tick
  poopHealthDamage: 3,           // 每坨便便的傷害

快速调整示例

需求 修改值
更少便便 poopChancePerTick: 0.033 (约30分钟一次)
更多便便 poopChancePerTick: 0.133 (约7.5分钟一次)
便便伤害降低 poopHealthDamage: 1.5
便便伤害提高 poopHealthDamage: 6

4. 惩罚系统

  // 飢餓系統
  hungerHealthDamage: 6,         // 飢餓為 0 時每 tick 扣血

  // 生病系統
  sicknessThreshold: 40,         // 健康低於此值會生病

  // 瀕死系統
  dyingTimeSeconds: 7200,        // 瀕死多久後死亡(秒)

5. 睡眠时间表

  sleepSchedule: {
    nightSleep: {
      startHour: 21,              // 開始時間
      startMinute: 30,
      endHour: 8,                 // 結束時間
      endMinute: 0,
      autoSleep: true,
      randomWakeChance: 0.3       // 唤醒後隨機再睡機率
    },
    noonNap: {
      startHour: 12,
      startMinute: 0,
      endHour: 13,
      endMinute: 0,
      autoSleep: true,
      randomWakeChance: 0.3
    }
  }

🎯 常见调整场景

场景 1让游戏更轻松适合忙碌玩家

baseStats: {
  physiologyTickInterval: 120000,    // 2分钟一次 tick
  hungerDecayPerTick: 0.14,          // 12小时耗尽
  happinessDecayPerTick: 0.21,       // 8小时耗尽
  poopChancePerTick: 0.033,          // 30分钟一次
  dyingTimeSeconds: 14400,           // 瀕死 4 小时
}

场景 2让游戏更有挑战硬核模式

baseStats: {
  physiologyTickInterval: 30000,     // 30秒一次 tick
  hungerDecayPerTick: 0.56,          // 3小时耗尽
  happinessDecayPerTick: 0.83,       // 2小时耗尽
  poopChancePerTick: 0.2,            // 5分钟一次
  dyingTimeSeconds: 1800,            // 瀕死 30 分钟
}

场景 3观赏模式几乎不用照顾

baseStats: {
  physiologyTickInterval: 300000,    // 5分钟一次 tick
  hungerDecayPerTick: 0.07,          // 24小时耗尽
  happinessDecayPerTick: 0.14,       // 12小时耗尽
  poopChancePerTick: 0.017,          // 60分钟一次
  dyingTimeSeconds: 28800,           // 瀕死 8 小时
}

📝 修改后的操作

  1. 保存文件 - 修改 pet-species.js 后保存
  2. 刷新浏览器 - 简单刷新即可HMR 会自动加载)
  3. 重新创建宠物(重要!)- 在控制台执行:
    handleDeletePet()  // 删除旧宠物
    // 刷新页面创建新宠物
    

⚠️ 注意事项

  1. tick 间隔改变时,记得调整衰减值

    • 例如:从 60 秒改为 120 秒,衰减值应该 ×2
  2. 计算公式

    每tick衰减值 = 100 ÷ (目标小时数 × 3600 ÷ tick间隔秒数)
    
  3. 已有宠物不受影响

    • 配置只对新创建的宠物生效
    • 已有宠物使用创建时的配置
    • 想要应用新配置需要删除重建

🎮 目前的设置(默认值)

  • 生理 Tick60秒1分钟
  • 事件检查10秒
  • 饥饿耗尽:约 6 小时
  • 快乐耗尽:约 4 小时
  • 便便产生:约 15 分钟一次
  • 瀕死缓冲2 小时

配合睡眠系统(夜间 10.5h + 午休 1h玩家每天只需照顾 2-3 次 即可!