基于java的坦克大战游戏开发开题报告
2020-07-02 22:57:15
1. 研究目的与意义(文献综述包含参考文献)
开发背景
随着科学技术的发展,人们的生活水平日益提高,电脑也步入了家家户户,pc端游戏也随之兴起。坦克大战作为一款经典的操作射击类游戏,因其大受欢迎的关卡制和其极低的操作需求而经久不衰。该项目希望重现这款经典游戏并且设计一些独特的算法使其更加智能,更具乐趣性。
当前,中国的游戏市场一直在保持着高速增长,人们对游戏这方面的娱乐需求也日益增加。游戏业已经进入了高速发展时期,渐渐的成为中国文化创意产业的引领者之一,在2017年里,游戏行业实际销售收入约为2036.1亿人民币,同比增长23%。这一数字也证明了人们对游戏的需求正在增加,并逐渐的接受了游戏消费的这种观念。据cnnic第41次调查报告显示,截至2017年12月,我国网络游戏用户规模达到4.42亿,占整体网民的57.2%,较去年增长2457万人,这一数据也充分证明了我国游戏行业的火热。此外,java语言经久不衰,一直为人们所喜爱。而在游戏中运用的算法方面的研究也越来越火热,通过优化的算法来增进游戏的智能性、玩家体验性等等也推动着游戏产业的发展。
坦克大战游戏历经众多玩家的检验而一直兴盛,它看似操作简单却变化无穷,这也是它的魅力所在,也因此而常常使人沉醉其中。这款游戏包含了游戏画面、碰撞检测、实时输入、地图编辑、人工智能等多个方面。我希望能够通过这款游戏的设计制作来体会java语言的特点和游戏制作的魅力。
系统功能需求
(1)游戏模式:
本游戏初始界面可以选择合适的关卡来挑战,可以选择单人模式或者双人模式,在己方基地未被破坏的前提下击败所有敌方坦克进入下一关直至闯过所有关卡,每通过一关会进行玩家得分统计,除此之外则被认定为游戏结束。
(2)坦克:
游戏中分为玩家坦克和敌方坦克,玩家坦克有固定的生命值,玩家坦克闯关过程中随玩家表现会出现各种道具,玩家坦克吃了不同的道具会产生不同的效果加成,有子弹速度变快、给基地增加一个防护罩、给自己坦克增加一个防护罩、生命值增加、炸弹、敌方坦克时间停止。敌方坦克分为几种不同的坦克,它们各自有不同的属性,敌方某种坦克被击中会变成另一种坦克等等功能。此外,由于敌方坦克是电脑自动运行,所以会采用一些算法增强它的智能性以提高游戏体验。
(3)碰撞检测:
游戏中存在着很多碰撞,有子弹与子弹的碰撞,子弹与障碍物的碰撞,子弹与我方(或者敌方)坦克的碰撞,坦克与坦克的碰撞,坦克与道具的碰撞。因而,游戏中需要设计一套碰撞检测机制以处理上述各种碰撞,并且考虑到游戏中碰撞发生的频率,所以我们需要的不仅仅是实现这些功能,而且需要尽可能的优化来提升游戏运行性能。
(4)得分:
得分主要根据游戏中击杀坦克数量,摧毁的障碍物数量、玩家剩余生命,玩家获得道具这些信息进行综合计算。
(5)地图编辑器:
玩家可以自己创造喜欢地图模式,然后会选择保存路径进行保存。玩家可以进入默认关卡进行游戏,也可以选择自己创建的地图上进行游戏。
(6)用户体验:
游戏中每个关卡的场景地图各不相同,并且伴有背景音乐,来提高用户体验。此外,玩家游戏过程中也可以暂停继续,还可以选择保存游戏记录,下次可以重新选择该记录接着游戏。
2. 研究的基本内容、问题解决措施及方案
一、研究或解决的问题
1、玩家控制的坦克的完整功能和敌方坦克自主行动及射击的功能的实现
2、游戏中的各种道具效果的实现
3、游戏中碰撞检测的实现
4、游戏关卡的设计实现
二、研究手段(途径)
1.通过监听事件及事件处理操作来实现坦克的各种功能及道具效果的体现
2.通过JAVA的图形化用户界面、绘图工具线程完成游戏的界面效果
3.基于对象坐标和路径搜索算法等等来设计游戏中的碰撞检测算法和敌方坦克智能移动算法
4.开发IDE选用Eclipse