地府游戏 (Underworld Game) - 游戏设计文档

4 阅读18分钟

地府游戏 (Underworld Game) - 游戏设计文档

一、游戏概述

游戏名称:地府游戏
游戏类型:策略模拟 + 角色养成 + 基础RPG
核心概念:玩家扮演地府管理者,负责运输魂魄、培养角色、建设地府设施,维护阴阳平衡。


二、核心玩法框架

2.1 三大核心模块关系图

魂魄运输系统 → 获得资源 → 地府建设系统 → 提升能力 → 角色养成系统
                ↑                                    ↓
                ←────── 经济系统支撑全局 ──────→

三、魂魄运输系统

3.1 骰子前进机制

基础规则
  • 骰子类型:6面骰子系统
  • 基础移动:每次投掷1-6点,按点数前进
  • 连投机制:投出6点可额外再投一次(上限3次连投)
特殊骰子道具
道具名称效果获得方式
定魂骰下次必定投出指定点数(1-6)成就奖励
加速骰投掷结果+2(最大不超过8)商店购买
守护骰投出1点时自动变为2点角色技能
移动消耗
  • 每次移动消耗:5点体力
  • 体力不足时无法移动
  • 体力恢复:每回合恢复10点,或使用"冥茶"道具恢复30点

3.2 路线设定

路线类型
  1. 黄泉路(主线)

    • 起点:阳间入口
    • 终点:奈何桥
    • 格数:30格
    • 难度:普通
    • 奖励:基础魂魄值
  2. 迷魂林(支线)

    • 起点:黄泉路第10格
    • 终点:忘川河畔
    • 格数:20格
    • 难度:困难
    • 奖励:稀有材料、特殊魂魄
  3. 轮回道(高级路线)

    • 起点:奈何桥
    • 终点:轮回台
    • 格数:40格
    • 难度:极难
    • 奖励:大量魂魄值、传说材料
    • 解锁条件:完成黄泉路10次
特殊格子类型
格子类型出现概率效果
普通格50%无特殊效果
事件格20%触发随机事件
战斗格15%遭遇恶鬼战斗
宝箱格10%获得道具/货币
陷阱格5%减少体力/魂魄

3.3 魂魄运输流程

1. 接取任务(指定魂魄类型和数量)
2. 选择路线
3. 投掷骰子前进
4. 处理沿途事件
5. 到达终点交付
6. 获得奖励

四、角色养成系统

4.1 基础属性

属性名称初始值最大值成长方式作用
等级1100经验值提升影响其他属性上限
体力1001000建筑升级/道具运输次数
攻击力10500技能学习/装备战斗伤害
防御力5300技能学习/装备减少受到伤害
运气120成就/特殊事件影响随机事件结果
魂力501000魂魄运输释放技能消耗

4.2 特殊属性

属性名称初始值最大值获取方式作用
威望01000完成任务/成就解锁高级建筑
阴德05000行善积德事件减少负面事件概率
业障01000恶劣选择增加负面事件概率
因果值0100特殊任务影响轮回路线解锁

4.3 技能学习路径

技能树结构
基础技能(3个分支)
├── 战斗分支
│   ├── 鬼爪术 → 厉鬼撕咬 → 冥王之怒
│   └── 魔法护盾 → 灵体防御 → 不灭金身
├── 运输分支
│   ├── 魂魄感知 → 灵魂追踪 → 万鬼归宗
│   └── 风行术 → 鬼影迷踪 → 瞬间移动
└── 建设分支
    ├── 建筑精通 → 结构加固 → 鬼斧神工
    └── 资源管理 → 贸易精通 → 冥商之道
技能学习规则
  • 每个技能点消耗:1000阴间币 + 50魂力
  • 前置技能熟练度达到50%可解锁下一级
  • 技能熟练度:使用技能获得经验,0-100%
技能详情示例

技能名称:风行术

  • 类型:被动技能
  • 效果:移动时体力消耗减少20%
  • 学习条件:运输等级达到5
  • 消耗:500阴间币

