游戏背景:

时间是欧洲中世纪,一位英雄坚守着他国家最后的城堡。一旦敌人攻破这个城堡,他的任务就失败了。这位英雄有着百步穿杨的本领,还有强大的魔法技能。虽然敌人发起了一波波潮水般的攻击,但他都顽强的击退了。

敌人不甘失败,派出了各种兵力,长矛兵,盾牌兵,骑兵,后来还调来投石车,空中的狮鹫骑士。敌人势要把这个城堡攻下,这位最后的英雄能守住城堡吗?

开发历程:

这个游戏我从过年开始构思,然后和美术方面的朋友沟通,本打算用XCODE写在Iphone上,后来发现自己XCODE游戏开发经验不是很足,并且App store上的游戏竞争激烈,类似的游戏也有了。于是我转到WP7平台上,用自己最拿手的C#来开发。

我花了2周左右的时间熟悉了XNA框架,本来想用Sliverlight写的,权衡了下,觉得在WP7上写游戏还是XNA正统。游戏原型出来,验证用手拉动弓箭来控制方向和力度能够实现后,我就开始正式写这个游戏。

期间,对于操作模式有两种打算,一种是用手拉,一种自动射击模式。用手来可以考验用户的操作性,但是时间长了,玩家就会觉得手很疲劳。于是我又写了自动射击模式,玩家只要手点到某个方向,就可以自动射击。在游戏正式发布时,我想提供这两种模式,提供给用户切换。

然后就是和朋友沟通游戏UI方面的问题,探讨兵种的动画设计,技能设计。

完成的功能有:  

1.给城堡设置了血量,降到0就失败,城堡损伤效果会有动态效果。

2.写出了普通,火,冰箭的魔法飞行效果

3.模拟出了重力加速度下的飞行抛物线。

4.游戏的设置保存XML并储存,以及序列化和反序列化

5.选中技能图标的闪烁动画。

6.写完了多重,多重火,冰箭

7.给兵种添加了阴影效果

8.增加了技能CD效果

9.增加了技能树界面,新的技能需要金币来学习

开发心得:

CastleDefense 游戏开发到现在,基本完成核心的功能,但是游戏关卡的可玩性感觉还不够高,游戏难度需要精心调整。坦白的说,和国外团队游戏大作相比,自己写的游戏还是比较简陋。

不过,任何一个游戏和开发者都是需要成长的,就算暴雪也是从一个小工作室起步的。希望大家给出中肯的意见,欢迎拍砖和鼓励。

我也是在工作之余来开发的,时间精力的确有限。不管怎么样,我会继续完成这个游戏。

游戏玩法:   

点击屏幕,让弓箭射向进攻的小兵。 屏幕左下角是技能图标,可以点击选择技能,如果技能为红色,说明没有学习该技能,技能有CD限制。

屏幕下方中央 齿轮 按钮 点击后出现技能学习界面,需要花金币来学习技能。

Tips: 投石车最怕火攻,体积大的兵种是BOSS,最好优先消灭,请使用冰冻箭降低它的速度。

游戏难度现在设定很高,我玩到第9关就手忙脚乱了,当然这个只是测试版,还需要做很大修正的。请大家多提意见,好来完善这个游戏。

游戏视频:

CastleDefense视频

 游戏Demo下载XAP包地址:

微软APP HUB的Beta测试也在提交中,如果希望未来在Zune里下载到Beta测试版,请留下你的LiveID(也就是你的wp7手机关联的LiveID,也就是电子邮件地址).

转载于:https://www.cnblogs.com/wangergo/archive/2011/08/17/2142880.html

