163 lines
5.3 KiB
JavaScript
163 lines
5.3 KiB
JavaScript
// 寵物種族配置
|
||
export const PET_SPECIES = {
|
||
tinyTigerCat: {
|
||
id: 'tinyTigerCat',
|
||
name: '小虎斑貓',
|
||
description: '活潑可愛的小貓咪',
|
||
baseStats: {
|
||
// 系統更新間隔(毫秒)
|
||
physiologyTickInterval: 10000, // 生理系統刷新間隔:30秒
|
||
eventCheckInterval: 10000, // 事件檢查間隔:10秒
|
||
|
||
// 衰減速率 (每 tick 60秒)
|
||
// 調整為更輕鬆:飢餓 8 小時,快樂 5 小時
|
||
hungerDecayPerTick: 0.2, // 原 0.28 → 0.2 (更慢)
|
||
happinessDecayPerTick: 0.33, // 原 0.42 → 0.33 (更慢)
|
||
|
||
// 便便系統
|
||
poopChancePerTick: 0.05, // 約 20 分鐘產生一次
|
||
poopHealthDamage: 0.5, // 大幅降低!每坨每分鐘只扣 0.5 (原 3.0)
|
||
|
||
// 飢餓系統
|
||
hungerHealthDamage: 1, // 大幅降低!餓肚子每分鐘只扣 1 (原 6.0)
|
||
|
||
// 生病系統
|
||
sicknessThreshold: 40, // 健康低於 40 會生病
|
||
|
||
// 瀕死系統
|
||
dyingTimeSeconds: 7200, // 瀕死 2 小時後死亡
|
||
|
||
// 睡眠系統配置
|
||
sleepSchedule: {
|
||
nightSleep: {
|
||
startHour: 21, // 晚上 21:00 開始
|
||
startMinute: 30, // 21:30
|
||
endHour: 8, // 早上 8:00 結束
|
||
endMinute: 0,
|
||
autoSleep: true, // 自動進入睡眠
|
||
randomWakeChance: 0.3 // 在此時段唤醒後,30% 機率隨機再次入睡
|
||
},
|
||
noonNap: {
|
||
startHour: 12, // 中午 12:00 開始
|
||
startMinute: 0,
|
||
endHour: 13, // 下午 13:00 結束
|
||
endMinute: 0,
|
||
autoSleep: true, // 自動進入睡眠
|
||
randomWakeChance: 0.3 // 在此時段唤醒後,30% 機率隨機再次入睡
|
||
}
|
||
},
|
||
|
||
// 便便系統配置
|
||
maxPoopCount: 4, // 便便最大數量
|
||
|
||
// 睡眠系統配置
|
||
sleepDecayMultiplier: 0.1, // 睡眠时衰减倍率(饥饿、快乐衰减降低到10%)
|
||
|
||
// 默認數值
|
||
defaultHeight: 10, // 默認身高(cm)
|
||
defaultWeight: 500, // 默認體重(g)
|
||
|
||
// 互動消耗
|
||
playHungerCost: 1, // 玩耍消耗的飢餓值(降低以便玩更久)
|
||
|
||
// 戰鬥數值計算系數
|
||
combatFormulas: {
|
||
attack: {
|
||
strMultiplier: 2.5, // 攻擊力 = STR * 2.5 + DEX * 0.5
|
||
dexMultiplier: 0.5
|
||
},
|
||
defense: {
|
||
strMultiplier: 1.0, // 防禦力 = STR * 1.0 + INT * 2.0
|
||
intMultiplier: 2.0
|
||
},
|
||
speed: {
|
||
dexMultiplier: 3.0, // 速度 = DEX * 3.0 + INT * 0.5
|
||
intMultiplier: 0.5
|
||
}
|
||
},
|
||
|
||
// 其他
|
||
dropRate: 0.1,
|
||
luck: 10
|
||
},
|
||
lifecycle: [
|
||
// durationSeconds 是該階段結束時的累積年齡(秒)
|
||
{
|
||
stage: 'egg',
|
||
durationSeconds: 300, // 蛋在 300 秒(5分鐘)後孵化
|
||
height: 5, // 身高 5cm
|
||
baseWeight: 100, // 基礎體重 100g
|
||
weightRange: { min: 90, max: 110 }, // ±10%
|
||
unlockedFeatures: [],
|
||
allowedActions: [], // 蛋階段不能進行任何互動
|
||
enabledSystems: {
|
||
hunger: false, // 不會飢餓
|
||
happiness: false, // 不會不開心
|
||
poop: false, // 不會便便
|
||
sickness: false, // 不會生病
|
||
sleep: false // 不會睡覺
|
||
}
|
||
},
|
||
{
|
||
stage: 'baby',
|
||
durationSeconds: 21900, // 幼體持續到 6小時5分鐘 (300 + 21600)
|
||
height: 10, // 身高 10cm
|
||
baseWeight: 200, // 基礎體重 200g
|
||
weightRange: { min: 180, max: 220 }, // ±10%
|
||
unlockedFeatures: [],
|
||
allowedActions: ['feed', 'play', 'clean', 'heal', 'sleep'], // 所有基礎互動
|
||
enabledSystems: {
|
||
hunger: true,
|
||
happiness: true,
|
||
poop: true,
|
||
sickness: true,
|
||
sleep: true
|
||
}
|
||
},
|
||
{
|
||
stage: 'child',
|
||
durationSeconds: 281100, // 幼年持續到 3天6小時5分鐘 (21900 + 259200)
|
||
height: 18, // 身高 18cm
|
||
baseWeight: 400, // 基礎體重 400g
|
||
weightRange: { min: 360, max: 440 }, // ±10%
|
||
unlockedFeatures: ['miniGames'],
|
||
allowedActions: ['feed', 'play', 'clean', 'heal', 'sleep'],
|
||
enabledSystems: {
|
||
hunger: true,
|
||
happiness: true,
|
||
poop: true,
|
||
sickness: true,
|
||
sleep: true
|
||
},
|
||
conditions: {
|
||
str: 8, // 6小時內約需餵食 30-40 次,可獲得 ~10 STR
|
||
int: 8 // 6小時內約需玩耍 60-70 次,可獲得 ~10 INT
|
||
}
|
||
},
|
||
{
|
||
stage: 'adult',
|
||
durationSeconds: Infinity, // 成年是最終階段
|
||
height: 25, // 身高 25cm
|
||
baseWeight: 500, // 基礎體重 500g
|
||
weightRange: { min: 450, max: 550 }, // ±10%
|
||
unlockedFeatures: ['miniGames', 'breeding'],
|
||
allowedActions: ['feed', 'play', 'clean', 'heal', 'sleep'],
|
||
enabledSystems: {
|
||
hunger: true,
|
||
happiness: true,
|
||
poop: true,
|
||
sickness: true,
|
||
sleep: true
|
||
},
|
||
conditions: {
|
||
str: 50, // 3天內累積
|
||
int: 50,
|
||
dex: 50
|
||
}
|
||
}
|
||
],
|
||
personality: ['活潑', '黏人']
|
||
}
|
||
}
|
||
|