坦克大战-项目总结.ppt

上传人:小飞机 文档编号:5253828 上传时间:2023-06-19 格式:PPT 页数:27 大小:3.82MB
返回 下载 相关 举报
坦克大战-项目总结.ppt_第1页
第1页 / 共27页
坦克大战-项目总结.ppt_第2页
第2页 / 共27页
坦克大战-项目总结.ppt_第3页
第3页 / 共27页
坦克大战-项目总结.ppt_第4页
第4页 / 共27页
坦克大战-项目总结.ppt_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《坦克大战-项目总结.ppt》由会员分享,可在线阅读,更多相关《坦克大战-项目总结.ppt(27页珍藏版)》请在三一办公上搜索。

1、坦克大战项目总结,学员:叶 青班级:AF1305学号:12 指导老师:吴晓东,目录,起源:坦克大战(Battle City)是1985年日本南梦宫Namco游戏公司在任天堂FC平台上,推出的一款多方位平面射击游戏。游戏以坦克战斗及保卫基地为主题,属于策略型联机类。同时也是FC平台上少有的内建关卡编辑器的几个游戏之一,玩家可自己创建独特的关卡,并通过获取一些道具使坦克和基地得到强化。,1.1 项目背景和开发意义,对开发者的意义:由于坦克大战具有较强数学性、逻辑性等,同时又富有趣味性,开发起来乐趣无穷。因此,经常用来当做开发题材。并且该项目设计到网络,更能锻炼开发者的数据封包,规划等能力;,卓越教

2、育安卓课程第二阶段项目:基于java SE 高级的坦克大战:复习Java 编程基础熟练使用GUI熟练使用多线程熟练使用IO流熟练使用网络开发锻炼逻辑思维能力掌握MVC的开发模式学会bug的定位,查找,纠正,1.1 项目背景和开发意义,环境:window xp系统工具:Eclipse+Jdk1.6,1.2 开发环境,1.3、服务器界面介绍,admin,*,1.3、客户端界面介绍,1.3、客户端界面介绍,1.3、客户端界面介绍,1.3、客户端界面介绍,1.4、坦克介绍,敌方坦克-重型坦克:,敌方坦克-轻型坦克:,敌方坦克-道具坦克:,我方坦克:,1.5、道具介绍,奖励一架坦克,让坦克无敌8秒,让基

3、地周围产生铁,有效时间8秒,加强坦克,2颗加快速度,3颗可打铁,让地图上所有坦克爆炸,让敌方坦克暂停8秒,目录,2.1 MVC框架实现,2.1 服务端MVC框架实现,用于接受客户端数据,处理数据,边界判断等,然后将处理好的数据发送给客户端,用于登陆认证,账号管理,修改信息,注册等功能,用于坦克,子弹,道具,地图等类,服务端界面,2.1 客户端MVC框架实现,用于监听键盘,然后发送消息,并且接受服务器数据,然后进行解析,数据赋值等功能,用于坦克,子弹,道具,地图等类,客户端游戏界面,2.2 游戏时序图,2.2 客户端流程图,2.3 网络协议规划,1、用户注册,登录,管理数据包2、游戏准备,开始阶

4、段包3、游戏过程数据处理包,用户注册,登录,管理数据包,客户端,服务端,Login+用户名+密码,LoginAnswer:Success(或者fail_account、fail_password、fail_Online),登录包,Account_Check:用户名,User_Register_Account_Answer:success(fail),注册包,Register:用户名等,RegisterAnswer:success(fail),管理包,Search,SearchAnswer:查询到的信息,deleteUser,deleteUser:Success(Fail),2.3 网络协议规划

5、,Up(Down、Left、Right、Launch、Stop、Continue),游戏过程数据处理包,客户端,服务端,Map:地图信息(第一次全部地图,后面只发更新)+Tank:坦克数组信息+Bullet:子弹数组信息+Porp:道具信息,GameWin:Win,GameOver:Over,GameStop:yes,GameContinue:yes,2.3 网络协议规划,目录,加入聊天,使游戏更具有娱乐性。,实现方法:在游戏区域使用gridLayout布局,在第3个格子处添加文本区域和文本框,并设置为透明,在文本框添加addActionlister,然后将消息直接放到arrayList发送给

6、服务器,同时启用线程,使用户2秒发送一次消息;服务器不处理,只聊天消息跟在数据包后面转发,3.1 项目亮点-聊天功能,3.1 项目亮点-多端口,服务器启动时,将启动一个守护进程,和3个游戏端口。守护进程将专门用于管理玩家的登录,注册,验证,查询等功能。当用户成功登录后,可以选择端口进行游戏,端口间互不影响。类似于游戏分区。,实现方法:在服务端和客户端专门启用一个进程,然后创立socket,用于账号登录,管理,注册,然后这个进程调用3次游戏进程,每次传过去的端口不一样,然后用户登录后将端口发送过去,便可进行选择端口;,当游戏过程中,其中一个玩家退出游戏后。此时,若游戏结束,则再连接到该端口的玩家

7、自动匹配到该玩家,不必重新退出游戏再登录。若玩家游戏还没结束,则新连接进来的将重新分配新房间,3.1 项目亮点-匹配房间,实现方法:创建一个类继承arrayList,然后添加2个属性:是否满人,是否在游戏中;然后创建个大厅(ArrayList),用于存放刚刚创建的类,创建小房间后就存入这个大厅,用户连接时,直接从这个大厅进行搜索房间,根据刚刚的2个属性。若搜索到则进入,否则创建新房间;,目录,时间飞逝,不知不觉,2周的坦克大战项目过去了。同时,也不知不觉的敲了13000多行代码,在这2周多的时间里,每天都是在代码中度过,经常加班加点,梦里还时常分析算法,思考实现方法。但看着项目慢慢成型,有种喜

8、悦的心情。在学习上:1、学会了分析问题,规划模型。2、通过多种想法去实现一个功能,然后取效率高的方法。3、学会了服务端与客户端之间的通信,包的规划,发包,解包等。在班级上:此次项目,大家都付出了努力,加班加点,早来晚归,大家沟通想法,解决一个又一个问题,慢慢的都在成长,相信有付出就会有收获。在这一次的项目实践中,我们都复习了jase的内容,并且熟练使用网络,流,线程等技术。但项目过程中还是遇到很多bug。例如:并发修改问题,socket连接错误,IO读取失败,json解析错误等等。但最后都慢慢找出原因,解决问题。本次项目更认识到,网络游戏只不过是数据间的交互!最后,非常感谢晓东老师的耐心、细心教导。陪伴我们共同度过了第二次的项目阶段。下个阶段-安卓,将是一个全新的开始,我们将更用心,更努力学习,与老师共同学习,共同进步。老师,您辛苦了!,心得体会,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号