坦克大战开发毕业设计(论文)
毕业设计(论文)坦克大战开发摘要进入新世纪以来,计算机游戏业蓬勃发展,已成为新世纪最热门的专业。
坦克大战是一款非常经典。
风靡全球,经久不衰的游戏。
1985年推出的坦克大战(Battle City)由13×13大小的地图组成,地形包括砖墙、海水、钢板、森林、地板5种,玩家作为坦克军团仅存的一支精锐部队的指挥官,为了保卫基地不被摧毁而展开战斗。
游戏以其出色的游戏性感染的一代又一代的玩家。
本程序主要由C#编写。
本文的坦克大战有完整的界面,能够实现人机大战,。
而且坦克大战剧情非常简单,游戏的主角在保护好城堡的前提下,消灭所有的敌人,所以非常容易上手。
本论文第一章是介绍国内外的游戏发展状况,第二章介绍坦克大战的总体设计,第三章是游戏涉及的技术问题,最后总结。
关键词:坦克大战;游戏;技术;代码第一章游戏的背景相信喜欢玩游戏的朋友都是从玩最初的“小霸王”,超级玛丽,坦克大战,等等一系列经典的小游戏开始,然后就是三国志之类的大型一点的,到现在的电脑游戏,单机游戏,到网络游戏,这么一个过程,游戏其实已经不知不觉的进入了我们的生活。
电脑游戏在当今,已经十分普遍了,游戏玩家也比较多。
特别是网络游戏,因为其剧情的有趣性,游戏画面的美观,招式的华丽,等一系列原因,吸引了不少游戏玩家,特别是3D网游的推出,使得网络游戏发展进入了一个新时期。
游戏是怎么发展起来的?国内外游戏的发展情况是什么样的呢?下面将会给你答案。
真正的电子游戏机产生于20世纪70年代。
1971年麻省理工学院的学生Nolan Bushnell设计了世界上第一个业务用游戏机(俗名街机),叫做《电脑空间》(Computer Space)。
《电脑空间》的主题是两个玩家各自控制一艘太空战舰围绕这具有强大引力的星球向对方发射导弹进行攻击。
两艘战舰在战斗的同时还必须注意克服引力,无论是被对方的导弹击中还是没有成功摆脱引力,飞船都会坠毁。
这台游戏机用一台黑白电视作为显示屏,用一个控制柄作为操作器,不过由于市场因素这款游戏以失败告终。
虽然初次尝试失败,但Nolan Bushnell仍然坚信电子游戏发展前景。
他在《电脑空间》推出的次年,和朋友Ted用500美金注册成立了自己的公司Atari(雅达利)。
他们获得了成功,世界上第一台被接受在业务用机就是Atari推出的乒乓球为题材的游戏。
1976年10月,Atari发行了名为《夜晚驾驶者》的模拟业务机游戏,这个游戏为黑白屏幕,自带了相关操作器(方向盘、油门、刹车等)。
在这个游戏里,玩家需要扮演一个黑夜里驾驶在告诉公路上狂奔的疯狂车手。
这是游戏历史上第一个3D游戏,它用简单的透视效果,专业术语是LOD(Level of Detail,层次细节)来表现汽车的前进和道路景物的后退。
这款游戏成为3D游戏的始祖。
除此之外,它还是历史上第一个主视角(First personal view)的游戏。
雅达利公司在开发街机市场之后又把目光转向了家用机市场。
1977年,雅达利公司推出了Atari2600型游戏主机,这是世界上第一台家用专业游戏机。
同年Bushnell把自己的公司以2800万美元的价格卖给了时代华纳。
不久,任天堂和世嘉迅速崛起,彻底击败了雅达利。
上面介绍的是专用机游戏的历史,而最早的电脑游戏可以追溯到1972年,一个叫Crowther的工程师用当时最流行的主机——DEC公司的PDP-10编写了一段简单的FORTRAN程序(FORTRAN是一种专用工程数学编程语言,当今流行的工程模拟软件MATLAB的早期版本就是由FORTRAN语言开发出来的)。
在这个程序里,Crowther设计了一张地图,地图上不规则的分布着陷阱,游戏者必须寻找路径避开陷阱。
这个程序被公认为是最早的电脑游戏程序。
1976年,Don Woods编写了一个类似的程序,更为重要的就是他加入了幻想成分(Imagination)和谜题(Puzzle)。
Woods的这个程序直接导致了电脑游戏的诞生。
他的程序被传播到各处,让所有的计算机高手们都为之惊喜。
这个作品同时也启发了其他人的思维,紧接着,各式各样的游戏程序就诞生了。
比较著名的麻省理工学院的几个学生编写的Zork (直到现在还有续集在发售)和亚当斯1978年编写的Adventure Land 后来用电脑编制电子游戏就开始在程序员之间流行起来。
当时的电子游戏大多数还都是编程高手们做出来自娱自乐的“玩具”,这是因为当时接触计算机的还只是科技精英,普通人是接触不到的。
说到这就不得不提苹果电脑,这个中国人眼里普遍认同的奢侈品。
Apple II推出于1976年,设计者是斯蒂夫-乔布斯(Steve Jobs),Apple II是许多人的入门计算机,同时也是一台功能强大的真正的个人电脑。
Apple II和它内置的Basic程序为电脑界培养了无数的人才。
Apple II当时的内存只有64KB,资源的缺乏是的当年的电脑程序精密严谨的可怕。
可以说,当年的程序员才是真正懂得狂想乐趣的人,他们能够在一个匣子里完成一个世界。
更重要的是Apple II 代表了一种自由开发的精神,当年的电脑用户和程序员之间的差别是如此之小,可以说每一个Apple II的用户都是一个不错的Basic程序员。
可以毫不夸张的说,苹果电脑早就了一大批游戏程序设计高手。
而现在的家用电脑变得更像一台家用电器。
1989年,BroderBund公司的设计师乔丹-麦克纳(Jordan Mcchner)根据阿拉伯民族的古老传说《一千零一夜》在Apple平台上制作了一部动作冒险相结合的电脑游戏——波斯王子。
这个游戏获得了空前的成功,他在全球共卖出200万份。
“波斯王子”绝对可以说是电脑游戏动作冒险类(ACT)的第一作,它代表了当时电脑技术的最高水平。
当年的玩家看到栩栩如生上串下跳的王子都不禁惊叹不已,故事讲述的是王子为了拯救公主获得爱情而和罪恶的苏丹王斗争,在游戏中王子需要跑过各种奇怪诡秘的机关,小心地避过上下活动的柱子和深坑里的尖刺,用一把阿拉伯弯刀杀死各种敌人。
1983年,如本的任天堂(Nintendo)和世嘉(Sega)分别推出了自己的家用游戏主机,世嘉推出的两台游戏主机名字叫做SG1000和SG3000。
而Nintendo推出的主机名字是Family Computer(FC)。
当时的FC采用6502芯片作为主CPU,还有一块专门处理图像的PPU。
FC可以显示52种颜色,同屏可以显示最多13种颜色,内存合计为64KB,矩形波2音,三角波1音,杂波1音。
同时任天堂采用了“以软件为主导”的指导思想,不断推出有趣的软件吸引玩家。
1983年底,FC售出44万台,第二年八岁了一些先锋游戏公司分别加入FC 制作者阵线,FC销量大增。
1984年底FC总销售量达到150万台。
1985年9月任天堂公司法手了一款真正的游戏巨作——超级玛丽(Super Mario),这个游戏讲述了一个意大利管子工打败魔王拯救世界迎娶公主的故事。
任天堂凭借这款游戏确立了自己在游戏界霸主的地位。
到了1985年,任天堂在家用机市场上占有率高达98%。
同年,任天堂向海外发售了FC的出口型NES(Nintendo Entertainment System),当年的销量就突破了500万台。
20世纪80年代IBM PC(Personal Computer)兼容机的出现打破了Apple公司的垄断地位。
虽然在最初几年里,PC上的软件数目还无法和Apple II抗衡,不过PC有一个最大的优势,那就是它是完全自由和开放的,所以更多的“穷”程序员可以选择PC机作为自己的开发平台而不是价格按规的Apple机。
这时代比较著名的电脑游戏有Origin Systems公司的RPG《创世纪》系列。
光荣(Koei)公司推出了第一版《三国志》。
当年的《三国志I》画面很简陋,不过到后来的《三国志 4》系列开始大受欢迎,知道现在的《三国志 9》。
到了20世纪90年代,游戏业才真正成熟起来,成为了一种产业。
由于PC机价格非常低而且硬件速度越来越快,游戏逐渐成为人们生活中不可缺少的一部分。
游戏产业也逐渐发展成熟。
这个时代诞生了许多史诗般的巨作:雷神之锤、毁灭战士、星际争霸、最终幻想、魔兽争霸等。
第二章游戏的设计2.1游戏的设计方案首先先介绍一下我的坦克大战的游戏:游戏的规则:游戏每一关以击破所有敌军坦克为目标。
如果自己的坦克的生命用完或者基地被灭则游戏结束。
游戏的流程图:图2.1 2.2游戏的开发所需的硬件和软件过关关数++我的坦克大战所用到的开发环境是微软的Visual Studio 2005集成开发环境。
运行环境是.Net FrameWork 2.0。
硬件条件是CPU主频2.0GHz,内存512M。
因为没有用到DirectX所以对显卡没有特别的要求,一般的显卡都可以胜任。
2.3 游戏中的中枢Level类在这个游戏中创建的Level类的作用是负责游戏逻辑的控制。
例如创建坦克,碰撞的检测,游戏的状态和所有物体的移动。
Level的部分代码如下:public class Level//关卡类{private void GameRun() //游戏运行处理{if (gamestep < 100){gamestep++;if (gamestep % 20 == 0){TankAIFire();}}else{gamestep = 0;if (eptank_count > 0){CreateTank();eptank_count--;}}CleanBombs();DrawGame();Move();HitCheck();CleanDeathTank();CheckGame();}2.4 游戏中的组件的基类Element类我在这个游戏中创建了一个名为Element的类,它是所有游戏中的元素的父类。
Element的代码如下:public class Element//游戏中的元素类 {private Graphics g;public Graphics G{get { return g; }set { g = value; }}private Size size;public Size Size{get { return size; }set { size = value; }}private int x;public int X{get { return x; }set { x = value; }}private int y;public int Y{get { return y; }set { y = value; }}private List<Image> images;public List<Image> Images{get { return images; }set { images = value; }}private int imagestate;public int Imagestate{get { return imagestate; }set { imagestate = value; }}private bool islife;public bool Islife{get { return islife; }set { islife = value; }}第三章游戏所涉及的技术问题3.1 GUI+与图像双缓冲技术我们在用C#处理图像时都需要用到GUI+技术,GUI+是GUI技术的扩展,拥有比GUI更加强大的功能。
基于java的游戏坦克大战论文
目录摘要 (I)ABSTRACT (II)第一章绪论 (1)1.1课题研究的背景 (1)1.2课题研究的任务 (1)第二章系统分析 (2)2.1课题的可行性分析 (2)2.2需求分析 (2)第三章系统总体设计 (3)3.1游戏总体流程设计 (3)3.2游戏界面设计 (4)第四章游戏详细设计 (6)4.1各个类的实现 (6)4.2程序的详细设计 (7)第五章测试 (9)5.1软件测试说明 (9)5.1.1 软件测试的目标 (9)5.1.2 软件测试的原则 (9)5.2测试计划 (10)5.2.1 进行通过测试 (10)5.2.2 进行有效类测试 (10)5.3测试用例 (10)总结 (10)参考文献 (11)致谢 (12)附录一坦克大战中的类 (15)附录二坦克大战程序 (31)第一章绪论1.1课题研究的背景如今我们的生活节奏越来越快,每个人的生活压力也在不断变大,长期紧绷着神经容易产生心理和生理上的双重伤害,人们需要在工作和学习之外放松自己,玩玩游戏正是放松自己的方式之一。
坦克大战,一个众所周知的小游戏,曾经在红白机时代风靡一时。
其界面简单,耐玩,关卡多,可玩性高,没有局限的年龄层。
Java是现在全球最时髦的开发工具之一,它拥有庞大且完善的类库,内置了其他语言需要靠库甚至是操作系统才能支持的功能,拥有一个虚拟机,总之,Java 的出现,确实给整个程序界带来了巨大的冲击,也许现在还无法准确评估Java 为整个IT业带来的影响,但是有一点毋庸置疑—Java将不可避免的影响一带程序员。
使用Java作为开发工具,来做坦克大战这个小游戏,是一种很理性的选择。
Java游戏可以在本地桌面系统下运行,也可以在Web浏览器下运行。
我在大学四年中学到了很多计算机的知识,JAVA语言,软件工程,数据结构,软件工程等课程。
如今我将用我所学的知识来完成一个坦克大战游戏,来锻炼自己的动手能力,独立作出一个小程序。
1.2 课题研究的任务本文中所做的主要工作如下:(1)介绍了制作坦克大战游戏的意义和目的。
毕业设计论文 基于J2ME的Java游戏--坦克大战的开发
目录摘要 ................................................................................................................... - I - Abstract .................................................................................................................... - I - 引言 . (II)第一章绪论 .................................................................................................... - 1 -1.1 手机软件现状.......................................................................................... - 1 -1.2 游戏业务及J2ME概况............................................................................ - 1 -1.3 任天堂(Nintendo)的8位FC机器和Battle City背景介绍............ - 3 -1.4 本章小结.................................................................................................. - 3 -第二章开发环境及相关技术的介绍 ................................................................ - 5 -2.1 开发环境.................................................................................................. - 5 -2.2 Java语言的特点..................................................................................... - 5 -2.3 关于JBuilder9....................................................................................... - 5 -2.4 关于Wireless Tool Kit....................................................................... - 6 -2.5 Java Appication Manager.................................................................... - 6 -2.6 本章小结.................................................................................................. - 6 -第三章程序结构、思想和相关技术 ................................................................ - 7 -3.1 本程序需解决的有关技术问题.............................................................. - 7 -3.2 程序流程.................................................................................................. - 8 -3.3 绘图与MIDP2.0新增的GameCanvas包.............................................. - 10 -3.3.1 提供低级绘制的Canvas类....................................................... - 10 -3.3.2 Graphics类................................................................................ - 10 -3.3.3 PNG格式...................................................................................... - 10 -3.3.4 Game包中的新功能.................................................................... - 11 -3.3.5 有关绘图的一些技术................................................................. - 12 -3.4 坦克的控制和敌方的智能运行............................................................ - 12 -3.5 子弹的运行和控制................................................................................ - 13 -3.6 RMS数据库系统..................................................................................... - 14 -3.7 内存使用的最佳化................................................................................ - 15 -3.8 混淆器(Obfuscator)的使用................................................................ - 16 -3.9 模拟器的相关调试................................................................................ - 16 -3.10 本章小结.............................................................................................. - 17 -第四章程序分析和具体实现 .............................................................................. - 18 -4.1 游戏进入前的选择................................................................................ - 18 -4.2 主游戏逻辑及其涉及到的若干类........................................................ - 19 -4.3 坦克的共同行为.................................................................................... - 21 -4.4 玩家坦克的功能属性............................................................................ - 22 -4.5 敌人坦克的功能属性............................................................................ - 22 -4.6 子弹的运行和控制................................................................................ - 24 -4.7 记分系统................................................................................................ - 25 -4.8 本章小结................................................................................................ - 27 -第五章总结 .............................................................................................. - 28 -5.1 本程序的总结和展望............................................................................ - 28 -5.2 经验和感想............................................................................................ - 28 -致谢 ................................................................................................................ - 30 - 参考文献 ................................................................................................................ - 31 -摘要Java良好的跨平台特性在移动平台的开发中显示出了巨大的威力。
基于Java的坦克大战游戏的设计与实现毕业设计任务书
任务书
学生姓名
结果形式:论文、设计 指导教师签字:
院系意见:
年
月
日பைடு நூலகம்
签字:
年
月
日
注:1.毕业论文任务书由指导教师根据学生选题的具体情况填写,经指导教师签字后下达学生。 2.任务书内容可以电脑输入,但签字必须由指导教师本人手签,内容较多时可添加附页。
必读参考文献: [l]赵强,乔新亮. J2EE 应用开发[M]. 电子工业出版社,2003 [2]夏庆亮. Java 应用开发指南[J]. 清华大学出版社,2010 [3]耿祥义,张跃平. Java 面向对象程序设计[J]. 清华大学出版社,2010 [4]杨绍方. Java 编程实用技术与案例[J]. 清华大学出版社,2000 [5]明日科技. Java 编程全能词典[J]. 电子工业出版社,2010 [6](美)埃克尔著 陈昊鹏,饶若楠等译. Java 编程思想[J]. 机械工业出版社,2005 [7](美)Gary J.Bronson 著 张珑 刘雅文译. Java 编程原理[J]. 清华大学出版社,2004 [8](美)Michael Morrison 著 徐刚,于健,薛雷译. 游戏编程入门[J]. 人民邮电出版社,2005.9 [9](美)Wendy Stahler 著 冯宝坤,曹英译. 游戏编程中的数理应用[J]. 红旗出版社,2005 [10](美)克罗夫特(David Wallace Croft)著 彭晖译. Java 游戏高级编程[J]. 清华大学出版社,2005
坦克大战课程设计论文
坦克大战游戏设计1.课程设计的目的随着手机的日益普及,java功能在移动设备上的实现及java 应用程序产生的影响力,对丰富人们的生活内容,提供便捷的咨询起着不可忽视的作用。
本项目介绍了坦克大战的基本构建方法、java的相关技术及本程序的结构分析和具体功能的实现。
游戏是在Eclipse3.2环境下编程。
本项目重点运用了图形化用户界面GUI,Thread多线程的有关知识,其中涉及了绘图工具的运用,事件处理操作以及图形的碰撞检测等知识点。
通过此课程设计,使学生巩固所学知识、培养学生动手能力,了解Java的面向对象的体系结构。
学生用Java语言设计一个完整的应用程序,综合应用所学知识完成软件的分析、设计、调试和总结,提高学生对Java语言的综合应用能力和解决问题的能力。
2.设计方案论证2.1设计思路本项目介绍了坦克大战的基本构建方法、java的相关技术及本程序的结构分析和具体功能的实现。
游戏是在Eclipse3.2环境下编程。
一、游戏基本元素:坦克,炮管,子弹,墙壁,地雷二、它的主要功能:(1)能够朝四个方向移动:上、下、左、右键。
(2) 按下鼠标左键发射普通子弹;按下鼠标右键发射散弹;子弹爆炸的效果,普通子弹和炮弹的效果(3)敌人能够移动(4)能够模拟爆炸(5)能够产生障碍(6)能够增长生命玩家控制主坦克(上方有血条的)的移动以及炮弹的发射。
若玩家将敌方坦克全部打掉则玩家胜;若期间由玩家控制的主坦克被打掉则视为玩家失败。
游戏中只有普通墙作为障碍物,玩家无法穿越它们并且普通子弹不能将墙打穿;但是玩家可以用炮弹将普通墙打掉。
桃心可以将坦克的血加满。
2.2简要的设计流程:键盘监听器2.2设计方法2.2.1构建游戏主类在主类中构造一个主Frame框架,设置它的大小和位置,并将其显示。
在主类中编写一段代码,构造一个窗口。
并添加窗口关闭的处理事件,将窗口设置成打小不可变。
主要代码如下:this.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e) {System.exit(0);}});this.setResizable(false);2.2.2构建坦克类Tank构造主窗口中所需要的Tank类,并将坦克加到窗口中,实现坦克的四个方向的移动创建一个坦克类,用画图工具构造出简单的图形代表坦克,并将坦克加入到主窗口当中。
java坦克大战毕业设计论文
基于J2SE的网络版坦克大战游戏设计摘要[摘要]:J2SE (Java 2 Standard Edition)就是Java2的标准版,主要用于桌面应用软件的编程,是伴随着计算机技术的飞速发展而诞生的一项新的开发技术。
随着个人电脑的日益普及、Java 功能在个人电脑上的实现,Java应用程序产生的单机增值服务逐渐体现出其影响力,对丰富人们的生活内容、愉悦身心、开发智力等起着不可忽视的作用。
该论文通过总结和分析JA V A 游戏的开发流程和代码框架的设计,开发了一款基于J2SE架构的游戏——坦克大战。
本设计采用面向对象的设计模式,对游戏中的所有物体赋予对象的概念和属性。
运行程序后允许用户选择执行选项菜单。
在开始游戏后,启动服务器和客户端,对背景的所有物体进行绘图。
在主程序运行的线程中,画面刷新将以一定的频率采用双缓冲技术对屏幕重绘,实时反映整个游戏的进行状态。
用户控制的坦克运行在主线程中,随屏幕刷新的频率而移动。
坦克将在游戏开始时进行初始化,然后将坦克绘制在地图的上层。
本设计主要实现的功能是让坦克能向八个方向移动,并且打出炮弹,子弹击中敌人坦克,子弹和敌人坦克同时消失,产生爆炸,CPU坦克能智能的移动并且打出炮弹。
能够支持网络对战和单机对战两种模式。
Java良好的跨平台特性在软件的开发中显示出了巨大的威力,“一次编写,随处运行”,java 系统可以运行在不同的操作系统和硬件上。
随着linux的持续增长以及MacOSX完全支持java技术,跨平台的特性变得越来越有分量。
由于免费、跨平台、java语言本身技术先进,在高校中,java已经成为许多学科研究、课程和计算的首选语言,用java做上机作业,一般都是鼓励的。
据我所知,北大、清华许多院系的研究生入学考试都可以用java语言答题。
实际上,用java来完成这些工作,大多数情况下要比用C或其他语言简洁得多,你可以把注意力集中在算法等核心部分,从而获得更高分数。
Flash游戏制作——坦克大战毕业论文
毕业设计(论文)课题名称:Flash游戏制作——坦克大战学院:软件学院专业:信息工程班级:081131二零一二年四月摘要flash游戏是一种新兴起的游戏形式,以游戏简单,操作方便,绿色,无需安装,文件体积小等优点现在渐渐被广大网友喜爱。
由于flash游戏主要应用于一些趣味化的、小型的游戏之上,以完全发挥它基于矢量图的优势。
flash游戏因为Flash CS 3和ActionScript 3。
0的原因,在近年发展迅速,许多年青人投身其中,并在整个flash行业中发挥重要作用。
flash player占据了90%互联网用户的浏览器,所以发的发展空间还十分巨大,前途不可估量。
制作游戏的初衷是因为在当今人们的工作很繁琐枯燥,在闲暇时能玩玩一些小游戏来放松自己。
本游戏运用了Flash基本知识与精巧的算法还原了90年代的经典游戏——坦克大战,由于是Flash游戏,在进网页浏览时要尽可能的减少游戏加载速度和提高游戏运行速度,所以游戏模型采取了最简单的矢量图绘制而成,放弃了色彩比较丰富的位图,整个游戏作品仅22KB大小,与静态网页的大小相差无几,完全满足一般网络带宽的加载需求。
游戏算法方面采用了面向对象程序设计,面向对象的编程引进了类的概念,在本文中重点介绍了类的使用方法。
游戏中每一个游戏元素都采用不同的类进行了封装,代码采用最新Flash CS 4。
0中的ActionScript3。
0,在AS3。
0中每个类的脚本代码都用一个独立的*。
as文件保存,在游戏中每一个元素都是一个独立的类,比如子弹类实现了子弹检测是否击中敌人的功能、玩家控制的坦克类实现了玩家坦克上下左右移动和射击的功能、敌军坦克类实现敌人自主移动和射击的简单人工智能功能等等,这些都体现了类的封装概念,让设计者更加轻松、读者更加易懂。
关键词: flash;碰撞;射击;移动目录第1章绪论 (1)1。
1 Flash软件简介 (1)1。
2 Flash的特点 (1)1。
基于Java的坦克大战游戏的设计与实现毕业设计论文
基于Java的坦克大战游戏的设计与实现摘要:随着人们对生活质量的要求一天比一天高,为了让人们更好地开掘自身的智慧,游戏就此进入了大众的视野,在人们的生活中有着重要的位置,已然变得必不可少。
游戏产业推动高新技术不断升级,极大地促进了经济的增长,推动了“第四产业”的经济腾飞。
坦克大战游戏是童年时期经常玩的经典游戏,我们对它都十分了解。
游戏通过分析JA V A游戏开发和代码设计,用Eclipse软件开发了坦克大战游戏,运用接口技术,使一个类能够实现多个接口,使用套接字Socket 来完成client端和server端的连接。
玩家通过连接访问进入游戏,通过操纵坦克来守卫基地,玩家还可以获得超级武器来提升坦克的属性,摧毁全部敌方坦克来取得胜利,操作非常简单,还具有非常高的普遍率,适合所有人群玩。
该游戏既满足了人们的个性化需求,也让玩家在游戏过程中丢掉烦恼,尽情地释放压力。
关键词:Java 坦克大战游戏SocketThe Design and Implementation of The Java Based Tank War GameAbstract:As people demand higher quality of life every day, in order to make people better dig their own wisdom, the game into the public vision, in people's lives have a vital position, has become an indispensable part. The game industry to promote the upgrading of high-tech, which greatly promoted the economic growth, and promote the "fourth industry" economic take-off. Tank war game is often played in childhood, but also the classic game. Game through the analysis of JA V A game development and code design, with Eclipse software developed a tank war game, the use of interface technology, so that a class can achieve multiple interfaces, the use of socket Socket to complete client and server side of the connection. Players access the game through the connection, through the manipulation of tanks to guard the base, the eradication of all enemy tanks to win, players can also get super weapons to enhance the properties of the tank, the operation is very simple, suitable for people of all ages to play. The game not only meets the individual needs of people, but also allows players to lose trouble in the course of the game, enjoy the pressure to release.Key words: Java; Tank war game; SocketII目录1.引言 (1)2.系统分析 (1)2.1需求和技术分析 (1)2.2功能分析 (2)3.总体设计 (2)3.1总体功能 (2)3.2坦克大战总体流程图 (4)4.详细设计 (5)4.1面板功能设计 (5)4.2子弹功能设计 (8)4.3坦克功能设计 (9)4.4服务器设计 (10)4.5客户端设计 (13)5. 游戏测试 (15)5.1测试方法 (15)5.2系统测试 (15)5.3测试分析和小结 (17)6.结论 (18)参考文献 (18)1.引言随着社会和时代的进步,来自各个方面的压力让人没精打采,为了分解人们的压力,休养那变得疲顿的头脑和劳累的身心,特设计了坦克大战小游戏,游戏操作非常容易,只要将手指放在键盘上敲击相关的游戏键就可以玩,在玩游戏的过程中能够体验现实生活中没有的快乐,既有利于身心健康,又不会影响工作和学习。
基于安卓坦克大战游戏毕业论文
摘要本设计采用面向对象的设计模式,对游戏中的所有物体赋予对象的概念和属性。
在开始游戏后,可以对游戏的进行一些初始设置。
在游戏按钮主页面上面有三个按钮,这三个按钮分别是开始游戏,设置音效和积分榜。
设置音效分为背景音乐的设置还有音效的设置,这里的设置主要是开关。
音乐是背景音乐,音效是当发射子弹时,带的声音还有当子弹击中敌方坦克时,发出的爆炸声。
积分榜是玩家的得分展示,游戏最后可以根据积分来判断玩家是否破纪录,如果破纪录,则游戏结束时界面会显示恭喜你破纪录了,如果没有破纪录,则会显示请再接再厉。
开始游戏,玩家可以通过主界面上面的虚拟按钮来控制主角的左右移动,通过触屏来控制坦克炮筒的角度,并且发射子弹。
敌方单位随机的出现在屏幕上,然后经过一段弧形的路径,如果在移动过程中被子弹击中,子弹和坦克会消失,如果没有被子弹击中,则会判断该坦克是否在屏幕上面,在屏幕上面就会继续移动,不在屏幕上面该目标就会消失。
分数的记录是在60秒内,主角坦克击中敌方坦克的数量。
关键词:面向对象坦克大战Java Socket 类AbstractThis design uses an object-oriented design patterns, all objects in the game to give the concept of objects and attributes. At the beginning of the game, the game can make some initial setup. Button home side in the game with three buttons, which are three buttons to start the game, set the audio and standings.Set audio settings and background music into sound settings, set the main switch here. Music is background music, sound effects when firing bullets, the band's sound as well as the bullet hit enemy tanks, the issue of the explosion.Standings show the player's score, the game can eventually points to determine whether the player according to the record, if the record, the game is over when the screen displays Congratulations on your record, if not record-breaking, it will display your persistent efforts.Start the game, players can virtual buttons above the main interface to control and move around the protagonist, through the touch screen to control the angle of the tank barrel and firing bullets. Enemy units randomly appear on the screen, and then after a curved path during the move if hit by a bullet, bullets and tanks will disappear, if not hit by a bullet, it will determine whether the screen above the tank , will continue to move in the screen above, not on the screen above the target disappears. Scores record is within 60 seconds, the protagonist hit enemy tanks tank number.Keywords:Object-oriented Tankedaizhan Java Socket class目录第1章绪论 (1)1.1 系统开发背景 (1)1.2 相关技术介绍 (1)1.2.1 Eclipse (1)1.2.2 ADT (2)1.2.3 Android SDK (2)1.2 Android、C语言、C++三种主流编程技术比较 (2)第2章需求分析 (3)2.1 游戏设计的需求分析 (3)2.2 功能上需解决的问题 (3)第3章概要设计 (5)3.1 系统功能设计 (5)3.1.1主角 (5)3.1.2背景音乐和音效 (5)3.1.3敌方坦克 (6)3.2 系统功能设计流程 (6)3.3 坦克大战相关功能联系设计 (7)第4章详细设计 (10)4.1 坦克大战主要类基本功能分析 (10)4.1.1 主类 (10)4.1.2 欢迎界面 (10)4.1.3 按钮主页面 (11)4.1.4主角 (12)4.1.5 子弹 (12)4.1.6音乐和音效 (13)4.1.7敌方坦克 (14)4.1.8最高分数 (14)4.1.9 游戏结束 (15)4.1.10其他一些相关的线程和类 (15)4.2 重要算法的实现 (15)4.2.1 敌方坦克出现消失路径算法 (15)4.2.2 最高分数类存储算法 (16)4.2.3坦克炮筒角度的计算算法 (17)总结与展望................................................................................................... 错误!未定义书签。
基于Cocos2d-x的iOS游戏坦克大战的设计与实现_中山大学毕业设计
本科生毕业论文题目:基于Cocos2d-x的iOS游戏坦克大战的设计与实现院系:软件学院专业:软件工程(计算机应用方向)学生姓名:刘志鹏学号: 10389021 指导教师:路永和(副教授)二〇一四年四月摘要坦克大战一款基于Cocos2d-x跨平台引擎开发的iOS 平面射击游戏。
本论文根据现今智能手机游戏市场发展现状,同时对主流的手机游戏引擎进行分析和总结,结合项目取材和项目目的,提出了相应的项目开发方案。
项目的主要内容是使用Cocos2d-x跨平台手机游戏开发引擎,在Mac OS下使用Xcode开发经典平面射击游戏坦克大战的iOS版本。
项目完成过程中,完成对手机游戏设计开发测试流程,同时掌握Mac OS下Xcode等开发工具的使用,了解熟悉Cocos2d-x引擎的框架、组件实现原理和使用方法。
项目采用Cocos2d-x 的游戏框架,结合坦克大战游戏特征,设计了合理地游戏系统架构:底层使用Cocos2d-x引擎及其它相关底层库,在上层将核心功能分模块实现,项目的主要模块包括界面逻辑管理模块、用户控制模块、数据更新及传递模块、地图制作和读取模块、实时碰撞检测模块、NPC人工智能模块、数据和图片加密压缩模块和特效音效模块。
项目开发过程中参考学习了相关的文献和项目设计,对游戏中的核心模块不断迭代和优化,其中用户控制模块主要设计了虚拟摇杆提高了玩家的操控体验;实时碰撞检测模块中主要运用了基于均匀空间划分的碰撞检测,提高了碰撞检测效率;NPC人工智能模块则主要是运用了模糊状态机和A*寻路算法和Bresenham算法结合实现,对于游戏难度有较好额把控;扩展模块部分中的数据部分用了Base64进行加密和解密处理,图片则使用Mac OS下图片处理工具TexturePacker 进行打包处理,降低了图片的内存空间占用,同时对图片资源进行了较好的管理。
本项目开发的iOS版坦克大战,操作简单,游戏逻辑清晰,可玩性高,符合手机游戏的取材要求,将经典的射击游戏配合手机触摸操作和动作、音乐特效,结合社交和抽奖体统,并通过AI算法的优化,可以带来更好的用户体验和更高的可玩性,同时,本项目基本覆盖了手机游戏的主要元素:基本游戏架构和模块组织、触摸事件处理、地图及寻路系统、实时碰撞检测算法等,同时也基本覆盖了游戏引擎提供的子系统,因此本项目对于手游开发流程、关键技术和Cocos2d-x的使用方法有较系统的总结作用,具有一定意义。
坦克大战开发毕业设计(论文)
毕业设计(论文)坦克大战开发摘要进入新世纪以来,计算机游戏业蓬勃发展,已成为新世纪最热门的专业。
坦克大战是一款非常经典。
风靡全球,经久不衰的游戏。
1985年推出的坦克大战(Battle City)由13×13大小的地图组成,地形包括砖墙、海水、钢板、森林、地板5种,玩家作为坦克军团仅存的一支精锐部队的指挥官,为了保卫基地不被摧毁而展开战斗。
游戏以其出色的游戏性感染的一代又一代的玩家。
本程序主要由C#编写。
本文的坦克大战有完整的界面,能够实现人机大战,。
而且坦克大战剧情非常简单,游戏的主角在保护好城堡的前提下,消灭所有的敌人,所以非常容易上手。
本论文第一章是介绍国内外的游戏发展状况,第二章介绍坦克大战的总体设计,第三章是游戏涉及的技术问题,最后总结。
关键词:坦克大战;游戏;技术;代码第一章游戏的背景相信喜欢玩游戏的朋友都是从玩最初的“小霸王”,超级玛丽,坦克大战,等等一系列经典的小游戏开始,然后就是三国志之类的大型一点的,到现在的电脑游戏,单机游戏,到网络游戏,这么一个过程,游戏其实已经不知不觉的进入了我们的生活。
电脑游戏在当今,已经十分普遍了,游戏玩家也比较多。
特别是网络游戏,因为其剧情的有趣性,游戏画面的美观,招式的华丽,等一系列原因,吸引了不少游戏玩家,特别是3D网游的推出,使得网络游戏发展进入了一个新时期。
游戏是怎么发展起来的?国内外游戏的发展情况是什么样的呢?下面将会给你答案。
真正的电子游戏机产生于20世纪70年代。
1971年麻省理工学院的学生Nolan Bushnell设计了世界上第一个业务用游戏机(俗名街机),叫做《电脑空间》(Computer Space)。
《电脑空间》的主题是两个玩家各自控制一艘太空战舰围绕这具有强大引力的星球向对方发射导弹进行攻击。
两艘战舰在战斗的同时还必须注意克服引力,无论是被对方的导弹击中还是没有成功摆脱引力,飞船都会坠毁。
这台游戏机用一台黑白电视作为显示屏,用一个控制柄作为操作器,不过由于市场因素这款游戏以失败告终。
