103
社区成员
发帖
与我相关
我的任务
分享| 这个作业属于哪个课程 | 2501_CS_SE_FZU |
|---|---|
| 这个作业要求在哪里 | 团队作业——站立式会议+α冲刺 |
| 这个作业的目标 | 冲刺总结 |
| 其他参考文献 | 《构建之法》、Google Style Guides |
冲刺初期,我们基于 “玩家 - 敌人 - 场景 - 交互” 核心链路,拆解 6 大核心模块与阶段目标,计划 6 天内完成基础玩法闭环:
经过 6 天冲刺,项目不仅完成全部预期功能,还在细节体验上实现多轮优化,核心成果如下:
玩家模块:实现双跳 + 土狼时间优化移动手感;添加连续 Dash 后的临时速度清除逻辑,防止移动失控;设计受击无敌帧与击退效果;将重生动画时长与倒计时绑定,避免画面卡顿。相关代码可参考PlayerController.cs中的PerformDash()临时速度清除逻辑、TriggerRespawn()重力参数调整。
敌人模块:区分普通 / 精英敌人差异化攻击节奏(普通敌人前摇 0.5s、精英敌人前摇 0.8s);通过 “攻击时临时忽略友方碰撞” 解决多敌人混战卡顿;添加追击路径实时更新逻辑,避免敌人追错方向;采用 “2 秒自动销毁 + 淡出动画” 处理敌人尸体,优化性能。代码层面,EnemyAI.cs中的OnAttackAnimationFinalFrame()将攻击后摇取消与动画结束帧绑定,FollowPath()实现路径动态更新。
攻击模块:集成元素攻击属性克制关系(如 “火克冰”);扩大雷元素连锁攻击范围(从 2m 调整至 2.5m);设计火元素燃烧伤害递减机制(第 1 秒 5 点→第 2 秒 3 点→第 3 秒 2 点);明确攻击判定优先级(优先触发攻击盒检测,未命中时启用 SphereCast 球形检测补全判定)。代码可参考Attack.cs中的ApplyThunderEffect()连锁半径调整、BurnEffect.cs中 “敌人死亡时清除燃烧状态” 的逻辑。
技能模块:完成火球术投射体的碰撞层过滤(仅检测 Enemy 层);通过速度归一化解决 DashStab 技能斜向冲刺距离缩短问题;设计连招提示渐隐过渡效果,避免信息覆盖;为技能冷却 UI 添加进度条,直观展示冷却剩余时间。SM_Fire_Fireball.cs配置投射体参数,ComboHintUI.cs通过队列管理实现提示有序显示,SkillCooldownUI.cs实现冷却进度条逻辑。
地图模块:为恢复泉水添加多玩家冷却机制(同一玩家 3 秒内仅触发 1 次恢复);限制单泉水粒子最大数量为 50 个,避免特效叠加掉帧;在 Boss 区域外围添加战斗预警圈,提示玩家进入高强度战斗;在隐藏区域设置微弱发光引导,辅助玩家探索;批量修复 Tile 碰撞层,确保 Ground 层设为不可穿透。HealFountain.cs实现粒子数量限制,HiddenAreaGuide.cs动态调整引导光点亮度。
UI/UX 模块:控制血条受击闪烁频率(1 秒内最多闪烁 2 次),避免视觉疲劳;优化背包 UI 中 “99+” 文字布局(调整锚点至图标右上角并缩小字号);重新制作 2 倍尺寸的技能栏按键提示图标,适配 2K 高分辨率;修复死亡 UI 重生按钮状态同步问题(倒计时结束后禁用按钮并置灰)。HealthBarController.cs实现闪烁频率限制,QuitGameManager.cs完成按钮事件绑定。
性能瓶颈突破:通过 “敌人尸体 2 秒自动销毁 + 淡出动画”“技能特效渲染层级分级(关键 / 普通 / 次要)”,将 20 + 敌人混战帧率从 45fps 提升至 58fps;
战斗体验升级:精英敌人攻击后摇绑定动画结束帧,消除 0.1 秒僵硬感;冰元素冻结时长随技能等级提升(1 级 2 秒→3 级 3 秒),强化成长感;
探索引导强化:地图指路箭头 5 米外自动隐藏,避免场景堆积;恢复泉水粒子与数值飘字同步触发,解决 “有特效无反馈” 的玩家误解。
目前项目已实现 “玩家移动 - 敌人战斗 - 技能释放 - 地图探索 - UI 交互” 全流程闭环,可运行版本包含:
核心场景:洞穴风格 Tilemap 地图(含 Boss 预警区 / 隐藏宝箱);
战斗系统:3 种元素攻击 + 2 个技能 + 敌人 AI 差异化;
辅助功能:血条 / 背包 / 技能冷却 UI、死亡重生、恢复泉水交互。

