软件工程第二次作业

《“羊了个羊”小游戏开发之旅》

一、项目展示

项目代码已上传至 GitHub 仓库:https://github.com/zzsthere/zzsthere。

二、项目介绍

(一)前端设计与特色功能

  1. 界面设计

    • 使用 Pygame 图形库设计了游戏界面,包括清晰明了的封面、模式选择、游戏界面和结束界面。
    • 封面背景、选项图片以及游戏结束背景和选项图片都经过精心挑选和调整大小,以适应屏幕尺寸,为玩家提供良好的视觉体验。


  2. 特色功能

    • 多种模式选择:提供了简单模式和困难模式,满足不同玩家的需求。简单模式下游戏网格尺寸为 6x6,困难模式为 12x12,增加了游戏的挑战性。
    • 视频道具:在游戏中添加了视频道具功能。玩家可以选择使用该道具,位于右上角,点击后会模拟显示观看视频的选项。观看视频结束后,会为游戏增加固定的 60 秒时间,增加了游戏的趣味性和策略性。

![](htt
ps://img2024.cnblogs.com/blog/3516908/202409/3516908-20240918184933419-1412533349.png)

(二)技术与算法

  1. 技术实现
    • 使用 Python 的 Pygame 库进行游戏开发,实现了游戏的图形界面、交互逻辑和音效播放。
    • 通过加载各种图片资源,包括图案、背景、选项图片和道具图片,为游戏增添了丰富的视觉元素。
    • 利用 Pygame 的事件处理机制,实现了玩家与游戏的交互,如鼠标点击、模式选择和道具使用等。
  2. 算法实现
    • 图案生成与分布:为了确保简单模式下图像数量是每一个选定图像的 3 的倍数,使用了特定的算法来调整图像数量。同时,通过随机生成无序且随机分布的图案,并确保图案之间不重叠,实现了游戏图案的合理摆放。

    • 消除逻辑:当玩家选择三个相同的图案时,会成功消除并播放消除音效。如果选择的图案不相同,则会将图案放回原位。这种消除逻辑通过遍历选中的图案列表,判断图案是否相同来实现。

三、测试

  1. 测试样例
    • 对游戏的不同模式进行测试,包括简单模式和困难模式,检查图案的生成和分布是否符合预期。
    • 测试视频道具功能,点击道具后检查是否正确显示视频选项模拟,并在视频观看结束后是否正确增加时间。
    • 测试游戏的消除逻辑,选择不同的图案组合,检查是否能够正确消除或放回原位。
    • 测试游戏的结束条件,包括所有图案被消除时游戏胜利和倒计时结束时游戏失败。
  2. 测试结果
    • 在不同模式下,图案生成和分布合理,没有出现重叠或错误的情况。
    • 视频道具功能正常,点击道具后能够模拟显示视频选项,并且在视频观看结束后正确增加了时间。
    • 消除逻辑准确,能够正确判断图案是否相同,并进行相应的消除或放回操作。
    • 游戏的结束条件能够正确触发,当所有图案被消除时游戏胜利,倒计时结束时游戏失败。
  3. 测试设计评价
    • 测试用例涵盖了游戏的主要功能和逻辑,能够有效地检查游戏的正确性和稳定性。
    • 通过对不同模式、道具功能和消除逻辑的测试,能够发现潜在的问题并及时进行修复。
    • 然而,测试用例可能还不够全面,例如没有对游戏的性能进行测试,可能会在大量玩家同时游戏时出现性能问题。

四、AIGC 表格任务

子任务 借助何种 AIGC 技术,实现了什么功能 效果如何?
图案生成与分布 未明确使用特定 AIGC 技术,通过手动编写算法实现随机生成无序且随机分布的图案,并确保可完全消除。 图案生成合理,分布均匀,能够满足游戏需求。
界面设计 未明确使用特定 AIGC 技术,使用 Pygame 图形库手动设计游戏界面。 界面美观,操作方便,能够为玩家提供良好的视觉体验。
视频道具功能 未明确使用特定 AIGC 技术,手动编写代码实现视频道具功能,包括点击道具后模拟显示视频选项和增加游戏时间。 视频道具功能增加了游戏的趣味性和策略性,效果良好。

五、PSP 表格

阶段 预估耗时 实际耗时 评价
需求分析 1 小时 1 小时 准确理解了作业要求,明确了游戏的功能和特色。
设计 2 小时 2.5 小时 在界面设计和游戏逻辑设计方面花费了一些时间,但最终设计出了合理的方案。
编码 8 小时 10 小时 在编码过程中遇到了一些问题,如变量未定义、视频道具功能实现等,但通过查阅资料和调试,最终解决了问题。
测试 2 小时 2 小时 测试用例覆盖了游戏的主要功能,发现并修复了一些问题。
博客撰写 2 小时 2 小时 详细介绍了项目的各个方面,包括前端设计、技术实现、测试和 AIGC 表格任务等。

总体评价:本次作业完成得较为顺利,通过使用 Pygame 库成功实现了“羊了个羊”风格的消除类小游戏,并添加了多种模式选择和视频道具功能。在开发过程中,遇到了一些问题,但通过查阅资料和调试,最终都得到了解决。在未来的开发中,可以进一步优化游戏性能,增加更多的道具和功能,提高游戏的趣味性和挑战性。

posted on 2024-09-18 18:53  zzsthere  阅读(35)  评论(0编辑  收藏  举报