[T.13] 团队项目:Alpha 阶段项目展示

项目 内容
课程 2026 年春季软件工程
作业 [T.13] 团队项目:Alpha 阶段项目展示
团队 MAGICCELL
项目 Z-Spire / 植胜僵场
项目定位 PvZ 题材的单机 Roguelike 卡牌策略游戏
Alpha 展示视频 Bilibili:戴夫——这把高端局

3775146-20260407111031696-1480233113-20260629115014263

一句话介绍:玩家扮演戴夫,在可自由移动的地图中探索,用植物卡牌与僵尸进行回合制战斗,并通过奖励、事件、休息点和商店不断构筑自己的牌组。


第一部分:项目与团队亮点

1. 团队成员、分工与管理方式

1.1 成员分工

成员 Alpha 阶段分工
丁宇城 PM、项目管理、代码审查、平衡性调整
周子强 美术、策划、卡牌与地图设计、UI 设计
罗春宇 技术负责人、整体框架、核心开发
琚长昊 动画、UI 设计、地图与事件表现
刘昶 策划、测试、卡牌机制与奖励流程
陈申学佳 美术、开发、卡面与地图素材

1.2 我们如何管理项目

团队使用 GitHub 管理代码,通过 Issue 拆分任务、Pull Request 合并代码;任务以主动接取为主、PM 分配为辅。日常沟通使用微信,阶段讨论通过腾讯会议或线下研讨完成,关键文档留存在飞书和团队博客中。

Alpha 阶段共留下 7 次 Scrum Meeting 记录,主题覆盖文档、卡牌设计、UI、卡面美术、地图设计、地图实现和关卡流程。我们的管理原则是:

  • 先完成可连续游玩的核心闭环,再扩展内容;
  • 每个任务有负责人、交付物和验收方式;
  • 通过 PR 合并,避免多人直接修改主分支;
  • 临近里程碑时优先修复阻断主流程的问题,视觉微调进入后续迭代。

实际开发中,团队根据进度对初始 WBS 进行了范围调整:将原计划中的 25 张卡牌、Boss 和部分复杂机制安排至后续迭代,Alpha 阶段优先交付 8 张可用卡牌、5 类僵尸、6 个战斗关卡以及完整的探索—战斗—奖励—补给流程。这是团队在时间、质量和资源之间做出的主要取舍。

2. 典型用户场景

2.1 目标用户

  • 喜欢《植物大战僵尸》角色、美术和世界观的玩家;
  • 喜欢《杀戮尖塔》等卡牌构筑游戏的玩家;
  • 希望短时间上手、同时又能研究牌组配合的大学生玩家。

2.2 一次典型游玩过程

Alpha 版本已经满足这条典型路径:

地图探索 → 僵尸战斗 → 获得金币和卡牌 → 事件/休息/商店调整状态 → 精英战斗 → 通关

3. 杀手级功能:可自由探索的“植物卡牌冒险”

项目的特色在于把三个系统连接成同一局游戏:

  1. PvZ 元素:豌豆射手负责攻击、坚果墙负责防御、寒冰射手施加控制,玩家能借助已有认知快速理解卡牌。
  2. Roguelike 卡牌构筑:阳光、卡池、敌人意图、奖励三选一和商店删牌共同形成持续变化的策略空间。
  3. 2D 自由地图探索:玩家直接控制戴夫移动、选择路线并接触事件,而不是只在抽象节点图中点选下一关。
对比对象 主要体验 《植胜僵场》的差异
原版《植物大战僵尸》 塔防、阵线布置 植物被重构为卡牌,戴夫成为可操控的探索角色
《杀戮尖塔》 节点地图、卡组构筑 加入 PvZ 元素和可直接操作的 2D 探索地图
一般同类改编作品 更换角色或素材 地图、战斗、奖励、事件、商店和牌库之间存在连续状态

原版 PvZ 侧重塔防,《杀戮尖塔》侧重卡牌构筑和节点选择。本项目利用玩家熟悉的植物能力降低学习成本,并通过自由探索强化“冒险感”,形成差异化体验。

4. Alpha 版本交付结果