如何在WP7上用XNA写2D游戏(一)相关推荐

  1. 在Windows phone上用XNA写2D游戏第五季

    第二章里我们提到了如何把2D的纹理用SpriteBatch显示.对于游戏而言,一个精灵(sprite,在游戏编程里指一个对象的原型,比如一个战士,一个怪物)不可能不做动作,就拿简单的走动来说,手脚一定 ...

  2. linux安装2048游戏,如何在CentOS上安装一个2048小游戏

    如何在centos上安装一个2048小游戏 最近在学习CentOS系统,就琢磨着玩点什么,然后我看到有人在玩2048小游戏,所有我就在想,为啥不装一个2048小游戏搞一下嘞,于是乎,我就开始工作啦 由 ...

  3. [ROG CHAKRAM] 如何在Steam上设定我的鼠标游戏杆?

    [ROG CHAKRAM] 如何在Steam上设定我的鼠标游戏杆?请根据如下步骤于Steam上设定ROG Chakram鼠标游戏杆. 1. 开启Steam 设定->控制器->一般控制器设定 ...

  4. 如何在电脑上玩香肠派对_如何在Chromecast上玩多人派对游戏

    如何在电脑上玩香肠派对 So you have a Chromecast. Did you know that you can do more than just stream movies, mus ...

  5. 如何在VS2017上部署XNA

    参考链接: [1]http://mxa.codeplex.com/releases/view/630357 [2]https://www.reddit.com/r/csharp/comments/5u ...

  6. 如何在Mac上用汇编语言写HelloWorld

    首先,Mac自带nasm,不过我们要先将其升级. 升级它的方法有很多种,因为我已经装好了homebrew,所以我直接在终端输入: brew install nasm 这样就升级啦- 接下来,创建一个H ...

  7. 通过邮箱找到steam账户_如何在Steam上实际找到好的游戏

    通过邮箱找到steam账户 In 2016, PC game distributor Steam grew its already-impressive library by 4,207 new ga ...

  8. 2D游戏开发 - SkyGameEngine2d 创建一个游戏项目

    2D游戏开发 - SkyGameEngine2d 创建一个游戏项目 一.前期准备 二.获取引擎工具 2.1 下载工具集 2.2 解压并且打开工具 三.使用工具 3.1 工具界面介绍 3.2 设置引擎路 ...

  9. 如何在ubuntu上写一个类似sl跑火车指令,“跑甜甜圈”

    如何在ubuntu上写一个类似sl跑火车指令,"跑甜甜圈" 首先创建.c文件 #include <stdio.h> #include <math.h> #i ...

最新文章

  1. 女朋友的Mysql练习题
  2. awk的集合操作实现
  3. 浅谈主动学习(Active Learning)
  4. VC获取其他进程ListCtrl内容
  5. DCMTK:DSRDocument类的测试程序
  6. mysql安装版安装
  7. 安装mysql查看随机密码命令_deepin安装MySQL没有弹出设置root密码怎么进行修改
  8. 后台管理系统PRD该怎么写?
  9. 双目测距算法matlab模拟,基于BM算法的双目测距.pdf
  10. 各种排序是否稳定,不稳定是为什么
  11. 在Excel中如何提取括号中的数字
  12. 你的windows许可证即将过期
  13. 2022-2028年全球与中国端点保护平台(EPP)行业市场深度调研及投资预测分析
  14. Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理
  15. bash alias命令03
  16. 阿里云服务器硬盘不够用怎么办?
  17. 抖音seo优化怎么做?抖音seo流程详解
  18. 2016.05.04,英语,《Vocabulary Builder》Unit 22
  19. CSDN博文“待审核”检测规则分析之如何避免“待审核”
  20. Linux开机启动流程分析

热门文章

  1. 最新!超10多所高校明确不再为全部研究生提供宿舍!
  2. Linux史上最全教程
  3. C语言100行代码实现推箱子
  4. 小陆的AE学习日记(一)
  5. TCP 数据收发过程抓包分析
  6. 开源静态网站打包工具HTTrack使用教程
  7. MySQL生成随机字符串
  8. SOSO 金币 免费送QB 会员 笔记本 IPHONE IPAD2
  9. 最长有效括号的长度问题
  10. 时光轴二之RecyclerView版时光轴效果