技能名称:冥王之怒

  • 类型:主动技能
  • 效果:对全部敌人造成300%攻击力伤害
  • 消耗:100魂力
  • 冷却时间:3回合
  • 学习条件:鬼爪术熟练度80% + 等级30

4.4 成长体系

经验值获取
  • 完成运输任务:基础经验 + 任务难度加成
  • 战斗胜利:敌人等级 × 10
  • 完成成就:固定经验值
  • 日常任务:每日上限5000经验
升级奖励
等级提升奖励:
- 每级:+5攻击力、+3防御力、+10体力上限
- 每10级:+1运气、解锁新技能
- 每20级:获得特殊称号、解锁高级路线

五、地府建设系统

5.1 建筑类型与功能

基础建筑
建筑名称初始等级最大等级建造成本功能
阎王殿1101000阴间币解锁其他建筑、提升威望获取
奈何桥110800阴间币魂魄运输效率+10%/级
忘川河110600阴间币产出"忘川水"(恢复魂力)
鬼门关15500阴间币增加任务数量
望乡台15400阴间币查看魂魄信息
生产建筑
建筑名称初始等级最大等级建造成本功能
冥币铸造厂1151200阴间币每小时产出100×等级阴间币
魂魄提炼所1151000阴间币提炼魂魄获得材料
丹药铺110800阴间币制作恢复道具
装备锻造坊1101500阴间币制作战斗装备
特殊建筑
建筑名称初始等级最大等级建造成本功能
十八层地狱01850000阴间币解锁高级战斗场景、稀有掉落
轮回台01100000阴间币终极目标、游戏通关条件
因果镜0520000阴间币查看隐藏任务、特殊事件提示

5.2 建筑升级规则

升级条件
基础条件:
- 拥有足够资源(阴间币、材料)
- 建筑冷却时间结束(基础24小时)
- 阎王殿等级 >= 目标建筑等级

特殊建筑额外条件:
- 十八层地狱:威望 >= 500,完成"地狱探秘"成就
- 轮回台:威望 >= 1000,因果值 >= 100,完成所有主线任务
升级效果
  • 资源产出:每级+20%
  • 功能加成:每级+10%
  • 解锁新功能:特定等级解锁(如3、6、9级)

5.3 区域解锁

区域划分
  1. 外围区(初始解锁)

    • 包含:鬼门关、望乡台
    • 功能:基础任务接取
  2. 核心区(阎王殿3级解锁)

    • 包含:奈何桥、忘川河
    • 功能:魂魄运输主线
  3. 生产区(阎王殿5级解锁)

    • 包含:冥币铸造厂、魂魄提炼所
    • 功能:资源生产
  4. 战斗区(阎王殿7级解锁)

    • 包含:十八层地狱(需额外条件)
    • 功能:高级战斗
  5. 轮回区(阎王殿10级解锁)

    • 包含:轮回台
    • 功能:游戏终极目标
解锁要求
外围区  核心区:阎王殿等级 >= 3
核心区  生产区:阎王殿等级 >= 5 + 完成运输任务50次
生产区  战斗区:阎王殿等级 >= 7 + 威望 >= 300
战斗区  轮回区:阎王殿等级 >= 10 + 威望 >= 1000

六、成就与任务系统

6.1 日常任务

任务名称任务要求奖励刷新时间
每日运输完成5次魂魄运输500阴间币 + 100经验每日0点
鬼鬼祟祟击败3只恶鬼300阴间币 + 50魂力每日0点
勤劳致富收集3次建筑产出400阴间币每日0点
技能修炼使用技能10次200阴间币 + 技能熟练度+5%每日0点
善行天下完成1个善行事件阴德+20每日0点

6.2 成就系统

运输成就
初级运输者:完成10次运输
奖励:1000阴间币,称号"地府新秀"

熟练运输者:完成100次运输
奖励:5000阴间币,解锁"迷魂林"路线

运输大师:完成500次运输
奖励:20000阴间币,特殊道具"定魂骰"×3

运输传说:完成1000次运输
奖励:50000阴间币,传说装备"轮回披风"
战斗成就
除魔卫道:击败10只恶鬼
奖励:800阴间币

恶鬼克星:击败100只恶鬼
奖励:5000阴间币,技能书"厉鬼撕咬"

