需求规划说明书

1. 选题背景

我们团队决定开发一款"植物大战僵尸特别版",目标用户为学生,为其提供休闲娱乐。预期用户量为50+。

2. 项目特色

与市面上其他植物大战僵尸游戏不同,我们的特色在于:

  • 自带外挂,玩的爽。
  • 有独特彩蛋机制,增加关卡乐趣。
  • 独特植物与僵尸与原版不一样的体验。

3. 需求分析

功能需求

  • 用户系统:支持账户登录
  • 战斗系统:5条跑道,15种特色植物
  • 成就系统:收集多种隐藏成就
  • 选关系统:多种关卡选择
  • 平衡系统:多种难度选择
  • 图鉴系统:查看各种植物与僵尸并与彩蛋触发条件挂钩。

4.技术需求

植物大战僵尸游戏开发技术分析

《植物大战僵尸》是一款2D塔防游戏,开发它需要掌握多种编程技术,包括游戏逻辑、物理碰撞、动画控制、AI行为、数据存储和UI交互等。


1. 核心编程语言选择

*基于游戏引擎的选择

  • 使用适合开发植物大战僵尸的优秀引擎

2. 核心游戏系统编程

(1) 游戏循环与状态管理

  • 游戏主循环(处理输入、更新逻辑、渲染)
  • 游戏状态机(菜单、战斗、暂停、胜利/失败)
  • 时间管理(游戏速度、僵尸波次计时)

(2) 实体-组件系统 (ECS)

  • 植物、僵尸、子弹等游戏对象的基类
  • 组件化设计(如AttackComponentMovementComponent
  • 对象池优化(避免频繁创建/销毁对象)

(3) 网格与碰撞系统

  • 2D网格管理(5x9 草坪格子,用于植物种植位置)
  • 碰撞检测(僵尸与植物、子弹与僵尸)
    • 矩形碰撞 (AABB)
    • 圆形碰撞(适用于豌豆子弹)
    • 射线检测(直线攻击判定)

(4) 资源管理与经济系统

  • 阳光收集系统(点击阳光增加资源)
  • 植物购买系统(消耗阳光放置植物)
  • 关卡解锁与进度存储(JSON/二进制存档)

3. 动画与特效编程

(1) 精灵动画 (Sprite Animation)

  • 帧动画(僵尸行走、植物攻击)
  • 动画状态机(切换不同动画,如僵尸受伤/死亡)

(2) 粒子特效

  • 阳光闪烁特效
  • 爆炸效果(樱桃炸弹)
  • 子弹命中效果

(3) UI 动画

  • 植物卡片拖拽
  • 按钮点击反馈
  • 关卡进度条动画

4. 僵尸AI与游戏逻辑

(1) 僵尸行为树/状态机

  • 简单僵尸(直线行走)
  • 特殊僵尸(撑杆跳、铁桶僵尸等)
  • 波次生成逻辑(随时间增加难度)

(2) 植物攻击逻辑

  • 自动攻击(豌豆射手)
  • 手动触发(土豆地雷)
  • 范围伤害(樱桃炸弹)

5. 数据存储与关卡设计

(1) 数据存储方式

  • JSON/XML(存储植物、僵尸属性)
  • 二进制存档(玩家进度)
  • SQLite(可选)(复杂数据管理)

(2) 关卡设计

  • 波次配置(僵尸出现顺序)
  • 地形变化(白天/黑夜/泳池关卡)
  • 解锁机制(新植物逐步解锁)

6. 音效与音乐管理

  • 背景音乐循环
  • 音效触发(种植、攻击、僵尸死亡)
  • 音量控制(设置面板)

5.真实性,可用性,价值

维度 分析 结论
真实性 非现实模拟,但规则自洽,符合游戏逻辑 虽不真实,但合理有趣
可用性 操作简单、难度曲线合理 用户体验极佳
价值 娱乐性强、潜在教育意义 经典游戏,影响深远

6.团队具体分工

职责 成员
前端开发 何锦辉,梁鑫
后端开发 彭颂华,雷文龙,费俊耀
测试 朱俊锋
PM 黄子恒

7.团队项目的issue管理

8.时间安排

原计划:

周次 主要任务
第六周 1. 团队组队、团队博客发布。2. 团队介绍、成员展示、角色分配、选题确定。3. 制定团队计划安排,规定团队贡献分规则。
第七周 1. 完成需求规格说明书。2. 原型设计,任务难度评估,学习必要技术。3. 完成编码规范、平台环境搭建、初步架构搭建。
第八周 1. 改进原型,向目标用户展示并收集反馈。2. 架构设计,完成WBS(工作分解结构),成员估计任务时间。3. 制定测试计划。
第九,十周 1. 团队项目Alpha任务分配计划 2. 连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交
第十一周 1.用户反馈+测试计划改进 2. 团队Alpha阶段个人总结 3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理
第十二周 1. 团队项目Alpha博客:事后分析

现计划:

周次 主要任务
第六周 1. 团队组队、团队博客发布。2. 团队介绍、成员展示、角色分配、选题确定。3. 制定团队计划安排,规定团队贡献分规则。
第七周 1. 完成需求规格说明书。2. 原型设计,任务难度评估,学习必要技术。3. 完成编码规范、平台环境搭建、初步架构搭建。
第八周 1. 改进原型,向目标用户展示并收集反馈。2. 架构设计,完成WBS(工作分解结构),成员估计任务时间。3. 制定测试计划。
第九,十周 1. 团队项目Alpha任务分配计划 2. 连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交 3.并开一次项目讨论会。
第十一周 1.用户反馈+测试计划改进 2. 团队Alpha阶段个人总结 3.根据用户反馈改进4. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理
第十二周 1. 团队项目Alpha博客:事后分析
posted @ 2025-04-12 13:41  我推的ye  阅读(100)  评论(0)    收藏  举报