前段时间获得了网易ITownSDK开发权限。但是找不到相关资料,目前网上只有这么一篇,先收集过来。如果以后自己研究透了,再写点心得。
来源:Gameres:http://bbs.gameres.com/showthread.asp?threadid=162870
2010年底网易开始宣传客户端游戏开发包,不禁让笔者有种眼前一亮的感觉。因为目前国内国外做开发应用,大部分都是基于Flash的,平台服务商提供的就只是流量和分成。而客户端开发包,而且还是专门面向游戏的,国内外同类产品都比较少见,网易还必须提供强大的技术后盾和游戏开发经验,才能使开发者得心应手地开发游戏。
终于在3月9日,网易iTwonSDK游戏开发包如愿地出现在笔者面前了。
首先看到的是程序工具、图片编辑器、2D模型编辑器三个工具。点击程序工具,输入iTownSDK开发组寄给笔者邮件的帐号和密码,就进入程序开发环境,选择服务端的同步和启动,再启动客户端,一个简单的demo——hello world就启动成功了:
对于笔者这种玩游戏不看文字,开发不看文档的业余玩家+业余游戏开发者来说,游戏开发环境的搭建上,iTownSDK还是挺方便的。但如果你想知道hello world的代码,就需要一点时间了,工具日志有点线索:
客户端代码路径在安装目录下的hello,hello下还有两个子目录,res估计就是存放demo的美术资源吧,打开scrpit,果然有熟悉的代码了。
笔者也使用过python,如果用python官方提供的命令行IDLE开发,估计只适合10行以内的代码,所以还是用UltraEdit或者EditPlus这类支持python语法高亮的编辑器来作为一个项目开发比较好。
笔者研究了一下test1-test5,里面包括了图片、2D模型、界面、网络消息收发等的演示,而hello world的右侧,也有贴心的教程说明(天啊,原来代码路径也写在上面,只怪自己不留心提示了),看来网易在开发者体验上,也下了一定苦心的。
随便改改代码,按右下角的“返回”按钮再创建房间,代码就已经生效了:
(好吧,我只是把test2的僵尸换了一个颜色而已)
让笔者觉得有点奇怪的是,iTownSDK推荐使用的界面,居然是用Flash制作的,在目前铺天盖地都是网页游戏的年代,也许不是什么大事,但在有端游戏中播放Flash,而且还是和游戏进程紧密结合的产品并不多见。印象中就只有几款开源产品提供这种功能,但播放效率都很一般,而商业产品则更少。如果网易是使用商业产品,那含金量就很高了,毕竟连星际争霸2、质量效应2等这些超级大作也是使用同一个界面解决方案,对iTownSDK开发者来说也是一个技术上的提高。
hello world的demo也无法满足我了,当然要看看官方宣传的PVZ Demo了。
选择程序工具中的文件-〉配置,发现iTownSDK已经把两个demo配置放在这里了,选择pvz,一阵重启后,就出现僵尸的游戏画面了,笔者也乐于玩玩。
这个游戏demo的完成度其实相当高,内置8种植物、7张地图、4、5款僵尸,npc细节表现也不是什么葫芦娃、格格巫能比较的,还有成就的设置。虽然模仿痕迹很重,但笔者估计网易iTownSDK开发组是想表达用他们的开发包,可以开发出和Popcap媲美的产品吧,而并非一个商业性质的产品。更何况pvz demo的代码也是开源的,换句话说,只要能看懂python,谁都能在一天内做个植物大战僵尸出来了,还是等笔者有时间再慢慢从中挖掘一些宝藏。
iTownSDK其实还包含服务端代码,SDK目录下的hellosvr、pvzsvr就是对应这两个demo的服务端代码了。笔者浏览了一下,以hello world为例,设置好网络消息定义,就能正常跑起一个服务端,至于网络底层的监听端口、网络连接管理都是透明的,看来服务端的简单就是美,让开发者专心地开发游戏本身的内容。
程序的体验就暂时告一段落了,笔者还是对pvz demo中眨眼睛的大蒜挺感兴趣的,打开2D模型编辑器看看吧。
一开始打开pvz中的模型资源(2dm),发现提示资源缺失,这让笔者郁闷了一下。于是直接打开E:\Netease\iTownSDK\pvz\res\world2d\2dmodel\dasuan.2dm,[来源:GameRes.com]才发现这只是一个xml格式的数据文档,里面记录资源的相对路径,和2D模型编辑器的资源根目录不大相同,估计又是不看文档惹的祸。
于是试着把资源根目录换成这样:
终于见到可爱的大蒜了。
可惜笔者不是美术,不大懂里面的操作方式,但官网上有一系列美术制作视频,相信看过视频后一步步制作,就能制作出如此精细的2D动画了。
iTownSDK包算是体验一番了,要说缺点吧,其实还是有的。文档显得略为混乱,虽然里面包含了很多内容,有面向程序,有面向策划,也有面向美术,有的是介绍SDK开发包,而有的是开发工具的介绍,有的是程序API文档。但对于笔者一个不常看文档的人,缺少一个有效的指引,总让人有点无从下手。
总的来说,iTownSDK游戏开发包,是一个包含客户端、服务端、美术资源的开发包,用来开发2D休闲类游戏还是挺合适的,而里面还能制作什么比较炫的特效,还需要时间挖掘一下。
![](https://i-blog.csdnimg.cn/blog_migrate/cce544e7261bf3a4535656c82b969b03.png)
![](https://i-blog.csdnimg.cn/blog_migrate/cce544e7261bf3a4535656c82b969b03.png)