模块 Alpha 版本结果
地图 1 张可自由移动的地图,小地图、敌人、事件、商店、休息点、教程和传送点均可交互
战斗 玩家/敌人回合、阳光、生命、金币、抽牌、弃牌、目标选择、逃跑、胜负结算
卡牌 8 张可用卡牌,包含攻击、技能、能力三类及四档稀有度设计
敌人 普通僵尸、路障僵尸、铁桶僵尸、撑杆跳僵尸、旗帜僵尸共 5 类
关卡 5 个普通关卡、1 个精英关卡
构筑 战后卡牌三选一、商店购买、休息点删牌、园艺卡册
发布 Windows 与 macOS 可运行包、Bilibili 演示视频、玩家交流群

Alpha 版本已具备完整的可玩流程,仍有以下待改进项:部分图片和文字清晰度不足;卡牌术语和解释需要统一;地图界面生命值归零时的失败判定仍需修复。这些问题均已纳入 Beta 迭代计划。

5. 发布、推广与活跃用户

5.1 发布与推广动作

  • 同时打包 Windows 和 macOS 版本,降低不同设备用户的试玩门槛;
  • 通过北航网盘和百度网盘分发 Alpha 安装包;
  • 在 Bilibili 发布 6 分 18 秒的完整演示视频;
  • 建立玩家交流群,通过朋友圈和群聊邀请目标用户试玩;
  • 在发布说明中公开已知问题和反馈入口。

Alpha 下载地址:

5.2 实际数据与统计口径

截至 2026 年 6 月 29 日,Bilibili 视频页面显示 169 次播放、11 个点赞、4 个投币、3 个收藏和 1 次分享。

团队通过安装包分发、交流群和试玩反馈进行去重核对,可确认的活跃试玩用户约为 40 人。其中,169 次视频播放属于宣传曝光数据;约 40 人来自安装、试玩和群内反馈记录。Alpha 版本尚未接入用户账号和遥测埋点,因此本阶段未形成基于产品日志的逐日 DAU 统计。

6. 软件工程质量

团队从版本管理、代码规模、自动化测试、缺陷修复、文档和持续集成等维度评估工程质量。

指标 Alpha 阶段结果 证据口径
Git 提交记录 125 条,其中 100 条为非合并提交 截止 2026-05-10 的 Git 历史
Scrum 记录 7 次 团队每日例会博客
TypeScript 源文件 96 个 Alpha 截止提交 701e938src/**/*.ts
自动化测试脚本 11 个 Alpha 截止提交的 test/ 目录
自动化测试声明 37 个 node:test 中的测试声明
Bug 修复 约 25 个 测试报告按 fix/bug/修复提交归类
文档 README、地图设计/系统/路线图、功能规格、技术规格、测试与发布说明 仓库与团队博客
CI GitHub Actions PR/main 触发 Prettier 检查和 node --test
发布平台 Windows、macOS build:exebuild:mac 与公开安装包

项目采用 TypeScript + Phaser 3 + Vite + Electron。卡牌、敌人、事件和商店内容集中在数据层;GameState 管理一局游戏的全局状态,战斗、卡牌、地图和 UI 按目录拆分。Alpha 后期还对过大的 BattleScene 和 ShopPanel 进行了职责拆分,减少单一场景文件持续膨胀的问题。

GitHub Actions 在主分支 Push 和 Pull Request 时自动安装依赖、执行 Prettier 检查和 Node 自动化测试。README 提供了从克隆仓库、安装依赖到开发运行、生产构建和 Windows 打包的步骤。Beta 阶段将进一步增加新机器独立复现测试,记录环境搭建用时、遇到的问题和文档修订结果。

7. Demo演示

完整演示视频:https://www.bilibili.com/video/BV1eeRXBGEB9


第二部分:项目与团队总结

1. 项目管理

1.1 成员简介与个人博客

成员 角色
丁宇城 PM
周子强 美术/策划
罗春宇 技术负责人/美术
琚长昊 动画/UI 设计
刘昶 策划/测试
陈申学佳 美术/开发

1.2 任务分解与协作

Alpha 初始 WBS 将工作分为设计与计划、编码实现、测试与发布三个阶段,预计总工时 176 小时,人均约 29.3 小时。模块按地图、卡牌、战斗、事件、商店、UI、美术、测试和发布拆分。

协作中形成的主要接口包括:

  • 地图负责移动和交互入口,战斗/事件/商店结束后将状态返回 GameState;
  • 卡牌数据描述费用、目标和效果,战斗系统负责解释并执行;
  • 奖励、商店和休息点统一修改金币、生命值和牌库;
  • UI 从状态层读取数据,不自行保存另一套游戏状态;
  • 美术资源按场景和用途整理,避免代码中散落临时路径。

1.3 沟通与记录