6 天冲刺中,每位成员都在模块开发中突破技术盲区,形成对 “游戏开发细节” 的深度理解:
从 “多敌人死亡掉落重叠” 到 “添加随机偏移”,明白 “多对象并发需预判交互冲突”;从 “固定击退参数” 到 “按敌人体型动态调整”,理解 “数值设计要贴合玩家感知”,而非仅满足功能实现。
血条高频闪烁优化让他意识到 “反馈有效性需平衡感官舒适度”—— 既要让玩家清晰感知受击,又不能过度刺激视觉;背包 720p 适配问题让他养成 “多分辨率专项测试” 习惯,UI 设计从 “追求视觉美观” 转向 “优先保障操作好用”。
恢复泉水粒子掉帧问题让他学会 “资源轻量化设计”(限制单泉水 50 粒子),避免特效过度消耗性能;宝箱交互延迟优化让他重视 “时序同步”,确立 “先跑通逻辑、再补视觉细节” 的开发顺序,避免本末倒置。
攻击盒盲区问题让他掌握 “多判定方式互补”(攻击盒 + SphereCast),确保近距离攻击无遗漏;暴击数字视觉区分(调大字号 + 红色高亮)让他明白 “战斗反馈需直观传递状态差异”,帮助玩家快速感知战斗效果。
Dash 技能累积加速调试让他学会 “高频操作场景专项测试”—— 针对玩家可能连续触发的功能,提前预判状态累积风险;敌人尸体渲染残留修复让他理解 “资源销毁需等待动画闭环”,测试思维从 “被动找 bug” 转向 “主动预判风险”。
火球术穿透敌人问题让他掌握 “碰撞层精确过滤”,避免误触发非目标对象;连招提示覆盖问题让他学会 “信息传递需保留过渡时间”,通过渐隐效果让玩家有足够时间读取信息,技能设计兼顾 “策略深度” 与 “操作流畅度”。
陈志豪负责敌人模块,核心职责是开发敌人 AI 逻辑与死亡掉落系统,具体包括敌人的巡逻、追击、攻击前摇与后摇设计,同时优化多敌人混战行为,解决敌人 “追击到地图边缘后无法返回原区域”“击退距离过短导致战斗难度失衡” 等问题。关键交付成果为普通与精英敌人的差异化攻击节奏(普通敌人前摇 0.5 秒、精英敌人前摇 0.8 秒)、敌人超出巡逻范围 10 秒自动返回原点的逻辑、多敌人攻击时临时忽略友方碰撞的机制,最终交付EnemyAI.cs核心脚本及掉落物生成与资源清理逻辑。
胡定赟负责 UI/UX 设计模块,主要承担血条、背包、技能栏、死亡 UI 等界面的开发工作,重点解决多分辨率适配(如 720p 低分辨率下背包槽位显示不全)、UI 状态同步(如死亡 UI 重生倒计时结束后按钮仍可点击)、视觉反馈优化(如玩家连续受击时血条高频闪烁)等问题。关键交付成果包括血条数值平滑过渡算法(Lerp 插值)、背包 UI 中 “物品数量超过 99 时显示 99+” 的功能、适配 2K 分辨率的技能栏按键提示图标,同时交付HealthBarController.cs(血条控制)、QuitGameManager.cs(退出按钮事件绑定)等 UI 核心脚本。
阮航宇负责地图与资源设计模块,核心工作是构建 Tilemap 地图、配置地形碰撞层、开发地图可交互物,具体包括使用 cave_tileset 补充洞穴通道、障碍物等场景细节,实现恢复泉水、宝箱、指路箭头等交互逻辑,解决地图部分 Tile 碰撞层未设置导致玩家穿模、恢复泉水粒子特效与数值飘字不同步等问题。关键交付成果为恢复泉水 “每 2 秒恢复 10% 生命值 / MP 且单玩家 3 秒内仅触发 1 次” 的逻辑、Boss 区域外围红色渐变预警圈、隐藏区域微弱发光引导效果,最终交付HealFountain.cs(泉水交互)、HiddenAreaGuide.cs(隐藏区域引导)及完整的地图场景文件。
张天荣负责攻击模块,主要开发近战攻击判定、元素攻击效果与伤害反馈系统,具体包括实现 J 键触发近战攻击、调整攻击盒大小与命中特效触发时机,集成火(燃烧)、冰(冻结)、雷(连锁)三种元素攻击逻辑,解决攻击盒近距离判定盲区、SphereCast 球形检测与原攻击盒判定范围重叠导致重复伤害等问题。关键交付成果为攻击判定优先级规则(优先触发原攻击盒,未命中时启用 SphereCast)、火元素燃烧伤害随时间递减机制(第 1 秒 5 点→第 3 秒 2 点)、雷元素连锁攻击范围从 2 米扩大至 2.5 米,交付Attack.cs(攻击核心逻辑)、BurnEffect.cs(燃烧效果)等脚本。
汪涛负责玩家模块与测试优化工作,核心职责是开发玩家移动、死亡重生、受击反馈等核心交互逻辑,同时执行全流程测试并优化性能,具体包括实现双跳、土狼时间、Dash 冲刺等移动功能,解决重生后物理碰撞失效、连续释放 Dash 技能导致移动加速失控等问题,定位并优化 “Update () 中频繁调用 FindObjectOfType”“多敌人死亡时帧率下降” 等性能瓶颈。关键交付成果为玩家移动手感优化(空中移动加速度从 10f 降至 8f)、敌人尸体 “2 秒自动销毁 + 淡出动画” 的性能方案,交付PlayerController.cs(玩家核心控制)及全流程测试报告。
莫馥玮负责技能模块,主要开发技能系统与技能 UI,具体包括实现火球术投射体系统(投射、碰撞检测、燃烧伤害)、近战技能 DashStab(向前冲刺 2 米 + 沿途攻击判定),开发技能冷却 UI 与连招提示功能,解决火球术穿透敌人、技能冷却环动画与实际 CD 不同步、连招提示文字覆盖等问题。关键交付成果为 DashStab 技能斜向冲刺速度归一化(确保各方向位移均为 2 米)、连招提示渐隐过渡效果(0.5 秒渐隐),交付SM_Fire_Fireball.cs(火球术)、ComboHintUI.cs(连招提示)等脚本。
为避免 “各做各的、后期难整合”,团队建立 3 项核心协作机制:
| 成员 | 工作量占比 | 占比说明 |
|---|---|---|
| 汪涛 | 18% | 玩家模块涉及移动、重生、受击等核心交互;同时承担全流程测试与性能优化,解决 8 项关键问题(如 Dash 加速、帧率下降),联调贡献最高。 |
| 陈志豪 | 17% | 敌人模块需处理 AI 逻辑、掉落系统、多敌人并发等复杂场景;解决 6 项核心问题(如追击迷路、掉落重叠),联调时配合攻击 / 玩家模块验证判定效果。 |
| 张天荣 | 15 | 攻击模块涉及多元素效果、判定优先级、伤害反馈等细节;解决 5 项问题(如攻击盲区、雷元素误判),需频繁与敌人模块联调伤害逻辑。 |
| 莫馥玮 | 16 | 技能模块需开发投射体、连招提示、冷却 UI 等功能;解决 4 项问题(如技能穿透、连招覆盖),联调时配合玩家模块验证技能与移动的衔接。 |
| 阮航宇 | 17 | 地图模块以场景构建与资源配置为主;解决 3 项问题(如地图穿模、特效掉帧),联调时配合玩家模块验证碰撞与交互。 |
| 胡定赟 | 17 | UI 模块以界面绑定与状态同步为主;解决 4 项问题(如多分辨率适配、按钮状态),需对接所有模块的 UI 数据,联调频率高但代码量相对较少。 |
α 冲刺实现了 “能玩” 的基础目标,下一阶段(β 冲刺)将围绕 “更好玩” 展开,重点突破 3 大方向:
玩法深度升级:
新增 “技能树系统”,关联元素攻击与技能成长(如火球术升级后燃烧时间延长、冰元素冻结时长增加),强化玩家养成动力;
设计 “Boss 战机制”,结合地图交互(如利用恢复泉水躲避 Boss 技能、借助地形阻挡攻击),提升战斗策略性,避免 “站桩输出” 的单调体验。
体验细节优化:
补充 “新手引导流程”,通过弹窗分步提示元素克制关系、连招组合技巧,降低新玩家上手门槛;
优化 “移动手感”,根据角色状态(空中 / 地面)动态调整加速度与摩擦力,减少空中 “滑步感”,让操作更贴合玩家直觉。
性能与兼容性:
针对低配置设备优化粒子渲染,降低非关键特效(如地面痕迹、微弱光效)的分辨率与粒子数量,保障基础帧率;
适配移动端触摸操作,添加虚拟摇杆与技能按钮,支持横竖屏切换,扩大游戏适用场景。
在本次冲刺中,AI 技术主要用于 “代码生成 - 问题排查 - 文档辅助” 三大场景,成为团队效率提升的关键助力:
代码模板生成:针对 “敌人击退逻辑”“技能冷却 UI”“碰撞检测基础框架” 等通用功能,AI 生成可复用的代码模板(如EnemyAI.cs中的KnockbackCoroutine()、SkillCooldownUI.cs的进度条逻辑),成员仅需根据需求调整参数,减少 80% 重复编码时间,专注于核心体验优化。
问题排查辅助:当遇到 “冰元素冻结后敌人无法移动”“Dash 技能连续释放加速” 等疑难问题时,AI 通过分析代码逻辑,提示 “未绑定敌人死亡清除状态”“临时速度未重置” 等关键原因,帮助成员快速定位问题,避免长时间调试。
文档与注释补充:AI 辅助生成模块接口文档(如Attack.cs中ApplyElementEffect()的参数说明、PlayerController.cs的移动逻辑注释),补全复杂逻辑(如多射线墙体检测、椭圆范围检测)的注释,提升代码可读性,方便后期维护与联调。
未来将进一步拓展 AI 的应用场景,从 “基础工具” 升级为 “策略支持”,重点聚焦 3 个方向:
体验优化辅助:利用 AI 分析玩家操作日志(如 Dash 使用频率、技能命中率、死亡位置分布),挖掘 “玩家容易卡关”“操作反馈不清晰” 的潜在问题,推荐手感调整方向(如降低空中加速度、优化攻击判定范围)。
资源生成效率:通过 AI 生成基础美术资源(如 Tilemap 装饰元素、技能图标初稿、粒子特效参数),减少美术制作周期;同时利用 AI 批量处理资源(如自动生成多分辨率图标、优化模型面数),降低人工成本。
自动化测试:训练 AI 识别常见 bug(如角色穿模、UI 偏移、技能判定失效),自动执行全流程压力测试(如 20 + 敌人混战、连续技能释放)并生成报告,标注高风险场景,解放人工测试精力,让团队更专注于玩法创新与体验打磨。
6 天 α 冲刺,我们不仅完成了游戏基础功能的落地,更在 “解决问题 - 协作补位 - 细节打磨” 中形成团队默契。从 “敌人追击迷路” 到 “路径实时更新”,从 “UI 适配异常” 到 “多分辨率锚点优化”,每个问题的解决都是对 “玩家体验” 的一次敬畏 —— 游戏开发不仅是技术实现,更是对 “玩家感受” 的持续打磨。
下一阶段,我们将带着 α 冲刺的经验,聚焦玩法深度与体验细节,让游戏从 “能玩” 走向 “好玩”,真正实现 “战斗有策略、探索有惊喜、成长有反馈” 的核心目标,为玩家带来更沉浸、更有趣的 2D 动作游戏体验。