冥界战神:击败1000只恶鬼
奖励:30000阴间币,称号"冥界战神"
建设成就
初露锋芒:建造3个基础建筑
奖励:1000阴间币

地府建筑师:建造所有基础建筑
奖励:10000阴间币,解锁"生产区"

冥界大亨:建造所有建筑
奖励:100000阴间币,特殊建筑"因果镜"
特殊成就
因果循环:完成所有主线任务
奖励:50000阴间币,解锁"轮回台"

功德无量:阴德达到5000
奖励:减少所有负面事件概率50%

零业障:业障始终为0,游戏时长100小时
奖励:称号"圣洁者",全属性+10%

6.3 任务类型

主线任务
1. "初入地府"
   - 目标:建造阎王殿
   - 奖励:1000阴间币,解锁基础功能

2. "魂魄归位"
   - 目标:完成10次黄泉路运输
   - 奖励:3000阴间币,解锁迷魂林

3. "地狱探秘"
   - 目标:击败十八层地狱第一层BOSS
   - 奖励:10000阴间币,解锁十八层地狱

...(共20章主线任务)
支线任务
1. "迷路的魂魄"
   - 目标:在迷魂林找到3个迷路魂魄
   - 奖励:稀有材料×5

2. "恶鬼作祟"
   - 目标:击败特定恶鬼
   - 奖励:装备"鬼爪"

...(随机触发支线任务)

七、经济系统

7.1 货币体系

阴间币(基础货币)
  • 获取方式:
    • 完成任务:根据任务难度给予
    • 建筑产出:冥币铸造厂自动产出
    • 出售道具:商店出售多余材料
    • 战斗掉落:击败敌人掉落
  • 用途:
    • 建造/升级建筑
    • 购买道具
    • 学习技能
魂晶(高级货币)
  • 获取方式:
    • 成就奖励
    • 充值(如有)
    • 特殊活动
    • 交易稀有魂魄
  • 用途:
    • 购买特殊道具
    • 加速建筑升级
    • 解锁高级功能
声望值(社交货币)
  • 获取方式:
    • 完成任务
    • 帮助其他玩家(如果有)
    • 特殊事件选择
  • 用途:
    • 解锁高级建筑
    • 获得NPC好感度加成

7.2 交易规则

玩家与NPC交易
商店购买:
- 价格:固定价格
- 折扣:NPC好感度可提供5-20%折扣
- 限购:部分道具每日限购

商店出售:
- 价格:道具原价的30%
- 特殊材料:原价的50%
魂魄交易
魂魄分级:
普通魂魄(白色):100阴间币
稀有魂魄(蓝色):500阴间币
史诗魂魄(紫色):2000阴间币
传说魂魄(金色):10000阴间币

交易规则:
- 只能交易已提炼的魂魄
- 交易需要缴纳10%手续费
- 每日交易限额:100个魂魄
拍卖系统(高级功能)
拍卖规则:
- 起拍价:卖家设定
- 拍卖时长:24小时
- 手续费:成交价的5%
- 最低加价:10%

稀有度加价:
传说装备:起拍价至少50000阴间币
特殊道具:起拍价至少20000阴间币

八、概率计算与随机事件

8.1 概率计算公式

基础概率
事件触发概率 = 基础概率 × (1 + 玩家运气 × 0.05) × (1 - 阴德 × 0.001) × (1 + 业障 × 0.002)

示例:
- 基础事件概率:20%
- 玩家运气:10
- 阴德:1000
- 业障:100

实际概率 = 0.2 × (1 + 10×0.05) × (1 - 1000×0.001) × (1 + 100×0.002)
        = 0.2 × 1.5 × 0.0 × 1.2
        = 0(阴德太高,负面事件不会触发)
骰子概率
普通骰子:1-6点,每点概率16.67%

特殊骰子(加速骰):
- 原始投掷:1-6点
- 最终结果:原始值 + 2(最大8)
- 概率分布:
  3点:16.67%(原1点+2)
  4点:16.67%(原2点+2)
  5点:16.67%(原3点+2)
  6点:16.67%(原4点+2)
  7点:16.67%(原5点+2)
  8点:16.67%(原6点+2)