Alpha 阶段的 7 次 Scrum Meeting:

  1. Scrum Meeting 1:文档撰写
  2. Scrum Meeting 2:卡牌设计
  3. Scrum Meeting 3:UI 完善
  4. Scrum Meeting 4:卡面美术
  5. Scrum Meeting 5:地图设计
  6. Scrum Meeting 6:地图实现
  7. Scrum Meeting 7:关卡流程

1.4 时间、质量与资源的平衡

团队采取弹性工作制。正常阶段以成员主动接取任务为主;出现阻塞或里程碑临近时,由 PM 重新分配任务。Alpha 阶段做出的关键取舍包括:

  • 优先打通完整游戏循环,不追求一次做完所有卡牌和关卡;
  • 优先解决崩溃、卡死、状态丢失和主流程中断,轻微 UI 问题登记后延期;
  • 先建立数据驱动的卡牌/敌人框架,再扩充内容;
  • 为 Windows 和 macOS 都提供安装包,把“能交付给用户”作为完成标准;
  • 临近期末时减少低价值会议,把时间留给联调、测试和发布。

1.5 实际进度与燃尽情况

Alpha 阶段尚未统一每日剩余工作量的记录口径,本节使用 7 次 Scrum 记录、Issue/PR 和 Git 历史呈现实际进度。Beta 阶段将统一任务粒度和完成标准,并在迭代过程中持续更新燃尽图。

时间段 Git 提交记录数 过程观察
截至 4 月 19 日 2 需求、文档和仓库准备阶段
4 月 20—26 日 49 核心系统和首轮 UI 集中实现
4 月 27—5 月 3 日 24 地图、事件、战斗重构与联调
5 月 4—10 日 50 内容整合、Bug 修复、发布前打磨

最后一周共有 50 条提交,说明联调、重构和缺陷修复主要集中在发布前。后续迭代需要进一步前移集成测试与验收工作。

2. Alpha 阶段成员贡献

贡献分以 0.5 为基准、总和为 3.0。提交数量用于提供可验证的开发记录,最终分数同时综合策划、美术、测试、管理、代码审查和关键任务支援等成果。

成员 角色 团队贡献分(0.5为基准) 具体
丁宇城 PM 0.6 代码审查、动员、项目管理、平衡性调整
周子强 美术/策划 0.6 大部分卡牌设计、地图设计、BOSS关设计、UI设计
罗春宇 技术负责人/美术 0.5 整体代码框架搭建、动画音效导入
琚长昊 动画/UI设计 0.6 动画制作、大部分UI设计
刘昶 策划/测试 0.4 整体游戏设计、平衡性测试
陈申学佳 美术/开发 0.3 卡牌贴图收集、玩法测试

统计方法:对截止 2026-05-10 的 Git 历史按作者邮箱归并;总计 125 条唯一提交记录。成员使用多个 Git 邮箱的情况已合并统计。

3. 用户场景与实际发布

3.1 开发前目标与发布结果

预期场景 Alpha 结果 说明
玩家在地图中探索并选择路线 已满足 可自由移动,小地图标识主要交互点
使用植物卡牌进行回合战斗 已满足 阳光、抽弃牌、目标选择、敌人意图和状态结算均可用
通过战斗持续构筑牌组 已满足 奖励三选一、商店购买、休息点删牌
体验随机事件和资源管理 已满足 事件、金币、生命、商店和休息点已接入主流程
完成 Alpha 一局并结算 已满足 击败精英关后通过传送点进入通关界面
新用户无需解释即可上手 部分满足 有教程,但术语解释和卡牌清晰度仍需改进
长期反复游玩 未完全满足 Alpha 内容量和数值平衡仍不足

3.2 用户反馈与 Bug

Alpha 阶段的用户反馈主要通过试玩、交流群和开发者现场观察收集。可追溯的改进包括:

反馈/问题 处理结果
卡牌拖拽时与僵尸点击区域冲突 禁用拖拽期间的敌人命中区并调整层级
奖励页面查看地图/牌库出现问题 修复场景覆盖逻辑,并允许跳过奖励
手牌太小、关键词不易理解 放大手牌,并在悬停时显示关键词解释
冰冻、易伤卡牌效果错误 修正卡牌技能实现
地图素材在合并冲突中丢失 恢复本地素材并同步场景代码

这些问题包括 UI 优化,也包括场景叠加、拖拽层级和合并冲突等联调阶段发现的问题。团队将用户反馈、Bug 修复与 Git 提交关联,形成可追溯的处理记录。

