2.1.2游戏功能
本游戏对游戏声音的控制、游戏等级的控制、最高分的记录、游戏暂停、游戏重新开始、游戏结束这些功能都要求能在手机模拟器上运行。
贪食蛇的玩法很简单,用键盘上的方向键控制贪食蛇的运动方向,游戏的目的是控制贪食蛇吃掉更多的食品,但是不能碰到四周的墙壁,也不能让贪食蛇的首尾相接,否则游戏失败。游戏最终是要在手机上允许。能够使用键盘控制贪食蛇的运动,生成新的点,并且能够根据点数进行记分.
2.1.3游戏的操作性要求:
易于学习: 既然手机游戏面向的是普通消费者而不是计算机专家,那么他们不可能深入的学习游戏技巧。消费者不会花几个小时去研究一个3元的手动操作的游戏。保持游戏的简单是最基本的要求。
可中断性: 多任务处理是手机生活方式的基本特征。手机用户常常在任务(如等一个电子邮件或者等车)之间有一小段时间。而游戏、日历管理、通讯和工作数据访问使用的是同一个设备。所以一个好的手机游戏应该提供短时间的娱乐功能,并且允许用户在游戏和工作模式之间顺利切换。
2.1.4 游戏的实用性
丰富的社会交互: 不管一个游戏设计得多好,只要玩家找到了它的根本模式或者玩完了所有的游戏路径很快就会厌烦这个游戏。重要的是与别的玩家合作以增强所玩游戏的智力和随机性。在今天纷繁复杂的多玩家游戏中具有丰富社会交互的游戏证明是成功的。
2.2系统设计目标
2.2.1游戏设计思想
本科期间做过很多课程设计,大多规模很小。在数据库、各种应用软件和游戏中,我仍觉得对游戏的设计有极大的热情。因为其各个模块间的联系十分紧密,代码重复执行率高,当经过无数次的调试、修改后,能最终看到成品,有无比自豪的心情。大学期间做过图书馆管理程序等简单的数据库管理系统的课程设计,思想大致相似,变化范围有限,没有太多自己可发挥的余地。大家作品的最终结果都离不开同一个模式。相比一些数据库软件,游戏的设计有很多人情色彩和艺术思想的发挥,正式商业的软件的人性化界面和各个游戏间迥异的结构每每会让人有去开发的冲动。综合运用以前所学习的知识,设计一个JAVA手机游戏,并能实现以下的功能:游戏声音的控制、游戏等级的控制、最高分的记录、游戏暂停、游戏重新开始、游戏的结束。
手机已经与现代生活方式紧紧地结合在一起。他们是最普遍携带的个人用品中仅次于钥匙和钱包的东西。传统的台式机游戏将目标锁定在低级趣味的人和青少年身上,而手机游戏则每个人都可以访问的到——随时,随地。尽管每个手机游戏都不贵,但是巨大的使用量(如:每人每星期一个新游戏)将使得这个市场商机无限。但是,对于开发者来说,将控制台游戏迁移到手机游戏工程很大。因为他们所面向的对象、生活方式和分布式模型都有着极大的区别。
由于J2ME平台被认为是最杰出的手机游戏平台,它为开发者、设备制造商、网络通信公司和消费者广泛接受。它有一些非常重要的特征对所有组织都有益。因此本文采用它来进行设计。利用Java撰写手机上的程序当然有其缺点,最广为人知的可能就是执行效率的问题,Java在执行速度这个议题上一直让人诟病。不过笔者认为,随着技术的发达,将会有更快更省电的嵌入系统专用CPU出现,Java One中也传出将针对J2ME开发专用芯片,让Java在 手机上的程序可以跑得更快,因此效率上的总是其实是可以忽略的。更何况,当Sun在设计J2ME的时候,也用了很多方式企图加快Java 在手机上的执行速度。
2.2.2 模块框架结构
贪食蛇游戏是一条不停游动的蛇不断的捕食来达到自身的增长,但是若蛇碰到自身的身体或者碰到了任何障碍物,则游戏结束。 设计初期要做的工作 寻找规律,建立对象模型: 首先从物理的角度来分析蛇的运动规律。它是蠕动的,像水一样流动。他有个特性就是身体的每一个点都经过他头部所在的点,他每一个时刻骨节所要运动的目的地是他前一个骨节所在的位置。 不难看出,其中的对象模型为: 蛇,骨骼,骨节,头 抽象的接口为: 蛇,骨骼,骨节,头,图元
接下来将各个流程分解成模块,开始编码。
2.2.3 关键技术问题
本程序需解决的有关技术问题
1.游戏程序是一项精度要求很高的程序系统,因为其代码利用率很高。一个实时运行的最终作品,每秒都会运行成千上万行程序,绘图事件、键盘事件都会以极高的频率在后台等待响应,若有丝毫的差别都将很容易导致程序在运行不久后可能出现严重错误,甚至死循环。因此,其逻辑设计应当相当严谨,需将所有可能发生的事件及意外情况考虑在设计中。 2.游戏中为了美观,适用性强,可能需要采用外部文件引入的图片贴图,有关贴图,在MIDP2.0中提供了用于增强游戏功能的game包,使得解决静态或动态、画面背景、屏幕刷新的双缓冲等都有较好的解决方案。 3.一开始就把模块划分好,这样就可以简单而有效地避免了牌的重复,也可以大大地简化了程序代码的编写。 4.蛇的位置的转化可以用一个函数来实现,这样就可以使代码更模块化,利用也就可以更高。 5.蛇慢慢移动的实现。蛇的移动是用线程来实现的,用Thread.sleep()
这个函数来作时间延迟,让坐标变量缓慢地变化。然后通过刷新画图,就会使人觉得牌是在缓慢地移动。 6.除开发过程中对结构上的控制、变量的使用、算法的优化等优化外,还可以使用混淆器(Obfuscator)进行程序打包后的优化。 以上相关技术细节和整体流程将分别在以下小节阐述。
2.3系统开发环境
本系统开发环境采用新推出的NetBeans 5.5。
NetBeans 5.5是全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。它通用性高,开发出的应用程序可保证能运行在大部分设备上,而不像专用厂商具有一定的不兼容性。虽然它没有强大的功能和完善的调试手段,但它提供运行模拟器的最基本组件,是其他IDE需集成采用的必备元素。您将会发现编程不再是枯燥无味的工作,NetBeans 5.5的每一个设计细节,都将带给您一份欣喜。
2.4系统运行环境
硬件环境:
CPU:Intel Pentium-M 725 1.6GHz
内存:512 MB
硬盘:60 G
软件环境:
操作系统:Microsoft Windows XP Professional
应用软件:WTK 2.5
WTK 的全称是Sun J2ME Wireless Too
首页 上一页 1 2 3 4 5 6 7 下一页 尾页 2/7/7
免费手机吞吃蛇游戏的设计与开发(二)由毕业论文网(www.huoyuandh.com)会员上传。