Webgame从网页江湖发展到目前的流行模式(其实没有多大发展,现在流行的策略类webgame其实还是个江湖),已经接近10年了。在这10年里,Webgame的表现模式、题材都得到了发展。但是Webgame真正流行是从07年末开始的,尤其是后来的开放平台之间的竞争,把Webgame市场推上了前所未有的顶峰。
随着被关注程度越来越高,传统Webgame的弊端也越来越明显。它们始终无法脱出HTTP无状态协议的限制,却在向并不适合这种无状态特性的方向努力。另外,枯燥的操作感受和单调的类型,也使得大量用户逐渐放弃。
未来的2009年,Webgame的巨大市场必然面临一次大的冲洗,我认为,Webgame将会向两个方向发展:第一个是继续保持HTTP协议的页面阵地,应用类型简单,操作方便,用户基数增加,更注重用户关系的小型游戏,比如开心网这类平台上的小应用。或者是页面程序和其它传统应用结合得更紧密,比如客户端游戏的Web控制台,可以查看数据,买卖商品,挂经验等;而另一个方向,就是向完整的强交互型游戏发展,这就对Webgame在架构和技术模式上提出了新的要求,它的通讯体系必须打破HTTP的限制——Webgame必然要实时化。
举例来说,如果在一个画面已经非常艳丽的web版RPG游戏中,看见了一个人站在那里,玩家像它发起攻击。在纯HTTP方式的游戏中(抛下Comit这类伪推技术),他可能就是傻乎乎地被打了,或者有一个什么参数控制他以一个事先设定好的规则反击一下。而这个事件要等到被打的那个家伙下次登录或者刷新页面时候才知道,之后再去选择应对方案,是反击,还是逃跑。这样,这游戏是没办法玩的。也许这个例子比较极端,其实,它看起来很象几年前流行的论坛宠物系统。当某个用户的宠物被人攻击的时候,他是不知道的。这种“回合”制,其实根本不是用户想要的。这类强交互型游戏,要的就是实实在在地面对对手和同伴,而不是等待一个未知的页面刷新事件发生。
有很多类游戏极度依赖实时化程度,最典型的就是网络棋牌。没有人愿意忍受打麻将的时候打出一张牌之后要经历无尽的等待,而终于转到自己,自己却关掉了浏览器睡觉去了,另外三家根本不知道这个玩伴去了哪里(因为服务器也不知道)。而如果保持一个和服务器的稳定的持续连接,就可以近乎完美地解决这个对于传统客户端游戏来说根本不是问题的问题。但是Webgame是绝对不应该像客户端游戏(尤其是3D MMORPG)方向发展的,因为页面的表现能力和客户端程序相比在任何方面都没有优势,所以即使完整地实现了实时体系,还要对游戏内容、题材做出良好的选择和控制,才能做出一个出色的游戏来。
实时化目前可用的技术大约有三种:伪推、Flash、客户端插件。
伪推其实就是经常被大家讨论的Server Push。出于浏览器的自身发展和HTTP协议本身的限制,Server Push一直没有成为标准,而且再有微软这个最不遵守标准的实际标准制定者的落后表演,Server Push目前的实现方法可以说是乱七八糟。目前效果比较好的方式,其实就是Ajax的延伸,达到一个看起来“实时”的效果(例如Gmail页面中的Web版Gtalk)。但是这种方式无法实现大量连续的数据交互,做做聊天还是可以的,如果用来做实时性要求非常高的游戏,大量的HTTP请求会给整个架构带来巨大的负担,最终无法承受。
Flash应该是目前比较流行也是比较好的一种方式了。因为很多游戏的表现实体也都是Flash的,而Flash本身又支持socket连接,这样可以很容易地和服务器之间建立一条持久的数据通路,可以连续地读写数据,而不像HTTP协议那样,发送了数据之后连接就关闭了,需要重新连接。基于Flash socket的webgame现在越来越多,一些棋牌、大富翁类和RPG游戏,确实把webgame的表现层次提升了一个等级。Flash的问题来自于Flash player本身。到目前版本的Flash player 10,二进制socket还没有办法实现网络级的UDP连接,它的UDP只是在基于FMS支持的数据流点对点发送时候才有用,开发者无法随心意地在自己的程序和服务器之间建立一个UDP连接。它的二进制socket和XMLSocket都是TCP协议的,这样,服务器没有办法做到特别高的并发和转发效率,虽然TCP比较UDP来更安全可靠,但是它确实不适合做高响应高并发的游戏应用。
在浏览器中或其它位置植入第三方程序,应该是效果最好的方法了。就是说网络连接结构中,不再由页面程序负责数据发送,而是由另外的程序完成。不过这类游戏已经不属于严格意义的webgame了。其实,只要用户可以接受这个安装动作,谁又会在意一款好玩的游戏是不是定义准确的webgame呢……
后记:目前在策划开发的BS.Play平台是一个可扩展的webgame框架,它由一个可以使用LUA脚本扩展逻辑的Linux C Server和一系列Flash API组成,其中的详细功能列表现在还没有整理,不过希望它可以为今后的开发工作提供不错的支持。目前没有想到(或者说是梦到)一个合适的开发代号。按照我的习惯,几乎所有项目都有一个“BS”前缀,另外有一个代号。BS.Gallery(已废弃)的代号是“Linktrans“(我同学的名字),BSG2的代号是”Uterus“,BS.Storage的代号是“Candy“,BS.Magic系列(包括.lite)的代号是“SnowSnake“(做梦梦到的单词,很诡异),BS.Queue(队列服务,将会整理到目前项目中)没有开发代号,因为忘掉了。
在线城市项目规划
在线城市游戏平台(我暂时注册了一个79city.com的临时域名)是BSG策划中的一个开放性WebGame模型,实验性项目将于08年9月左右启动。
@WebGame背景
WebGame是近段时间非常流行的游戏形式,指直接在浏览器在页面上进行游戏的所有操作而不需要安装另外的客户端(所以PCHOME的“超级宇宙战舰大战”并不能算是一个真正意义上的WebGame)。WebGame的前身可以上溯至上个世纪的网页江湖,而且现在很多流行的WebGame还是没有脱出江湖的框框。
今年,国内炒起了一股WebGame热风,很多家大大小小的公司都加入了这场乱世之争,中国人对IT产品的浮躁心理再次造就了一个即将成为泡沫的神话,和当年的Blog、2.0、视频,和现在如日中天的SNS一样,而且我预测这场风暴会更猛烈,造成更混乱的局面,平息得更快。如果所料不差,09年中期,80%以上的WebGame产品会死于泡沫破裂。
大约07年年底,接触了Travian,这个类似Web帝国时代的东西,成为了今天流行WebGame的模式标尺。目前被翻版次数最多的WebGame题材就是三国,就我所知的,中国目前至少有大大小小不下20个三国类WebGame,可惜玩法90%是相似的——选地、建城、造建筑、升级设施、训练士兵、打仗、掠夺、扩张,几乎很少有跑出Travian的模式限制的,或者对中国人的创造力遗失不用感到这么莫名其妙了。
可是就是这样一个混乱、百家争鸣又百家都鸣不太响的状态中,不少公司真的在这个市场上狠捞了一笔,某款WebGame月纯收入几百万不是什么新鲜事。因为WebGame有它鲜明的特点和明确的盈利模式,再一个担负起洗牌大任的产品出现之前,这淌浑水暂时还是遍布金沙的清溪。
@WebGame特质
我对WebGame的理解,应该说是比较狭义的,我甚至会比较严格地区分“WebGame”和“GameWeb”的差别。WebGame是一种以且只能以页面形式表达的游戏思想,而GameWeb是一个游戏的Web版。可以说现在大多数的WebGame本质还是传统策略游戏的“页面移植”版,因为很少有人注意WebGame的本身特质:
1、什么人会玩WebGame
WebGame不需要安装,可以随时随地玩,几乎可以跨越所有桌面平台(除非是有浏览器限制,例如只支持IE),所以游戏的前期准备工作是非常简单的,简单到几乎是0,只要注册一个账号就可以玩了,不像大部分网络游戏,动辄需要下载三五个GB的客户端程序,安装、设置都相对麻烦。
可是限于Web页面的表现能力以及HTTP的非持续无状态连接,导致WebGame的实时性、交互性、可操作性、视听效果、运行效率等与传统的客户端游戏根本无可比性,很难想象WebGame可以做出WOW的效果来。
那么谁会玩WebGame呢?专业的、对某一特定游戏特别专注的玩家是不会把大部分精力放在这个上面的,玩WebGame的不外乎是一些白领或公务员,在工作时间不能玩那种特别“游戏”的游戏,所以只能玩一些Flash页面游戏(其实那个东西看起来更“游戏”)和这种WebGame,几乎看不见有人在网吧里包夜玩WebGame,也很少有人在工作时间玩了WebGame,下班回家继续玩的——因为,它实在没有传统游戏那么好玩。
2、WebGame应该什么样
WebGame的重点在Web,而不是Game,因为想追求Game的种种属性,页面表现力还是差得紧。网页就是网页,就算用了再多的JS、Flash特效,还是网页。所以,追求画面甚至声光效果都是不明智的。WebGame的魅力绝不在于它有多漂亮,而是它方便性、易用性和与网站本身紧密结合的交互感受。
WebGame的主要受众人群决定了它很多时候是在工作时间被光顾的,所以一个画面看起来太像游戏的东西,总是会惹来麻烦,而一个看起来像是个普通网站的东西就不会那么扎老板的眼了(听上去有点邪恶~~)
WebGame更要讲究游戏平衡性,这通常是一个游戏成败的关键。一个游戏是不是好玩,是不是可以长久地好玩下去,产品及规则设计更重要过外表。好的创意会给一个游戏带来无限的延展性。其实一个游戏的制作过程中,最牛的不是技术人员,换句话说,代码谁都能写,可是完美的设计和精巧的创意通常只能在偶然的时刻由偶然的人于偶然间拍脑袋想出来。而规则设定,比如经验值和级别的关系,货币汇率,物品价格,人物关系,场景尺寸等,则需要对游戏产品的深刻认识和长时间的经验。
WebGame不应该有较强的侵略性,甚至不应该有侵略性。玩Travian的一个比较深刻的印象,就是当自己还不够强大的时候,经常因为一个周末没有登录,周一再上去看,人已经死光了,东西被洗劫一空。在这种状况下,普遍的选择就是放弃这个帐号,甚至放弃这个游戏了。因为WebGame的非持续性和后台事件,导致Travian在别人不在线的时候也可以去攻打,这是游戏设计中一个很失败的设定,我想大部分放弃Travian的玩家都是因为这个原因。
@什么样的游戏适合Web化
目前最有代表性的WebGame大概就是三国了,像武林三国这类,其实本质还是很像Travian。另外一大类就是以冠军足球经理为代表的类养成游戏。或许是出于实时性的技术壁垒,一些更适合Web化的题材反倒不容易实现。
仔细想一下,网站的特征,可以比较完整地向WebGame上靠。网站从1.0走到2.0、SNS的今天,越来越讲究互动和交互,讲究用户之间的微妙关系,讲究用户和数据之间的联系,讲究数据的流向。可惜现在很多游戏并没有体现出足够强的交互感。
曾经问过特别喜欢游戏的朋友,游戏主要玩的是什么,他们的答案很直接:开始的时候是玩游戏、杀怪,随着时间越来越长,等级越来越高,在游戏中战斗只是余兴节目了,更主要的是和游戏里的好友在交流,或者干脆就把游戏当成了聊天室。再问之为什么不干脆用QQ什么的IM去聊天呢?他们的回答更直接:QQ里没有突然冲上来的敌人,不能表现出英雄救美,没有这么丰富的肢体动作,QQ秀也远没有会活动的小人感觉好(由此可以看出Google Lively的心态)。
所以,策划者要更多地想想,游戏玩的是什么。
从前面总结的几点WebGame特质,我觉得像大富翁OL、模拟人生这类平和的,讲究交互的,没有什么壮阔的视觉波澜的题材更适合Web化。同时,这些题材会产生足够的黏性,因为他绑住了人际关系。Second Life的成功,一是它的开放体系,二是它对人际交互的把握。回想当年风光无限的《传奇》等游戏,成全了无数对真实世界中的情侣鸳鸯,也造成了无数起线下打打杀杀的惨案(现在网吧里还不乏一些一边看着屏幕一边大骂恶语的小混混,如果被他们发现游戏里欺负他们的人其实就在同一家网吧里,冲突总是不可避免的)。现在这些WebGame做得到么?似乎不太容易。
@Second Life & Facebook
Facebook现在可以说热得烫手,它的开放API策略获得了巨大成功,也成为了一个WebOS的典范。国内效仿的公司,像校内网,开心网和康盛的manyou平台,甚至搞的样子都和fb差不多。其实fb的开放结构,源自Second Life的成功。
Second Life可以说是游戏界中第一个开放成功的经典,SL从出现到今天有5年多了,它经久不衰的法门就是开放,不仅给一些资深的玩家带来新的体验和刺激,更给现实社会中的商家提供了在游戏中开店的机会,“绿点效应”给商家一个最直观的人气标准(绿点是地图上代表一个用户的标志,绿点越密集,表示这个区域人越多,当然广告和销售效果越好)。SL中几乎一切物品(钱除外)都是可以由用户自己制作修改的,比如衣服,建筑,武器,装饰品,同时SL支持一种Script脚本,可以赋予物品或动作一些特殊的属性,SL的API也开放得非常彻底,它可以直接由很多流行的3D建模软件直接导入物品,可以直接从Poser等专业人物动画软件导入动作,走在SL的世界里,经常会看见各种莫名其妙稀奇古怪的东西,会产生各种离奇的效果,甚至有老外设计了一套完整的中国功夫的动作。这就是开放的魅力,因为开放,才让游戏永远不会结束,永远都有新鲜玩意,因为开放,才把游戏的实现工作交由第三方公司或团体完成,使得开发维护一个如此庞大系统的看似无法完成的工作,可以只靠林登实验室就维持了5年。
SL中的商机从买卖地皮到买卖建筑,买卖物品到买卖脚本,而且可以很容易地看出,SL中的技术实现相当大成分是基于Web的,包括地图传送的Transport服务slurl。SL内嵌的Web浏览器完成了游戏中绝大部分的消息展示工作,SL尽量实现了资源网络化,虽然对带宽和机器配置的要求比较高,它的客户端程序只有30几MB。
Facebook正是沿着这条路线走了下来,f8的开放api和SL的渲染脚本起到同样的作用,可以将三方制作的东西无缝地嵌入到系统中, 在最大程度保证公平和安全的前提下,提供给用户几乎无限的扩展可能,并且制作应用的技术门槛高度适中,不会造成太大的技术障碍。一个有经验的Web开发厂商可以很容易地把自己的产品移植成fb的一个app,fb平台本身给它们带来了用户,它们为fb上的用户提供了功能实现,这太美妙了。
@开放城市
我不知道会不会把它做成Second City(不过我可以暂时简称它为SC),我希望它可以按照严格的开放结构成为一个类似SL的开放游戏架子。城市包括下面的几个属性:
1、Grid:
SL中的Grid叫做网格,划分了一块一块的正方形区域,每一块大小都是相等的,块与块之间不能直接穿越(除非属于同一个地区),而只能在大地图上传送。SC中的Grid用同样的网格划分,不过划分的是城市的街区。街区当然可以又一个走到另一个,而且不会有什么走过边界的感觉。SC的街区比SL的区域(或叫岛)要小得多,初步预计会有36个正方形单位,也就是每个街区是个6*6的方块。街区和街区之间不是紧密相连的,之间是马路,这样街区边缘的单位就是临街了。
2、单位:
如上,单位是由街区划分出来的。单位是建筑的最小单位,也是移动的最小单位。因为是Web游戏,所以不需要SL中那种平滑的移动动画,在地图上的人是可以一跳一跳的。
3、建筑:
建筑是SC中的一切设施的基础实现,建筑可以是民宅,可以是商店,可以是政府机关,也可以是厕所。每个建筑必须占满若干个单位,也可以只是一个单位(比如住一家人)。
4、人物:
SC中的人物只包含玩家,没有NPC,WebGame里也不需要NPC。每个人在大地图上显示为一个点,与SL类似,人口密集也会造成绿点效应。
5、移动:
人物是可以移动的,从一个单位移动到另一个单位。与SL中不同,SL中的人是可以飞行的,也可以直接传送,SC中的移动必须按照街区之间的街道直线前进直角转弯,并且不依赖道具不能传送。人物的移动有自身速度,这些都与道具有关,比如开车的速度自然比走路的快,当然开车要花钱的,买车更要花钱。
6、货币:
货币相当于SL中的林登币。林登币有一点是不符合中国的游戏相关法律的,因为它可以双向兑换。也就是说美元可以直接买$L,$L也可以直接换成钱,目前对美元的汇率大约240:1,这又是另一个促进SL火爆的原因——可以直接在游戏里赚钱。SC中的货币直接由银行控制,银行不归附于任何三方组织,除了付费外,游戏里不会凭空产生钱(有常识的大概都知道银行利息和股票的钱不是凭空产生的吧)。货币是SC开放API的最重要部分,严格控制着流动和交易。
7、事件:
事件包括必然事件及突发事件,事件会影响移动和货币流动,比如交通拥堵、产品促销降价。关于事件的实现方式,还在考虑。
@操作方式
SC的操作方式根据参与者不同,有多种玩法:
1、SC官方:
官方(SC政府)控制着游戏中所有土地的状态,政府可以逐渐开辟城市的土地,扩大城市规模,控制物价,控制货币交易,控制股票(这才有中国特色)。总之,官方就是上帝。
2、地产商:
地产商是第一级剥削者。直接从官方购买大片土地用做开发,可供开发的例如居民小区,或者商业街。总之土地可以再交易,可以造建筑之后再卖掉,也可以囤积(一种浪费吧),不过这些只有使用权,土地所有权永远是官方的(很中国)。
3、生产商:
生产商制造SC中的对象,比如图片、道具、脚本、页面,对应于fb中的三方app厂商。对象可以用作交易以获得收入。生产者是和开放API关系最密切的人群,相对也要求比较高的技术水平。
4、商家:
商家就是店铺的主人,店铺是一类特殊建筑,不仅仅用于销售商品,可以是任何东西,嵌入任何种类的页面,例如可以用若干小游戏经营一家游戏店,可以用视频来做电影院,也可以仅仅开个公园,更可以直接链接进商家的taobao店铺或者网站。店铺的大小会影响到交易量,因为SC会限制每个单位的停留人数,每单位10人,如果一个店铺占地4个单位,即允许同时40个人在逛店。
5、警察:
警察是唯一的官方职业,其实就相当于GM。警察有一些特殊的道具,包括快速移动和千里耳工具。因为一个街区内的公聊在另外一个街区是看不到的,警察可以看到自身所在及周围9个街区的公聊内容,以方便抓到胡说八道的家伙(很中国)。
6、标准游戏玩家:
就是SC中的居民。一个居民在刚刚入住的时候是只有很少钱的。除非有良心发现的地产大亨已极低的价格在远离市中心的地方销售豆腐渣工程的劣质商品房,新人是交不起首付的,所以只能租房。租房来源是政府的联租房(价格极便宜,也不是很偏远)、个人(比较有钱的,已经有一套以上住房的),中介公司(可以认为是店铺的一种)。其实房子对SC居民并不是十分重要,没有房子也一样可以进行游戏,不会冻饿而死,只是必须不停地在游戏里移动,因为街道是不允许集结的(很中国)。游戏会给每一个人一个免费的电话号码,这个可以成为一个人的标识,也可以看作是QQ号一类的东西用于游戏IM的交流。可以直接拨电话给某个人,当然不会发生现实世界中手机被盗的事清。玩家的移动是要耗费时间的,和距离远近,交通状况,交通工具有直接关系。比如一个人要从家里出发去某商业区的一家店铺买东西,它要经过某些某些街区,走某条某条街道,这段时间他能做的事情大概只有聊天(这和其他WebGame中的等待事件结束相似,比如等建筑升级),不过如果选择公聊的话,他只能看见处于同一街区的人的聊天内容,走过这个街区后,就看不到了(警察除外)。
@公共设施
SC有一些又官方运营维护并监管的内容,或者可以视为官方店铺:
1、银行:
银行是SC的货币中心,负责一切和钱有关的事物。其实银行是无形的,因为它没有必要以实体出现,所有操作可以随时进行,或者可以认为是网银、电话银行或者随处都是ATM吧。
2、股市:
对于大的商家(包括地产商)是可以上市的,股票的重要性不会像大富翁里那么强,官方会尽量控制,不允许一夜暴富出现(很中国)(具体规则没细想,再议)。
3、政府用地:
政府要征用一部分土地,建造一些毫无用处的建筑(很中国),包括市政府、法院等。另外会在一些街区上用大量的连续单位建造公园,公园有其特殊属性,或者比较适合约会,或者什么。
4、公交系统:
公交系统维持穷人们的高速移动,大约会得到步行的5倍速度。但是公交线路并不是四通八达的,也是要换乘的。重要的是,坐车要给钱。
5、通讯公司:
每个人的手机号(其实就是聊天标识),可以有若干次的超越街区范围的群发(甚至发送给全城),比如商家用于做广告,或者用于示爱(很浪漫),当然这个是要付钱的。
@游戏目的
这是个愚蠢的问题,因为答案实在明显——对于用户,游戏的目的就是玩,就是高兴;对于官方,游戏的目的就是赚钱。
SC希望提供给用户一个足够开放的互动平台,融入更多的SNS元素,得到尽量真实的交流体验。同时希望可以通过足够开放且健壮简洁的API,给商家和开发者广阔的创造空间,制作更丰富的游戏应用,充实虚拟城市的生存感受。绿点效应也会给真实交易带来一定好处。
@游戏成本
SC的制作成本不可谓不高,但是不会高得那么可怕。因为官方本身并不需要开发且维护那么多的应用,绝大部分的游戏特性都是由三方提供的,也就是可以想象这样一个场景,在传奇或者大富翁这种游戏中,角色在路上走啊走的遇到一个房子,进了房子之后里面是一个卖时装的店铺,它可以和传奇或者大富翁毫无关系。只要游戏玩家喜欢,有没有关系又怎么样,就像校内网上的很多应用程序一样,不见得和校内本身有什么关系。
制作难点其实更集中于平衡性设计上。这是此类虚拟生存游戏的最核心部分。生存虚拟数值必须计算得极准确,否则游戏中只要有一种数据失衡(通常都是货币)就会造成整个游戏的严重问题(通货膨胀)。
至于开发成本,则是完全的经验至上。一套完整高效的API,从设计到实现都需要有深厚的软件开发理论和实践功底。同时游戏的Server端也要实现得非常小心细致。为保证实时性,游戏可能会使用Flash等连接中介做持续的长连接以弥补HTTP无状态连接给游戏实现效果带来的不足。美工方面我不觉得需要特别大的投入,因为这是Web,不是纯Game。而且更多的页面实现是由三方app完成的。
游戏的维护成本也许会偏高,不仅要维护数据,还要随时监控城市的生存指标和平衡,最大程度确保游戏的可玩度。
SC的成本,绝非BSG或我个人可以承担,所以凭己之力,可以做到什么程度并不乐观,也许需要一个相对完善且有影响力、有实现能力的团队帮助,才能比较好地完成预期目标。
@盈利模式
WebGame的盈利模式是相对清晰的,就是现实货币和虚拟货币的兑换。而SC有更明确的模式,因为它的一切都可能变成商品,而中国人对虚拟物品,虚拟世界的排名、身份,数字号码的迷信程度已经到了疯狂的地步,这样就足够了。
游戏就是游戏,永远不会成为教育的工具。