战斗概率
命中率 = (玩家攻击力 / (玩家攻击力 + 敌人防御力)) × 100
暴击率 = 基础暴击率(5%) + 玩家运气 × 0.5%

闪避率 = (玩家速度 / (玩家速度 + 敌人速度)) × 20%
格挡率 = 基础格挡率(10%) + 防御力 × 0.02%

8.2 随机事件系统

正面事件
事件名称触发概率效果
拾金不昧5%获得500阴间币
魂魄相助3%随行魂魄增加1个
仙人指路2%下次移动点数+3
冥界奇遇1%获得稀有道具
天降横财0.5%获得5000阴间币
负面事件
事件名称触发概率效果
恶鬼拦路8%强制进入战斗
迷失方向5%后退2格
体力透支4%体力-30
魂魄逃逸2%随行魂魄减少1个
地震塌陷0.5%当前路线损坏,需要修复
中性事件(选择型)
事件名称触发概率选项
迷途魂魄6%A. 帮助指引(阴德+10,体力-5)
B. 无视(无效果)
贪婪商人4%A. 购买道具(消耗阴间币)
B. 讨价还价(运气判定,成功打8折)
古老遗迹3%A. 探索(可能获得宝物或遭遇陷阱)
B. 离开(无效果)
修行高人2%A. 请教(获得经验,消耗阴间币)
B. 切磋(战斗,胜利获得技能书)
因果循环1%A. 救赎(业障-50,阴间币-1000)
B. 沉沦(阴间币+1000,业障+20)

8.3 事件触发逻辑

