《同福客栈》道具投放 × 周目 × 难度联动设计
1. 设计概述
1.1 核心理念
道具投放系统必须与多周目设计和难度系统深度绑定,形成"周目越深、难度越高、收益越丰厚"的正向循环。
设计原则:
- 道具投放节奏跟随周目进度自动调整
- 难度影响道具稀有度和产出效率
- 传承道具跨周目保留,形成累积优势
- 每周目都有独特的道具获取体验
1.2 周目定义
| 周目编号 | 名称 | 解锁条件 | 核心特征 | |---------|------|---------|---------| | 第1周目 | 初来乍道 | 新游戏 | 基础道具为主,引导性投放 | | 第2周目 | 小有经验 | 完成第1周目 | 解锁部分传承道具,难度+10% | | 第3周目 | 驾轻就熟 | 完成第2周目 | 解锁高级装备,难度+25% | | 第4周目 | 老谋深算 | 完成第3周目 | 解锁传说道具,难度+50% | | 第5周目+ | 炉火纯青 | 完成第4周目 | 全道具开放,难度+100% |
2. 周目难度系数体系
2.1 难度系数定义
interface DifficultyConfig {
runNumber: number; // 周目编号
name: string; // 周目名称
// 经营难度
costMultiplier: number; // 消耗倍率 (1.0 = 基础)
incomeMultiplier: number; // 收入倍率 (1.0 = 基础)
decayMultiplier: number; // 衰减倍率 (1.0 = 基础)
// 道具相关
dropRateMultiplier: number; // 掉落率倍率
rarityBonus: number; // 稀有度加成 (百分比)
shopPriceMultiplier: number; // 商店价格倍率
// 解锁内容
unlockedItems: string[]; // 解锁的道具ID列表
unlockedRecipes: string[]; // 解锁的配方ID列表
unlockedEvents: string[]; // 解锁的事件ID列表
}
2.2 难度系数配置表
| 周目 | 消耗倍率 | 收入倍率 | 衰减倍率 | 掉落率 | 稀有度加成 | 商店价格 | |-----|---------|---------|---------|--------|-----------|---------| | 第1周目 | 1.0x | 1.0x | 1.0x | 1.0x | +0% | 1.0x | | 第2周目 | 1.1x | 0.95x | 1.1x | 1.1x | +5% | 1.15x | | 第3周目 | 1.25x | 0.9x | 1.25x | 1.2x | +10% | 1.3x | | 第4周目 | 1.5x | 0.85x | 1.5x | 1.3x | +15% | 1.5x | | 第5周目+ | 2.0x | 0.8x | 2.0x | 1.5x | +25% | 2.0x |
3. 道具投放与周目挂钩
3.1 周目专属道具池
第1周目:新手引导池
目标:让玩家熟悉道具系统,建立基础资源循环
| 道具类型 | 掉落权重 | 稀有度分布 | 设计意图 | |---------|---------|-----------|---------| | 基础消耗品 | 70% | Common:90% Uncommon:10% | 维持基本运转 | | 入门装备 | 20% | Common:80% Uncommon:20% | 体验装备系统 | | 剧情线索 | 10% | Rare:100% | 引导故事探索 |
第1周目特色道具:
item_starter_kit- 新手礼包(首次进入自动获得)item_inn_blueprint_basic- 基础扩建图纸(任务奖励)
第2周目:经验积累池
目标:引入传承概念,解锁跨周目道具
| 道具类型 | 掉落权重 | 稀有度分布 | 设计意图 | |---------|---------|-----------|---------| | 基础消耗品 | 50% | Common:70% Uncommon:30% | 降低基础资源占比 | | 进阶装备 | 30% | Uncommon:60% Rare:40% | 提升装备品质 | | 传承道具 | 15% | Epic:80% Legendary:20% | 引入传承系统 | | 剧情道具 | 5% | Rare:50% Epic:50% | 深化故事线 |
第2周目新增道具:
item_legacy_handbook- 传承手册(介绍传承系统)item_experience_scroll- 经验卷轴(使用后获得额外经验)
第3周目:策略深化池
目标:鼓励玩家尝试不同构筑流派
| 道具类型 | 掉落权重 | 稀有度分布 | 设计意图 | |---------|---------|-----------|---------| | 基础消耗品 | 35% | Common:50% Uncommon:50% | 降低基础占比 | | 流派装备 | 40% | Rare:70% Epic:30% | 强化构筑体验 | | 传承道具 | 20% | Epic:60% Legendary:40% | 增加传承产出 | | 稀有道具 | 5% | Epic:40% Legendary:60% | 稀有资源获取 |
第3周目新增道具:
item_build_guide_chef- 厨师流派秘籍item_build_guide_defense- 防守流派秘籍item_build_guide_management- 经营流派秘籍item_build_guide_adventure- 冒险流派秘籍
第4周目:传说收集池
目标:收集传说级道具,追求完美构筑
| 道具类型 | 掉落权重 | 稀有度分布 | 设计意图 | |---------|---------|-----------|---------| | 高级消耗品 | 25% | Uncommon:30% Rare:70% | 提升资源品质 | | 传说装备 | 45% | Epic:50% Legendary:50% | 追求顶级装备 | | 传承道具 | 25% | Epic:40% Legendary:60% | 传承核心产出 | | 隐藏道具 | 5% | Legendary:100% | 收藏向内容 |
第4周目新增道具:
item_legendary_weapon_set- 传说武器套装组件item_inn_deed_permanent- 永久地契(跨周目保留)
第5周目+:大师挑战池
目标:极限挑战,追求极致数值
| 道具类型 | 掉落权重 | 稀有度分布 | 设计意图 | |---------|---------|-----------|---------| | 大师消耗品 | 20% | Rare:50% Epic:50% | 极限资源 | | 大师装备 | 40% | Epic:40% Legendary:60% | 极限装备 | | 传承道具 | 30% | Epic:30% Legendary:70% | 极限传承 | | 彩蛋道具 | 10% | Legendary:100% | 收藏与成就 |
第5周目+新增道具:
item_master_chef_apron- 大师围裙(厨师流终极装备)item_inn_legend_plaque- 传奇客栈牌匾(永久增益)
4. 道具投放与难度挂钩
4.1 难度影响的投放参数
interface DropModifier {
// 基础参数
baseDropRate: number; // 基础掉落率
baseRarityWeight: number; // 基础稀有度权重
// 难度修正
difficultyBonus: number; // 难度加成系数
riskRewardRatio: number; // 风险回报比
// 周目修正
runBonus: number; // 周目加成
legacyBonus: number; // 传承道具加成
}
4.2 难度等级与掉落对应表
| 难度等级 | 触发条件 | 掉落率修正 | 稀有度加成 | 特殊效果 | |---------|---------|-----------|-----------|---------| | 简单 | 第1周目前3天 | +20% | +5% | 基础资源双倍 | | 普通 | 默认 | 0% | 0% | 标准掉落 | | 困难 | 声望<30或治安<40 | -10% | +10% | 高风险高回报 | | 噩梦 | 终局预警期 | -20% | +20% | 绝境翻盘机会 | | 地狱 | 连续失败3次 | -30% | +30% | 极限挑战模式 |
4.3 动态难度调整机制
function calculateDynamicDifficulty(state: GameState): DifficultyLevel {
const { reputation, safety, cleanliness, cash, day } = state;
// 综合评分
const score = (reputation * 0.3 + safety * 0.3 + cleanliness * 0.2 + (cash / 1000) * 0.2);
if (score >= 80) return 'easy';
if (score >= 60) return 'normal';
if (score >= 40) return 'hard';
if (score >= 20) return 'nightmare';
return 'hell';
}
5. 传承道具系统
5.1 传承道具分类
| 类型 | 跨周目保留 | 获取方式 | 效果类型 | |-----|-----------|---------|---------| | 永久增益 | ✅ 永久 | 特定成就解锁 | 被动加成 | | 消耗传承 | ❌ 一次性 | 传承商店购买 | 主动使用 | | 装备传承 | ✅ 永久 | 高难度掉落 | 装备效果 | | 账号共享 | ✅ 账号级 | 特殊活动 | 全周目生效 |
5.2 传承道具获取条件
interface LegacyItemRequirement {
itemId: string;
requiredRun: number; // 要求最低周目
requiredAchievement?: string;// 要求成就ID
requiredScore?: number; // 要求评分
legacyCost?: number; // 传承点数消耗
}
5.3 传承道具配置表
| 道具ID | 名称 | 要求周目 | 传承点数 | 效果 |
|--------|-----|---------|---------|------|
| item_inn_deed | 同福客栈地契 | 第2周目 | 1000 | 每局收入+10% |
| item_inn_blueprint | 客栈扩建图纸 | 第2周目 | 800 | 扩建费用-15% |
| item_legacy_ring | 传承戒指 | 第3周目 | 1500 | 全属性+5% |
| item_time_crystal | 时间水晶 | 第4周目 | 2000 | 游戏速度+20% |
| item_lucky_charm | 幸运符 | 第3周目 | 1200 | 稀有掉落+10% |
| item_recruit_sign | 招募令 | 第2周目 | 600 | 员工招募费用-20% |
6. 周目专属事件与道具
6.1 周目解锁事件
| 周目 | 事件ID | 事件名称 | 可能掉落 |
|-----|--------|---------|---------|
| 第2周目 | event_legacy_merchant | 传承商人 | 传承道具碎片 |
| 第3周目 | event_build_master | 构筑大师 | 流派秘籍 |
| 第4周目 | event_legend_smith | 传说铁匠 | 传说装备材料 |
| 第5周目+ | event_inn_sage | 客栈圣人 | 大师级道具 |
6.2 周目成就奖励
| 成就ID | 成就名称 | 解锁条件 | 奖励道具 |
|--------|---------|---------|---------|
| ach_first_run | 初来乍道 | 完成第1周目 | item_legacy_token_basic |
| ach_perfect_week | 完美一周 | 7天内无终局 | item_perfect_week_badge |
| ach_all_staff | 全员到齐 | 解锁所有员工 | item_staff_harmony_ring |
| ach_inn_master | 客栈大师 | 声望达到1000 | item_inn_master_plaque |
7. 数值平衡验证
7.1 周目进度曲线
第1周目: 基础体验 (7-14天)
├── 第1-3天: 生存期,基础资源为主
├── 第4-7天: 发展期,解锁装备系统
├── 第8-10天: 稳定期,积累资源
└── 第11-14天: 收获期,准备传承
第2周目: 进阶挑战 (10-21天)
├── 第1-5天: 快速起步(传承加成)
├── 第6-10天: 流派探索
├── 第11-15天: 深度经营
└── 第16-21天: 终局冲刺
第3周目+: 大师之路 (14-30天)
├── 第1-7天: 构筑成型
├── 第8-14天: 极限优化
├── 第15-21天: 挑战高难
└── 第22-30天: 完美收官
7.2 道具产出预期
| 周目 | 日均道具产出 | 传说道具占比 | 传承点数/天 | |-----|------------|-------------|------------| | 第1周目 | 8-12个 | <1% | 0 | | 第2周目 | 10-15个 | 2-3% | 50-80 | | 第3周目 | 12-18个 | 5-8% | 80-120 | | 第4周目 | 15-22个 | 10-15% | 120-180 | | 第5周目+ | 18-25个 | 15-25% | 180-250 |
8. 实现要点
8.1 数据结构扩展
// 在 types.ts 中添加
export interface RunConfig {
runNumber: number;
difficulty: DifficultyConfig;
unlockedItems: string[];
legacyItems: string[];
achievements: string[];
}
// 道具掉落配置扩展
export interface ItemDropConfig {
itemId: string;
weight: number;
minDay: number;
sources: string[];
// 新增:周目和难度相关
minRun?: number; // 最低周目要求
maxRun?: number; // 最高周目限制(-1表示无限制)
difficultyBonus?: number; // 难度加成系数
legacyOnly?: boolean; // 是否仅传承道具
}
8.2 掉落算法扩展
function getRandomItemFromPool(
pool: ItemDropConfig[],
currentDay: number,
currentRun: number,
difficulty: DifficultyLevel
): GameItem | null {
// 1. 过滤出当前周目和天数可用的道具
const availableItems = pool.filter(config => {
const dayOk = currentDay >= config.minDay;
const runOk = !config.minRun || currentRun >= config.minRun;
const maxRunOk = !config.maxRun || config.maxRun === -1 || currentRun <= config.maxRun;
return dayOk && runOk && maxRunOk;
});
if (availableItems.length === 0) return null;
// 2. 应用难度和周目加成
const adjustedItems = availableItems.map(config => ({
...config,
weight: calculateAdjustedWeight(config, currentRun, difficulty)
}));
// 3. 加权随机选择
const totalWeight = adjustedItems.reduce((sum, config) => sum + config.weight, 0);
let random = Math.random() * totalWeight;
for (const config of adjustedItems) {
random -= config.weight;
if (random <= 0) {
return ALL_ITEMS_MAP[config.itemId] || null;
}
}
return null;
}
function calculateAdjustedWeight(
config: ItemDropConfig,
currentRun: number,
difficulty: DifficultyLevel
): number {
let weight = config.weight;
// 周目加成
const runBonus = 1 + (currentRun - 1) * 0.1;
weight *= runBonus;
// 难度加成(高难度提升稀有道具权重)
const difficultyMultiplier = getDifficultyMultiplier(difficulty, config);
weight *= difficultyMultiplier;
// 传承道具加成
if (config.legacyOnly) {
weight *= 1 + (currentRun - 1) * 0.2;
}
return weight;
}
8.3 存档数据结构
// 在存档中记录周目信息
interface GameSave {
// ... 现有字段
runInfo: {
currentRun: number; // 当前周目
totalRuns: number; // 总周目数
legacyPoints: number; // 传承点数
legacyItems: string[]; // 已解锁的传承道具
achievements: string[]; // 已完成的成就
bestScore: number; // 历史最高评分
};
}
9. 设计验证指标
9.1 周目完成率目标
| 周目 | 预期完成率 | 平均游玩时长 | 传承道具获取率 | |-----|-----------|-------------|--------------| | 第1周目 | >90% | 7-14天 | 0% | | 第2周目 | >70% | 10-21天 | 60% | | 第3周目 | >50% | 14-28天 | 80% | | 第4周目 | >30% | 21-35天 | 95% | | 第5周目+ | >10% | 28天+ | 100% |
9.2 道具获取满意度
- 每周目结束时,玩家应至少获得1件"惊喜"道具
- 传承道具的获取应给予明确的成就感
- 高难度下的稀有掉落应有视觉和音效强化
10. 后续扩展方向
10.1 周目挑战模式
- 速通挑战:限时完成周目,奖励专属道具
- 无传承挑战:禁用传承道具,纯靠当周目积累
- 极限难度挑战:难度系数x3,奖励传说级传承
10.2 赛季系统
- 每月重置排行榜
- 赛季专属传承道具
- 赛季成就系统
10.3 社交联动
- 周目进度分享
- 传承道具交易市场
- 协作周目模式