4. 特色功能复盘

4.1 团队自评

Alpha 达到了“验证 PvZ + 卡牌 Roguelike + 自由探索能否形成完整体验”的核心目标。地图、战斗、奖励、事件、休息和商店共同作用于生命值、金币和牌库,形成了连续的游戏系统。

与预期仍有差距的部分是内容量、数值平衡、术语一致性和动画反馈。8 张卡牌足以验证框架,但还不足以支撑大量不同构筑;一张地图能够验证探索方式,但重复游玩的变化有限。

4.2 用户侧信号

约 40 名可确认试玩用户、169 次视频播放以及点赞、投币和收藏说明项目对 PvZ 和卡牌玩家具有一定吸引力。试玩中最容易被理解的是植物能力与卡牌效果之间的对应关系;反馈最集中的是卡牌文字清晰度、术语解释和交互反馈。

5. 软件工程质量总结

5.1 文档与规范

项目已有:

  • README:环境要求、快速开始、构建、打包、操作方式和目录结构;
  • 功能规格说明书与技术规格说明书;
  • 地图设计、地图系统和地图路线图文档;
  • Alpha 发布说明、测试报告和 CI/CD 实践文档;
  • Prettier 统一代码格式;
  • GitHub Issue、PR 和分支协作流程。

主要问题是部分文档仍存在历史内容和当前实现不完全同步的情况。Beta 阶段需要把“代码变更时同步文档”加入 PR 验收清单。

5.2 测试与质量门禁

Alpha 截止提交中已有 11 个自动化测试文件、37 个测试声明,覆盖地图素材、战斗布局、奖励、事件、休息点、商店、牌库等模块。CI 会在 PR 和主分支 Push 时运行格式检查与自动化测试。

Alpha 测试报告基于提交历史归类出约 25 个已修复 Bug。现有测试主要覆盖数据完整性、界面布局和回归检查;Beta 阶段将进一步补充核心逻辑单元测试、覆盖率统计和极端边界场景。

5.3 CI/CD

项目使用 GitHub Actions:

  1. 拉取代码和 Git LFS 美术资源;
  2. 安装 Node.js 与依赖;
  3. 执行 Prettier 格式检查;
  4. 执行 Node 自动化测试;
  5. 通过本地脚本生成 Windows 和 macOS 安装包。

选择 CI 的原因是游戏包含大量资源文件和跨平台构建步骤,人工打包容易遗漏资源或产生环境差异。Alpha 的流水线主要承担持续集成质量门禁,桌面包仍由团队按发布清单生成和上传。

6. 经验教训与 Beta 计划

6.1 Alpha 阶段的经验与教训

  1. 可工作的完整闭环比孤立功能更重要。 地图、战斗、奖励和补给串起来后,用户才能真正评价玩法。
  2. 接口约定必须早于多人并行开发。 地图、战斗和奖励都修改 GameState,接口不清会带来大量联调成本。
  3. 任务完成标准需要包含测试与文档。 功能实现后还应完成自动化检查、跨模块验证和文档同步。
  4. 真实发布会暴露内部测试看不到的问题。 字体清晰度、术语理解和首次操作成本只有交给新用户后才明显。
  5. 燃尽图需要在迭代过程中维护。 团队应统一任务粒度和完成标准,按日更新剩余工作量。
  6. 活跃用户必须先定义统计口径。 视频播放、安装人数、完成一场战斗和逐日 DAU 是不同指标。

6.2 Beta 阶段计划

方向 计划 验收标准
内容扩充 扩展到 5 张章节地图、49 张卡牌和 20 余种关卡 内容数据可正常进入主流程并通过回归测试
Boss 与机制 增加章节特色、Boss 战和更丰富的卡牌配合 玩家可完成完整多章节流程
UI/动画 放大关键信息,统一术语,补充卡牌/僵尸动画与音效 新用户无需口头指导完成第一场战斗
稳定性 修复 Alpha 已知问题,补充自动化回归 阻断性 Bug 清零
存档 增加自动保存与继续游戏 退出后可恢复当前进度
用户数据 记录启动、战斗、通关与反馈 能区分曝光、下载、活跃和留存
工程流程 明确 Done 标准,保持 CI 和文档同步 PR 必须通过格式、测试和评审
posted @ 2026-06-29 15:18  魔法细胞  阅读(5)  评论(0)    收藏  举报