事件触发流程:
1. 玩家移动到事件格
2. 计算实际触发概率(考虑运气、阴德、业障)
3. 随机数判定(0-1004. 根据随机数选择事件类型
5. 执行事件效果
6. 记录事件日志

伪代码:
function triggerEvent(player) {
    // 计算概率修正
    luckModifier = 1 + player.luck * 0.05
    yindeModifier = 1 - player.yinde * 0.001
    yezhangModifier = 1 + player.yezhang * 0.002
    
    totalModifier = luckModifier * yindeModifier * yezhangModifier
    
    // 随机选择事件
    roll = random(0, 100)
    adjustedRoll = roll / totalModifier
    
    // 根据范围选择事件
    if (adjustedRoll < 5) {
        return "拾金不昧"  // 正面事件
    } else if (adjustedRoll < 13) {
        return "恶鬼拦路"  // 负面事件
    } else if (adjustedRoll < 19) {
        return "迷途魂魄"  // 选择事件
    }
    // ... 其他事件
}

九、本地存储方案

9.1 存储结构

使用LocalStorage存储
// 存储键名:underworld_game_save
{
  // 玩家基本信息
  playerInfo: {
    id: "unique_player_id",
    name: "玩家名称",
    level: 10,
    exp: 5000,
    expToNext: 10000,
    
    // 基础属性
    attributes: {
      stamina: 100,
      maxStamina: 100,
      attack: 50,
      defense: 30,
      luck: 5,
      soulPower: 200
    },
    
    // 特殊属性
    specialAttributes: {
      prestige: 100,
      yinde: 500,
      yezhang: 0,
      karma: 0
    },
    
    // 技能
    skills: [
      {
        id: "wind_walk",
        name: "风行术",
        level: 1,
        proficiency: 50
      }
    ],
    
    // 货币
    currency: {
      coins: 10000,
      soulCrystals: 100,
      reputation: 500
    },
    
    // 背包
    inventory: {
      items: [
        {
          id: "dice_fixed",
          name: "定魂骰",
          quantity: 3,
          type: "consumable"
        }
      ],
      capacity: 100
    }
  },
  
  // 建筑信息
  buildings: {
    yanwangHall: {
      level: 3,
      upgradeTime: "2026-01-05T10:00:00Z",
      lastCollect: "2026-01-05T12:00:00Z"
    },
    naiheBridge: {
      level: 2,
      upgradeTime: null,
      lastCollect: "2026-01-05T11:00:00Z"
    }
    // ... 其他建筑
  },
  
  // 任务信息
  quests: {
    daily: [
      {
        id: "daily_transport_5",
        name: "每日运输",
        progress: 3,
        target: 5,
        completed: false,
        rewards: { coins: 500, exp: 100 }
      }
    ],
    main: {
      currentChapter: 3,
      currentMission: "魂魄归位",
      progress: 8,
      target: 10
    },
    achievements: [
      {
        id: "transport_10",
        name: "初级运输者",
        completed: true,
        claimed: true
      }
    ]
  },
  
  // 游戏设置
  settings: {
    musicVolume: 70,
    soundVolume: 80,
    autoSave: true,
    notifications: true
  },
  
  // 时间戳
  timestamps: {
    lastLogin: "2026-01-05T17:00:00Z",
    lastSave: "2026-01-05T17:00:00Z",
    totalPlayTime: 7200000  // 毫秒
  }
}

9.2 存储策略

自动保存
触发条件:
- 完成任务时
- 建筑升级时
- 购买/出售物品时
- 战斗结束时
- 每隔5分钟(如果无操作)

保存流程:
1. 序列化游戏数据为JSON
2. 压缩数据(可选)
3. 写入LocalStorage
4. 验证写入成功
手动保存
玩家可通过设置页面手动保存
保存时显示"保存成功"提示
失败时显示错误信息并提供重试选项
数据备份
每日自动备份:
- 备份文件名:underworld_backup_YYYYMMDD.json
- 保留最近7天备份
- 备份存储在LocalStorage(不同键名)

恢复功能:
- 设置页面提供"恢复备份"选项
- 显示备份日期和文件大小
- 恢复前确认提示

9.3 数据安全

数据加密(可选)
// 使用简单的加密保护数据
function encryptData(data, key) {
    // 简单XOR加密(实际项目应使用更安全的加密)
    const encrypted = [];
    for (let i = 0; i < data.length; i++) {
        encrypted.push(data.charCodeAt(i) ^ key.charCodeAt(i % key.length));
    }
    return btoa(String.fromCharCode.apply(null, encrypted));
}

function decryptData(encrypted, key) {
    const data = atob(encrypted);
    const decrypted = [];
    for (let i = 0; i < data.length; i++) {
        decrypted.push(data.charCodeAt(i) ^ key.charCodeAt(i % key.length));
    }
    return String.fromCharCode.apply(null, decrypted);
}
数据验证
// 加载数据时验证完整性
function validateSaveData(data) {
    const requiredFields = ['playerInfo', 'buildings', 'quests', 'timestamps'];
    
    for (const field of requiredFields) {
        if (!data.hasOwnProperty(field)) {
            console.error(`Missing required field: ${field}`);
            return false;
        }
    }
    
    // 验证数值范围
    if (data.playerInfo.level < 1 || data.playerInfo.level > 100) {
        console.error('Invalid player level');
        return false;
    }
    
    return true;
}
错误处理
function saveGame(data) {
    try {
        const jsonData = JSON.stringify(data);
        localStorage.setItem('underworld_game_save', jsonData);
        
        // 验证保存成功
        const saved = localStorage.getItem('underworld_game_save');
        if (saved !== jsonData) {
            throw new Error('Save verification failed');
        }
        
        return { success: true };
    } catch (error) {
        console.error('Save failed:', error);
        
        // 处理存储空间不足
        if (error.name === 'QuotaExceededError') {
            return { 
                success: false, 
                error: '存储空间不足,请清理浏览器缓存' 
            };
        }
        
        return { 
            success: false, 
            error: '保存失败,请重试' 
        };
    }
}

9.4 跨设备同步(可选扩展)

云存储方案
使用IndexedDB + 云存储API实现:
1. 本地使用IndexedDB存储完整数据
2. 关键数据同步到云端(需要账号系统)
3. 登录时检查云端数据版本
4. 选择使用本地或云端数据(较新的)

十、技术实现建议

10.1 前端技术栈

框架:React / Vue
状态管理:Redux / Vuex / Pinia
UI库:Ant Design / Element Plus
动画:GSAP / CSS Animations

10.2 数据管理

本地存储:LocalStorage / IndexedDB
数据验证:Zod / Joi
状态持久化:Redux Persist / Pinia Plugin

10.3 游戏逻辑

游戏循环:requestAnimationFrame
事件系统:观察者模式
随机数:加密随机数生成器(防止作弊)

十一、用户体验设计

11.1 新手引导

第1步:创建角色
- 输入名称
- 选择初始技能(3选1)

第2步:基础教学
- 投掷骰子移动
- 完成第一次运输

第3步:建筑介绍
- 建造第一个建筑
- 收集产出

第4步:功能解锁
- 逐步介绍各个系统
- 提供跳过选项

11.2 视觉反馈

- 动画效果:骰子滚动、移动、战斗
- 音效:背景音乐、事件音效
- 提示:重要操作确认、错误提示
- 成就:达成时弹窗庆祝

11.3 性能优化

- 资源懒加载
- 数据分页显示
- 动画使用CSS transform
- 避免频繁DOM操作

十二、后续操作说明

12.1 测试说明

单元测试
测试范围:
- 概率计算函数
- 存储读写功能
- 属性成长计算
- 技能效果验证

测试工具:Jest / Vitest
覆盖率目标:>80%
集成测试
测试场景:
- 完整运输流程
- 建筑升级流程
- 任务完成流程
- 存档读写流程

测试工具:Cypress / Playwright
性能测试
测试指标:
- 页面加载时间 < 3秒
- 动画帧率 > 30fps
- 存档读写时间 < 100ms
- 内存占用 < 200MB

12.2 PR规范

提交信息格式
<type>(<scope>): <subject>

<body>

<footer>
类型(type)
feat: 新功能
fix: 修复bug
docs: 文档更新
style: 代码格式调整
refactor: 重构
test: 测试相关
chore: 构建/工具相关
示例
feat(transport): 实现骰子投掷机制

- 添加基础骰子投掷功能
- 实现连投机制(投出6点可再投)
- 添加特殊骰子道具效果
- 完成概率计算逻辑

Closes #123
PR模板
## 变更说明
简要描述本次PR的内容

## 变更类型
- [ ] 新功能
- [ ] Bug修复
- [ ] 重构
- [ ] 文档更新
- [ ] 其他

## 测试情况
- [ ] 单元测试通过
- [ ] 集成测试通过
- [ ] 手动测试完成

## 相关Issue
Closes #xxx

## 截图/录屏
(如有UI变更,提供截图或录屏)

12.3 CI/CD流程

CI检查项
1. 代码格式检查(ESLint/Prettier)
2. 类型检查(TypeScript)
3. 单元测试(Jest)
4. 构建检查(npm run build)
5. 安全扫描(npm audit)
CD部署流程
1. 合并到main分支
2. 触发CI检查
3. CI通过后自动构建
4. 部署到预发布环境
5. 预发布测试通过后部署到生产环境

12.4 后续开发计划

第一阶段(MVP)
Week 1-2:
- 基础UI框架搭建
- 角色创建系统
- 骰子移动机制

Week 3-4:
- 魂魄运输基础流程
- 建筑系统(基础建筑)
- 存储系统
第二阶段(核心功能)
Week 5-6:
- 战斗系统
- 技能系统
- 任务系统

Week 7-8:
- 成就系统
- 经济系统
- 随机事件系统
第三阶段(优化与扩展)
Week 9-10:
- 高级建筑
- 特殊路线
- 装备系统

Week 11-12:
- 性能优化
- 用户体验优化
- 文档完善

十三、总结

本设计文档详细规划了"地府游戏"的完整框架,包括:

核心玩法:魂魄运输、角色养成、地府建设三大模块
魂魄运输系统:骰子机制、路线设定、特殊格子
角色养成系统:属性体系、技能树、成长路径
地府建设系统:建筑类型、升级规则、区域解锁
成就与任务系统:日常任务、成就条件、主线支线
经济系统:货币体系、交易规则、拍卖系统
概率计算:精确公式、随机事件、触发逻辑
存储方案:本地存储、数据安全、跨设备同步


文档版本:v1.0
设计者:AI Game Designer