游戏策划咨讯
做一个游戏并不难,难的是做一个好游戏;完美在于积累!

2005年2月13日



  


  青龙,亦作“苍龙”,古代神话中的东方之神。龙是中华民族的图腾,自黄帝授命于天,威泽四方,龙就成为中华民族乃至整个中国的象征,而比较明确的定形是在汉代,从大汉朝开始,龙就被确定为皇帝的象征与代表。在东方传说中,青龙身似长蛇、麒麟首、鲤鱼尾、面有长须、犄角似鹿、有五爪、相貌威武,而在西方神话里,龙更像是长翅膀的蜥蜴。

  


  白虎,古代神话中的西方之神。形体似虎,白色,凶猛无比,因此成为尊贵的象征。同时白虎也象征着威武和军队,所以古代很多以白虎冠名的地方都与兵家之事有关,例如古代军队里的白虎旗和兵符上的白虎像

  


  朱雀,亦称“朱鸟”,形体似凤凰,古代神话中的南方之神。因其形似鸟状,位在南方,火属性,所以在游戏中经常以凤凰的形状出现。但其实朱雀和凤凰是两种不同的生物,凤凰是百鸟之王,而朱雀却是天之灵兽,比凤凰更稀有尊贵,破坏力也更强。在**的漫画和游戏里,朱雀都是作为强力召唤兽或者妖兽出现的,比如漫画《幽游白书》和根据漫画改编的同名游戏。

  


  玄武,也叫“真武”,俗称“真武大帝”,是道教所奉的神。相传古净乐国王的太子,生而神猛,越东海来游,遇天神授以宝剑,入湖北武当山修炼,经四十二年而功成,白日飞升,威镇北方,号玄武君。但宋朝忌讳玄字,因而改称真武。玄武又相传本身是北海一只大龟,此龟曾经被当作柱子支撑整个蓬莱仙山,因其灵性深觉,历经多年的听道闻道,终于修得正果。所以帝王陵寝多有驮碑之龟,正是以此暗寓玄武。另外玄武又叫玄冥,故又称北冥,听到这个名字估计不少读者又联想起北冥归海,还有金庸老先生笔下人物逍遥子的《北冥神功》。

  

posted @ 2005-09-09 12:52 蓝色雪焰 阅读(3151) | 评论 (1)编辑 收藏
 
测试方案属于软件工程的范畴,对于策划人员来讲是测试游戏的主力军。好象没听说过哪个策划将测试过程描绘的很愉快,因为测试本身是一个非常枯燥和痛苦的事情。一套合理的测试方案可以尽可能减少测试人员的工作量,也能够让测试出的问题能够尽快解决,这就需要测试方案的制订人员对游戏开发有全面的了解,并能够掌握好测试的进度,其中的难度可想而知了。

  测试是游戏开发一个极为重要的组成部分,其所需要的时间一般要占去整个开发周期的1/3左右。测试贯穿于整个开发进程,小规模的模块测试是由程序人员自行完成的,对策划来讲,如何完成最终的产品测试才是真正需要关心的。按照软件工程的理论,测试方法主要有两种:黑盒测试与白盒测试。所谓黑盒测试就是把要测试的对象当作一个黑盒子,不需要知道里面是怎么处理的,只要对输入和输出数据进行测试就可以了;而白盒测试正好相反,测试者必须对测试对象的内部处理过程非常了解,对里面所有的分支和循环进行实验从而达到测试的目的。黑盒测试与白盒测试都是最基本的测试方法,属于低层的测试理论,实际的测试方案都是在这两种测试方法基础上产生出来的。

  对于游戏的测试,也不外乎这两种测试方法。基于黑盒测试所产生的测试方案属于高端测试,主要是在操作层面上对游戏进行测试;基于白盒测试所产生的测试方案属于低端测试,是对各种设计细节方面的测试。黑盒测试中不需要知道里面是如何运行的,也不用知道内部算法如何设计,只要看游戏中战斗或者情节发展是否是按照要求来进行的就可以了。这种测试可以找一些对游戏不是很了解的玩家来进行,只要写清楚要干什么,最后达到什么样的效果,并记录下游戏过程中所出现的问题。而白盒测试就需要知道内部的运算方法,比如A打B一下,按照A和B现在的状态应该掉多少血之类都应当属于这种测试。白盒测试需要策划人员自己来完成,因为内部的算法只有开发人员自己才清楚,而且发现问题策划是最容易知道如何解决该问题的人。由于测试的工作量巨大,合理安排好测试和修正BUG的时间比例非常关键,否则很容易出现发现了问题却没有时间改正或者问题堆在一起无法解决的矛盾。测试设计应当在开发的设计阶段就要完成,如果开发初期没有给安排出合理的时间,那么最后的结果肯定是不停的跳票!

  在测试方案中,设计人员要根据需要把黑盒测试、白盒测试有效的结合在一起,并且按照步骤划分好测试的时间段。根据游戏开发过程,测试大致可以分成单元测试、模块测试、总体测试和产品测试几个部分。单元测试一般集中在细节部分,主要是在游戏引擎开发阶段对引擎的构造能力和完善性进行检测。该部分的工作要求细致严禁,因为任何一点小的纰漏都可能导致后期大量的BUG产生。这时要求程序开发人员与策划达到无隔阂的交流,策划人员要清楚该引擎任何一个功能单元的使用方法和效果,这样才能够保证测试中能即使发现问题并指出问题的所在。模块测试是在游戏开发进程中按照阶段进行的,每当一个模型产生后就需要对该部分进行一次集中测试,从而保证系统的坚固和完善。模块之间的接口测试也属于该部分的工作,就是说各个游戏模块之间如何实现过度,数据如何进行交换都要进行严格的测试。往往在模块内部测试时一切正常,把模块拼装在一起后反而问题百出,这就需要在阶段性模块测试中及时解决!总体测试属于比较高层的测试,在游戏的DEMO基本完成后,要从宏观上把整个游戏合成在一起,这时就要求有全面控制进度的能力。最终的产品测试是游戏质量保证的最后一道关卡,要求大量的非开发人员介入进行地毯式轰炸!产品测试往往也会伴随一些市场活动,这就不是我们现在要讨论的范畴了。

  我们已经知道了测试过程分成几个阶段,下面就一起来看看具体要包括那些内容:

1、 测试的时间分配:测试时间如何分配会直接影响到开发的进度,它包含测试时间、测试结果汇总时间以及修改错误的时间等几个部分。一般来说,开发人员只认为测试时间才是需要分配的,其实合理的安排测试总结和修改BUG等工作占用的时间才是更多的!如果不进行测试情况汇总,项目管理者就无法弄清到底是哪些部分出了问题;不马上对发现的问题进行修改就会导致更多的问题发生。所以定期测试、发现问题、解决问题才是最合理的,把整个开发周期划分为几个阶段定期测试是对产品质量的根本保证!科学安排测试的时间能够用最少的代价解决最多的问题,否则把测试都堆积在最后结果只会是一团糟!

2、 测试人员的安排:测试人员的选择和调配对游戏质量来讲是非常关键的。测试人员尽量不要选择游戏的开发人员,只有对游戏没有任何了解的人才能真正的发现程序或设计中的问题,虽然他可能对程序和游戏设计一点都不懂。如果能有一支专门的测试队伍当然是最好的,在经费和人员实在紧张的情况下把其他非开发部门的人借调一下不失为一个好办法。

3、 测试内容清单:这部分要求测试方案设计人员精心的考虑计算,尽量把测试内容精确到操作级。意思就是说最好细化到某测试人员点击鼠标几百次这种程度,因为测试人员是对你的游戏内容一点都不了解的,只有你把任务全都明确后才可以收到预期的效果。只规定某人去玩这个游戏然后给予反馈是不负责任的做法,这种测试方案只能当作垃圾给丢到废纸桶里面去!要对每个测试人员的工作明确下去,用测试表格的形式进行填写测试报告并签字写清楚测试时间,才算是合格的测试方案。

4、 测试结果汇报:最终测试报告汇总上来,策划人员要对全部方案进行评估并进行分类,把测试中发现的问题确定解决优先级然后反馈给相关部门。问题特别严重的要敢于要求返工,任何一点小问题也不能放过,严格的测试才能带来高质量的游戏产品,这个法则适用于任何产业,游戏也不例外!

5、 调整开发进度:由于测试发现的问题所带来的进度影响要及时反馈给上级领导,然后马上更新项目进度表,并注明更改原因。因为开发进度的调整关系到很多部门的工作,所以最好在早期设计进度时就把测试时间预算进去,但实际上大多数情况下开发进度的变化是非常频繁的。如何休整进度还不影响到游戏完成的最终时间,对于任何项目管理人员来说都是一个挑战!

  测试方案一旦确立,剩下的就是烦琐和枯燥的机械工作了。测试是最痛苦的,但没有测试游戏是不可能成为产品,这也是国内大多数赶工期的游戏BUG百出的问题所在。科学的制订测试方案并协调好各部门之间的进度,对任何一个项目来说都是至关重要的事情,对于刚入门的策划来讲,学会写测试方案是必修的课程之一。

  测试工作的全面完工,标志着项目开发的结束。但对于策划来说,你的工作还没有完,接下来你就要开始教给玩家如何玩这个游戏,让我们来看看如何完成游戏手册吧!

posted @ 2005-08-31 21:46 蓝色雪焰 阅读(2512) | 评论 (1)编辑 收藏
 
对于游戏的熟悉程度,估计没有哪个开发人员会比游戏策划更清楚了。大到游戏框架,小到界面热键,一点一滴都需要策划人员进行详细的描述和设计,也只有策划才能对游戏的实现情况进行全面的把握。所以一旦策划和其他开发人员发生沟通上的障碍,整个项目的进展就会受到极大的影响;如果策划能够协调好各部分的工作,那么项目进展就只需要看个人能力了。而在现实开发中,策划人员由于自身的个性或者其他条件所限,往往在沟通这个环节上出现一些致命问题导致进度的延误。如何把握好自己的情绪,从大局观出发是成为一个成熟策划人员的关键所在。

  文档不管写的多详细,对其他人来讲仍然会存在理解上的错误或漏洞。策划经常把注意力都放在了如何把游戏设计的更完善上,而忽视了别人的理解能力和感受。因为对任何一件作品来讲,每个人的看法都是不同的,策划应该知道如何去听别人的意见并吸收到自己的设计中来。这并不是说坚持自己的立场是错误的,而是在大多数情况下策划本身容易把自己的设计当作一个孤立的个体,对其他外来的思想用全部抛弃的态度来对待,这是极其危险的。就算是别人的意见是多么的滑稽可笑,你也应该认真的听完并加以分析,任何渠道的意见对你的设计来说都是有益的。

  在前面讲过如何书写流程图和安排工作进度,在这些设计过程中和其他部门的沟通都是非常重要的。我不提倡大规模的定期会议,因为这样会影响其他人员的开发进度,而且会导致很多问题的扩大化。公众场合下不适宜对个人问题进行讨论,大量的沟通和谈话应该以私人或者小型会议的形式来进行。大部分开发人员不喜欢开会,尤其是这种针对性不是很强的例行会议。所以如果确定要召开会议,那么就一定要先确定这个会议要解决哪些问题,需要哪些人来参加,最后要达到什么样的效果。纯粹为了开会而开会,尤其是一些例行会议是没有必要的,这样只会增加别人对你的厌恶情绪,导致关系间的不协调。如何尽可能减少大规模会议,通过单独会谈来解决问题是沟通的一个有效手段。

  如果你想知道其他人员对你的策划方案是否有意见,单纯的把文档发送给程序或美术不是一个好办法。无论你的文档多详细,别人都很难完整的理解你的意思,利用好黑板和纸笔通过讲课的方式进行沟通,可以一次性让大量的相关人员了解你的设计。在讲解完毕后让大家以发表见解的方式来发现并解决问题才是有效的解决手段,你所要做的只是把你的想法表述给大家,而不是争吵。在你的讲解过程中要以听为主,对于一些核心内容进行强调,认真做好笔记,在会议后对别人的意见进行总结,让别人知道他的看法你是很重视的。只有对别人尊重别人才会尊重你,想处理好与他人的关系首先就是让别人感觉到你对他的意见是重视的。

  在完成了第一次讲解后,就不要再召集这种大规模的会议了。剩下的工作你就应当找对应的工作人员进行单独会面,只和他谈有关他这个方面的设计问题。对程序就是描述游戏流程以及一些需要确认的技术实现问题,而和美术则应该谈界面实现以及整体效果等问题。

  给程序员交流要求你能跟的上他的逻辑思路,就是说你要对计算机的编程有个大概的了解。起码你应该知道程序流程是通过条件分支、循环以及函数等组成的,而且要对面向对象的C 语言有一些了解,否则他会认为你的思路太混乱而产生很多理解上的概念混淆。最好你是拿着一个游戏设计流程图来和他交流,这张图应该类似于程序设计的流程图,由几种基本的图形和线条来实现。这样一边描述你的思路一边给他指出需要完成的模块,发现问题进行记录并修正你的文档就能够让双方都保持清醒的头脑,而不是产生做出来产品后和你所想象的完全是两个东西。这时经验就会起到非常关键的作用,如果策划本身就是程序员或者做过程序员就完全不用考虑这个问题了,可如果你对程序一窍不通或者根本就不知道那些东西是怎么实现的,那你最好去找本介绍编程基础的书看一下。多和主程交流应该是最省事的办法,只要交代给他哪些工作需要在多长时间完成就可以了,但很多情况下是主程和策划一样固执,这时他会不经过考虑就告诉你很多想法都是不能实现的。你要拿出详细的解决方案才可以说服他,或者让他提出一种合适的解决方案。总之,用程序的思路来和程序员进行交流是最好的解决办法,给程序员一份详细的流程图要比给他一份几百几千页的文字说明要管用!

  给美术人员交流更困难。因为每个人的美术风格都不相同,要求几十个美术人员画同样一副图你所获得的结果肯定千奇百怪!通过主美进行协调是一个好办法,这样可以减少你很多口舌的。在你写策划方案时,不要对美术做太多的要求,而应该先和主美术确定好游戏的整体美术风格。美术方面具体的人员安排和工作量限定等事情都交给主美术或者美术总监去处理,除非说你对美术非常精通能够把握住整体风格,否则你的工作只是描述你需要什么样的东西就可以了。当美术完成样品后,一起和主美术进行审查,风格一旦确定就不要再修改了,否则这对美术人员来说完全是种摧残!美术人员工作量往往是最大的,美术风格的改变可能会造成大部分工作的重做,从而严重影响工程进度。把交流的事情交给美术方面的负责人,这是最好的同美术人员的交流方法。

  保持好自己的心态,用积极的态度来解决问题,不要抱怨多听别人的想法是一个策划人员需要掌握的基本方法。只有沟通顺畅才能够让项目按计划进行,扩大自己的知识面,多和主程与主美交流,少开大规模会议,用私人交谈的方式来解决问题。把握好上述几点,项目的完成就只是时间上的问题了。

posted @ 2005-08-30 12:18 蓝色雪焰 阅读(2236) | 评论 (0)编辑 收藏
 
文档设计完成后,就应该针对划分好的模块来分配工作任务。该部分工作应当是项目经理来制订的,但由于大部分的项目是由主策划来进行协调,而且只有策划对各方面工作如何进行连接是最清楚的。这里不对具体的项目展开讨论,只描述一下如何设计工作进度表。

  作为项目管理的重要组成部分,工作进度表的设计是一种必要的项目监控手段。科学系统的进度安排可以达到提高开发积极性,监督工程按时完成的作用。但由于管理上的种种问题,项目负责人根本就没有经过周密的思考和规划就开始制订工作进度,甚至很多东西都是拍脑门就定了的。这样的任务进度设计是不负责任的,其结果只有不断的延期,相互推卸责任导致游戏跳票。那么如何能够保持一种良好的工作进度,并不断给予开发人员信心呢?

  我对微软的里程碑式进度非常赞同,虽然我们还没有实力完全按照这种模式来进行项目开发。里程碑式的项目规划有以下几个好处:

1、 按照阶段对项目进度划分,可以清楚的看到游戏的真实进展情况。在进行阶段划分时,一定要能够让开发人员能够获得成就感。这是什么意思呢?就是说在设计初期,不能把项目阶段规划的太长,也不能让开发人员感到很轻易就完成了。这就需要项目管理人员对开发者的能力有清楚的把握,合理的对工作时间进行预测来达到阶段性成果。

2、 阶段划分要能够有可以演示的东西。对上层管理人员来讲,你给他说你做了多少文档,程序写了多少代码,美术画了多少图是没有用处的。必须用可以进行集中演示的样品拿出来,领导才会感兴趣。所以在写项目进度时,要有目的的定期拿出DEMO或者阶段性成果,能够把工作中的一些精华部分展示给大家看。不仅仅是领导需要成果的鼓励,这些DEMO对开发人员自身来讲也是一针有效的兴奋剂。

3、 将进度按照人和时间进行统筹。因为一个人在一定时间段内是无法做很多件事情的,把人的任务进行合理规划,在同一时间段内不要做超过2件的事情才可以保证项目的顺利进展。人的精力是有限的,再加班加点也是有个承受能力的极限的。合理的保证开发者能够把精力集中在一件事情上是最有效的开发手段。

4、 根据事件的前提和结果进行任务分配。一个任务要确定完成了才可以进入下一阶段,不能因为工期紧张而把必要的前提给丢掉。很多项目在没有完成前期准备的情况下就开始下一阶段工作,从而造成后期管理上的混乱,使得项目无法控制。一定要在必要条件完成后再开始后续工作,这一点一定要在项目进度规划上进行明确,即某项工作的开始时间一定要在前提工作完成后才可以进行。

5、 工作的延迟问题。再完善的工作进度表也会被一些意外情况所打断,比如生病和其他客观因素。这种情况下要对工作进度表进行修正,一般处理是将后续工作顺延,或者把休息时间计算进来当作加班。对于国内把加班当白饭的游戏公司来说,加班更是不需要给理由的最佳选择。其实良好的工作进度是会留出一些时间避免意外的发生,而且这些时间分散在各个阶段当中。不加班的项目才是最理想的开发!

  那么,用什么工具来绘制进度表呢?

  推荐使用微软的PROJECT2000,这是一套专门用来绘制进度表的工具软件。我们不用全面掌握该工具的使用,只要会一些最基本的功能就可以了。使用该工具,可以自动生成各种进度图表,并可以随时调整任务分配情况,非常方便直观。不是我帮微软吹牛,利用他的系列工具真的能够快速应用到工作中去,而且还很容易上手,PROJECT和VISIO就是两个非常典型的例子。

  工作进度表在设计完成后也是需要多方一同讨论确定的。进度表可以由策划或项目经理来定月进度,直接确定程序方面和美术方面的工作任务。然后具体到任务模块内部则由主程和主美来具体设计,最后确定到周进度。每个参与开发人员都应当有一份自己的任务进度列表,如果没有问题就签字实施。在开发过程中,每达到开发阶段的终点就应该开一个演示会议,让领导和全部开发人员一起来看一下这段时间的开发成果。这就是所谓的里程碑式开发模式。每个开发人员都可以切实感受到自己艰苦工作所得到的成果,这样才可以保证他们一直感受到一种积极的工作态度,漫长的开发工作对每个人的意志所带来的折磨是很可怕的!对于一个刚开始学习做策划的人来讲,很难想象连续几个月集中开发所带来的压力。当你真正进入到开发中时,就知道建立起一个良好的进度计划是多么的重要了!

  按照上述几个原则规划好你的开发进度,接下来应该做的就是正式的开发了!

posted @ 2005-08-29 15:54 蓝色雪焰 阅读(2484) | 评论 (0)编辑 收藏
 
该部分是最让人头疼的,因为游戏种类太多了,想完整系统的对整个实现过程进行描述单凭几千字是绝对不可能的。对一个游戏主策划来讲,框架建立后工作才只完成了很少的一部分。万里长征才只开了一个头,剩下的工作还是艰苦和漫长的。我们还是按照前面讲过的结构体系来简单分析一下大致过程。

  游戏策划文档基本上由下面几个部分组成:游戏界面设计书、游戏任务详细设计、游戏AI算法设计、战斗系统设计书、游戏脚本设计书、游戏地图一览表以及游戏操作手册。这些文档相互渗透成为一个整体,根据游戏的不同有所变化。在第四部分中,我们已经介绍了如何建立起游戏的框架,现在就要根据游戏流程来进一步的细化。

1、 游戏界面设计书:游戏对于玩家来说,第一印象就是界面所给予的。界面设计包括的范围很广,片头片尾以及过场动画也可以算界面设计的一部分。这里要对游戏的安装、注册、进入游戏等主界面进行详细的规划,另外游戏中所有可能出现的场景以及操作界面都要考虑到。界面设计和操作体系设计是一体的,在界面设计中要对全部的鼠标、键盘等输入设备的操作进行详细的功能描述,最后用表格或者其他方式表述出来。一般的界面设计是按照层次来划分的,比如主界面、一级界面、二级界面等,这样设计比较系统,也容易让使用者快速掌握。每个下级界面都要有返回菜单或按钮,主界面要有退出和帮助菜单或按钮。这都是一些基本要求,具体情况视游戏类型而定。RPG类游戏界面比较固定,现有的几种常见界面就囊括了大部分RPG游戏的情况。一些主流游戏设计也都是参照现有的游戏界面设计来做,除非自己想弄一些新颖的界面来吸引玩家,但也要考虑到新界面的风险。毕竟现有的成熟界面已经有了大量的用户群,也不存在太多的操作上的缺陷,在现有界面体系上进行改良是一种比较稳妥的界面设计办法。

2、 游戏任务详细设计书和脚本设计:这两部分是一个整体,但往往由不同的人员来负责。任务设计是由主策划来完成,游戏脚本是由专门的脚本策划或执行策划来处理,最后由主策划来统一整合。任务设计可以用流程图的方法来设计,先划分好阶段和模块,先构成整体任务框架然后再进入到任务里面来具体设计,这些设计工作大部分是由执行策划来完成的。任务设计牵扯的方面很多,如何让各个分支既独立又相互联系,既有趣味又让用户能够接受,算法设计是否平衡,升级体系是否完善等许多问题都要考虑到。无论是PRG游戏、AVG游戏还是SLG,都需要有完整的任务体系作为支撑,根据游戏背景故事设计出符合游戏规则的各种任务是对策划个人创造力和想象力的考验。游戏的脚本是对任务的具体描述,什么人物做什么事情说什么话就是对脚本的一个概要描述。冗长的烦琐台词是谁都不愿意见到的,但是紧张的设计周期让脚本策划着实没有办法。多分支和多线索的流程,决定了任务体系和脚本设计的工作量成倍增长,调整好作息时间与工作状态是激发灵感的好办法,一味的加班是很难有好的创意的。

3、 游戏AI及算法设计:每个任务如何执行,怎样让玩家根据你的设计思路来完成任务,并感觉到趣味是整个游戏设计的关键。这就要求策划人员对人工智能和游戏的玩法进行深入的研究和演算。很多高效的AI系统并不是很复杂,一些简单的分支与循环就可以完成很多智能化的处理。但玩家的要求是极高的,在设计之初就要对一些可能发生的非程序BUG进行预防,比如寻路算法中的死角以及NPC的运动轨迹等。升级算法和各个属性的关联是要反复演算的,专门设计一些小的平台来演算数值的相互关系是最方便有效的方法之一,利用程序自动进行数值测试能够快速检验出算法上的漏洞。任务中NPC的属性设置是否合理也属于游戏AI的范畴,这也需要反复的调试和演算才能够最终确定。

4、 战斗系统设计:把这部分单拉出来的目的就是要强调战斗系统设计的重要性。对于大部分游戏来说,战斗是消耗时间的有力武器,如果没有一套完善的战斗体系玩家是没有精力耗在里面慢慢升级的。让玩家能够感受到升级后战斗力的增强,以及获得新装备后添加的新能力是对玩家最好的奖励!另外,战斗过程中的一些具体算法也要极为重视,一些很小的漏洞就有可能成为游戏致命的BUG。攻击和防御的计算,绝招的使用次数以及装备物品栏的容量都是需要认真考虑的细节问题。幸好现有的游戏已经提供了很多的现成例子,研究一下暗黑、星际和仙剑就基本上知道如何设计你的游戏算法了。

5、 地图一览表:游戏地图可以按照总地图和任务地图来划分。由于游戏类型不同,游戏地图的设计区别也很大,但无论是2D还是3D,是俯视还是斜视,地图都要按照透视比例来进行设计,并确定好坐标。全部的地图都应该是一致的,就是说同一个地点,在两副不同的地图系统中其相对坐标都应该一样。地图编辑器在这里会起到重要的作用,作为游戏引擎的一个重要组成部分,地图编辑器可以大大加快游戏的开发速度。对于地图编辑器的制作与使用这里不做介绍,你可以研究一下星际争霸和魔法门之英雄无敌的地图编辑器,会给你很多启发的。

  上面几个大部分只是一个大纲,而具体的工作还要根据实际情况进行协调安排。对于策划来说,完成这些文档的设计工作至少需要1、2个月的时间。当你看到自己长达几百页的策划文档时,千万不要激动,因为还有更艰巨的任务等着你要完成呢!

posted @ 2005-08-27 15:35 蓝色雪焰 阅读(3654) | 评论 (3)编辑 收藏
 
在完成了游戏的主框架后,你自己脑子里面应该非常清楚你的游戏是什么样子了。那么,怎么保证别人能够知道你的想法呢?详细的说明文档是一种办法,可是大量的文字信息只会让程序人员不断的打瞌睡,而且理解起来也存在着困难。所以流程图是一种很好的交流手段,而且在绘制流程图对策划本身也是一个进一步清晰思路的过程。
流程图的绘制可以根据个人工作习惯来定采用什么工具、如何来绘制流程图。采用一些大众化的流程图绘制工具如VISIO就更具有通用性,只需要按照规定的符号进行连接就可以了;如果自己制订一套流程图规则的话,那就必须给出全部的标志定义以及说明,否则给别人一个什么注释都没有的图还不如给他一个10万字的文档更容易理解。用WORD自身带的绘图功能太有限,VISIO作为一种比较专业的流程图绘制插件对策划来说可以作为首选。
流程图的目的是让别人看起来更清晰更容易,如果你的图连你自己都看不懂,那么就返工吧!别人是不会看你这种繁杂的符号堆砌物的。现在的问题就是,怎么让你的流程图既能表达你的思想又简洁明快,关键就是把握住以下几点:
1、 首先要安排好你的图纸空间:图要画多大,分几个大模块,哪部分的注释比多都会影响到最后图的质量。预留好图纸空间会直接影响到流程图的美观,大量线段集中的地方以及多分支部分一定要预留较大的空间,否则画到最后再改动就会造成连锁反应,那时就可能影响到整体效果了。
2、 只用几种简单的标志来表达你的思路。流程图可以使用的标志有很多,但是最常用的标志只有几个:开始、分支、循环、结束是最基本的处理过程,再加上一些简单的模块表示就能够完成绝大多数的设计。一些复杂的处理,就按照子模块来表示,在另外的子模块流程图中单独描述。模块之间利用箭头进行联系,并在箭头上表明处理方法或传输什么数据。然后每一个流程图都要有图解以及说明,这样才可以用最少的符号表达最多的含义。
3、 能不用循环尽量不增加循环标志。因为循环的增多容易引起大量的箭头产生,从而造成混乱甚至没有空间给箭头加注释。另外,循环部分不容易被理解,一定要标注清楚循环的处理条件以及传输的数据,可以用虚线和实线两种箭头进行分别标志。
4、 不要让线交叉。线段的交叉是很痛苦的,减少交叉除了在连结处加接点标志外,合理的分配好空间也是很重要的。在VISIO中,所有的交叉线都经过了处理,但尽可能减少线段的交叉才是最根本的解决办法。
5、 箭头尽量是单向的。双向的箭头除非在不得已的情况下才使用,因为这样很难区分数据的传输方向。宁可使用两个单向箭头也不要使用双向箭头,这样才能够减少误解的产生。
6、 多用子模块和表格来设计流程图。一个庞大的流程图绝对没有几个简单的图更容易让人理解,所以尽可能让整个体系更加明了,把模块划分的更加清晰能够让别人看你的文档更容易。

上面几项原则是我在绘制流程图的过程中总结出来的,并不是说一定要遵守这些规则,只是如果这样做了会让你的图更清晰明了。但也有很多特殊情况是要灵活掌握的,比如一些特殊含义的线段以及特殊的处理框都是经常会遇到的。值得一提的是,由于这个流程图并不是最终的程序流程图,并不需要非常详细。这里也不给出具体流程图的例子,对这方面有兴趣的朋友可以学习一下VISIO的使用,对你的策划过程会大有帮助的!
如果细心一点,你就会发现上面的流程图和程序设计非常相象:模块化的分类,分支和循环以及各种过程应用。因为在这个阶段,主策划的主要工作就是如何把自己的思路告诉给主程序,让主程来分析哪些东西是可以实现的,并如何实现。程序员的思维模式和策划的思维模式是不同的,他所面对的是需要严谨的逻辑结构体系,很多细节问题在这时都要开始实施了。好的创意必须要用计算机可以表现的形式由程序和美术来实现,否则一切设想都是空谈。流程图尽可能按照程序的结构来设计,就可以最大程度的减少程序员的理解困难,并快速把你的想法落实。
为什么要按照模块来划分流程图呢?因为整个游戏的策划工作不是一个人就可以完成的,无论设计还是编程都需要很多人进行协同配合。在早期设计阶段就把整个项目进行合理的分工,并按照逻辑顺序进行流程划分能够在实施阶段快速安排工作,制订起来项目进度表也有据可查。
这个流程图并不是说策划写完了就没有事情了,其合理性和正确性还需要进一步的验证。草图完成后,方案提交给项目组,由开发小组集中讨论,主程确定程序实现难度及准确性,美术预估工作量。策划最后根据该流程图完成设计文档,再次开会讨论,定稿后负责人签字归档,确定版本为流程图1.0。以后每次修改都要小组会议决定,更新文档版本,这样才可以保证文档的准确和版本的一致。
另外,要有专人进行文档保管和整理。利用一些文档管理工具比如LOTUS NOTES等软件可以更加系统化的对文档进行整理,根据需要自己设计一套数据库系统也是可行的。否则在项目完成后根本就没有任何积累对任何项目来说都是非常可怕的,在中国这种现象十分普遍,为了赶工期而不重视文档整理的项目比比皆是。要杜绝这种现象也只有从管理的根源入手,从开发之初就进行严格的规范,并派专人管理落实才可以保证项目和文档的同步。
在流程图最后定稿后,整个游戏的体系就算完成了。下面就要一点一点来把所有的模块都实现,让我们头脑中的游戏变成现实吧!

posted @ 2005-08-26 16:14 蓝色雪焰 阅读(2777) | 评论 (0)编辑 收藏
 
在第二部分如何写一个项目建议书中,我们提到了游戏主框架由哪些部分构成。作为一个游戏的设计者,你必须要时刻保持清醒的头脑,知道游戏到底应该是什么样子的。如果连设计人员都搞不清游戏的模样,那其他的程序、美术就更没办法开发了。为了保持清晰的思路,就要先给自己搭一个框架,让自己在大量繁杂的工作中不至于迷失了方向。那么从什么角度入手来建立这个框架呢?
对于刚入门的策划来讲,通过任务体系下手是最直接的也是最有效的。任何游戏尤其是RPG类游戏都有一个故事背景和主要线索,通过这些东西就可以很巧妙的设计出游戏的主要流程。首先要把主任务也就是主线索明确,这一点非常重要。很多游戏就是因为任务太散,进而冲淡了主题。整个游戏的跌宕起伏和曲折离奇都是通过剧情来推动的,如果在一开始不能把任务明确出来,在加入了分支剧情后各种因素集中在一起思路很容易就乱了。所以在设计的开头就把整个任务的框架搭建起来对思路的整理很有好处。
任务体系和故事是紧密结合在一起的。如何把故事改编成符合游戏设计思路的脚本是游戏剧本编写人员的工作。总体的任务框架是RPG类游戏的核心,其他的体系都可以依附在任务框架上。任务就好象写记叙文,不外乎人物、地点、事件等等诸要素组成。而人物就涉及到生命、体力、魔法、攻击力等属性,各种类型游戏根据不同需要而设计;地点就是地图体系,整个游戏的大地图系统和进入到某个城镇的场景设计都可以归入这个部分;事件分为很多类,包括对话、战斗、特殊事件发生、物品交换等。在这些诸多因素都已经在你的脑海中成型后,你大体上就把握住了游戏轮廓,一些相关的体系就随之建立起来了。
前面所提到过很多系统,从任务系统入手只是一个方面。由于游戏类型的众多,也很难统计出一种能够适用于全部类型的设计模式。对于即时战略类和策略类的游戏,更注重于游戏方法本身,那么这时的切入点就偏重于玩法设计。战斗系统和升级体系的建立就成为游戏主框架的核心,这时的任务就好象成了一个附属品,但并不是说任务就不重要了,巧妙的数值变化是需要一个个的精心设计的任务来体现出来的。但是总体的游戏规则设计是这些类型游戏的核心,如果一开始没有经过反复的演算把各种游戏数据变化进行平衡,最终的产品肯定是不堪一击的。
一些其他类型的游戏,比如格斗类、养成类、运动类等因为创意的玩点不同,所以设计的切入点也各不相同。在这里就不一一描述,本人也能力有限,有哪位高手对这些类型的游戏有研究的不妨一起探讨。
在选择好了切入点,接下来就是在核心设计的基础上逐渐展开完善,并最终形成游戏的骨干。其实游戏设计的每个模块都是相互渗透的,并没有绝对的主次之分,上面所说的其实只是寻找一个切入点以便能够快速找到感觉并深入进去。各个模块之间的关系大致如下:

上面的一个图是描述各个模块之间的关系图。生存体系和地图系统是整个游戏的基础:生存体系中包括所有可能出现的角色属性,可能会在设计过程中不断添加新属性。地图系统是游戏中涉及到的全部位置和地点,是设计中最为头痛的一个部分。这两个系统构成了游戏的基础,几乎所有的游戏都有这两个模块。
升级系统的所有数据都要来源于生存体系中的人物属性,如何设计升级算法让游戏更好玩,更耐玩是升级系统设计的关键。掌握好整个体系的平衡性,尤其在多人游戏时更为重要。升级体系的重要性也体现在游戏时间的控制上,既要让玩家感受到升级后的变化,又要合理控制升级的速度,难度是相当大的。大量的时间被用在反复的演算上,这时先用程序设计个小模型是个比较好的办法。
NPC设计和AI设计是一个整体,在这里把两者分开来是有目的的。NPC的作用有很多,有时是放道具的箱子,有时是完成任务的触发器,有时是你的敌人,有时是你的朋友。NPC设计和地图位置也有关系,每个NPC都有一定的活动范围,应根据剧情需要指定活动地点。AI是指游戏中的人工智能设计,和NPC的设计结合很紧密。由于该系统往往由程序和策划协调着设计,所以把这个部分单拉出来形成一个单独模块。一般的AI设计包括寻路算法、战斗方式选择以及对话应答等,由于该部分极为复杂这里就不再详细描述。
战斗系统是一个笼统的概念,一些竞技比赛也可以归入到战斗系统中。战斗系统需要前面介绍的5大模块的支持,具体的实现就是战斗模式设计和战斗效果设计。有的游戏没有战斗,就可以跳过这个部分,但纵观现有的知名大作,哪个不是依靠独特的战斗系统来吸引玩家的呢?
进入到任务系统的设计部分,游戏框架就基本上已经快完工了。如何利用已经完成的其他模块来推动剧情的发展,巧妙的设计一些任务引导玩家进入到游戏的世界中来就要看设计人员自己的功底如何了。
上述几个部分之外,就是更为高层的界面设计和操作设计。这两个部分直接关系到用户对该游戏的接受程度,良好的界面和快速的上手操作所带来的第一感觉甚至可以决定着玩家会不会继续把这个游戏玩下去,其重要性可见一斑!
这些模块一起构成了游戏的主框架,从什么方面切入,如何由下到上或由上到下的逐渐完善,直到最终游戏成型并设计完界面与操作体系。对于一个要参加比赛的入门策划而言把握好这些零部件就可以控制好自己的思路,不至于在搭建骨架的时候自己就陷入到了无限的混乱中去。游戏的框架是为了让你自己整理思路,但你的策划案是要给别人看的,怎么让其他人迅速理解你的想法呢?让我们来看看系统流程图的绘制过程吧!

posted @ 2005-08-25 12:12 蓝色雪焰 阅读(2665) | 评论 (0)编辑 收藏
 
很多人瞧不起二次创意,因为策划就应该拿全新的东西出来才可以吸引眼球。其实他们在下这个结论的时候就已经触犯了项目开发的基本准则,就是少花时间多办事。尽可能减少开发周期就能够减少开发费用,并减少开发的风险。很多项目都无疾而终,并不是说他的创意不好,而是这个创意太难以完善了。那么,什么是二次创意呢?
对于二次创意我有着自己的看法,一般来说,凡是有目的的参照或吸取别人作品的部分或全部作为自己创意的基础,并开发出类型相近产品的创意都属于二次创意的范畴。二次创意不同于抄袭,因为抄袭是侵犯版权的违法行为,而二次创意多属于鉴戒或对某些未申请专利的创意部分进行参考而获得的。在游戏产业中,很多的游戏创意都算作二次创意。这个概念是广义的,即所有以其他作品为蓝本所生发、改良的创意都是二次创意,二次创意也可以说是游戏设计的一个重要手段。
一般来说,我们倾向于利用现有的一个故事进行改编,这就是为什么你们所见到的大部分国产RPG游戏都是武侠类的,因为有很多现成的小说放在那里。再来看看大量的三国、西游记、封神演义等名著所改编的游戏是到处可见,好象除了《红楼梦》之外,所有能够下手的经典之作都被做到了游戏里头(红楼梦的那个H-GAME我们不把它算在内)。这些都是二次创意所造成的结果。
为什么游戏策划人员那么中意于利用现有的作品进行二次创意呢?因为一个游戏的产生,需要一个庞大的世界体系进行支撑才可以拥有丰富的内涵,让玩家能够一直有新的东西玩下去,还要保证所有的事件都是在这个世界体系中是符合逻辑的。利用现有的小说或者故事,能够最大程度上减少创意的风险。世界体系一定要建立起一整套的概念并在此基础上逐渐形成自己的规则,这种规则设计所要花费的精力是巨大的,远远不如直接拿别人的东西来用划算。而且这些名著都已经具备了一定的用户群,让别人能够迅速接受这些规则比较容易。如果是自己来设计这些规则而没有任何依据的话,别人接受起来会非常困难,而且出现逻辑错误的可能性也非常大。这就是为什么进行二次创意比直接构建一个新的体系要容易的原因。
好了,你现在可以决定是利用现有的故事进行改编还是自己另外写一个新的,而我倾向于前者。一般刚入门的策划总是喜欢自己弄个很感人的故事就开始骗人眼泪,其实这种故事是经不起推敲的,而且作为一个游戏来讲,这种故事太单薄,很难对玩家造成很深的印象。只有那些拥有了大量读者或用户群的作品能够直接提供很多现成的资源,在这些作品基础上进行二次创意就比较容易成功。哪怕只拿这些故事的一点点出来进行包装,其效果和内涵就会给你的故事添色不少。
举个简单的例子。大家对周星驰的《西游记之仙履奇缘》和《月光宝盒》肯定非常熟悉了吧!这里采用《西游记》的原版角色,但是内容却离题千里,可效果却出人意料的精彩,这就是一个最典型的二次创意的例子!大名鼎鼎的《北京浮生记》也是结合了大航海时代的精髓以及一个经典英国地铁倒卖游戏改编而成的,利用方言的形式重新表现出来,就形成了一个崭新的大众游戏。这种例子比比皆是,光荣的《三国志》、《太阁立志传》系列,3DO的《魔法门》系列,甚至《星际争霸》这种很虚幻的经典游戏都是二次创意的典型代表。如何把大家烂熟的故事情节拿出来重新整理,变成一种新的类型让人们喜欢才是对一个策划水平的真正考验!
对于参赛的各位选手来说,你可以利用现有的各种资源进行二次创意,也可以自己充分发挥想象力弄一个全新的世界出来。但整个故事的设计中有几点是一定要注意的:
首先,你的故事要有个好开头。可是万事开头难,找到一个一下子把玩家心思抓住的开头的确很不容易。而且你必须通过游戏的思路来考虑,单纯的把想法写在纸上是没有用的,你必须要想好实现的方式。大部分游戏的开头是通过片头动画来实现的,如何利用好各种特效把你的故事烘托的象个烤红薯,让人闻起来就想尝,这就达到目的了。
然后,设计好你的故事高潮。无论是RPG还是其他类型的游戏,总有一个主线在游戏中贯穿着,波荡起伏的故事总要靠高潮来达到预期的效果。结局往往是高潮的顶点,传统的RPG不是主角的死就是大魔头被杀,想一个别致的结局会让你的故事比别人高出一点点的。
接下来就是选择好你的几个转折点。要让故事中充满了乐趣,把玩家的心弦一会提高,一会落下,这样才能够保持游戏一直有一股吸引力。如何创造一个又一个的悬念才是策划的关键,让你的故事真正有趣,充满活力。
上面三点,组合起来好象在写一篇作文。没错,游戏的策划就是在写作,在游戏这个强大的平台上把你自己的思量淋漓尽致的发挥出来,让你艺术细胞飞翔在玩家的脑海之中!
有了一个能够吸引人的故事,你的游戏就有了一个魂!下面就是给他一副骨架,如何建立起游戏的主框架呢?
posted @ 2005-08-24 12:01 蓝色雪焰 阅读(2706) | 评论 (0)编辑 收藏
 
项目建议书一般是由主策划或者项目经理负责编写的。进行可行性分析是一个自我否定的过程,而写项目建议书是一个向别人阐述自己观点的过程。而且项目建议书一般情况下是要去说服你的上司来做这个项目,所以一定要非常完善,把所有可能的利弊都分析到。也可能你对这部分不感兴趣,也可能这辈子你也不会被要求去写一份项目建议书,但是如果了解了一个项目是如何才能达到立项标准,会加深你对策划的进一步认识,避免把精力投入到不能成为项目的狂想中去。对这个比赛而言,一份合理的项目建议书会让评委更清楚你的设计思想是否完善。把评委当作你的上司或者投资人,努力说明这个游戏的卖点和创新的地方来打动他们。这也是你自己整理思路并说服自己继续做下去的一个书面文件,它会贯穿整个开发过程成为一个纲领性文件,是整个游戏开发的大方向。在项目建议书被批准后,游戏也就正式立项了。
项目建议书一般包括如下几个部分:
1、 当前市场情况分析:这个部分是给老板或者投资人看的。游戏必须适应市场需要,闭门造车的策划都不可行。必要情况下要先对市场进行调查和分析,利用第一手信息对玩家意见进行捕捉,把这些信息合理的加入到建议书中才可以增强说服力。对于参加比赛的选手来讲,暂时不需要对这部分有过多的了解,但要对游戏的发展方向有个大体的认识,尤其是你所设计的这个游戏。
2、 游戏的大体介绍:这是一个向上级描述游戏内容的最好方法。平时的报告太长太麻烦,谁都不会有兴趣认真看下去的。而项目建议书决定着这个项目是否进行下去,所以这是一个让老板了解你的想法最好的机会。这里的介绍不能太长,要把你所有的精华部分都罗列在上面,吸引住了老板,立项就确定了一半。对游戏策划来讲,这也是显露自己才华最好的机会,如何用最简洁的语言把整个游戏的精华表述出来就要看你的文学功底了。游戏的主体就是在这时确定的,一旦该项目被批准,那么以后的游戏设计都要围绕着它来开展。所以这时游戏中的卖点和主要特征都要认真的进行讨论分析,利用好手中的信息展开讨论,并结合其他游戏的优缺点分析自己设计中要突出的地方才可能抓住投资人的心。牢记一点:“只有能够带来最大化利润的游戏创意才能吸引住投资者的心!”
3、 游戏的赢利模式:这部分要对整个开发的成本以及回报进行估算。要分析需要多少人工,设备费用,以及管理费用等等。然后就要估算按照什么样的定价卖多少套游戏可以回收成本,是否有其他的赢利模式等。参赛选手只要了解一下有个认识就可以了,不需要真正完成这个部分。
4、 游戏的整体框架:这个部分对游戏来说是至关重要的。游戏要如何划分模块,用什么方式开发,以及模块之间的关系都要确定下来。对于一个大型的游戏项目,如果不进行模块划分和良好的整体设计,在实际的开发过程中会陷入无限的混乱中,人员也会很难控制。按照体系进行划分是一个比较有效的划分方法,任何游戏都是可以根据自身要求进行模块划分,下面给出一个大体的划分模式,后面会有详细的介绍:
生存体系:是游戏世界的基础,只要是游戏需要建立一个世界,那么生存体系是最基础的。生存体系也由很多要素组成,表现在玩家面前就是各种属性,视游戏类型而定。包括HP,MP,金钱等基本属性,复杂点的游戏还要设计饮食、体力、精神等其他属性,看具体的游戏设计了。
升级体系:升级体系是另外一种常见的消耗用户时间并增强耐玩度的主要方法,大部分的RPG游戏和即时战略游戏都有升级体系的介入。设计升级体系主要是设计升级的算法以及相关属性的平衡发展,后面会进行详细介绍。
地图系统:游戏中的地图设计,根据游戏类型而定。不外乎大地图的设计和场景设计,在项目建议书中只是把大体的框架建立起来就可以了。
战斗系统:大多数游戏都要有战斗,这和游戏的升级体系是密切关联的。战斗系统是非常复杂的,包括各种法术、武功、招式等设计,还有攻击力、防御力等数值的比较转换等。
任务系统:任务是游戏前进的线索,有了一个完整的任务系统,设计者的思路就不会发生太大偏差。项目建议书中只要对游戏中要涉及的主要任务进行简要描述就可以了。
操作体系:游戏如何操作,以及主要界面安排等都要做简要描述。这里还要提到游戏的一些配置情况,是否支持操纵杆和其他外设也要在这个部分来描述。游戏过程是使用键盘还是鼠标就要在这个阶段确定,帮助系统的设计也可以归入这部分,也可以另外拿出来另外做一个模块。
界面系统:该系统和操作体系有很大的关联。游戏中的很多操作是由界面所决定的,一个良好的游戏界面能够帮助玩家快速上手。界面包括游戏主界面、二级界面、弹出界面等很多种类,在建议书中也应该把整个界面系统的框架规划出来,还有整个界面的风格等问题也要确定。
NPC设计:游戏中总要有NPC的,这和大的游戏背景有关。什么样的角色如何安置,并给予他什么样的功能都是属于NPC设计的。大多数的NPC功能都很简单,无非是提供一些信息或者完成一件道具的功能。但是你也可以把NPC设计的很强大,这就要给他们加入人工智能的设定了。
AI设计:这是一个很大的范畴,是一个需要很多有针对性的研究才可以有发言权的领域。不同的游戏AI设定也不同,但这是必不可少的一个部分。没有AI,游戏就没有任何灵性可言。(但感觉现在的游戏有灵性的也不多)该部分过于专业,在这里不做讨论。


在完成了上述几个模块的划分之后,你的整体思路已经建立起来了。在进行模块设计的同时,你的游戏世界就逐渐呈现在你脑海之中。这些内容很混乱,因为各个部分都是相通的,而且关联很紧密。如何理清思路保持清醒的头脑才是最终成功的关键,这一点对于策划来说尤其重要。设计人员在早期脑子就是一团糨糊,那进入了开发阶段肯定是一团糟!上面描述的都是一个大体的模块划分,具体的游戏框架搭建还是远远不够的。在第四部分中会针对这些模块进行详细的讲解,以一个网络游戏为例简要的描述一下作为策划要如何完成一个庞大的世界体系。

5、 游戏开发进度:开发进度是要求产品经理或项目经理根据现有的条件来确定的。对你的上司来说,他最看重的也是这个部分。因为开发周期的长短会直接影响到游戏制作的成本,而且何时能够完工也决定着上市能否赶上最好的档期(比如暑假档),所以开发进度很多时候能够直接决定着这个游戏是否会被老板枪毙。
游戏的开发进度一直是困饶着国内开发团队的大问题,国外也一样。由于开发人员的熟练程度不同,预留时间很难确定。对于参加比赛的各位同志来说,只要大致计算一下需要多少人/月就可以了。
6、 开发人员列表及职责:最后一项,就是对人员进行分工。已经到位了的,直接进行工作安排;还没有到位或者需要招聘的,向人事部门发送申请。报告中要对人力情况进行估算,以及各项费用的评估。对比赛而言这部分就可以省了,费用的评估是需要有丰富经验的市场和管理人员才可以计算的。

好了,在完成了上述各项工作的汇报之后,如果你的预算和公司的计划相符,那么恭喜你,你可以开始下一步的安排了。否则,就只有等机会或者重写你的报告,但这种情况往往是没有结果的。项目建议书并没有一个固定的格式,你的目的就是通过它来说服你的老板(在这里就是说服评委对你策划的支持)。但是这又是不可或缺的一个必要条件,项目建议书分析的越透彻,这个项目可能获得的支持也就越多,最终成功的机会也就越大。
我们假设你已经通过了老板的测试,就让我们再回到你的故事中去,来看看如何让你的故事更容易被人接受,如何把它变得更丰满,更有趣吧!

posted @ 2005-08-23 12:07 蓝色雪焰 阅读(4170) | 评论 (2)编辑 收藏
 
作为一个游戏策划,尤其是一个初学者,脑子里肯定装满了各种各样奇异的想法。但是当你把这些想法告诉给程序或者部门主管时,得到的答案常常只有一句话:“这个东西根本就实现不了!”这瓢冷水可谓是浇的通通透透,让你火热的心迅速冷却了下来。几乎每个策划都有过这种类似的遭遇,我也不例外。一个游戏从一个想法到成为产品需要经历太多的磨难,合格的策划应该在一开始就知道这个想法能否行的通,在经过了严格的论证并初步产生了产品的轮廓后,才能把自己的想法提出来。这也是一个游戏能否可行的一个自我论证过程,包括以下几个部分:
1、 技术可行性分析:从技术上来考虑,你的想法是否能够实现呢?一个想法产生后,你就要知道你要把它做成什么样的游戏,大概需要哪些技术支持。这一般都会受项目组或者游戏开发公司自身的技术实力的影响,因为一个新的创意往往会牵扯到大量的技术性创新,如果你的想法按照现有的技术能力根本就无法达到或者会超出项目预算,那肯定会被枪毙的。只有那些在现有技术基础上进行升级和发展,或者在现有条件下能够进行技术突破而达到要求的创意才是符合要求的。比如,做一个网络游戏,你要让200个人能够在一个屏幕内同时对砍,就算是程序上能够实现,现有的网络条件也不支持,所以这种想法就属于技术上不可行的。
因为策划受到技术本身的影响,所以要求游戏策划对游戏中可能使用到的技术有个大致的了解。策划必须及时和主程序沟通,并多接触一些前沿的技术,这样才可以跟上时代的潮流,并不断提出符合技术要求的创意来!对这次游戏比赛而言,就要求策划本身对技术要有一定的了解,否则出现一些超低级错误就要让人笑话了。
2、 经济可行性分析:一个游戏的实现,如果不考虑到要花多少费用,多少时间和多少人,不计算能够回收多少资金就不是一个好的项目负责人。一个新想法如果不经过项目负责人的决策是不可能立项的。所以,在进行游戏设计的过程中,一定要把项目的规模和市场效果考虑进去,否则也是会很容易被枪毙的。游戏再好,不适合市场的需要也是白搭,而且公司也有自己的市场战略,所以大多数的策划被枪毙都是这些原因所造成的。
什么样的游戏可以引起玩家的兴趣,哪些游戏可以挣到钱,这是所有的游戏制作者都在努力寻找的。也只有市场才可以决定那些游戏是成功的,对于策划人员来讲,经常注意游戏市场的动向和海内外游戏的发展趋势才是正确的道路。如何选择一个适合潮流的游戏点来展开想象是获得一个有价值创意的关键!
3、 人力状况分析:在进行了技术和经济上的考虑后,还要看你自己周围的人力情况是否允许你这样设计。因为资源并不是你想获得就可以得到的,而资源中最重要的就是人。有经验的开发者本身就是一笔巨大的财富,如果你有一些很棒的同志一起来做开发,那么你的设计就可以很快被别人所接受,他们也可以给你很多建议来完善你的想法。甚至于你在产生了这个想法之后,马上就要考虑谁可以完成这个工作,你有多少人可以完成这个工作。如果只有几个刚毕业的有志青年,希望你开始不要去设计那些过于复杂的东西,就算你设计的再完善,最后因为人的原因而做不出来也是不管用的。

上面的三种情况是最容易被忽视的因素,还不是要考虑的全部。其实一个有经验的策划在刚开始有想法的时候就应该把大部分可能发生的问题都预测到,这样才可以保证这个项目有存在下去的必要和价值。而一个刚入门或者准备入门的新手,也最容易忽略上面三个因素。可能由于自身条件的限制,你对技术并不是很熟悉甚至是门外汉,那么你就一定要找一个做程序或者有经验的策划询问一下你的想法是否可行。如果有了一个念头就一头扎进去,最后的结果很可能是浪费了精力和时间,却一无所获。
你可以把自己的可行性分析过程记录并整理出来,这就是你的可行性设计文档,也是整个策划中一个很重要步骤。有了这份文档,程序就知道这个东西要实现什么,自己要做什么样的技术准备;部门负责人就可以估算大概需要多少费用来开发,开发周期大概有多长;人事部门就知道还要招聘什么样的人才能满足项目的需要。如果这些文档根本经不起推敲或者你自己都认为不可行,那就最好换个想法或者继续修改。越早发现问题就能够避免更大的损失,想成为一个策划就要从全局的角度来看问题。如果只是想做一个执行策划或者脚本设计就可以忽略这部分,因为你要干的事情就只是听从主策划的任务分配并按时完成工作就可以了。而你想成为一名合格的主策划或者项目管理者,那么可行性分析就是你要掌握的第一个重要步骤。
对于参加这次比赛的业余人士,你可以先不用考虑经济和人力等方面的问题,只要从技术和开发周期两个角度来考虑你的设计就足够了。首先,你要明确你的玩家用户群是哪些,也就是说你的游戏是为哪些人而设计的。然后你要大致明确你设计的游戏是哪个类型或者倾向于什么类型,这样才可以保证自己的思路不至于太混乱。最后就是要确定你的游戏要利用哪些技术,可能要分成几个阶段来完成。在完成了上面三个过程的思考后,你就知道你的这个游戏是否能够拿出来参加比赛了!只有你的可行性分析能够考虑到市场和人力方面等因素,这个想法才有可能成为一个商品化的游戏,否则它只能是一个参加比赛的作品而已。
整理完你的设计思路并整理出一份合格的可行性报告,这就为你的全部策划开了一个好头。下面就是写一个完整的项目建议书,这是拿来给你的部门负责人看的。还是那句话,如果你只想做一个执行策划,这个部分可以跳过;但想成为一个合格的主策划,就让我们来看看项目建议书该怎样写吧!

posted @ 2005-08-20 19:39 蓝色雪焰 阅读(3579) | 评论 (2)编辑 收藏
 

软件技能
  必须需要掌握软件:(以优先级排序)
  策划本身应学软件:
    1、Microsoft Office系列软件:含Word、Excel、Visio、PowerPoint
    2、Adobe软件:Photoshop
  其它有必要学习的技能
    1、程序相关语言:C++(选修汇编,选学习软件VC)
    2、美术相关软件:3DMAX(选学习软件maya)
    3、高等软件掌握能力(指能迅速上手使用各类软件)

推荐书籍
    1、神话类书籍:《中国神话传说词典》(袁珂编)、《山海经》、《神仙传》
    2、历史类书籍:《史纪》、《三国志》、《中国人史纲》(柏杨著)(选读《中国上下五千年》、《世界上下五千年》)
    3、文学类书籍:《西游记》、《三国演义》、《水浒传》、《封神演义》、《说唐》(选读《红楼梦》)
    4、武侠类书籍:金庸全集;古龙《陆小凤》、《楚留香传奇》、《武林外史》、《绝代双骄》;温瑞安《四大名捕》系列
    5、奇幻类书籍:龙枪编年史
    6、科幻类书籍:儒勒·凡尔纳三步曲《海底两万里》、《神秘岛》、《格兰特船长的儿女》(选读倪匡《卫斯理》系列)

推荐电影、动漫
    1、教父系列,魔戒系列,斯皮尔伯格的电影
    2、幽游白书
    3、COWBOY-BEBOP(太空牛仔)
    4、剑风传奇
    5、龙珠
    6、JOJO奇妙冒险
    7、机动战士高达(几个剧场版)
    8、足球小将
    9、花之庆次
    10、孔雀王
    11、福星小子
 电影尽可能的多看,在不影响学习和工作的前提条件下。

游戏设计方面的书籍
    《游戏软件设计与开发大揭秘》
    美:Marc Saltzman著
    何健辉 应光光 陈志远等译
    清华大学出版社
    价:42.00¥

    《游戏设计——原理与实践》
    美:Richard Rouse III
    尤晓东 等译
    电子工业出版社
    价:48.00¥

    《游戏的设计与开发——梦开始的地方》
    叶展 叶丁编著
    人民交通出版社
    航空工业出版社
    价:50.00¥

    《游戏设计概论》
    荣钦科技 编著
    北京科海电子出版社
    价:36.00元
  这四本中,对于专业游戏设计师来说,可以用来补补课,对于自己哪些还不门儿清的地方有个了解。对于新手上路,或者立志入行的朋友,推荐先看叶氏兄弟的《游戏的设计与开发——梦开始的地方》,进阶书籍为《游戏设计——原理与实践》、《游戏设计概论》,参考书目《游戏软件设计与开发大揭秘》


    《软件开发的创新思维》
    美:Alan Cooper
    刘瑞挺 刘强 程岩等译
    电子工业出版社
    价:30.00¥
  对大多数软件开发皆有用的书,强烈推荐看一下,是针对软件而言,包括对界面、软件操作等内容做了非常直感的分析,尤其对用户的分析,完全可以适用于网络游戏软件。

项目管理书籍
    《人月神话》
    美:Frederick P. brooks Jr. 著
    UML China翻译组 汪颖 译
    清华大学出版社
    价:29.80¥

    《人件》
    美:Tom Demarco & Timothy lister著
    UML China 译
    清华大学出版社
    价:29.80¥
  上面这两本书,是朋友大鲵推荐的,看了一下果然受益匪浅,主要是教你如果在IT公司管理产品项目,第二本是针对IT公司产品项目开发团队的管理和带动。偶多次提到这两本书的好处,咳,这次就不说了。

其它书籍
    《电影剧作概论》
    汪流(主编) 王迪 黄式宪 刘一兵 柳城 著
    中国电影出版社
    价:24.80¥

    《现代电影剧作艺术论》
    王迪 著
    中国电影出版社
    价:11.60¥

    《电影剧作教程》
    刘立滨 主编
    何可可 李波 著
    中国电影出版社
    价:22.00¥

    《电视策划与撰稿》
    许永 著
    中国广播电视出版社
    价:18.00¥

    《电视戏曲论纲》
    杨燕 著
    中国广播电视出版社
    价:17.00¥
  以上五本,前两本推荐,咳,后三本看了肯定能学到东西,不看也无伤大碍,自己判断值不值吧。 

  其实有的内容,是可以在做某个主题游戏是现学的,而不用一下子,就能说出个一二三来.但一些比较常用的知识,如网络软件应用、中国历史常识、神话相关常识性的东西,在你印证一个问题时,不用现翻书,我以为是非常必要的;另外这方面的积累,还包括,对网络游戏的认识,或者说对游戏的认识。
  现在大家不是玩家了,已经在走向职业游戏设计人,在与大家讨论时,怎么会出现,我没有玩过,我不知道这样的词呢?  
我们从几个方面说吧 

1.书籍 
  其重要性毋庸置疑,这一点大家一定已经有感触了。 
  对游戏软件设计,程序基础等书籍,能了解到,能掌握到什么程度尽力而为,这个过程应该是伴随着你的游戏设计生涯的。 
  而对历史、文学、神话等,那个部分的书,大多是必读的,也就我列给大家的。另外我开了一些了武侠,科幻,玄幻的书单。这个,在力所能及的情况下,应该是看的,为什么呢,这样的结果,不一定使你掌握很多知识,但可以丰富和提高你的感性思维。 
  如果男人是以理性思维见长,女人是以感性思维见长。那么游戏设计人,应该同时具备这两思维。理性思维就是遇事数据化比较强,而不大含个人感情色彩。而感性思维就与之相反。 一般理性思维,比较适合的职业为医生,程序员,科学研究工作者等;而感性思维较强的人,比较适合诗人,作家,画家等等。 

在有一个功能要推出时,需要有游戏设计所掌握感性思维,去理解玩家是否会喜欢这个设计;又需要用程序员思维去思考如何实现。理性与感性,从这一点可融合了。 

2.电影与动漫,所提供给大家的都是感性思维认识。 
  不是让大家被感化,而是现在越来越大的趋势是游戏设计与影视相接邻了。在《骇客帝国》中,我们看到很多电脑处理的手法。其实很多手法都可以微妙的做在游戏中的。 
  另外,3D游戏的盛行,对CG,过场动画,也都有要求,所以影视的处理手法,是非常有必要借鉴的。 

问:我看过波斯王子的介绍~在游戏里使用了大量的电影制作方面的技巧~ 
答疑:是的。主要是镜头的运用。广角镜头的使用显得《波》在场景来说,气势非常宏大。仙3,在过场动画时,也用了一些常用的电影镜头表现。

  所以让大家看电影,动画,是这个目的,不是只是看着玩,看着一乐。在游戏,一些表现,如果用了电影或是文学作品常用的手法会有奇效,《仙1》中,林月茹死时,那段灰的倒叙,不知道搞哭过多少人。这样的手法,如果不是通过文学与影视方面的提高,是凭空想不出来的 
  大家需要自己去找这方面的书去提高,再回头做游戏设计时,你会发现,很有用的。同一个表现,可能不同的导演会采用不同的处理,大家学,就是学这样的结果。 

3.软件的掌握  
  在初入行时,我最得意的莫过于此了,就是可以很容易的掌握和提高一款软件的,即使在事前没有人知道这个软件是做什么的。常用随机的方法,下个软件,先搞清楚它是干什么的,然后用它来做事。 
  在现实中,很少有人会去教你一款软件怎么用,更遗憾的是,你也不一定可以找到他的说明书。所以,对于软件的深层使用,必须要自己去摸索。 
  所以那几款软件,大家尽可能的深入,函数、宏等,能学到哪一步就学到哪一步。 

4.最后要提及的就是对游戏。这也是非常重要的。 
  对于游戏,大家在未入行时,往往以为,游戏策划,就是要玩游戏,这下当了游戏策划了,爽了! 
  对于一款游戏的了解,除了亲手去玩,还有很多方式;
  如果你亲自玩过每一款游戏,你根本没有那个精力。如果你非常需要研究的游戏,不亲自玩,你很难了解。所以在玩时,是要有目的性的。 
  如果我们在开会讨论一些游戏,与我们的游戏相类似时,而你对这类游戏完全没有接触过,当你看到大家都振振有辞,只有你说不出个什么,你想想,会不会非常郁闷呢? 
  玩,怎么玩?这个不能以玩家那样随心所欲,要克制自己,并主观肯定他们游戏,去走近它们,了解它们。另外还要排斥对于某款游戏是垃圾这样的想法。

posted @ 2005-08-19 12:47 蓝色雪焰 阅读(694) | 评论 (0)编辑 收藏
 

作为一个电脑游戏的专职策划,至少要求具备以下几个方面的能力,否则就很难成为一个称职的策划人员。

一、对世态人生的洞察能力
二、对市场的调研能力
三、对系统工程的操作能力
四、对程序、美术、音乐的鉴赏能力
五、对游戏作品的分析能力
六、文字、语言的表达能力
七、部门之间的协调能力
八、天马行空的思维能力
九、常用软件的使用能力

一、对世态人生的洞察能力

就象一句说评说戏剧的俗语一样,“舞台小天地,天地大舞台”,我们也可以给电脑游戏如法炮制一句:“游戏小人生,人生大游戏”。不同的是,游戏可以通过SAVE/LOAD重新来过,而人生中永远没有后悔药,所以“一失足成千古恨”的悲剧常常在我们身边上演。这样来形容人生似乎有些颓废,但作为一个游戏策划,如果没有对人生的深刻理解,用什么去打动人们封闭的心扉呢?
在《魔兽争霸》里,你是人也好,你是兽也罢,你所辛勤劳作的,你所拼命搏杀的,不过是一片生存的空间罢了;在《C&C》里,何尝又不是如此?
脍炙人口的《仙剑奇侠传》,一个成年人的童话,圆了多少人的英雄美人梦?
一个接一个的《三国志》,一段纷乱的历史,圆了多少人的逐鹿天下梦?
一个游戏就是一个梦想,大可以雄霸中国,雄霸地球,还觉得不过瘾的话就去雄霸太空好了;小可以做个飞行员,做个医生,做个侠客,做个小孩,甚至于一只猴子,一只猫咪……
不论是正义的化身,还是邪恶的代表,一个成功的作品在给你安排角色的时候,一定会让你在踌躇满志,在你的欲望得到满足的时候,你就忘掉了掏腰包的烦恼。

二、对市场的调研能力

作为一种商品,游戏软件具有其它商品所具有的一切商品属性,牵涉到许多市场方面的问题。游戏策划通常不是经济学家担任的——在国内做个经济学家可能比做游戏策划合算多了——所以你不必去做一些很有学术味道的类似论文之类的市场调研报告。但是,一个策划必须保证自己的作品能卖出去,否则就很难有再做策划的机会,因为一个游戏作品的开销足以使国内的一个制作组走上绝路。
由于游戏产品的时效性问题(制作周期长,销售周期短),策划在决定做一个方案前一定要进行深入的调查研究,并对得到的信息资料进行分析和判断,以确保产品有足够的市场。

三、对系统工程的操作能力

一个游戏作品的开发过程是一个很大的系统工程。纵向的,有市场调研、确定方案、制作、测试、发售、售后服务几个大的步骤;横向的,有广告宣传、信息反馈、资源获取、技术进步多个体系。这其中的任何一个环节出了差错,都可能导致作品的失败。
所以,作为一个策划人员,其工作并不仅仅是构思一段故事,设定几个数据,除开懂制作以外,还要在公关、营销方面有一定的能力才行。

四、对程序、美术、音乐的鉴赏能力

作为一个专职策划,不见得要会写程序。比如在下,还是很久以前写过几行BASIC和汇编的,现在程序员们写的程序我看不懂,所以也就懒得去看,因此节省了不少的时间。
看不懂有看不懂的好处,那就是是我在构思的时候,从来不需要考虑技术细节上的问题,少了很多的限制。如果在某个构思上可能会遇到技术上的问题,我就去咨询我们的程序员们,并用开玩笑的口气说,你只要回答一个字就行了,那就是“行”或者是“不”。如果他们的回答是“行”,我就继续我的构思;如果他们回答“不”,我就只有将原来的构思推倒了重新来。
但是,必要的程序鉴赏能力是必需的,如程序的速度,效率,可靠性,人机对话的界面,AI,等。特别是程序的可靠性,如果程序内充满BUG,动辄死机,相信这样的游戏一定会令人头痛不已。
在美术方面,不见得要看得懂郑板桥的竹子和徐悲鸿的马,但必须看得懂美术设计人员的作品。更重要的一点是,这些作品是否跟你的任务单相吻合,是否比较完美地表达出了你的意图。如果没有,缺陷在什么地方,应该一一指出,以便作进一步的修改。
此外还要听得懂音乐——音乐师的作品是否能烘托要表达的气氛?音效是否逼真?等等。

五、对游戏作品的分析能力

所谓“它山之石,可以攻玉”,国内的游戏产业刚刚起步,经验尚浅,常常借鉴国内外一些游戏作品的可取之处。但这种借鉴不是生搬硬套,更不是模仿和抄袭,而应该是从中受到启发,使自己的创意得到升华。
所以,作为一个策划,工作的一部分就是玩别人的游戏——这也许是我当初选择做策划这一行的原因之一——上班时间可以名正言顺堂而皇之地玩游戏,实在是个好差事。
不过,策划的玩法跟一般的玩家有所不同,一般玩家可以想玩什么就玩什么,一看是个滥游戏三分钟后就可以将它反安装。游戏策划(应该说其它部门的人员也是如此)则不行。某些新游戏,明知滥得很,你也得玩下去,不管你头大到什么程度,因为你要弄清楚它到底滥在什么地方,作为前车之鉴。如果是好游戏,你可能玩两遍三遍还不行,有时会玩上十几遍,几十遍,再好玩的游戏玩到这份上想不头痛都不可能了,因为你必须用心去玩,去查找,去验证,去思考,去探索,去发现那些普通玩家并不在意的东西——哪些地方好,怎么好法,为什么好,能不能更好?游戏的结构是什么样的?游戏中的数据是怎么设定的……

六、文字、语言的表达能力

最初,游戏的模型是建造在策划的大脑中的,为了得到主管部门的认可以取得开发资金等,需要一个象样的书面报告;而后的关于游戏本身的策划书;在制作中,无时无刻不用到用文字或表格;游戏中的对话、旁白;后期的宣传文章;售后服务中对用户问题的回函……所有这些东西,都必须策划用文字表述出来。如果没有较好的文字功底,辞不达意,很可能会把事情搞得一塌糊涂,甚至使一个良好的创意中途流产。 在制作过程中间,有许多东西需要策划直接用语言向别人表达。其中一些只好意会,很难言传,如一场动画的创意,如何让美术设计人员既理解你的意图,又发挥他的想象力,恐怕是一件很费口舌的事情。 在宣传工作中,向记者、玩家朋友介绍你的作品,也需要较好的语言表达能力。 在大型的游戏制作公司中,工作量很大的文案工作通常都是专门的文案人员承担的,如对话文本,宣传文稿等。不过,笔者以为,由于策划本人更熟悉作品人物的性格、形象和所处的环境,如果由策划自己来撰写表现他们的文字,也许更深刻一些。当然,前提是策划本人在时间和精力上都来得及,这可不是一件轻松的事情:《剑侠情缘》仅对话就有11万字,《地雷战》的对话也有6万多字,还有3万多字的拍摄剧本和说明书,这都是笔者用拼音敲出来的,直接后果就是视力下降50%,掉的头发以数十万计(不完全统计)。

七、部门之间的协调能力

一个游戏的制作主要有策划、美术、音乐、程序几个大的部门,到后期还有测试、营销等部门的参与。这些部门工作性质各不相同,相互之间既有同一性又有矛盾性。如何让各部门既能服从整体规划又有一定的灵活性以发挥各自的能动性,这就需要策划具有比较强的协调能力。 另外,一个制作组少则六七人,多则十余人甚至几十人,加之又分属各个部门,在工作中产生矛盾是在所难免的。矛盾解决得好,就会激励士气,改正工作中的不足,使制作工作向好的方向发展;解决得不好,就会影响员工的情绪,降低工作效率,从而影响作品的效果和制作进度。作为所有工作任务的发布人,要多和各成员进行沟通,尽可能避免产生矛盾。万一矛盾发生,在处理这类矛盾时,既要公正无私,又要照顾情面。如果身兼部门负责人,这一点就更重要了。

八、天马行空的思维能力

如果说,前面所述的几种能力都可以通过不断的学习取得的话,那么这里所说的思维能力或多或少都需要一些天赋了。一个没有发散思维能力的人,不管他其它方面如何优秀,都是不太适合来做游戏策划的。 我曾经在一篇文章中谈过,做电脑游戏就是和众多的高智商的玩家斗智。原话如此:别人想到了的,你早就应该想到,因为你是策划而别人不是;别人没想到的,你想到了,给别人一个惊喜,这才是你应该要做的。

九、常用软件的使用能力

这是前面都写完了才加进来的,其实这是废话——大凡做游戏的,几个不是电脑高手?各种vc、wc都玩得团团转,况常用软件乎? 不过凡事都可能有例外,如金山公司的策划,就没有什么计算机科班出身的,我是学电子的,还算是接近专业,有些是学美术等其它专业的,隔得就太远了。 这里所说的常用软件,主要是两类:一类是字处理软件,如WPS,word等;一类是表处理软件,如excel等。 对文字处理软件的要求一是能编排的文章要足够长,象《地雷战》中6万多字的对话文本是放在一个文件里的,文件的长度就有120k;二是要有查找、替换等常用功能,在测试中发现一个别字,要在6万字中查找出来,不求电脑可就有得苦了;三是要具备图文混排功能,因为在拟定任务单时常会涂上一些草图在里面,在撰写说明书时,将要插入的图象放在合适的位置后再送去出版社,以后的麻烦就少多了。 电子表格软件主要是在数据设定时使用。《地雷战》中,兵种对应物品的关系是一个90×160的二维表格,在测试中每改变一个数据都要在这14400个数据中找到修改后重新测试,如果没有强大的表格处理软件这其中的工作量是无法想象的。 此外,策划对美术、音乐设计人员常用的软件也应该有所了解,以便比较准确地估算各部门的工作量,不断地对工作任务和工作进度进行合理的调整。

posted @ 2005-08-19 12:31 蓝色雪焰 阅读(838) | 评论 (0)编辑 收藏
 
(一)武术行礼的方式
1、 徒手礼
(1)抱拳礼
此礼法是由中国传统“作揖礼”和少林拳的抱拳礼(四指礼),加以提炼、规范、统一得来的,并赋予了新的涵义,这是在国内外一直被采用的具有代表性的礼法。
行礼的方法是:并步站立,左手四指并拢伸直成掌,拇指屈拢;右手成拳,左掌心掩贴右拳面,左指尖与下颏平齐。右拳眼斜对胸窝,置于胸前屈臂成圆,肘尖略下垂,拳掌与胸相距20--30厘米。头正,身直,目视受礼者,面容举止自然大方。武术散手在戴拳套练习和比赛时,可模拟似地行抱拳礼,两关套合抱于胸前即可。 

     抱拳礼的具体涵义是:①左掌表示德、智、体、美“四育”齐备,象征高尚情操。屈指表示不自大,不骄傲,不以“老大”自居。右拳表示勇猛习武。左掌掩右拳相抱,表示“勇不滋乱”,“武不犯禁”,以此来约束、节制勇武的意思。②左掌右拳拢屈,两臂屈圆,表示五湖四海(泛指五洲四洋),天下武林是一家,谦虚团结,以武会友。③左掌为文,右拳为武,文武兼学,虚心、渴望求知,恭候师友、前辈指教。

     (2)注目礼

      并步站立,目视受礼者或向前平视,勿低头弯腰,表示对受礼者的恭敬、尊重。若表示对行礼者答诺或聆听指教受益时,可微点头示意。 
 

     2、持器械礼

     此礼是习练武术器械时行施的礼节,礼仪内涵同“抱拳礼”。 
     

(1)抱刀礼

     左手抱刀,屈臂使刀横于胸前,刀身斜向下,刀背贴附于小臂上,刀刃向上;右手拇指屈拢成斜侧立掌,以掌根附在左腕内侧;两腕部与锁骨窝同高,两臂外撑,肘略低于手;目视受礼者。
  

    (2)持剑礼

      左手持剑,屈臂,使剑身贴小臂外侧,斜横于胸前,刃朝上下;右手拇指屈拢成余侧立掌,以掌根附于左腕内侧;两腕部与锁骨窝同高,肘略低于手,两臂外撑;目视受礼者。

      (3)持棍礼

       右手握棍把段(靠棍把三分之一处),屈臂于胸前,棍身直立,棍梢向上;左手拇指屈拢成侧立掌,掌指向上,掌心与右手指根节指面相贴;两臂外撑,肘略低于手,两手与锁骨窝同高;目视受礼者。

      (4)持枪礼

       右手握枪把端,屈臂于胸前,枪身直立,枪尖向上;左手拇指屈拢成侧立掌,掌指向上,掌心与右手指根节指面相贴,两臂外撑,肘略低于手,两手与锁骨窝同高;目视受礼者。

     其它器械的持器械礼,参照上述规范统一。不再一一列举。
  
3、递械礼

     (1)递刀礼

      并步直立,左手托护手盘,右手托刀前身,使刀平横于胸前,刀刃向里;目视接刀者。

     (2)递剑礼

      并步直立,左手托护手盘,右手托剑前身,使剑横于胸前,剑尖朝右;目视接剑者。 
  
     (3)递棍礼

      双手靠近握棍于把段(靠近棍把段约棍身1/3),左手在上,两臂屈圆,使棍竖于体前,棍梢端朝上;目视接棍者。

     (4)递枪礼

      双手握枪于把段处,左手在上,两臂屈圆,使枪垂直于体前,枪尖朝上;目视接枪者。

       2、接械礼

     (1)接刀礼 

      开步站立,左手掌心朝上托刀于递刀刃者两手之间,右手心朝下接握刀柄;目视右手接刀。

     (2)接剑礼

       并步直立,左手掌心朝上,托剑于递剑者两手之间,右手手心朝下接握剑柄;目视右手接剑。 

     (3)接棍礼

       并步直立,两手虎口朝上,上下靠拢,左手在上,靠近递棍者手下部接握;目视双手接棍。 

     (4)接枪礼

      并步直立,两手虎口朝上,上下靠拢,左手在上,靠近递枪者手下部接握;目视双手接枪。 

  
     其它器械的递接礼,参照上述规范统一,不再一一列举。
posted @ 2005-08-18 12:01 蓝色雪焰 阅读(381) | 评论 (0)编辑 收藏
 
工欲善其事,必先利其器。作为游戏从业人员,使用合适的工具是完成合适的工作的前提。这个帖子将提供相关的工具资源、学习地点的链接。跟贴时请注明工具种类。
项目管理工具:
EXEL:普通地球人用的管理软件。 
ALIENBRAIN:比较专业的游戏ASSET管理软件。www.alienbrain.com. 
MS Project: 项目管理软件,用于项目规划,定时,工作分配等。
另外,StarTeam是一个网络协作用软件,一般网络协作开发会用到。参见http://www.borland.com/starteam/index.html
企划工具:
www.excelhome.net         学习excel的好地方,版主有问必答,回帖很快,水平很高。也可以顺便学学word以及其它office工具
关卡设计方面,《关卡设计——创世流程》详细描述了2D关卡的基本术语及天晴数码的关卡创建过程,是入门的好教材,原贴参见http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=64&page=1;《关卡设计入门》则是经验比较多的设计师的总结性文章,比较偏重理论和感觉,但不无裨益,原贴参见http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=60&page=1;《关卡设计心得》则试图对关卡设计进行理论性的总结,原贴参见http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=76&page=1



武侠已经成为中国的传统,但这个传统还没有长成就已经开始没落。伊肯的这篇文章总结了一些武侠游戏设计中面临的问题,并提出了一些切实的解决方案,值得一看。原贴参见http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=85&page=1



中国游戏的历史并不长(或者用华文游戏这个概念?),但了解一下对于做策划还是比较有帮助。原贴参见http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=101&page=1,另附网络游戏研发的里程碑:http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=209&page=2



经济学现在似乎成为网络游戏的热点问题,但在很大程度上是个伪问题,因为提出讨论的人和参与讨论的人都不太了解经济学。这里是某人学习经济学时的一些笔记,虽然简单,但至少可以说明经济问题的复杂性。http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=99&page=1



日本是游戏大国,吸取他们的先进理念和开发经验有助于我们成长http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=161&page=1



这里是RPG制作的入门教材,可以帮助初学者了解游戏制作的基本内容http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=165&page=1



程序工具:



http://www.ati.com/developer/rendermonkey/index.html         由ATI开发的一个可编程着色器开发包中的一个集成开发环境。可以方便的加载资源来编写,包括定点着色器和象素着色器,并且可以方便地看到代码效果。可在低端机器上运行,即使显卡不支持硬件处理(原贴参见http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=63&page=1)



在游戏程序应该做些什么方面,这篇帖子进行了总括的说明。尽管并不具体,但有助于读者形成一个大致的观念,初步了解到问题的复杂程度。原贴参见http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=90&page=1



对于游戏而言,AI是很重要的部分,换而言之,也就是人工智能。这篇帖子对人工智能进行了一些想象,但并非完全不切实际。原贴参见http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=107&page=1



游戏引擎是游戏结构中最基本的部分。这篇帖子记载了游戏引擎的演化史。http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=106&page=1



开发文档一直是一个大问题,不光程序,策划也很头疼。这里是软件工程中的标准化文档,尽管不一定适用于游戏开发,但应有借鉴意义。原贴参见http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=116&page=1



图像编程是游戏引擎的核心内容之一。这里是显卡术语的列表:http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=176&page=1



http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=177&page=1



http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=178&page=1



http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=179&page=1



虽然看不太懂,但至少是一篇技术文章……还请大大多多指教http://www.chinagcn.net/bbs/dispbbs.asp?boardID=3&ID=211&page=2



美术工具:



长角牛先生总结了美术常见的工具:)



3D建模首推MAYA和MAX。从简单功能上说两者不分胜负,只是个人/公司习惯而已(我以前呆的城市几十家游戏公司100%用MAX。现在住的游戏重镇,大家几乎都用MAYA。)但从高级功能/工具(PLUGIN)开发来看,MAYA更好,更灵活(归功于它的系统结构)。不过,美工一般能写点MEL SCRIPT就不错了,PLUGIN用到MAYA API,是TOOL ENGINEER的活。再说一般情况下美工工具用MEL做起来远比API简单。我曾经用MEL和MAYA API写过同样一个动画工具,MEL只需100行简单E文胡话就行,而MAYA API则洋洋几百行C++。有的功能MEL能一句话写,用C++时却没有相应的API,得自己码!



LIGHTWAVE据自己称是影视界最常用的3D软件,但游戏界我从来没听说哪家用它。说起LIGHTWAVE就伤心,k年前曾经去LIGHTWAVE应徵,面试我的VP答应送/寄我一套LIGHTWAVE,可一直没兑现。:((Lightwave网址为www.newtek.com)



2D美术工具最常见的是PHOTOSHOP。如果不是照片处理,而是完全手画,那么PAINTER似乎更合美工胃口,至少我个人感觉如此,虽然我不是professional美工。



MoCap不能算美工工具,因为它的用户不是美工,而是一帮技术员。平时MoCap用的演员除了极个别是请来的专家(如体育明星,特警队员,或者李连杰等),其他跑龙套的都是MoCap组自己演的(不需要表演技巧,谁都可以去过把瘾)。MoCap的软件处理工具是MOTIONBUILDER,里面没有一点儿美术含量,非常无聊。Mocap设备制作公司名单参看http://www.siggraph.org/cgi-bin/cgi/idCatResults.html&CategoryID=69
posted @ 2005-08-17 12:12 蓝色雪焰 阅读(1628) | 评论 (2)编辑 收藏
 
魔兽的任务号称有1500多个,这么多任务,难免有些水分在里面,不过把这些浩瀚如星海的任务分类一下,倒也可以借鉴不少。(由于我练的是部落,所以选部落方向的比较经典的任务)
    有人说,魔兽的任务很多,但基本上还是那些杀怪拿东西的任务占大部分,没什么意思。我要说的是,当你真正用心体会魔兽世界的任务,咀嚼每一个任务情节,感受每一个任务细节,你会发现,它比你想象的有趣的多。
一、 消灭(或击败)怪物。
    程序实现难度最低,只要验证所杀的怪物(数量)即可。应该说,这种任务在WOW里所占比例最大,在其他网游的任务系统中也最常见。因为这种任务系统的实现没有很大难度,程序只要安排任务指定NPC、任务对话及任务完成检测,而且也是最容易安排剧情的任务类型。
   所需消灭的怪物分为两类,一是普通的怪物,一是BOSS类怪物。普通的怪物就不必多说了,BOSS类怪物有些还需要触发条件,例如十字路口的狂热的维罗格任务,消灭半人马一定数量后才会出现,还有十字路口的艾其亚基任务,要在它的巢穴附近吹响号角来召唤它。

二、 收集物品。
    收集的物品分4类:
    ⑴、指定怪物必然掉落物品(如十字路口的偷钱的迅猛龙任务)
    ⑵、指定怪物随机掉落物品(如十字路口的斑马的威胁任务)
    ⑶、从地图上可见并可采集之物品 (如十字路口的菌类孢子任务)
    ⑷、可以由玩家制作出来的物品 (如灰谷的战歌氏族补给品任务)
    同样也是一般网游中最常见的任务类型。除了固定要安排的任务指定NPC和任务对话,程序只要安排物品获得途径(增加怪物掉落物品项或地图物品)和任务完成检测即可。

三、 对话任务。
    主要的任务类型,经常与其他类型任务结合运用。
    ⑴、与某人直接对话。
    ⑵、将指定物品给予某人并对话。与收集物品任务不同的是,该任务物品由任务起始NPC直接给予。(如贫瘠之地的战歌的报告任务)
    在游戏中的作用主要有以下几个方面:
    ⑴、推动剧情发展。
    ⑵ 、引导玩家进入下一张地图。
    ⑶ 、引导至后续任务。
    ⑷ 、让玩家了解游戏的背景故事。

四、 护送任务。
    保护目标NPC到达目的地,路上一定地点会刷新怪物,这时候要注意不能让目标NPC死亡,否则任务失败。最典型的是哀嚎洞穴的护送牛头德鲁伊任务。
    程序实现:固定地点刷新怪物,判断目标NPC是否死亡,死亡则转入任务失败,任务结尾若NPC仍存活,任务完成。


五、 探索任务。
    一般的要求是到达探索地点的规定区域内即可完成,供玩家熟悉地图用。有些任务还要求发现某特征事物,例如十字路口的遗忘之池任务,在池水中观察到有冒泡的地方,需足够接近方可完成。

任务说明:
向图加·符文图腾报告你的发现。 
探索遗忘之池  

很久以前,贫瘠之地曾是个郁郁葱葱、生机盎然的地方。但是战争与灾难接二连三地降临在这片土地上,最后就剩下了这一片干燥荒芜的不毛之地。事实就是这样,真让我伤心。不过,在过去的几年里,贫瘠之地出现了新的绿洲,生机又在这片土地上重现。我们德鲁伊感觉到了在很深的地下有一股试图冲出地面的力量。我们必须找到这股力量的源泉,请到十字路口西北边的遗忘之池去一趟,在那里的湖水中搜寻力量的源泉,然后回到这里来。 

六、 职业任务。
    之所以把这个任务分类出来是因为它的特殊性。在职业任务中,玩家将会熟悉自身职业的属性、特长、技能,锻炼必须的操作技巧。这些任务在魔兽中就做的很好。例如法师的职业任务有锻炼对霜之新星的控制能力和锻炼杀怪续航能力,盗贼的职业任务有训练涂毒和开锁能力的。


           从魔兽任务系统所得的游戏任务系统设计启示:
一、 任务的故事性。
    魔兽里的任务,哪怕是一个最不起眼的小任务,也会有几段故事说明和指示。任务说明会给玩家一种代入感,让玩家成为这个任务故事的一分子,从而带动玩家进入任务,创造游戏总体氛围。小任务如此,大的任务,特别是和游戏背景紧密相关的任务,更是要刻意渲染出足够的气氛,让玩家感觉,游戏的历史也可以由自己左右,当任务完成后,便会产生很大的满足感。一个个任务的故事组合起来,就如同凤凰的羽翼逐渐丰满起来,把游戏的故事情节都展现给玩家。这也成为游戏的内涵所在。
    任务的说明很很体现的暴雪的恶搞风格,而且九城的汉化有些地方也相当经典。仅举几例,可窥一斑:
    1、奥达曼的能源,法师职业任务。
找到一个黑曜石能量源,将其交给尘泥沼泽的塔贝萨。 
黑曜石能量源  0/1 

既然恶魔已经被消灭了,接下来我们就得去找一个能量源。不幸的是,最合适的能量源往往非常古老而且极难获得。有的时候,命运就喜欢这样捉弄你,难道不是吗?所以,为了得到能量源,你必须到奥达曼去打败那里的黑曜石守卫。他体型巨大而且很难对付,但是你可以从他身上得到我们所需要的能量源!祝你好运,利娜。如果你运气不好的话,那么……很高兴认识你。 

    看见最后一句话没有?呵呵。

    2、能量仪祭,法师的职业任务。
将《能量仪祭》交给尘泥沼泽的塔贝萨。 
能量仪祭  0/1 

嗯……我想起来了,我的书已经没有了!你要知道,我欠了一屁股的债,不得不把最后一册《能量仪祭》卖掉来还债,我把它卖给了一个牧师……他是血色十字军的成员。他一定把那本书带到了他们的根据地——提瑞斯法林地里的血色修道院图书馆去了!如果你想要那本书的话,就得去一趟修道院。很抱歉给你带来这么多麻烦,这些天我已经有些头昏脑涨了…… 
    原来这个隐居在尘泥沼泽的家伙是为了逃债,连书都卖掉还债了,哈。

    3、荆棘谷的讨债行动。
给藏宝海湾的“海狼”马克基雷带回玛雷的畸形足、乔乔的金色望远镜和苏克的巨型戒指。 
玛雷的畸形足  0/1 
乔乔的金色望远镜  0/1 
苏克的巨型戒指  0/1 

我这儿的白条已经少了许多啦,但还是有许多没信誉的家伙欠着我的钱。接下来,我们得对付“畸形足”玛雷·维尔金斯、火柴棍乔乔,还有拇指苏克。这帮家伙的债欠了好久,我看他们是不想还了!后来,我听说他们被什么人给骗到丛林里去了。我当然不关心他们到底会怎么样——我要的是我的钱!他们应该就在东北方的阿博拉兹废墟和朱布瓦尔废墟里。找到他们,把我的钱拿回来。

    很明显这家伙在魔兽里专放高利贷,完成了这个,后面还有一系列的讨债行动。

    4、辛特兰的Z校对2任务。
在荒芜之地收集20张枯木头皮,与尼姆布亚的长矛一起放置在枯木村庄,然后回到荆棘谷尼姆布亚那里。 
传达可怕的信息。  

枯木巨魔原来是部落的盟友,但他们现在背叛了萨尔……他们要为此受到惩罚!来,拿起我的长矛去北边的荒芜之地。追捕那里的枯木,收集他们的头皮,在他们的一个村庄的土地上插上我的长矛。让他们知道,背叛部落,迟早要还的! 

    传说中的魔兽版无间道?

    所以,任务的说明要幽默自然,该严肃的任务也要有严肃的口吻,而且还要符合任务NPC的性格,甚至可以考虑运用当前流行的语言。在完成任务的同时,玩家也会一步步了解该任务NPC的故事、个性,不自觉地融入其中。

二、 任务的触发方式。
    在魔兽世界中有以下几种
    ⑴、任务NPC。任务NPC是一般游戏中通常的触发任务方式,不必赘述。(当然,NPC还分为傻乎乎蹲在一个地方的和四处乱逛的。)
    ⑵、怪物掉落物品。可分为随机掉落和固定掉落。菲拉斯、加基森、辛特兰等地怪物随机掉落的OOX机器人任务蛮是有趣。固定掉落任务如杀一些特殊的怪(典型的如陶拉祖营地上面的雷霆蜥蜴、雷鸟,灰谷的三大兽)会掉任务物品,点击触发任务。
    ⑶、可在地图上点击的物品。一般比较隐蔽。魔兽村子里的通缉令算是比较容易发现的这类任务。其他还有酒桶、箱子、祭坛之类的,鼠标移动到上面会有齿轮状提示出现。
    一般的网游中第一类的较多,建议多加入二类和三类触发方式,保持玩家接受任务的未知感和新鲜感。

三、 任务的提示。
    在魔兽世界里,任务的提示是做的相当好的。NPC头上黄色的叹号代表有任务可以接,白色的叹号代表有任务但你尚未到达该任务等级,黄色的问号代表你在该NPC处任务已完成,白色的问号代表你在该NPC处接了任务但未完成。我认为,在一般的网游中,对任务的提示普遍不够,有时候玩家甚至不记得在哪个NPC处接了什么任务,造成任务进行的混乱。而魔兽中普通难度的任务都会在说明中指出目的地大致方位,完成任务之后,只要在任务NPC附近一定范围,该NPC就会在小地图上以黄色点标示出来,给予玩家足够的提示。这种方式对于任务的进行和体验提供了帮助,可以在网游中普遍采用。

四、 任务的难度控制。
    先说单个任务的难度控制。在普通的链状结构任务中,难度都是循序渐进的。例如荆棘谷的摩克萨尔丁的魔法,任务的起始是从杀深喉猎豹(37---38级)开始的,第二步要获得的物品是从丛林捕猎者(39—41级)那里得到的,第三步成年大猩猩的肌腱所需杀的怪等级38---41,最后一步要从纳加的圣泉中取到圣泉之水(纳加等级43—44)。注意到这些任务能够单独完成所需等级是一步步慢慢增加的。所以链状任务设计的时候,切忌任务之间跨越等级太大,或者任务越后面难度越低。等级跨度太大,给玩家无所适从的感觉,再加上当前能力无法完成任务,造成放弃任务的几率大大增加;任务难度安排颠倒,越到后面越没挑战性,结果给玩家的成就感也就降低了。
    再说整个游戏的难度控制。仍以魔兽为例(副本也算做任务的一部分)。
    1-5级时,玩家在新手村活动,这时候的任务一般以杀怪、收集物品和探索为主,设计时就要注意把相关的任务难度调低,让新手在任务中快速熟悉游戏的玩法。例如杀怪任务可以减少完成任务所需怪物数量和削弱初级怪能力,收集物品任务所需物品必须大而显眼,探索任务目的地离新手村要近。而且关键是都要有详细的说明,指明任务所在地是必须的,让玩家在完成任务时不至于没有任何头绪。
    6-12级时,玩家一般会离开新手村到达第一个城镇,除了前面所述几种任务之外,还要适当加上消灭普通BOSS的任务,这种任务高级点的玩家可以单独挑战,低级点的玩家必须组队才能战胜。在一定程度上促进了玩家交流和组队,增加了游戏交互性。
    13-20级,这时候玩家已经对游戏玩法有足够的了解,所需的就是大量的任务来提高玩家的技巧(包括个人能力和团队配合能力),第一个需要配合的副本任务在这样的前提下诞生了(如奥格瑞玛的怒焰峡谷),在副本里强调团队的配合,一个人的失误都有可能带来团队的毁灭。不过做为第一个副本,难度一定要控制好,地图不能太复杂,怪物密度不能太高,BOSS能力不能太强。
    21-30级,基本同上,不过此时的任务考虑加入一些技巧或噱头,添加大量的隐藏要素,使不同的玩家在完成不同的任务时有不同的体验。这个时期的副本可以适当加大难度。(十字路口的哀嚎洞穴副本是这个时期必进的一个副本,在细节方面和难度方面都处理的很不错,不过唯一不足的是地图实在太复杂,去过两三次的人也未必会熟悉,至于我,在走了八遍以后才勉强记住。)
    31-40级,这个阶段玩家一般会在中立地区活动,与敌对阵营的摩擦也日益增加,组队完成任务的玩家会占很大一部分。所以可以增大团队才能完成的任务比例,还有一些需要良好操作控制的任务。副本中怪物的密度可以增大,考验团队处理突变状况的能力(如剃刀高地的2精英3普通怪和巡逻怪组合),BOSS的技能和AI增强,让玩家自行摸索战胜BOSS的技巧。(如诺莫瑞根的最终BOSS,打他的时候旁边的炸弹发射器会不停放出炸弹来攻击玩家,需要一个人去关炸弹开关。)
    41-50级,到这个级别的玩家一般都已经具有良好的操作和对自身职业足够的了解,单独完成任务的欲望强烈,可以考虑降低团队任务比例。副本难度大幅度增加,一些区域需要特定职业的技能才比较容易通过(如奥达曼的矮人群,范围魔法可以发挥的淋漓尽致),一些区域需要玩家消耗大量的药品(如马拉顿的毒水BOSS,滋补药剂和治疗药剂的应用),打BOSS需要技巧和运气(马拉顿的公主,战士积累足够仇恨,盗贼和法师、猎人主输出伤害,牧师照顾战士的同时又要注意不被公主盯上。对付公主的大范围毒气,近战的要轮流上阵。对付公主的打飞能力,战士要靠墙站。)
    51-60级,这个时候出现了全新的任务类型,大型团队任务(RAID队伍),需要5个以上、40个以下的玩家协同完成。这些任务也是对玩家的极大挑战,不仅普通小队无法完成,即使是RAID队也要良好的配合和正确的战略指导才有可能战胜。在丰厚的奖励和诱人的物品掉落面前,会有玩家不停的组织人手来击杀BOSS,如尘泥沼泽的黑龙公主、艾萨拉的蓝龙、熔火之心的火焰领主等。这个时期的副本,几乎每一波敌人都是一个挑战,一旦处理不慎,团队覆灭是很正常的,技巧+战略+运气,一个都不能少,才能完成高难度的副本任务。
    因此要随着游戏的进程的编排任务的方方面面,合理地估计玩家该阶段的能力,做出最佳的任务安排。

五、 任务的节奏控制。
    这个在副本任务中要注意到,因为一个副本任务通常需要比较长的时间,如何在这么一段时间内把握玩家的情绪起伏,合理地安排各种不同的挑战来提起玩家的兴趣。一般副本会分为若干个区域,每个区域都有一个小BOSS,最后还要有个终极BOSS。玩家在消灭了一定的怪物之后,情绪会逐渐低落,在情绪失落到最低点前,小BOSS出现了,一方面给玩家带来足够的挑战,带动任务进行的气氛,另一方面提供诱人的物品掉落,给玩家继续探索下去的动力。一段段小高潮过去后,在终极BOSS出现前,玩家由于疲劳等原因情绪到达最低点,最终BOSS的出现就给这段旅行划上了完美的句号。随着战胜了最终BOSS,玩家就如同经历了一场自己主演的电影,兴奋到达最高点。

六、 任务的隐藏要素。
    隐藏要素有多方面的意义,如下示。通常这类任务比较容易引起玩家的兴趣,因为会觉得其他玩家不一定会发现,若是自己第一个揭示这个任务,就会产生莫大的成就感。
    ⑴、完成任务可以有多种方法,有的方法比较隐蔽。
    ⑵、接到任务的因素是隐藏的。如尘泥沼泽的黑色盾牌任务和可疑的蹄印任务就是在路口一个已经被摧毁的旅馆中发现的,把鼠标指到上面才会出现提示,所以是隐藏要素。
    ⑶、任务中隐藏的事实真相。奥格瑞玛的尼尔鲁火刃就是正宗的魔兽版无间道,在任务的进行中,会发现他是隐藏在奥格瑞玛的叛徒。
    ⑷、任务中的任务。奥达曼解决最终BOSS后,在后面的房间里会发现一个白金圆盘(其实是古代光碟),把它放到旁边的一个石像里会出现一段虚拟影象,并且有详细的说明,最后可以接到把光盘送回雷霆崖的隐藏任务。


七、 任务的可选择性。
    也就是常说的分支任务。不过这样的任务在魔兽中不是很多,最为典型的应该是部落凄凉之地的半人马任务,有两个半人马部落,你可以选择屠杀一方来提升另一方的友好度,友好度到达一定程度后便可接受更高的任务。专业技能的选择也算是分支任务,例如铁匠的武器专精和盔甲专精,制皮的元素方向、部落方向和龙鳞方向,工程学的侏儒工程学和地精工程学。
    但可选择的任务越多,就表示程序和策划要进行更多的工作,所以在网络游戏里,除非必要,一般不可能出现太多的分支任务。

八、 任务的奖励。
    在魔兽里,除了固定的经验奖励外,任务奖励一般只有两种,金钱或者物品。金钱倒也罢了,不过物品奖励的设置我认为有些问题,因为有些任务的奖励对于玩家来说基本上毫无用处(例如只能穿布衣的职业奖励皮甲,只需要智力的职业奖励敏捷物品),这就导致了玩家对任务的挑剔,有适合自己奖励的就做,没有的话一律略过。
    因此我觉得可以在目前的任务系统上,加上任务点这样一种属性,完成所有任务都会有数量不一的任务点可以获得。至于任务点的作用,我设想了以下几点:
    ⑴、改变任务奖励物品的某些属性。例如法师,任务奖励了一件20敏捷10耐力的衣服,提供一定的任务点可以把敏捷转换成法师需要的智力。不过要注意的是,这种改变仅限于任务奖励物品,若是对于所有物品都如此的话,游戏平衡性将受到很大冲击。
    ⑵、用任务点换取特定称号。不同称号有不同的特点,如“奥格瑞玛的勇士”,力量+10,敏捷+5,耐力+5,在奥格瑞玛城享受8折优惠。当然,这样的称号需要大量的任务点才可能获得。若是要换取新的称号时,原有称号转换成1/2任务点退回到总任务点数中。也可以设置一些需要特定称号才能够接受的任务。
    ⑶、需要一定的任务点才能够进行某个任务。这样的任务必须是重要任务,和游戏的主线剧情有很大关系。这样玩家为了完成主线任务,也要通过完成大量的分支任务积攒任务点。




魔兽里我印象比较深刻的有意思的任务:
    ⑴、部落贫瘠之地的加恩的报复最后一步,要你去炸掉巴尔莫丹的飞行器,所用的炸药就是前面任务中收集的木浆、硝酸钠等等做出来的,这就是任务连续性的很好的体现。
任务说明:
摧毁巴尔莫丹的飞行器,然后向加恩·石塔回复。 
贝尔莫丹飞行器已经被摧毁  

按照卡兹戈姆的日记上所述的方法制造出来的炸药应该不会有问题。那么,我们开始吧。首先我有一项特殊的任务要交给你完成。拿上这只爆破筒,去炸掉巴尔莫丹的飞行器。这个飞行器不仅是巴尔莫丹军事设施的关键部分,也是一架可怕的杀戮机器。更重要的是,它是权力的象征,而它对我们的部族来说则代表着一段耻辱的回忆。我会为你的成功感到自豪,你也将得到丰厚的奖励。
 
    ⑵、石爪山的烈日石居的塔姆拉会叫你把之前搜集到的盖亚的种子种到焦炭谷的土堆里,魔兽种树也疯狂,因为焦炭谷的土堆有限,所以经常就是见到一个土堆,好几个人飞奔过去,先种下的人得意狂笑,没种到的嚎啕大哭,哈哈,很有趣。
任务说明:
将10枚盖亚之种种植在盖亚土堆中,然后与烈日石居的塔姆拉谈一谈。 
种植盖亚之种  

如你所见,盗贼,我纯净的心灵可以为这片不毛之地带来新的生机。你必须将这些种子种植在破坏之源中,在西边的焦炭谷里就是破坏大自然的源泉——这片被污染的土地上到处都是鹰身人和凶恶的火元素。邪恶狂风,拿着这些附有魔法的盖亚之种,把它们种植在盖亚土堆里。 

    ⑶、希尔斯布莱德丘陵的赫尔库拉的复仇任务,部落的做这个任务有点难度,因为目的地是联盟的城镇,很容易被卫兵和联盟的玩家追杀。经历N次复活的艰辛之后,努力终于有了回报,复活后的赫尔库拉召唤出一群骷髅兵攻击南海,虽然。。。最终还是难免被南海的卫兵围殴至死,不过咱心里还是爽了一把。以前的版本还有BUG,他会不断召唤出来骷髅兵,直到把南海淹没。。可惜我在那个版本没玩到这个任务。
任务说明:
将埃希尔之焰、沃拉兹之焰和尤基尔之焰的力量注入赫尔库拉的魔棒。把经过仪式洗礼之后的魔棒带到南海镇的赫尔库拉墓地。 

拿着赫尔库拉的魔棒,你会用得着它的。赫尔库拉用3个火葬柴堆来构筑他最强大的法术:埃希尔之焰和沃拉兹之焰在丘陵地带的洞穴里,尤基尔之焰在丘陵洞穴上面的另一个洞穴,在山的更北边。赫尔库拉的魔棒必须经过这三堆火焰的洗礼才能发挥作用。在仪式完成之后,把魔棒带到赫尔库拉的墓地去,那座墓地就在由人类重兵把守的南海镇。让赫尔库拉的复仇降临在愚蠢的人类头上吧!
 
    ⑷、希尔斯布莱德丘陵的受难药剂任务,变态的药剂师要你把这个乱七八糟的药剂给农场里的一只小狗吃,结果吃完,小狗变大狗。。。而且还是乱咬人的那种,没办法,只好顺手料理了它。
任务说明:
把受难药剂交给乌比。 

我得花一会儿时间把这些成分混合在一起,做成受难药剂。成功了!啊,还有什么能比给这个世界带来点灾难更让人愉快的呢?让我们看看这种药剂能不能达到预期的效果。让我的助手乌比瞧瞧黑暗女王为人类和天灾军团准备了什么样的礼物。 

    ⑸、凄凉之地的诱捕科多兽任务。很另类的任务,对年老或濒死的科多兽使用诱引器,然后它就会变成驯服的科多兽跟着你走,这时候最惬意的事就是开加速技能,看着一只庞大的科多在自己身后狂奔,感觉特爽。
任务说明:
带5头驯服的科多兽和科多兽诱引器给瑟卡布斯库营地的斯米德·瑟卡布斯库。 
驯服的科多兽  0/5 

比布莱认为他是凄凉之地唯一一个懂得赚钱的地精。好吧,想要让旅团闯过这块地方就要靠我了。因为我懂得利用我的科多兽诱引器控制年老的和濒死的科多兽,所以我和旅行队的主人科克,瑞格进行了合作。把科多兽诱引器拿去使用在任何年老的或者濒死的科多兽身上。然后那个野兽就会变成驯服的科多兽然后会跟着你。一旦你驯服了一头科多,那就把它带来给我吧。 
    
    还有很多值得分享的任务,留待各位自己慢慢体验。


    玩魔兽,你可以不做任务,但是不做任务的你,将永远无法体会到任务的乐趣。魔兽的任务系统,巧妙的将单机游戏的精髓融入了网络游戏之中,你选择不同的职业、不同的阵营进行游戏就会有不同的体验,无时不刻地提醒你是这个世界的一分子,这才是真正的Role Play。同时,它又很好地把握了游戏的节奏,让你在任务中不断成长,在任务中提高等级,在任务中获得装备物品,在任务中成为真正的老鸟。所以今后的网络游戏的任务系统,可以参考借鉴一下魔兽,在网络游戏已经公式化、枯燥化的趋势下,设计出不同的适合自身游戏的任务,走出自己的风格。
   由于这篇文章纯属本人的个人观点,难免有些错误和不足,所以请各位多多指正,让我在批评和建议中成长。^_^

---------------------------分割线mm---------------------------------


斑竹帖子title:
【原创帖】可以发布自己的关于技术/非技术的原创内容帖子
【口水帖】一般吵架的,讨论感情的,骂人的,或者要发布自己伟大梦想的
【讨论帖】讨论一些自己拿捏不准,想发起大家集体讨论的有技术含量的,非技术内容的
【YY帖】yy帖子,适合策划.比如一起yy xbox360 之后又是啥机器,psp diy yy帖
【转帖】如果是转帖别人文章,请标记该名称,否则容易引起阅读混乱
posted @ 2005-08-16 12:28 蓝色雪焰 阅读(804) | 评论 (0)编辑 收藏
 
前提:
我没怎么玩过网络游戏,但是觉得目前游戏市场上的网络游戏还有很大的发展潜力、空间。只是游戏制作商没去发掘,甚至在制作上以做减法方式去设计游戏,而不是以加法方式,导致许多好的游戏模式还未被发觉,在此我把我自己的一些想法,算做策划说出来。

一、角色属性
现在的角色属性无非都是生命力\技力\经验\速度\攻击力\智慧等等.名称多得数不清,但是说到底都是一个属性,所以在这方面,我想这些设计者无须花那么大的力气去想这些,应该好好的在角色属性上多增加点与众不同的东西.
我个人认为,生命力的恢复好像在目前游戏市场上已经有个定格,好像必须要吃药才恢复,或者什么休息之类的.而策划人员为什么不把自己的思路弯一下呢?
比如说我个人的一个比较换汤不换药的想法,制作人员为什么不在角色创建后就给予一套虚拟房子,要启动房子就在角色属性中启动.要恢复生命力或者技力,只要回到这间小房子就可以了,而小房子的规模影响着恢复的数值.而要扩建房子就必须花费虚拟币或者其他的消费品.然后也不是说房子的状态就永远这样,设计人员可以随便编写个随机数据库,然后随机对房子进行逻辑性的损坏,或者玩家的角色死亡后,房子就会受到破坏之类的.要修复的话也必须要用虚拟的消费品来修复.而且这间房子,设计人员也可以把他设计得功能众多啊.在刚开始的时候,玩家如果不敢出去打怪,可以在房子里边练习,增加战斗经验.也可以在打怪途中抓一两只怪放到房子里,供玩家练习.房子也还可以炼药。。。。。玩家还可以请别的玩家来家里作客增加友情值。只要友情值达到一定程度就可以结为兄弟或者夫妻。还有很多功能,这个就要看游戏的质量到哪里就设计到那里.

二、宠物模式
这个也许是所有RPG游戏中不可缺少的角色,它完全就是玩家在虚拟世界中的第二个伙伴。所以近年来很多制作商也在这花费了许多工夫,但都是有点无济于事,不知道是宣传力度不好,还是真的没那么优秀。首先,先来说说《幻灵游侠》中的宠物系统,它就是根据你所持的宠物鉴定卡来捕获你要的宠物。这个想法挺新意的,我个人也很欣赏,但是吸引玩家去玩《幻灵游侠》的也许是它精致的画面和Q版化的人物设计。
所以我个人不才,也想对宠物系统模式发表点意见。在宠物上,我想制作商应该把宠物做得更珍贵点,让拥有宠物的玩家都有一种至高无上的感觉。比如说制作商可以设计一个NPC专门出售精子和卵子之类的物品。然后尽管把售价调得高高的,然后玩家买后,还要通过一系列的考验。比如说要连续在线几小时,让精子与卵子成为一粒宠物蛋或者什么之类的。然后设计人员也可以设计一个随机数据库来破坏这粒宠物,玩家必须保证宠物蛋的安全才能孵出宠物,然后要教宠物一系列的攻击、走路、防御等等。这些就要靠设计人员去构思了。然后把宠物设计得跟人性化点,比如说它会饿,会“虚虚”,会“便便”正可谓人有三急嘛,宠物怎么就没有呢?然后如果没有帮宠物虚虚或者便便再它就会乱虚虚或便便,宠物的健康就会受到影响,或者玩家的属性会受影响。最后我还要提目前最有发展潜力,但是许多制作商都没去制作出来。就是宠物的结婚生子系统,制作商别那么偏心,为啥人就可以结婚生子,宠物为什么就不可以。然后玩家的宠物的孩子玩家可以拿去送人,或者自己来培养它,就如很多游戏中最珍贵的“宝宝”宠物一样。宠物模式就写到这。

三、战斗模式
所有武侠RPG模式游戏的核心,最重要的部分。影响到玩家对游戏的眼光,所以近年来,很多制作商都绞尽脑汁来设计,但是还是离开不了那已定形的三部曲。所以我有意见了,为什么一定就要那三部曲?为什么就不能创新一下。
下面我就来说说自己的看法。
遇怪:
很普通滴,跟一般的网游一样就可以,就是踩地雷或者玩战棋模式,这个也没什么地方可以创新。除非跟单机游戏《三国立志传》一样以幽默形式来设计,不然真的没想不出有身创新。
打怪:
重点。我们可以把眼光转到现在在欧美非常流行的游戏模式,动作格斗模式!呵呵,制作商可以在设计得像拳皇那样,然后进行PK。这样除了玩家原有属性之外完全是看玩家的操作。所以比较自主性,不会好像全都定格,让玩家真真正正的感觉得到是自己在战斗。

三、物品装备
这应该算做是RPG游戏中最普遍的了,往往都是玩家向NPC买来的。我建议制作商,把这一传统观念改掉。改成自主设计,自主建造。比如自己去选购材料,设计人员尽可能的把所有材料弄在一起都能合成武器(物品),然后可以自己起名称。也可以自己设计模型,图像等等。如果不设计的话,也可以从图像数据库中选一个图像、模型出来。当然自己也可以把自己打造出来的装备拿去卖。但是要打造装备的前提是要有一定的等级。也就是说在未达到这个等级你只能用系统自定给的,或者去向玩家买。然后设计人员可以在帮派系统上与物品系统联系起来。比如说如果要建帮派,必须自己能生产出自己门派的令牌或者什么LOGO。脱离了以前的有钱能建帮的模式。然而要打造自己门派的LOGO也必须有特殊物品。这就看制作商的了。既然能联系上帮派也可以联系上我上面所提到的房子,自己可以制作椅子、桌子等等家具。装饰自己的房子,这样可以向别的玩家炫耀自己。

四、角色名称
一个很普遍的功能,几乎所有RPG的一个共同点。但是都是什么“剑客”“法师”“药师”等等。没什么创意。所以我认为该改一改。下面我来说说我个人认为应该在游戏中出现的角色:
商人:
顾名思义,专门赚钱的。而规模可以从摆摊到买房子去经营等等。而货只能去跟其他玩家拿。或者自己另外申请个ID去选择别的职业,然后炼物品。当然商人还可以开钱庄等等,
打造者:
专门打造东西滴,自己提炼东西,然后专门卖给玩家。无任何战斗力,但是必须根据等级来提炼东西。所以玩家要动动脑筋怎么去升级了。
建筑商:
专门为人修复房子或者建造房子。很新颖的一个职业。最好的赚钱方式,但是前提是要投资!
敢死队:
跟剑客差不多,专门PK用的。有着超高的攻击里和防御力。就是不会以上的所有职业的技能。
智慧者:
类似魔法师,智慧的化身。

[以上 仅供参考]
posted @ 2005-08-15 16:19 蓝色雪焰 阅读(458) | 评论 (1)编辑 收藏
 
据新华社电
 

  文化部和信息产业部日前联合下发《关于网络游戏发展和管理的若干意见》,主要内容有:

  -提高市场准入门槛,规定申请新设立从事网络游戏经营活动的互联网文化经营单位必须具备1000万元以上的注册资金。

  -不仅要利用技术手段限制未成年人上网游戏时间,还要采取实名游戏制度,拒绝未成年人登录PK练级类游戏。

  -将严格实行进口网络游戏产品内容审查制度,有选择地把世界各地的优秀网络游戏产品介绍进来。

  记者今天上午在采访中了解到,针对文化部、信息产业部联合下发的意见,游戏运营商、家长表示欢迎,然而,一些玩家表示了自己的顾虑。

  网游公司:会积极响应

  盛大公司公关部经理李黎君接受采访时说:从去年开始,盛大公司已经在游戏注册时要求用户填写身份证号码,目的是为了保护用户账号的安全,防止账号被盗。现在,对文化部的这个倡议,我们会更加积极的响应。

  第九城市的有关人士接受记者采访时称,目前很难统计网络游戏玩家中有多少人通过身份证登录,但公司一直提倡玩家自愿通过身份证认证来保护自己的权益,防止账号被盗。如果能有效实施网络游戏采取实名制,这对网络游戏产业来说是一种积极的推动和管理的提升,对一些玩家的违规和作弊行为是一种有力的约束。目前,我国网络游戏行业普遍的用户注册方式是可以注册几个游戏账号,必须付费才能使用,因此在采取实名制后,对网络游戏运营商的用户数据的维护和管理的作用只有积极的促进作用。

  家长:需要各方配合

  对此措施,浦东新区潍坊小学的娄校长表示,作为一名家长和学校校长,非常高兴看到国家有关部门能出面解决未成年人沉迷网络游戏的问题。“我的孩子今年读小学五年级升初中,也很喜欢玩练级游戏。暑假期间,我经常接到一些家长的电话诉苦:一些孩子天天在打一些充满血腥的暴力网游,很多家长为此伤透了脑筋。”娄校长表示,该意见制定出台后,可以让更多的孩子去玩一些“绿色”网游。

  玩家:出发点好难操作

  孙先生是一家网络公司的员工,他玩网络游戏已经4年多了,网络游戏要实行实名制,他表示赞成,但也表示了自己的顾虑:实名制能否保证私人信息不被泄露和盗用?现在,一些网络游戏实行了通过身份证登录,但是部分用户却填写不实信息,主要原因是担心自己的信息被泄露和盗用。如果今后网络游戏按年龄划分,学生想获得成人游戏的账号和密码也易如反掌,而运营商很难控制,而有些网吧会提供账号和密码给学生。

  文化部:制定强制标准

  文化部网络文化处一位工作人员告诉记者,从《若干意见》颁布日起,有关企业就应该开始实施有关规定,在相关的练级游戏中设立相关的“实名制”程序。目前,信息产业部正在制定相关的行业强制标准,以保证练级游戏(依靠PK来提高级别)实行实名游戏的制度得以落实。对于玩家的顾虑,这位工作人员介绍,玩家一旦发现私人信息被泄露和盗用,可以依照有关的法律规定,用法律来保护自己的权益。

posted @ 2005-08-13 00:59 蓝色雪焰 阅读(245) | 评论 (0)编辑 收藏
 
     摘要:   毕业那天,我们一起失恋! 爆笑+感人~~[转载]开学前     大四快开学了,我提前了几天来学校,俗话说,磨刀不误砍柴工;我提早来学校,把床铺好,把蚊帐挂起来,把厕所弄干净,把寝室打扫一下。   寝室里只有我做这种打扫的事情,寝室有三个人,我一个,丸子一个,还有就是山贼。除了我是一般懒的以外,其余两个人都是奇懒无比的。   丸子是我们寝室长,值日表上礼拜...  阅读全文
posted @ 2005-08-12 17:59 蓝色雪焰 阅读(1093) | 评论 (0)编辑 收藏
 
  一、 习此技术者,以强健体魄为旨要,宜朝夕从事,不可随意作辍。
  二、 宜深体佛门悲悯之怀,纵于技术精娴只可备以自卫,切戒呈血之私,有好勇斗狠之举,犯者与违反请规同罪。
  三、 平时对待尊长,宜敬谨将事,勿得有违抗及傲慢之行为。
  四、 对待侪辈须和顺温良,诚信勿欺,不得持强凌弱任意妄为。
  五、 于挈锡游行之时,如与俗家相遇,宜以忍辱救世为主旨,不可轻显技术。
  六、 凡属少林师法,不可逞惯相较,但偶尔遭遇,未知来历,顺先以左手作掌,上与眉齐,如系同派,顺以右掌,照式答之,则彼此相知,当互为援助以示同道之谊。
  七、 饮酒食肉,为佛门之大戒,宜敬谨遵守,不可违反,盖以酒能夺志,肉可昏神也。
  八、 女色男风,犯之必遭天谴,亦为佛门之所难容,凡吾禅宗弟子,宜乘为炯戒勿忽。
  九、 凡俗家弟子,不可轻以技术相援,以免贻害于世,违佛氏之本旨,如深知其人,性情纯良,而又不强悍暴狠之行习者,始可一传衣钵,但饮酒淫欲之戒,顺使其人誓为谨守,勿得以一时之兴会而遽信其平生,此吾宗这第一要义,幸勿轻视之也。
  十、 戒恃强争胜之心,及贪得自夸之习,世之以此自丧其身,而兼流毒于人者,不知凡几盖以技击之于人,其关系至为谨要,或炫技于一时,或务得于富室,因之生意外之波澜为禅门之贩类,贻羞当世,取倾祸找倾,昱岂先师创立此术之意也乎,凡在后学,宜切记之。
posted @ 2005-08-11 12:01 蓝色雪焰 阅读(300) | 评论 (0)编辑 收藏
 
昔时,水陆交通极不方便,随着经济发达,各地区之间交易趋於频繁,为保护行旅安全,将银货平安地送至目的地,镖局应运而生,即使国家运送饷银,也经常委托镖局护送。
  开镖局先要打点当地台面上的人物,下帖请官私两方有头有脸的朋友前来捧场,这个叫「亮镖」。若是关系不够,亮不了镖,往後生意必然难做;若是人缘不佳,亮镖时有人踢场,手底下没两下子乾脆就关门算了。亮镖没出事,镖局才算立住了脚,但能不能出人头地,则要看第一次买卖头趟镖是否能立个万字(打响名号)。

  镖局的组织包括镖局主人、总镖头、从事保镖工作的镖头和镖师、大掌柜、管理杂务的伙计和杂役。

  镖局主人讲的是人面广、关系好;有钱有势,打出旗号黑门槛的(黑道人物或是绿林好汉)不敢招惹,万一出了事摆得平官府,镖被劫了赔得起银两。大掌柜讲的是眼明心细算盘精;看货不走眼,估价不离谱,上下里外该打点的绝少不了,该开销的绝不浪费。至於总镖头,通常是赫赫有名的江湖人物,不是本身艺业惊人,就是退休名捕之流。

  镖局的买卖叫做「出镖」或「走镖」,由总镖头或是经验老道独当一面的镖头「押镖」,带着几个有功夫底子的镖师,和一群手脚俐落的伙计;银货锁在「镖车」里,车子上插着「镖旗」,伙计嘴里吆喝着「镖号」,浩浩荡荡骑马拉车上了路。

  途中遇到状况,镖头会下令「轮子盘头」;意思是叫所有的镖车围成一个圈,准备御敌。但是,不到最後关头通常是不会硬碰硬的「破盘」,就是撕破脸,就这麽动手打起来。闯江湖混口饭吃,只有一半是仗着武艺,另一半则是靠嘴皮里满口的江湖黑话。镖局的人押着镖车,喊着镖号,不断告诉人家:「合吾!」(大家都是江湖同道)

  遇到黑门槛的兄弟,通常都先说些江湖客套话,意思大概是祖师爷赏口饭吃不容易啊,网开一面放条生路吧。如果对方不答,又会用江湖话招呼对方露个脸报出名号,见面三分情交个朋友,山不转路转,以後碰上面敬酒敬茶,免得狭路相逢尴尬。万一镖被劫了,能先套出对方来路也好有线索追讨,通常镖局出了事是不会公然报案的,无论挂了彩儿(即受了伤)事小,还是土了点儿(死了人啦)事大,江湖人必须照着江湖规榘行事,否则无法立足。

  如果好话说尽,对方仍不打算歇手,那就只好抄家伙「亮青子」

  (就是拨出烁亮亮的刀剑)挡风。所谓「挡风」,就是把对方赶跑了便罢,非到万不得已绝不清了(即杀了对方),或叫鞭土(即打死人啦)。

  「入窑打尖」即是住店,也是门大学间,里外都要仔细检查,附近地头安不安宁也要留意。天一黑镖车上、店门外都插上灯笼,人员排班值更,一有风吹草动,就都没好睡的了,直到次日清晨扯轮子(即套车上路)。
posted @ 2005-08-11 11:58 蓝色雪焰 阅读(262) | 评论 (0)编辑 收藏
 
01.铁臂功 02.排打功 03.铁扫帚功 04.足射功 

  05.腿踢功 06.铜砂掌 07.蛇行术(蜈蚣跳)08.提千斤 

  09.罗汉功  10.铁头功 11.四段功  12.铁布衫功 

  13.双锁功  14.上罐功  15.石锁功 16.铁珠袋  

  17.千斤闸  18.鞭劲法  19.分水功  20.玉带功 

  21.鹰翼功  22.跳跃法  23.霸王肘  24.一指金刚法 

  25.拔钉功 26.一指禅功 27.石桩功  28.金钟罩 

  29.铁牛功  30.旋风掌 31.卧虎功  32.拔山功 

  33.合盘掌  34.推山掌  35.踢桩功 36.鹰爪功 

  37.斩魔剑  38.玄空拳  39.金砂掌  40.铁砂掌 

  41.飞行功  42.枪刀不入法  43.五毒追砂掌  44.飞檐走壁法 

  45.一线穿  46.穿纵术  47.金铲指  48.揭谛功 

  49.梅花桩 50.捻花功  51.螳螂爪  52.跑板功 

  53.闪战法  54.金刀换掌功 55.轻身术  56.铁膝功 

  57.陆地飞行术  58.穿窗功  59.泅水术 60.点石功 

  61.琵琶功  62.柔骨功  63.壁虎游墙术  64.门裆功 

  65.翻腾术  66.布袋功  67.蛤蟆功  68.千层纸功 

  69.弹子拳 70.锁指功  71.追风掌功  72.软玄功 
posted @ 2005-08-10 07:11 蓝色雪焰 阅读(333) | 评论 (0)编辑 收藏
 
拳谚【战略篇】

       
知己知彼,百战百胜 
攻其不备,出其不意 
中土常守,刚柔如意
先退后进,蓄势察敌 
以遇为直,后发先至 
以一当十,以十当一 
以我为主,攻防得宜 
强外攻内,声东击西 
避锐击惰,以逸待劳 
三十六计,走为上计
弱以骄其志,强以决其胜 
能舍己从人,才能随心所欲 

练法 

武贵得法 
动迅静定 
三尖相对 
练拳先练功 
锤成家什就

胆识 

相打忘记跌法 
开声吐气敌胆寒 
勇生于怯,先戒为宝 
魄气足者,能勾人魂魄 
艺高人胆大,胆大艺更高 
独练时无敌似有敌,应敌时有敌似无敌 




武术谚语[武技篇]

意到气到力到 
发于根,顺于中,达于梢 
以假乱真,诱敌深入 
一寸长,一寸强;一寸短,一寸险 
势断劲不断,劲断意相连。形断意连,势断气连 
前俯后仰,其势不劲。左侧右依,皆身之病 
身如驽弓,拳如箭 
射人先射马 
聚气成力,以气催力,吐气发力 
含而不露,神态舒展 
似守非守,勿忘勿助,若存若亡 
猫窜,狗闪,蛇鹰眼 
学拳容易改拳难 
打拳不怕,怕拳不打。拳来闪避,拳去追踪 
对方打来身如球,拧走转身莫停留,进如盘蛇吸食走,刚柔相济着意求 
退是假退,真退是败。步步向前,天下无敌 
出手大多对上身,手足到时方为真。一势三手才称妙,手肘膝腿鬼神惊 
远则手足上中下,近则肩肘背胯膝 
远则拳打脚踢,近则擒拿抱就摔 
远用手,近用肘。宁换十手,不换一肘 
三拳难挡一掌,三掌难挡一肘,三肘难挡一尖,三尖难挡一指 
久练自化,熟能生神 
操练不按体中用,休到终期艺难精 
要想散手会,还得二人喂 
先以心使身,后乃身从心 
能动能静,拳道之圣。动而不静,拳道之病 
打中寓跌,跌中寓打 
手从脚边起,侧身步轻移,藏势微弯膝 
脚到手勾,拳来臂格 
拳打不空回,空回不为能 
遇敌犹如火烧身,硬打硬进无遮拦 
脚踏中门去夺位,就是神仙也难防 
有力当头上,无力踩两旁 
打人不露相,打人不见手 
顺人之势,就人之力。彼来吾就,彼去吾随 
彼斜我正,彼正我斜。以静制动,后发制人 
知己知彼,百战百胜 
拳怕少壮,棍怕老练 
一打力,二打巧,三打分寸,四打眼滑手快 
手起如箭落如风,追风赶月莫放松 
一狠二毒三要命,见空就打莫留情,容情不动手,动手不留情 
狠打善,快打慢,长打短,硬打软 
过手放对莫疏忽,一胆二力三功夫 
八打八不打,过手要得法,对敌莫容情,会友莫轻发 
学会十字战,天下英雄打一半,餐稳如盘石,根因敌难摧 
心是主帅,眼为先锋,活步做战马,脚手是刀兵 
眼要明,心要毒,只要平时练得熟 
技法不熟,战不能胜 
手敏步快,放长击远 
在劲不在力,在巧不在勇 
谙熟百家,博采众长 
三年把式打不过当年跤,好把式打不过滥“戏子” 
反筋偏骨,拿法夺人 
偏闪腾捺弱敌强 
脚步胜人坚、坠、跪 
拳法在熟不在多 
尚德不尚力,重守不重攻 
上打阳,下打阴,两边打肋,中打心 



武术谚语[武德篇] 

未曾学艺先学礼,未曾习武先习德 
武德比山重,名利草芥轻 
拳以德立,无德无拳 
心正则拳正,心邪则拳邪 
拳禅如下,力爱不二,主守从攻,戒除杀念 
理字不多重,万人担不动,武夫不讲理,艺高难服众 
习武者当立志,人无志事不成 
三军可以夺帅,匹夫不可以夺志 
武人相敬相倾 
手足原无异态,拳术可必分门,少林武当终归于拳,内家外家总是一家 
同是江湖客,不识也相亲 
行遍天下路,把势是一家 
打得宽不如交得宽 
小心天下去得,莽撞寸步难行 
强中自有强中手,莫在人前自夸口 
真人不露相,露相不真人 
十个把九个吹,剩下一个还胡勒 
经不起风吹雨打,算不得英雄好汉 
火大没湿柴,功到事不难 
好汉做事做到头,好马登程跑前头 
一个篱笆三个桩,一个好汉三个帮 
浇花要浇根,教拳要教人 
误人子弟者,必被弟子误 
徒弟技艺高,莫忘师父劳 
尊师要象长流水,爱徒要象鸟哺雏 
恃艺逞强,罪不容诛 
习武千条戒,最戒嫉妒心 
嫖睹看似个人事,玷污武林人品低 
拳硬舌头软,舌软也伤人 
钱重于艺,奸商习气
posted @ 2005-08-09 23:42 蓝色雪焰 阅读(295) | 评论 (0)编辑 收藏
 
1、中国将形成各种娱乐资源垄断级的游戏机构出现,大概有2-4家左右,2006年将出现真正意义的多分天下的局面,届时这些机构所拥有的及可赢利资源已经完全超越了当前中国一些中小型本地企业所能理解的范畴。
   大型及超的型游戏机构将演变为集团式的经营,这是个人对2006年的预测。
   面对2005年预测未来科技投资新方向的鼓动之下,一些拥有雄厚资本及强势赢利条件的游戏企业机构已经纷纷向传统IT及其它娱乐横向产业进军,甚至已经超越了娱乐概念。

2、专业级商务VR零配件厂商将诞生在中国,提供最专业的VR贸易行为。对于VR的理解个人也花了近2年时间来接触这些贸易行为,曾经接过和发放过几笔VR单子,大概对这块领域所蕴藏的深厚贸易基础表示比较震撼。

3、一些中小型企业面对在资本不足,操作手段及经验匮乏情况下,有部分企业将开始学习加盟理念,加盟强大企业,成为他们的手下资源,而自己也能从中重新学习资本运作模式,面对资本运作的经验日益饱满的中国游戏经营者们而言,成大事者需知天下源,将会成为他们未来新的一种奋斗和企业经营方向。
  中国真的会出现一个或一些有5年、10年不败的强大游戏企业出现么?期待之中。

4、网络游戏投资将出现裂痕,未来网络游戏将不在是热门投资对象,目前游戏圈已经出现一些周边性超热门投资对象,或许也怪罪于那份2005年it热门投资对象中含盖了部分游戏可分化出去的赢利模式。

5、6句话方针不知道这里有几人熟悉,个人看后,只能表示一个寒字。不过同期也觉得支持这6句话里的内容。未来预测一样,如前期清掉那几家游戏企业一样。一直不熟悉市场/资本运作/闭门造车级的游戏企业将成为未来被定点清除和洗牌的对象,这个过程将会一直持续到新的时代的到来。而国家的一些相关政策执行,不知道是祸是福,不过整体而言确实可以改变目前游戏行业 乱 字的局面。

6、游戏行业的一些业务将会出现一种特殊情况: 游戏圈部分业务将被其它行业 一些有组织有计划的更强势其它实体产业机构抢夺及分化/垄断,甚至会出现其它机构利用游戏技术应用于其它产业最终又反噬游戏产业的情况。没办法,游戏产业目前还没有软着陆,一直漂浮在空中,可取消也可以继续,这样持续对整体游戏产业未来发展将是非常不利的,这点希望各方有所警觉。 毕竟游戏企业有钱的肯定比不过实体产业的机构,而实体IT科技产业机构的反噬游戏产业市场是自然和必然的事。

7、自主还是外包,这对于目前国外大批量强势 游戏机构或其它机构纷纷在华设置娱乐代工厂而看,对于一直坚持自主,和一直在走国外市场的公司而言,未来到底谁将成为资本的宠儿,不好分晓,面对国内复杂的政策局面,或许走出国内还是未来必然的企业壮大之路。

8、未来的路将是平台市场抢夺之路,这是一条走向垄断的方向。对于企业快速和强势成长是必然的渠道。
   做CP还是ICP。做SP还是ISP,未来将对于一个企业主而言是一种困惑的选择。

9、未来游戏机构将出现两种分化。一种专门做行销软平台,比如盛大。一种专门做内容软平台(目前找不到类似机构出现)。这2者都将成为未来游戏产业联盟统一发展的最好方向之一,游戏产业要实现产业软着陆,联合是必要的事情,只有在更大的利益驱动之下,各方才会把游戏这种可取消不可取消摸棱两可的产业视为如音像产业那样 让其软着陆下来,而且相关的法律/制度/政策建设也是未来多家 企业必抢的对象。

   谁将成为未来中国游戏产业的标准制订者,谁就将垄断住整个产业的大部分资源。这个也是 产业巨头出现的一种征兆,不过不好说是哪家,搞不好可能都不是游戏产业人出面制订的,呵呵。看谁能力强了。


   未来中国会出现如华纳时代那种永远不倒的企业巨头机构出现么???持目以待这个产业看谁玩的够精明。
posted @ 2005-08-08 22:58 蓝色雪焰 阅读(252) | 评论 (0)编辑 收藏
 
武侠小说的历史背景,最早的有春秋战国时期的,如金庸的 
《越女剑》、黄易的《寻秦期》;最晚的到民国时期,如马 
荣成的《中华英雄》和文侣的“欧阳清系列”。但绝大多数 
集中在明清两代,如金庸的“飞、雪、鹿、书、碧”,梁羽 
生的绝大部分作品,黄易的《覆雨翻云》。也有早至宋元的 
,如金庸的“天、射、神、倚”,黄易的《破碎虚空》,温 
瑞安的大部分作品。但自秦至宋,好象就只有黄易的《大唐 
双龙记》了。其实这与武侠小说的写作传统有关,在新派武 
侠小说出现以前,武侠小说有两大流派,一种是《蜀山剑侠 
传》这一类神魔武侠小说,一种是《雍正剑侠图》一类的历 
史武侠小说。而后者就大多集中在明末至清末的宫廷斗争和 
反清斗争上。这一传统一直影响到现在的新派武侠小说。 

武侠小说的历史背景的另一个有趣现象是,香港的武侠小说 
作家的作品一般都会有较明确的历史背景,一般会精确到朝 
代甚至精确到皇帝或年号。而台湾的武侠小说作家的作品一 
般都没有较明确的历史背景。如古龙,除了《苍穹神剑》, 
没有一部作品有较明确的历史背景,卧龙生之类的也是这样 
。我估计这与两地的社会状况有关。香港对中国的传统文化 
保存得最好;而台湾则有割断与中国本体文化联系的倾向。 

武侠小说的地理背景,基本上没有超过大中华文化圈。除了 
马荣成的《中华英雄》算是“到了美国”,但也是以唐人街 
为背景展开故事情节。如果不算《中华英雄》,武侠小说的 
地理背景,最西大概是金庸的《鹿鼎记》,韦小宝居然到了 
莫斯科;最北大概也是金庸的《倚天屠龙记》,居然到了北 
冰洋;最东和最南则还没考证出来,大概不会超出日本和南 
沙群岛。 

武侠小说的故事基本上是在中原发生的。中原又称中州,严 
格的地理意义应该是河南。但在武侠小说中指的是汉族人聚 
居区包括黄河和长江的中下游,从黄土高原到江浙平原都可 
算在内。 

中原的名山大都盛产名门正派。少林派在嵩山、武当派在武 
当山、五岳剑派分居五岳、峨眉派在峨眉山、黄山派在黄山 
、青城派在青城山、昆仑派在昆仑山、崆峒派在崆峒山。名 
山既然已经让名门正派占了,那些不成器的小门派和绿林帮 
会就只有占据剩下的小山头和干水上的买卖了。 

中原以外,向北,则是胡虏居住的大草原和大沙漠的苦寒地 
区;向西北,则是维族居住的天山南北疆;再向西,则是高 
鼻深目人的西域地区;向东出海以后,则是东瀛人(也就是 
倭寇)的扶桑小岛和茫茫大海;向南也是大海;向西南,则 
是除了玄奘和达摩,谁也没去过的天竺。 

北方的胡虏虽然军事力量强大,但甚少有武林高手,除了金 
庸的《天龙八部》,梁羽生《狂侠·天骄·魔女》。西域地 
区则盛产星宿海派和贪淫嗜血的喇嘛。扶桑小岛则专出好勇 
斗狠的东瀛武士,西南地区是使毒用蛊的好手的大本营。
posted @ 2005-08-08 22:56 蓝色雪焰 阅读(354) | 评论 (0)编辑 收藏
 
总义
如是我闻时,佛告须菩提。易筋功已竟,方可事于此。
此名静夜钟,不碍人间事。白日任匆匆,务忙衣与食。
三餐食既竟,放风水火讫。抵暮见明星,燃灯照暗室。
晚夕功课毕,将息临卧具。大众咸鼾睡,忘却生与死。
明者独惊醒,黑夜暗修为。抚体叹今夕,过去少一日。
无常来迅速,身同少水鱼。显然如何救,福慧何日足?
四恩未能报,四缘未能离,四智未现前,三生未皈一。
默视法界中,四生三有备,六根六尘连,五蕴并三途,
天人阿修罗。六道各异趋,二谛未能融,六度未能具。
见见非是见,无明未能息。道眼未精明,眉毛未落地。
如何知见离,得了涅槃意? 若能见非见,见所不能及。
蜗角大千界,焦眼纳须弥。昏昏醉梦间,光阴两俱失。
流浪于生死,苦海无边际。如来大慈悲,演此为洗髓。
须侯易筋后,每于夜静时,两目内含光,鼻中运息微,
腹中宽空虚,正宜纳清熙。朔望及两弦,二分并二至,
子午守静功,卯酉干沐浴。一切惟心造,炼神竟虚静。
常惺惺不昧,莫被睡魔拘。夜夜常如此,日日须行持。
惟虚能容纳,饱食非所宜。谦和保护身,恶疠宜紧避。
假惜可修真,四大须保固。柔弱可持身,暴戾灾害逼。
渡河须用筏,到岸方弃诸。造化生成理,从微而至著。
一言透天机,渐进细寻思。久久自圆满,未可一蹴企。
成功有定限,三年九载余。从容在一纪,决不逾此期。
心空身自化,随意任所之。一切无挂碍,圆通观自在。
隐显度众生,弹指超无始。待报四重恩,永减三途苫。
后人得此经,奉持为宗旨。择人相授受,叮咛莫轻视。


——————————
无始钟气篇第一
宇宙有至理,难以耳目契。凡可参悟者,即属于元气。
气无理不运,理无气莫著。交并为一致,分之莫可离。
流行无间滞,万物依为命。穿金与透石,水火可与并。
并行不相害。理与气即是。生处伏杀机,杀中有生意。
理以气为用,气以理为体。即体以显用,就用以求体。
非体亦非用,体用两不立。非理亦非气,一言透天机。
百尺竿头步,原始更无始。悟得其中意,方可言洗髓。

四大假合篇第二
元气久氤氲,化作水火土,水发昆仑巅,四达坑阱注。
静坐生暖气,水中有火具,湿热乃蒸腾,为雨又为露。
生人又生物,利益满人世。水久澄为土,火乃气之燠。
人身小天地,万物莫能比。具此幻化质,总是气之余。
本来非我有,解散还太虚。生亦未曾生,死亦未曾死。
形骸何时留,垂老后天地。假借以合真,超脱离凡类。
参透洗髓经,长生无尽期。无假不显真,真假浑无际。
应作如是观,真与假不二。四大假合形,谁能分别此。

凡圣同归篇第三
凡夫假作真,美衣为体饰,徒务他人观。美食日复日,
人人皆如此。碌碌一身事,不暇计生死。总被名利牵,
一朝神气散。油尽而灯灭,身尸埋圹野。惊魂一梦摄,
万苦与千辛,幻境无休歇。圣人独认真,布衣而蔬食,
不贪以持己,岂为身口累。参透天与地,与我本一体。
体虽有巨细; 灵活原无异。天地有日月,人身两目具。
日月有晦明,星与灯相继。纵或星灯灭,见性终不没。
纵成瞽目人,伸手摸着鼻。通身俱是眼,触着知物倚。
此是心之灵,包罗天与地,能见不以目,能听不以耳。
心若能清净,不为嗜欲逼。自知原来处,归向原来去。
凡夫与圣人,眼横鼻长直。同来不同归,因彼多外驰。
若能收放心,提念生与死。趁此健身驱,精进用心力。
洗髓还本原,凡圣同归一。
物我一致篇第四
万物非万物,与我同一体。幻出诸形相,辅助成生意。
有人须有物,用作衣与食。药饵及器皿,缺一即不备。 
飞潜与动植,万类为人使。造化思何鸿,妄杀即暴戾。
蜉蝣与蚊蝇,朝生暮死类。龟鹤糜与鹿,食少而服气,
竟得多历年,人何不如物,只贪衣与食,忘却生与死。
苟能绝嗜欲。物我皆一致。

行住坐卧篇第五
行如盲无杖,内观照性分,举足低且馒,踏实方更进。
步步皆如此,时时戒急行。世路忙中错,缓步保平安。
住如临崖马,亦如到岸舟。回光急返照,认取顿足处。
不离于当念,存心勿外务。得止宜知止,留神守空谷。
立定勿倾斜,形端身自固。耳目随心静,止水与明镜。
事物任纷纷,现在皆究竟。坐如邱山重,端直肃容仪。
闭口深藏舌,出入息与鼻。息息归元海,气足神自裕。
浃骨并洽髓,出神先入定。卧如箕形曲,左右随其宜。
两膝常参差,两足如钩钜。两手常在腹,扪脐摸下体。
睾丸时挣搓,如龙戏珠势。倦则侧身睡,睡中自不迷。
醒来方伸脚,仰面亦不拘。梦觉浑不异,九载征实际。
超出生死关,究竟如来意。行住坐卧篇,只此是真谛。

洗髓还原篇第六

易筋功已毕,便成金刚体。外感不能侵,饮食不为积。
犹恐七情伤,元神不自持。虽具金刚相,犹是血肉驱。
须照洗髓经,食少多进气。搓摩干沫浴,按眼复按鼻。
摸面又旋耳,不必以数拘。闭眼常观鼻,合口任鼻息。
度数暗调和,身定神即定。每日五更起,吐浊纳清熙。
开眼即抽解,切勿贪酣睡。厚褥趺跏坐,宽解腰中系。
右膝包左膝,调息舌抵腭。胁腹运尾闾,摇肩手推肚。
分合按且举,握固按双膝。鼻中出入绵,绵绵入海底。
有津续咽之,以意送入腹。叩牙鸣天鼓,两手俱掩脐。
伸足扳其趾,出入六六息。两手按摩竟,良久方盘膝。
直身顿两足,洗髓功已毕, 徐徐方站起,行稳步方移。
忙中恐有错,缓步为定例。三年并九载,息心并涤虑。
浃骨更洽髓,脱壳飞身去。渐几浑化天,末后究竟地。
即说偈曰:口中言少,心头事少,腹里食少,自然睡少,
有此四少,长生可了。
posted @ 2005-08-06 23:46 蓝色雪焰 阅读(330) | 评论 (0)编辑 收藏
 
战棋游戏的战棋系统是它的灵魂,由这个系统就可以看出一个战棋游戏的好坏。

一、参战人数要少。
  参加战斗双方的人数要少,如果是一大群人在打群架的话,还不如做成即时战略游戏。
  中国象棋每边只有十六个子,一将、两士、两相、两马、两车、两炮、五卒。如果把这些都换成战棋游戏中的职业来看的话就是有七种职业,其中有高级职业(如车),也有低级职业(如卒),并且每种职业各有用途,并非都以直接削弱敌人为目的;行动方式也各异,在行动方式的限制中诞生了战术的组合。这些因素集合到一个小小的棋盘上,就能组合出无限的创意。要想下好象棋,每一个棋子都得用好。
  战棋游戏不跟象棋一样,毕竟它有升级系统、有数值系统,但有一些战棋游戏的精髓没变,其中最重要的一点就是对个体的重视。对个体的重视是即时战略游戏所不具备的,也是即时战略游戏无法取代战棋游戏的根本原因。
  对个体的重视是建立在少而精的人数基础上的,人数一多势必造成打群架的情况(个体得不到体现)和战斗时间的延长(玩家精力的消耗),这些都降低了对个体的重视,并且会使玩家陷于极度的精力疲劳之中,而不是思考的而累的满足感。
  由于《星际》的成功,暴雪在制作《魔兽3》的时候受到了严重的影响。如何才能突破《星际》的模式,做出一个与星际完全不一样的游戏出来呢?暴雪就采取了重视个体的思想。在战棋游戏里注入这种元素是成功的,但《魔兽3》对个体的重视比起战棋游戏来还是微不足道。
  《魔兽3》要保证玩家有足够的精力放在一个个体的单位上,这样就增加了每个单位的HP量,增加了消灭一个单位的时间,在战斗不是很激烈的时候玩家才能抽出时间来对个体进行操作。好像这是增加了即时战略的玩点,其实它有很多负面影响。首先,玩家对个体投入的精力增加了,而对另外的个体来说就是分散了精力,并非是完全地“对个体的重视”;其次,建设还需要玩家投入精力,玩家的精力被进一步分散了,玩家忙碌于操作中,乐趣体验的过程被削弱了;再次,对个体的高即时操作性影响了对整个战局的把握,在整体与个体的二选一中(比如此时需要对整体进行操作而放弃对个体进行操作),削弱了对个体的重视,也削弱了对整体的重视;还有,HP量的增加影响了战斗的节奏,我和几个朋友都一致认为魔兽3玩着太“面”、太“肉”了,不如《星际》爽快;还有,微操难度,可以看作是缺点,也有玩家对此津津乐道;还有,在大规模的战斗中,对个体的重视就只限制在了对英雄的重视。
  《魔兽3》做到即时战略游戏的另一个顶峰了,也就是说即时战略的“对个体的重视”是不可能达到战棋游戏的水平的。
(《光明力量》的制作人说现在玩家不太喜欢战棋游戏了,没有市场,于是放弃了战棋的游戏方式,把新生的《光明力量》改为了动作式RPG,实在是让我伤心,一个我非常喜欢的战棋游戏就这样退出了历史舞台。)
  在战棋游戏中,这一点做得好的并不多。
  《阿玛迪斯战记》中,敌兵太多了,而且敌兵的实力都要比玩家角色弱很多,玩家要做的只是摆好阵形,等着敌人一批一批地过来送死就行了。
  《英雄无敌3》中,每个英雄只能带七个兵种,每个兵种可以看作是一个个体,这样和敌人的较量就是七对七的较量。在战斗人数要少这方面做得不错。
    
二、敌人对已方单位的攻击顺序

   敌人对已方单位的攻击顺序是一个很麻烦的事,由于人工智能比较落后,这个问题得不到很好的解决。
  《火炎之纹章》中,敌人的攻击目标顺序好像是:能一下杀死的人(血太少了)——无法反击者(神官、牧师、武器射程之外者)——主角——防御低者。这个设定还可以,战术性比较强,但有很大的缺点:《火炎》系列中的人物死了是不可复活的,神官和血少的人经常因此而挂掉,如果是剧情模式,就要不停地LOAD,还是LOAD的战斗前的记录,战斗中不可记录,太影响游戏节奏了。
  《英雄无敌3》的敌人攻击目标顺序是按强弱顺序攻击,先攻击威胁最大的强者,再消灭没什么用的弱兵。而《英雄无敌3》单兵的特点很少,所以这种攻击目标顺序显得实用,但很死板。
  《苍穹霸主》中,敌人的攻击目标只能是施法者,玩家要做的是抵挡敌人的进攻,由于这个游戏特殊的游戏形式,简单的攻击目标顺序的设计配合其它的玩点就创造出了丰富的游戏性。
  要想设计出比较有人性化的敌人对已方单位的攻击顺序,是非常困难的,在人工智能还很落后的情况下,就只能预先对游戏进行把握,考虑游戏过程中会出现什么样的情况,然后设计出既有战术性、又人性化的敌人对目标的攻击顺序。

三、控制每个单位的行动时间
  在战棋游戏中,回合是一个基本的概念,双方都是一回合一回合地进行攻防的。一次战斗需要很多回合才能结束,如果一个回合需要很长时间的话,玩家就会感到疲倦,控制每回合时间一是控制参加战斗的人数,这在第一点时已经说了,二是控制每个单位的行动时间。
  每个单位的行动时间不要太长,也不要太短,太长或太短都会影响节奏。
  战棋游戏的攻击方式有多种,总体分为进入战斗画面式和不进入战斗画面式,各有优缺点。
  进入战斗画面式要比不进入战斗画面式的每个单位行动时间要长,但有华丽的画面。有两个不好的例子:《机战》系列以华丽的画面著称,但每次战斗的花的时间太长了,再华丽的画面看多了也会使人疲倦;《阿玛迪斯战记》战斗的时间太短了,快速的画面切换给人感觉非常不好。好的例子是《光明力量3》,进入战斗画面时运用了转场时渐显的技巧,而且战斗的时间控制得非常好。
  不进入战斗画面式节奏紧凑,虽然损失了漂亮的画面,但换来了优秀的游戏节奏,而且可以和地形产生互动,这点尤其宝贵,如《皇家骑士团外传》里角色朝向的方向、地形的高低差、地理环境、地域属性都会对战斗产生影响;《汪达尔之心》里还做出了敌我双方同时移动。

四、地图因素
  由于战棋游戏方式的多样性,地图的特点也不一样。
  《火炎》系列的地图具有以下因素:俯视图,大比例尺,地形对移动力有影响,有阻隔物,地形对攻击计算有影响(命中、回避、防御),有的地形有回复效果。《火炎》系列的地图是标准的进入战斗画面式战棋游戏的地图,可以成为很多同类游戏的评判标准。
  《皇家骑士团外传》的地图具有以下因素:斜四十五度角视图,小比例尺,地形对移动力有影响,有阻隔物,地形有高低差,地形对攻击计算有影响,地形有属性效果并且能改变。皇骑的地图有很多好的创新,主要是地形高低差和地形属性效果。
  《封神榜》也是一个在地图上施展攻击式的战棋游戏,他有一点特别的创意是攻击和魔法可以改变地形高低差。
  欧美的战棋游戏这方面没有做出创新,《英雄无敌3》里地图的效果只有对移动力的影响和有阻隔物。《苍穹霸主》没有地图效果。《圣战群英传》也没有地图效果。但欧美的战棋游戏多是和资源采集有关的,在资源采集方面对地图因素的不足做了一些补偿。
  《阿玛迪斯战记》的地图是真实的比例,因此地图显得太宽大了,但又没有起到应有的作用:地图的效果太少,甚至连基本的对移动力的影响都没有。尽管这个游戏用了真实的地图比例,但给人的感觉却非常不真实,好像所有的角色不是在一个可信的环境里行动,而是在一块画布上飘。
   地图是战棋游戏的一个很重要的元素,在上面可以做很多的戏。我觉得地图具有以下因素:
1、 地图要有真实感,这种真实感不是视觉上的真实,而是实际游戏时的真实感受。《火炎》在地图视觉上绝对不是真实的,但实际感受非常真实(进入战斗画面对建立地图的真实感起了一定的作用);《阿玛迪斯战记》尽管采用了真实的地图比例,但给人的感觉非常不真实。
2、 地图尽量对战术、战略产生作用,和玩家角色形成互动,丰富战斗系统。
3、 做出丰富的和游戏相协调的地图元素,能够增加游戏的乐趣。

posted @ 2005-08-05 22:42 蓝色雪焰 阅读(705) | 评论 (0)编辑 收藏
 
 

“巨商”的免费运行,一举打破目前以点卡为赢利目的的收益局面。
有消息显示今年会有更多的游戏加入这一免费运行方式的行列。
真的免费吗?那靠什么维持生计啊?
所谓天下没有白吃的午餐。
本人根据自己对市场和游戏的理解与观察。
总结出以下几种免费运行方式。
1、免费游戏+会员方式。
   如“浩方对战平台”大多数人都可以免费进行游戏。但是会员却拥有无论房间是否人满都可以登陆并且使用所谓的魔法踢掉非会员的玩家。
   所以,喜欢在浩方上游戏的人,一旦被踢掉几次后,为了还能够正常的进行游戏,被迫购买会员。或是干脆为了正常游戏而加入会员。

2、免费游戏+网站购买游戏道具。
   如“巨商”,“泡泡堂”等。通过购买游戏卡转换成虚拟货币来进行道具的购买。
   这种方法看起来有些被动,但是却赚到了钱但没太多时间却想成为游戏高手的人的钱。

*3、收费游戏+真实货币虚拟转换。
    这种方式不完全属于免费游戏,但却有明显的商业气息。所以也作为一种商业运营模式。
    如“大话西游”“剑侠ONLINE”。这两种游戏是现实货币与虚拟物品交易的典型代表作。
    除利用现有的点卡的收费方式外,还加入了现实的点卡可与游戏内虚拟货币交易的系统。


通过以上各种手段不难看出,所有的运营方式都围绕一个字---钱。
网络游戏市场虽然在扩大,但是相应的游戏运营商和游戏也在不断增加。
光是靠卖卖月卡和点卡对一些用户群少的游戏来说,根本不能维持生计。

所以,根据个人的经验,未来市场将会按以下用户群进行划分。
(注:以下说法需要建立在不使用挂机外挂的情况下,游戏中允许挂机的不在范围内。)
    1、有钱+没什么时间的人。
       此类人一般为工薪阶层,有固定的工作和收入,因为工作的关系,这些人不可能亲自长时间的在线游戏,一般会在下班后上线玩一段时间。一般上线时间主要集中在下班后晚上的时间(估计在8-12点)。这些人因为没有很多游戏时间,所以不可能达到长时间在线的那些人的游戏等级。因而除了购买游戏道具和不玩外,正常情况下几乎没什么其他选择。而且这些人因为有固定工作,所以很容易会去购买一些游戏内的高级东西。
       所以,未来游戏收益市场主要会围绕这些人来进行,游戏运营商可以销售一些虚拟道具,也可以正规化游戏内的交易情况。例如:网站上出售虚拟道具,游戏内可以用点卡购买虚拟游戏币等。
    2、有时间+没固定收入的人。
       此类人一般多为学生和社会闲散人员。这些人由于没有固定收入,所以一般除了支付网费和基本游戏点卡或月卡费用外,几乎没有能力购买其它东西。
但是,此类人却是游戏的根本。因为只有更多的这样的人的存在,游戏的物价才会拥有更大的基数,而使得虚拟物价达到一个可以进行现实与虚拟的平衡。
       所以,这些人虽然不是主要的收益群体,但是却是维持主要收益的关键因素。所谓的,没有足够的用户群又怎么可以把东西卖上价格,也就显示不出高级物品的价格。


总之,未来的游戏市场势必会围绕以上两种用户群来进行市场调整。用没钱人作为游戏的基础(甚至免费运行),争取更大的用户群。然后充分赚取有钱人的钱(让他们买道具,买点卡换取虚拟货币)。

posted @ 2005-08-04 21:44 蓝色雪焰 阅读(252) | 评论 (0)编辑 收藏
 
简约管理的核心就是要形成一种自然秩序,每个岗位、每个环节、每个人都知道什么时候该做什么。

——题记

    我写的山姆·沃尔顿的系列文章发表后,收到许多邮件,有读者感慨:“为什么很多理念和管理思路只有到某个时候才变得清晰,以前总是模模糊湖,等过了一段时间后,又变得很好笑,因为现在才觉得那个清晰的概念是那么的简单和朴素,为什么那时没早点想到,难道这就是人性的弱点……”确实,商业就这么简单,为客户节省每一个铜板,为客户提供更好的性价比服务,由此核心,派生出一系列的运作、操作的方式或模式。

  

做到组织简化绝非易事

  

    杰克·韦尔奇非常推崇简约管理,他说“作为领导者,一个人必须具有表达清楚准确的自信,确信组织中的每一个人都能理解事业的目标。然而做到组织简化绝非易事,人们往往害怕简化。他们往往会担心,一旦他们处事简化,会被认为是头脑简单。事实恰恰相反,惟有头脑清醒、意志坚定的人才是最简化的。”韦尔奇当年领导着世界上数一数二的商业帝国,凭借的竟然是“简约”管理原则,有点不可思议。可细一琢磨,还真是这么回事。

    韦尔奇提到简约管理的两个必要条件:一是领导人要头脑清醒、意志坚定,有着对自己表达清楚准确的自信;二是组织中有非常明确的价值之榜,每一个人都能理解事业的目标,每一个环节都能恰当的发挥着作用。这是韦尔奇在接受财经记者采访时脱口而出的话语,没有准备给出简管理的充分必要条件,却也像一束闪电照亮了混沌的管理世界。

  

简约管理的核心是形成自然秩序

  

    中国虽然有几千年官僚传统的积蓄和作用,却也并不排斥简约。相反,中国的传统智慧更推崇简约管理。5000多年前,老子在5000字的《道德经》中,概括了四种领导模式或境界:“大上,下知有之,其次亲誉之,其次畏之,其下侮之。”并且还反复讨论了“道法自然”管理的精义,明确提出了管理的最高境界:“稀言自然”;“无为而治”。老子豪迈,“治大国若烹小鲜”,他心里始终有一个自然秩序。看来,西方最前沿的管理科学与老子有着同样的价值观。

    一个组织中自然秩序怎样形成?任何一个群体或者组织,总要围绕核心做一件事,由此决定了在各个环节上应该什么时候做到什么和做到什么程度,这些用不着管理者指东道西。较为贴近的例子是一个交响乐团,号手也好,小提琴手也好,他知道到了哪个环节他应该做什么,用不着指挥告诉他。也就是说,当组织中的每个岗位、每个环节、每个人都知道什么时候该做什么,企业的自然秩序就形成了。

    简约管理的核心,就是要形成一种自然秩序。企业逐渐形成运作的规范,这种规范演变成每个人的自然的思维方式,就像呼吸一样自然。像萨姆·沃尔顿那样,围绕着为客户节约每一个铜板这个商业的根本,而形成一种简单秩序,这种管理就比较简单。如果中间扭扭曲曲的,那就复杂了。管理的事一复杂就没边了,因为每个人的内心都是一个很复杂的宇宙,很复杂的世界,你这边复杂,他那边复杂,这个群体就没希望了。

  

敢于无历史地去感知去行事

  

    做到简约管理,要求不管是高级管理者,还是普通员工,都知道自己什么时候该做什么。自然秩序的运转必须有一定的价值之榜,有一定环境,有一定规则。高级管理者该做的事,无非就是建立并维护企业自然饿秩序的运转。员工该做的就是把岗位上的事做到最好,他们的目标合作事的标准都非常明确。

    无论多好的理念,关键是实践。实践简约管理与企业领导人的素质有很大的关系。像创立阿里巴巴网站的马云,他开始什么都不懂,不懂互联网,不懂管理,不懂技术,不懂商业模式,但他就是大胆行动,在行动中不断地修正,在动态中逐渐建立起阿里巴巴网站的自然秩序。前些日子著名经济学家吴敬琏老师与我讨论马云的成功,我假设,马云是一个物理学的博士,心里有一套高科技的概念,并且深入到美国的大型高科技企业中工作过,知道一项新技术的开发和运用所需要的资金和团队,那么,阿里巴巴就永远与马云不沾边了。吴老师笑了说,“知道得太多就不敢去做了!”

    人们往往不清楚,一切的理论、经验和历史,都是压在人们身上的重负。一个企业的领导人,敢于无历史地去感知、去行事,需要有点自己粗壮的本能。难怪韦尔奇说,“惟有头脑清醒、意志坚定的人才是最简化的。”

posted @ 2005-08-03 18:20 蓝色雪焰 阅读(223) | 评论 (0)编辑 收藏
 
导读--第三代手机(3G)的时代还未到来,手机游戏却已经急于带头掀起新手机时代的序幕了。

  第三代手机(3G)的时代还未到来,手机游戏却已经急于带头掀起新手机时代的序幕了。今天,一款手机网络游戏在此间的正式发布,标志着传统基于联网个人电脑的网络游戏正在迎来一场新的变革。

  近些年来,网络游戏在中国迅猛发展,据有关方面统计,二00三年中国网络游戏用户的总数接近一千四百万,比上年增长了百分之六十四,约占互联网用户总数的百分之二十。进入二00四年后,网络游戏产业的发展更是呈现惊人势头。

  与此同时,自从第一台手机诞生以来,手机被赋予了越来越多的用途。短消息不但为信息传递另辟蹊径,更在这个网络时代发展成一种文化。除此以外,随着手机上网服务业务的开通和发展,图铃下载等功能也逐步被网络运营商开发到了极点。

  如今,中国的手机正向着3G时代迈进,有消息人士称,中国政府很有可能在今年下半年发放3G牌照。这意味着手机接驳网络的速度将会比目前的第二代手机有大幅度提高。业内人士称,由此带来的手机革命甚至无法估计。

  今天由北京道隆科技开发运营的《无限乾坤》这款手机网络游戏的发布,至少让人看到了这个变革的一线端倪。

  道隆科技有限公司总经理赵东辉介绍,目前中国用户可以玩到的手机游戏,图形化的往往是只能自娱自乐的单机版,而能够互动的又多是依赖于文字方式的游戏,《无限乾坤》的出现无疑为广大手机用户提供一种手机游戏的新模式。

  据介绍,这款游戏是以中国传统武侠文化为背景,吸收了个人电脑网络游戏的优点,可支持万人以上同时在线互动,在当前的大众主流手机硬件条件和2.5G网络条件下完全能实现游戏功能。

  此次道隆科技更是联手传统网络游戏的推广商晶合时代,准备利用其在传统网络游戏方面的推广渠道大干一场。道隆科技的负责人表示,这款手机网络游戏甚至在国际上也可以说是领先的。

  业内人士分析指出,首款手机网络游戏的诞生仅仅是新手机时代的一个信号。

  信息产业部不久前发布的最新统计显示,中国移动电话较上年底增加近六千万户,达到三点三亿户,移动电话普及率达到每百人二十四点八部。其中数据业务用户已经占到手机总用户数的一半以上。

posted @ 2005-08-02 21:20 蓝色雪焰 阅读(323) | 评论 (0)编辑 收藏
 

  【赛迪网讯】7月11日消息,据研究公司易观国际(Analysys International)发布的最新一份调研报告显示,至2008年,中国的移动在线游戏市场规模将达到7.14亿美元,是2004年的7倍以上。

  2003年中国的移动在线游戏市场总产值为3900万美元,而2004年升到了9800万美元,年增长率约为150%。据易观国际预测,2005年该市场总产值将达到1.75亿美元,增长79%。

  易观国际的调研报告题为《移动增值服务——关于2005年移动游戏产业发展趋势的焦点报告》,其中指出,自2007年该市场将初始实现大规模增长。

  据易观国际的电信分析师表示,2007年后中国的移动游戏市场将会飞速发展,这主要有两方面原因:

  “首先,具有移动终端的支持十分重要,但目前并不是所有的2.5手机都具支持JAVA和BREW,不过随着智能手机和2.5G手机的日益普及,终端支持也将不再是阻碍该市场发展的瓶颈。”

  “其次,随着3G网络的商业化运营以及数据服务质量的提升,移动游戏也将变得更加具有诱惑力。”

  易观国际表示,移动在线游戏要想获得推广就要引入基于3G网络的即时互动。而3G基础设施的建设、改善数据服务质量,减少运营成本以及消费者对智能手机的认可也都是推动移动游戏市场飞速发展的关键因素。

  易观国际同时提出,由于服务模式不同,因此在线游戏和离线游戏属于两个不同的概念。前者采用电信服务模式,而收费主要取决于游戏时的流量;但后者只是为用户提供一款简单的游戏程序,只需下载到手机即可,因此收费也较低。

  大部分移动游戏都是采用SMS短消息或利用JAVA和BREW编写,不过智能手机上的一些游戏是用C语言编写的。该份报告指出,基于WAP、JAVA和BREW的游戏将会大量涌出,而基于SMS短消息服务的游戏将会明显减少。

  易观国际称,在开始的时候离线游戏将是商家主要的收入来源,但在线游戏的发展速度很快。同时预计到2008年来自智能手机的游戏营收将达到8800万美元。

posted @ 2005-08-02 21:10 蓝色雪焰 阅读(255) | 评论 (0)编辑 收藏
 

二、 开发流程
1、产品选择和周期控制
  手机游戏的开发周期尤其是JAVA,BREW游戏的开发周期比较短,游戏的开发周期的长短对于整个公司的开发团队和相关的管理层是有很大影响的。一般JAVA,BREW游戏的开发周期掌握在一个月内,不过也要看游戏本身设计情况。开发游戏需要制定一个团队的发展战略和方向,一个成熟的开发和验证标准,通过团队的意见,形成团队的开发体系。围绕游戏开发标准进行合理恰当的主题选择。最初需要解决一个开发什么类型或是大概是怎么开发思路让所有的团队成员能够认可这样的产品类型选择策略。一般意义上是结合2方面的因素来分析产品策略选择,一个是外部市场分析,包括产品类型,游戏的内容,玩法,上市地等进行信息收集和总结,细分市场。另外的一个就是分析下,团队的开发能力,市场宣传能力,资金能力,资源状况等。从内部找问题是最为主要的,但是也不能说有市场我们虽然做起来有困难,委琐了。市场的缔造者一般都是技术领先或是市场占有领先的,需要一个长期的历练过程。一个团队做事情,刚开始最好不要去选择比较大的游戏内容,这对于刚组建的团队不是一个很好的练习模式,从小的游戏入手,可以参考市面上游戏,第一个项目一定要控制在1个月之内。当完成虽是一个小项目后,团队成员也会很高兴。

2、制作过程
  产品需要有一个提案,提案主要阐述游戏的介绍,操作和其优势何在。这个提案可以由热呢后人来提出,但是要知道,在你提出这样的一个游戏思路后,很快你将受到其他人的意见。甚至是你自己也发现这样的一个游戏毫无意思。你由原来的简单的想法,变成怎样去维护这样的一个主题。很多公司都会花不少的时间去开会,仔细研究讨论,你提出的这个游戏思路是否可性。有时候,甚至需要1天的时间来讨论。这样的方式,我认为是不可取的。大家都有事情做,很忙。花一天的事情,什么都不去做,为一个想法说半天,都会有抵触的心理。甚至在会议上,没有任何结果,大家都可以说,最后始终是没有一个可以拍板的。游戏提案可以以mail或是聊天的方式去解决。而且在一个想法没有成熟为游戏前,最好是不要提出来。在它被你提出来之前,你对于这样的一个思路不清晰的话,甚至是有很多的遗漏。这是不成的。召开游戏头脑风暴会议是一个不错的意见,这会议不是讨论每个具体的游戏,而是大家可以随意的想象,无论是针对一个游戏还是几个游戏,仅仅和游戏见解关系就成。头脑风暴会议中,不需要有任何的约束,从开始到结束都是在一种活跃,激动的气氛中完成。除了所有的开发人员参与此会议中以外,还需要有相关的行政(记录),市场人员,以及项目管理人员。当一个游戏被确定下来要开始做的,策划需要出该游戏的概要,介绍,操作,游戏类型等,确定美术清单。美术清单是给美术人员看的,在确定游戏的美术清单时最好是和美术人员进行该项目的协商,按照2方讨论的结果。在出现分歧时,最好不要做出结合2者的中立的结果,只能去选择一个意见,对其进行丰富和休整,而不是完全的违背。另外的一个解决方式就是让项目决策者参与,这需要市场,产品的敏锐程度。当确定完美术清单后,美术人员开始寻找美术资料或是手稿进行创作。这要看个人的工作方式。当策划人员将整个游戏的策划完成后,就需要开一次,开发人员的讨论会。相关的开发人员和质量监控人员对整个策划人员的策划进行调整和休整。力求一个可以做到的,大家开发兴趣较好的项目最后标准。这个会议最好有一个项目建议表格来协助其更好的将这会议落实。最后策划人员根据其他人员的意见进行相应的调整,完成整个项目的策划案。最后移交给项目经理进行审核。
  通过后,该游戏就正式纳入开发项目中了。美术人员的图基本上做的差不多了。若有地图,策划在这期间还要完成对游戏地图的编辑,或招聘专业的关卡设计师。不过一般情况是由策划人自己完成。当一切都做好时,策划案和美术就可以移交给程序员。在游戏的编写中,策划需要和程序主动的沟通,因为在游戏的编写中会出现问题。程序员对于策划要仔细看明白,不能猜测,出现不太明白的地需要及时和策划沟通协商,不要将问题遗漏在最后。游戏demo完成后,程序将demo交给策划或是相关的测试人员进行测试。通过bug表格进行修改程序,直到无明显问题。在期间,策划或是市场人员将相应的市场和产品宣传做好。

posted @ 2005-08-01 18:15 蓝色雪焰 阅读(742) | 评论 (0)编辑 收藏
 
针对目前国内大部分策划在设计游戏时的“经验主义”作风,希望本文能够让大家
对如何正确看待游戏设计中出现的各种问题有比较科学一些的了解。

首先,我们把网络游戏定义为一个网络虚拟的世界(Net-VEs),那么我们来设计这
样一个世界需要注意些什么呢?因当让玩家沉浸在这样一个世界里面,积极的响应
来自这个世界的各种信息,也就是常说的那种身临其境的感觉。

接下来先来看看网络虚拟世界所应该具备的五种要素:
1,空间感(大家在同一个虚拟的空间内进行交互)
2,存在感(大家都感觉到自己处在这样的一个虚拟空间内,而不是观察者)
3,时间感(相互之间的交互是即时的)
4,交流沟通的渠道(比如说,聊天,自己的各种行为别人也能看到,等等)
5,共享的渠道(相互之间能共享虚拟世界里面所存在的东西,物品交易之类的)

再来看看交互的定义:
简单点说,是把用户的输入,包括鼠标,键盘,语音和虚拟世界中用户所操控的人
物的行为之间的一种对应。这和现实社会中对交互的定义有些区别,现实社会中认
为除了下意识之外的所有的行为,都属于交互行为。比如说揉眼睛,伸懒腰之类的,
不管别人如何反应,你做出了动作,就表示你在交互了。

这里就涉及到另外一个概念,交互等级。所谓交互等级,就是根据从虚拟世界中接
收到信息到做出反应的时间的长短来定义的一个等级,这个等级越高,表示玩家越
沉浸在这样一个虚拟世界中。举个例子,对于FPS类游戏来说,玩家普遍的交互等级
是相当高的,这也是为什么CS在被作为虚拟世界的例子进行研究的时候被认为是近
乎完美的一个虚拟世界。当然,这里说的完美是指针对CS本身的定位来讲的。在战
场上,本身的相互之间的交流就相当简单,因为双手要持武器,不可能有手势,而
且带着很厚的面具,不存在眼神之间的交流,而且大部分注意力都集中在对周围环
境的观察中,在这种情况下,语音就成了相互之间交流的最佳手段,而且实现设置
好的一些语音命令也大大增强了队伍之间的交互性。这种最佳状况的交流随着队伍
人数的增长而递减,而在5vs5队型的战斗中,CS的交互性发挥到及至。

那么为什么随着队伍人数的增长,这种类型的交互性会递减呢,因为CS队伍的设计
是一个环行的,没有强行的指定一个中心节点。在人数比较少的情况下,会比较容
易的大家自动的推举出一个队长来,而在人数比较多的情况下,就会因为没有队长
而使整个队伍变得松散。而且很多地图根本就没考虑很多人同时进行游戏的情况,
因而会在一些比较窄的过道或者入口处发生比较严重的堵塞情况。

同样的道理应用在大型网络RPG中也是成立的,网络RPG的目的性不如CS类游戏那么
明确,也可以说是目的多样性,和现实生活更接近,也是非常难以模拟的。类似眼
神,手势,或者说眨眼等一些小动作就非常难以实现了,这些受到图形引擎等一些
方面的限制。如此导致的结果,就是用户往往很难找到适合的方法来进行交流沟通,
现实中如果有人干巴巴的走到你的面前说“你好”,估计你也不会理他/她。

而这点在以前的文字MUD中则体现得非常好,因为在没有图形的前提下,用户对文字
的注意力会大大的加强,那么这个时候任何来自文字的信息,都比较容易提高用户
对其的注意力,换句话说,就是互动等级比较高。而对于目前的半图形半文字的网
络游戏来说(这里指的文字信息是指一部分游戏信息和聊天信息混杂在一起)玩家
的互动等级相对来讲就会低很多。比较有效的建议就是将游戏信息和聊天信息彻底
的分开,游戏信息用游戏中UI的各种形式,而聊天信息则是在固定的某块文字区域。

最后来看看互动的垂直分层,首先最底下叫原始层,主要是指用户的输入(键盘,
鼠标),再上一层是表现层,比如说表现出人物的奔跑或者跳跃之类的动作,再上
一层是含义层,不同的动作在不同的虚拟世界或者说同一虚拟世界的不同状态下,
表示出不同的意义。很明显,这是一个倒金字塔型的结构,也就是说,原始层所能
操控的东西很少,然后同样的操控设备可以产生多一些不同的动作,比如同样是从
键盘输入,输入A和B就会产生两种不同的动作,然后在含义层又能表示更多的意义。

那么在设计的时候经常产生的中间层肥大,而两端瘦小,输入层没有扩展,同样在
含义层也没有扩展,只是在表现层多了很多东西。这样做只是资源的浪费,起不到
任何的作用,只有在尽可能的情况下对输入层进行扩展,然后保证含义层和表现层
的大小维持一定的比例,才算是对互动的多样性进行了扩充。当然,如果能在互动
的层次上有一些垂直的扩展,当然就更好不过了。
posted @ 2005-07-31 14:10 蓝色雪焰 阅读(940) | 评论 (0)编辑 收藏
 
一、策划提纲

1、游戏目标客户
2、游戏玩法阐述
3、游戏内容
4、游戏操作设计
5、游戏策划及关卡策划

二、日程进度

1、demo版本
2、alpha版本
3、beta版本
4、release版本
5、gold release版本

三、技术参数

1、图像率新速度
2、文件安装完大小
3、文件未安装大小
4、使用过程中有戏占用内存
5、占用内存峰值
6、游戏过程中的通话处理及安全处理
7、游戏图形特效清单
8、游戏与操作系统兼容性
9、图形文件/声音文件/数据文件
10、目录结构/变动文件清单
11、使用的动态链接库

四、游戏中所有音效清单

音效说明
出现位置

五、游戏所有图形清单

1、游戏界面部分
2、游戏动画部分
3、游戏内部
1)根据关卡划分的图像清单
2)游戏人物原创设计

六、代码开发标准

七、基本风格设定

1、风格表述说明、优点及适应考虑
2、代表其游戏风格的图像

八、游戏流程图

1、游戏操作流程图
2、游戏开发模块流程图
3、与其他程序接口部分的特别流程图

posted @ 2005-07-31 13:51 蓝色雪焰 阅读(935) | 评论 (0)编辑 收藏
 

一、 组建团队:
  制作游戏需要一支团队,组建团队需要点时间去平衡下他们的能力和潜力。能力可以依靠制作的经验和自己的相关的作品,在人的潜力上,通过和其谈话,了解其性格特点。很多面试人是不愿意去在面试时你再去让他花长时间去做的。这就需要一个自己审核的标准和感觉。你开始就可以确定是否有很大可能的合作意想。

  在选择恰当合适的合作伙伴之前就需要了解该人的相关情况。熟悉他的专业,思考方式,爱好,特点,以及有没有合作的意想。去选择合作伙伴来组建团队最好不要找自己熟悉的朋友。尤其是大家都比较熟悉的,这样在以后的实际问题的处理上很难把握一个度。因为组建团队不是目的,在制作游戏过程中,合作的态度是最为主要的。

  团队其他人员需要在一个中心下执行思考相关的游戏制作方式,一个项目管理的身份就出现在团队中,而且他所具备的是一种良好的沟通方式,简单的管理方式,前瞻的思维方式综合的一个人。他需要有资历,最好是曾经失败的那种,对于市场和产品制作流程和审核他是最清楚的。不少的团队,这样的中心人物是由策划或是程序来担任的,美术人员担此重任的比较少。对于策划人员来说,比较的文化层次的意义重些,适合团队的刚开始制作。程序员做管理需要长时间的去磨合。程序做管理,对于人员的沟通和项目的制作上存在一些不可避免的问题。

  团队需要创业资金的注入,对于投资商的选择是很重要的一点。很多时候你可能让资金的数目给冲晕了头。资金最好是在自己财务预算以内,开始最好是艰苦些。一个健康,坚定的信念足可以让一个团队坚持很久。当然在合作起来时需要在责任和权利上明确双方,不要马虎这样的小事情,认为钱到手了什么都好说。实际上有些事情不是你想象的那么简单的。尤其是商人,他们的随机性很广。

  以后需要在团队中讲名大家的任务,团队的发展目标,发展思路。还有就是大家的待遇和股份问题。这点是很必要的,大家为什么会跟着你走,很大程度上是因为想成为团队的一分子,一个主人的角色。做为组建团队的,就首先需要明白这一点。你的做事情的特点要和其他人说明白了,要一个坚定,有力的角色呈现在大家的面前。

  组建团队是为了将游戏做好,一个人做游戏比较困难,人多了,你的力量才大。你才可以对你的朋友说,要开始了。注意,现在还没有开始,仅仅是一个地基给搭建起来了。具体整个团队的价值需要在现实中验证。

  开发资源是很重要的,你招募的人,他们很大程度上会给你带来开发资源的补充。开发资源对于一个开发公司是很必要的,他可以减少你的开始时间和精力。适合刚开始创立公司的团队。资源是很广泛的,但是在使用这些资源时,要注意是否符合方式的开发流程的制定和游戏的发展方向。

posted @ 2005-07-31 13:28 蓝色雪焰 阅读(381) | 评论 (0)编辑 收藏
 

目前,开发手机游戏的厂商如同雨后春笋般的冒了出来,有大有小,甚至几个朋友在一起就能攒出一个小公司,进行开发。每个公司,也都有“具备自己特色”的开发过程,好一些的,直接套用传统的软件工程的理论,差一些的,也只能闷头苦干了。我在这里想谈的是对于小团队开发游戏的一种高效的开发方法和阶段划分。

 

       游戏开发的阶段划分,我认为可以划分为5个阶段,叙述如下:

 

第一阶段:提案

 

       这一阶段要做的主要工作是明确要做什么样的游戏,游戏的名称是什么,采用何种表现方式(2D,2.5D,3D等),游戏的卖点(特色)何在,实现在什么样的平台上,人员如何搭配。

 

       无论是公司还是小团队做游戏的最终目的都是为了盈利,所以做为游戏设计者就应该针对市场来设计游戏,而不能针对个人的喜好而设计游戏。能被大多数人接受的游戏才是一款好游戏,才能更好的盈利。所以在决定做什么游戏之前要先确定主要针对什么样的玩家来做这个游戏,是男孩还是女孩,是老少皆宜还是20多岁的年轻人,这个目标确立了之后才能更好的挖掘这类玩家的心理,使游戏的设计更充分的满足这类玩家心理和精神上的需求,这样游戏才能被更多的玩家接受,团队才能更好的盈利。

 

       根据已选择针对的玩家群体,就该选择适合这个玩家群体的游戏题材,一个游戏题材的选取也非常重要,一个好的题材有助于设计者表现游戏的特色,使玩家很快的了解游戏背景,游戏能够很容易上手,更好的被玩家接受。有三大类游戏题材比较容易被玩家接受:1发布地区人人皆知的历史或宗教;2与常识相关的;3与某有名的故事或电影相关的。总之,在所选玩家群体大部分玩家都熟悉的题材上做游戏会更容易被玩加接受。

 

       然后就是有关游戏概念的设计,需要确定的是游戏的类型(例如:RPG、策略、格斗等),游戏的表现方式(例如:2D、2.5D或3D),在什么平台上实现以及游戏的特色。这些问题都要根据团队的技术实力、市场需求的紧迫程度、开发成本等各方面因素来决定。在确定了游戏的类型、表现方式和实现平台之后,就要在这三个条件的限制之下尽可能的发挥策划的创造力,在游戏特色上尽可能的下功夫,并写出两份文档:一份游戏策划案的提纲和一份立项建议书。在策划案提纲中要让技术人员能够看明白游戏需要具有什么样的功能。在立项建议书中要写清游戏针对的人群,游戏类型,游戏表现方式,游戏实现平台,游戏卖点,实现所需的大致时间,以及人员安排。

 

       完后,招集市场、技术、美工等人员进行集体评审,根据这份立项建议书,客观的评价技术实力,开发周期,市场效应等问题,最终决定是否要做这个游戏。

 

       这个阶段的工作目标就是确定将要做的是一个能被市场广泛接受的游戏并确保游戏的可行性。一个不能被市场接受的游戏或者根本无法实现的游戏设计在这个阶段都会被否定,或做设计上的修改或放弃做这个游戏。尽可能的减少项目实施以后所要承担的风险。

 

第二阶段:设计

 

       游戏的设计过程中需要策划、程序、美术、市场共同协作完成,一个游戏做得好坏,这个阶段起到了决定性作用,下面将对这四种职责的工作内容分别进行阐述:

 

策划:

 

根据策划案的提纲进行游戏的详细设计。比如:用什么样的道具,各种物品、角色的名称,游戏用图的尺寸、大小,人物的各种行为、属性、地图或者场景的设计等,可以不用具体的游戏用图,用一些简单的图形表示即可。策划应该先不考虑平台的限制,尽可能的发挥创造力去设计游戏,当游戏设计完之后再根据平台的限制对游戏策划进行修改以达到具有可行性的最终策划案。

 

程序:

 

根据策划案提纲,完成物理引擎的设计,针对游戏类型和游戏表现方式设计或修改游戏引擎(如果已经有可用的引擎,则可以省去这一步)和游戏开发需要的工具,例如:脚本解析器的设计,地图编辑器的设计等。并完成编码,测试通过,程序中没有灾难性的bug。

 

美术:

 

美术人员需要经常与策划进行沟通,根据策划的描述开始设计游戏中的各种角色、物品、场景的原型并做出原画设计。美术人员应该对游戏中美术部分的设计起主导作用,而不仅仅是像工人一样策划怎么说就怎么做。

 

市场:

 

市场人员要经常与外界沟通,需要做两件事:1.经常与策划沟通,搜集与项目开发有关的资源;2.关注类似游戏的市场效应。在游戏开发中不一定所有的部分都要自己开发,有些地方也可以用一些别人做好了的东西,例如:在程序部分上,如果在网上能够找到基本满足需求的源代码,完全可以拿过来改一改,这样可以大大提高开发效率;在美术上,对于游戏中不是很重要的元素完全可以找些别人做好的图来改一改,这样也可以提高开发效率。关注市场上已经发行的类似题材的游戏,找到每个游戏的卖点特色和它的营销策略,仔细的分析这些游戏哪里做得好哪里做得不好,问题出在哪里?并完成一份市场调查报告,从市场的角度来审视我们的游戏策划和原画设计,尽可能避免前人犯过的错误。

 

       这一阶段的工作中,要以策划为中心,四种角色要经常沟通协作才能高质量的完成任务。如果条件允许的话应该由策划主持每天开一次例会,项目组内所有人员都要参与,解决工作中遇到的问题并对新的想法和设计进行讨论评估。

 

       这一阶段的工作目标:1.游戏引擎基本制作完成;2.站在程序的角度去看策划案,确认这份策划案是可行的;3站在玩家的角度去看策划案和美术设计,确认游戏的设计符合思维逻辑,内容足够丰富,美术设计足够细质;4.站在市场的角度看,与市场上同类型游戏相比要有一定的竞争力。如果游戏不好玩或者品质不够在这个阶段就会被修改完善,根据团队的实力最终确定游戏要达到一个什么样的品质,在下一个阶段就要根据这样的品质来制作游戏。

 

第三阶段:实现

 

       这个阶段的任务主要就是根据策划案来实现游戏,这个阶段的工作量是整个开发周期中最大时间最不好控制的。在游戏开发过程中各职责之间存在着很强的依赖性,工作的时序性很强,如果没有做好开发计划,团队中会经常出现等工的现象,浪费时间。所以,在开始工作之前所有项目相关人员要先开个会,以天为单位做一个详细的开发计划,在开发计划中要对这四种职责分别量化工作内容。工作的时序要安排得当,尽量避免出现等工现象。以下对这四种职责的工作内容分别进行阐述:

 

       策划:

 

在这个阶段策划最主要的工作是做好项目管理。项目管理的工作内容包括:1不断激励开发人员,使团队具有高昂的士气并保持一种和谐的开发气氛;2经常与各部分人员沟通,协调好每个人每天的工作,控制好开发进度;3安排好每天的数据备份,尽可能避免团队的努力因不可抗力而白费;4严格审核美术人员制作的图片和声音,保证达到游戏要求的品质;5协助团队其他人员做一些力所能及的实际工作(例如:用地图编辑器画地图、根据剧情写游戏脚本、制作游戏截屏动画等)。

 

策划不但要做好项目管理还要做两件非常重要的事:1随着游戏开发进展不断的审视游戏,及时发现游戏设计的不足,修改策划案但不改变开发计划仍然要按照原策划案继续开发游戏,修改后的策划案在下个阶段用;2编写数值设定初步方案并在游戏中实施此方案。

 

       程序:

 

根据策划案,设计游戏相关的算法(如:AI、碰撞、交易系统等)。做好游戏的版本控制。在初期的设计过程中可能美术的图还没有做好,不过没关系,程序员可以先用一些类似的图形代替,等美工做出图后再替换进去,这样可以节省很多时间。在开发过程中不要写太多的技术问档,技术文档主要的目的是利于开发人员交流,可在一个小团队里每个项目基本上就一个程序员,所以没必要把技术文档写得太繁琐。尽可能把技术文档作为注释体现在程序中,这样既节省时间又有利于程序的阅读。程序员在开发的过程中有可能想到一些对游戏设计有建设性的意见,这时应该及时跟策划讨论,决定是否修改策划案。

 

在整个开发过程中程序员应当在技术上起主导作用,除了写好程序外还应当指导美工按照程序的需求做图,指导策划或其他人员用游戏开发工具。

 

       美术:

 

根据策划案的美术需求列表的要求做图和动画,根据声音总表的要求制作声音文件,根据市场人员的要求设计海报和其他宣传品。为了提高游戏品质和开发效率,建议把游戏动画和声音交给专业外包小组来做,由美术和策划人员验收,这个要根据团队的技术实力和经济实力来决定。

 

市场:

 

制定市场宣传策划,提出需要设计制作的宣传品的列表,交由程序和美术制作。经常与策划沟通,更多的了解游戏内容和游戏的开发进展,以便于决定什么时候开始做宣传,投入多大的宣传力度。如果是一款在市场上比较有竞争力的游戏,当游戏完成alpha版后就可以立刻做一个Demo,联系些客户来看,这个时候可以听取客户的意见,从客户的角度看游戏的不足之处,然后团队开会决定是否根据客户的意见修改策划案。也许这个时候就会有客户决定预定这个游戏了,这个时候就要写合作建议书,合同拟定草案,并维护好与客户之间的合作关系。

 

       这一阶段的工作中工作量最大的是策划和程序。策划应当对整个游戏的开发有整体的把握,控制好开发进度。程序员要在解决技术问题上起主导作用,尽可能为大量的重复劳动制作工具,简化游戏资源的更换和数值调整,并指导其他人来做这些工作。美工应当在游戏的艺术表现上起主导作用,在这阶段开始的时候没工会很忙,到后期图基本上做完了美工的工作也就轻闲下来了,这时要辅助策划和程序员做些力所能及的工作。市场人员不参与游戏开发,担任的角色是团队对外部的接口,要做好游戏的宣传和销售工作。

 

       团队至少每周开一次例会,各部分人员在会上总结上一周的工作,并根据实际情况调整工作计划,制定下一周的工作任务。在工作中遇到的问题可以在会上提出来,大家一块儿讨论解决。

 

这一阶段的工作目标:1游戏Bata版完成,要求程序无致命BUG;2游戏宣传品设计完成。

 

第四阶段:评审

 

       对游戏进行评审,审核游戏的品质,是否需要修改,再次考虑游戏的可玩性及市场效应。

 

       考虑是否需要进行再次开发,以提高游戏的品质。比如:游戏的平衡性、数值设定是否合理,游戏用图是否需要修改,是否需要增加或删减某些功能。

 

       简单来说,就是进一步提高游戏的可玩性,但需要注意的是:要考虑清楚进行再次开发所需要的开发周期,以及人员搭配。

 

       如果确认进行二次开发,则根据修改要求,重复上一阶段的工作直到达到满意的效果为止。

 

       如果不需要或者不具备再次开发的条件,则进入下一阶段。

 

第五阶段:完成

 

       进行最终的数值调整,每次调整后都需要进行测试,力争达到消除所有BUG,同时制作产品说明书及相关文档。根据市场需求,制作一些宣传用品,以及一些周边产品,如DEMO(这个DEMO是为了做市场宣传而用的)、手机屏保、PC屏保等,并进行市场宣传。产品上市!

 

这里说到的相关文档,包括最终的策划文档,游戏用图列表和游戏用图,以及攻略、使用说明书等周边文档。建议程序的详细设计文档在此阶段进行整理。传统的软件工程中要求在初期编写详细设计文档,是为了开发大型项目,原因是在大型项目开发中,需要多人进行协作去开发一个系统,以确定最终的解决方案,避免由于开发人员的思路不统一,而使项目出现灾难性的错误。如果是中小型项目,完全可以将详细设计文档整合在代码的注释中(要求程序的注释一定要写的非常详细),因为在详细设计阶段,也要牵扯到部分代码的编写,所以从敏捷开发的角度来说,可以在一开始不用编写详细设计文档,而在第五阶段,通过注释,整理出详细设计文档,以提高开发效率。

 

以上就是我总结出的小团队游戏开发的5个阶段。我提出的只是一个框架,并不是每一个项目都要完全按照这些内容去做,每一个项目都要根据情况来灵活的确定每一个阶段具体应该做些什么。

posted @ 2005-07-31 11:53 蓝色雪焰 阅读(452) | 评论 (0)编辑 收藏
 
    很多人觉得活动策划存在是多余的,随便找个游戏策划也能写几个活动方案就可以执行活动,并且游戏策划更加了解游戏。因为我也做了一段时间的活动策划,就浅谈一下活动存在的意义,从中自然能了解到活动策划这个职业存在的意义以及游戏活动存在的价值。  

1、  能较好地营造节日气氛和让玩家开心快乐。活动可以起到短暂时间内聚集人气的效果,在节日来临之际,让大家团圆在一起,开开心心,热热闹闹的,并认识几个朋友便是实施活动的意义。  

2、  为公司赚取利润。在一天内调动较多的人上线,或在节假日吸引玩家上线,所有的在线转化成为的自然是白花花的银子。  

3、  为游戏提供了新鲜的创意。其实活动策划每天的工作和游戏策划一样,就是在寻找好的创意,比如某一个游戏开发了何种道具、合体功能啦,或者可以制作服装SHOW等等,都是活动策划需要了解和思考的。活动策划把这些创意细化、完善成为活动方案提交给程序后,就会为游戏提供一些新鲜的想法,此类想法既可以做活动来用,也许也可以出现一个新的系统。  

4、  挖掘游戏的潜力是活动策划的作用。游戏策划主要在大的方面进行规划,而活动策划则是在小的方面进行挖掘,创造,尽量把游戏的潜力发挥到极至。  

5、  活动能平衡游戏的不足。很多游戏某种道具泛滥,获得经济系统出现了问题,其实都可以通过活动来平衡。可是很多游戏却忽视活动的这个很重要的作用。  

6、  转移玩家的视线和转嫁玩家和游戏间的矛盾。有时游戏进行了大的改动的时候,玩家可能对这些改动一时不能理解,其实这时就能进行一些活动来转移玩家的视线。当玩家关注活动的时候,矛盾很快就被忘记了。  

7、  配合市场地推广和促销。充值活动就是一个很好的例子,很好的利用的话,它为游戏带来的利润是非常巨大的。
  
8、  在无法进行游戏更新的时候,活动策划为游戏添加着新意和活力。因为游戏不能每周都有,但是活动却可以每周都进行一次。  

9、  提供更多的宣传点。当一款游戏收费后,它的宣传很大部分来自于线上、线下活动。一个好的线上或线下活动能为市场提供几个甚至几十个宣传点,以此来更好地推广和宣传游戏。而且活动策划人员由于拥有不错的文笔(因为活动策划要写较好的活动介绍),所以可以同时撰写相关的活动软文。  

10、增加用户人数。这些主要由线下活动来实现,现今的游戏必然经过线下的推广和活动。进行线下的发奖等活动可以吸引人气,提高知名度及建立巩固的用户群。  

11、可以为游戏策划队伍培养人才。活动策划对于一款游戏的熟悉度并不比游戏策划差,因为只有完全熟悉才能因地制宜地挖掘游戏潜力。所以当时机成熟之时,有能力的活动策划也会转型为游戏策划。  
    因此,要把活动的作用完全发挥出来,自然需要专业的活动策划来执行相关的工作,这便是活动策划存在的意义和自身的定位。  
    现今的大部分公司的活动策划仍停留在最基本的定位之上,当市场规则和竞争更加激烈和完善之后,活动策划会突显出更加重要的作用。
posted @ 2005-07-30 10:17 蓝色雪焰 阅读(612) | 评论 (0)编辑 收藏
 
===============================================
问:小弟是想从事手机游戏策划工作,小弟有一些sms和wap游戏策划的经验,但是手机游戏策划,的起步条件是什么,和须要知道些什么,请顾问们解答?

                                                                  --  小峰

----------------------------------------------
答:手机游戏策划起步:  
作为一名手机策划首先要对它的平台—手机要有一定的了解。我们对手机的基本性能做一些分析。  

画面:  

(1)  屏幕大小:目前常用的几种大小,我们要考虑到游戏移植机型来让美工做图,比如说游戏要做120*147和120*130两种屏幕的背景,那么我们可以考虑先做120*147,然后用120*147用在120*130上。我们还要考虑游戏的要求因为有些屏幕对游戏也有很大的影响,例如128*128屏幕是正方形,而176*220就是长方形,你要根据游戏的每个步骤进行判断这些变化是不是对你的游戏和后期的移植有影响。  
    
128*128相素(S40系列  Nokia  Series  40  Nokia  N3100,  N3108,  
N3200,  N3300,  N3510i,  N3530,  N5100,  N5140,  N6100,  N6108,  
N6220,  N6610,  N6800,  N6820,  N7200,  N7210,  N7250,N6230)  
120*130相素(Sharp  Gx10  Gx12  Motorola  V750)  
120*147相素(Sharp  Xera  GZ100)  
176*204相素(Motorola  V300,  V303,  V400,  V500  ,  V600,
V80,E398)  
176*208相素(S60  系列:是指Nokia  Series  60  Nokia  N7650  
N3650,  N3660,N6600,  N6620,  N7610)  
176*220相素(S60  SonyEricssonK700  Z1010  Siemens  SX1)  
176*200相素(3G系列:是指  LG  8110    NEC  313  616    Motorola  
A835  176*206相素)  
240*260相素(Sharp  Gx20  Gx22  Gx30  Gx32)    
240*260相素(vodafone  P4  P5  P6  W日本手机    FOMA240*265)  

(2)  游戏切片:手机游戏中一般除了比较特殊的背景外,其他的图片都是使用切片拼出来的。  
      在切片的制作过程中有很多技巧可以使美工做的切片大小变小。  
    第一:使用压缩工具Image  Optimizer尽量在不影响画面的情况下减少颜色的个数。  
    第二:有时候要做很多的动作,这些动作有些动作是相同的,比如走路时人物的头是不动的是和身子不分开的这样的话有些浪费,那么需要把各个部分分解开,这样节省了很多空间而且可以把人物动作做的很流畅。但是这样的话处理起来就比较麻烦些,因为每个切片都需要定坐标和定大小,这些东西看起来很简单但是做起来比较繁杂。可以根据需要选择是不是要这样做。  
备注:切片的最上面的点和最左边的点延长可以使他们交叉(也就是每个切片的左上角)我们通常把这点定为切片的坐标点,这个点在游戏中的位置就是这个切片的坐标。  
    第三:每个切片类型相同的时候尽量把他们拼合在一张大图上,但是拼合的时候要注意2张切片的有效区不要重合,有效区就是:把这个切片放在最最小的矩形里,这个矩形就是有效区。  
    第四:尽量合理的利用切片,和程序员了解切片的加载和使用,最好的配合程序和美工间的工作。  
    第五:切片的考虑方向一般分为背景/地形,背景/地形的切片要根据游戏的本身选择,如果画面要求流畅并且要快速显示比如运动游戏的话那么背景/地形的切片要做的大些,一般是一屏背景4个左右切片,如果是画面要求精致并且对显示速度没有很高的要求的话那么需要背景/地形的正方切片要做的小些,实际大小要根据机型和游戏决定。    
(3)  图片加载:手机在显示下一个画面的时候要预先进行图片的加载(把需要用切片从手机的主存                                
(相当于电脑的硬盘)调到IM(相当于电脑的内存)然后在进行处理,但是在游戏的时候要注意不要在游戏进行的时候加载图片,当切片不使用的时候可以释放掉。一般加载和释放切片是在游戏开始或者过关场景时进行的。所以策划做游戏的时候要注意图片的加载和释放问题,尽量避免一次加载太多太大的切片。

                                                            -游戏顾问专家[岚冰]
posted @ 2005-07-30 09:40 蓝色雪焰 阅读(528) | 评论 (0)编辑 收藏
 
    手机作为一种全新的游戏载体正越来越被人所关注。根据Informa的分析,手机游戏是全球游戏市场中增长最快的部分,其产值将从2002年的2.43亿美元上升至2007年的38亿美元。而在国内市场,手机游戏行业从2003年9月中国移动百宝箱收费后正式启动,用户增长十分迅速,短短几个月的时间,手机游戏用户就增长到200万。

    在手机游戏如此迅猛的发展之下,也催生了一批新锐游戏开发商。国外比较著名的手机游戏开发商有:Gameloft、Macrospace、Jamdat等,现在一些老牌的日系游戏公司也都投身入手机游戏产业之中,包括:Square-Enix、Sega、Konami等。国内的情况比较特殊,无线服务提供商(简称SP)往往代替了内容提供商(CP)的位置,自己在提供服务的同时也提供产品。比较著名的公司有:空中网、掌上灵通、新浪(以上三家为美国上市公司)、岩浆、掌中米格等。

  

平台概述

    现代的手机从本质上说就是台微型的电脑,有趣的是我们平时常常使用的台式机当年也被称为微型计算机。但那是相对于放置在国防部、大学实验室的巨型机而言的。手机的处理能力比传统的“微型计算机”当然低多了,但这点能力足以运行小型游戏。如果你买了部最近生产的手机,用它的处理性能去应对通讯录、记事本、日历,简直就是游刃有余。

    现代的手机同时也是台标配网络连接的微机,最主要的是发送接收声音信息,同时也能收发其他类型的数字信息。这些天生的功能提供给游戏策划人员一个独特的视角,让他们有可能从联线的角度制作不同于其他平台的游戏。

    从CPU的速度和运算性能上看,现代的Java手机非常接近于第二代街机、八十年代中期的家用电脑或中期的手掌机。手机的内存容量也是有限的,大约在128KB—500KB之间,但也有些高档手机诸如Nokia  3650,拥有4MB的内存,在上世纪九十年代中期,电脑的内存也就4MB—8MB。同个人电脑相比,手机也拥有显示设备和输入设备:一个小屏幕(有些还是黑白的)和输入键盘,当然,这键盘是天生为拨号而准备的,而不是为了输入数据。

  

                  摘自nokia  forum

    以上是Nokia系列智能手机的概要描述,包括了从Series  40到Series  90数十款机型。图中可见,这些机型都支持Wap浏览、sms短消息和java应用;Series  60以上的机型还配备了Symbian的操作系统,Symbian是一种专门应用于手持移动设备的智能操作系统,支持多任务。

  

游戏种类

1,嵌入式的游戏

    有些游戏属于嵌入式,即手机买回家之后就已经预装好的游戏。这类游戏在Java手机之前早就有了,那些不支持Java的手机也会附带着几款这类游戏。比如贪吃蛇,至今已有超过五年的历史(当然只是指在手机上)。但这些游戏用户不能安装,因此流行力度较小。

  

2,短信(sms)游戏

    短信游戏在中华大地蜂拥澎湃,短信这一业务在中国开通至今已经有三年多的历史,2004年初的统计数字是:仅中国移动,今年年初每天的短信发送量在2.6亿条。信息产业部专业人士宣布,中国今年的短信发送量将达到5500亿条左右(这是包括多家运营商的统计数字)。正因为短信在中国大陆的异常火爆,也催生了SP这一新生事物,

    短消息(SMS—Short  Message  Service)是指手机之间或手机同网关服务器之间传递简短文字信息的服务,用户只要花费很小的一笔费用即能传递几十个字符的信息。SMS原先并不被看好,由于技术本身的问题,会造成较高的信息丢失率,但这一技术在民用方面却获得了出乎意料的欢迎。最主要的优势是费用的低廉,比通话费一分钟6角钱便宜了不少,而且如果是双方手机通话则是一分钟1元2。很多情况下,互相之间的联系只是为了传递某个信息,如果这是某个需要记住的信息,则通过文字传输将比通过语言传输更适合。

    短信游戏是指服务器同用户之间的传递消息的一种游戏,用户之间也可以通过服务器相互交流,游戏中所有的逻辑运算处理都放在服务器端。短信游戏很像电脑上早期的文字MUD,任何人物、环境、道具、场景都是通过文字的形式加以描述的。但由于短信一次发送量有限制(70个汉字),且如果让用户输入文字,则输入速度将远低于电脑上的MUD游戏,因此短信游戏需要有自己的游戏风格,绝不能照搬文字MUD。其实短信游戏与其说是个游戏,倒不如说是个交友社区,不管一款短信游戏最初的立意是什么,到最后总会慢慢演变成交友类的大型聊天室。

    中国市场上短信游戏的用户数字很大,SP们在短信上的收入也很高,但社会舆论的评价却非常差,任何新闻传媒一提到短信总是负面的报道。这很大程度上是由于早期监管不严造成的,业内有所谓“绑定”、“反捆”之说,这便是不通过用户同意便让他强制定购服务的意思。被偷偷摸摸绑定的用户也投诉无门,如今由于媒体报道的力度加大,中国移动本身也对这类行为加强了处罚,短信游戏已经不如从前。

  

3,浏览器(wap)游戏

W    AP是“Wireless  Application  Protocol”(无线应用协议)的英文缩写。1997年夏,爱立信、诺基亚、摩托罗拉和Phone.com  等通信业巨头发起了WAP论坛,目标是制订一套全球化的无线应用协议,使互联网的内容和各种增值服务适用于手机用户和各种无线设备用户,并促使业界采用这一标准。目前WAP论坛的成员超过100个,其中包括全球90%的手机制造商、总用户数加在一起超过1亿的移动网络运营商(包括重组前的中国电信、中国联通)以及软件开发商。

    1999年之后发售的手机大多包含一个WAP浏览器,所谓的WAP浏览器就像是个简化版的web浏览器,但这是静态的,而且支持的功能非常少,但由于对移动设备的优化,很适合在手机这种低带宽设备上的使用。

    WAP游戏的方式就是用手机访问游戏提供商的WAP站点,下载并浏览WAP页面,然后在页面的菜单上做选择,操作产生的数据将发回WAP服务器,经过处理之后再发送给你更多的页面。在WAP(1.x版)下使用WML语言,在新版(2.x版)下使用XHTML语言,主要改进就是增加了表现力。

    不管是什么版本的WAP,对用户来说表现力总是强于短信,因为WAP能显示颜色和图片。但它仍然只是个静态的浏览器,在客户端几乎无法做任何的处理工作,它所有的游戏运算必须依靠网络,将数据传输到服务器,服务器计算结果之后再通过网络返回。

    在中国市场上,WAP往往被认为是SMS的后继者,各大SP公司也慢慢将注意力转向了这种新的表现形式。就操作方式上来看WAP游戏确实很像SMS游戏,两者都将游戏逻辑处理放置在服务器端、两者的表现方式也大多通过文字(虽然WAP可配上图片,但相应的图片下载时间也久)。WAP的应用在国外情况不好,例如在欧洲和北美,大约只有6%的手机用户使用WAP,而且这一数字还在减少中。


4,J2ME(Java  2  Micro  Edition)游戏

    在Java语言中为了区分各种不同的应用,细分成了Java  2  Enterprise  Edition(J2EE),定位于服务器端程序的应用;Java  2  Standard  Edition(J2SE),定位于客户端程序的应用;Java  2  Micro  Edition(J2ME),定位于嵌入式系统的应用。

  

                Java各版本概述,摘自sun  开发文档

    其中J2ME的某些产品(包括游戏和应用程序)又称作Kjava产品,java前面加上字母“K”其实是指这类程序都较小,代码量通常都在几个K的级别,比较一下老游戏《文明II》多达70万行的代码就知道kjava产品确实够迷你的了。

    同java的其他版本比较起来,J2ME的功能显得非常有限,但对于手机上的游戏来说已经足够了,而且其用户界面也比SMS和WAP友好得多。在游戏中允许控制各类元素播放动画,而且也可以同远程的服务器进行连接。

    J2ME是一种解释性的语言,在手机上并不只有这一种语言通行,但这种语言是工业标准,被几乎所有手机大厂所支持,这就使得java用户市场相对而言最为广阔。其他形式语言,诸如BREW(在北美应用较广泛)和GVM(主要在韩国),由于受支持程度的限制,并没有得到广泛的使用。

  

5,Symbian游戏

    手机游戏同样也可以用C++来开发,手机在执行这种已编译的代码时速度更快,因为C++可做到直接对硬件进行读写操作,而java语言只能做到边解释边运行。在相同的硬件条件下,用C++写的游戏可获得更好的效果。

    C++的开发者可以关注于NokiaS60系列的开发,该系列属于smartphone,采用了Symbian操作系统,支持多任务多线程。


开发特色

1,开发团队的规模

    一个典型的电脑游戏或家用机平台游戏的开发团队大约在12到30人之间。相比而言,手机游戏的开发团队就小得多,一个典型的手机游戏开发团队人数在3-5人之间,而且,在很多地方人员的兼任情况很普遍,常常是程序员本身就是游戏策划,或者游戏策划同时又负责游戏的美术和音效。

2,游戏的开发预算

    传统游戏的开发预算都在100万至500万美元之间(这是国外的情况),大多手机游戏的开发成本都不会超过10万美元(同样,这也是国外情况)。就国内而言,这一成本将更低,游戏的开发工作是纯脑力活动,该产业最大的成本也就是人员的薪水支出,对一个3-5人的游戏开发团队来说,由于每款游戏的开发周期不会长达数个月,因此一款游戏的预算不会超过5万元人民币。

    另外,由于手机游戏的容量限制,实在是很难在这么小的地方做文章,因此投入很多并没有必要。从这方面来讲,也算是手机游戏开发的一个优势。


3,游戏开发周期

    传统游戏的开发周期长得惊人,一般都在2-3年左右,某些公司如暴雪,一款游戏的开发周期长达5年,且常常跳票,这段时间内硬件都已经换了数代。

    手机游戏的开发周期通常在1-2个月以内,当然对于熟练的开发者来说一个月就能制作数款游戏也是常有的。国内的情况更为极端,由于某些特有的销售方式(以下将述及),sp和cp们都倾向于大量的产出游戏作品,其中虽然不乏粗制滥造之作,但同时也证明了每款游戏所需时间之短。

4,联网性

    手机游戏另一个与众不同的特点是它的联网性,从一般的机能数据来看,手机平台比其他任何平台都要差,但值得一提的是,只有联网性能,几乎超过其他所有的平台,因为这是唯一能做到一开机就在线的平台。

5,平台的开放性

    家用机平台的游戏开发都必须通过硬件开发商的授权和认证,硬件开发商往往会要求较高的平台保证金,这类似于一种保证金,其含义主要有两点:其一,由于硬件平台第一步开发成本非常高,硬件开发商往往可以通过自身的垄断优势,先期从软件开发商手中获得一笔收入,这笔收入便可以充作第二步的平台宣传、市场培养费用;其二,较高的版税也可以保证合作的软件开发商有较大的资金实力,由于现在的游戏开发耗资巨大,如果没有较多资金作为后盾,很难指望能开发出满足市场期望的作品。而在手机无线领域(还包括电脑领域),你可以开发任何你想开发的产品而不必先向硬件商支付保证金,不管他是Nokia还是Sun,如果你想在他们提供的平台上做游戏开发,你不需要向他们交钱。而且,那些开发资料、手册甚至于SDK都是向开发者公开的。
posted @ 2005-07-30 09:38 蓝色雪焰 阅读(554) | 评论 (0)编辑 收藏
 
2005-5-24 10:02:04    来自: 游戏制作联盟       作者: 阿罗由·获选者

       --

游戏开发之前




游戏意味着什么?  

做为一名彻底的游戏爱好者,每天的活动有多少是和游戏有关的?  

我不是说玩游戏,而是了解,用玩来了解一个游戏需要的时间是相当长的。我们当中的绝大多数人都不可能试图精通每个游戏,甚至是各个方面最经典的系列的代表游戏,完全精通的人也可以说是绝对没有。但是每个试图加入游戏制作行业的爱好者,肯定对这些经典系列略有耳闻,没吃过猪跑还没见过猪走路吗?  

做为一名正在游戏制作者,每天的活动除了睡觉和吃饭以及锻炼身体的运动外,其他的活动全部是围绕着游戏的。我指的是每一天,甚至是好几年的时间。现在回忆起来,每当开始一个新的项目开发的时候,包括睡觉、吃饭在内都有可能在思考游戏结构的问题,恩,确实很投入。当我在开发一款武侠游戏的时候,每天一睡觉满脑袋全是些小人跑来跑去,游戏里的,我甚至清楚的知道自己在梦里正思考着如何做出改进,这样的改进会有什么效果。说实话,这的确是很有趣的经历,正如我们平常玩CS或是星际过火,做梦全是爆头或者满屏幕的农民在采矿。相信大多数人也会有这样的经历。  

当然这并不代表着你一定会做出了不起的成绩,但是起码证明你加入游戏制作的行业中来不是个错误的选择,至少你不厌倦你的工作,甚至时刻愿意面临新的项目的挑战,这就是一个好的开始。  

我要做的游戏工作  

干手机游戏策划的工作也有1年多了,前前后后也做了6、7个项目,收获或是经验当然是非常的多,我想还是多挑一些对大家多少有点作用的写写吧。  

首先我得先谈谈我对手机游戏策划这个职位的看法。在没有接触游戏制作之前,我根本不知道手机游戏还有策划的职位,呵呵,我以为手机游戏就是贪吃蛇什么的,那时这种小东西应该是一个直接用程序写的,哪里需要策划参与。后来接触以后才知道了一些手机游戏的基本知识,发现手机游戏的制作对一个策划者来说并不是完全没有发挥的空间,相反,随着高端手机的普及和手机无线网络的发展,手机游戏正在形成一个规模庞大的市场,在这个巨大市场里,游戏无疑又再次成为关注的焦点。我知道大多数人对手机游戏策划这个职位还存有相当大的偏见,似乎做手机游戏是一件很没面子的事情,要知道,现在网络游戏多火热,好歹也要往网络游戏那方面混吧,说起来也很牛气的样子。而且普遍认为手机游戏策划不够专业,都是水平比较差的人,水平好的也不会做这个了。这实在是一件很无奈的事情,手机游戏的策划要求的确不高,不高的关键是受手机游戏平台所限。毕竟手机游戏的规模及实现模式都有相当大的限制,很多时候同质化相当严重,但是这不等于手机游戏策划的水平就可以比网络游戏策划的水平差,在很多时候,一名出色的手机游戏策划需要付出更多方面的心血,比如界面的控制,带入感的培养,操作的简化等等问题。当然手机游戏策划有更大的回避余地和空间,比如在游戏图像制作,程序实现,游戏所有资源整合方面,这些对没有经验的策划来讲是非常头疼的难题,手机游戏策划就可以避开很多了。只需专心注意游戏结构和策划构思即可,当然游戏系统或是涉及到数值公式方面的问题,一样也是跑不了的,你可以简化但是不可以省。所以,手机游戏是非常适合培养策划新人的开发平台,你将比较容易将你的策划变成产品并在市场的检验中得到更多的有价值的反馈,有利于形成更加成熟的策划思路和积累游戏制作的实际经验。而这些东西是你在其他的游戏策划中难以接触到的。毕竟手机游戏策划可以说每一个人都能做一次“主策划”。  从游戏的立项,草案,开发计划,到实际的工作安排,数据处理,流程编写,系统架构,公式算法,到后期的包装,宣传,维护升级,线上活动等等,游戏的每一块骨肉都是由你创造的。而这些工作可以说和一个网络游戏的制作流程几乎没有本质的区别,你能得到的锻炼也就可想而知了。  

所以,给每一个对游戏制作抱有极大热情,正在进行手机游戏开发的同行,尤其是策划的新人们的建议就是:抛开所有的顾虑,专心投入到你的游戏策划和制作里去,你所得的收获将比你想像的还要多。  

在没有开始工作前注意些什么?  

我就按一个正常项目的开发流程来谈谈自己的一些心得吧,希望大家能多多交流学习。  
所以我不会运用什么理论,也不会书写什么专业术语,只是一次论坛上的经验交流。  

在进行手机游戏的开发之前,一个游戏策划应该先注意什么呢?  

必须先注意的不是游戏本身,而是游戏开发的环境,这个环境包括:游戏开发平台,游戏开发的搭档,游戏开发的周期,公司的预期目标等等。在没有了解清楚这些之前,根本不要想动手去做游戏。  

游戏的开发平台,至少要了解游戏的制作工具的一些特点,这包括开发平台的功能,大致的开发流程,游戏功能的实现方式,平台可变更性及各种变更的难度等等。当然这些也不是一下子全部能了解清楚的,但是基本的信息还是要掌握的,至少你不会出现,在做一款sms即时战略游戏的念头,或者象即时动作游戏如暗黑,如传奇之流实现起来毫无难度,甚至你已经可以看到游戏的精美画面和感受杀怪的爽快了。这个时候必须打住,事实往往没有这么美好,当然也没有那么残酷。多了解游戏的开发平台,才能更好的利用平台的特点,开发出最高质量的游戏,达到最佳的效益。  

游戏开发的搭档,你必须了解和你一起工作的搭档们,他们的特点或是长处以及缺点,就象了解开发平台一样去了解他们,当然搭档之间还要更多的沟通与交流,这是相当重要的环节。你必须在适当的时候和他们交换各方面的意见,包括是你的策划思路,越详细越好,其实这已经包含了对“游戏开发平台”的了解这一步,因为你会知道程序及美工方面对你策划思路的反馈,比如战斗模式的可行性,换装系统的工作量和实际图片效果等等。这些反馈其实也就是游戏开发平台的反馈,会帮助你更快的了解你所能调动的游戏开发资源。另一方面你还要了解搭档们的工作方式或是一些细节的习惯,并尽快的找到和他们配合的最有效率的工作方式。这将大大加快你们的开发进度,甚至完成一些不可能完成的任务。  

游戏开发的周期,你必须了解这个游戏项目可以接受的开发周期,或者公司的预定开发周期。并且牢牢记住这个周期。当你知道你有多少的时间可以支配后,才能确定你能在这个时间内拿出什么样的东西,这些时间够你把一个什么样的游戏做到什么程度。开发周期甚至能决定到一个游戏的类型,别忘了,游戏也是产品,没有人会给你时间一直去完善这个项目,时间一到,它必须上市挣钱。没什么好商量的。更多的时候,你也许会需要根据开发周期来调整你的游戏系统,如果你实在不能舍弃某些功能,那么就做好二次开发的计划,做好更新的准备。更冒险的事情是,你会先把某些功能预留在游戏推出后(交给推广方测试)到真正面对玩家推广的时间内进行大规模更新,这个是不推荐的,因为很容易影响对游戏的初期评价。即时最后完成的效果不错,可能因为第一印象而获得差评。  

公司的预期目标,就比较复杂了,这个跟公司的具体运作有很大关系。很难详细说明白。对策划来讲至少要先了解公司的产品线,公司有什么类型的游戏,那些类型产品做的比较好,那些产品有不足。下一步出什么样的产品符合公司的整体产品线,即能提供给推广方更多更丰富的选择(做手机游戏必须考虑的问题,同质化太严重,良好的产品线能大大提高公司的竞争力)。当然大规模的网游公司也必须考虑这个问题。公司的短期目标往往变化的比较快,很多时候是根据要求来做出一定类型的游戏,策划人员必须能做到随机应变,随时做出能满足要求的产品。
posted @ 2005-07-30 09:33 蓝色雪焰 阅读(844) | 评论 (0)编辑 收藏
 
        创业成功路上有四盏明灯。

一是方向之灯。
        方向就是目标。制定目标,是意志朝某个方向努力的高度集中。从渴望的一个清楚的构想开始,把目标写在纸上,并定出达到它的时间。制定目标可以带来我们都需要的真正的满足感。

二是交往之灯。
       无论你的目标是什么,都要计划跟那些更懂的人发展关系,把他们作为努力的榜样,不断调整、改进自己的工作。

三是梦想之灯。
         成功者与失败者之间最大的区别,通常并不在于毅力。许多天资聪颖者就因为放弃了,以至功亏一篑。然而,成就辉煌的人绝对不会轻言放弃。有人说得好,成功者不过是爬起来比倒下去多一次而已。

四是进取之灯。
         不时重新看看目标表,如果认定某个目标应该调整,或用更好的目标取而代之,就要及时修改。
posted @ 2005-07-28 16:29 蓝色雪焰 阅读(261) | 评论 (0)编辑 收藏
 

§1.1 公平交易系统基本分析

(1) 设计公平交易系统的目的

最基本的目的:
促进游戏中玩家的交易
在日常交易中,正常(公平状态下)的交易量要远远大于非正常的交易量(玩家出于骗人的目的和乐趣而进行的交易)。

当交易处于公平状态下时,玩家交易的愿望不会由于系统的原因的失败,此时交易量才会在最大范围。如果交易处于不公平的状态,确实可以增加交易的乐趣,或者可以作为一个玩点,但是却会遏制正常交易的进行。所以我们要使用公平交易系统。

(2) 交易方式

·物、物之间的交换;

·钱、钱之间的交换;咋听起来比较奇怪,但是在使命中不同的种族拥有不同的货币。

·钱、物之间的交换;

只要没有违背双方意愿的交易系统我们都可以称之为公平交易系统,单方面给予物品也是一样。

(3) 影响公平交易的因素

·由于系统的操作方法不了解而自己导致的不公平交易;

解决方法:简化交易之间的操作,并且尽量做到在公司所有的游戏中交易方式是一样的。

·由于交易过程中对方突然更换物品而自己没有及时中断交易产生的;

解决方法:对方如果更换物品即系统自动中断交易。

·由于对物品价值不了解而产生的;

解决方法:全屏交易频道的存在,使得其他玩家在平时即可接触到一些物品的价格。

·由于多次重复的失败的交易行为导致急躁而交易产生的;

解决方法:系统自动给予提示,如果同两个人之间交易连续中断3次,系统即提示玩家注意对方所摆放的物品的真伪。

·由于一些高价值物品无法一次完成交易的;

解决方法:如果确实有这样的物品存在,比如点卡这些,可以通过系统公正的方法来解决。

·违反玩家意愿的交易确定行为,一般为外挂造成。

解决方法:这个只能在构造系统中尽量减少不安全的因素,并对外挂进行有效监督。

总之,在公平交易的同时系统应该注意系统提示的制作,并且要注意提示的醒目而且又不能破坏游戏的整体感觉。但是需要注意的是:在游戏中正常交易行为的发生要远远大于异常交易的产生,包括玩家之间的骚扰,所以不能够为了尽力做到公平而失去了交易的连续性和易用性,这就失去了交易系统的基本目的。

(4) 公平交易的漏洞

公平交易系统最大的漏洞就是:几乎在所有的游戏中,复制物品的BUG决大部分是通过公平交易系统进行,预防的方法有:

双方交易的时候服务器要进行即时存盘。

(5) 公平交易的证据

另外为了GM工作的方便,在公平交易的时候需要在客户端生成LOG,当然通过LOG还可以分析玩家的消费倾向等,当然用log分析是麻烦了一点,也可以直接dump相应的数据。

§1.2 界面设计

界面设计中的注意点:

·交易界面的位置不能与物品界面有冲突;

原因:金钱的查看,以及玩家与自己现有的一些物品做比较。

·交易界面最好不要与人物属性界面有冲突;

原因:玩家在一些交易当中需要参照自己的属性。

·聊天消息框:

原因:玩家在交易的时候需要彼此的交流。

·系统消息提示框

原因:玩家在交易中的时候用于一些系统消息提示。

·交易界面与物品界面之间的相互位置关系需要满足多数玩家(右手习惯玩家)的操作习惯。

·交易界面应该将双方的物品位置用明显的分界线分开。

原因:防止玩家混淆双方的物品或者金钱。

·交易中的确定等按钮要与界面本身底色有明显区分,每个按钮的两态要有明显区分。

·并且需要考虑游戏中最高价值物品与一般等价物间的换算关系,并且基于此换算交易界面需要有足够空间。

·交易界面的所有空间要在一页内显示,即交易界面中尽量不使用物品栏翻页功能。

以上不是固定的设计,设计者可以根据不同游戏的要求来要求。

§1.3 界面因素

(1) 一般需要

·对方名称:用于显示对方的名称,并起到避免发生交易对象错误的问题。

设计要点:这个和其他地方不同,如果玩家当中名字有空格或者其他空字符时,系统应该自动加上一些醒目的特殊字符,有需要时还可以做出醒目的系统提示。

·金额栏:用于显示双方交易的金额。

设计要点:显示金额的时候应该加上千分位的显示,如果有需要在金额后面显示此金额的单位。

·双方的物品栏:用于显示双方交易的物品。

设计要点:物品栏的数量要能够符合大部分或全部交易行为的最小需要量,即贵重物品与一般等价物之间的交易,尽量不使用翻页功能。但是如果物品栏实在不止一页,提示玩家翻页的效果要做的非常明显,并且也需要提示玩家目前所翻到的页数。

·金钱确认按钮:用于确认金额。

设计要点:一定要做的特别醒目,以方便玩家确认自己的金额。

·交易确认按钮:在交易双方确认交易物品和金钱后,点击按钮即可完成交易。

设计要点:注意点击按钮的时候不同的提示。一般有:

1、  对方还没有完成确认自己的物品。

2、  自己没有确认好金钱的数量。

·申请交易按钮:用于向对方申请交易,或同意申请,以及打开交易界面。

设计要点:注意申请交易之后的鼠标指针的变形,还有如何申请交易的系统提示。

·其他交易项目:如果是养宠游戏,那么交易界面中还应该专门添加用于交易宠物的栏目。

设计要点:如果是可以改名字的宠物一定要显示其原来的名字,并且可以查看宠物的属性。

·关闭按钮:用于关闭交易界面,即取消交易。

设计要点:最好不要设计在容易点击的位置,否则玩家会误操作关闭界面

·物品悬停信息。给出物品的详细信息。

设计要点:也可以使用其他方式给出,但要与整体游戏做到统一。

(2) 其他需要

·玩家的等级:提醒玩家交易时注意是否使用的是小号;

· 玩家的负重:玩家在交易时受到限制的因素之一;

·玩家的头像:需要突出社区时,也在一定程度上避免了玩家交易对象错误;

·玩家的其他属性:对方的性别、职业、种族等等,能够使玩家更好更快的确认对方是不是自己要交易的对象

 

§1.4 交易操作

·最好不要使用拖动交易物品进入交易框的方式,防止丢到地上,如果实在需要采用也没有关系,只要加上贵重物品提示功能即可解决。

·操作设计要求:玩家在游戏过程中能够非常快捷的与他人实现交易或者提出交易请求,对方能够得到请求明显准确交易消息。

·如果两个界面的位置较远则需要考虑物品在两个界面中的移动需要省时省力,而且这个操作要考虑不与游戏本身和物品界面本身的操作相冲突。

·玩家确定交易物品以后,无法再更换物品。

·玩家在交易进行阶段对其他请求一概拒收,以免破坏交易的连续性。交易的弹出消息也需要考虑到对玩家游戏连续性的破坏。即要考虑到玩家恶意骚扰的交易请求,这在即时类游戏中的影响尤其大。

解决方法:以往弹出提示框的方法采用显示提示消息的方法来提醒玩家去点击提示框,而不是直接弹出界面需要玩家进行确认。

§1.5 一般交易流程

1.玩家点击交易请求按钮,鼠标指针变形,系统提示:点击对方进行交易。

2.玩家点击对方,发出交易申请,系统提示:交易申请已发出。

3.对方接受到交易请求,点击提示消息后,弹出提示框提示:XXX请求与你交易。点击提示框确定,同意请求,双方进入交易界面。点击提示框取消,拒绝请求。发出请求方得到系统提示:对方拒绝交易。

4.进入交易界面,同时物品界面打开。上方或屏幕非正中心一方为对方,下方或屏幕中心一方为自己,单击物品或拖动物品至交易栏。在金钱输入栏输入金钱点击金钱确定按钮。最后点击加以确定按钮。等待对方。

5.如果输入金钱后没有点击金钱确定而点击交易去确定,则系统提示或弹出提示框提示:请点击金钱确定按钮

6.如果输入的金钱大于身上现有的金钱时,系统提示或弹出提示框提示:身上的金钱不足

7.对方进行第四步正确操作,点击确定按钮,交易成功

8.交易过程中任何一方点击取消按钮,交易失败

9.交易成功或失败均关闭交易界面。

10.交易过程中物品栏与交易栏的拖动为单方面,即只能从物品栏将物品移至交易栏

11.交易过程中金钱只能输入一次。

12.每放入一个物品,交易界面刷新一次,交易的一方每放置一样物品,在对方的交易界面上也会显示此物品对应的图像。

13.金钱确定后交易界面刷新一次

14.交易过程中,一方有位置移动或移动一定范围外后,交易失败

15.一方打开与交易界面相冲突的界面时,交易失败

以上是一般游戏的公平交易设定流程,如有特定需要,可以在此基础上做一定改动。

§1.6 一般按钮功能

l         确定金额按钮:(但是最好考虑使用鼠标点击输入框即会自动弹出输入框,要求玩家自动输入金钱的数目并点击确定,这样就可以取消确定金额按钮的设定)

玩家输入金钱之后即可点击金钱确定按钮,这样输入的金额将会显示在对方的界面上,而且输入完金额后将不能对输入的金额再做改动。如果一方没有确定金额或者没有输入任何金额,那么在对方的界面上“对方金额”将会显示为0。

确定按钮一共有三个状态:

·没有输入金额时,按钮是不可以操作的。

·输入金额后,按钮自动变成可以操作,使用醒目的颜色来做这个按钮,以便提示玩家。

·点击按钮后,被点击的效果。

·确定交易按钮:

点击此按钮之后即可向对方提请交易,对方也按下确定按钮后,系统提示交易成功。当一方按下确定按钮之后,那么另外一方将会收到系统消息:对方同意交易,请确定。

·帮助按钮:

点击此按钮将会弹出和交易相关的帮助主题。

·取消按钮:

点击此按钮之后此次交易将会被取消,

·取消方收到的系统提示为:您取消了交易。

·对方收到的系统提示为:对方取消了交易。

§1.7 其他设定

·物品交易即时物品是摆在交易界面上,实际上此时物品还是保留在玩家自己的身上。

·双方的交易界面超过一定的距离即会自动取消。

·如果对方放置不下物品,则交易自动取消并作出提示。

·玩家死亡的时候系统会作出判断,如果交易没有成功,那么交易将会先被取消,然后交易的东西也算身上的物品。

·如果玩家正在拖物品的时候交易界面关闭。那么物品将会自动回到物品栏中。

·如果道具或者宠物可以更改名称,那么在交易的时候要以醒目的颜色标明此物品原有的名称。

·另外系统选项当中玩家可以完全禁止另外一方交易的申请。

§1.8 公平交易系统的细节表现

以下由设计人员自由取舍:但是在设计的时候有重要的一点,那就是公平交易在游戏中属于经常性行为,因此在普遍层次上的不要做的太繁琐,当然一些额度最大的交易可以做的好一点。比如系统频道的公告(当然没有必要公告出双方的名字)

·在公平交易系统可以加入音效的表现。

即游戏在公平交易进行的时候伴随着音效。

·在公平交易系统可以加入光效的表现。

比如超过多少金额的交易完成将会有礼花出现。

·可以在系统中发布公告。

一些特殊物品交易成功可以在系统中发布公告,比如点卡交易等。

·加入双方表情动作

交易进行或者交易完毕后双方通过动作进行致意。

posted @ 2005-07-28 16:15 蓝色雪焰 阅读(632) | 评论 (1)编辑 收藏
 

序:以下内容仅代表个人观点,观点来源于对这款游戏3个月的亲身经历以及参阅大量官方新闻、玩家观点、甚至是有关联的动漫作品后综合得出。

1.数字化评分
1.1 评分说明:
1.1.1 评分标准:
 a.最低得分-10分,最高得分为+10分。导致玩家离开给予负分,能吸引玩家继续游戏给予正分。
 b.能直接决定玩家去留,给予8~10分
 c.对玩家的去留产生催化作用,给予5~7分
 d.对玩家参与游戏积极性产生影响,给予2~4分
 e.对玩家影响比较小的调整,给予0~1分
1.1.2 更新分类:为了便于分析,本人将收集到的官方公开信息分为4类:重大更新、游戏调整、游戏介绍、其它公告。
 a.重大更新:添加新内容,增加新元素。
 b.游戏调整:对游戏进行调整。
 c.游戏介绍:针对游戏玩点与功能介绍。
 d.其它公告:其它对游戏有影响的公告。
1.1.3 其它说明:所有评分的内容来源于官方公开信息,评论部分则是100%游戏内的真实体验。(每天平均在线12小时以上,连续近3个月)虽不敢妄言所述是梦幻国度的绝对真相,但却是本人3个月来的亲身感受。为了防止因个体差异而可能导致的误差,本人耗费巨大精力,接触上千名梦幻国度玩家,并在游戏内或游戏外了解他们对此游戏的感受,并在3个月内与上百名梦幻国度玩家保持比较密切的联系,经常交换对于游戏的看法,以上就是本文的前期准备。
1.1.4 基础分值:梦幻国度可以说是2004年度玩家最期待的国产网游之一,在盛大处心积虑的宣传和诱惑下,在广大梦幻玩家心里,它的初始分值应该在90分以上。为了便于计算,暂定90分。

1.2 评分清单
2005-1-19    《梦幻国度》敢说才是新派宠物!
类型:游戏介绍   评分:+2  总分:92
评论:当初的敢说,官方可是宣传了近半年,但是呢?直到今天我们也没看到当初宣传的“敢说”。期望与现实之间的冲突,结论就是梦想的破灭。(关于当初宣传的“敢说”,有心人请自行前往官方网站查阅相关资料,这里不转贴占用篇幅了,下同)
    其实,梦幻国度的敢说跟RO里的宠物、怪物说话没有太大的差别,甚至还不如RO里的宠物与怪物说话。RO的宠物与怪物说话仅仅用2个xml文件就实现了比较完善的“敢说”内容(比梦幻国度现在的“敢说”内容丰富很多,而且触发条件也丰富一些),而且自由度方面也比梦幻国度的好(玩家可以自由DIY,可以说RO的宠物说话才是真正实现了我的游戏我做主),最主要的是这个功能是在2003年初就有了。梦幻国度把RO 2年前的东西现在拿出来炒冷饭,还说什么新派宠物...我对盛大除了佩服也真的是无语了。终于明白牛为什么会飞了...同时请大家跟我BS新干线,把RO这样的好游戏运营得如此平庸,简直是暴殓天物!!!(新干线老是把问题推给外挂,坦白说外挂的影响比较小,关键还是新干线高层对游戏缺乏必要的爱心。即便过了2年多了,RO比现在国内Q版网游也一点儿不逊色,甚至在很多方面都比后出的游戏还完善。中国的所谓自主研发大大们抄完了传奇,估计下一个目标就是研究怎么抄RO,现在盛大和QQ都对RO下手了,而新干线手里捧着聚宝盆却还在发呆...跑题了,话题打住!)

【废话】宠物/怪物说话毕竟是梦幻的一个特色,虽然是RO N年前玩剩的,更让人失望的是,梦幻的宠物说话不仅没能达到RO的宠物说话程度,而且还大大的退步了。抄都抄不好,不知道该怎么说好。

2005-1-22   警告:不要在宝宝心烦的时候招惹它
类型:游戏介绍   评分:-5  总分:87
评论:从图片我们可以看出2点:a.游戏研发之初玩家是可以同时带2只宝宝出现的;b.人物可以与宠物进行简单的人机对话。但现实呢?我想不用再说什么了,这点期望也不知道何年何月能实现了。就目前来看,根据官方公布的下半年研发计划,今年内是没有希望了...
【废话】纯粹的虚假宣传,严重误导玩家。

2005-1-24  《梦幻国度》1月25日火爆内测 五大旅团出炉 
类型:其它公告   评分:+4  总分:91
评论:第1次封闭内测据说很抢手,毕竟是期待了整整1年,而且是盛大世纪录3部曲的最后1章,相信任何玩家都无限期待。从参加过1测的多名玩家那里我了解了大概:严格的说,1测也就是游戏功能性测试,大家所熟知的α测试阶段。游戏中怪物直接爆药、爆装备、金钱、卷叶,6月底,当我再次跟1测玩家聊天的时候了解到新的变化。在他们眼里,梦幻国度最美好的时期正是这个1测阶段,后面是越改越乱,越改越差。
【废话】曾经的梦幻国度虽已远去,但体验过的玩家永远不会忘记那一个月的美好时光。

2005-2-25   公告:封闭内测玩家可直接登陆1.2版测试服务器
类型:其它公告   评分:-5  总分:86
评论:在这个公告中我们可以看出几点:
    a.1测的测试工作基本上告一段落了,时间持续了仅仅1个月;
    b.预告了2测试开放时间为3月16日;
    c.扩大测试人员数量;测试人员除1测人员之外,按男女1:3的比例重新招募新的测试人员;
    d.除了以上说明外,1测与2测并没有明确的测试目标说明,一切都以“版本优化及配平调整”模糊带过。
    就功能性测试范围的BUG而言,现在公测阶段依然存在的包括:幻灵师的卡技能、猎奇士的卡招式、装备变面粉或资源、掉线部分回档、修理装备不能等等问题。而一大堆问题经过了1测,走完了2测,伴随着公测一起出现在万千玩家面前,原因何在?两个字:时间。回顾1测、2测,让我感触最深的就是梦幻国度项目组一起在与某个时间赛跑。无论出现任何问题,无论问题有多严重,一律都被放下了,因为时间紧迫。而存在的问题,我作为1名2测玩家,从GM05第一次上线收集问题开始,每次都不厌其烦的重复跟他说过无数次一些常见问题,但每次的结果都是遥无音讯。问题依然,BUG依旧,一切都没有改变。请允许我再废话几句:梦幻国度的研发时间据说有3年之久,既然3年都等过去了,为什么还要急这一时三刻?这里请让我再举一个例子。暴雪的游戏之道:无论自己失言多少次,无论让痴心的玩家失望多少回,只要游戏还存在问题,就决不上市,也正因为暴雪的这份坚持,十年来它赢了玩家的一致拥戴:暴雪出品,必属精品。相信这话,任何一个真正的玩家都不会陌生。
【废话】1测留到现在的众多历史遗留BUG相信任何一个梦幻国度的玩家都会觉得是不可思议,毕竟从1测开始就有无数玩家反映过的问题,到了现在收费运营了依然存在,加上层出不穷的新问题,-7分不过分,但考虑到梦幻项目组对于部分问题的解决速度还算快,应该加+2分,(比如合成数量出错等问题很快就解决了)综合得分:-5分)
   
2005-3-14 头饰显示系统加入 1.2版测试延期至3月25日
类型:游戏介绍   评分:+2  总分:88
评论:原定3月16日开始的2测,由于加入头饰显示系统而推迟到3月25日。在公告中我们还可以知道2测与1测的细微差别:a.增加了送信任务与采集任务;b.游戏内物品掉落做重大调整:不直接爆物品,仅仅是爆资源与消耗品(如香草面包粉)。另外,在关于延期的原因中,官方使用了“即使全日无休的连续工作,实际工作量也超过了预期”,这里让我感受到的依然是那两个字:时间。正如上面所分析的:梦幻项目组一直在与某个时间赛跑,全组上下长期处于满负荷紧张工作状态,我们先不谈人的体力与精力是否能支撑这样的消耗战,我只想问问这样的疲劳战下工作效率将任何保障呢?联想到一系列因为更新而出现的新问题,这难道还不能发人深省吗?
【废话】增加了梦幻国度的一个玩点:收集漂亮的头饰,虽然截止7月初累计出现的外观头饰还不到20款,但好歹添加了这个功能。真是不容易!

2005-3-18 内测满意度上升至86% 公测日期预计4月中下旬 
类型:其它公告   评分:-5  总分:83
评论:前面我们分析出梦幻国度项目组一直在与某个时间赛跑,这个时间就是公测时间,虽然文中说得比较婉转:4月中下旬,但请大家注意一下这个公告的发布时间:3月18日。而2测的开始时间是3月25日。看出问题了吗?在游戏的内测都还没有完结之前就已经确定了公测日期,那么这个所谓的2测也就成了名副其实的走形式。而之前一直困扰我的问题也引刃而解了:很多问题梦幻项目组是知道的,但时间有限,人手有限,所以即便知道也回天乏术。我想这就是为什么很多内测已经反映过多次的问题依然留到了公测的真正原因吧。坦白说,作为玩家,我敬佩梦幻国度所有研发人员,一边要顶着玩家的漫骂,一边还要听从高层的胡乱指挥;一边看着从玩家那里收集到的无数BUG清单,一边看着高层发下来的时间表,其内心的矛盾与压力,相信不是普通人能承受的,更何况梦幻国度是他们3年的心血。
【废话】这个内测满意度86%应该是1测的投票结果吧,而且根据在下从多位1测老玩家的反馈来看,这个投票的真实性也比较高。的确,1测是梦幻国度的黄金年代,2测次之,公测则每况愈下...而仅仅通过1测的玩家投票,在2测(游戏的数值平衡没进行测试前)之前就已经确定了公测时间,我想这个2测也只能算走形式吧,作用大家也都看到了,2测从开始3000多人在线,到目前不到100人在线,差距何其大啊。而盛大的这个谎言也在不经意间自相矛盾了。曾经说内测玩家满意度90%才公测,可第2内都还没开始就已经把公测时间确定了,这个,也太假了吧。对于这样欺骗玩家的行为,相信是所有真正热爱游戏的玩家所痛恨的。

2005-3-25 公告:《梦幻国度》1.2版测试正式开始!
类型:重大更新   评分:-5  总分:78
评论:2测终于开始了,根据事后从1测玩家那里了解到的关于2测与1测的差别,我这里说明一下:
a.增加了枫叶岛地图。
b.增加了送信任务、挖宝任务。
c.装备属性、怪物爆率、职业技能学习限制与1测差别很大,几乎是全盘推倒重来。
d.取消了东芝麻的BOSS:言灵巨石。这个取消的言灵巨石哪里去了呢?它就是后来公测阶段搞活动用的炎魔危机的主角。根据1测玩家的消息:东芝麻的言灵巨石在1测时曾经很有意思。打死一次后会变成2只一样的但小一点的BOSS,并且会逃走,然后需要再打死,然后会变成4只更小的,同样会边逃走边攻击玩家,只有把那4只都杀了BOSS才会爆东西。据说爆的东西非常多,杀这个BOSS的时候需要很多玩家配合在可能杀掉,根本不是1、2个玩家就可以应付的。而看看现在呢?即便是官方一再否定被玩家屠杀的终极BOSS,其参与杀BOSS的人也就2、3个人而已,相比而言,这个言灵巨石当初的设定不可谓不妙,可惜已经被改没了,哎~~~
    从1测玩家那里我还了解到一条重要的消息:1测与2测的怪物爆率、装备属性、职业技能学习限制差别很大。也就是说1测是纯粹的功能性测试,即α版本测试。而2测的重点将是数值平衡与稳定性测试,即β版测试。2测的时间同样只有1个月,1个月做功能性测试我相信时间可能足够,但是1个月要做好各项数值平衡,这根本就是不可能完成的任务。也就是说公测开始之前,悲剧就早已注定。更何况在实际操作中,短短的1个月,官方把大部分精力都放在了10级以下新手的游戏辅助完善上,根本就没有多余的精力来进行数值平衡的调整。(我之所以在离开梦幻国度的时候执意要完成游戏内难度最大的任务,就是希望用事实证明自己的分析与推理。)
【废话】还有什么好说?梦幻国度的更新总是去其精华,留其糟粕。想想英雄年代的陨落,我也没什么好惊讶的,早习惯了。对于胡乱修改游戏的做法,作为一名热爱游戏的玩家,对于官方一再丢西瓜拣芝麻的做法是看着心寒,想着心烦。

2005-3-27  公告:内测首次“停机集中调整”
类型:游戏调整   评分:+3  总分:81
评论:本次停机的主要原因是调整1-15级新手阶段的配平问题,但事实却不仅仅如此。记忆中好象除了增加了新手获取薄荷水的任务外,还调整了装备的属性。记忆最深的是之前需要10来下才能杀死的钉耙猪,更新后只要3、4下就搞定了。为什么呢?打个比喻吧:停机前18级的宝石属性是7-8,集中停机后就成了18-22,两个宝石,总属性差了22-28,对于一个20级不到的新手来说,突然增加了这么多属性,自然练起来轻松很多,可惜好景不长,这样的幸福时光持续了1周左右,然后恶梦第1次降临。
【废话】开始重视新手的生存状况,对于新手来说这次的调整效果比较明显,考虑到其后的新手辅助系统的建立,可以说这算是梦幻国度的一个亮点,+7分,但考虑到其间装备频繁的巨幅数值调整,-4分,综合得分:+3分)

2005-4-4   公告:第二次“停机集中调整”
类型:游戏调整   评分:-6  总分:75
评论:这次更新导致了大量玩家离开游戏,是2测第1次出现大量玩家集体抗议,抗议无效后被迫放弃游戏的更新。停机重点调整内容为“宠物合成系统”和新手配平问题。通过第1次和第2次集中停机来看,梦幻项目组对新手阶段,特别是1-9级是特别看重的。而且的确修改得比较到位,但除此之外,问题就比较棘手了。首先是大幅度调整了装备属性,其次是对两个职业都进行了比较大的调整:猎奇士之前的刀刀抓狂改成了超低几率出现,但实际测试中攻击100下都无法使出1下,几乎是废了这个技能。且增加了攻击中出现MISS,而且出现几率相当高。不仅普通物理攻击出现MISS,连魔法攻击也出现MISS,而且这个问题一直到7月份收费为止都没能很好的解决好。同时幻灵师的技能攻击也出现了MISS,大概十下有2~3下MISS。(幻灵师的技能MISS在很短的时间内就取消了,但同样是魔法攻击属性的战士技能MISS却保持到了7月)之前练级的感觉怎一个爽字了得,而现在一方面大幅度降低的装备属性,另一方面又出现了MISS,在巨大的反差下,很多玩家首先想到的是抗议,有不少玩家把长乐城下方的两个城门堵住了以此抗议,(为了避免玩家堵门,官方很快在更新中增加了穿人的功能)在抗议无效后,不少玩家默默离开了游戏。坦白说,如此大幅度的调整游戏属性我也是第一次遇到,况且当时官方已经明确说明了4月29日公测,可到了4月7日还这样一会儿装备的属性是18-22,过了2天就变成了7-8,玩家的心理落差有多大?我想那么多人离开应该能说明什么吧。这已经超出了部分玩家的心理承受范围。那段时间我也郁闷了几天,好友之间不再练级了,大家一起聊天,回忆之前快乐的一周。游戏内弥漫着伤感与无奈,大量玩家与好友在聊天,很少有人还在冲级。之前热闹的梦幻国度开始急速降温...
【废话】数值平衡需要严谨的通过大量实验与长期的观察分析得出结论,除此之外更重要的是要有一颗爱心。对游戏的热爱,对玩家的热爱。如此天上地下的胡乱修改,一方面忽略了玩家的感受,另一方面也暴露了梦幻国度项目组的不成熟与不理智。新手配平的确是新玩家带来了便利,+4分,但一系列改动给-10分一点不冤枉,综合得分:-6分

2005-4-12 迎公测加大测试力度 2000个内测账号增量发放
类型:其它公告   评分:+3  总分:78
评论:为什么发这2000号我想所有人都知道,那就因为4月7日的更新导致了大量玩家离开游戏,为了补充2测的在线人数才出现了增量发放帐号的公告。我想说的是早知今天,何必当初呢?
【废话】这次的人员补充总的来说还是在一定程度上增加了人气,虽然很有限。网游毕竟还是需要人多才有意义,这次的亡羊补牢策略比较及时,值得肯定。

2005-4-13 公告:4月14日上午9点开始实行5倍经验
类型:游戏调整   评分:+4  总分:82
评论:受4.7更新影响,游戏内玩家情绪一直很低落,大部分人都没有练级,而公测时间早以确定,该怎么办呢?方法就是从新唤起玩家练级的成就感。于是乎5倍经验开始了。在活动开始后,玩家也陆续从低落中走了出来,大家又开始冲级了,在冲级的同时渐渐忘记了不愉快的事。也就是在那段时间我的幻灵师等级从16级一跃到了34级,猎奇士从0级到了25级。
【废话】从结果来看,这个活动是成功的,一方面缩短了数值平衡测试的反馈周期,另一方面也消除了游戏内的阴霾,是个一举两得的好策略。

2005-4-24  封闭测试区恢复正常经验值
类型:游戏调整   评分:-8  总分:74
评论:4月23日官方进行了一次更新,这次更新同样导致了大量玩家离开游戏(主要是幻灵师职业的玩家)。本次更新调整了MP的消耗计算:由之前固定MP消耗改变为动态消耗计算。举例:4级冰晶之前是8点MP固定消耗,调整为1倍消耗,即:1%MP消耗,以34级幻灵师MP2106为例,改版前可以放264次冰晶,改版后只能放100次冰晶。改版前满MP176次电光火石,改版后只能放53次。改版前后法师练级效率相差3倍左右。而且随着等级的提高,这个改动的弊端会越发明显。由于内测的钱很难赚,玩家几乎都靠搭帐篷来练级,所以如此改动让幻灵师无所适从。同时增强了怪物的AI,之前幻灵师引怪、卡怪,烧怪的方法失效了,练级的效率低了很多。再有就是同一坐标点只能允许有一个玩家,之前组队的玩家都可以叠在一起,现在也不行了。当然了,后面两点更新是完全正确的,但关于幻灵师的MP消耗就让很多幻灵师玩家无法接受,在大家都在期盼官方改回去的时候,另一个坏消息悄然来到。官方说幻灵师的电光火石有BUG,导致中间和周围都是100%伤害,现在修正了这个BUG,也正是这一系列的调整,加上当时有传言2测结束后官方会删号,大量玩家开始离开2测,剩下的不到十分之一。
    内测关闭之前的一次更新明明修正了电光火石的BUG,但公测的时候却没有采用修正后的最新版本,为什么呢?难道仅仅是为了触成梦幻国度5.5事件做前期铺垫?
【废话】想来感慨颇多,2测很多好的更新没有保留,而不好的地方却留到了公测,曾经内测区就已经更新为不能刷信了,但公测开始后变成可以刷;曾经内测结束前就已经修改了所谓的电光火石BUG,但公测又变回来了并且制造了5.5事件导致第1批玩家大规模离开;曾经内测时战士打怪不存在发呆的问题,到了公测变成打怪钱会先傻看怪物几秒,然后再动手...如此这般的改版太多了,考虑到也有部分适当的调整,综合得分:-8分)

2005-4-29 下午2点公开测试 内测二区暂时关闭
类型:游戏调整   评分:+4  总分:78
评论:在公测前夕关闭内测区让内测玩家能投入到公测中去发挥余热,坦白说,效果很明显,大量这2天到公测体验的内测玩家都在功成名就后留在了公测区。
【废话】正确的策略,我也是这个策略的牺牲者,哈哈~~~不过实事求是的说这个策略相当成功,不少内测玩家因此留在了公测区。

2005-5-3 梦幻精灵发梦幻精灵帽
类型:其它公告   评分:+0  总分:78
评论:记得官方曾经说过:梦幻精灵就是游戏内的代言人,她们的义务就是尽可能的帮助其它玩家解决问题。我所在四川1区2服的梦幻精灵有两人,而其中一人我曾经与他组过队:爱情密码。坦白说印象不是很深刻,4月30日到5月3日经常能碰到他,但在领取梦幻精灵帽之后就消失了,最近几天我又碰到他了,他依然是5月3日的等级,还是20级左右,简单的聊了2句:发现他的确很久没玩了。
    作为官方在游戏内的代言人,在领奖后就从游戏内长时间消失,这样的代言又有何意义呢?在这1个月中,大量玩家经常会M我问一些关于游戏的问题。(谁叫我名字就叫内测玩家呢?更重要的是我是那个服第1个成立旅团的团长)刚开始我还试探性问他们:你们找梦幻精灵啊,他们是专门帮玩家解决问题的。而答案几乎都是一片茫然,然后还问我什么是梦幻精灵,怎么找他们。我看话题不对,干脆不说了,直接把他的问题解决了事。游戏内的代言人应该是能经常在线的,善于帮玩家解决问题的,应该是该服的玩家拥戴的,其知名度应该让大部分玩家所知晓的,而官方评选的梦想精灵,在游戏内又有何人气可言呢?这样的梦幻精灵,其意义又在哪里呢?
【废话】想法是好的,但操作过程中走样了,效果大打折扣。

2005-5-5 热心玩家支持 幻灵师“电光火石”问题已修正
类型:游戏调整   评分:-10  总分:68
评论:内测电光火石就修改过一次,当时玩家走了80%以上,才过了几天居然又走回头路,该怎么说好呢?也许真的是“长期的全天无休连续工作”惹的祸。在出现这个事件后,我已经是团长了,当时人心惶惶,虽然我一个劲的向团里的幻灵师保证:一定会改回来的,大家相信我吧,我研究盛大1年多了,我了解他们。然后很多人问我:什么时候改回来。我只能跟他们说:等到大量玩家开始离开的时候就会改回来了。(同样的话在内测时认识的朋友东月所在的QQ群里我也说过。)
    虽然一切都跟我预想的一样按部就班的发生着,但离开的朋友再也没有回来...即便后来我一个劲跟他们说法师如何厉害,练级比战士快多了,雪牙威力提升了,火的威力也改回来了,但依然没有半点效果,当时我所在的旅团,有3位元老因此离开,而且再也没回来,只能在QQ群跟他们聊天,而无法在游戏内再见到他们。为什么呢?我追问了3位离开的朋友:a的理由是工作忙,没空玩。b的理由是他现在玩劲乐团,不想回来了。 c的理由是要陪老婆玩QQ幻想,暂时没空。以上三个答案说明什么呢?现在玩家所面对的诱惑很大,一旦离开了这个游戏,就可能被其它游戏所吸引,当他们喜欢上其它游戏的时候,即便官方修正了之前的失误,但造成的损失还是无法弥补的。
【废话】同一个问题可以在短期内犯两次相同的错,不知道是不是盛大首创。

05-5-8  响应玩家建议 新手技能效果将做普遍提升
类型:游戏调整   评分:+5  总分:73
评论:公测才1周就出现大量玩家离开,这样的事无意给火热的公测泼了一瓢凉水,为了安抚留下来的玩家,官方最大限度的做出了让步:提高了两个职业的群攻技能伤害。当然了,受益最大的还是幻灵师。
    虽然最终回到了正道,但经过这一折腾,梦幻国度的人气减弱了不少。如果当初知道能预知结果,又何必作出如此轻率之举?还是还句话,缺乏对游戏的爱,缺乏成熟与理智。要知道官方的任何举动都是万众瞩目的,官方的任何失误必然伴随着大量玩家的流失,而通常离开的玩家很少有再回来的。所以请谨慎再谨慎的做出每一次更新决定。在更新之前,请先事先设想一下可能出现的种种状况与应对方法。而不是头痛医头,脚痛医脚的被动应对。
【废话】当大量玩家开始离开时,官方猛然醒悟,修改了游戏中不合理的设定,虽然5月5日到5月7日官方还出了一个公告解释修改电光火石的N种必然性,说得大义凛然,义正严词,可仅仅过了几小时,他们就自失其言。可见官方的公告与说明也非常儿戏,哈哈~~~,这次更新本来应该+6分,但考虑到之前让人恶心的公告,-1分,综合评分:+5分)

2005-5-15 关于炎魔任务向玩家的道歉说明
类型:游戏调整   评分:-7  总分:66
评论:同样是因为考虑不周出现的重大失误,但这次显然反应过度了。又是道歉,又是补偿,离开的玩家已经看不到了,不过留下来的玩家对这次补偿还是比较肯定的。在炎魔任务的修正方案中,官方口口声声说是收集了大量玩家意见,可修改后的炎魔任务同样是漏洞百出,让所有人寒心的失败之作。
    猎奇士方面分两个阶段:44以下与44以上,44以下的看着44以上的打炎魔满腹怨言,因为44以上的猎奇士用背刺技能可以不掉一点血就把炎魔杀了,非常轻松,而低级猎奇士要顶着炎魔的强大攻击艰难参与,而且打到一半就得飞走,由此导致的后果就是低级猎奇士要么不分昼夜的努力冲级,要么放弃游戏,彻底走人;
    而幻灵师则比较统一,利用自动锁定与无限攻击距离相结合而站在炎魔攻击不到的地方无忧的虐待炎魔,所需要的就是找一个朋友在炎魔那里等着拣东西就足够了。
    无论是44以上的猎奇士,还是幻灵师,炎魔任务对于他们来说根本就是无聊的东西,一点挑战性都没有,这个情况存在了超过3周,在论坛我也见过无数玩家反映过此问题,但3周来官方依然没有任何动静,仿佛默许一切。而且因为这个任务而离开游戏的玩家也是不计其数,(因为通过这个任务让很多中低级玩家体验到了巨大的挫败感)也许梦幻国度项目组没有意识到吧,一个小小的任务调整,可以引起如此大的蝴蝶效应,为什么呢?宠物系统缺乏新鲜感,练级缺乏动力、活动任务缺乏挑战性,游戏资料安全性没有保障(三天两头的随机回档且无任何补偿),问题很多很多,这些玩家都能适应。但是对于热门的炎魔任务中体现出来的歧视精神却是大部分玩家无法容忍的。(所谓歧视精神指等级歧视与职业歧视,详细内容见上文)每当28~43级的猎奇士看着44以上的猎奇士杀炎魔,我想都会气得吐血的,如果你不知道我在说什么,可以问问经历过这一切的其它梦幻玩家。(28级以下的猎奇士一般不会去挑战炎魔,所以对此影响的可能性比较小)
    28~43的猎奇士看着操作好的同级或低级幻灵师杀炎魔我想也会气得吐血,记得18日当我兴致勃勃的参加改版后的炎魔任务时,在东芝麻看着2个幻灵师利用超屏攻击炎魔,而炎魔无动于衷的时候,气得当时就关了游戏,(要知道我当时35级,杀炎魔可是要吃很多HP药的,而且过程非常紧张,稍不留神就会免费回城,而这两个幻灵师悠闲的杀没有反抗的炎魔,我想任何一个人都会愤怒)之后1天没上游戏。直到团里的朋友在QQ群上找我...
    记得炎魔任务刚推出的时候,问题主要是对于新手的生存威胁以及炎魔与守洞NPC之间的冲突。其实,只要修改一下炎魔的属性,让炎魔不被守洞NPC攻击就完了,根本就没有后来的事情,而作为活动怪,炎魔本就该是主动攻击属性,(没见过哪个游戏的活动怪是被人攻击后既不反击也无任何举动的木头)如此才有挑战性可言。修改不往好处改,反倒是老问题解决了1个,新问题出现3个,如此举一反三还真是让人不知道说什么好。
【废话】能及时对出现的问题做出反应,发出公告,这个是值得肯定的,+3分。但对出现的问题过度的反应既没能挽回离开的玩家,也给留下来的玩家造成一个错觉:那就是盛大睡醒了,突然心血来潮,+1分。更重要的是这次修改后的炎魔任务更糟糕,并在一段比较长的时间内导致了大量玩家离开游戏,可以说是一次非常失败的更新,-10。综合得分:-7分)


2005-5-21 《梦幻国度》你做主 官方论坛开辟用户意见专栏
类型:其它公告   评分:+2  总分:68
评论:重视玩家意见,吸纳玩家建议,这本是好的,但有一个原则,就是建议与游戏的未来不发生任何冲突。但一味的迁就玩家,顺从玩家意见,则是错误的,长此以往,游戏将走向绝路。毕竟玩家的意见是无责任,片面的,有很强的局限性,普通玩家并不关心游戏的未来会怎么样,所想的只是如何在当下玩得尽兴,而官方如果缺乏游戏的理念与相应的判断力,那么后果将不堪设想。相关讨论请见本人去年年末写的《运营真的这么困难吗?》相关章节。
【废话】截止6月底本人离开,梦幻国度的用户意见专栏中出现的多是无足轻重的意见,而玩家奔走急呼的意见则一条也没看到。为什么呢?这个所谓的用户意见专栏到底是怎么样的专栏呢。为了保证观点的广泛I代表性,针对这个问题,本人询问了超过100位游戏内的老玩家。(接触梦幻国度大于1个月的玩家)根据大部分玩家的观点与本人长达1个月的观察:这个所谓的用户意见专栏仅仅是盛大宣传的另一种方式,所涉及的问题都是无足轻重或与官方的开发计划吻合的内容,而并不是代表用户真实声音的意见专栏。表面看是尊重玩家,实则又玩了一把文字游戏,欺骗玩家,长期依靠这样自以为是的小聪明能把游戏做好了才真的奇怪。考虑到该栏目的确也解决了一些问题,所以还是+2分吧。其实没这个栏目,这些问题一样会解决,只是一个文字游戏而已。

2005-5-22  你提我改 五大焦点问题调查现已隆重推出
类型:游戏介绍   评分:+7  总分:75
评论:即便是游戏本身质量不高,运营中重大失误也层出不穷,但在盛大超密集的推广资金投入下,新玩家始终比较多,从5月初到7月份初,可以不夸张的说新玩家是源源不断,且新玩家的增加率大于老玩家的流失率,所以游戏内依然呈现着欣欣向荣的景象。所谓“龙隐长乐仙霞庄,曲风依旧心已伤;东西芝麻晶贝场,昔日英雄今何藏?”
    面对老玩家持续的大量流失,新玩家也逐渐受其影响开始恐慌起来,正是在此千钧一发之计,官方果断的推出了五大焦点问题调查讨论活动。可以说时机掌握得恰倒好处,虽然讨论的内容短期内不一定能实现,但却可以给准备离去的玩家一个留下来的理由,而且这个活动的推出也的确起到了一定的效果,根据我在游戏内接近1周的调查:原本决定离开的23位玩家中,有5位表示暂时不想练级了,但会留下来看看再做决定,有3位表示对官方重新恢复了信心,决定留下来继续玩,有7位表示暂时不玩了,但对游戏保持关注,如果以后改好了再回来,剩下的8位与1周前的想法一样:最近或最迟收费前离开。从我的小调查中可以看出,这个“五大焦点问题调查讨论”的确收到了比较好的效果。
【废话】游戏是平庸的、问题是很多的,但每到危急时刻官方总是会灵光一闪,避重就轻的化解危机的...就如同一只漏水的木桶,官方不准备先把木桶的洞补好后装水,而是选择先装水,然后看什么地方漏得多,再临时性的用胶布贴一下,然后继续往桶里注水...扯远了,不过这个活动推出即时,效果显著。

2005-5-25 藏宝图大盘点 全新“挖宝总动员”猛烈来袭
类型:游戏介绍   评分:+4  总分:79
评论:如果要问我梦幻国度有什么游戏特色的话,我想这个挖宝总动员可以算其中一项。(巨奖诱惑,谁与争锋)通过实物奖品的诱惑来吸引玩家继续游戏,而且这个挖宝总动员也算是风风火火,不仅让参与活动的玩家情绪很高涨,且玩家人数也非常多,毕竟是RMB诱惑嘛,有钱真好啊!我看盛大不如在今后的活动中,直接挖宝送现金好了,这样方便,像现在这样送公仔,送了1个月,玩家都收不到,反而会影响活动的效果。其实我也是众多中奖者之一,当然暂时归于受骗者好了(因为1个多月了都没收到公仔)。当然现在离开游戏了,也不奢望了...
【废话】不知道从什么时候开始博彩开始入侵网游,从注册送现金、到游戏内的抽奖送虚拟装备或极品,且逐渐的成了一种风气在网游行业内弥漫。而发展到今天,盛大已经开始在游戏内尝试利用金钱诱惑长期吸引玩家,可是....盛大可以不定期搞挖宝送巨奖,那腾讯也可以在QQ幻想中搞类似的活动嘛;你盛大能送泡泡堂公仔,难道人家腾讯没有QQ公仔吗?你盛大能送ipodmini,难道别人腾讯没ipodmini,看着盛大和腾讯搞这样的小动作,难道九城能无动于衷...我看如此下去,中国的网游也该到头了...研发部门也别再研究什么游戏性了,什么新玩法了,看看怎么节约什么弄,只要包装精美些,酒瓶用旧的,里面装水就可以了,反正有巨奖促销,有巨额的推广费用,上市前到上级主管部门那里争取几块奖牌,对媒体来说有着绝对的吸引力。而玩家选择游戏也方便多了,看哪个运营商给的奖品价值高,就玩哪个游戏,等活动结束了换个游戏继续等机会...也许是我太杞人忧天、疯言疯语了吧,但让我如何也想不通的是此时此刻万能的网游主管部门的大大们飘哪里去了呢?...对于盛大如此公然破坏网游行业的公平竞争竟然无动于衷,不仅如此,还颁发优秀民族网游的奖项,难道是鼓励网游行业的恶性竞争?发泄归发泄,不过这个活动的确能聚集人气,而且立杆见影。

2005-5-27 “赚钱我有道”有奖征帖活动获奖名单揭晓
类型:游戏介绍   评分:+1  总分:80
评论:当初搞这个活动的初衷,应该是加强玩家间的交流,而事实上也的确起到了这样的作用,但是呢?计划没有变化快,当初很多可行的办法,仅仅过了半个月或1个月,就完全不适用了。梦幻国度可以说是1天1小变,3天1大变,何况是半个月甚至1个月呢?毕竟现在时代不同了,游戏天天都在变,玩家该如何适应呢?
【废话】记得传奇时代,很多经验几个月甚至几年都适用,但梦幻国度不同,即便是昨天的经验,今天可能就行不通了,这就是梦幻国度的另一个特色:千变万化。让玩家无所适从,喜欢梦幻的话就需要不断的适应不断的变化。活动的初衷+5分,但由于变化太快,经验帖实用性不高,目前关于赚钱的经验帖,实际适用率小于5%。大部分当初非常优秀的帖子,到了7月份,新玩家看了一点儿用都没有。(写这个帖子的时候,本人故地重游去官网看了一下我获奖的帖子,发现即便到了7月份,经验也同样适用,有兴趣的朋友可以去梦幻国度官方论坛注册,然后点击参赛帖:署名:废话,发帖时间5月5日。欢迎大家把所有5月份的赚钱参赛帖都看一遍,经过了2个月的历练,到现在经验还适用的好象只有本人的那张帖子,不知道这算不算在炫耀,hoho~~~)

2005-5-28 六月大型活动“海贼王的野心”专题推出 
类型:重大更新   评分:-11  总分:69
评论:官方第2次大型改版,同样也是公测后第2次玩家大规模换血。当这次大型活动结束时,游戏内同样完成了第2轮玩家换血。公测开始接触梦幻国度的老玩家中,在5.5事件和5.15事件的刺激下完成了第1轮大换血。这次换血导致公测前1周进入游戏的玩家80%离开了游戏,而游戏内的主力玩家也转变为5月中旬接触梦幻国度的第2批玩家。在海贼王的野心开始后,第2批玩家也陆续被迫离开游戏,在海贼王的野心大型活动刚刚进入第2章的时候,第2批玩家也差不多尽数离去。截止6月20日左右,游戏内的主力玩家已经转变为6月份才接触梦幻国度的第3批玩家。
【废话】根据我对所在服(四川1区2服)长期的观察分析:在海贼王第一章的活动中,因为官方玩弄文字游戏的手段太低劣,变成了彻头彻尾的欺骗,导致大部分级高钱多的老玩家在一夜之间变成了穷光蛋,而新手们则获得了一份意外的惊喜。当然了,后果就是老玩家陆续离开游戏(其实,我也是受害者之一,当时只是希望能在离开前在做点儿什么,所以拖了1个月才完全退出游戏)。海贼王第2章没犯什么大错误,但是也没什么大作为,无法激发玩家参与活动的积极性,通过第2章的活动也看出官方策划人员对游戏是如何的陌生,有这样的策划人员,梦幻的未来能好才奇怪。第3章活动是整个“海贼王的野心”活动中唯一让玩家稍微满意的,但是呢?这个活动同样反映出官方的活动策划人员对游戏是多么的陌生。一个宣称考验旅团实力的怪,却往往在1分钟左右就被杀了,为什么会这样呢?因为官方策划人员对于游戏内玩家的平均等级以及攻击力缺乏足够的数值了解,如果说组团杀了还算有团队合作的成分在其中,基本还算达到活动目的的话,那很多高级战士或法师,一个人就把海贼王杀了,则是对整个活动的讽刺。说到这里,允许我把话题展开些:梦幻国度中的终极BOSS:千宝珍和波谱冰王。引用官方的相关说明:“未到70级、没有组队且装备不够精良的玩家切勿尝试去挑战它!”但事实呢?所谓的终极BOSS,一次又一次被等级只有40~50,且装备不齐的玩家杀掉,然后官方一次又一次的把BOSS改强,一方面大幅度提高BOSS属性,一方面增加BOSS的安全性(比如大量超强攻击的小怪护卫)可以一样被聪明的玩家一次又一次的给灭了,而作为官方代言人的官方论坛版主(盛大官方论坛的工作人员对于游戏的了解是多么的幼稚,大家一起来欣赏吧)却一次次否定事实:一开始说玩家看错了,接着说什么玩家利用BUG杀的不算,后来的回答幼稚到无法形容:“那可是80级的怪,需要70级以上才能打的,你们只有40多级怎么可能杀得死?所以说不可能的。我们的工作人员测试过了,杀不掉的。当更多的玩家把杀掉终极BOSS的抓图帖到官方论坛时,官方的托词变成了等级相差15级以上,即便杀了也没有经验,当然也不会爆东西,所以还是请大家到了65级以上再去挑战...
    如果要说玩家40多级杀掉80级的怪,可以肯定是利用了游戏中不合理的设定,但这个不合理的设定非常容易发现,稍微分析一下就能明白的事,盛大花费了3个月都没有搞清楚问题的真正原因,还胡乱修改一番贻笑大方,我真的无语了,对于盛大的研发与游戏评测人员的专业性我从来没怀疑过,可以肯定他们任何人都比我的能力强100倍以上,但对他们的敬业精神,表示出极大的怀疑,甚至怀疑梦幻国度项目组究竟有没有专职的游戏性评测人员。
    海贼王第1章:收集垃圾资源,由于官方事先声明活动第1名有300W奖金,所以当时游戏内有钱的都竞相收购指定资源,由于资源出产有限,导致价格疯涨:平时卖5块钱都没人要的垃圾资源,当天炒到了300块以上。基本上海贼王第1章活动中,前十名都是花费了几十到几百万不等,可结果呢?第1名没有300W的奖励,而前十名获得的奖励非常小,连收购资源成本的20分之一都不到。这次活动被玩家们称为官方在游戏内的劫富济贫。结果那几天20级以下的新玩家几乎每人获得了10万以上的意外收获,而相应的,高级玩家则大规模离开游戏。-10分
    海贼王第2章:本来以为官方会通过这1章来补偿玩家,没想到这1章同样让人失望。所谓的大量金钱奖励还不够玩家参加活动所付出的药钱和修理装备的费用,这样的奖励不知道有多少玩家愿意参与。而梦幻百宝箱的游戏规则也相当奇怪,无论有没有参与打活动怪,居然都一视同仁可以攻击活动宝箱,这让很多参加打活动怪的玩家也相当气愤,打活动怪付出了比大的代价,而收获时却要与大量无关人士同享成果,绝对的平均主义造成的就是玩家对于活动的敷衍。打怪的时候不去,打宝箱的时候就相当活跃。而这个打宝箱的活动同样导致了很多玩家的不满,因为这个宝箱被任何等级的玩家攻击一下,宝物就归那位玩家,而游戏内的法师职业有远程攻击,理所当然的没收了99%的宝箱礼物。而即便是玩了2个月的高级战士玩家,对于宝箱除了气愤就是叹息,练了2个月,还不如一个新来的小法师。可以说这个活动也造成了大量高级战士离开游戏。-8分
    海贼王第3章:打1个怪,1分钟便可拥有200W,这就是海贼王第3章的活动。不过呢,在获得打怪资格的时候,却出现了一个小BUG,当玩家上缴任务道具的数量相同的时候,居然是后交的人获得打怪权,这让很多玩家恼火。这个问题出现了1周以上都没有修正。不过总的来说,这个活动是海贼王的野心中唯一让玩家满意的。虽然这个活动既没有难度,也没什么趣味性,不过冲着那200W,很多玩家还是乐此不疲。 +7分

2005-5-31 不明海鲜登陆 各位居民注意安全!
类型:游戏调整   评分:-3 总分:66
评论:这次更新主要就是海贼王第1章之前的一个小活动,不过这次小活动好象负面影响大于正面的好评。毕竟让40~50级的怪跑到20级以下的新手地图去,只能用屠杀来形容了。不过传闻这次活动是针对脱机外挂。毕竟这个时候大名鼎鼎的梦幻脱机外挂:梦幻宝贝已经开始公开测试了。(这个外挂类似神迹新天游,可以说是一款比较有潜力的外挂,其1键刷钱功能,更是广受玩家好评,玩家只要输入用户名和密码,以及识别码,不用做任何设置,点一下刷钱,就可以自动在线跑信刷钱。根据本人的亲身测试:38级的玩家,利用这个脱机外挂,20个小时可以刷100W梦幻币左右,以及20张各种卷叶,总计刷钱在150W左右,而40级的玩家,20个小时刷钱获得的收益接近200W(包括出售卷叶的收益),这仅仅是一个号一天的收益,但这个外挂可以让一台普通的电脑同时挂上百个号,消耗资源非常低,根据测试,外挂跑钱时,平均一个号只占用3M左右的内存。对于拥有256M内存的我来说,挂了4个号,还挂3个QQ,然后看电影,一点都不卡。)
【废话】防范外挂挂机是应该大力支持的,但不能因为防范外挂而让普通玩家的正常游戏受影响则是重大失策了。

2005-6-1 欢庆六一 梦幻寻宝特别活动送你大公仔
类型:其它公告   评分:+2 总分:68
评论:这次挖宝活动借鉴了1测的相关活动,而且也体现出了挖宝的乐趣,通过挖宝让玩家也对游戏本身有了很多的了解和关注,是一个不错的活动。
【废话】如果说趣味性的话,这次挖宝活动体现出了应有的趣味性,通过一张游戏内的抓图类提示玩家挖宝的地点,而且随着活动时间的临近而公布更多细节提示,总体安排是不错的,但还有略有不足。那就是对于积极参与活动的聪明玩家缺乏必要而公正的奖励,也是采用平均主义一刀切,下午2点找到挖宝地点和晚上7点找到挖宝地点,居然结果是一样的,也正是因为这点小小的不足,让不少聪明而熟悉游戏的老玩家寒了心。不过这次活动相对来说也是不错的。

2005-6-3 声明:捍卫游戏生命 严厉打击挂机外挂!
类型:其它公告   评分:+8 总分:76
评论:在6月份的时候,梦幻国度已没有什么能挽留玩家的,这个时候,官方对于外挂的打击成了部分玩家留下来的理由。毕竟是盛大第1次如此认真的对待外挂问题,很多玩家抱着这个想法留了下来。而官方高姿态打击外挂也一时传为美谈,让不少准备离开的玩家重新有了留下来的理由。
【废话】坦白说我在技术方面可以说是白痴一个,但通过大量的浏览外挂论坛与梦幻国度有关的技术讨论帖子,我发现了有用的信息。a.梦幻国度依然是采用了传奇的引擎架构的,且很多方面都与传奇无二;b.梦幻国度的图象资源可以使用传奇世界的图象资源提取器进行查看;c.盛大在梦幻国度研发之初就考虑到了通过技术手段来对抗外挂,所以梦幻国度在反挂方面拥有很多优势。d.盛大首次高姿态与外挂进行冲突。(其实在英雄年代的时候,盛大也曾经打击过外挂,并且让第1代英雄年代外挂绝种了,但面对第2代外挂,考虑到经济利益,盛大最终还是放弃了对抗。目前英雄年代的外挂在收费后基本上没有受到大的影响。)归类一下:1.梦幻国度就是Q版的传奇。2.梦幻国度在反挂方面拥有其它游戏不具备的优势。3.盛大首次高姿态向外挂宣战。

2005-6-3 6月4日版本更新焦点问题解答
类型:重大更新   评分:-20 总分:56
评论:这次改版调整了多项游戏设定,同时也增加了部分新的元素。海贼王的野心上面已经论述过了,这里略过。
    a.圣火令任务优化
    这次优化实际上增加了任务的难度,大幅度降低了任务的奖励。(本来是稀有物品,在此次改版后变成了彻头彻尾的垃圾奖品。)不仅如此,还修改了战士的诱惑技能。使得战士无法诱惑非主动攻击的怪。 -5分
    b.修正了送信中不合理的设定
    方法比较粗暴,没有考虑过玩家的感受,虽然对游戏长期发展有好处,但短期的负面影响相当大。(其实这个问题2测就解决了,不知道为什么公测的时候没有采用解决后的方案,难道说同一个问题短期内犯2次错误是盛大的传统,哎~~~这个也太BT了,电光火石弄一下流失了一批玩家,现在送信又来一下,又走了不少玩家,不知道盛大还有什么BT的传统,寒一下) -5分
    c.炎魔危机改版
    活动名字变成了拉尔斯公爵来了。内容也有比较大改动。之前是炎魔本身强大,战胜炎魔靠的是实力与药品的数量。可能是盛大觉得这个任务没得让玩家付出什么代价,所以改版后的拉尔斯公爵来了增加了任务对于金钱的消耗。而且这个金钱消耗是非常巨大的。做一个横向比较吧。这个任务的目的就是收集制作装饰品外套的材料,在改版前要获得同样的材料,需要付出1组HP600的红药,折合当时的市价在5W左右,而如果在改版后要获得同样的材料,则需要消耗24W以上的金钱。而且前面是折合市价5W,而实际上可以说是0成本,毕竟红药可以在平时练级的时候积累。而后者消耗24W的金钱却是必须花钱才能拥有的,在练级中无法获得,所以说这次改版几乎是废了这个活动。而且还让玩家产生了厌恶情绪,是一次比较失败的改版。  -7分
    d.火焰公房改版
    个人觉得这次改版的难易度控制非常好,可惜的是,这个任务不应该是以这样方式面对玩家。毕竟这个任务考验的是团队合作,而陌生的玩家之间哪来的默契合作呢?再有,这个任务的奖励相对游戏难度来说也是明显不合理的,问题很多,可盛大没有正视过这个问题,而且采用比较容易的办法,回避问题,通过简单的把难度降低来迎合玩家当下的需要,敷衍之色显露无疑。-7分
    e.增加高级资源出售的NPC
    这个NPC推出之前就备受争议:一方面推出这个NPC影响了游戏内的平衡,直接导致圣火令任务的最终奖励变成垃圾。另一方面,如果不推出这个NPC,又无法解决高级玩家的装备玩家。毕竟这些高级资源当时游戏内没有怪物爆出,也无法合成,只能通过挖宝,靠极少的几率拥有,所以,这个问题惹得大量高级玩家怨声载道。对于这个问题,盛大同样采取了最简单的办法,回避问题的根本原因,而是直接以NPC的方式出售这些稀有资源。不过短期内对游戏还是有积极的作用。+4
【废话】6.4改版给我最深的印象就是官方对于游戏的敷衍,对出现的问题不是深入分析导致问题的本源,而是选择如何简单的对付,这让很多玩家对游戏彻底失望了。游戏的问题可以很多,但官方的态度却不能如此,我想很多玩家都是这样想的。官方敷衍玩家,换来的只能是玩家的唾弃。即便你花费太多的推广费用,也不过是昙花一现。

2005-6-7 《梦幻国度》宠物二转形象由你来决定
类型:游戏介绍   评分:-3 总分:53
评论:梦幻国度的特色之一按理说应该就是宠物,而作为游戏核心的宠物系统又是如何的呢?把以前固定NPC的功能,变成了跟随玩家的移动NPC,把一个NPC变成千万个NPC,这就是梦幻宠物系统的技能部分。虽然每个玩家的宠物有个体差别(比如名字),但做出来的东西却是一模一样的,不知道这和一个NPC做出来有什么差别,而且还极大的浪费资源。而游戏内真正的极品装备,根据本人多方考证,是从地里挖出来的,而不是宠物制作的,而那些真正的极品,一个服务器只有1件,属性也超级BT,比如+175%敏捷的37级手套、加0-238魔防的1级初心者帽子,0-255攻击的14级衣服...拥有这样的装备,才能体验到什么叫真正的无敌,就以我所在的区为例。拥有0-238魔防的1级初心者帽子的人,名叫赋天,根据我和他的聊天了解到,这个帽子是另外一个人挖出来的,而他花费了400W梦幻币购买的,根据当时的市价折算RMB,大概是200元。而拥有这个帽子后,即便是游戏内最恐怖的高级练级点,1点的新人也能毫发无伤,当然了,他用这个帽子参加火焰工房活动是从来没失败过,毕竟即便游戏内的高级法师,全身的装备加起来也不到150的魔防,而1级的帽子却有238的魔防,这样不平衡的游戏也就梦幻国度中才能出现吧,这个现象存在了40天以上。在我离开梦幻的时候,据说这个帽子才被盛大没收,那已经是6月27日了...梦幻国度的宠物缺乏实用性与个性化,导致玩家也逐渐从宠物的内涵研究转变为宠物的外观欣赏了(想当初内测和公测刚开始时,多少人研究宠物的属性点啊,现在呢?早就绝迹了,因为玩家已经知道了,这个游戏中宠物系统中包含的属性点没有任何研究的意义)。而冲1测开始就开放了6种宠物,到了2测试只剩下了5种宠物,很多玩家还在想怎么大家非常喜欢的狸猫没有了呢?一直到了7月初,听QQ群里一个朋友说,盛大已经出公告了,狸猫宠物800元RMB一只,要的必须出钱。看到这个消息我一点儿不吃惊,当初1测的时候玩家最喜欢的就是那只宠物,而到了2测这只宠物就没了,公测也没开放,那么剩下的肯定就是增值服务了,不过个人还是没想到价格会那么高,居然要800元RMB一只,这个宠物也就是一个外观好看,又没什么实际用途。另外,我一直觉得盛大会高价卖极品宠,比如1级属性总值在20以上的宠物或30以上的超级宠,或50以上的传说宠,或80以上的神宠,估计等到那天的到来时,价格也是几百几千一只吧,呵呵~~~盛大的本色就是赚钱嘛,也无可厚非了...但是呢?你赚钱归赚钱,只要应该多拿出一点儿诚意吧。看看盛大的宠物2转形象吧,100%抄袭口袋妖怪/宠物小精灵,有的是直接临摹(就是照着原画一模一样的弄出来),有的时合成(把多种口袋妖怪的特色弄到一起)。盛大公布的10种2转宠物形象,竟然没有一款是原创,这不能不让我震惊。(我也是听其它玩家提到盛大的2转宠物是抄袭了宠物小精灵后,下载了超过400级宠物小精灵,从头开始看,从纯白镇看到宝石大陆,然后又是各个OVA短片,对于27岁的人来说,看这个动画是很痛苦的,毕竟有代价啊...555)而且,在看片中间,还发现原来梦幻国度整个游戏都是抄袭的口袋妖怪的创意。(从背景设定到怪物设定,都抄袭了口袋妖怪)不知道盛大跟小日本购买过版权没有。因为公布的2转宠物形象,不少看过口袋妖怪的玩家都离开了游戏,当然了,那些不知道口袋妖怪的玩家,绝对2转形象还是不错的。
【废话】按理说如果盛大和口袋妖怪的版权所有者有协议的话,应该会见到相关的新闻吧。毕竟口袋妖怪在14岁以下的玩家中还是比较有影响力的。但我仔细的搜索了一下,的确没有发现相关的新闻。还说是国产原创网游,到底什么地方是原创的呢?玩了3个月,我的确没有感受到原创的味道。

2005-6-9 10分钟封闭外挂!《梦幻国度》打击外挂不手软
类型:其它公告  评分:+7 总分:60
评论:这则公告的确对游戏内的玩家鼓舞很大,很多不使用外挂的玩家对盛大屏蔽外挂的效率和能力都大加赞赏。而这个被屏蔽的倒霉外挂,也就是短命的梦幻无限,作者也在这个公告2周内宣传放弃开发了。
【废话】到了6月份,能让玩家安心留下来玩梦幻国度最重要的原因,应该就是盛大的反挂效率了。的确是非常优秀,甚至比英雄年代前期对抗外挂时效率还高,真正做到了发现一个屏蔽一个。但在盛大高姿态强势应对外挂时,梦幻国度的外挂是不是就真的消失了呢?经过本人多方打探(特别感谢几位给我提供外挂线报的朋友),梦幻国度的外挂其实一直都存在,分为两类:BT外挂与非BT外挂。非BT外挂的功能也就是挂机练级、跑信赚钱、宠物摆摊几项主要的功能。代表外挂为:梦幻宝贝。BT外挂目前还不知道名字,但本人有幸在游戏内见过,并且把相关经历告之了盛大的朋友,结果不知道他们查出来没有。根据本人的目击:BT外挂拥有移动加速、攻击加速(1秒攻击3下左右)、刀刀抓狂(战士技能)、稳如泰山(被怪攻击无停顿)、超屏攻击(法师技能)几项,其它功能不项,但最近出现的梦幻小蜜,本人特地试用了一下,比较好用,跟传奇的冰橙子差不多,功能比较完善,但并不BT,属于非BT游戏辅助内挂。这个外挂极大的简化了游戏的操作,相对而言,这个内挂在一定程序上加强了战士的练级效率,推荐游戏内战士玩家试用。这个外挂好象是7月份新出的,到目前为止,还没听说盛大有针对他的举措,不知道是不是收费临近,盛大反挂策略软化了呢?另外,收费后的梦幻宝贝脱机版据传个人版价格高达300RMB,网吧版1000RMB,估计能用的人应该不多吧。也许正是考虑了以上因素,对梦幻宝贝的打击最近好象也有放缓的迹象。
    总之,梦幻国度的外挂官方还是控制得比较好,而且从多次与外挂的较量中玩家也看到了官方的能力,所以厌恶外挂的玩家在梦幻国度中应该能获得暂时的宁静吧。但收费以后呢?暂时还不知道,希望盛大能坚持下去吧。

2005-6-10 文化部重拳出击!“简单游”外挂3天覆灭
类型:其它公告   评分:+0 总分:60
评论:刚开始看到这则公告的时候,无论是使用外挂的玩家还是外挂的制作者都受到了一定程度的震慑,但是...仅仅过了3天,盛大的谎言就破灭了。(详情见2005年6月13日 《天下创世郑重声明:简单游的道义》一文)
    当盛大在梦幻国度官方网站发布“简单游”外挂3天覆灭的消息之后3天,简单游竟然又复活了。而且通过简单游官方的说明,简单游之所以暂停了几天仅仅是补办《网络文化经营许可证》,哈哈如此一来,盛大所谓的文化部重拳出击,简单游3天覆灭的谎言也就不攻自破了,知道这个消息后我迅速留意了梦幻著名外挂:梦幻宝贝制作者的动向:在盛大发布这则公告的时候,梦幻宝贝也开始回避了,可见这则公告的震慑力是相当大的,但当大家都知道原来是盛大的一个谎言后,仅仅过了2天,6月15日,梦幻宝贝再度重拳出击!恢复挂信跑钱功能,一时梦幻国度外挂玩家奔走相告。(需要说明的是梦幻宝贝作者经常说跑信刷钱影响游戏平衡,所以屏蔽了外挂的跑信刷钱功能。)
【废话】宣传固然重要,但后果最好也能提前预知,盛大的谎言欺骗了外挂制作者一时,但当对方醒悟的时候,报复起来可是不留半点情面的。而对于广大普通玩家呢?也许大家对盛大的谎言已经习以为常了,我当时针对这个问题随机询问了多位梦幻国度的玩家,几乎意见都是一样的:早知道了,盛大除了骗人干不出什么好事。

2005-6-13 为100分努力!“为梦幻国度加分”行动
类型:其它公告   评分:+0 总分:60
评论:不知道盛大的这个加分的根据是什么呢?其实本文的初衷也是因这个公告而起,所以花费了数日来完成本文。盛大的官方加分行动,与我的玩家评分行动,到底谁才是游戏的真相呢?我想时间会证明一切的。正如2004年5月我撰文分析神迹、2004年8月评论英雄年代一样,时间会证明一切,无须争论什么。

1.3 小结
1.3.1 分类分析:
1.3.1.a 重大更新:
    仔细分析一下:从内测到公测,我们接触这款游戏的时间已经半年了,但重大更新只有2次。即3月25日开始的2测与6月4日开始的海贼王的野心。也就是说平均2个月进行一次重大更新。而这两次到底增加了什么内容呢?
    第1次重大更新增加了枫叶岛地图(包括爱物堆)。更新了任务系统,添加了1~14级剧情任务、挖宝任务、送信任务、猎奇任务、赏金任务。
    第2次重大更新增加了海底地图(包括水晶宫)。更新了任务系统,添加了15~25级剧情任务、拉尔斯公爵任务、火焰工房任务。
    如果说第1次重大更新除了增加了新地图,还对游戏内进行了翻天覆地的改动:如增加新手辅助系统、职业技能学习顺序以及等级限制,更变了游戏内的其它设置:比如掉落资源,合成物品。金钱获取主要通过送信,而装备获取主要通过挖宝。
    相比而言,第2次重大更新仅仅增加了海底水晶宫,对游戏的调整相对很小。
    如果我们能理性的深入分析一下:1月底到3月底,2个月,主要增加的是枫叶岛地图以及爱物堆怪物。而从3月底到6月份,3个月之间,游戏内只增加了海底地图与部分海底怪物。也就是说,游戏更新的图象资源在减少。我们是不是可以通过现状进行一下推理呢?为什么3月份就出现的图象资源紧缺而不得不大量重复使用相同的图象资源,而到了6月底问题依旧,难道盛大真的是没有美工了吗?
    不,美工的确有,他们已经在这3个月中紧张的参与了海底地图及怪物的创作,而无暇顾及之前遗留的大量工作,所以,一个问题出现了3个月依然如故。不是不能改,也不是不愿改,是因为精力有限、人手不足所致。为什么会出现人手不足呢?有3个原因:1.高层无知妄为,事先把开发计划排得太满;2.策划人员一意孤行,缺乏团队合作精神。3.项目组的美工人员出现了大量的长期缺席现象。(是生病还是离职就无从知晓了)
1.3.1.b 游戏调整:
    游戏内出现的重大BUG修正与游戏调整在9次以上。如果我们仔细研究一下出现的各类失误。可以发现一个规律:那就是所有问题其实本质上都犯了同一个错。那就是对游戏不了解,闭门造车,想当然的修改游戏。这样的例子太多了,我就不列举了。这3个来月的体验中我深深的感受到一点:对于游戏的重大修改,官方的决定好象碰运气一样,如同儿戏。所以改一次错一次。(盛大也真够背的,呵呵)为什么没有经过实践论证的问题就可以轻易的决定修改呢?有3个可能性。1.高层负责人对游戏不关心,只负责签字或全权委托下属。2.游戏策划的心思不在游戏中,而不知飘哪里去了。3.项目组的决策人对游戏不仅缺乏了解,且听不进任何建议。(至于具体的原因,我也不无从知晓。)
1.3.1.c 游戏介绍&其它公告
    关于游戏的介绍,从2004年我玩神迹的时候就开始有所耳闻了,当然,集中获得相关信息还是在2004年年底的时候,而决定全身心投入梦幻国度的研究则是在3月份了。对于游戏的介绍,我分析相关人员应该是中文系毕业或对现代汉语比较有研究的,且有丰富的传统广告经验,与敏捷的思维。所以在各类游戏介绍公告中尽可能的运用模糊、夸张、联想等传统修辞手法,加入当今流行的BT精神,配上让玩家YY的词句...只要自己的胃受得了,多恶心的公告都写得出来,也不管是不是事实,与事实相差又有多少。反正老子几千年前就说过:智慧出,有大伪。玩家产生了歧义,解释一下、澄清一下就敷衍过去了,然后猫一边偷笑。但事实上,这位高人的如意算盘屡遭意外,很多时候,官方自以为圆满的解释或公告,其实不过是愚人自愚而已。其中最明显的莫过于电光火石的BUG修正公告,呵呵~~~

1.3.2 综述
    对于付出3个月时间体验的梦幻国度,截止2004年6月份底,我个人的评分为60分。坦白说,有点出乎我的意料。直觉告诉我梦幻国度真的很糟糕,但到底有多糟糕呢?我其实也不知道,经过这几天的回忆与分析,发现梦幻国度其实并不是一无是处的。至少梦幻国度的配色比较鲜艳、明快,让玩家一进入游戏就能拥有好心情。而新手帮助系统经过内测1个月的努力也相当的完善了,玩家从进入游戏到游戏内各项功能的使用都有很好的辅助说明,这点还是值得肯定的。在新手阶段,为了激发玩家的兴趣,官方采用了非常规做法,也就是让玩家在1~9级经历一个由易到难的游戏体验过程,这个尝试还是非常不错的,也很成功。在游戏的战斗方面,无论是移动、还是战斗都比较爽快,没有丝毫多余的累赘动作,相比而言比国内某些九流游戏的确是强很多了..
    可能是因为当初期望太高的缘故吧,所以一开始很多人(包括我)就把梦幻国度定位于WOW的对手。而事实上梦幻国度远远达不到那个要求,目前它仅仅是一款生命周期2个月的休闲网游。一个玩家从接触梦幻国度到完全离开,2个月足够了,如果继续呆下去,剩下的只能是遗憾多过快乐。(当然了,这句话仅在2005年6月27日前有效,以后怎么样,不知道...)

PS:以上分析纯粹以玩家视角对根据官方运营的现状给出的评分以及简单分析,不代表对游戏本身的分析。针对游戏的全面分析帖将在最近公布。

posted @ 2005-07-27 21:37 蓝色雪焰 阅读(2144) | 评论 (4)编辑 收藏
 

本文所有看法成立的前提:游戏不只是消耗时间的工具!
曾经看过一位好友玩梦幻西游,不断的重复从一个地方跑到另一个地方,就能够获得系统给予的金钱和经验的奖励。我问他:“这很有意思吗?只是在重复的跑动而已,我不知道这算什么游戏!”答:“虽然老是跑来跑去好无聊,但是总比重复打怪轻松的多!我跑的效率很高,一般人跑两个小时赚的钱和经验没有我一个小时赚的多!”我又说:“这能改变它无聊的本质吗?”答:“现在的游戏不都是耗时间吗?反正这个我不花钱,用跑来的钱换点卡就行了。玩呗!”
我只能选择沉默,因为他说的全是事实。但那不是游戏,只是消耗青春的工具。我既不愿意继续做消耗青春的主体,也不愿事实继续伪装成真理。于是有了“目标策划”的念头。

一、在任务中成长!

1、任务的相对难度和玩家当前的状态应该是密切相关的!
伴随着玩家在游戏中的进度,玩家应该始终面临和自己身份角色相当的游戏任务。比如:初期只是做一些新手任务、到中后期就可以做一些和职业情节相关的任务。

2、在任务中成长VS为成长而任务
以上只是“在任务中成长!”的第一层含义;深一点来看,相对与“为成长而任务”。玩家为提升自己的等级,在游戏的过程中持续做一些给予经验的任务;这是一种从怪物身上剥离出经验和金钱,变成一种给予对等奖励的任务;表面上是玩点的丰富化,实际上成为本来就枯燥无味练级的沉重负担。
失败的典型:A3
以A3的任务系统首当其冲,是功利性极强的任务系统;任务N多,但是流程很简单。找NPC接任务——→杀任务指定的怪物——→回去交付任务——→获得奖励(金钱、经验)
A3的任务系统是完全依附在玩家练级的过程中的,可以看作是成长的一种手段。看下表的对比:
 
1 2 3 4    
找NPC接任务 杀任务指定怪 回去交付任务 获得奖励    
找NPC买补品 杀当前级别怪 杀怪掉落物品 再次购买补给  
可以看出,做任务和打怪练级的流程是结合在一起的;玩家在NPC处购买任务和补给品,再去杀当前级别最合算的怪物(一定有对应的任务怪),杀了足够数量的怪物时玩家的补给品也消耗的差不多了,再次回到村庄补给和接任务。
如此循环,做任务也变成了升级的一部分。听高级别的A3玩家说过,所有做任务的钱和打怪掉的钱刚好能购买当前级别所需要的装备。似乎就是把练级所能获得的经验和钱拆分成两部分,一部分变成了传说中的任务!
高丽人拿着手中的栗子,说:“嘿!猴子们!朝三暮四好吗?”
可惜中国人早就知道这个道理,所以A3一副半死不死的样。
赚足钱的角:梦幻西游
为成长而任务是一种很枯燥的任务系统,但是依然会制造出游戏业的成功者。最有代表性的就是梦幻西游了,其师门任务已经完全脱离打怪,变成一种只需要跑动就能够获得经验和钱的任务,从根本上替代了网络游戏的练级,这改不掉它枯燥的本质。但是它是成功的,因为他赚够了钱。
但是真正让他赚够了钱的不是师门任务,而是将三类不同玩家完美的整合在一起了!游牧民、贵族、新手。
游牧民:游牧民的特点是虽然有不少的时间,但是金钱上拮据,他们不愿意也不可能在一款游戏上投入大量的金钱,加上
贵族:贵族们有足够的人民币,他们也许在时间上并不富裕;但是他们也想在虚幻的世界有自己的一席之地,去满足他们那自我满足的虚荣心。
新手:没有玩过任何的网络游戏,他们需要一个比较繁荣的游戏,最好还有一些朋友;这样他们就可以很容易的进入这款游戏。
结合!:游牧民在游戏中通过跑商等任务赚钱获得经验和钱,提升自己级别的同时,用获得虚拟货币,在系统中购买贵族寄售的点卡。(游牧民解决了人民币不够的问题)贵族用人民币购买游牧民的游戏币,用钱堆积起一个个人民币战士;由于有足够多的游牧民维持系统的繁荣,贵族们的强大变的有炫耀之地,他们于是愿意丢钱进去!“这个游戏很多人玩的!”一句话,吸引了无数不知游戏为何物的新手;他们自觉也不自觉的将自己划入不同的游戏阶级中,于是梦幻西游成功了,在萧条的网络游戏背景下。
在任务中成长——我的定义
任务应该是伴随玩家成长,了解游戏世界的手段;当玩家完成旧的任务时,等级能力各方面应该获得提高,而同时也会面临新的任务。任务应该是构架与世界背景之下的,玩家通过做任务去了解自己所在的游戏世界的文化,就好比小说中的故事情节。

二、任务的新鲜感觉

关键字:新鲜感
人之所以有玩游戏的需求,有一点可以十分肯定;那就是现实生活往往是有规律的,每天都在重复中度过。这产生一种很强的疲劳感和无聊感,于是有人开始玩游戏,他们在游戏中能看到许多现实生活中看不到的东西,这让他们觉得很好奇!可是一旦这些东西也被他们所熟悉时,没有其他东西可以吸引他们的情况下(比如:人于人的竞技性),游戏就变的不是那样有意思了!
所以,个人认为,游戏一定要给人新鲜的感觉!

1、接任务的新鲜感觉
    接任务的新鲜感觉,就好比现实生活中一些随机和偶然的事件;比如走在路上突然有人搭讪的感觉,再比如在教室里上自习突然发现脚下有十块钱!
现在网络游戏的任务一般固定在NPC的身上,玩家需要找到正确的NPC激活对应的任务;然后完成任务再找NPC寻求奖励!
以下是我现在所想到的增加接任务的新鲜感的方式:
从怪物身上掉落任务卷轴!
按规律在游戏中移动的NPC,遇上游戏玩家时会给予任务!
当玩家达到某些条件时,会收到NPC写给玩家的信,可以在NPC处激发隐藏任务!
玩家每天可以在NPC处接一随机任务,任务的奖励也可以是在几种物品之中随机选择的!
游戏世界定期发生,所有玩家的行为决定任务的结果!

2、任务奖品的新鲜感
玩家在任务中获得的奖品应该是具有一定的特殊性!如果任务中获得的奖品可以轻易的被其他的方式所替代,那玩家往往会选择更加简洁和方便的方式来替代任务。再者,如果游戏任务给予的奖励不能够给予玩家足够的兴奋感,玩家也很难提起对游戏任务的兴趣。
正面的典型:魔力宝贝
魔力宝贝的任务奖品系统是最丰富多猜的,有别与一般网络游戏只给一些经验、金钱或物品(可替代品);魔力宝贝往往奖励一些称号、首饰(无法通过其他手段获得的属性)。
现在还记得当初玩魔力,做“传说中的勇者”任务,看到别人有这个称号,不顾一切也要做完任务获得称号,有了称号以后又在服务器里整天整天的溜达,生怕别人不知道。

3、任务的故事情节
任务应该建立在曲折的故事情节之上,最少应该建立在曲折的迷宫之上!如果任务只有时间、地点、人物、事情,那将是毫无吸引力的!拖个反面例子出来先:(来自A3)
初次出发
这是第一个任务!
在艾高尼打猎最软弱的怪物巨枭10只后
找到1个巨枭的耳朵去送给艾密叶吧。
     再来看看暴雪在魔兽世界一个叫完美烈酒的任务吧,为了让玩家融入任务的背景之中。做了一段算是挺长的背景描述,这很容易吸引玩家进入游戏设计者预想的状况之中!
完美的烈酒
任务目的:  帮Brewnal村庄的瑞旧德找到6个微光草。
任务说明: 我正在寻找制作完美烈酒的方法,我肯定能找到它的。我有酿造的天分。只要让我找到合适的处方就能做到了,霜鬃巨魔有一种植物-微光草,他们在东北方向的洞穴里。他们拿它当成一个奇草用在部落的典礼上,我们矮人到没有发现它有什么大用处。不过他尝起来相当奇特。我想也许能够拿来酿酒。
 从霜鬃巨魔那里帮我找到一些微光草。你只要从巨魔的篮子直接拿就行了。

三、链状的任务

关键字:链状任务 应用范围
链状任务是在任务链之中,前一个任务是后一个任务的前提条件;必须从完成第一个任务切入任务链之中,才能继续完成下面的任务。链状的任务适合描述故事的发展,适合伴随玩家的成长,也适合做一个欲望的诱饵。

1、故事情节的发展
    例子:魔力宝贝
不好意思,又是魔力宝贝。魔力宝贝的主线任务并不刻意强调其链状特性;但是当玩家在一个环境下成长的羽翼丰满,会自然而然需要完成新的任务,进入下面的游戏环节。采用链状的方式,能够最好的诠释故事的发展。

2、伴随玩家的成长
新手入门任务基本上在每款网络游戏都会出现,是伴随玩家成长的典范。一款网络游戏如果不是操作极其简单,那就需要一个好的新手入门系统;如果一款游戏上手十分困难,难到有点象在学一门新的语言或手艺,那么玩家在被游戏的乐趣所吸引之前就有可能放弃。

3、永远抓不到的香蕉
    永远抓不到的香蕉!如果一定要将链状任务和玩家比做什么的话;我喜欢把玩家比做猴子,把链状任务比做香蕉。怎么样能够让玩家变的更加积极?更加充满兴趣?简单的来说就是香蕉永远在前方,但是你却永远差那么一点点抓到的过程!
自己想了个简单的例子来说明怎么样用香蕉吸引猴子。
链状任务的前后两个分别是:“蜘蛛线”“白狐皮”。玩家在完成“蜘蛛线”的任务时,NPC给予新的任务“白狐皮”。任务描述:真的很感谢你帮我收集蜘蛛线,用这东西缝制的衣服再结实不过了;用来缝制一般的材料真是浪费,如果能够得到充满灵力的白狐皮,我一定能够制作出“白狐皮衣”。即使是普通人穿上它也能拥有无穷的力量!年轻人,再帮我收集一些白狐皮吧。如果数量够多的话,作为报答,我将为你免费制作一件“白狐皮衣”。
    玩家在这种情况下,很自然的就会继续下去;因为“白狐皮衣”的诱惑。(注:如果白狐皮衣丢的一地都是,随便打个怪就掉,或者在商店里就能买到。那么这个任务将彻底变的无趣!因为遍地都是香蕉,你手上拿的那一根对猴子已经没有任何吸引力啦!)

四、非线性的任务

关键字:非线性任务 封闭式 开放式
    游戏绝对是不同与小说的艺术形式,游戏往往能带给玩家更强烈的参与感;因为玩家在面临问题的时候能够做出自己的选择,小说不可以。
每个人的思维方式、人生观、价值观是不一样的,于是在相同的情况下,不同的人会做出不同的选择;而这些不同的选择所带来的结果是不一样的,这种对外部事物的改变能力能够给予玩家最强烈的自身价值认同。

1、封闭式非线性任务
在任务之中多添加一些选择,在不同的选择之下,最终可能都能够完成任务;但是完成任务的路径不同,最后获得的奖励也不同。
拿“完美的烈酒”制造一个非线形的任务吧。玩家来到霜鬃巨魔所居住的洞穴前,发现门口有两个巨魔守卫。这时候弹出任务提示:杀掉门口的守卫有可能会惊醒洞内的霜鬃巨魔,看看周围有没有什么秘密入口能够进入洞穴之中吧。
这时候,玩家面临选择,是杀掉巨魔守卫直接冲进去还是找秘密路口;杀掉巨魔守卫会引来巨魔酋长与玩家作战,如果玩家能力足够强的话能够与之对抗,否则有可能无法完成任务。
玩家在附近转了转,发现有一个小洞能够爬进洞穴之中;于是玩家选择爬入洞穴之中。在洞穴之中转了会,终于发现了微光草。当玩家将微光草放在手心时,发现这种东西拥有神奇的力量,能够减缓体力的消耗。
这个时候,玩家自然而然就面临选择了。是将微光草交出来?还是自己留着。

2、开放式非线性任务
开放式非线形任务,是在游戏世界某些条件达到以后;系统自动激活,所有玩家将共同面临出现的状况,玩家可以感觉的到因为自己的选择,游戏世界发生的变化。
例子:玩家大量的猎杀怪物,怪物们对玩家的仇恨达到一定程度。激发任务“怪物的复仇”,系统公告:“东南方有大批怪物正在集结,他们的目标是攻陷我们的城堡!去给予他们痛击吧!让他们滚会自己肮脏贫瘠的世界去吧!”
玩家在这种情况下,将面临选择是否要去打击怪物呢?假设大部分的玩家选择不去杀怪物的话,就有可能出现怪物大量集结攻入城堡,难以抵挡的状况。
在网络游戏里还从来没见过这种任务形式,不过这有可能成为未来网络游戏最震撼人心的任务系统。

五、任务中的怪物
怪物是任务系统十分重要的一个环节,强大的而智慧的怪物会让人激动兴奋!而愚蠢弱小的怪物会让人觉得索然无味。这和人生很象,当你击败了自己一直很想打败的人,你会变的异常兴奋和激动不已。

1、时间的把握
当玩家已经将某个BOSS锁定为自己想要战胜的目标,那么在时间上,他将面临两个时间段。前一段,征途开始到到达BOSS所在的目的地。后一段,与BOSS作战。
在这两个时间段上,玩家在前一段时间将处于焦虑和好奇的状态。随着时间的推移焦虑和好奇的感觉将逐渐增加,最终到达一个顶点;然后开始下降,取而代之的是一种害怕失落抱怨的感觉,这种感觉也会越来越强。从前一段进入后一段的时间应该是玩家到达顶点之后的一点点时间,就是开始有些士气低落的时候。
与BOSS作战也一样,时间的把握应该是适中的。如果BOSS太弱小,游戏索然无味;反之BOSS太强大,玩家将彻底失去信心。
这种时间的把握并没有什么固定的公式可以追寻,只能是一种大概的感觉。

2、怪物的强大程度
怪物的强大程度应该是适中的,不断的让玩家有心惊肉跳的感觉,但是也不断的让玩家感觉到希望就在前方,只要再坚持一下就能打败他!如果怪物太过弱小,几下就轻易的被解决掉,那很无趣;如果怪物太强大,给人的感觉象是不可战胜,那玩家也会失去战胜怪物的勇气。
鄙视一下:鄙视有些游戏,法师用魔法远程打击怪物,怪物一直跟着跑就是打不到法师,一直到被打死。尤其是一些BOSS级别的怪物也这样!这很无聊,玩家很快就会从为自己的小聪明洋洋得意而转变为提不起精神来。

记:以上是个人对游戏任务系统的看法了,只是一家之言,离专业差很远,表达能力也不太好;只是根据自己对游戏的思考和对游戏策划一职的向往,写下来的东西。希望自己能够找到游戏策划的工作。人应该为理想活着吧。

posted @ 2005-07-26 21:07 蓝色雪焰 阅读(881) | 评论 (1)编辑 收藏
 

逆向思维的创新

新的游戏的诞生,往往脱胎于老游戏,很少有独立于现有游戏之外的游戏模式诞生,当然他们也会诞生,在适当的时候。

创作的思维往往来源于一刹那的灵感,辅助这个灵感成功的则有一些其他的创新和很多大家认同的架构。

在更多的时候,我们所设计的游戏是研究和分析别人的游戏的各种优秀的因素,然后进行变化。其实并没有根本上的创新,但它的确是一种很省力的创新。

变化游戏的要素方法有很多,一般都是加加减减,就是把多个游戏的优秀因素融合到某一游戏中,或者也有将某个大的游戏删减使其更凝练和紧凑。

而我想说的是一种逆向思维的方式,很多时候,它是困难的,但同时也是有趣的。

“玩家做植物,NPC做动物”就是这种思维下的结果。

用传统思维来分析这条创意,会发现它决不可行。因为没有交互,所以衍生的许多例如“任务”“装备”“PK”“等级”“属性”等等都无作用了。

我们不妨将植物考虑成一种有生命的物体,不过,在现实中,它们的确是有生命的。这就符合角色扮演的一个条件:植物与玩家同是有生命的物体。这是真实的。

我们再将植物考虑成一种有思维有感受的物体,那么植物就具备了角色扮演的另一个条件:植物与玩家一样可以思考。这是虚拟的(或者科学可以证明它是真实的)
两者的不同是,植物是不能使用工具,不能行走,不能掌握自己命运的,而玩家则可以。

当我们把植物这个角色附加给玩家的时候,我们会想,植物是怎样去引导世界,如同动物去支配世界一样。

植物的花色,光泽,高度,粗壮,姿势,果实,水分,香味,都是它的属性,不同的属性造就了其不同的命运,如果我们把“光泽”,“姿势”,“香味”交给作为植物的玩家去支配,那么这个世界就有了互动的因素了。

植物因为不同地域,所以汲取了不同的养分与阳光,所以“花色”和“形成香味的营养成分”不同,造就了其改变周边环境和改变自身的不同,也就是说,不同的地域使植物更富有多样性以改变周围的环境。

另一个重要的因素是动物,或者说我们的NPC,他们是配合玩家,来引导玩家支配这个世界的。所以玩家通过了自身的光泽变化,姿势,香味引导了不同的动物做出了不同的反映,从而改变自身,改变周遭。

我们尝试分析几个例子吧:

天气变化:

刮龙卷风的时候:植物可以改变“姿势”成萎缩状,或者贴着地面,使受到伤害最小。

天气晴朗的时候:植物可以改变“姿势”张开身躯,拼命汲取各种养分以使自己长大。

下雨的时候:植物可以改变“姿势”包拢根系,以存储水分。

季节变化:(一般来说)

春天:万物复苏,改变“光泽”“香味”去影响各种昆虫给你传播花粉。

夏天:草木繁盛:因为有充足的阳光,则要改变不同的姿势来避免阳光和水分的过足或不足

秋天:结成果实:可以寄放灵魂于多个种子,寻找机会传播出去。借助风,动物,或水流等。

冬天:有的草木也可以依然常青的,但大多植物需要改变“姿态”来使自己积攒养分和改变环境。

动物行为:

引导动物传播花粉:根据不同地区常出现的不同昆虫,改变自己的花色和香味,使其接触自己,并损失部分养分和换来其他养分。

引导动物带走自己:根据不同地区出现的不同动物,根据它们的喜好,改变果实的香味和姿态,使其吞下你,带你到其他地方,以此,可以实现你探索世界的梦想。

这样一来,可以发觉到玩家所扮演的植物是一个使别人改变自己的被动角色。游戏的乐趣就是通过自己的改变来改变别人。

好,这个创意看起来可行。如果要深入,我们就需要再考虑如何增加游戏的可玩性和持久性。

如果一个玩家总是不停的改变自己以躲避各种大自然的遭难,甚至根本无法做到躲避这样的意识,那么他会很快疲累不堪。而且“只是单纯的改变自己来改变世界”这一个乐趣是无法满足玩家渴望更多乐趣的。

我们尝试加入其他游戏的优秀因素,列如:冒险。形成冒险如同人类如何将番茄种遍地球一样,我们说“为什么番茄会种遍地球?”,那因为人类的参与;“但为什么有些植物没有呢?”,是因为人们不喜爱。

所以,改变自己,让各种动物喜爱,使它们能带你周游世界吧。

你可以将种子带到路边,在路边开出最芳香和艳丽的花,让美丽的女子带你回家,体验家的温暖——温室的花朵。然后再故意枯萎,让她们丢弃你在野外,然后你再结出美味的果实,让各种动物带你换个地方。你如此熟练的运用改变自己的技巧来改变别人。

然后“任务”“技能”“合成”“培养”“等级”等等,我们都可以用这个创意去改变,然后形成一个非常具有创意的游戏。

很显然,我们还有许多工作要做,但创意是可行的,不是吗?

我们可以预见这个游戏,如果它是网络游戏的话:

两个扮演花的玩家,用自己独特的香味诱拐了两只脑袋有点晕的狼去攻击对方,他们说这叫‘PK’;有个玩家使用了各种手段终于采集了7个地区的养分,开出了“七色花”,成为今年的花王;有两朵花,千方百计使一对NPC结成了夫妻;还有一棵树,控制了一大块土地,路过的玩家都得交他的过路费,否则就没有养分活过这片土地。

如何非常顺利的将各种因素嵌入到一个新创意中使其成为一款具有特色的产品,是一个创意策划所要做到的,当然不要忘了市场。

牵涉到游戏设计的东西有很多,但只要掌握了方法,创新也不需要靠拍脑袋的

posted @ 2005-07-25 19:23 蓝色雪焰 阅读(269) | 评论 (0)编辑 收藏
 

《清明上河图》的故事

  北宋著名画家张择端绘制的不朽杰作《清明上河图》,是我国绘画史上的无价之宝。它是一幅用现实主义手法创作的长卷风
 俗画,通过对市俗生活的细致描绘,生动地再现了北宋汴京承平时期的繁荣景象。
   张择端,字正道,南北宋之交的画家,东武(今山东诸城)人。《清明上河图》是张择端在宋徽宗朝任朝翰林画院画史时所
 作。这幅长卷为绢本,淡着色,画幅高24.8厘米,长528.7厘米。它是一幅用高度现实主义手法创作的长卷风俗画,通过对市俗
 生活的细致描写,生动地再现了北宋汴京升平时期的繁荣

   张择端完成这幅歌颂太平盛世历史长卷后,首先将它呈献给了宋徽宗。宋徽宗因此成为此画的第一位收藏者。作为中国历史
 上书画大家的宋徽宗酷爱此画,用他著名的"瘦金体"书法亲笔在图上题写了"清明上河图"五个字,并钤上了双龙小印(今佚)。

   这件享誉古今中外的传世杰作,在问世以后的800多年里,曾被无数收藏家和鉴赏家把玩欣赏,是后世帝王权贵巧取豪夺的
 目标。它曾辗转飘零,几经战火,历尽劫难……它曾经五次进入宫廷,四次被盗出宫,历经劫难,演绎出许多传奇故事。

   (1) 装裱匠以假易真

   《清明上河图》,最先由宋徽宗收藏于北宋宫廷,公元1126年九月,金兵掳走了徽钦二帝,洗劫了宫中宝物。《清明上河图》
 却流传于民间,元灭金后,画第二次进入皇宫。元代至正年间,宫中有个装裱匠,用临摹本把真本换出,卖于某真定守,后又卖
 给武林(杭州)的陈彦廉,陈怕事败,又急于用钱,就卖给博雅好古寓居北京的杨准。

   (2) 汤装裱恩将仇报

   据清代顾塑公的《消夏闻记》载:太仓王(yu)家里收藏有《清明上河图》,严世蕃知情后,强行索要,王(yu)不愿,就请一
 高手(即黄彪)复制一本送去,早先王(yu)巡抚两浙时,有一姓汤的裱画师,生活十分困难,王(yu)把他带回家中做事,后又推荐
 给严世蕃。当王(yu)的仿本(清明上河图)送到严家时,汤裱画恰在旁边,就对严世蕃说:"这画是假的"。严世善听后,十分恼火,
 恰值俺塔入寇大同。王(yu)当时为苏辽总督,御寇无术,严氏党羽借机弹劾王(yu),因此被杀。

   (3) 陆夫人绣枕藏画

   据明人李日华《味水轩日记》载,明嘉靖年间(1522-1566),奸相严嵩柄国,权倾朝野,其子严世蕃仗势横行乡里,他们得
 知《清明上河图》是无上神品,便派人四处搜寻。

   此时,画存于陆完家,陆完死后,夫人十分珍爱地把画藏在绣花枕中,秘不示人。夫人有一外甥姓王,长于绘画,乖巧善谈,
 趁夫人高兴时,要求看画,夫人一时推辞不开,便允许他坐在小阁中不带笔墨,限定时间观看,王生号振斋,聪颖过人,经十几
 次观赏,对画中房屋、街道、舟车,人物构图布局,均默记在心,回去之后,就将全图临摹仿制流传于世,但真品终归严嵩之手。

   (4) 冯太监流言避嫌

   据传:《清明上河图》入宫后,隆庆帝不喜欢字画,成国公朱希忠趁机奏请皇帝赐与他,皇帝却让估成高价,抵其俸禄,画
 将要给朱时,一个小太监得知此画价值连城,便将画盗走,正要出宫,管事人来了,小太监急将画藏到阴沟里,恰遇当天下雨,
 一连三天,画已腐烂,不堪收拾。

   这个故事,明人詹景风收入他的《东图书览编》中,实为盗画人冯保所杜撰。冯保是隆庆帝万历年间的秉笔太监,东厂首领,
 有权有势,出入皇宫,冯保得知《清明上河图》以后写有题跋,如系皇帝赏赐,他在题跋中一定大书特书,但冯保只字末提,显
 系盗窃到手,为了掩入耳目,他编造了以上离奇的故事。

   (5) 清宣统皇宫盗宝

   《清明上河图》入清后,曾为陆费墀毕沅收藏,嘉庆二年,毕沅死。四年(1799)毕家被抄,《清明上河图)第四次入官。被
 收在紫禁城的迎春阁内。此后,《清明上河图》一直在清宫珍藏。

   辛亥革命后,溥仪(宣统)逊位,仍居宫中,1925年,他离宫之前,将宫中珍玩字画盗往天津。《清明上河固》即在其中。后
 伪满成立,他将此画带到长春皇宫,1945年,东北解放前夕,溥仪仓皇出逃,将此画带至通化,不忍丢掉,被我军缴获,收藏于
 东北博物馆。1955年拨交故宫博物馆。这是《清明上河图》第五次入紫禁城,不过不是昔日皇宫,而是人民的博物院了。

   文化大革命中,林彪四大干将之一李作鹏,曾利用权势将《清明上河图》强行从故宫博物院"借"出,据为己有。他还伙同邱
 会作、吴法宪等人一起,霸占了其他一大批珍贵文物。林彪倒台后,《清明上河图》才又重见天日,如今依然珍藏在故宫博物院
 中。

   《清明上河图》画卷内容探讨: 《清明上河图》自问世以来,历代都有临摹本,且大小繁简不同。据统计,目前国内外公
 私所藏的《清明上河图》摹本有30幅。

   《清明上河图》究竟画了些什么内容呢?为什么千百年来,它的魅力一直不衰?

   据齐藤谦所撰《拙堂文话·卷八》统计,《清明上河图》上共有各色人物1643 人,动物208头(只),比古典小说《三国演
 义》(1191人)、《红楼梦》(975人)、《水浒传》(787人)中任何一部描绘的人物都要多。

   《清明上河图全图可分为三个段落,展开图,首先看到的是汴京郊外的景物。中段主要描绘的是上土桥及大汴河两岸的繁忙
 景象。后段则描绘了汴京市区的街景。人物大不足3厘米,小者如豆粒,仔细品察,个个形神毕备,毫纤俱现,极富情趣。

   《清明上河图》大至原野、浩河、商廊,小至舟车人物、摊铺、摆设、市招文字皆统组一起,真实自然,令人有如临其境之
 感。整部作品长而不冗,繁而不乱,严密紧凑,有如一气呵成,充分表现了画家张择端的过人笔力,不愧为中华艺术宝库中的稀
 世珍宝。

   据图后明人李东阳的题跋考据,《清明上河图》前面应还有一段绘远郊山水,并有宋徽宗瘦金体字签题和他收藏用的双龙小
 印印记,现在这些画上都已不见。原因有两种,一种可能是因为此图流传年代太久,经无数人之手把玩欣赏,开头部分便坏掉了,
 于是后人装裱时便将其裁掉;一种可能是因宋徽宗题记及双龙小印值钱,后人将其故意裁去,作另一幅画卖掉了。

   还有许多专家猜想《清明上河图》后半部佚失了一大部分,因为画不应该在刚进入开封城便戛然而止,而应画到金明池为止。

   《清明上河图》究竟有没有佚去后半部,它到底还有多少难解之谜,这一切,都吸引着中外学者、专家进行探索。

posted @ 2005-07-24 00:21 蓝色雪焰 阅读(253) | 评论 (0)编辑 收藏
 

网游服务器技术动态

   与硝烟弥漫的网络游戏一样,在其幕后的网络游戏服务器市场同样也是战火纷飞,服务器作为网络游戏的“引擎”,承担着认证、存储、运行网络游戏软件的关键 任务。因此,网络游戏行业也成为了服务器厂商必争之地,浪潮、联想、DELL、IBM、HP、宝德、网新易得等厂商在此市场中混战撕杀。

   从去年开始,网络游戏业就开始进入一个高速发展期,不断有新公司进入,粗略估算,专门从事网络游戏运营的公司不下150家,网易、新浪、搜狐三大门户网 站更是先后跻身于网络游戏产业,并努力使之成为新的利润增长点。据计世资讯发布的网络游戏市场最新研究报告显示,截止到2003年年底,国内网络游戏用户 已经达到1900万人,而在2004年,网络游戏用户将达3200万,增长率高达72%。

   网络游戏给国产服务器厂商带来的是一个巨大的商业机会,而国产服务器的强势已经显现出来。浪潮、联想携国产服务器企业攻城拔寨,夺得超过65%的市场占 有率,前五大市场领先的服务器厂商中,只有一家国外品牌DELL。国产服务器厂商策略灵活、贴近用户、了解市场、产品研发针对性强,因此在网络游戏市场具 有得天独厚的竞争优势。虽然HP、IBM等传统强势厂商实力强大,但在竞争中并不占优,浪潮、DELL、联想、宝德、网新易得分别以26.5%、 23.7%、10.1%、9.2%、7%排得前五,如此格局在近期不会有大的变化。

   国产服务器的冒尖一方面是因为厂商对网络游戏市场进行了详细的需求分析,在2003年中多家服务器厂商针对网络游戏市场做了大量的市场工作,浪潮推出针 对中国网络游戏市场的“A”计划,很快该计划就得到了市场的回应,中国最大的网络游戏运营商上海盛大向浪潮购买了可满足8000万网络游戏玩家需求的近 3000千台浪潮服务器,此后,浪潮又成功地拿下了上海热线近千台服务器的订单。2003年浪潮服务器销售幅增达80%,在包括网络游戏的电信增值业务市 场业绩增长近两倍。而联想为销售服务器更直接介入网络游戏市场的开拓,2003年联想与中国联通、第九城市签署了共同建设和开拓网络游戏《奇迹》的市场合 作协议。根据协议,中国联通将投入自身的网络及服务器硬件设备、带宽;第九城市投入《奇迹》的内容资源和服务,为联通用户提供在线游戏;联想作为《奇迹》 指定设备提供商,将提供高性价比的服务器及其他硬件产品及与产品相关的各种售后服务。此外,联想发布了国内首款运用仿真技术制造的机架式服务器。

   另一方面也是很重要的一方面,是国产服务器在技术方面不断革新,以联想、曙光、浪潮为代表的厂商陆续推出了64位4路乃至8路高性能服务器,其技术已接 近或达到国际领先水平,在并行计算、容错处理、负载均衡、稳定性方面不亚于DELL、IBM、HP等国际品牌商的相关服务器产品。


一、十大国产网络游戏服务器

  1.浪潮英信游侠服务器
  为网络游戏运营设计的第一款专业服务器,它突破传统观念,采用独有的大散热系统,特别适合网络游戏大规模部署应用。
关键点:
  1U超高密度机架式设计,适合大规模部署
  基于多路Intel Xeon处理器,采用533MHz系统总线,全面提升系统性能
  集成Ultra320 SCSI RAID技术,最大化系统运行时间
  集成2个千兆网卡,支持负载均衡和冗余技术,全面提升网络传输效率和安全性
  专业的无线缆连接技术和专业的散热风道设计,确保系统散热
  浪潮英信猎鹰服务器管理软件和蓝海豚智能安装导航软件,帮您提高系统管理效率

   浪潮英信NF180服务器在1U空间里全面应用业界新技术,以其高性能和高可靠性设计是大规模部署的密集计算应用、集群应用及主机托管完全信赖的平台, 是电信运营和服务商、石油、游戏网站的必然之选,NF180优秀的可伸缩性完全适合科学计算、Web、邮件、防火墙、FTP、VOD等应用。

最小的空间里提供最大的系统性能
   浪潮英信NF180采用1U高密度设计,支持多路Intel Xeon处理器,主频可高达3.0GHz,采用533MHz系统总线,系统带宽可高达 4.3GB/s,全面提升系统的计算处理能力;NF180最大可扩展4GB DDR266内存,满足您的应用扩展需求;集成2个千兆网卡,支持负载均衡和 冗余技术,使网络传输效率和安全性都有更大的提升。 

可靠性和可管理性设计,最大化系统运行时间
   浪潮英信NF180采用具有先进纠错技术的ECC DDR内存,避免因内存错误而导致的系统不稳定;集成Ultra320 SCSI RAID技术,实 现RAID1+hot Spare在提升磁盘读写速率的同时,确保您关键数据的安全;双网卡冗余大大提升网络的可用性;系统集成BMC高级管理卡,使您能 够通过Web进行远程开、关机等管理;浪潮英信猎鹰服务器管理软件和浪潮英信蓝海豚智能安装导航软件,有效帮您提高系统管理效率。

专业化散热设计,确保大规模部署
  浪潮英信NF180采用专业的风道设计并引入了领先的无线缆设计技术,确保系统散热效果,完全适合您进行大规模部署应用。

集成SCSI控制器
   NF180集成单通道Ultra320 SCSI控制器,磁盘传输速率可以达到320MB/s,突破磁盘I/O性能瓶颈,使对磁盘频繁读写的应用如数据 库、VOD、Web等性能有明显提升。NF180还集成了Ultra320 SCSI RAID,无须添加的组件实现RAID1+Hot Spare能够 确保用户的数据安全。RAID1+Hot spare的工作原理是,两块硬盘作RAID1镜像,第三块硬盘作为热备份,作镜像的其中一个硬盘故障后,热备 份硬盘会自动替换,使数据的安全性更高。

  2.曙光天阔S240XP
  是一款定位在对计算能力、存储能力、管理性和稳定性要求都很高的应用行业的企业级产品。

可扩展性
  支持四路Intel XeonTM MP处理器,主频达1.6GHz,集成512K高速L3 CACHE,最大可达1M,系统总线频率为400MHz;
  最大内存32GB DDR ECC Registered SDRAM,采用4栈交叉存取方式,大大扩充了内存总线带宽,提高了内存性能;
  内置超大容量硬盘阵列,可达1314G(18*73G);
  集成双通道Ultra 160(Ultra 320 ) SCSI控制器,数据传输速率最高达160MB/s(320MB/s可选),可连接所有类型的SCSI设备;
  具有三个3.5"和四个5.25"的存储舱位,可同时安装光驱、软驱、磁带机和非热插拔硬盘等I/O设备;
  提供六个64bit 100MHz PCI-X插槽, 大大提升了系统的I/O性能;
  支持Windows NT、Windows 2000、SCO UnixWare7.1.1、Novell Netware4.11/5.0和Red hat7.3等网络操作系统

易用性
  大深度19英寸机箱设计,12U高度,配有保护门、机箱锁、键盘锁,可选配滚轮、底座或专用导轨及箱耳配合机架式安装;
  用户导航系统简洁、方便,信息集成度高,可轻松安装、配置; 
  风扇采用自休眠、智能化控制,减少系统噪音,实现更高的安全级别;
  采用灵活有效的故障报告方式,在事故发生前解决系统隐患;

可管理性
  主板集成硬件监控芯片,监测主板、CPU、内存、电源、风扇、网卡等各种部件的运行状态;
  具备网络流量监测、事件日志及报警状态记录功能;
  支持网络唤醒(WOL-Wake On Lan)、MODEM唤醒(WOM-Wake On Modem)和远程关机、重启功能。

  3.联想万全R510服务器
  处理器为Intel0.13微米工艺制造,533MHz系统前端总线的Xeon处理器,支持超线程技术。

   联想万全R510是一台支持双路新Xeon的1U服务器,而且它还是一台最多支持4块3.5英寸硬盘的产品,在散热上遇到的挑战非比寻常,研发代号“火 山”。1U机箱可做得文章本来就不多,在安装了两个火热的新Xeon后,如何解决散热问题就成为头等大事。万全R510另辟蹊径,将进风口设计在机箱侧 面,由两个30瓦的涡轮风扇直接对处理器散热片进行强制风冷,保证了服务器工作时的稳定性。它板载了LSI C1030 SCSI 320控制器,支持 RAID 0/1,也支持用户扩展PCI-X接口的RAID卡来获得更好的性能。联想给该服务器特别设计了3.5英寸标准尺寸的监控——慧眼,占用了最左 侧磁盘仓,剩下的3个仓位被3块36GB的15K硬盘占据,标配电源500W,足够全配置时的电力消耗。

可靠稳定更加专业
  整个产品按照市场定位完全自主设计和开发,可以做到按需定制;
  通过仿真设计,有效降低了噪音及散热问题;
  良好的EMI特性,通过了国家CLASS B级标准(此标准只针对消费类产品);
  通过了权威的抗震测试,提升易损部件(硬盘)的可靠性。

易于管理
  远程监控功能可以使用户在远离机房噪声的环境中及时了解和监控服务器的健康状态;
  主板上的DEBUG灯显示POST的每一个步骤,明确指示系统出故障的阶段,方便客户及维护人员排错;
  可选的慧眼及LCD套件,采用嵌入管理处理器,使得服务器管理任务与正常业务处理互不影响。

出色的扩展能力
  支持高达4块热插拔硬盘、2块非热插拔IDE硬盘或2块SATA硬盘;
  内存最大可扩展到8G;
  在1U空间提供2个PCI扩展支持。

人性化设计,带给您舒适体验
  万全R510出色的品质感体现在从客户使用角度考虑,使服务器变得更加人性化、简单易用:如方便耐用的硬盘把手、ID指示灯、前面板布局采用黄金分割点等。

  4.清华同方超强TR100 2380服务器
  可以支持两个0.13微米制程的IntelXeon处理器,主频范围1.8到3.06GHz。

   超强 TR100 2380 服务器采用标准的 1U 机架式服务器机箱,其高贵的品质和细腻的做工无不展示了超强 TR100 2380 服务器的高 档品质。在大型的网络游戏中,游戏服务器(也称 GS 服务器)数量占主体部分,所有的游戏软件都安装在这些三五成组的服务器上,动辄上百台的游戏服务器 数量,如果用 2U 的服务器,对于寸土寸金的电信托管机房,承租费用不是一个小的数字。

  超强 TR100 2380 服务器可支持双颗含超线 程技术的 XEON 处理器,支持 FSB 533MHz 。超线程技术使双处理器的处理性能大幅提 升,通过配置一组服务器,其处理能力可以支持到成千上万的在线用户。

  超强 TR100 2380 服务器的内存使用  1U 机箱专用的 ECC REGISTERED DDR266 内存,最多可以支持到  4G 的内存寻址空间。网络游戏的每个页面都需要占用大量的内存空间,使用较大的内存可以加快对页面的处理速度。

   为了确保网络的畅通与可靠, 超强 TR100 2380 服务器的网卡采用冗余设计,主板集成了双 INTEL 千兆网卡。由于 1U 服务器对空间 的限制,网卡一般采用主板集成,采用双网卡冗余的配置大大提高了网络的可靠性。采用双网卡的优点是即使一个网络接口出现问题,也不至于出现更换主板的大动 作,会给维修带来很大的方便。

  超强 TR100 2380 服务器主板集成了  ULTRA320 SCSI RAID1 的功能并采用 10000 转  SCSI 硬盘,确保服务器 7 × 24 运行情况下硬件的可靠性。

  散热系统性能尤为出色, CPU 和主机箱均用每分钟万转以上、风力强劲散热风扇,整个散热系统风扇转速根据温度自动调节,并提供系统监测功能。

  在设计上,超强 TR100 2380 服务器拥有多项系统管理功能,并针对游戏软件提供很好的兼容性。

  5.宝德PT1350R服务器
  是一款基于Intel架构的服务器产品,融合了多项先进技术,具有良好的处理能力,能够满足网络游戏对服务器的要求。

强大的处理能力
   Powtel 1350R 支持基于Intel®NetBurst™微体系结构的XEON™ 处理器,512K高速二级缓存。提供高达533MHz的前端系统总线,数据带宽比上一代IA架构服务器提高3倍。配合E7501芯片组,内存系统支持双路 交叉访问,数据带宽高达4.3GB/s。

高性价比的解决方案
   Powtel 1350R采用基于E7501芯片组的服务器主板,支持双路的XEON™处理器,支持多线程和多任务的超线程技术, 4个DIMM内存插槽最大可支持8 GB的Registered ECC DDR 266 SDRAM,配合内存的双向交叉存取系统,紧密的机箱设计提供 1个64bit/100MHz PCI-X的扩展插槽,为中小型企业提供所需的内存容量和I/O带宽,集成1块Intel®  PRO/100+和1块Intel® PRO/1000+服务器网卡,保证高速数据传输网络畅通无阻。

方便灵活的定制解决方案
   Powtel 1350R集成Ultra 320 SCSI控制器,最多可支持3块传输率为320MB/s的SCSI热插拔硬盘。集成 HostRAID* 新技术,支持SCSI RAID 0,1。Intel SRCZCR RAID卡可选,支持SCSI RAID 0,1,01,5。 支持Intel PRO/1000 XT,Intel PRO/100等多种服务器网卡。通过这些方便灵活的定制方案,满足不同客户的需求!

适用多种的应用环境
   Powtel 1350R 精密的、独特的1U机架式设计,符合各类网络、信息运营商的要求,可以完全胜任WEB、Email、FTP、File、高速 缓存、消息、多媒体、代理主机、搜索引擎、安全性、虚拟私人网路(VPN)、IP语音(VOIP)、网络托管等,同时也可以胜任多数据存储、数据库应用、 高性能计算、计算机集群等领域,是数据中心建设、电子政务、企业信息化建设、游戏网站、宽带网络建设、校园主干网建设等方面应用的最佳选择。

领先的服务器管理 
   采用业界领先的IPMI 1.5管理控制标准,配合使用宝德服务器管理系统PSM,可监控系统关键参数:系统电压、温度、风扇转速等。PSM包括远程管 理和诊断的工具,即使是在服务器死机或操作系统已经崩溃的情况下,也可迅速的解决问题。更有紧急事件处理接口(EMP),使管理人员从远程通过电话线及 Modem便可监控服务器的工作情况,或通过EMP口发警告,降低系统维护成本。通过局域网串行管理功能,客户可以将远程管理串行通信量和控制台文字(包 括BIOS POST代码)重新引导到局域网,这项创新功能特别适用于机架环境,省去了管理串行电缆和购买昂贵串行集中器的烦恼。通过远程访问系统状态、 记录、配置数据及实用程序,无需配置远程管理卡。通过主动性局域网及移动设备进行事件过滤与警报,支持E-mail报警功能。

  6.联志超跃4400R
  超跃4400R服务器是一款可作为互连网的基础设施和数据中心的核心运算平台的四路服务器,支持超线程技术。

   超跃4400R服务器是一款可作为互连网的基础设施和数据中心的核心运算平台的四路服务器,支持多达4个INTEL MP XEON 1.5GHz以上 处理器,三级缓存高达512k/1MB/2M,支持超线程技术。内存采用ECC RG DDR SDROM,支持交叉存取,共12个DIMM插槽,可扩展 至24GB。五端式PCI总线,可提供3GB/SEC的I/O带宽。而戴尔PowerEdge 6600采用最多四颗最新的具备 Hyper- Threading 功能的2.0GHz、2.5GHz 或 2.8GHz至强MP处理器、热插拔 PCI-X 插槽、DDR 内存以及被称作“备件库”  和 “内存镜像”的全新内存保护架构。芯片组采用四路交叉存取技术以及七层 PCI 总线架构,提供不打折扣的 I/O 吞吐能力,共有16 个  DIMM 插座,能支持512MB - 32GB PC200 DDR SDRAM 内存。

  7.方正圆明MR100A服务器
  面向于企业互联网和内部业务系统应用的部门级服务器,最大支持两个处理器,并支持超线程处理技术。

  圆明MR100采用1U机架式的设计。紧凑的1U机箱设计适用于需要高度部署服务器的场合,提供高性能的同时,具备良好的扩展性。在服务器前面板上,有网卡灯、风扇自动报警灯、前面板控制和指示灯等指示报警
灯,方便了用户的管理。

   圆明MR100服务器支持基于Intel NetBurst微体系结构的XEON处理器,最大支持两个处理器,并支持超线程处理技术。它配有512K高 速二级缓存,并提供高达533MHz的前端系统总线。超线程技术可通过更高效地利用处理器资源而支持多线程代码和多任务操作,实现多线程和多任务同时运 行,增加事务处理执行的数量。圆明MR100最大支持8GB内存,提供3个热插拔硬盘架位。圆明MR100主板集成了单通道Ultra320 SCSI控 制器,两个10/100/1000M自适应网卡及两个64位66/100MHz的PCI-X扩展插槽,这些保证了服务器的I/O性能。

   圆明MR100适用于Web服务器、文件服务器等前端接入层服务器、网络负载平衡服务器以及安全服务器、代理/缓存服务器、VOD、多媒体服务器等应 用。它是大规模部署的并行密集计算应用、集群应用及主机托管完全信赖的平台,完全能够满足电信运营和服务商、石油、游戏网站等用户的需求。

  8.华硕AP1600R服务器
  支持双路至强处理器,处理器主频可达到3.06GHz。采用外置光驱和软驱,节省空间。

   华硕AP1600R-E2是继AP1720R-E2后的又一款Nocona服务器产品。它有着在1U服务器中不多见的扩展性能。它拥有2个32位,2个 64位,1个PCI-E的扩展插槽,都是配备了2个千兆网卡,其中一个为PCI-E的接口界面,这种类型的网卡接口较之传统的PCI界面性能至少可以提供 50%。它拥有2颗硬盘插槽,可以内置或者热插拔各种类型硬盘,包括IDE,SATA,SCSI等常见类型。其中SATA机型,AP1600R-E2内建 了SATA RAID的控制器,可以实现RAID0,1,0+1等功能,在保证了客户的数据安全,免于重要资料丢失的同时,最大程度上节约了中小企业的采 购成本。

  华硕服务器独有的散热技术,可以保证该服务器 800MHz FSB、最高可以3.6GHz+的CPU能够在1U的狭小空间内,正常持续地运转,,是一款性价比比较高的1U机架式服务器。在保证了高性 能的同时,也兼顾了系统的稳定性和管理的简洁方便性。这也是华硕的优势所在。

  9.八亿时空CS6012P服务器
  是八亿时空推出的一款性价比良好的超薄型、高集成度的商用级机架式服务器。1U的机架式设计,节省空间。

   CS6012P是八亿时空推出的一款性价比良好的超薄型、高集成度的商用级机架式服务器。1U的机架式设计,节省空间。同时免工具拆卸方便对服务器的维 护和管理。超薄型设计有效节约空间,支持基于Intel NetBurst微体系结构的XEON处理器,处理器内置512K高速二级缓存,支持超线程处理 技术。

  CS6012P服务器支持基于Intel NetBurst微体系结构的XEON处理器,处理器内置512K高速二级缓存,支持超线程处理技术。

   S6012P采用基于Intel E7500芯片组的服务器主板,支持双路XEON处理器,支持400MHz外部总线频率,提高了数据吞吐量。 S6012P服务器主板上配备4个DIMM内存插槽,支持高达8GB内存容量,同时它支持双通道的ECM DDR内存,使服务器具备优良的数据吞吐能力, 增强了系统的可靠性。CS6012P主板上集成Ultra 320 SCSI控制器,保证服务器有高速的数据通道。CS6012P最多可支持3块热插拔硬 盘,再加上RAID卡,能够有效地保证服务器的数据安全。CS6012P主板上集成了1块百兆网卡和1块千兆网卡,使服务器具备了高速畅通的数据传输网 络。

  CS6012P服务器占用空间少,可靠性及可扩展性能良好,能够满足网络游戏行业用户对服务器的需求。CS6012P服务器成本较低,而且不损失性能,对于网络游戏行业是一个很好的选择。 

  10.网新易得ISP1320R
  是网新易得推出的一款适用面很广的工作组级和部门级的主流服务器,能满足广泛的电子商务要求。

  网新易得服务器具有较为出色的性能和良好的图形处理能力。支持AGP 8X,主板集成具有8M视频内存ATI Rage XL SVGA PCI视频控制器。

   支持双路Intel至强处理器。该款服务器支持最大为8GB的ECC DDR266的内存,为用户预留了充足的扩展空间。CPU与北桥之间的带宽和内存 数据带宽均达到3.2GB/s,不会造成整体效能的瓶颈。服务器集成了Silicon Image Si3112A控制器,提供两条串行ATA通道和内置 RAID功能,为用户节约了成本,并能在一定程度上提供冗余来保障数据的安全。网新易得BSP 533R服务器提供了2根 64bit/100MHz PCI-X,1根64bit/66MHz PCI插槽和2根32bit/33MHz PCI插槽,在保障带宽的基础上又满足了 对服务器的扩展需求。在网络接口方面,集成一个Intel PRO/100和一个Intel PRO/1000网卡。

  集众多实用功能于一身,扩展能力较为强大。在测试中我们仅使用标准配置系统,获得的吞吐量和响应时间均较为出色,如果在增强整体配置后,性能还有一定的提升空间。充分体现了其较为强大的扩展能力,保障了用户在数据处理量增多后对整体系统的升级空间。


二、服务器操作系统、数据库

   绝大多数PC网游服务器(包括国外)基于的操作系统是WINDOWS,具体有WINDOWS SERVER 2000,  WINDOWS ADVANCE SERVER 2000, WINDOWS SERVER 2003,约占95%以上,其他如LINUX, UNIX 应用相对很少。这主要由于两方面的原因,一是游戏行业程序员对WINDOWS懂得多,对LINUX、UNIX懂得少;二是大多数成熟的游戏引擎是基于 WINDOWS平台开发的。但就笔者多年的经验来讲,WINDOWS平台稳定性和安全性方面均大不如LINUX,UNIX平台,建议国产游戏和游戏引擎应 该多考虑向LINUX和UNIX等相关平台移植,金山公司的《剑侠情缘ONLINE》是一个很好的值得借鉴的例子。

   选用WINDOWS平台的网游其数据库一般是SQL SERVER2000,少数用MYSQL;选用LINUX/UNIX平台的数据库一般是 ORACLE9I, ORALCE 10G。用SQL SERVER2000 一定要打上补丁,再做安全策略,封掉1643和1644端口,否则一旦感染 针对SQL SERVER的病毒,会通过这两个端口狂向网关发包,并交叉感染其他服务器,最终很可能导致服务器机房全体宕机。MYSQL是一个免费的产 品,稳定性不是很好,而且定期需要修正维护,最好不要用于大型网络游戏,但绝对可以用于私服。笔者用过ORACLE FOR LINUX/UNIX的产 品,稳定性很好,维护也比较方便,只是入门台阶较高。ORACLE FOR WINDOWS的稳定性和性能如何尚需探讨。
posted @ 2005-07-24 00:20 蓝色雪焰 阅读(887) | 评论 (0)编辑 收藏
 

如何编写用TCP/IP的通讯程序

   最近在网上不断的看到有人问如何用BCB的TServerSocket和TClientSocket进行编程的问题,所以决定把我的一些编程经验告诉给大家,让大家能够尽快的掌握他们的用法。

首先要讲一下他们的一些设置(属性):
TServerSocket 的几个属性
Active       
    是否是工作状态,可以把它设置为ture或false来启动和停止侦听。
Port
    本机侦听的端口,可以设置为一大于1024的数;
ServerType   
    服务端的工作方式,有两个选择,一个是stNonBlocking 非阻塞方式,一个是stThreadBlocking线程阻塞方式,默认是非阻塞方式。用非阻塞方式编程比较简单(我个人认为),用阻塞方式对每个连接必须自己用线程来控制收发。
ThreadCacheSize  
    缓冲的线程个数 当ServerType是stThreadBlocking时有效。
TClientSocket 的几个属性
Active      
    是否是工作状态,可以把它设置为ture或false来同服务端建立或断开连接。
Host    
    服务器(ServerSocket)的计算机名,是一个字符串
Address
服务器(ServerSocket)的IP地址
ClientType
   客户端的工作方式一种是ctNonBlocking非阻塞方式,一种是ctBlocking阻塞方式,默认是非阻塞方式
Port
同服务端(ServerSocket)连接的端口,这个端口就是ServerSocket的侦听              端口
在设置ClientSocket的(Host)主机名和设置(Address)IP地址是等效的,但设主机名需要网络具有DNS(域名解析服务)服务器,而且设主机名要比设主机的IP地址连接的速度慢一些。建议用Address来同ServerSocket进行连接。

设置好所有的属性后,ServerSocket控件就可以通过将它的Active属性置为true来进行侦听了。ClientSocket可以通过设置它的Active属性来同ServerSocket进行连接。连接成功就可以进行通讯了。在这个过程中会产生一些事件,下面说说他们各自的事件。

TServerSocket的几个事件
OnAccept
    当一个客户同服务端连接成功后产生这个事件,产生这个事件后这个连接就可用了,可以对这个客户进行发送和接收数据。
OnClientConnect  
当一个客户正在同服务端建立连接的时候产生此事件,在这里你可以决定是否接受这个连接。
OnClientDisconnect
当一个客户同服务端的连接断开的时候产生此事件,你需要在这里进行一些处理,如从连接列表中清除次连接释放内存等。
OnClientError
当客户同服务端出现错误时产生此事件,在此事件中你可以通过设置ErrorCode = 0来屏蔽系统的错误提示。这样就可以避免讨厌的英文错误了。根据ErrorEvent的不同的值来得知发生了什么错误,它有一下几中错误类型
eeGeneral   未知错误
eeSend    发送数据出现错误
eeReceive   接收数据出现错误
eeConnect   客户请求连接时出现错误
eeDisconnect 客户断开连接时出现错误
eeAccept     接受一个客户时发生错误
    一般来讲,当发生错误的时候这个客户的连接就已经不可用了,要对这个客户进行连接失败处理。
OnClientRead
当服务端收到客户端发来的数据的时候产生此事件。接收客户端的数据都在这里进行。
OnClientWrite
当服务端发送数据的时候产生此事件。

TClientSocket的几个事件

OnConnect
同服务端(ServerSocket)连接成功后将产生此事件,产生此事件后才说明这个连接可用了,这时才可以向ServerSocket发送数据。
OnConnecting
正在同服务端进行连接是产生此事件。
OnDisconnect
同服务端的连接断开后产生此事件,产生此事件后ClientSocket的Active属性就为false了,这时这个连接就不可用了,必须重新进行连接才能向服务器发送数据。
onError
当Socket发生错误时产生此事件,这个事件的意义和ServerSocket的Error事件完全一样,只是它没有eeAccept错误。
OnRead
当接收到服务端发来的数据后产生此事件。
OnWrite
当向服务端发送数据的时候产生此事件。

上面介绍了一下这两个控件的基本属性和事件,在掌握一些方法就可以用这两个控件进行编写通讯程序了,今天写的有写累了,改天在写它的方法并具体使用这两个控件编写一个通讯程序,有两个选择,一个是局域网的聊天程序,一个是局域网内的控制程序,大家喜欢那一个呢?给点建议吧.

posted @ 2005-07-24 00:19 蓝色雪焰 阅读(525) | 评论 (0)编辑 收藏
 

游戏完成平衡性的技巧

概要:关于游戏平衡性技巧的资料并不普及。这篇文章有意通过描述游戏平衡和不平衡的性质,以及如何达到游戏平衡的过方法这两个方面来填补这个信息空白。这个方法非常依赖于现有的系统工程技能以及公认的游戏设计理论。大量的案例学习及小故事被采用来帮助将方法和具体的设计结合起来。

翻译:张三丰 语嫣
作者:Tom Cadwell

 一个伟大的设计和一个杰出的游戏之间往往只有一个缺乏游戏平衡性的区别。多数游戏策划要通过反复试验才学会游戏平衡的基本原理。如果他们幸运的话,也许可以得到同事传授的一两个小窍门。精通游戏平衡的人往往警惕地保守着自己的秘密,或者无心与人分享。结果是虽然有关游戏平衡性的信息确实存在,但是可得到的却很少。这篇文章试图阐述一个获得游戏平衡性的方法。

什么是游戏平衡?

  Sid Meier 曾经说过:“一个游戏是很多有趣的选择的集合。”因此得出的是如果游戏失去平衡,就会减少这些选择而影响游戏性。一个理想的游戏应该经过一系列的选择,最后以胜利或其它完成的条件结束。有时一些选择明显成为唯一的选择,或明显是无效的。如果在某一阶段,游戏出现仅有唯一的选择,而游戏却没有结束,就说明游戏的平衡性有了问题。

  几乎所有通常所谓的不平衡都来自选择权的减少。例如,在一个策略游戏里,如果某一种部队的作用和费用相比过于划算,就会造成其它的部队几乎或完全没有作用。这种情况不仅只留给玩家一个选择(无从选择),而且使玩家受到很多不相关的干扰。这些干扰实际上让游戏变得比较迷乱,减损了游戏性,而且让玩家感到灰心。

  游戏大富翁(Monopoly)中就有很好的游戏不平衡性的例子。在游戏的后期,玩家们总是尽量拖长呆在监狱里的时间。显然地,玩家在游戏后期的最好的策略就是进监狱而且不付钱出来,希望别人进入自己的领土而破产。在玩大富翁的最后阶段,无需再作选择,游戏基本结束了。没有人再选择是否购买财产,也很少有机会再根据游戏规则建设新的财产(因为房子已经被用完),而且因为资产已经被几个人集中,所以也不再有交易可
做。一旦产生这种情形,游戏就变成每个玩家有一定的机率获胜而基本上结束了。此时玩家可以做的很少,除非靠运气得胜。这情景与游戏前期及中期大相径庭,那时玩家往往忙于大施战术、巧妙夺取利益、陷害对手或谨慎购买“重量级”黄色、绿色或深蓝色的地产。

  这只是一个不平衡性的举例说明。在游戏中存在许多不同种类的不平衡性。所有的不平衡性都与没有选择性或缺乏选择性有关。

● 太昂贵却用处不大和便宜而且有效:游戏选择通常与游戏代价相联系,不管是牺牲其它的选择、游戏金钱或其它的商品。当一个选择太昂贵以致用处不大,或者太便宜而成为明显的选择时,游戏的不平衡性就出现了,因为有一些游戏选择无效了。虽然此类不平衡性最为普遍,但是通常经过简单地调整这些选择的价格或者是效果就可以纠正过来。

● 玩家时间的不平衡:大多数游戏平衡性对比的基础是以玩家为一个选择而必须放弃其它的各种不同选择的代价来衡量。我们很容易忽视玩家必须消耗时间执行每一个选择。在一个即时游戏里,玩家在游戏里没有无限的时间,所以时间不仅是一个资源,而且是一个有限的资源。在一个非即时游戏里,游戏时间不受限制,但是玩家的时间是受限制的。这种不平衡性基本上是另一种太昂贵或太廉价不平衡性的表现,只是这里这些游戏的代价不是有形的。游戏星际争霸(Starcraft)里的虫族(Zerg)就是一个很好的这种不平衡的例子。虽然虫族从价格上与其它族类是平衡的,但是就玩家的时间而言他们很容易被制造及使用。主要由于这个特点,虫族在游戏星际争霸发行之后大约长达6个月中,在联赛与竞赛中一直是最受欢迎的种族。

● 技术水平的不平衡性:随着玩家的游戏技能不断提高,不同的游戏选择的相对有效性也会改变。如果一种选择容易操作,而另一种极难操作,则结论是一个资深玩家和一个新玩家的对这两种选择的相对有效性的判断是完全不同的。这是游戏开发者的一个常见的陷阱,因为他们一般比较接近“高级玩家”的水平,所以经常看不见新玩家所要面对的问题。但是从另一方面看,随着操作水平的提高,而游戏性也同时“进化”,通常被认为是一件好事。所以注意到这种平衡性很重要,但是也要认识到上面说的现象也很普遍。

● 强制的劣势或优势:在一个对战的游戏里,一些操作的组合使得某一方更具有优越性。这样不仅是典型的不平衡性(因为有一个选择明显最好),这种状况还是不公平的。在一个多人游戏中,最好避免不公平的情况出现,这也是保证游戏平衡的重要一招。

  所有的不平衡性最终归结为没有选择性。只要记住这个原则,就容易区分可校正的不平衡性及根本的不平衡性。

如何达到可平衡性

  游戏平衡性通常被认为是alpha或beta测试的事情,但事实上就像任何工程,好的准备工作是实现良好游戏平衡的关键。优秀的游戏设计具有极大的可平衡性,也就是指游戏系统可以较容易地调整到平衡的状态。如果系统没有可平衡性,费尽周折也不可能将游戏调整到平衡。

  一个游戏是一个系统,在设计初期应用良好的系统设计方式将带来较好的可平衡性。好的系统设计方式可以分成三个重要步骤:游戏要素的模块性,连贯的设计宗旨及对复杂性的控制与调节。在设计的早期就采用这些方法将为设计师在游戏测试的alpha和beta阶段节省大量的时间。

游戏要素的模块性

  游戏要素的模块性归结于每个游戏要素只为了一个特别目的存在,如果可能的话,尽量做到只有一个单一的目的。只要贯彻这个原则,调整一个游戏要素只会改变游戏的某个方面而不是许多方面。

  有一个很好的例子,说明游戏要素缺乏模块性会造成游戏开发人不必要的麻烦。在星际争霸的beta测试中,暴雪(Blizzard,星际争霸的开发人)有一套相当清晰的伤害系统,其中每一兵种各有三种伤害方式:爆炸性的,标准型的或冲击性的。每种伤害方式都有一个根据外型大小而不同的伤害系数——爆炸性伤害对大型目标最有效,冲击性伤害对小型目标最有效,而标准型伤害可用于任何目标。其中一个兵种——飞龙(Mutalisk),不断给平衡性带来问题,因为就功能性上看,不可以被分为大、中或小型中的一种。如果将飞龙设为中型兵种,则它对于爆炸性武器类型的兵种来说抵抗力太强;如将其设为大型,则使其相对爆炸性武器类型的兵种(这种兵种一般是飞龙的天敌)又过于脆弱。暴雪(Blizzard)不能仅仅修改爆炸性相对于大型兵种或爆炸性相对于中型兵种的伤害系数,因为这样做的话就会影响一大批其它兵种的设置。也无法修改爆炸性武器兵种的攻击值,因为这样会影响其它的很多的设置。

  更让人困惑的是飞龙有两个重要角色——防空军与防步兵(陆战兵种没有空中攻击能力),并具有相同的基本伤害力,而其他类似的兵团(侦察机-Scout、幽灵战机-Wraith)却有不同的武器系统,可以根据具体角色进行调整。

  因为在伤害系统和飞龙的设计上缺乏模块性的原因,暴雪直到游戏上市后五个月才使飞龙兵种达到平衡。这并不是因为修正是不可能做到,而是因为缺乏系统模块性而使修正非常困难。飞龙在星际争霸里具有一定独特的用途,如果暴雪将它的平衡参数与其它不相关的兵种分开设计,平衡将大为容易。最简单的方法就是为飞龙(及其它类似兵团)添加一个独立的类型,并给予它一个针对各种伤害的自己的防御系数。如果设计师将飞
龙的空军与地面攻击划分开来,调节平衡也会变得简单。

  当然,星际争霸的多数设计都有相当程度的模块性。施法者(Spellcaster)兵种具有清晰的用途和相对特殊的角色就是一个很好的例子。事实上许多魔法(Spells),包括寄生虫(Broodling)和EMP振荡波(EMP Blast),具有非常特殊的作用,使调整这些兵种的平衡性就容易得多。

  良好的系统模块性不仅是游戏平衡性的前提,它还是朝着解决的方向走近一步。有一个良好的模块性可以使设计师针对各种特殊问题轻松进行调整,而不会影响到其它系统。

连贯的设计宗旨

  连贯的设计宗旨可能是在初始设计阶段要遵守的最重要的原则,但是往往容易因为政策问题、疏忽大意或缺乏良好沟通而被忽视。连贯设计宗旨的定义是如果游戏要素没有根据游戏的大局进行同步设计,最好的结果是它会使玩家偏移主要的游戏感觉,最坏的可能性是它会损害主要的游戏感觉。这种情况存在于缺乏中心控制或开发时间很长的游戏中。

  较有名的多用户网络游戏(MUD)Duris:Land of Bloodlust(是Everquest—“无尽的任务”的原型Sojourn的姐妹版)就因此带来太多问题。其中一个例子是,某个程序设计人自行编入一个他自己感兴趣的角色类型。虽然这个角色类型本身很有意思,但是它使其它几个类型变得无用或大失威力。这个角色类型拥有了其它种族专有的技能,而正是这些技能的专有性才使得这些种族实用而且好玩。这个程序员还带来很多类似的游
戏平衡性问题。他的主要目的是创造一个他感兴趣的类型。这与多用户网络游戏开发人想要创造有趣、独创的角色并与整个系统相吻合的愿望相冲突。他的类型非但不独特(因为是从其它各类型中各取一小部分特点),还与游戏的其它部分格格不入。

复杂性控制

  复杂性控制应概括为:“保持简单、易懂”。过于复杂的游戏系统让人费解,因此,也更难做到平衡。一个过于复杂的系统通常是因为最初的设计太糟糕和无休止的添加补丁(理论上这些补丁是合理,但实际上是不连贯的一团糟),或者是太常见的“太多厨师呆在一个厨房里”的现象,这通常也说明缺乏设计宗旨一致性的问题。复杂性控制的另外一个优点就是它避免了一些潜在的游戏性的问题。尤其是,正如复杂的游戏系统让人费解也因此不好平衡,也更难让玩家理解,甚至从某一程度开始玩家很难再享受游戏。一个很常见的设计错误是为了游戏复杂化而牺牲游戏深度,那将对游戏平衡调整造成极大的困难,并造成对游戏性的困惑和费解。

基本游戏平衡过程

  除了基本的规则和技巧之外,过程是非常重要的。游戏的平衡过程有几个步骤,每个步骤都有各种各样的技巧。

  首先要考虑的是让游戏进入一个有趣及可玩的境界,这就需要宏观调控,或者说让游戏中的大部分要素至少达到基本上平衡,而且不存在任何要素过分地不平衡。只要达到这个状态,就可以继续细调游戏要素的具体部分,如RTS游戏里的种族或派系。

  当然在游戏alpha测试阶段之前通常应已进行了宏观调整,所以可能随着新功能的增加要重新进行调整。家园(Homeworld)的主策划Erin Daly提出,应将相关的功能在同一时间加入,然后做一个宏观调控,基本上这是在整个开发过程中保持游戏可玩性的最有效的方法。

  一旦实现最后的宏观调整,最好在alpha测试阶段的后期,就可以对游戏进行微观调控1使游戏平衡达到完美的程度。

宏观调控

  提供一个可平衡的游戏系统显然只是达到游戏平衡的第一个步骤。即便是最完美的设计也需要变成现实,而在实施的过程中错误就会出现,在初期设计中就经常会出现小错误。许多游戏价值在整个游戏实现之后才能被清楚认识到。在这些情况下,设计者必须在alpha测试阶段之前及测试期间运用宏观调控技巧校正平衡值。

  宏观调控应在微观调开始之前结束;如果游戏的基础还在不断改变时,较小的平衡性的改变将变得没有效果而无用。在进行宏观调时,目的是“找到”在设计案中描述的游戏性目标。当然,在你还不清楚如何表明核心游戏性时是不可能进行游戏细节的调整。

  为了瞄准核心游戏性,明确地说明核心游戏性及其如何体现是很重要的。只要做到这一步,就可以建立一定的基线,也就是Ensemble Studios1所谓的“定锚”。举例说明,你也许设立游戏速度的基线为“大约10分钟长的游戏”,或者设立角色韧性的基线为“被一个危险怪兽攻击3次是致命的”。一旦你为每个游戏因素(一个地图、一个角色类型,一段对话等等)都找到满意的基线,就可以利用这些游戏要素基线为根据扩展游戏。

平衡性数学

  一旦完成某一特定要素的宏观调控,在有些情况下可应用平衡性数学将结果复制到类似的要素中去。虽然用平衡性数学改善系统的功效还不确定,原因是很难计算一些微妙的细节,但是它对确定不同游戏要素中的基线还是有效的。公认的、几乎对每一个游戏都有帮助的一个公式是成本效率方程式。

成本效率公式说明,针对一个成分来说,
游戏威力×耐久力=效力

而且:
平方根(游戏威力×耐力÷成本的平方)=成本效力

  游戏威力有可能是火力(伤害性×发射速度)或点数。耐力可以是使用次数或被击点数。成本代表游戏资源,通常是金子、钱币或回合(如棋赛中走一步的真正成本就是一个回合)。另一个有用的方程式主要适用于策略游戏和其它“战斗”场景的是分解式方程式。“分解式”反应了战斗场景中众多小群体总的有效性虽然与几个大群体的战斗力相等,但效力却不相同的特点。众多小群体通常效力小,当然这是假设不存在其它微妙的因素(如大团体攻击小兵种时,杀伤力太大而造成浪费)。这是因为群体在小个体逐渐死去之后就逐渐丧失威力,而一个大兵种可以支撑较长时间,所以不会因逐渐损失而失去效力。据此,相对有效性的公式被定为:
有效性的减损(相对于较小的个体)=
0.5+0.5×[较大个体的数量÷较小个体的数量(相同的价格)]

所得到数字的倒数则是较大个体有效性的增加。

  这些公式和其它“平衡性数学”对于初步的平衡性特别有用。最好避免从数学上实现完美的平衡性,除非是相当简单的游戏系统。比如说,因为游戏规则简单,平衡游戏Risk并不是特别困难,且玩家的选择可以作到相当的量化。平衡游戏大富翁(Monopoly)是可能的,但是会比游戏Risk困难,因为随机因素(如滚骰子)相对于Risk来说可造成更普遍的影响,而且也因为大富翁有更多数量的特别游戏因素(运气牌、抵押规则,监狱
等等)。譬如在一个现代的RTS中,能够在这样更多复杂性的情况下得到完美的数学平衡性,就相当于完成了博士论文。

 一旦游戏已受宏观调控,游戏的平衡必须要进入细节调校。如果游戏至少达到有点乐趣可言,且不存在明显的问题,则已基本上完成宏观调控并可开始转向微小细节。微观调控是游戏策划为了进一步完美平衡性而实施的小手术。一个小手术一般被定义为:变化值相对于一个“全球”数值(影响许多其它的游戏要素)要少于10%,相对于一个“地方性”数值(一个单一游戏要素)则应少于30-40%。

  微观调控最大的挑战是找到问题。一旦找到问题,就可以开始稍微调整数值,但要注意不要因此再产生出新的问题。良好的要素模块和预先计划在这一阶段很有效果——没有它们,就可能做不到在一个合理时间范围内完成游戏的平衡。

辨识较小的不平衡性

  策划有几个技巧可辨识较小的不平衡性。其中最明显的做法是大量地测试游戏,寻找一贯受惠或占优势的方法,或寻找从不被使用的方法。另一个常用方法是与一个试验人或另一个策划讨论假设的情景或与其对战,找到一个一致认为会产生的结果,然后在游戏中测试是否会发生同样的结果。

  如果策划用第一种方法,只是寻找占优势(或从不被使用)的方法,确定这种情况产生的实际原因是很重要的,并确认事情是否应该这样发展。对不平衡性进行分类,并尝试将其归类到典型的不平衡性中,有助于理解问题。基本上越是了解不平衡性的类型及特征就越能够调整它。

  近年来,愈加流行的方法是秘密记录(不告诉玩家)游戏成果及统计数据。游戏世纪帝国(Age of Empires),雪乐山(Sierra)发表的几款游戏及斗争阴影(Strifeshadow)都受益于这个技巧。有时这些统计数据具开导性,有时也极具误导性。

  对所有的数据都应有所保留。有时一个不成熟的测试人群会带来很不正确的结果,只因为他们不熟悉游戏,而且没有机会全面尝试(或只是尝试最容易的部分)。同样的,一个过于成熟的测试人群也有可能忽视其它策略的潜力,或被困在一个很高级却较模糊的不平衡点,而这些不平衡与其它更明显的不平衡点相比显得不那么紧迫。Ethermoon娱乐公司在游戏斗争阴影里应用的一个极为有效的技巧就是夸大在beta阶段的补丁中的游
戏平衡性变化,来怂恿玩家尝试新的战略,而不再继续“抵抗”新的变化。

  发现不平衡性的第二个方法有时被称为“追逐不平衡性”,也就是一个假定的情景被定义后,而由此产生的各种可能的行动及结果都应是符合设计的。例如,一个坦克部队的冲锋应该被认为打败一个轻型车队的进攻,但同时也应该受到轻度伤害,而面对防坦克步兵团的反攻则应受到重创。如果在实际的游戏中,一个坦克部队的冲锋可完全歼灭一个轻型车队并可以与防坦克步兵团不分胜负,此时坦克部队的过于强大就造成了不平衡
性。追逐不平衡性是十分重要的,如果严格地执行,很容易就可以发现75%以上的较小不平衡性问题。游戏往往不按照策划所愿望的某种特别方式发展,特别是在一个对抗型的多人游戏中,一个“地区性”平衡价值的微小变化就可以造成游戏的平衡与不平衡。

  要紧记的一条是无论何时进行不平衡性的搜索,在游戏早期所设置的游戏要素,往往比后期的游戏要素要敏感得多。仅仅因为一个早期游戏要素的不平衡性会影响在它之后设置的所有东西,而后期游戏要素能够制造麻烦的时间有限。正如有必要在做微观调控之前先做好游戏的宏观调控,也有必要先平衡早期的游戏因素。

修整较小的不平衡性

  一旦辨识并证明了不平衡性,是否容易进行修正呢?是的,如果游戏已被设计为容易调整! 一个非常可调的游戏具备的素质能让设计师在不间接影响其它游戏因素的情况下,专门对付某一不平衡性。

  校正的重要一点是保持细调的水准(往小的方面想),尤其是升级游戏的时候。一个过于强大的游戏要素容易使其它要素失去效力,而一个过于无力的游戏要素则会被忽略而毫无效果。

  还很重要的一点是细调时不要影响到其它的游戏数值,譬如,在角色扮演游戏里考虑一个叫做“火球”的符咒,它是火系符咒的一种。如果火球威力过大,策划可做的就是全面降低火系魔法的威力,或将火球降级。很明显你应该做的是选择“地方性”的解决方法,在细调全面火系魔法之前将火球降级。这是一个很简单的例子,在大多情况下,游戏要素之间都存在一定程度的互相依赖。谨慎地考虑一个改变将会带来的冲击力,尝试
使用专门解决问题而不影响其它游戏要素的方法。

  最后,避免“过度解决”不平衡性。当策划在同一时间运用多重不同的细调方法来解决一个特定问题时就会产生“过度解决”的情形。这样就很难决定变化所带来的效果,因为你应用了多重独立的可变性来影响一个不独立的可变性。“过度解决”也有可能因意外地影响其他游戏要素而带来麻烦。

总结

  开发游戏过程当中,在面对许多细节所带来的庞大冲击时很容易偶尔忽视最终目标。保持真实地对待所想得到的游戏性,从根本上贯彻游戏平衡的原则是很辛苦的,但只有这样才可以保证高质量的游戏平衡,并且避免beta测试拖得太久。多人游戏日渐受到青睐,游戏平衡应尽可能地做到最好。太多充满希望的多人游戏都因为平庸的游戏平衡而黯然失色。

posted @ 2005-07-24 00:16 蓝色雪焰 阅读(402) | 评论 (0)编辑 收藏
 

北欧神话-天地和人的创造

博尔的儿子们修筑了河山;

太阳从南方照耀到他们的宫墙,

大地上,绿色的韭葱开始萌芽。

—《西比尔预言书》

奥丁、威利和维三位神的祖先在杀掉了庞大的巨人伊米尔以后,开始计划创造一个舒适而美丽的世界。

三位最早的神祗在一片阴暗冰冷的世界上苦苦地思考着怎样创造世界,不断寻找着可供创造的材料。但是,他们的面前除了冰雪就是溪水,力大无穷的众神为此煞费脑筋。终于有一天,奥丁对着眼前正在腐烂的伊米尔的庞大尸体失声喊叫起来:

“用伊米尔的尸体做新世界的材料!”

其他两位神祗也有茅塞顿开之感,纷纷称赞奥丁的好主意。于是,众神一起动手,把伊米尔的巨大身躯肢解开来。他们把伊米尔的肉体放在了金恩加鸿沟的正中间,把填满了鸿沟的肉体作为大地。众神又用他的血造成海洋和湖泊,用他的骨骼造成丘陵和山脉,牙齿和零碎的腭骨造成岩崖和卵石,头发和胡子造成树木和青草。

在大地造成以后,众神又把伊米尔的脑壳抛在上面,形成了天空,又把他的脑浆抛散到天空上面,形成云彩。为了不让天空从上方掉下来,众神派了四个侏儒分别到东南西北四个角落,用他们的肩膀支撑住天空的四角。这四个扛着天空的侏儒,他们的名字就分别为东、南、西和北。

在创造了大地和天空以后,奥丁、威利和维又从南方的火焰国中采来了许多火星,把它们随意抛散到天空上。这些火星就停留在天空上,成为满天的繁星,照亮了整个世界。

早在众神还没有想到要用伊米尔的尸体创造世界的时候,从伊米尔腐烂的肉体中生出了许多蛆虫。这些蛆虫攫取巨人之祖身上的精华,竟都是一些富有灵性的生物。在奥丁等神的裁决下,他们都有了类似人类的形体和智慧。从尸体受光一面生长出来的蛆虫变成了精灵或者叫光明精灵,从尸体背光一面生出来的则变成了黑暗精灵,人们一般把他们叫做侏儒。支撑天空的东南西北四个侏儒就是从伊米尔的尸体中生发出来的。

精灵们通体发亮,光明耀眼,长得非常美丽。他们通常性情温良,开朗热情,能和树木花草、游鱼飞鸟彼此沟通,因此众神就把他们作为神的朋友。他们也经常帮助众神管理世界,特别是日月星辰等一类事务。

侏儒们虽然和精灵同出一物,容貌性情却与之截然相反。他们长得矮小又难看,漆黑如沥青,而且贪财好色,狡猾而爱撒谎。

在世界规模初具的时候,神的祖先开始考虑创造一种完美的生物,得以居住在富饶肥沃的大地上。三位神祗经常带着这个问题在天地之间行走,察看他们创造天地的业绩。有一天,当奥丁、威利和维在海滩上散步的时候,海浪冲来了两截木头,一截是(木岑)树,一截是榆树。众神把它们拣起来后,觉得恰好可以作为创造人的材料,便开始用刀把它们分别雕刻成两个人形。由于众神精心雕刻,那段木成了一个栩栩如生的男人形状,而榆木则是一个女人的样子。

树木成形后,三位神祗就为他们注入了生命。

奥丁首先把人形握在手中,赐给了他们生命与呼吸;

威利接着赐给了他们灵魂与智慧;

最后,维赐给了他们体温和五官的感觉。人类诞生了。

根据他们的由来,神的祖先把男人命名为阿斯克(意为(木岑)树),女人命名为爱波拉(意为榆树)。众神让这对人类的始祖居住在四周由大海环绕的大地上,让他们结为夫妻,生儿育女。从阿斯克和爱波拉开始,人类就在大地上一代一代地繁衍开来,一直传续到了今天。

在创造人类,并且把他们安置到大地上的同时,神的祖先也在大地的上面,整个宇宙最中心的地方划定了一处神的居所,作为神国。发光的精灵们因为美丽温良,得以和众神比邻而居,在神国的四周建造了精致的精灵国。

在人类居住的大地的东边,众神划出一块地方允许巨人们居住。从洪水中逃出的巨人贝格尔密就居住在这个称为约顿海姆的巨人国里,并且繁衍出了许多霜的巨人。

黑色的侏儒们因为品性欠佳,众神罚他们只得居住在大地的下面,而且不得被白天的光线所照射到,否则的话他们就会变成石头或者溶化掉。为此,矮小的侏儒们就在泥土下面或者岩石中凿洞为巢,形成了一个黑精灵国,或者叫侏儒国。

智慧巨人密密尔有一个美丽、肤色黝黑的女儿,她的名字叫做夜晚。夜晚经常骑着她的骏马,奔驰在群星闪烁的天穹上。后来,美丽的夜晚和精灵国里掌管光线的黎明精灵德灵相爱了,他们生下了一个象他父亲一样英俊而光彩夺目的儿子,起名叫白天。

从此以后,当晨曦的红色光芒照耀在大地和海面上的时候,称为唤醒者的精灵们就会在黎明精灵德灵的宫墙外吟唱起清晨之歌,夜晚的儿子白天随即在歌声中骑上他的骏马,向无边的苍穹奔驰而去。同时,他的母亲夜晚经过一夜的奔驰,疲倦地回到宫殿里休息。

在巨人国里,有一个巨人生有一儿一女,长得英俊美丽,光彩夺目,分别叫做月亮和太阳。骄傲的巨人经常向其他生灵称赞他的儿女如何如何出众,这就引起了众神的注意。后来,众神就把这两个美丽的孩子从巨人国带走,分别交给他们两匹骏马和一辆大马车,让他们昼夜更替地在天空上巡行。

从此,称为太阳的女孩发着金光,跟着白天,称为月亮的男孩发着银光,跟随着夜晚,分别在天空上不断奔驰。

两条狰狞的恶狼,分别追逐着太阳和月亮,垂涎欲滴地企图把他们吞噬掉。他们不断地朝着太阳和月亮咆哮,紧紧跟在他们后面。但是,太阳用来驾车的亚维克和爱尔维斯是两匹无与伦比的神骏,它们的鬃毛闪烁着金色的光芒,以极快的速度拖曳着镶满宝石的太阳车向前奔驰。所以,太阳总是能够摆脱掉恶狼的追逐。

当金色的太阳驶过西边的地平线后,她就来到了黄昏精灵比灵的宫殿。在经过一天的奔驰以后,疲惫的太阳就在比灵为她安排的华床上休息了。比灵的仆从们则举着点燃的蜡烛和火炬围在她的床前,守护着她。当晨曦再次出现在地平线上的时候,太阳将再一次踏上她的马车,驾驭骏马奔驰在天空上。

当太阳登车启程的时候,月亮驾车回到了比灵的黄昏宫殿。当月亮休息在他的华床上的时候,一群睡眠精灵打着磕睡围绕在他的身边。

就这样,大地上的人类有了昼夜之分,也有了阳光的和煦和月光的温情。 

posted @ 2005-07-24 00:09 蓝色雪焰 阅读(245) | 评论 (0)编辑 收藏
 
一、“后现代”概念释义
(1)30年代到50年代,出现概念,但不清晰。按麦克尔·科勒的追溯,最早出现的概念即F·D·奥尼兹的“后现代主义”(Postmodernismo,1934),随后有D·费兹的“后现代”(Post-Modem,1942),A·汤因比的“后现代”(Post-Modem,1947),以及查尔斯·奥尔森在1950年到1958年期间经常使用这个词。但是,这些新名词概念不清,没有明确界定。(2)1959年到60年代中期,指美国的反文化。欧文·豪、哈里·莱文认为后现代主义是美国50年代开始的现代主义的衰落,是一股改头换面的“反智性思潮”(antiinte-llectualcurrent)。莱斯利·费德勒和苏珊·桑塔格认为60年代的反文化大大倾向于艺术的通俗化,即与精英文化决裂。(3)60年代后期,更彻底的对现代主义智性的反叛。里查德·奥森认为后现代主义是对哲学本体论的强烈怀疑,是对现代主义预设的反叛,它否定统一性,崇尚偶然性。(4)1972年到1976年,存在主义的后现代主义。威廉·斯邦诺斯以海德格尔和克尔凯郭尔的存在主义哲学为后现代主义的源头,认为后现代主义是致力于真实性,致力于揭示人类的历史性和历史的偶然性的作用话语的阐释理论。(5)70年代后期到80年代,走向综合与包容的后现代主义。如伊哈布·哈桑的“不确定性”与“内在性”,利奥塔德的反“元叙事”,梅苔·卡利内斯库的“新的(后现代)多元主义”等等。上述会议虽然主要以文学视角来审视后现代主义,但是它竭力涉及的是整个后现代主义现象,因此具有重要的参考价值。
联系20世纪其他最重要的后现代主义哲学家、社会学家等的理论来看,“后现代主义”概念可以大致分为以下两种。
1、现代主义的延续或现代主义之后的时期
丹尼尔·贝尔把资本主义社会分为工业社会与后工业社会。他认为二者的区别在于,工业社会是以机器技术为基础的,而后工业社会则是以知识技术为中轴的。但是他同时指出,后工业社会并不取代工业社会,而只是消除了一些东西,增加了另一些东西。对文化艺术上的现代主义与后现代主义,贝尔在《资本主义文化矛盾》一书中是这样看的:(1)后现代主义不是新的文化逻辑,而是“把现代主义逻辑推到了极端”的表现。(2)后现代主义在艺术上实现了文化自治。这也是从现代主义文化艺术走出普遍性、强调个性就开始的,只不过现代主义的文化独立的思想在后现代主义这里实现了。(3)后现代主义反对美学对生活的证明。在这一点上,它可以被认为是传统的现代主义以美学对生活的证明来代替宗教或道德的企图失败之后的新出路。(4)后现代主义抹杀艺术与生活的区别,因此,它“溢出了艺术的容器”,而强调一种行动本身。这样,它打破了现代主义对有序形式的依恋,放弃了审美形式的表现原则。现代主义的革命与反叛只是纸上谈兵或预演,而后现代主义则将革命与反判付诸行动。(5)因此,后现代主义将所有文化特权下放到民间,以通俗化为一大特色,并具有反文化(反传统的主流文化)的意味。(6)与此相应的是文化市场(文化商品化)的出现或加剧。当然,贝尔并非是个完全的“延续”派,因为他谈到后现代主义形成传统“文化言路的断裂”。尽管这种断裂在现代主义那里就埋下了祸根。
哈贝马斯是捍卫现代性的主要人物。他始终认为“现代性设计”本身没有问题,问题出在具体实行的过程中。他明确阐明自己的立场:“我并不想放弃现代性,也不想将现代性这项设计看成已告失败的事业。”他所说的问题指社会各方面在历史造成分裂之后缺少有效的沟通,例如专家文化与大众之间的隔阂。对此,他的解决方案是指出新的行为交际理论。他以艺术为例,提出消除专家与普通人之间的距离的办法是,“一方面,享受艺术的俗人应当自身受教以成为一个专家;另一方面,他也是一个胜任的消费者。这种人运用艺术并将美学经验联系到他自己的生活问题。”总之,哈贝马斯虽然认为现代主义艺术如先锋派已经走到了尽头,耗尽了现代性的推动力,但是在他看来,贝尔等人的后现代主义理论并不是一种可行的解决办法,因此他自己提出仅仅是修正偏差的行为交往理论。这样,他实际上是用现代性来对抗后现代性。
利奥塔德虽然旗帜鲜明地否定现代主义,但是他认为后现代主义应是现代主义的前期状态,也就是创新、反叛和“川流不息”。就这一点而言,他还是把后现代主义秉承现代主义初始时期创造性、反叛性的一面勾画了出来。
2、对现代性的否定或超越
利奥塔德指出“雄辩法”和“形而上学”作为科学合法化的证明本身得不到合法化证明,因此这些“宏大叙事”应该祛除。后现代主义的口号就是“向统一整体开战”。从传统到现代的所有体系化的东西都应该被打破。
与此相似的是罗蒂的“后哲学”观点。他认为现代主义企图以大哲学替代大神学的地位是行不通的,因此应该以后现代主义的“小型叙事”替代现代主义的“宏大叙事”。
F·杰姆逊的“文化分期”理论将现实主义、现代主义、后现代主义分别对应于国家资本主义、垄断资本主义、晚期(多国化)资本主义。他认为两次世界大战使资本主义世界发生很大变化,工业化、现代化使战争更令人恐惧,战争的破坏性也使人对工业化承诺失望,这样,现代主义的进步性消失了,现代主义也就成了“历史陈迹”。“这样,他便认可了后现代主义对现代主义的否定这一点。
米歇尔·福柯将知识与权力联系起来考察,以此作为分析主体与真理之间关系问题的工具。他以“疯癫”、“犯罪”和“性”三个方面作为切入点,否定西方现代文明,指出由于现代性进程中形成“理性独白”或“理性疯狂”的一边倒,致使人的另一面(非理性的一面)受到扭曲和压抑。因此继尼采“上帝死了”之后,福柯喊出“人死了”的警言。“人之死”的含义即人的中心地位的丧失。福柯认为自己不是非理性主义者,而是“反结构主义者”。所有现代主义的东西都是结构主义的,因此,反结构主义就是反现代主义。这样,福柯把自己摆到了后现代主义以文化边缘批判现代主义文化中心的位置。
德里达作为西方当代哲学界一位反现代主义斗士,最醒目的标志是他的“解构”观。他的目的是反对西方有史以来统治哲学思维的“罗各斯中心主义”。“罗各斯”在希腊语中具有说话、思想、规律、理性等含义。在赫拉克里特哲学里表示世界万物的本原及其运动变化规律,它体现为人的理性认识能力。罗各斯中心主义通过柏拉图对整个西方文化产生了深远的影响。在基督教《圣经·约翰福音》中,罗各斯是上帝的话语,是一切真理的终极源泉。总之,它是一种静态的、恒定的、抽象的、封闭的结构的中心。因为这种中心具有假定性,是与动态的、变化的、具体的、开放的历史事实相悖的,所以要加以拆解。
后现代主义也可以按“反叛的”、“建设的”和“中庸的”(带有中国古典哲学的“中庸”的含义)这三种来划分。反叛的后现代主义否定传统与现代主义的任何中心或本质观、形而上学或普遍性、封闭结构或形式,否定整体性或一切体系化的东西,否定连续性的历史观如线性进化论,否定一切深度模式等,而强调多元、断裂、局部或碎片、离散或弥漫、解构或开放性、平面或能指游戏等等。它们的特点是批判、摧毁多于建立。由于它的旗帜鲜明的革命性,也被称为“激进的”后现代主义。建设的后现代主义力图破中有立,在否定“机械还原论”的同时,实现对存在于现代主义的个人主义、人类中心论、机械主义、经济主义、消费主义、民族主义和军国主义的摆脱或超越,代之以后现代的“整体有机论”(这里的“整体”指世界各部分联系的或相关的层面,如宇宙论和生态圈)。中庸的后现代主义往往持客观认识的立场,力求准确、公正地看待一切。它强调现代主义与后现代主义的历史发展的必然性,把自己的研究重点放在历史与逻辑及其二者的关系上。
当然,各种形容意谓本身是次要的,关键在于把握“后现代主义”这一概念。显然,这个概念是多元的、不统一的,有些地方甚至是矛盾的,就象它所涵盖的现象一样。
二、后现代主义文化逻辑中的音乐
从中世纪开始的西方专业音乐史,在音乐型态上可以分为三个范式:传统、现代和后现代。传统范式即大小调体系,现代主义范式即各种除大小调体系之外的有体系和没体系的结构样式,后现代主义的范式包括解构的和多元的两种样式。这三个范式的区别是足够明晰的:传统型是有序的,但是只有大小调体系这一种结构;现代型也是有序的,但是却有许多种非传统的人工结构;后现代型是无序的,无论是反形式或多风格拼贴。另外,后现代主义的“多元”还包括通俗音乐、文化工业中的音乐和综合样式的音乐,它们的存在型态和存在方式都不同于传统型和现代型。当然,就象后现代主义是非“主义”的主义一样,后现代范式也是非范式的范式。
后现代主义样式的音乐或者受后现代主义影响的音乐可以大致划分为下列两大类型。限于篇幅,这里只简单提出基本样式,而不展开分析。
1、专业音乐领域:“无序”、“解构”、“反形式”、“多元混杂”等等。
第一种是无序、解构或反形式。如噪音音乐、具体音乐,材料为无序声波,结构也无序化。偶然音乐,通过反人工控制达到自然解构(局部的或全部的),结构亦无序化。电子音乐,它是20世纪的新生事物。作为一种特殊手段,它可以创作很传统的音乐,可以创作现代主义音乐,也可以用于后现代主义样式的音乐制作或带偶然性的表演。实际上它在实践领域更多地被用于后者,因此把它列于后现代主义样式名下。概念音乐,采用文字谱只是现象,它的实质是一种观念指导的行为艺术。“行为”体现了贝尔所说的后现代主义对现代主义艺术范围的革命“在现实中重演”的性质。此外还有环境音乐等,它们把音乐当作和现实事物没有差别的东西,从而消解了“艺术高于生活”的等级观念。典型作曲家如约翰·凯奇、施托克豪森等。
第二种是多元混杂。不同风格的拼贴、无机组合,或者不守被模仿对象的规则的模仿,即“拙劣模仿”。如拉迪斯拉夫·库普科维兹的《为我的自杀而作的挽歌》(1982),是对肖邦作品的拙劣模仿。复合风格的无机拼贴将既有的音乐当作一种并非高于现实事物的“现成品”,以此作为拼贴组合的材料,或进行歪曲变形的原形。例子如施尼特凯的《第三弦乐四重奏》(1983),将拉莫、贝多芬、萧斯塔克维奇和马勒的音乐拼贴在一起。这种消解艺术与生活的差别和等级、使作品无中心或多中心的做法,是后现代主义艺术的典型特征之一。
2、大众音乐或综合领域:世俗性、综合性、商品化、虚拟真实、广场效应等等。
第一种是文化工业中的音乐。艺术的通俗化是后现代主义的一大特征。在音乐领域,20世纪的录音棚制作是音乐工业的基础。它往往与音像业、各种传媒连成一体。它们的对象是全社会的大众。它改变了传统和现代的音乐厅方式,产生了新的传播方式和接受方式。对文化工业的问题,本雅明指出机械复制使艺术“韵味”消失,F·杰姆逊指出了它的“复制、类像与虚假化”特征,阿多诺和马尔库塞等人则对它的商品化、非艺术化、工具化和庸俗化进行了尖锐的批判。电脑系统的介入,又产生“机人互动”的虚拟真实现象,再次解构了作为确实的创作结果的音乐作品,而使音乐作品成为机人方式中主体参与过程所展现的可变事物,突出了观众参与性、音乐作品事件化和行为化,从而使音乐“溢出了艺术的容器”(贝尔),具有后现代主义的性质。
第二种是大众广场的音乐。如摇滚、“第三潮流”或“新世纪”广场。这里远远超出了听觉范围,具有巴赫金的“大众狂欢与多元对话”的性质。雅与俗、台上与台下、传统与现代、艺术与生活、政治与文化、科学与宗教等等的界线,在这里都不同程度地消解了。而这种消解,正是后现代主义所为。
需要说明的是,在看到后现代主义与传统和现代主义的不同或“断裂”现象之时,还应看到它们的历史发展的内在“连续性”的实质。正如哈桑所说:“现代主义与后现代主义并不象隔了铁幕或长城一样地可以截然分开。因为历史是渗透的,文化贯穿着过去、现在和未来。我断定,我们每个人都同时集维多利亚的、现代的和后现代的气质于一身。”此外,在“先锋派”算不算后现代主义的问题上,学者们有争议。但是多数人还是倾向于把先锋派中的达达划归为后现代主义,因为它的解构性质非常明显。
posted @ 2005-07-24 00:02 蓝色雪焰 阅读(222) | 评论 (0)编辑 收藏
 

  星相学,或称占星术(ASTROLOGY),是星相学家观测天体,日月星辰的位置及其各种变化后,作出解释,来预测人世间的各种事物的一种方术。   

  星相学认为,天体,尤其是行星和星座,都以某种因果性或非偶然性的方式预示人间万物的变化。星相学的理论基础存在于公元前300年到公元300年大约600年间的古希腊哲学中,这种哲学将星相学和古美索不达米亚人的天体“预兆”结合起来,星相学家相信,某些天体的运动变化及其组合与地上的火,气,水,土四种元素的发生和消亡过程有特定的联系。这种联系的复杂性,正反映了变化多端的人类世界的复杂性。这种千变万化的人类世界还不能为世人所掌握,因此,星相学家的任何错误都很容易找到遁词。星相学对于神的作用有各自不同的说法。有人认为,宇宙完全是机械化的,他们对神的介入和人的自由意志这两种可能性都加以摈弃。另一部分人认为,星相学并不是一门象天文学那样精密的科学,它只能指出事物发展的趋势,而这种趋势是可以为人或神的意志所左右的。也有人认为,行星本身就是强大的神,他们的旨意可以通过祈祷来改变,而且星辰只对那些通晓星相学的人才显示神的意志。后面的这种观点和古代美索不达米亚人的思想很接近,他们主要是向朝廷预告那些即将来临的福祸,这些福祸可能以气象或疾病的形式来影响人类和动植物的生长,或是以某种形式来影响国家大事或皇室成员的生活,如此等等。但他们认为天体的预兆并不决定事物的未来,只是作为一种征兆向人们显示神的旨意。   

  占星术的最初目的,是根据人们出世时行星和黄道十二宫的位置,来预卜他们一生的命运。后来发展为几个分支,一种专门研究重大的天象(如日食或春分点的出现)和人类的关系,叫做总体占星术;一种选择行动的吉祥时刻,叫做择时占星术;另一种叫做决疑占星术,根据求卜者提问时的天象来回答他的问题。   

  占星术起源于古美索不达米亚人的天体预兆。公元前18世纪到前16世纪的古巴比伦王朝,出现第一本分门别类论述天体预兆的锲形文字的书。公元前6到前4世纪,天体预兆学说传入埃及,希腊,近东地区和印度。后来经由印度僧人传到中亚。公元前3世纪以来,有人把大小宇宙相对应的概念数学化。所谓的“小宇宙”指人体。他们还把黄道十二宫进一步细分,认为五星在黄道不同的弧段上的作用各有主次。某星对人的影响力按照其所处的弧段以及与其他敌友弧段的关系而定。十二宫又和人体的特定部位相应,千变万化的物质世界和人的性格多少也和十二宫有关。星相学家根据给定的时刻的日月五星坐标和黄道十二宫的位置,以及它们之间复杂的几何关系,算出行星的影响力,再利用占星天宫图,找出上述各种因素与地上事件的对应关系,得出占星的结果。这种结果有时自相矛盾,这就需要占星者根据求占者的情况和占星者本人的经验加以圆通。到公元1世纪之后,上述方法已经定型。   

  希腊占星术也曾经传入印度,伊朗,进入伊斯兰文化。17世纪后随着日心说的确立和近代科学的兴起,星相学失去了科学上的支持。但近年来星相学又在西方开始抬头,有人还试图将近代发现的外行星引入占星术中,并试图找出行星位置和人类生活的统计关系。

posted @ 2005-07-23 23:25 蓝色雪焰 阅读(316) | 评论 (0)编辑 收藏
 

  弓箭的出现是人类战争史的一件大事,其意义大概可以和导弹的发明相提并论。

  最早的弓箭十分简单:“弓者,揉木而弦之以发矢”,烤弯的木棍两头绑上动物筋腱就是弓了。随着手工技术的提高,弓箭的制造越来越复杂,威力也越来越大。

  最原始的普通弓射程很短,只有50到70米,杀伤力也很小,战斗时大批弓箭手随号令几乎对着正上方射出,靠自然落下杀伤敌军,这是因为敌人正面多有厚盾或者胸甲防护,正射伤害颇小,而从天而落的时候有效伤害加大,还能给敌军心理造成恐慌。

  长弓的出现是弓箭技术的飞跃。顾名思义,长弓的长度不小,弦长经常超过2米,箭头是坚硬的铸铁,威力相当大,有效杀伤射程轻松超过300米(手枪不过50米而已)。古代英格兰对于长弓手非常重视,身高要求约一米八以上才有资格进入长弓手部队(比现在有些女孩子找男朋友还挑剔),单手拉力要求超过180磅(也就是说要轻松提起一个成年男子),《帝国时代》这个游戏中英格兰长弓手想必给大家留下了深刻的印象,这也是历史事实。克雷西战役中,英格兰依靠大批长弓手击败了法国可怕的重装骑士(《帝国时代》中法兰西的特色兵种),这是因为特制的长弓用箭能够在正面轻松射穿骑兵的胸甲,而且他们进攻前会首先在己方弓箭手阵地前埋设粗长的尖头木桩,骑兵就算冒着箭雨冲近,也不好进行突击。当时法军骑兵盲目的认为自己的甲胄是绝对安全的,几乎是报着屠杀的态度进行了冲锋,结果在大约1万名英格兰长弓手的打击下,他们的冲锋变成了自杀性质的攻击,经过了十六轮毫无作用的突击后,法国人只是得到了1万2千具重骑兵的尸体。

  另一种威力较大的弓箭是合成弓。顾名思义,它的弓体由多种材料复合而成,因为倔强系数不同,将各种材料粘和在一起的工艺要求极高,射击精度和杀伤力也非常可怕,缺点是制造成本太高。显赫一时的蒙古骑兵常用的就是复合弓,他们屠城的时候是不杀害制弓者的,会保存其性命编入自己军队。拉开蒙古复合弓大约需要80公斤的力量!近距离射击能射透一只野牛的身体。史载蒙古军队的箭头常常在砒霜和巴豆的混合溶液中浸泡。我个人认为这是弓箭史上最可怕的武器。

  最后说说弓箭中的重武器:十字弓。通常分两种,便于携带的被称为轻型十字弓。轻型十字弓弥补了普通弓箭杀伤力与射程的不足,可达350米。不需要什么训练,随便一个躲在灌木从中的农民就可以结果一个满身重甲的骑士,所以在15世纪,十字弓在欧洲是禁用的,因为'最低贱卑怯的手可以夺走最英勇高贵的生命。'

  重型十字弓弦则由弹簧钢制成,要用绞盘上紧。中国的床弩上有个机匣,可以安放七八支弩箭,自动上膛,类似于冷兵器中的机枪,但射速低且不利于携带。巨型床弩已经不是什么弓箭了,最粗大的“箭”有碗口粗,主要是用于攻城时对城墙上的火力压制,射中后可将守城器械彻底摧毁,不要说士兵的身体了。这种巨型十字弓的另外一个作用就是“钉入”城墙,依靠自身的体积和速度将城墙慢慢“挤碎”。帝国时代中俗称的“小车”就是这种可怕的武器。

  《Diablo》系列游戏中的射手几乎曾经装备过人类历史上发明过的所有弓,有兴趣的朋友可以在玩这个游戏的时候对照着弓箭的属性看看。玩过Diablo弓手的朋友一定记得铁匠那里会卖两种箭的,Quarrel和Bolt。它们的区别是uarrel的箭头是三角形(也就是普通意义上的箭),Bolt的箭头为圆形。前者的精度高杀伤力大,箭头狭长尖利,穿甲时候侵彻力好;后者加工简易,能够批量生产。

posted @ 2005-07-23 22:54 蓝色雪焰 阅读(390) | 评论 (0)编辑 收藏
 

  日本民族最大的特色就是:没有特色。善于模仿吸收,实用性极强,奉行拿来主义。日本天皇的象征是勾玉,铜镜,铁剑。这分属于石器时代、青铜时代、铁器时代的三种象征物品,显然日本的文明进步是跳跃式的,甚至曾经有一阶段是三种相差千年的文明共存,这只能是从外族照搬先进文化时遗留的痕迹。

  反映在武器上,就是日本武士博采众家之长的太刀。仰木弘邦所著《古刀铭尽大全》一书所示名刀剑均带中国色彩,如龙型、唐剑型、神像型均受我国影响,至于梵文与佛像则受印度影响。唐以后日本刀仍不断向各国学习,当西方工业文明逐渐昌盛时,日本又迅速汲取了其中先进的部分。

   从古坟时代出土的文物中,已经开始包括有铁制的刀剑。那个时候的日本刀,并不象我们现在在各种游戏中看到的那样有挺拔的弧线,相反刀身很直,与其说是刀,倒不如说是模仿中国的剑。日本对唐朝文化的吸收可说是照葫芦画瓢,而中国的剑文化唐朝正是顶峰。七世纪的时候日本刀线条几乎全部是笔直的,这种刀现在被称为上古刀。

  平安时代以后,因为马上战斗的增多,直刀在这种场合下使用起来就很不方便了,于是出现了刀身弯曲的太刀。日本武士的招牌武器就此诞生。和别种刀剑相比,太刀最大的特色是锋利。史载丰臣秀吉征高丽时,高丽武士及中国军士之刀剑悉被日本刀削断砍折,并非虚言。《明史》也提过戚继光兵士之刀剑常为倭刀所断。这是因为它的含碳量高,硬度极高,常看到武士有事没事拿着白绢在拂拭太刀,这是因为它含碳量高,不擦若受潮会变黑。太刀制造工艺极为繁复,光是第一步制刃,就要将钢料加热至赤红进行锤锻,多达二三十次,每一次均锤打数百锤,务必要求析出所有杂质,淬火对刀剑来说是决定命运的一道工序,而太刀在淬火上的确有独到之处,吸收了东西方的各种先进经验,加温前涂'烧刃土'于刃上,可以使刀身韧性提高,加热时若土层剥落将会在刀身上留下致命缺点,严重者使淬火失败,这是很难掌握的技术。当刃体烧至正好(什么叫做正好?全凭锻刀者的经验了)时,便从炉中将刀抽出,入水之瞬刀工大喝一声,将刃体全没水中,爆燃之响大作,白雾蒸腾,又因太刀淬火均在深夜进行,万籁俱寂,十分神秘。淬火最关键的三点:时刻、水温、水的成分。这些都是口传心授的不传之密,外人不得而知。据说三条流的制刀淬火时用的液体除了水,还有动物的血液,非常类似现代淬火工艺中的双液淬火。刀剑淬火后由刀工开锋,锋刃薄厚与使用者有关,锋口薄利于砍切敌人身体,但遇厚重甲胄易缺口,锋口厚可劈甲,但对敌人杀伤力减小。这样来说,《侍魂》游戏中牙神幻十郎的刀锋口一定很薄。

   日本刀的寸法,即是指刀的长度。这里说的刀的长度只计算刃长,并没有将刀柄包括在内(日本刀为方便劈杀时发力,多以双手握为主,刀柄奇长)。一般来说,刃长30CM以下的就是短刀,肋差的长度在30~60CM之间,超过60CM的,就是刀或太刀了。那么太刀和普通刀外观上的区别到底在哪里呢?一般来说,太刀比普通刀大一点(拆字来看,太刀毕竟是'大一点的刀'),但是这只是一般来说,不排除有比太刀更长的普通刀。太刀和普通刀的区别在于铭文:带刀时刀铭应当向外,此时,若刀刃向上,就是普通刀;若刀刃向下,则是太刀了。说到铭文,这也是太刀很有趣的一点,刻铭也是制刃的最后一道工序,均由刀工刻上刀工之铭,如果说伤疤是武士的勋章,那么铭文就是刀工的荣誉。常常在各类日本战国游戏中见到XXX文字的名刀,那就是以铭文命名的太刀,如一文字流的(一字铭文),左文字流的(铭文靠左)。铭文从一字到十几字都有,字体各具特色,多以书法入铭。

  最后再说说我国影视中对太刀常见的两处无知错误。第一是日本武士切腹自尽的时候用的并非太刀,而是30厘米左右的肋差(前文说过太刀刃长超过60厘米,但刀柄常常有40厘米左右,读者不妨自己找根木棍来试试,很不方便的),而且动作也非扑哧一声插进去了事,刺入后横拉或者直拽,形成所谓一字腹、十字腹等。第二就是刀在刀架的摆放,如果是摆放在普通刀架上的时候(略摆法),应该刀锋向下,刀柄在左边,刀尖方在右边,而我看到的几乎全部国产片中,刀柄一律朝右。

posted @ 2005-07-23 22:53 蓝色雪焰 阅读(415) | 评论 (0)编辑 收藏
 
摘自 德虔 素法 勤炎 等編著 "少林正宗七十二藝"北京體育學院出版社)

01.鐵臂功 02.排打功 03.鐵掃帚功 04.足射功

05.腿踢功 06.銅砂掌 07.蛇行朮(蜈蚣跳)08.提千斤

09.羅漢功  10.鐵頭功 11.四段功  12.鐵布衫功

13.雙鎖功  14.上罐功  15.石鎖功 16.鐵珠袋 

17.千斤閘  18.鞭勁法  19.分水功  20.玉帶功

21.鷹翼功  22.跳躍法  23.霸王肘  24.一指金剛法

25.拔釘功 26.一指禪功 27.石樁功  28.金鐘罩

29.鐵牛功  30.旋風掌 31.臥虎功  32.拔山功

33.合盤掌  34.推山掌  35.踢樁功 36.鷹爪功

37.斬魔劍  38.玄空拳  39.金砂掌  40.鐵砂掌

41.飛行功  42.槍刀不入法  43.五毒追砂掌  44.飛檐走壁法

45.一線穿  46.穿縱術  47.金鏟指  48.揭諦功

49.梅花樁 50.捻花功  51.螳螂爪  52.跑板功

53.閃戰法  54.金刀換掌功 55.輕身術  56.鐵膝功

57.陸地飛行術  58.穿窗功  59.泅水術 60.點石功

61.琵琶功  62.柔骨功  63.壁虎游牆朮  64.門襠功

65.翻騰朮  66.布袋功  67.蛤蟆功  68.千層紙功

69.彈子拳 70.鎖指功  71.追風掌功  72.軟玄功
————————

这个有多种说法,光金庸书上就有几种版本,不必苛求。
posted @ 2005-07-23 22:45 蓝色雪焰 阅读(264) | 评论 (0)编辑 收藏
 

  中国象棋黑方的炮写作是砲,就是投石车,火字边的炮,古文中多指的是炮烙。投石车是利用杠杆原理抛射石弹的大型人力远射兵器,它的出现,是技术的进步也是战争的需要。春秋时期已开始使用,隋唐以后成为攻守城的重要兵器。但宋代较隋唐更有进一步的发展,不仅用于攻守城,而且用于野战。古书中的“抛石”、“飞石”指的就是投石车。古代西方投石车也是主要进攻手段之一,波斯人希腊人都曾经大量使用过它。

  最初的投石车结构很简单,一根巨大的杠杆,长端是用皮套或是木筐装载的石块,短端系上几十根绳索,当命令下达时,数十人同时拉动绳索,利用杠杆原理将石块抛出,这就是古代的战争之神了(斯大林说炮兵是战争之神)。中国战争史上投石车首次大规模使用,应当是李信(飞将军李广的远祖)攻楚,楚军秘密准备了大批投石车,当秦军渡河时突然同时发射,无数尖利的石块乌云般砸向秦军,二十万秦军全面溃败,李信自己也兵败自杀。后来战国四名将之一的王翦,率领六十万大军,才攻下了楚国,可见当时投石车的威力。随着技术的发展,投石车也越来越先进,很多三国游戏中的“霹雳车”就是战国时代投石车的改进形。中国的投石车在宋代到达高峰。宋代兵书《武经总要》中说,“凡炮,军中利器也,攻守师行皆用之”,足见对投石车的重视,书中还详细介绍了八种常用投石车,其中最大的需要拽手250人,长达8.76米,发射的石弹45公斤,可射90步(宋军制换算成现代单位就是140.85米),这里必须指出,《武经总要》可能是出于保密或者故意误导敌人的目的,将发石车的射程大大缩小了,实际上根据别的古籍记载和现代科学计算模拟,这种投石车的发射距离不少于500米,这在冷兵器时代,可说是超远程打击了。

  说到这里,玩过帝国时代的朋友一定很奇怪一件事情,既然投石车需要几十甚至上百人同时拉动,为什么游戏中的投石车周围一个士兵也没有?哪怕是象征性画上几个小兵也好?这是因为《帝国时代》等游戏中出现的投石车,是属于较高级的对重式投石车,很少几个士兵可先用绞车将重物升起,装上炮石后,再释放重物,将炮石投出,这种方法除了大幅减少操作的人员,减少操作所需的空间外,对于投掷的准确度也大为提升,可以调整重物来控制射程,若是以人力拉掷则无法控制,而且人员必须训练才能顺利的投掷出炮石(试想让250个人同时精确发力拉动绳索,是需要很长时间磨合的)。中国是北宋-南宋时期发明的对重式投石车,金国在灭亡北宋的汴京之战中,一夜之间架设抛石车5000余座,在汴京长达50里的城墙外同时向心突击,金军发射了无数的石弹,以至于汴京郊外当时竟然再也找不到石块!攻城时先将护城河填平,而后万炮齐发,再辅以大量强弩,一举击溃守城部队的部署,进而出动与城墙等高、可容纳80人的巨型攻城车对城池展开登城战。大家可以想象一下当时壮观的发射场面,简直不逊于现代战争规模的火力准备!

  金庸小说的读者一定还记得郭靖守卫孤城襄阳十几年的故事吧?历史上襄阳创造的守城奇迹并非是因为郭靖,而是因为守城战中大量使用了投石车,曾满天花雨抛射过百公斤的石弹,将地面砸出无数2米多深的弹坑,蒙古军队虽然兵强马壮,但是面对如此可怕的守城武器,也只能望洋兴叹,血肉之躯,究竟不能和机械抗衡。其实如果我是金庸,写这段好看的守城战时,一定会让黄药师多多设计几种有趣的守城器械。

  西方的投石车主要特色是巨型。《孙子兵法》中说攻城“将不胜其忿而蚁附之,杀士卒三分之一,而城不拔者,此攻之灾也”,最初攻城的主要手段就是云梯,士兵像是蚂蚁般的去爬城墙(是不是想起了光荣的三国系列前几作?),后来投石车充当了城堡的克星,西方的投石车最多的用途是摧毁城墙。中世纪时欧洲的投石车动辄发射数百公斤的石弹,规模比中国的大的多。土耳其人攻占君士坦丁堡的时候,为了对付数米厚的巨石城墙,苏丹下令建造了人类历史上最大的投石车,可以发射数吨的巨石!为了运送这庞然大物,一千头牛充当了动力。这简直可说是古代的核武器了。

posted @ 2005-07-23 22:40 蓝色雪焰 阅读(283) | 评论 (0)编辑 收藏
 
上中专时,我们班主任老师长得很丑:一半脸儿白一半脸儿黑。可是,就是这样一位其貌不扬的教书先生,却有一位很漂亮的太太。这让我们大跌眼镜,也让我们对他们夫妻的结合怀有浓厚的兴趣。年终岁末,班里组织一年一度的联欢晚会。在联欢会上,我们就问起老师的恋爱经历,希望他能毫无保留地向我们“坦白”。
班主任一听笑了,说:“我一生下来脸部就有很明显的胎记,而且随着年龄的增长胎记也随之长大,为此,我很伤心,一直对自己缺乏信心,对生活也没有多少热情。惟一能让我欣慰的就是自己的学习成绩还算过得去。就这样,一直到上了大学。大学的生活虽然丰富多彩,但我还是提不起精神。有一天,我的哲学老师找我谈话:“你是怎么回事,哪里还像一个年轻人的样子?”哲学老师说,一个人生得不漂亮可以怨天怨地怨造化弄人,但一个人活得不漂亮,却不可以怨任何人。


  哲学老师的当头棒喝,让他如醍醐灌顶,顿开茅塞。从此以后,他仿佛变了一个人,一扫以往的自卑与忧郁,不但心里充满了阳光,眼角眉梢都洋溢着笑容。除了刻苦学习外,学校所有的活动他都积极参与。几年下来,他不但以优异的成绩令同学们刮目相看,更以自己雄辩的口才,独特的个性,满脸的阳光赢得了“最有魅力的大学生”的称号。而很自然地,他也赢得了一位美丽女生的芳心。


  班主任说:“妻子是我一生的最爱!”这句话获得满堂彩。最后,班主任深情地说:“一直以来,我都很感激我的哲学老师。因为是他告诉我,一个人可以生得不漂亮,但是一定要活得漂亮。无论什么时候,渊博的知识、良好的修养、文明的举止、优雅的谈吐、博大的胸怀,以及一颗充满爱的心灵,一定可以让一个人活得足够漂亮,哪怕你本身长得并不漂亮。”


  活得漂亮,就是活出一种精神、一种品位、一份至真至性的精彩。一个人只要不自弃,相信没有谁可以阻碍你进步。
posted @ 2005-07-23 22:17 蓝色雪焰 阅读(205) | 评论 (0)编辑 收藏
 
在制作RPG、AVG、回合制SLG游戏的过程中,只要自己设定的故事,都不可避免会出现给游戏角色命名的问题。
  其实给游戏角色命名,如同写小说给人物设计名字一样,需要根据游戏的内容、风格做相映的读者设定。
  让我们来看看文学作品中,大师们如何给他们的人物起名字的。
  阿Q:这是鲁迅先生《阿Q正传》中的主角名字,产生于二、三十年代新文化运动后期,这个“Q”字,很洋气的英文字母,堂而皇之的出现在一个清朝末年的角色身上,给人以视角冲击。人们首先会想,为什么会叫这个名字,在没有读之前,就对作品产生了极大的好奇心。这个“阿”字与人物不识字划圈签名,调戏吴妈,骂小尼姑等等土的掉碴儿的事有丝丝联系;这个“Q”又与人物,对于不了解的事,盲目崇拜和追求,动毋“新潮”“革命”的洋事儿有些许关系。这一土一洋,构成了“阿Q”这个人名,也构成了《阿Q正传》的精彩故事。
  孔乙己:这是鲁迅《孔乙己》中的角色命名,在中国历史战国以后,“乙”和“己”字就很少用在人的名字中,但这两个字竟然同时出现在一个清末民初的文人的名字中。圣人孔丘的姓,两个生僻字合成的名,与情节中他细细讲解“回”字的四种写法相辅相成,颇耐人回味。
  韩老六、杨老疙疸、老孙头、李毛驴:这是周立波《暴风骤雨》中的人物名字,讲述的是土改时期发生的故事。光从名字我们就可以知道这个故事是发生在农村,好土的名字。而且从名字中,可以看出他们的职业、性格,象李毛驴这个名字,实际上是外号,但就在小说中成了他的名字,非常有特色。
  令狐冲、欧阳峰、洪七公、灭绝师太:这是金庸的武侠小说中的出现的角色,也许我们看的武侠小说太多了,但诸如令狐、欧阳、司马、淳于、东方这样现实生活中很少出现的姓,和无忌、逍遥、破天、求败、不败这样很少出现名,朗朗上口,让人一看就是知道进入的是迷幻的武侠世界。再加上武侠小说中的绰号的概念,这可能是从《水浒》中得来的灵感,给我们一个有趣的公式:酷绰号 + 怪名字 = 个性化角色。不信套一下就可以看出。“铁掌水上飘”裘千仞(衍生出裘千丈、裘千尺,如果再有个小弟毫无肄问该叫裘千寸了,难以想象家长会给孩子起这样的名儿)、“飞天蝙蝠”柯镇恶(衍生出柯辟邪,象去病、无忌当属这类)、“千手人屠”彭连虎……这样的名字当然也是为了突出人物个性和小说风格。
  朱七七、熊猫儿、老实和尚、牛肉面、楚留香(做案后故意留下香味)、胡铁(蝴蝶)花:这几个人物都是古龙新派作品中比较有名的。分别是《武林外史》、《陆小凤传奇》、《楚留香传奇》中的角色。这样起名,真是一个“新”字,朱七七尚可以理解为明朝故事(明朝没有身份的百姓是没有名字的,都是“重五”“初八”“七七”这样的数字,朱元璋就是一例。),象熊猫儿、牛肉面、老实和尚则纯属外号变名,而楚留香(是他父母给他起名时,就知道他将来要当小偷并故意留香,还是他为了自己的名字中有“留香”两个字,才有意这样做的?)就属于作者有意设定个性化人物和风格化故事了。
  张大民、李木勺、小树、古三儿:刘恒《贫嘴张大民的幸福生活》人物,是八、九年代城市背景发生在工人家庭的故事。对每一个名字的设定都赋与的个性,保温瓶厂的张大民、喂猪的李木勺、因房中有树得名的张小树、城市混混古三儿,可见每个名字都下过功夫。
……
  呜!一口气写了这么多与主题没有关系的内容,快收不住笔了。好了,回到主题,在游戏中很多名字和写小说是差不多的。我们再来看看,
  武侠派《仙剑奇侠传》中的李逍遥、赵灵儿及李逍遥的父母“南盗”夫妇……在这款游戏中,名字起的与小说差不多,带有很浓的武侠色彩。且灵儿的巧、轻,月茹的凝、重,无论是名字还是性格,都把握非常准确。
  《大富翁》在搞笑为主,阿土仔、小丹尼、玛格丽特……看完他们的故事背景,会发现名字起得非常帖切,加上卡通滑稽的造型,把人物刻划的栩栩如生。在不少搞笑游戏中,名字非常表现这一点,象什么拿巨轮、韦大宝、王财神之类的都异曲同工。
  还有……唉,不得不承认,国内的自己写的游戏故事脚本还是非常少。大多改编名著或是武侠小说,那是人家原著上起得名字,就不大好评析和说明。
  但是不是这篇文章就毫无用处呢?当然不是,精华往往留在最后。
  让我们来把游戏风格做一下简单分类:
  搞笑风格:这类游戏起名益轻松活泼,根据内容甚至可以把历史或是文学作品中的成品角色生搬进来也无妨大碍。不论是秦始皇还是莎士比亚,管他是宙斯神还是二郎神,只要有个性、有特点、有喜剧效果,谁都无所谓。有的名字也可如上面提到的略微一改,效查徒增;有的名字突出个性,王财神一听就是商人或是地主、严霸天一听就是恶霸、ZR0455一听就是机器人。另外给这样的游戏角色起名时,还可以突出一个“奇”字。比如说:一个大丑老太太,可以起名为“赛西施”、“小美”;一个巨胖大汉,可以起名为“飘儿”、“俏儿”这样会更添搞笑的效果。
  严肃风格:在严肃风格中,就要根据游戏的背景和角色分类起名了。
  A。中国古代历史背景:首先排除掉你改编成品小说的情况,因为这类情况无需要你起名儿,关羽、诸葛亮什么的早就是现成的了。但如果非此类,就要下一番工夫了。如下:
    a.汉以前,在最古老的黄帝、炎帝时期,属母系社会,如果你的背景发生在这时完全没有必要给角色加姓,因为那时人们知母不知父,姓更无从谈起。所以名字只一个字就可,X,阿X,X儿。如果非要起姓可以起一些古老的姓不会有错,如姬、熊、姜、姚、风、祁等等。春秋战国时期除了各国有国姓,而且名字非常古怪,不妨按他们的格式起,秦国姓嬴,楚国姓芈、熊,燕国姓姬,齐国姓原姬,后田和夺齐后为田,赵魏韩国姓同国名等等,多研究当时的历史和姓氏学,就不难了。比如说慕容、宇文、呼延都是鲜卑人的姓,如果你出现在秦汉以前,就会被笑话了。再比如说商鞅我们都知道,他本姓公孙,是卫国人,封在商邑。历史上说的商鞅、卫鞅、公孙鞅、商君都是指他。
    b.秦汉时期以后,这一阶段中国的姓名非常复杂,如我们知道的,无数次汉民族与异民族的合而又分经历,使中国人的姓名空前的复杂。象晋朝士大夫的旺族王、谢两姓就直接影响到仕途;居山东曲阜的孔姓世家一直被历代统治者关照着;唐朝的崔、卢等姓也是很大的世家;明朝百姓的名字往往是数字。另外,这时一个人除了姓、名之外还有字、号,如果是名人死后还有谥号,如果对文学有成就还有世称(象是鲍参军即鲍照、阮步兵即阮籍、杜工部即杜甫等等)。如果是这样的游戏,在起名时,还是减少一些个性的突出,增加一些历史的真实为好。
  B。武侠背景:如果要想加深玩家对你设定角色的映象,跳回到分析武侠小说命名那一节,因为玩家在武侠游戏中扮演一个角色与看武侠小说一样还是寻求一种大侠、高手的快感。何不让他发挥的更淋漓尽致呢。如果有可能,连绰号也可以由玩家自己起,象MUD类游戏一样。给NPC起名,尽可能的使用“酷绰号 + 怪名字 = 个性化角色”公式。
  C。其它背景:其它的游戏背景则按其背景时间及相关要素起名。(跟没说一样)如抗日题材的游戏脚本,正派角色可以起老钟叔(抗日老八路),李大海(八路军排长,铁青胡子碴儿那种),杨伢仔(抗日儿童团团长),龟田丘一郎(日本“亲善”部队指挥大佐)……再如现代推理侦破游戏脚本,侦揖队队长,重案组组长,警花,警队中较淘气的小伙子们,反派角色中毒凫、小喽罗,被骗的台湾富商,来自东南亚的杀手,这些角色都可以以其性格和其它背景来做相映的命名。在给少数民族、外国人起名时,应注意其姓名文化。蒙古族、藏族没有姓只有名,如巴特、洛桑、喀金;维吾尔、哈萨克等民族的名字与欧美人的姓名相像,儿子用父亲的名做自己的姓,如阿不都拉·克里木的父亲就叫阿不都拉,将来他的儿子姓克里木;达斡尔、鄂仑春、鄂温克、锡伯、满等民族都是有自己的“族姓”的,如吉达尔、敖蕾、鄂嫩等等。一些外国国家有一些普遍的国姓,如朝鲜韩国的“金”越南的“阮”“黎”“胡”等等。可以说,这是一门可以称为姓名学的学问,细细看来,牵扯到各民族各国的历史和文化。虽然不用研究的那么深,至少还是应该做一些最基本的了解和调查的。

posted @ 2005-07-23 22:02 蓝色雪焰 阅读(270) | 评论 (0)编辑 收藏
 
前言:在我们这个时代,电脑游戏已经成为了我们生活中重要的组成部份,无论哪一类型的游戏,都会为我们带来或多或少的游戏乐趣。而做为一个游戏开发人员来说,创造出一部优秀的游戏产品出来都是对自己最大的人生回报。在我们开发游戏过程中,一般我们遇到的开发都是由策划,美术,程序这三大模块构成,而我要在这里将着重说的是游戏的关卡设计工作。因为在我看来,关卡设计有着感性与理性的双重意义。让我用下面的话语阐述我对关卡设计的理解! 

在这里,我把关卡设计划分为三个大的层次:  
关卡设计的限制层。
关卡设计的理性层。
关卡设计的感性层。
这三个层就好比是我们居住的这个地球的结构一样,限制层是最里面的一层,就象是地球的中心地核那样,理性层是外边的一层,就象地球的地层结构,而感性层则好比是我们生活的地表一样是最外一层。

   我们先从最里面的限制层谈起,为什么叫限制层呢?这完全是从技术角度来看待的。因为每一款游戏都是基于一个游戏技术引擎来实现的,而一个游戏引擎都有它的所能提供的技术实现保障与技术限制作为一款游戏的开发标尺。比如说一个3D引擎都会有它的最大多边形限制,同屏最大处理面数,特殊效果的实现手段等等的技术指标,所以任何一款游戏的关卡设计上都必需首先从引擎的技术限制上着手开发,绝不能超出限制范围,要不游戏开发就成了荒诞之事了。所以在先以这个限制层做为前提的情况下,才有可能展开关卡设计上的感性层与理性层的探讨。

   通过技术上的保障与限制后,我们接下来看看最外边的感性层,为什么由限制层一下跳到了最外边感性层而略过中间的理性层呢?这个原因是从对玩家角度来出发的。每一款游戏最终都是要面对广大的玩家用户群的,所以游戏关卡设计的最终目地也是为玩家呈现,这是一个感性的表现形式。通过一切必要的艺术表现手段使游戏能对玩家产生兴趣并愿意接受它。象《无人永生》这款游戏就把游戏关卡感性的一面很完美的体现给玩家,游戏的第一关开始时,寂静的夜,映着月光的水面,远处昏暗的灯光,日式的小房子。。。。还有在以后关卡中风格各异的漂亮建筑,营造不同气氛的灯光手法,各种音效及背景的音乐,都艺术的表现了游戏所要传达的一切信息。艺术是感性的,能唤起人们的热情与不同的感受。还有象《荣誉勋章》这款游戏中的第三关的诺曼底登陆战,完全的大兵瑞恩的体现,战争气氛浓到极点,我想玩过那一关的玩家都会对当时的一切而感到热血澎湃。成功的关卡都会把最感性的一面送给玩家,这也是一部游戏中玩家唯一能接触到的东西。
   另外,我还要提到的一点是在感性层里面还有一个隐藏的层次:游戏过程低潮与高潮的曲线设计。这就好比跟电影一样,每一部电影都会在导演的精心安排下有若干的高潮剧情出现。先是通过一段平稳的低潮做为铺垫来使观众的情感有所积累,等积累到一定程度后,便会有一个或大或小的高潮释放出之前的情感积累,也可以说这个过程是发泄。游戏也是一样,在关卡里无尽的杀戮或是没完没了的平淡都会叫玩家对此感到不快的,也就对游戏失去了一份热情。所以在关卡设计过程中,也要象电影一样有着不同的曲折片段,使玩家能够一次次的积累情感并得到发泄。再用《荣誉勋章》来做一个说明解释高潮与低潮的曲线表达,游戏的第一大关,一开始下了汽车,通过杀一些零散的德国兵后进入一个四周由二到三层楼房构成的院子里,这个过程是比较平淡的积累情感。马上情况有了变化,大批的德国兵出现在四周的楼房上,还有一间屋子的二楼窗户里出现一挺MG42机枪向玩家扫射。这时,杀敌,夺取MG42机枪,用机枪向德国兵疯狂的扫射。。。这一系列的动作就是为玩家发泄情感而制作的高潮,这是一个由低潮到高潮的最典型的表现手法了。
   通过不同的艺术表现手段来使玩家的感性获得最大的解放,这是我在关卡设计工作中及做为一个玩家的我的最大的感受。

    让我们把目光再转到关卡设计中的理性层上来。在我们把关卡的感性一面很好的把握后,就需要我们用理性的思维来营造出要给予玩家的感性。理性层是我们关卡开发人员所能接触到的最直接最现实的部份,因为那是我们的工作。好的关卡设计都非常具有绝佳的平衡性,而怎么样达到平衡这一问题我要分3点来加以说明。

关卡目标与关卡事件的触发时机: 
    玩家在玩游戏的过程中,在不同的关卡里面通常都有着各样的目标要去实现及实现过程中碰到各种影响目标实现的事件发生。对于关卡设计来说,目标的实现要明确,在关卡里要做什么和怎么做都要有清晰的表达才行。不然玩家会在关卡里弄的漫无目地的游动而不知所措,这对于游戏开发来说是最忌违的事情了。同时,事件的触发时机也要安排的紧凑合理,这跟在感性层里提到的游戏低潮与高潮的曲线设计是密不可分的。正如正在开发的游戏《半条命2》的关卡设计师马克雷德罗所说的那样“没有明确的目标,所做的一切都毫无意义可言了,既使迂回曲折,分道扬镳也好,始终都要考虑游戏的娱乐性”(说的太好了,马老师,给您拜一个!)

关卡设计的地形因素:
    在一些游戏关卡里,地形因素的影响占了很大的比重。除去漂亮的建筑外观后,我们在设计关卡时更要针对游戏要求来做怎么样的地形设计跟建筑物之间的关联,抛开一些另类的虚幻的游戏不说,很多游戏里面的关卡都是依据了现实中的参考,在虚拟的世界中体会现实。在游戏里根据地形差别及建筑物的某些特性来判断该怎么样行动,通过良好的地形创作,不仅能在外观上使关卡赏心悦目,更能使某些游戏的特殊要求达到更高的一个层次。我个人觉得最生动的例子的两款游戏是《分裂细胞》与《反恐精英》,在《分裂细胞》里,汤姆克兰西为每一个关卡的设计都做了最大程度的参照现实制作。在游戏里,利用地形与建筑物的一些特性来做出的跳跃,攀爬,隐藏,暗杀等动作都提供了很好的保证。而在《反恐精英》里则把地型因素体现在攻方与守方的交火点,还有各类枪械与地型的匹配上。拿我们大家都很熟悉的DUST地图关卡做说明,无论攻方还是守方,地图里靠近B区埋弹点的走廊通道总是双方火拼的集中地。而对于使用狙击枪的玩家来说,桥头与B区的平台是他们的最佳狙击地形选择。

关卡设计中的NPC与道具的布局:
    对于不同类型的游戏,往往为达到一个关卡里敌我双方攻守的平衡和游戏难度的设计张驰有度,所针对的关卡设计中的NPC与道具的摆放都有着极其严谨的定义。严格的说对每一处的NPC及道具的分配都要做最周密的计算,不能因为随意的摆放而破坏关卡的整体平衡性。乱搞的结果首先是无法保障了游戏的可玩性,还有就是使玩家对这一关卡所给予的回报过低有所反感。这个问题上,《英雄无敌3》与《星际争霸》为我们开发人员提供了最大的学习之处,这两款游戏里为做到攻守平衡而做的整体布局可说是做到了极致了。很大程度上也是要依据开发游戏类型不同而定,一切从实际工作中出发。

    以上这三点是我个人对关卡设计工作中的体会而说的,当然在关卡设计工作中,还有许多的要求,但都是从每个游戏不同的设计要求出发的,这都需要有长年的经验积累才能做出更加完美的关卡设计作品。也是我说的这些工作都是理性的,是我们游戏开发人员需要认真负责的工作。

   做个总结吧!就关卡设计来说,写一本书出来恐怕都难以道尽其中的奥妙。但基本的这三个层次是要必需做到的:“限制层的技术提供与限制,感性层的艺术表达手段及细节化,理性层的关卡平衡与难度设置。”


==================================================================================

一.前言
“建筑...它就象人一样,是活生生的。
如同没有两片树叶是一样的,没有两幢建筑是一样的,它有自己的风格,自己的目的。
它的创造者先赋予它灵魂,于是 它有了生命,就伸展出墙壁,门窗和楼梯来,这就它的形体,两者合而为

一,和谐的就如同真理一样。”

二.走进历史的长河
"历史是最好的老师,通过历史,我们可以了解前人的一切,因此可以决定现在的事情,什么是对的,什么是错的...”

*******

        可能当人类发明了电脑之后不久,就有创造虚拟世界的想法了,因为他们看到了曙光。然而直到十二年前,wolf3d--世界上第一部第一视角设计游戏诞生后,这道曙光才算是变成现实。

            十二年对于我们来说并不算长,然而当历史翻回到12年前的时候,我的眼中尽是辉煌和梦想,那是真正的英雄时代...

*******

1.wolf3d,有必要提及这一古老的游戏,正是它开创了关卡设计的艺术之门。然而说起为它创建关卡,那实在是有些乏味,你要做的事情就是把一系列的方块搭建起来。如同你在游戏中看到的一样,你能做到的就是方方正正的走廊,方方正正的大厅。不过这的的确确是关卡设计。

2.doom,id公司的成名之作。这是一个里程碑,因为Doom的关卡开始具备所谓“关卡”的基本要素了:首先,关卡设计的技术本质在于堆砌几何体,在doom中我们能够看到各种形状的几何体(不仅仅是长方体),如果你用过doom的编辑器,就知道doom的关卡设计中有几个重要的名词:顶点,线条和区域,顶点组成线条,线条组成区域,因为doom实际上不是3d的,所以,你只能在区域里面改变高度,换句话说,你不可能创建一个顶部形状和底部形状不一样的区域;其次,doom的关卡...有了点目的性,玩家的目的很简单,找到钥匙,开门,过关,虽然说是个简单的目的,但其作用不可忽视;最后,我还想和大家说,国外大多数的关卡设计师,都是从这个游戏开始他们的关卡设计生涯的.doom培养了一代人。

3.Quake I,还能说些什么呢,第一个3d的fps游戏,id总是技术上的先锋,看看这次它给我们带来些什么:全新的引擎带来了全新的关卡设计方法,doom 时代的顶点,线条和区域变成了3d的块块,这是真正的堆砌几何体!多年的梦想终于变成了事实!还有什么东西我们不能制造出来呢?从大教堂到地铁站,理论上我们都能够做得出来(当然,q1的引擎不是很强大,做出来不一定象)。Quake1的关卡设计和doom完全两样,直到现在也没有本质上的变化---在编辑器里面,你在xy,yz,xz三个面里面拉出来长方体,然后把他们拼接成为房间,如果需要别的形状,你可以通过切割或者调整顶点的办法来形成。总得说起来,因为引擎在绘制多边形,所以关卡设计就相当于在设计多边形。我看见过国外大师的作品(czg),真的是把引擎发挥到极限,令人叹为关止。Quake I还给了我们什么?由于有可能做出比较形象的建筑,比如军事基地,山地等等,关卡设计的领域被拓宽了,因此关卡设计师得注重关卡中间的地形切换

(在doom中几乎只有一种),而能否平滑的切换,也成为评价一个关卡设计师是否优秀的标准之一。
然而,quake1的设计师似乎并没有注重引擎以外的东西,我们仍然在屠杀和找钥匙,没有变化,这是很令我不满意的。

4.Quake2,玩过quake1,再玩quake2,最能够让人感到变化的就是:彩色灯光,旋转的门,还有就是关卡之间可以来回穿梭,我们分开来看一下:

彩色灯光:按照关卡设计师的看法,色彩不仅仅是好看,它还代表暗示,不仅仅是暗示气氛等等,它还能引导玩家的心理,这方面的话题我将在下面的部分提到;
关卡之间的穿梭:这是个非常重要的创意。quake2中首次有了level transition的概念,对于玩家来说,这仅仅是说,游戏更加复杂了,但是当我们站在关卡设计的角度来看---复杂的场景可以分开制作;同时,设计师可以尝试引入任务的概念(quake2中正是这么做的),这为更加复杂和美好的东西敞开了可能的大门,我们接下来的明星是---

5.Halflife,我称之为fps游戏和关卡设计的第二个里程碑!可能并不是很多人喜欢她(因为cs的缘故),但是她当之无愧。

<1>首次为关卡引入情节,并且是如此优秀的剧情,fps由此离开了屠杀时代。

Quake给我们带来了激情,那么halflife又给我们带来了些什么呢?

Halflife最引人注目的就是她的剧情,带有反政府和黑色幽默的剧情,我不准备在这里重复这个剧情,我想要探讨究竟halflife的设计师给并不先进的引擎添加了什么样的魔力,以至于几乎变成另外一个游戏?

<2>script系统,在halflife里面你可以控制所有的npc,让他们做出实现定好的动作,比如你一开始在anoulemous material里面看到的科学家敲打自动贩卖机那样的场景,于是关卡马上就“活”起来了,不再是死气沉沉的了(玩过quake2的玩家一定能够体会出来),同时游戏首次可能出现自然的过场了,这就迈出游戏电影化的第一步,“这是关卡设计的一小步,却是游戏的一大步”。

6.现代游戏的关卡设计:
自从halflife以后,fps游戏是越来越多了,但是并不代表水平越来越高了,至少在关卡设计方面---这一点我不得不指出。

         除了几个大作以外(unreal,q3),我实在很难找的出能够领我满意的关卡设计了(恐怕这也是为什么现在的游戏都不经玩的原因),英雄萨姆,重返德军总部,都令我有些失望。荣誉勋章可能是个例外,在战争类型的fps里面恐怕它是做的最好的一个,关卡设计的非常紧凑,流畅,目的明确(虽然偶尔会卡住),非常有“古风”,我能够看到当年游戏设计的影子(严肃,宏伟)。

         但是不能否认,关卡设计的技术和艺术一直在前进当中。由于引擎技术方面的急速发展,现在想要做一个宏大的场面已经不是不可能的了(我认为英雄萨姆在这方面首屈一指),而且关卡设计师可以越来越方便的做出复杂的建筑结构了,甚至在游戏里面完全模拟真实的场景也是不太困难的(Max Payne就很好的模拟了纽约的部分场景 ),然而这些对设计师也提出了更高的要求:怎么才能更快的建造场景?很明显制作宏伟而细腻的场景是很花时间的,因此我们不得不掌握一些小技巧来帮助我们加快速度;另外,编辑器越是复杂,越是强大,使用者就越受到限制,于是我们得花费很长时间才能突破这些限制,但是与此同时,产品的制作周期是越来越短(能够在1年以上就很不错了,至于像Blizzard或者id那样花费4,5年的时间,几乎是不可能的了),所以我担心关卡设计的质量可能会下降,那么最后可能就鲜有人注重艺术方面了。据我的了解,国外业余的关卡设计师,主要还是针对设计优秀的游戏来设计关卡,因此Quake1还是很受他们欢迎的,Qmap上面常常有贴子讨论如何做出“引擎应该做不出来的东西“,这种情况在现代游戏的论坛上面就很难看到了,这真是设计者的悲哀!

三.关卡设计理论

1. 玩家为什么玩游戏?
游戏是人类的天性,电脑游戏自然不能例外。作为游戏设计师,了解玩家的心理是必需的。

<1>需要发泄:我们受到法律的限制,不能去做某些事情,但是在游戏中,我们的欲望可以得到满足。

<2>需要体验:我们总归心怀某种梦想,在游戏中我们可以指挥千军万马,可以横刀向天笑,游戏的交互性使得我们有机会走进虚拟的世界,暂时忘却现实。
关卡设计是现代游戏的关键之一,“让车轮着地”。玩家首先看到的东西就是关卡,如何做的尽善尽美?

<1>如果设计师的目的是满足第一种需要,那么你就需要设计漂亮的建筑,数量众多的怪兽,同时让玩
家永远火力充足。

*代表游戏:Doom,Quake1/2,Serious Sam
既然只是为了发泄,那么游戏的生命周期必然不会长,我个人不主张设计纯粹的这种关卡,但是可以
把发泄的因素渗透到游戏中去。一种典型的做法,就是让玩家在拿到新式武器以后的一段时间内可以轻松应付敌人,但是这段时间不能很长。

<2>你想要给玩家什么样子的体验?是逃亡的恐慌和无助,是被背叛后的悲怆和愤怒,还是秘密潜入时的紧张和刺激?然而在设计关卡以前,你先要考虑一个问题:我的引擎能否满足我的需要?

在Wolfenstein 3D出来以后,曾经有一个发烧友给它做了一款Mod(高手!那个时候还没有此类工具),纳粹士兵变成了外星人,游戏的风格也从杀戮变成了秘密行动(你最好别给他们发现!)。如果你也想要改变游戏的风格,恐怕你也要做些编程方面的工作,但是这并不在我们的讨论范围之内,因此----请不要违反原作的风格。

Quake I的风格是中世纪的,带有些诡异和奇幻,巧妙的是它还有现代军事基地的风格,设计师通过传送门把它们连接起来;Halflife则是逃亡风格的,带有解谜的,动作性不是很强;Unreal以后的游戏则不那么容易分的清楚了,一般要么是追随Halflife的步伐(比如红色派系);要么是秘密行动,以任务为核心的(比如无人永生,命运战士2等);从内容看起来,以军事题材居多。由于游戏的风格越来越单一(象Quake1这样有4种风格的游戏已经很少见了),所以恐怕除非你能做大量的纹理以及大量的程序工作,想要单单从关卡设计这一块突破是没有可能的。作为关卡设计师,谨记:紧随原作的风格。

确定了风格(也就是确定了给玩家什么样的体验)以后,我们就可以动手设计关卡了,现在来看看下一个问题。

2.玩家需要得到挑战
毫无疑问,没有人不愿意展示自己的实力。如果玩家在玩你的关卡的时候不能获得旁人的赞扬,你的作品恐怕很快就会被遗忘。

<1>保证关卡的平衡性:太简单或者太难都不是什么好事,这一点看起来简单,做起来却颇费脑筋,可能的话甚至需要一本专著来论述,我只能择其重点说了。
首先考虑敌人的难易程度,如果设计恰当的话(这应该是总设计师的工作),每种敌人都应该有最擅长/不擅长的站位,最害怕/不害怕的武器,换句话说,长短并存。

Quake I中,orge最擅长的站位就是高处,它在低处只能任人宰割,这是由它的武器系统决定的;Halflife中的鱼可能是更加极端的例子;举一个比较现代的例子,NOLF2里面的忍者,她们在房顶的威胁可能更大一些

(但是区别没有那么明显了,现代的游戏这方面做得不够透彻);另外,Quake2里面的装甲兵种,他们对爆炸性武器有50%的抗性。那么在设计关卡的时候就很简单了,想要让玩家感到困难些,就发挥敌人的长处,相反亦然(不幸的是,现在很多的游戏都忽视了这点,以至于难度的划分只能依赖于怪物的数量)。

其次是考虑补给品,这里有一个公认的原则:什么时候玩家感到缺乏弹药,或者体力不支,就在前面放上补给品。那么难易程度划分起来就很简单了,因为不同层次的玩家,他感到缺乏的时候是不同的。

再次,是主线和支线的平衡,如果支线过少,玩家就会觉得缺少探索的区域,另外秘密地点可能就没有了(这里说的秘密地点并非是传统意义上面的secret place,而就是支线中的一部分),补给品也就没有地方摆放了;如果支线过多,玩家可能会分不清楚什么是主线什么是支线。如何平衡主线和支线只能通过大量的试验来决定。

此外还有很多问题,比如:武器特性和地形的关系----火箭筒不适合在狭窄的地方使用等;人工智能----人工智能一直在改进之中,Doom3里面怪物可以通过影子注意到玩家。这些因素在关卡设计的时候也是要考虑的。

<2>关卡的回报问题:除了补给品的回报,心理上的回报也是很重要的。复仇后的快感,或者是一段过场,都是很合适的,关键是让玩家融入感情。我至今不能忘记Max Payne中Max抱着妻子的尸体痛哭的镜头,能够让玩家难忘,这就足够了,玩家将欣然面对前面的挑战。

3. 不要让玩家感到厌倦
关卡设计最忌讳的就是让玩家感到厌倦。虽然说松弛有道,但是平和毕竟和无聊是两码事。
有什么因素会让玩家感到厌倦呢,我们来看一下:

<1>过于注重技术:对于关卡设计,技术指的就是构造多边形的技巧,这当然是必需的,但是技术不是全部,忽视设计的后果就是每人乐意去玩,这方面最好的例子当数Revolution,它有一个漂亮的引擎,但是在设计方面的问题多的数不胜数,以至于我第二天就把它从硬盘上请出去了。

<2>低劣的建筑结构:现在要谈谈技术的重要性了。我想大多数人的第一个关卡就是简单的四四方方的房间,加上灯光,也许还有一只怪物和一件武器之类的。第一次当然值得庆祝,然而如果你就把这样一个东西放出来给别人试玩,恐怕没有人会看上一眼的,为什么?技术上面太烂了,没有建筑结构可言。

当然没有人会这么愚蠢,但是你还是得多多注意关卡的建筑结构:我做得是否漂亮?我做的是不是足够逼真?举例而言,假设要做一个厕所间,那么马桶,水池,镜子,烘手机等“元件”最好分开制作,再粘贴到房间中,但是是不是这样就足够了呢?不是!你有没有考虑到,马桶上面应该有扳手,并且可以运作?水池上面应该有开关,并且可以放水出来?还有,难道厕所间是方方正正的吗?厕所间难道没有水管吗?要考虑详尽是很困难的,但是至少要在引擎允许的范围之内尽量做的逼真。这是每个关卡设计师都应该遵循的原则之一。

<3>漫无目的的关卡:在玩Revolution的时候,整整几个小时里面,我不知道我要干什么,唯一知道的是我是在上班,但是去什么地方上班,干些什么,关卡里面都没有详细的提及,我只能够凭着经验去尝试,结果就是我很快删除了这个游戏。

如果关卡庞大,又没有足够的提示指导玩家,那么玩家很快就会感到厌烦。恐怕设计师自认为玩家应该知道要干什么,问题是你永远不能预测玩家的反应,否则就用不着beta测试了。请记住,自以为是是最要不得的,我们自己设计关卡,难免会先入为主,但是玩家并不了解这里面的一切,所以你至少得给些提示,比如通过过场的直接说明(比如让一个npc做一遍,玩家自然会心领神会),文件上面的间接说明(还记得NOLF2里面你要把糖倒入发电机来切除基地的电力供给吗?在前面设计者给了很多暗示),方法不一,但是越自然越好,否则会影响玩家的情绪。

<4>不能调动玩家的感情:游戏是交互性艺术,而关卡是游戏的外在,因此能否调动玩家的感情,和关卡设计的好坏是有直接联系的。

         我想我们可以借鉴其他的艺术形式,文学可能是最好的,但是很难借鉴,电影倒是个不错的选择。现在的引擎已经允许关卡设计师做一些类似电影的镜头了,因此阅读电影技法方面的书籍可能会有帮助。我很走运,现在就读于影视技术专业,有机会接触到电影的技法,读者可能没有这方面的机会。但是平常多看看电影,基本上就差不多了。

<5>其他因素:不合理的布光能够让玩家产生疲劳,除非环境需要,否则不要加入太多闪烁的灯光(闪烁的灯光同时也会加重引擎的负担),或者大红大紫的灯光;另外,如果npc的语音对话中暗藏着重要的提示,最好别让文字部分跳得太快。诸如此类的问题还多得是,设计师当小心翼翼为是。

4. 扩张想象力


         我又要说到Max Payne了,我从未看到过闪烁着如此多的灵感的作品,但是灵感毕竟是要有来源的。文学,音乐,电影,都可以作为灵感的来源。艺术家不能闭门造车,关卡设计师亦不能如此。现在的玩家多数已经不能满足单一的关卡了,甚至Quake I的现代关卡设计师已经开始努力给这一古老的引擎加入新的元素了。由于国内至今不能重视关卡设计,所以我们只能自发的讨论或者去国外的论坛取经。

         正如前言所言,关卡具有自己的灵魂,而这是和关卡设计师自己的灵魂息息相关的,想要让关卡变成活生生的杰作,设计师必须肚里有货(本文的目的之一正是介绍一些“货物”给大家),因此多多参考世界的其他方面是必需的。

         此外,你得保证关卡具有一定的独特性。玩家可能需要花费很多时间来下载你的关卡(甚至花钱购买),如果他们发现这和其他的一些关卡没有区别,就可能对作者感到失望,后果就是…用不着我多说了吧。因此你最好给你的宝贝加一点与众不同的东西,譬如稍微改变一下模式,加一个新的但是很完整的故事,当然,有能力的话,加一些新的纹理,武器那就更好了。

5. 几个星期以前的电子邮件
在整理电子邮件的时候,我发现了几个星期以前和一个网友讨论关卡设计的一封邮件,放在这里正合适,读者就权当是小品文章吧。

“很多人都把这两个游戏做对比,并称rf可以取代hl,但是明显,玩家对rf的反映没有对hl的那么好,在这里我想要分析一下,主要从关卡设计的角度:

1. rf是hl的后来者,玩家总归要求高一些。

2. rf虽然也是以单人任务见长的,但是rf实际上很大部分是任务指向的,比如绑架总裁,摧毁发电站等等,情节实际上做的不怎么样,只是给玩家提供了一个火星的背景。相反,玩家在玩hl的时候首先想到的是逃生,这就意味着hl是故事指向的,相当于电影一样,何况这个故事还是比较曲折的,其中也加入了不少悬念,恐怕最著名的就是“蓝衣人“了,我玩的时候总是思考,这个家伙到底是谁,他是干什么的?为什么他总是在观望,似乎无处不在?hl可以说在讲故事这方面做的非常出色,我认为这方面还没有游戏可以超越他,因此没有人会觉得厌倦,人总是对未知感到有趣的。

3. hl的剧情偏向于科幻和反政府,这个很合玩家口味,尤其是欧美玩家的;而rf实际上没有什么特色,唯一值得一提的是交通工具和geo引擎,但是游戏出来的较晚,反而不能成为独有的了(对于交通工具),或者不能让玩家发出赞叹了(geo技术)。

注:现在看这点,我想我可能对rf过于苛刻了,但是玩家难道不应该苛刻吗?

*********
 

        说到这里,我想要提到另外一个游戏----unreal的第一关,并且仅此一关。我个人认为这是唯一做的非常出色的一关,为什么呢?因为它的气氛做得很好。我至今仍然记得第一次玩的时候的感觉,非常恐怖,因为我没有武器,非常无助,整个环境是坠毁的太空船,到处都可以看到尸体,废墟等等气氛的确做得不错(我认为设计师的目的达到了)。顺便说一句,我觉得相比较unreal和quake2,前者的关卡设计明显要成熟一些,这一方面可能是风格的不一样(逃生vs屠杀),另一方面可能是因为环境的不一样(unreal的画面非常养眼,而quake2的色彩有时会让人恶心),所以尽管unreal没有多少story-telling,玩家对它的评价还是不错的。

*********

关卡设计的目的何在?我认为就是让玩家沉溺当中。不知道你有没有玩过max payne,这是个环境完全拟真的游戏,没有一点科幻之类的东西,但是它的确可以让玩家沉溺其中,因为它经常挑动玩家的感情,让玩家随着剧情走动,而这一点是通过了一些特殊手段达到的:

1.游戏可以没有采用电影而是连环画+实时演示作为过场。这是个很另类的做法,然而效果却很不错。首先,强大的引擎保证了实时演示的逼真性我们以一开始的max payne回家à发现家人被杀作为例子。首先是演示max站在家门口,这个没有任何特殊的;然后玩家接电话,此时出现连环画,可以说这些画面做得非常出色,完全符合游戏的内涵:灰暗,冷酷,同时配有高质量的配音;接下来回到游戏,当玩家来到卫生间的时候,马上出现4个镜头,完全是电影般的过场,给人深刻的印象;高潮部分是max发现妻子被杀死的时候,设计者在这个方面花了很多功夫,首先是一个max慢慢跪下来的慢镜头,虽然说不是很逼真,但是还是可以的,关键是接下来的一副全屏幕的画面,max抱着妻子的尸体大声喊着NOOOOO!这是很有视觉冲击的(学过电影技法就知道了),可以说当时我是被深深的感染了---设计者的目的达到了,这就行了。

2.从关卡设计方面来看,Max Payne里面全部是纽约市的真实场景,虽然说我没有去过纽约但是我也相信这一点。这样玩家(尤其是美国的玩家)自然会沉溺在当中了(不知道读者还记不记得当年的duke3d,他也是凭借逼真的场面来赢得玩家的,虽然画面现在看来不行了)。我看过他的关卡编辑器,不是很好用,但是功能很强大,显然设计师花了很大的功夫。

四.忠告

<1>总体方面:

1. 坚持不懈:恐怕这是最重要的一条了,你可以没有才气,可以什么都不会,但是就是不能缺乏耐心。这点说起来容易做起来难,尤其是看到别人的杰作的同时自己却因为一个小问题焦头烂额。我想,如果的确觉得困难,不妨做一些简单的东西,或者换一个更加适合你的游戏/编辑器。

2. Admire the Master,Follow the Master,Learn from the Master,Be the Master:这是从编程之道里面抄来的(可能有些不一样),我觉得它适合任何的职业。

3. 关卡的质量至少要象原作中一样好才能得到关注:PlanetQuake的著名关卡评论师Teamshamblers说,如果你的关卡连原作中都不如,就不要发给我了。对于新手是有点残酷,不过这个世界上关卡设计师越来越多,你要是没有真本事,就会越来越没有信心,所以还是听从Teamshamblers的忠告吧。

4. 注意引擎的限制:这一点我在前面说过,现在补充一点。你要知道,引擎能够支持多大的关卡,多少个多边形(关卡中的多边形),甚至还要了解引擎工作的原理,这些知识可能在关卡编辑器的帮助文件里面有,也可能在设计师论坛里面找到,实在不行的话就给游戏开发者发个email吧。

5. 细节,请注意细节!这是划分大师和平庸之辈的一条标准,你甚至可以在大师的早期作品里面发现斌不怎么引人注目的细节。“对待自己的作品要象对待艺术品一样”,这就是大师的态度。

6. 玩家看到什么,你做出来的就是什么:是不是有些不太公平?我明明花了很多时间,只得到一片指责?!请冷静下来,如果别人都这么说,那么关卡一定是有问题,或者是你创造了新的风格而没有说清楚,总之你最好反省一下。

7. 可能的话,做一些引擎似乎做不到的东西,让他们看上去是真的。这些并不是必要的,但是很重要,很难想象工厂里面没有流水线,或者码头没有起重机。

<2>关卡构造方面

1. 不是所有的拐弯都是直线的;不是所有的灯都是明亮的:重复是很让人腻味的,加一些闪烁的灯光,或者坏掉的灯;用圆弧或者多边形作些墙角。尽量避免单调。

2. 几乎每堵墙都应该分开构造:这句话听起来可能有点奇怪,但是如果你仔细观察其他人的关卡,会发现一堵墙上面多半有好几个纹理,如果做成一个brush,那就不可能贴上多个纹理了。现在你是不是觉得这个很简单?但是老实说,我也不是从一开始就明白的。

3. 一些明显是为建筑物的单个面准备的纹理,也许可以贴在凹凸不平的地方;一些明显仅仅考虑用在直面上面的纹理,也许可以用在斜面上:我在玩Halflife:uplink的时候,发现一开始的地方右边的墙上,作者特意突出来一块地方,然而纹理却和周围部分浑然一体,真是绝妙好笔!由于引擎的限制,我们不可能作凹凸贴图,但是可以通过特殊手段把环境做的真实一些,这也可以算是一点创意吧。

4. 建筑的风格应该符合关卡的风格:如果是中世纪风格的关卡,就不要有现代风格的东西,反之亦然。

5. 不要忽略玩家不太注意的地方:房顶,房屋靠墙的一面,都要尽量做好,因为总归有人会去看的,而且,认真的态度,恐怕对于关卡设计师来说也是必需的。

6. 仔细观察每一个角落,去掉每一个不如意的地方:角落可能是设计者最容易忽视的地方了,“反正没人会看到”,但是如果你想要关卡尽善尽美,最好还是别有这种想法吧。

7. 速度和美观同样重要:如果你在关卡中加入了太多的多边形和敌人,那么可能会让游戏变得奇慢无比,随时调整和上网了解引擎的限制是最好的预防办法。

<3>关卡的内在方面

1. 如果你确定有个地方玩家不一定能够预料到,至少给他们一些提示:如果前面有个陷阱,至少给点血迹之类的;如果玩家得需要一系列复杂的行动才能过关,最好在比较明显的地方给出暗示。尽量避免玩家查阅功略。


2. 不要忽视声音和音乐:作为气氛的组成部分,声音和音乐是必不可少的,请参考Unreal I的第一关和Halflife

3. 这个世界上没有百分之百的好人和坏人:人物是剧情的中心,“人是最复杂的动物”,如果你能够在关卡中塑造复杂的(相对的)人物性格,那么恭喜你,你至少成功了一半。


4. 事先写下所有的剧情,然后尽量实现他们:就象导演一样,关卡设计师有必要做些前期准备。


5. 关卡设计可以弥补游戏设计方面的缺陷:假设说我们的游戏设计师设计了一样武器---大刀,但是他后来决定改变场景,从古代日本变成现代的工厂,那么关卡设计师就可以和他商量,大刀并非一定要去掉,可以给它一些附加的功能,比如让它成为“撬棒”,然后在关卡里面刻意加上一些非要撬开的地方;总之,关卡设计可以隐藏游戏设计(在这里两者并不一样,虽然我认为关卡设计应该属于游戏设计)上面的缺陷。


6. 从简到难设计关卡:这听起来似乎是应该的,但是现代的游戏似乎在如何把握“度”的问题上还有些不足。我经常看到关卡从一开始就超过了中等水平的难度(因为我在fps的世界里面生活了很长时间,因此这个中等难度应该还是有点参考价值的),令人吃惊的是,即使是优秀的关卡设计师也难逃于此。我的建议是,对于98年以前的游戏,你的关卡的难度最多不要超过原作一个档次,越是现代的游戏,就越不要试图难上加难了。

<4>杂项


1. 在制作关卡以前,如果能够在绘图纸上画出关卡的雏形,将对你有帮助:绘图纸可以说就是现实中的编辑器---有着整齐的方格,我经常在案头准备一搭绘图纸,以便灵感来临的时候应急。当然你没有必要完完整整的画出来,有个概况就行了。


2. 关卡设计师最好会制作良好的纹理:这有助于你发挥自己的灵感,否则你就只能局限于原则的场景了,正如我前面所说,现在的游戏越来越窄,要想突破就得自己动手。虽然说这是个可选项,但是—难道会一些不是更好吗?


3. 在学习的初期,首先是学会建筑的构造,然后是纹理的选择,内在要自始至终记在心中:总归是先掌握技术,然后才能够兼顾艺术,但是并不是说你一开始可以胡来,“内在”应该从一开始就注意的。纹理的选择对于新手来说可能很困难(我记得一开始作Halflife的关卡的时候光是选择纹理就花了半个钟头),我也没有什么好办法,只能建议读者多多玩原作的关卡,看看他们是怎么利用纹理的?必要的时候可以截图作为参考。


4. 在发布关卡之前严格测试你的关卡:首先是要完全编译关卡(很多编辑器都提供部分编译以节省调试时间);其次可以依照本文前面的建议检查一下,看看有没有纹理,构造方面的问题,至于设计上的问题,除非是很严重的,就不用改动了,因为势必“牵一发而动全身”;接下来就可以放出beta测试了,到国内国外各大论坛上面发布消息,并提供下载,一般时间用不着太长就会收到很多建议,最后修改好之后就可以送到review站点去了,看看你的作品能够得到怎样的评论?(如果愿意的话,你可以把作品发给我,我愿意评论Quake I/Quake II/Halflife/SOF II/Starcraft/RTCW的单人关卡)


5. 热爱你的工作,或者说娱乐:关卡设计可以说既枯燥又有趣,你得忘记工作的枯燥,全身心投入进去,才能获得成果。

posted @ 2005-07-23 22:01 蓝色雪焰 阅读(482) | 评论 (0)编辑 收藏
 
一、游戏的定位

1、游戏所产生的时代背景,人文情况
这里的世界可是现实中的世界,也可以是脱离现实,架空的一个世界。这一点决定了整个游戏的风格的世界观。对于人文情况,如果是现实的世界就要给出现实的历史情况,而对于架空的,则需要一个完整的世界与之相呼应,使之成为一个有机的整体。这一点可以参见AD&D,FF系列等游戏对游戏世界的设计。这一点对游戏的整体风格和世界观有很重要的影响。

    2、这个游戏所要侧重的玩点在何处
    这里的侧重点是指这个游戏用什么因素可以吸引玩家在这个游戏世界中生存,要知道,游戏世界也是一个相对存在的世界,玩家在这个世界中存在,就一定要有可以吸引他的因素在里面,这因素就是这个游戏的玩点。当然这些玩点可以是玩家的个人行为,但是一定要满足玩家的心理。例如:可以让玩家成为一个武功盖世的英雄,或是一个末日的救世主,或是一个强大的国家的君主,或是成为满足玩家心理的一些其它的角色。建议多看一些游戏中每个角色的设计,从中体会一些不同的点,以作为本游戏的出发点。

    另一个玩点则在于团队的协作与配合上,这一点多出现在一些网络游戏中,在网游中,玩家可以是一个团队的队员,也可以是队长,甚至是一个家族的族长,不论如何,玩家是在一个大的人与人的环境中生存的,玩家可以体会到在现实生活中所没有的一种人与人的公平协作的感觉,玩家可以带领家族或是队伍冲锋,也可以协作全队完成一些重要的任务,砍翻BOSS级的人物等,从而使玩家在这一系列的人与人的互动中得到满足感。

    这一些需要多研究各种游戏中的亮点,并总结出它们为什么会吸引玩家在这个虚拟的世界中生存的原因。并将其有机的融合到自己的游戏中来。此处对于出现在游戏中的玩点要详细的描述,因为在以后的内容中,有很多的关键点甚至是整个世界的设定都会与这些点相连接,只有把这些玩点真正的融入世界中,这些玩点才成功。

二、游戏的世界

    1、游戏的世界陈述
 这里要详细描述的就是这个游戏所存在的世界,同样也是玩家所存在的世界。

    相信有很多人在第一次玩一个游戏时都会有这么一个疑问,那就是这个游戏是什么样的呢?这里的“什么样”就是我们这里所说的这个游戏的世界,很可能玩家在刚刚走入这个世界时不会明白整个世界的样子,可是当玩家玩的越多,就越可以体会到这个世界的亮点时,玩家就会很乐意地在这个世界中生存下去。所以我们提供的这个世界一定要是一个完整的世界,不一定是庞大的世界,但是一定完整,这样可以让玩家很乐于在这个世界中进行各种各样的冒险,并且很乐意在这里成长,这一些可以参见(DIABLO系列,UO等知名的游戏)

    我们看到国内有很多的人不重视这个游戏世界的定义,其实如果这个世界定义的不好,就会让玩家玩的时候无所适从,或是通关后就没有了任何的印象,这样对于游戏的后继就会有不良的影响。这里有一点要说明:有些游戏的世界不是一版就确定下来的,可能是通过好几版的完善和丰富才逐渐形成的,对于这样的世界,在前一个版本中一定留下与后一个版本相衔接的接口,以便让整个的世界看起来连贯并且一致,而不会出现世界的断层。

    对于世界,我们要详细的给出描述

1这个世界所存在的时代
远古,古代,中世纪,近代,现代,未来,还是架空的世界。

2这个世界所存在的背景
在这个世界所存在的那个时代,有过什么重要的事件,典故。如果是架空的,那么就需要我们为它人工指定一个背景,是魔法的世界,还是一个卡通的世界,这一点很重要。

3这个世界的历史
游戏中的这个世界是怎么发展的,我们要给出一套完整的历史,这些可以参考一些历史的文献,当然对于架空的世界,我们则要充当一回史学家,人工来为你设计的世界写一个完整的历史。

4这个世界的人物
每个世界都有他知名的人,就像我们现实生活中的拉登,布什,我们的游戏中也要有这们的名人,他可以是正面的角色,也可以是负面的角色,他会影响我们在这个世界冒险的每一个过程,甚至是最后的结局。当然,我们的世界里不仅只有这些名人,还有一些普通的人物,他们在这个世界中也同样是忙忙碌碌的,为着他们的目标。对于他们,我们称为NPC,他们可能会给玩家一些重要的情报,可以会帮助玩家,当然也可能什么都不做。除了这些正面的外,就是一些有负面影响的人物了,在这里我们称他们MONSTER,他们可能会攻击玩家,甚至杀死玩家,是我们必须要认真对付的一种角色。关于这两种角色,我们会在以后相关的模块中做出具体的描述,但是在这个游戏世界的介绍里,他们是不能不出现的重要人物,不论他们是我们所说的好人还是坏人。

5这个世界里发生的重大的事件
这个游戏世界当然不是一个太平和安宁的世界,他会有争斗,会有矛盾,也会有战争,这些都给我们这个世界带来了不安定的因素,所以我们的英雄就出现了。当然,这人世界里还会发生一些很重要的事件,这些事件可能就是玩家在游戏里玩下去的最终诱因,也可能是玩家最终要完成的目的。并且在这系列的事件上还可以有更多一些的分支,让我们的世界更加的迷离,也更加的精彩。

在这里我们尽可能的把我们想要表现的这个世界完整的陈述出来,因为这是在后面系统的相关设计时程序和美术方面都要参考的东西,所以一定要做细致。

    2、出现在游戏中的世界的设定

    这个世界是玩家所进入一个游戏后最直观看到的一个世界。这里需要我们给出一个详细的设定。

    首先,我们的世界里面要有一个让玩家出生的地方,不论它是一个城镇还是一个乡村或仅仅是一个营地。

    在我们前面已经定下来的世界里,安排一些可以让玩家出生,补给的城市。这些城市分布在这个大陆上的任何一个地方上。这里有一点要注意,即时战略类的游戏,他的城市更多的是靠玩家控制在哪里建设,如文明,所以在设计的时候也一定要注意城市出现的合理性。我们针对RPG类的游戏来说,城市显然是很重要的,它可以提供玩家一个休息和实现多项职能的地方,这一点对于玩家很重要。再有一些,开放的城市要考虑到整个硬件系统所能承受的上限,如果超出了上限,我们能面对的就只是砍掉我们心爱的城市了。

    另外,我们还要归纳出这个世界中的地形要素。例如,有山地,沙漠,沼泽,丘陵,湖泊等等。当然了,我们还要定一下是不是有昼夜的变化,是不是有四季的交替。

    然后,我们要在这个世界中分出一些重要的场所。这里根据它们彼此的作用不同,要详细的分列出来。

    例如,我们的城市在游戏里起到了什么样的作用,乡村的作用是作用,哪里是战场,我们可以在哪些地方行走,哪些地方则不行,这些地方的大体布局又是什么?里面会有一些什么样的地形原素?这些都是我们在这一段里要说明的。

    地形说完了,下面我们可以说一说在这个游戏里出现的人物了。这里的人物就是玩家,我们的玩家要扮演世界中的一个角色,那么这个角色是什么样的?就是我们在这里给出一个设定。

    现在有很多的设定方法,而人物的分类也有很多,最流行的就是AD&D的那一套规则,很详细也很全面,这里我们可以参考一下那里面对人物种族的分类,并完全可以采用一些里面的设计方式为我们所以。

    例如,我们可以给我们的人物加上职业的设定,或者是让我们的人物可以选择自己的职业,但是给他们加上一个种族的设定,而针对每一个种族又会有不同的职业倾向。又或者,我们只给他们加入性别的设定,具体玩家想发展成什么样子,全由玩家自己来操控。再或者我们就给定玩家一个固定的角色来使用,玩家只可以在技能上面有些差异等等,要根据不同的游戏形式,设计不同的玩家形式,以达到在有限的范围内给玩家最大的自由度。

    有了人物,我们就可以设定一套为人物服务的武器系统了,我们的玩家在这个世界里冒险是不可能没有武器的,而武器也会有精良的和劣质的,所以我们要设计不同的武器,而且可以让每一个等级的玩家都有可以使用的武器来使用,而不是不到一个等级时只能用一件垃圾装备来凑合着用。在这个系统里,我们一般分为武器,防具,宝物,道具,当然还有一些与游戏相关的特殊的道具,如骑乘,特定的物品等。我们分出了类别后,就要给一个相应的标准,以便我们以后来设计具体化的道具,如,武器里面都有什么样的武器,分别是什么样的人可以使用的,防具又是什么样的,有哪些人可以使用哪些道具。宝物怎么使用,怎么得到,道具都有哪几类,作用是什么。这些都需要我们在这里给出一个大概的设计。

    最后,就是我们这个世界里的另一项重要的陈设了—建筑。这里的建筑是说我们的游戏里会出现什么样的建筑,它们分别都有什么样的作用?这里要分门别类的给出来,例如,道具店可以买卖物品,旅馆可以休息,酒店可以探听情报等等。在这里我们需要用到什么的建筑,我们又给它指派了什么样的功能,我们都要一一的描述出来。

三、游戏系统

    说完了游戏里的世界和人物,这里我们就要来定义我们的游戏系统了,这里关系到我们的游戏是怎么玩的,都有哪一样想着的因素和可玩的点。这一点是很重要的。

    第一、我们要定义一下我们的玩家系统

    我们的玩家在游戏里是什么样的呢,这里都需要一个完整的玩家系统来给我们的玩家一个详细的定义了。

    这里包括,玩家在第一次登陆时所需要的相关信息,玩家可以修改哪些参数?例如玩家的姓名,性别,职业,和一些相关到的基本的参数。这里需要我们给出定义。

    因为我们的玩家是一个由各项数值组成的一个整体,所以这里面的每项数值都是要我们来指定的。例如玩家可以有强壮度,可以有敏捷度,可以精神度,而这些又可能会关联到玩家的其他的属性上,例如生命值,生命值上限,气力值,气力值上限,生命力、体力、经验值、名望值、攻击力、防御力、移动速度、攻击速度、命中率、训练度、士气等等,所以在这里我们要把组成我们玩家角色的所有数值项都列出来,以方便程序方面为人物搭建数据结构。

    当有了一个玩家系统后,我们就要赋予玩家技能了。

    我们的玩家在整个世界里要使用什么样的技能呢,如果有职业的情况下,我们玩家的技能可能会受到职业的制约,当然我们也可以给定玩家一个固定技能列表,每当玩家升到一定的等级后,我们就可以开放一个技能给玩家。当然还可以有别的办法,例如让玩家自主去学习等等。而我们玩家所会的技能可能不仅仅只有物理性的攻击,可能还会有一些法术的攻击方式,这些都要根据不同的职业来做不同的区分。一般分为武术技能,法术技能,还有一些特殊的技能,例如领导技能等,我们还要给这些技能分开主动还是被动技能,因为主动技能是要求玩家主动释放的,而被动技能则不同,当玩家得到这个被动技能后,就可以一直使用它,直到玩家死亡。

    为了让玩家在这个游戏世界里过得更有意思,我们可以再加入一些特色的玩家系统,例如玩家的称号,玩家的官职,玩家的知名度等等,这样可以满足一些玩家的心理。也可以使游戏变得更有趣味更人性化。而这些特色的玩家系统将要如何获得,需要在这里给出一个明确的方式。

    第二、我们的玩家要在游戏里做什么——游戏的任务系统 

    玩家在进入一个游戏世界后,就需要我们提供一个相应的任务系统来供玩家来使用了。

    我们的任务可以是分为单线程的,也可以是多线程的,这里要根据游戏的复杂度和游戏的性质来决定,例如网络游戏就不可能有太过庞杂的游戏系统,而单机游戏的任务系统太过简单了,则会导致整个游戏的失色。这些都有它们相应的程度,要我们在平时的策划过程中不断的积累,最终达到一个相对平衡的程度。

    在任务的方式上也要注意,在网络游戏中我们要尽量做到玩家与玩家的对抗。但是在这方面有很多要考虑的因素,如玩家与玩家之间的作弊问题,洗钱,洗声望等,这些都要在任务中加以限制,使大家可以在一个相对平衡和公平的环境中对抗。

    在除了人与人的对抗以外,还可以有一些玩家与机器之间的对抗活动,即玩家与MONSTER之间的战争,其实这些在游戏中还是占有很大的分量的,只不过任务的方式有些单一,要想一些有新意的,可以令玩家投入的玩的因素。

    第三、我们怎么做战——游戏中的战争系统

    玩家有了武器,有了任务,那么玩家就可以在这个游戏世界中冒险了。那么玩家会碰到各种不同的MONSTER,这些MONSTER会对玩家造成不同的伤害,有些很轻,有些则可能致命,所以玩家必须用手中的武器来保护自己,于是就有了这个系统——战争系统。

    在这里,可以把这个系统拆成两个系统来说明。

    战斗系统
    玩家在游戏里不可避免的会遇到各种各样的战斗。小到砍死一个不值得一提的小怪物,大到与大家合力或是费尽气力打死一个终极的大BOSS。这些都是战斗,是玩家与MONSTER或是玩家之间的战斗,而这里面的规则就相应的要简单一些,杀死敌人后就可以获得相对应的奖励了,但是这里有一些要注意的是,这里当玩家与玩家做战时,如果玩家打死了其他的玩家,这里应该做什么样的处理,当然现在的MMORPG里是不主张的玩家与玩家的PK的,而且都带有一定的惩罚措施,所以我们在设计这里时就要注意,当真的出现了玩家PK的情况时要怎么处理。

    战争系统
    这个系统则要高于整个的战斗系统,因为有了各种各样的战斗才会有战争,所以这个系统包括了上面的战斗系统。而这里,我们要把出现在游戏中的战斗都分门别类的划分开来,使之有一个完整的系统来对所有的战斗进行分类,管理。

    在游戏里可能出现的战争中有以下几种(网络游戏中)
战争分为攻城战(国战)、家族战(敌对势力之间)、排名战(势力内部家族之间)、任务战(承接战斗性质任务)、野战(玩家小团体或个人行为的战斗)和练习战(军营等地的战斗。),此外,还可以根据游戏的形式做一些适当的调整,或添加或是删除一些相应的战争的方式,以便让玩家在游戏中体会到战斗最大的乐趣。

四、游戏的音乐

    同样,这个环节也是不能放松的一个环节,任何一个成功的游戏就不能没有一个能够紧密烘托其游戏气氛的游戏。音乐在游戏中起到的作用是不能忽视的,很可能直接的影响到玩家对这个游戏的认识,感觉。而这些东西最终还是决定玩家是不是还是继续玩这个游戏。所以,音乐也是一个很重要的游戏构成因素。

    在音乐的设计时,一定要使音乐可以通过游戏的场景来把气氛烘托出来,使玩家有一种在这个场景中的感觉。

    除此之外,当然还可以把一些可以让游戏生色的东西在这份大纲上体现出来,以作为游戏的玩点,并在讨论与设计时加以研究,使之完善起来,最终成为一个游戏最吸引人的地方。

到此为止,就把我们的游戏里的其本的框架搭了起来,使我们对这个游戏有了一个最初的理解,它可以让我们大体看到一个游戏的世界,人物,事件,战斗等等很多的方面,下面的工作就是怎么把我们在上面描述的这些东西细化,并将其独立的分离出来,作为一些相互呼应相互关联的模块,处理好它们相互之间的关系,使之成为一个有机的整体。


BTW:这只是一个企划案,这里面策划人员要把自己想要用到游戏中的想法尽可能全的汇总起来,然后与各个部门讨论其可行性,最后留下真正可以实施的,整理成游戏的策划案
posted @ 2005-07-23 21:55 蓝色雪焰 阅读(795) | 评论 (0)编辑 收藏
 
魔兽的任务号称有1500多个,这么多任务,难免有些水分在里面,不过把这些浩瀚如星海的任务分类一下,倒也可以借鉴不少。(由于我练的是部落,所以选部落方向的比较经典的任务)
    有人说,魔兽的任务很多,但基本上还是那些杀怪拿东西的任务占大部分,没什么意思。我要说的是,当你真正用心体会魔兽世界的任务,咀嚼每一个任务情节,感受每一个任务细节,你会发现,它比你想象的有趣的多。
一、 消灭(或击败)怪物。
    程序实现难度最低,只要验证所杀的怪物(数量)即可。应该说,这种任务在WOW里所占比例最大,在其他网游的任务系统中也最常见。因为这种任务系统的实现没有很大难度,程序只要安排任务指定NPC、任务对话及任务完成检测,而且也是最容易安排剧情的任务类型。
   所需消灭的怪物分为两类,一是普通的怪物,一是BOSS类怪物。普通的怪物就不必多说了,BOSS类怪物有些还需要触发条件,例如十字路口的狂热的维罗格任务,消灭半人马一定数量后才会出现,还有十字路口的艾其亚基任务,要在它的巢穴附近吹响号角来召唤它。

二、 收集物品。
    收集的物品分4类:
    ⑴、指定怪物必然掉落物品(如十字路口的偷钱的迅猛龙任务)
    ⑵、指定怪物随机掉落物品(如十字路口的斑马的威胁任务)
    ⑶、从地图上可见并可采集之物品 (如十字路口的菌类孢子任务)
    ⑷、可以由玩家制作出来的物品 (如灰谷的战歌氏族补给品任务)
    同样也是一般网游中最常见的任务类型。除了固定要安排的任务指定NPC和任务对话,程序只要安排物品获得途径(增加怪物掉落物品项或地图物品)和任务完成检测即可。

三、 对话任务。
    主要的任务类型,经常与其他类型任务结合运用。
    ⑴、与某人直接对话。
    ⑵、将指定物品给予某人并对话。与收集物品任务不同的是,该任务物品由任务起始NPC直接给予。(如贫瘠之地的战歌的报告任务)
    在游戏中的作用主要有以下几个方面:
    ⑴、推动剧情发展。
    ⑵ 、引导玩家进入下一张地图。
    ⑶ 、引导至后续任务。
    ⑷ 、让玩家了解游戏的背景故事。

四、 护送任务。
    保护目标NPC到达目的地,路上一定地点会刷新怪物,这时候要注意不能让目标NPC死亡,否则任务失败。最典型的是哀嚎洞穴的护送牛头德鲁伊任务。
    程序实现:固定地点刷新怪物,判断目标NPC是否死亡,死亡则转入任务失败,任务结尾若NPC仍存活,任务完成。


五、 探索任务。
    一般的要求是到达探索地点的规定区域内即可完成,供玩家熟悉地图用。有些任务还要求发现某特征事物,例如十字路口的遗忘之池任务,在池水中观察到有冒泡的地方,需足够接近方可完成。

任务说明:
向图加·符文图腾报告你的发现。 
探索遗忘之池  

很久以前,贫瘠之地曾是个郁郁葱葱、生机盎然的地方。但是战争与灾难接二连三地降临在这片土地上,最后就剩下了这一片干燥荒芜的不毛之地。事实就是这样,真让我伤心。不过,在过去的几年里,贫瘠之地出现了新的绿洲,生机又在这片土地上重现。我们德鲁伊感觉到了在很深的地下有一股试图冲出地面的力量。我们必须找到这股力量的源泉,请到十字路口西北边的遗忘之池去一趟,在那里的湖水中搜寻力量的源泉,然后回到这里来。 

六、 职业任务。
    之所以把这个任务分类出来是因为它的特殊性。在职业任务中,玩家将会熟悉自身职业的属性、特长、技能,锻炼必须的操作技巧。这些任务在魔兽中就做的很好。例如法师的职业任务有锻炼对霜之新星的控制能力和锻炼杀怪续航能力,盗贼的职业任务有训练涂毒和开锁能力的。


           从魔兽任务系统所得的游戏任务系统设计启示:
一、 任务的故事性。
    魔兽里的任务,哪怕是一个最不起眼的小任务,也会有几段故事说明和指示。任务说明会给玩家一种代入感,让玩家成为这个任务故事的一分子,从而带动玩家进入任务,创造游戏总体氛围。小任务如此,大的任务,特别是和游戏背景紧密相关的任务,更是要刻意渲染出足够的气氛,让玩家感觉,游戏的历史也可以由自己左右,当任务完成后,便会产生很大的满足感。一个个任务的故事组合起来,就如同凤凰的羽翼逐渐丰满起来,把游戏的故事情节都展现给玩家。这也成为游戏的内涵所在。
    任务的说明很很体现的暴雪的恶搞风格,而且九城的汉化有些地方也相当经典。仅举几例,可窥一斑:
    1、奥达曼的能源,法师职业任务。
找到一个黑曜石能量源,将其交给尘泥沼泽的塔贝萨。 
黑曜石能量源  0/1 

既然恶魔已经被消灭了,接下来我们就得去找一个能量源。不幸的是,最合适的能量源往往非常古老而且极难获得。有的时候,命运就喜欢这样捉弄你,难道不是吗?所以,为了得到能量源,你必须到奥达曼去打败那里的黑曜石守卫。他体型巨大而且很难对付,但是你可以从他身上得到我们所需要的能量源!祝你好运,利娜。如果你运气不好的话,那么……很高兴认识你。 

    看见最后一句话没有?呵呵。

    2、能量仪祭,法师的职业任务。
将《能量仪祭》交给尘泥沼泽的塔贝萨。 
能量仪祭  0/1 

嗯……我想起来了,我的书已经没有了!你要知道,我欠了一屁股的债,不得不把最后一册《能量仪祭》卖掉来还债,我把它卖给了一个牧师……他是血色十字军的成员。他一定把那本书带到了他们的根据地——提瑞斯法林地里的血色修道院图书馆去了!如果你想要那本书的话,就得去一趟修道院。很抱歉给你带来这么多麻烦,这些天我已经有些头昏脑涨了…… 
    原来这个隐居在尘泥沼泽的家伙是为了逃债,连书都卖掉还债了,哈。

    3、荆棘谷的讨债行动。
给藏宝海湾的“海狼”马克基雷带回玛雷的畸形足、乔乔的金色望远镜和苏克的巨型戒指。 
玛雷的畸形足  0/1 
乔乔的金色望远镜  0/1 
苏克的巨型戒指  0/1 

我这儿的白条已经少了许多啦,但还是有许多没信誉的家伙欠着我的钱。接下来,我们得对付“畸形足”玛雷·维尔金斯、火柴棍乔乔,还有拇指苏克。这帮家伙的债欠了好久,我看他们是不想还了!后来,我听说他们被什么人给骗到丛林里去了。我当然不关心他们到底会怎么样——我要的是我的钱!他们应该就在东北方的阿博拉兹废墟和朱布瓦尔废墟里。找到他们,把我的钱拿回来。

    很明显这家伙在魔兽里专放高利贷,完成了这个,后面还有一系列的讨债行动。

    4、辛特兰的Z校对2任务。
在荒芜之地收集20张枯木头皮,与尼姆布亚的长矛一起放置在枯木村庄,然后回到荆棘谷尼姆布亚那里。 
传达可怕的信息。  

枯木巨魔原来是部落的盟友,但他们现在背叛了萨尔……他们要为此受到惩罚!来,拿起我的长矛去北边的荒芜之地。追捕那里的枯木,收集他们的头皮,在他们的一个村庄的土地上插上我的长矛。让他们知道,背叛部落,迟早要还的! 

    传说中的魔兽版无间道?

    所以,任务的说明要幽默自然,该严肃的任务也要有严肃的口吻,而且还要符合任务NPC的性格,甚至可以考虑运用当前流行的语言。在完成任务的同时,玩家也会一步步了解该任务NPC的故事、个性,不自觉地融入其中。

二、 任务的触发方式。
    在魔兽世界中有以下几种
    ⑴、任务NPC。任务NPC是一般游戏中通常的触发任务方式,不必赘述。(当然,NPC还分为傻乎乎蹲在一个地方的和四处乱逛的。)
    ⑵、怪物掉落物品。可分为随机掉落和固定掉落。菲拉斯、加基森、辛特兰等地怪物随机掉落的OOX机器人任务蛮是有趣。固定掉落任务如杀一些特殊的怪(典型的如陶拉祖营地上面的雷霆蜥蜴、雷鸟,灰谷的三大兽)会掉任务物品,点击触发任务。
    ⑶、可在地图上点击的物品。一般比较隐蔽。魔兽村子里的通缉令算是比较容易发现的这类任务。其他还有酒桶、箱子、祭坛之类的,鼠标移动到上面会有齿轮状提示出现。
    一般的网游中第一类的较多,建议多加入二类和三类触发方式,保持玩家接受任务的未知感和新鲜感。

三、 任务的提示。
    在魔兽世界里,任务的提示是做的相当好的。NPC头上黄色的叹号代表有任务可以接,白色的叹号代表有任务但你尚未到达该任务等级,黄色的问号代表你在该NPC处任务已完成,白色的问号代表你在该NPC处接了任务但未完成。我认为,在一般的网游中,对任务的提示普遍不够,有时候玩家甚至不记得在哪个NPC处接了什么任务,造成任务进行的混乱。而魔兽中普通难度的任务都会在说明中指出目的地大致方位,完成任务之后,只要在任务NPC附近一定范围,该NPC就会在小地图上以黄色点标示出来,给予玩家足够的提示。这种方式对于任务的进行和体验提供了帮助,可以在网游中普遍采用。

四、 任务的难度控制。
    先说单个任务的难度控制。在普通的链状结构任务中,难度都是循序渐进的。例如荆棘谷的摩克萨尔丁的魔法,任务的起始是从杀深喉猎豹(37---38级)开始的,第二步要获得的物品是从丛林捕猎者(39—41级)那里得到的,第三步成年大猩猩的肌腱所需杀的怪等级38---41,最后一步要从纳加的圣泉中取到圣泉之水(纳加等级43—44)。注意到这些任务能够单独完成所需等级是一步步慢慢增加的。所以链状任务设计的时候,切忌任务之间跨越等级太大,或者任务越后面难度越低。等级跨度太大,给玩家无所适从的感觉,再加上当前能力无法完成任务,造成放弃任务的几率大大增加;任务难度安排颠倒,越到后面越没挑战性,结果给玩家的成就感也就降低了。
    再说整个游戏的难度控制。仍以魔兽为例(副本也算做任务的一部分)。
    1-5级时,玩家在新手村活动,这时候的任务一般以杀怪、收集物品和探索为主,设计时就要注意把相关的任务难度调低,让新手在任务中快速熟悉游戏的玩法。例如杀怪任务可以减少完成任务所需怪物数量和削弱初级怪能力,收集物品任务所需物品必须大而显眼,探索任务目的地离新手村要近。而且关键是都要有详细的说明,指明任务所在地是必须的,让玩家在完成任务时不至于没有任何头绪。
    6-12级时,玩家一般会离开新手村到达第一个城镇,除了前面所述几种任务之外,还要适当加上消灭普通BOSS的任务,这种任务高级点的玩家可以单独挑战,低级点的玩家必须组队才能战胜。在一定程度上促进了玩家交流和组队,增加了游戏交互性。
    13-20级,这时候玩家已经对游戏玩法有足够的了解,所需的就是大量的任务来提高玩家的技巧(包括个人能力和团队配合能力),第一个需要配合的副本任务在这样的前提下诞生了(如奥格瑞玛的怒焰峡谷),在副本里强调团队的配合,一个人的失误都有可能带来团队的毁灭。不过做为第一个副本,难度一定要控制好,地图不能太复杂,怪物密度不能太高,BOSS能力不能太强。
    21-30级,基本同上,不过此时的任务考虑加入一些技巧或噱头,添加大量的隐藏要素,使不同的玩家在完成不同的任务时有不同的体验。这个时期的副本可以适当加大难度。(十字路口的哀嚎洞穴副本是这个时期必进的一个副本,在细节方面和难度方面都处理的很不错,不过唯一不足的是地图实在太复杂,去过两三次的人也未必会熟悉,至于我,在走了八遍以后才勉强记住。)
    31-40级,这个阶段玩家一般会在中立地区活动,与敌对阵营的摩擦也日益增加,组队完成任务的玩家会占很大一部分。所以可以增大团队才能完成的任务比例,还有一些需要良好操作控制的任务。副本中怪物的密度可以增大,考验团队处理突变状况的能力(如剃刀高地的2精英3普通怪和巡逻怪组合),BOSS的技能和AI增强,让玩家自行摸索战胜BOSS的技巧。(如诺莫瑞根的最终BOSS,打他的时候旁边的炸弹发射器会不停放出炸弹来攻击玩家,需要一个人去关炸弹开关。)
    41-50级,到这个级别的玩家一般都已经具有良好的操作和对自身职业足够的了解,单独完成任务的欲望强烈,可以考虑降低团队任务比例。副本难度大幅度增加,一些区域需要特定职业的技能才比较容易通过(如奥达曼的矮人群,范围魔法可以发挥的淋漓尽致),一些区域需要玩家消耗大量的药品(如马拉顿的毒水BOSS,滋补药剂和治疗药剂的应用),打BOSS需要技巧和运气(马拉顿的公主,战士积累足够仇恨,盗贼和法师、猎人主输出伤害,牧师照顾战士的同时又要注意不被公主盯上。对付公主的大范围毒气,近战的要轮流上阵。对付公主的打飞能力,战士要靠墙站。)
    51-60级,这个时候出现了全新的任务类型,大型团队任务(RAID队伍),需要5个以上、40个以下的玩家协同完成。这些任务也是对玩家的极大挑战,不仅普通小队无法完成,即使是RAID队也要良好的配合和正确的战略指导才有可能战胜。在丰厚的奖励和诱人的物品掉落面前,会有玩家不停的组织人手来击杀BOSS,如尘泥沼泽的黑龙公主、艾萨拉的蓝龙、熔火之心的火焰领主等。这个时期的副本,几乎每一波敌人都是一个挑战,一旦处理不慎,团队覆灭是很正常的,技巧+战略+运气,一个都不能少,才能完成高难度的副本任务。
    因此要随着游戏的进程的编排任务的方方面面,合理地估计玩家该阶段的能力,做出最佳的任务安排。

五、 任务的节奏控制。
    这个在副本任务中要注意到,因为一个副本任务通常需要比较长的时间,如何在这么一段时间内把握玩家的情绪起伏,合理地安排各种不同的挑战来提起玩家的兴趣。一般副本会分为若干个区域,每个区域都有一个小BOSS,最后还要有个终极BOSS。玩家在消灭了一定的怪物之后,情绪会逐渐低落,在情绪失落到最低点前,小BOSS出现了,一方面给玩家带来足够的挑战,带动任务进行的气氛,另一方面提供诱人的物品掉落,给玩家继续探索下去的动力。一段段小高潮过去后,在终极BOSS出现前,玩家由于疲劳等原因情绪到达最低点,最终BOSS的出现就给这段旅行划上了完美的句号。随着战胜了最终BOSS,玩家就如同经历了一场自己主演的电影,兴奋到达最高点。

六、 任务的隐藏要素。
    隐藏要素有多方面的意义,如下示。通常这类任务比较容易引起玩家的兴趣,因为会觉得其他玩家不一定会发现,若是自己第一个揭示这个任务,就会产生莫大的成就感。
    ⑴、完成任务可以有多种方法,有的方法比较隐蔽。
    ⑵、接到任务的因素是隐藏的。如尘泥沼泽的黑色盾牌任务和可疑的蹄印任务就是在路口一个已经被摧毁的旅馆中发现的,把鼠标指到上面才会出现提示,所以是隐藏要素。
    ⑶、任务中隐藏的事实真相。奥格瑞玛的尼尔鲁火刃就是正宗的魔兽版无间道,在任务的进行中,会发现他是隐藏在奥格瑞玛的叛徒。
    ⑷、任务中的任务。奥达曼解决最终BOSS后,在后面的房间里会发现一个白金圆盘(其实是古代光碟),把它放到旁边的一个石像里会出现一段虚拟影象,并且有详细的说明,最后可以接到把光盘送回雷霆崖的隐藏任务。


七、 任务的可选择性。
    也就是常说的分支任务。不过这样的任务在魔兽中不是很多,最为典型的应该是部落凄凉之地的半人马任务,有两个半人马部落,你可以选择屠杀一方来提升另一方的友好度,友好度到达一定程度后便可接受更高的任务。专业技能的选择也算是分支任务,例如铁匠的武器专精和盔甲专精,制皮的元素方向、部落方向和龙鳞方向,工程学的侏儒工程学和地精工程学。
    但可选择的任务越多,就表示程序和策划要进行更多的工作,所以在网络游戏里,除非必要,一般不可能出现太多的分支任务。

八、 任务的奖励。
    在魔兽里,除了固定的经验奖励外,任务奖励一般只有两种,金钱或者物品。金钱倒也罢了,不过物品奖励的设置我认为有些问题,因为有些任务的奖励对于玩家来说基本上毫无用处(例如只能穿布衣的职业奖励皮甲,只需要智力的职业奖励敏捷物品),这就导致了玩家对任务的挑剔,有适合自己奖励的就做,没有的话一律略过。
    因此我觉得可以在目前的任务系统上,加上任务点这样一种属性,完成所有任务都会有数量不一的任务点可以获得。至于任务点的作用,我设想了以下几点:
    ⑴、改变任务奖励物品的某些属性。例如法师,任务奖励了一件20敏捷10耐力的衣服,提供一定的任务点可以把敏捷转换成法师需要的智力。不过要注意的是,这种改变仅限于任务奖励物品,若是对于所有物品都如此的话,游戏平衡性将受到很大冲击。
    ⑵、用任务点换取特定称号。不同称号有不同的特点,如“奥格瑞玛的勇士”,力量+10,敏捷+5,耐力+5,在奥格瑞玛城享受8折优惠。当然,这样的称号需要大量的任务点才可能获得。若是要换取新的称号时,原有称号转换成1/2任务点退回到总任务点数中。也可以设置一些需要特定称号才能够接受的任务。
    ⑶、需要一定的任务点才能够进行某个任务。这样的任务必须是重要任务,和游戏的主线剧情有很大关系。这样玩家为了完成主线任务,也要通过完成大量的分支任务积攒任务点。




魔兽里我印象比较深刻的有意思的任务:
    ⑴、部落贫瘠之地的加恩的报复最后一步,要你去炸掉巴尔莫丹的飞行器,所用的炸药就是前面任务中收集的木浆、硝酸钠等等做出来的,这就是任务连续性的很好的体现。
任务说明:
摧毁巴尔莫丹的飞行器,然后向加恩·石塔回复。 
贝尔莫丹飞行器已经被摧毁  

按照卡兹戈姆的日记上所述的方法制造出来的炸药应该不会有问题。那么,我们开始吧。首先我有一项特殊的任务要交给你完成。拿上这只爆破筒,去炸掉巴尔莫丹的飞行器。这个飞行器不仅是巴尔莫丹军事设施的关键部分,也是一架可怕的杀戮机器。更重要的是,它是权力的象征,而它对我们的部族来说则代表着一段耻辱的回忆。我会为你的成功感到自豪,你也将得到丰厚的奖励。
 
    ⑵、石爪山的烈日石居的塔姆拉会叫你把之前搜集到的盖亚的种子种到焦炭谷的土堆里,魔兽种树也疯狂,因为焦炭谷的土堆有限,所以经常就是见到一个土堆,好几个人飞奔过去,先种下的人得意狂笑,没种到的嚎啕大哭,哈哈,很有趣。
任务说明:
将10枚盖亚之种种植在盖亚土堆中,然后与烈日石居的塔姆拉谈一谈。 
种植盖亚之种  

如你所见,盗贼,我纯净的心灵可以为这片不毛之地带来新的生机。你必须将这些种子种植在破坏之源中,在西边的焦炭谷里就是破坏大自然的源泉——这片被污染的土地上到处都是鹰身人和凶恶的火元素。邪恶狂风,拿着这些附有魔法的盖亚之种,把它们种植在盖亚土堆里。 

    ⑶、希尔斯布莱德丘陵的赫尔库拉的复仇任务,部落的做这个任务有点难度,因为目的地是联盟的城镇,很容易被卫兵和联盟的玩家追杀。经历N次复活的艰辛之后,努力终于有了回报,复活后的赫尔库拉召唤出一群骷髅兵攻击南海,虽然。。。最终还是难免被南海的卫兵围殴至死,不过咱心里还是爽了一把。以前的版本还有BUG,他会不断召唤出来骷髅兵,直到把南海淹没。。可惜我在那个版本没玩到这个任务。
任务说明:
将埃希尔之焰、沃拉兹之焰和尤基尔之焰的力量注入赫尔库拉的魔棒。把经过仪式洗礼之后的魔棒带到南海镇的赫尔库拉墓地。 

拿着赫尔库拉的魔棒,你会用得着它的。赫尔库拉用3个火葬柴堆来构筑他最强大的法术:埃希尔之焰和沃拉兹之焰在丘陵地带的洞穴里,尤基尔之焰在丘陵洞穴上面的另一个洞穴,在山的更北边。赫尔库拉的魔棒必须经过这三堆火焰的洗礼才能发挥作用。在仪式完成之后,把魔棒带到赫尔库拉的墓地去,那座墓地就在由人类重兵把守的南海镇。让赫尔库拉的复仇降临在愚蠢的人类头上吧!
 
    ⑷、希尔斯布莱德丘陵的受难药剂任务,变态的药剂师要你把这个乱七八糟的药剂给农场里的一只小狗吃,结果吃完,小狗变大狗。。。而且还是乱咬人的那种,没办法,只好顺手料理了它。
任务说明:
把受难药剂交给乌比。 

我得花一会儿时间把这些成分混合在一起,做成受难药剂。成功了!啊,还有什么能比给这个世界带来点灾难更让人愉快的呢?让我们看看这种药剂能不能达到预期的效果。让我的助手乌比瞧瞧黑暗女王为人类和天灾军团准备了什么样的礼物。 

    ⑸、凄凉之地的诱捕科多兽任务。很另类的任务,对年老或濒死的科多兽使用诱引器,然后它就会变成驯服的科多兽跟着你走,这时候最惬意的事就是开加速技能,看着一只庞大的科多在自己身后狂奔,感觉特爽。
任务说明:
带5头驯服的科多兽和科多兽诱引器给瑟卡布斯库营地的斯米德·瑟卡布斯库。 
驯服的科多兽  0/5 

比布莱认为他是凄凉之地唯一一个懂得赚钱的地精。好吧,想要让旅团闯过这块地方就要靠我了。因为我懂得利用我的科多兽诱引器控制年老的和濒死的科多兽,所以我和旅行队的主人科克,瑞格进行了合作。把科多兽诱引器拿去使用在任何年老的或者濒死的科多兽身上。然后那个野兽就会变成驯服的科多兽然后会跟着你。一旦你驯服了一头科多,那就把它带来给我吧。 
    
    还有很多值得分享的任务,留待各位自己慢慢体验。


    玩魔兽,你可以不做任务,但是不做任务的你,将永远无法体会到任务的乐趣。魔兽的任务系统,巧妙的将单机游戏的精髓融入了网络游戏之中,你选择不同的职业、不同的阵营进行游戏就会有不同的体验,无时不刻地提醒你是这个世界的一分子,这才是真正的Role Play。同时,它又很好地把握了游戏的节奏,让你在任务中不断成长,在任务中提高等级,在任务中获得装备物品,在任务中成为真正的老鸟。所以今后的网络游戏的任务系统,可以参考借鉴一下魔兽,在网络游戏已经公式化、枯燥化的趋势下,设计出不同的适合自身游戏的任务,走出自己的风格。
   由于这篇文章纯属本人的个人观点,难免有些错误和不足,所以请各位多多指正,让我在批评和建议中成长。^_^
posted @ 2005-07-23 21:53 蓝色雪焰 阅读(318) | 评论 (0)编辑 收藏
 
10款游戏的设计分析      来源: 游戏制作联盟 作者: 新疆人在流浪

文章原有的题目是:《10个值得向同行推荐的游戏》。
但许多人都曲解了我的意思,所以不得不更改了名字,显得“专业”一些。

这似乎是一个很古老的题目,事实上,早就有许多类似的人,写过许多类似的题目。但大多是谈一部游戏如何震撼、如何感人……如何不玩就枉为人也……如是种种……
私以为,这些东东与其说是写给游戏人看的,不如说是写给玩家看的更为妥当。
一个职业游戏人,他的时间是非常有限的,即使有业余时间想玩游戏,出于积累的目的,他必须去玩那些他并不喜欢的游戏。
对于他们来说,即使是一部最爽的游戏,如果只有解乏发泄的目的,还是没有什么学习和游戏的必要。

当发现业内人玩游戏的目的与业外人的区别之后,曾与许多人交流过想法,对大家的意见进行了归纳。
发现,如果要向业内人推荐一个游戏,那么这部游戏必须有如下几个特征:
1、 这些游戏要有代表性。
2、 这些游戏可以提供给业内人士一个明确的、看得见、摸得着的帮助和指引。
3、 当然,这部游戏最好要足够有趣。
……

本文罗列的10个推荐游戏,其实是10个推荐理由,而每个理由都罗列了相当多数量的游戏。
这些罗列的内容与游戏类型没有关系,即不是按照传统的SLG、RPG来分类的,这一点请诸位看官注意。

 

必玩游戏之一:《火焰之纹章》
代替作品:《DIABLO》
必玩原因:状态系统

《火焰之纹章》可以说是战役型SLG的鼻祖,自1990年4月《暗黑龙与光之剑》发售至今,已有12年的光阴了。
在《火焰之纹章》之后,战役型SLG(又称S·RPG)开始繁荣,其后的《皇家骑士团》、《FFT》、《旺达尔之心》、《炎龙骑士团》……都可以说是《火焰之纹章》的“子孙”。
但是,《火焰之纹章》在完成了初次登场之后,却并没有停下他的脚步,他仍旧在继续着自己的行程,非常奇怪的是,他从此走上了一条与其它同类型作品完全不同的道路。

大家来看一看这些出现在《火》中的游戏因素:
反击、反击时绝对会心一击、当HP低于最大HP1/10时闪避力上升、攻击骑兵时会心一击机率上升、回合开始时自动回复HP……
你看出来这些设计有什么统一点了吗?
那就是:“这些设计全部都不需要操作。”

一部游戏中的设计,最大的部分集中在角色,也就是NPC身上,而涉及NPC的创意,基本上可以分为两类:状态、行为。
其中,不需要操作,就可以实现的设计内容,就是状态。而需要操作的,则称之为“行为”。
在《火》中,大多数创意和玩点都集中在了这些“状态”上,对传统(指《火》的子孙)中常见的诸如“面积魔法”、“召唤魔法”……嗤之以鼻,甚至连“不良状态”都少得可怜。
这是与其它所有的同类型游戏,甚至RPG游戏都完全不同的设计思路。

状态,是被国人普遍忽视的游戏宝藏,尽管这是一个与“行为”相同规模的游戏库。国内几乎所有的游戏设计,都集中到了“行为”上。如阵法、魔法、必杀技、道具、武器技……
这种研究的缺憾,造成了中国游戏界的先天畸形,可以说,一天不研究“状态”以及状态在游戏中的价值和位置,中国的游戏,就永远不是一个完整体。
反观世界上诸多经典游戏,都会看到“状态”在游戏中活跃的身影。
《DIABLO》中的所能“被动技能”,以及武器上附加的特殊效果,就是状态。
《魔法门》中的职业属性,就是状态。
《最终幻想7》中是以在武器中镶嵌装备“珠”子(如“先制”之珠)来实现一些状态的。
《星际争霸》是角色的先天能力(“如隐身”),就是状态。

为了提醒大家,我在这里罗列了我想到的一些可能会在战役型SLG中出现的“状态”因素,但是,研究“状态”最好的办法,还是去玩一玩那部游戏:《火焰之纹章》

附:状态举例:
二次攻击……攻击时发动魔法……如果杀死敌人,可以再次行动……攻击后敌无法行动……攻击后死亡……被攻击时,令敌损失相同的HP……一定范围内已方生物被攻击,自己代替损失HP……反击……被某种生物攻击时,一定概率闪避……由防御罩代替损失HP……回合开始时自动增加HP……回合开始时自动驱散所有不良状态……回合开始时自动攻击相邻的敌人部队……一关结束时自动复活……每周一自动增加HP……每月15日夜间战斗为狼人状态……登场时魔法攻击敌全体……感应攻击(敌进入感应范围内自动战斗)……结界影响(一定范围内部队战斗力变化)……被影响(战斗时,如一定范围内有指定部队战斗力变化)……相邻位置敌牵制(指敌人经过身边时必然停下来)……合击……当已方战士在城堡战斗时,魔法援助……当已方指定职业的战士战斗时,战斗力上升……水面移动可能……地行……当水的宽度低于3格以下时跳跃可能……敌人越过可能……已方部队超越过可能……瞬间移动……替换移动……移动范围加倍……移动力减半……HP回复时效果加倍……再次行动作用到与目标点相邻的部队……令目标点处于指定状态时,状态时间增加一倍……结束行动时,相邻部队再次行动…………无法控制……无法操作……操作后一定概率不行动……操作后一定概率自动行为……一定范围内行为无法使用……在某个日期死亡时自动复活……死亡后自动变成另一个生物……自爆……死亡后相邻部队HP=1……

必玩游戏之二:《魔法门》
其它作品:《FFT》、《超级机械人大战》、《浪漫沙加》
必玩原因:小抄养性

游戏中玩家的力量是怎么增加的?
几乎所有的玩家,都会立即联想出这样一个过程:战斗——累计经验值——当经验值积累到一定数量时升级。
升到一定级别(或者是增加经验值到一定程度)时,会自动给角色增加一种战斗方式。通常为招式,如“五雷咒”之类。
这是《仙剑》的升级方法,相当长的一段时间,甚至直至今天,这都是国内玩家默认的升级系统。

事实上,升级,以及增加能力的方式还有许多种。
《DIABLO》的升级及增加能力、技能的方式,就迥异于《仙剑》。
角色升级,升级时得到能力点和一个技能点。
分配能力点可以增加角色的能力。
分配技能点,可以激活角色的技能或是升级某一个技能。
而在《魔法门》中,角色升级时得到技能点。
除了单纯的能力级别外,角色还有许多具体的技能,如“火魔法技能”、“弓箭技能”这些技能也是可能升级的。
用这个技能点去升级这方面的技能,升级后可以学习更高级的魔法或是提高现有战斗方式的效果。
这个设计可以令玩家自由的选择角色培养的方向。
而在《FFT》中的却是这么增加能力的。
角色战斗的同时,会累加一定数量的技能点到角色当前对应的职业上。角色消耗这些技能点,就可以激活该职业的技能。
说到怪异的升级方式,当然不能忘记《浪漫沙加》。
在这部游戏中,所有的技能是在战斗中随机悟得的。角色能力越高,所悟的技能也就越强大。

除了升级系统外,我们应该看到有许多优秀的游戏值得我们去临摹。
几乎99%以上的回合制游戏中,精灵在完成一种行为之后,是要结束行动的。但也有些游戏例外,例如《机器人大战》中的“精神”、《艾克美牌》中的“再次行动”
……
在《机器人大战》,我们看到角色在使用“精神指令”之后,是不会结束行动的。因此,角色可以用这些精神指令去修正攻防效果。
例如,把“必中”、“魂”、“幸运”、“加速”……累加到一起,就可以达到这种效果:“攻击远距离的敌人,增加3倍的伤害效果,绝对命中敌人,杀死敌人后得到双倍的经验值和金钱。”
这种设计的本质,是增加了玩家对游戏的干预方式和程度。
最后,为了方便大家,我再提供一些可以抄的资料吧。
《鲁多拉秘宝》:言灵系统。
在这个系统中,玩家可以通过寻找文字碎片的方式,最终达到自已设计魔法的目的。
《财宝猎人》:战斗系统。
这个类似于SLG的战斗系统中的战斗、移动、法术的操作系统是统一的,玩家可以象ACT游戏中那样直接手动的控制角色,真是非常奇怪的一个系统。
《英雄无敌》:地图移动系统。
英雄无敌的地图移动系统有些类似于《财宝猎人》只是操作的方式变成了鼠标。由此带来的变化也是巨大的。
《幻想传说》:战斗系统。
曾有人想过这样一个创意,平时是RPG,在遇到敌人时转入FTG的战斗系统。这样的创意可能会有吗?玩一玩《幻想传说》吧。
《火焰之纹章——圣战之系谱》:爱情系统。
SLG游戏中,除了战斗之外,难道就没有别的什么东西可以做了吗?事实上,还有一件事可以做,那就是选择队伍中的男男女女一起战斗。最终,他们就可以产生下一代。影响……另一个故事……


题外话:抄亦有道
“把游戏做出自己的特色!”、“游戏最重要的是创意!”、“只有与众不同才有存在的价值!”、“弄潮儿向潮头立,手把红旗旗不湿……”
说这种话的人,通常不是没有游戏制作经验,就是那种会花两张出租车票去买一根冰棍的主儿。
如何振兴中国游戏?
如果以最快速度让中国的游戏产业转入正轨?
答案只有一个字:“抄!”

我们在中国大陆,我们是渺小、落后的国内游戏人,我们是弱者,我们必须认命,否则,就会连弱者的资格都会被剥夺……
至少,弱者还有一线希望成为强者,而死者却是绝无希望的。
看看我们的周围,和大陆一样的游戏界弱者不有不少,如韩国、台湾……他们曾和我们站在同一起跑线上,但现在他们都站在了我们的头上。
他们的游戏中,几乎没有任何创意。他们的游戏产业,就是“抄”出来的。
创意是要付出代价的,有创意的游戏,其制作风险及周期几乎是同类型游戏的3倍。而且十有八九不一定成功。
最重要的是,只有处在游戏制作前沿的游戏众受,在对旧的游戏表现形式已经滥熟于胸时,才对会游戏设计的“创意”表示兴趣。
中国大陆的玩家是这样吗?远远不是!事实上,他们当属于启蒙阶段,95%以上“玩家”甚至连RPG都需要别人引导。

事实上,许多中国游戏制作者也是明白这个道理的,但是这么多年过去了?国内的游戏业为什么还是没有起色呢?
答案简单至极,看一看我们的游戏制作者都抄了些什么吧?
《究极三国》抄《C&C》
《齐天大圣》抄《DIABLO》
《封神榜》抄《英雄无敌》
《烈火文明》抄《最终幻想》
……
乖乖隆的咚,被抄的都是经典哟,国内游戏人人穷志不短,拿着几十万人民币的投资去规划几百万美金的项目……可怜,只落得个白茫茫大地一片真干净。
……
再看一看台湾游戏人,他们抄《大富翁》、抄《龙之力量》(《三国志群英传》)、抄(《勇者斗恶龙》,但只抄表现和操作)、抄(《同级生》)(H游戏)……很明显,较之国内的游戏人,他们明显多了一份理性和思考。
抄的时候,他们很少拘泥于对经典的LINK,更多的,是从市场的回报和技术条件上进行需求分析和制作规划。
抄亦有道,不是把心一横,把脸皮一老就能做得来的。
要抄游戏,首先要分析技术可行性,如果技术要求高(如《QUAKE》)、规则交互性强(如《星际争霸》)……抄之前,最好先掂量掂量。
最经典的抄法,就是抄那种经典、好做,同时国内又几乎无人所知的游戏。就象没有被抄之前的《大富翁》、《龙之力量》一样。
这就是我罗列这几部游戏的原因。


必玩游戏之三:风水回廊记
代替游戏:三国志战记、卡片召唤使、战斗国家、天下统一
必玩原因:全文抄照

传统的游戏世界观,是建立在古希腊“元素论”的基础上的,主要分土、水、火、风地大元素。
还有一种情况,即是建立在“龙与地下城”的基础上,按“元素”、“感知”、“邪恶”……等来划分世界。
日本游戏如此,美国游戏亦是如此。
如果能够建立一个有民族特色的世界观,使游戏的能力、道具、武器、法术……有律可循、有类可分……
与希腊世界观相比,中国的世界观更有实用价值。我国的中医、相术、建筑、风水等无不体现道家的精神。其中,最有代表意义的世界观分法竟有十个之多。即:
无极、太极、两仪、三才、四象、五行、六合、七星、八卦、九宫。
其中,以“五行”为世界观的游戏最多,事实上,国内的游戏中,至少一半的以“武侠”、“法术”为背影的游戏采用“五行”的体系。
五行的体系要比“元素”论复杂的多,因为其中有“相生”、“相克”、“相合”三种关系。玩家很难掌握,搞不好,还有攻击敌人,还会给对方加血的可能。
因此,国内的涉及“五行”的系统通常都比较牵强,很少听说有比较“好玩”的涉及五行的系统,如锻造、法术、采药……成为国内玩家津津乐道的玩点。

但却有一个例外,有一个以“五行”为体系的游戏,创造一个巨大的玩点。使玩家就是冲着“五行”去玩这个游戏。
这个游戏就是《风水回廊记》。
具有讽刺意味的是,它不是一个国产游戏(包括港、台在内)。

《风水回廊记》其根本系统为,建设若干个有五行属性的房间,然后从一个房间向另一个房间挖“通道”。这样,就会产生一个“气脉”开始挖通道的房间流向被另一个房间
如果其中一个房间与另一个房间是“相生”的关系,则会有2单位的气脉流向另一个的房间。
如果其中一个房间与另一个房间是“相合”的关系,则会有1单位的气脉流向另一个的房间。
如果其中一个房间与另一个房间是“相克”的关系,则不会有气脉流向另一个的房间。
这个设计的要点,在于他“架空”了五行的具体特征,例如“金”对应什么,“木”对应什么之类。而是直接以“五行”的气脉总量为游戏成果的计算单位。

曾见过一些国内的游戏,用“金”表示“征兵”,用“木”表示“内政”……实在不知道是什么道理。)
(一些涉及“五行”的法术,在设计“火”(火球)、“水”(冰冻)、“土”(岩落)时还比较有说服,但在涉及“木”时就非常牵强了,而“金”就几乎想不出什么法术名来了。

这一点与几乎所有的同背影游戏不同。但也正是其成功原因之所在,因为他足够简单,足够火爆,而且足够深入。

这种设计,与前面所说的“小抄”不能相同的对待。因为他的体系是一个完整的整体,我们无法把他的某一个创意从他的创意库中割出来。
所以,就全文照抄吧。就象“奥丁”抄《龙之力量》、“21世纪纵横”抄《文明》那样全文照抄吧。

同样值得全文照抄的,还有这样几个游戏:
三国志战记、战斗国家、天下统一

《三国志战记》:
游戏中的主要玩点在于“连锁”系统,连锁系统又是建立在“战术”系统上的。
游戏中的每个战法,需要一个“条件”,例如这个条件为“敌在自己前方,背向自己”。战法发动后,会造成敌人位置的改变以及方向,改变之后,如果已方另一员武将的当前战法所对应的条件成立,就会自动发动“战法”,这叫“连锁”。
举个例子。
假设武将夏候敦具备的战法是“威吓”,效果为“令敌人退后一步”。
另一个员武将李典具备的战斗是“突击”,条件为“敌人在已方前面”,效果为“穿越敌人”。
在战斗中,会发生这种情况:夏候敦使用“威吓”,然后令敌人后退了一步。正好退到李典前面……达成了“突击”的条件,于是形成了“连锁”……李典自动发动了“突击”,再次攻击,并穿越了这个敌人。

《战斗国家》:
游戏的主要玩点在于“感应系统”。
每支部队都有一个“射程”,如果敌人进入射程,则会自动发生战斗,去攻击敌人。
在实际的战斗中,当你排好阵型,等着敌人进入,就会发生一连串感应攻击。

《天下统一》:
这也许是最值得一抄的游戏了。
游戏最大的特征,是每个“国家”(其实就是省,如果按中国的面积标准来说,可能是县)都是“据点”来实现的。
据点之间,有道路,这是用来移动的条件。
移动到自己家领地内,就是行军或调动。
如果移动到了别人的领地,那就战争。如果那个据点里有敌人,就会发生战争。
……
战争的过程非常简单,但有如下棋般千变万化,怎样安排自己的兵力、布阵和采取何种攻守之势,成为胜利的关键。 
他是本人最喜欢的战略型SLG,较之同类型的大作,如《三国志》、《信长》系统来说,他……实在是……太……太……太小了。
但这个DOS下、16色、PC喇叭,人物能力参数简单到只有三个(军、政、忠),甚至连人物头像都没有的游戏,却是拥有相当一批拥护者。

这个游戏太小了,就像一个小品游戏,可能还没有《炸弹人》、《坦克战》大呢。但他却是一款SLG,而且是战略型SLG。
一个一个美工、一个企划、一个程序……三个人三个月内肯定可以做完的战略型SLG。
中国的游戏小组啊!这么值得一抄的东西,怎么会没有看见呢?

最后总结一下抄法:
《风水回廊记》抄法:
五行系统:全文照抄。
战斗系统:体系、操作不变,内容、名称可以变化。
故事系统:系统不变,但故事要全部换掉。

《三国志战记》抄法:
连锁系统:全文照抄。要彻底,最好连具体的名称、效果,甚至对应的格局都全部“拿来”。
内政、情节系统:可以适当变化,但最好不要影响到战斗。
故事系统:系统不变,但故事建议改为《楚汉战争》、《封神演义》……之类。

《战斗国家》抄法:
感应系统:系统全文照抄,具体的武器可适当调整。
经济系统:可以适当变化。
故事系统:可以换掉,建议改成《抗日战争》、《星际争霸》

《天下统一》抄法:
内政系统:基本照抄,但不要改变“线路”、“据点”之类的核心设计。
战斗系统:可以适当改变,例如改为类似于《英雄无敌》、《仙剑奇侠传》那样的战斗过程,需要注意的是一场战斗的时间不能过长。
故事系统:赶紧换掉,建议改为《三国演义》。


题外话:95潮:
1969年,当全世界都在为美国人登上月球欢呼的时候,我们却在大跳忠字舞……
1995年,当全世界都在为超任上无数的精品大作欢呼的时候,我们却在为《仙剑》感动。
……
在研读“大抄”“小抄”的时候,我们发现了一个普遍的现象,那就是这些游戏,大都是95年前后超任主机上的作品。
鲁多拉秘宝、前线任务、财宝猎人……
有多少中国游戏制作人知道这些当年造成了极大轰动,创造了独特游戏系统的游戏?
信息闭塞导致的愚昧与落后,并不会随着信息和电子时代的到来发生质变。
在台风、西风的追逐背景下,我们的游戏设计者错过了整整一个时代。
……
在我们做市场调查、做玩家统计时,我们始终忽视了最重要的一个玩家族群,那就是最早的那一批,从任天堂红白机到MD,再到超任、PS……乃至PS2的这群人……
有没有人弄清楚过这个问题:
为什么玩过《时空之旅》、《最终幻想6》这些游戏的玩家,会对《仙剑奇侠传》……甚至包括一切电脑游戏在内的RPG游戏不感兴趣?
有谁聆听过他们的声音?反思过中国游戏这种近乎偏执的设计道路?
为中国游戏人之见识,可发一叹!

posted @ 2005-07-23 21:48 蓝色雪焰 阅读(495) | 评论 (0)编辑 收藏
 
最近很忙!忙魔兽,忙毕业,忙着找房子,忙着工作~

呀,一下子什么事情都来了,忙的我都没时间来上Blogjava 了。
posted @ 2005-06-07 09:34 蓝色雪焰 阅读(294) | 评论 (2)编辑 收藏
 
这里列出的是一些有可能被混淆的缩写和单词,但这并不是一张完整而详细的列表。有许多在互联网上广为流传的缩写词汇跟《魔兽世界》没什么关系。

AC - Armor Class,盔甲级别或防御。
Add - 一只额外的怪物加入到现有的战斗中。
AOE - Area Effect Damage,区域作用魔法。指的是一个可以伤害一个区域中的一群怪物的魔法,就像魔兽争霸三中的暴风雪魔法。
AE - Area Effect,区域作用伤害
AFK - Away from Keyboard,离开键盘。这意味着玩家离开了他的电脑。
Aggro - 这个词意味着怪物已经疯狂并且你已经将它们“激活”到开始攻击你的程度。它们现在开始会试图接近并攻击你。“鱼人被我Aggro了”或“如果你继续接近,鱼人将被Aggro”。
Aggro Radius - 怪物周围的区域,进入它意味着怪物会“苏醒”并攻击你。
Agi - Agility,敏捷
Buff - 施放与怪物或玩家身上的有益魔法。牧师的心灵之火[Inner Fire]或撒满的嗜血术[Bloodlust]都是典型的Buff。
Carebear - 喜欢帮助其他玩家攻击怪物,而非在pvp中攻击其他玩家的玩家
Caster - 施法者,如法师。
Cheese - 利用游戏的不平衡之处牟利。
Critters - 面对攻击不会反击的怪物,如小鹿和小兔子。
DD - Direct Damage,直接伤害。用来形容一个魔法所造成的伤害是一击生效而非持续产生伤害作用。
DMG - Damage,伤害。
DOT - Damage over time,在一段时间内不断对目标造成伤害。
DPS - Damage per second,每秒伤害。
De-Buff - 对一个单位施放一个具有负面效果的魔法使之战斗力降低。一个典型的“De-buff”就是减速。
FH - Full Health,生命值全满。
FM - Full Mana,法力全满。
GM - Game Master,游戏管理员。一些被暴雪娱乐雇佣以帮助、协助玩家的人。
GS - Goldshire,闪金镇(地名)。
HP - Hit points/Health,伤害点数或生命值
Incoming (INC) - 意味着即将出现一次攻击。
Instancing - 在《魔兽世界》中有一类地下城,当你和你所在的队伍进入它的时候,你们会被载入到一个属于你们的这个地城的副本,只有你和你的队伍能够出现在这里,其他进入这一区域的队伍会自动进入他们自己的副本。
INT - Intelligence,智力。
KOS - Killed on Sight,仇人见面。如果一名兽人走向一名人类守位,那么这名守位会在看的见它的情况下试图杀死他(激怒)。
KS - Kill Steal, 偷杀,试图杀死另一个人正在对付的怪物。
LFG - Looking for a group,寻找队伍以加入。
LOL - Lots of Laugh/Laughing Out Loud,大笑。这个缩写意味着某些事的确十分好笑。但不幸的是,虽然这个词十分常用,但从很久以前开始它便容易引发一些不理智的行为(译者:毕竟有些人很容易被嘲笑激怒)。作为变通,你可以使用“呵呵呵呵”或“哈哈哈哈”来代替它,这两个词相对来说虽然不是最好的选择但更容易被接受。ROFL(笑到打滚)也是一个应该尽量避免使用的词。(译者shyso按:总之这一段内容是提行大家注意网络礼节,一些感情色彩过于强烈的词最好不要用于与不熟悉的人之间的交谈)
LOM - Low on Mana,法力不足。
LOS - Line of Sight,视线。
LOOT - 从被杀死的怪物或包箱里拿取财物。
LVL - Level,等级。
MMO - Massively Multiplayer Online,大型多人在线。
MMOG - Massively Multiplayer Online Game,大型多人在线游戏。
MMORPG - Massive Multiplayer Online Role Playing Game,大型多玩家在线角色扮演游戏。
MOB - 怪物。
Newbie - 菜鸟,有时用来形容新玩家的一个术语,但也用于指代那些技术不太好的玩家。
Newb - 新人的简称,见上。
N00b - 一种用来称呼新人的不礼貌的说法。请不要使用。
NPC - Non-Player-Controlled Character,非玩家控制的角色。这种角色通常被服务器控制。也就是一名“电脑”角色。
OOM - Out of Mana,法力耗尽。人们通常用这句话提醒其他队员他已经没有法力不能再施放法术了,特别是治疗魔法。
PC - Player controlled character,玩家控制的角色。
Pet - 被玩家控制的非玩家生物,如一只狼或一只地狱犬等等。
PK - Player Kill,玩家在未经另一个玩家同意的情况下攻击并试图杀死他。
Puller - 负责吸引怪物的玩家。
Pulling - 队伍中的一名玩家负责吸引一只或几只怪物,并将他们带到队伍所在地,以便队伍中的其他玩家可以攻击这些怪物。这种方法可以避免一次被大群的怪物攻击。
PVP - Player vs. Player,玩家对玩家。也就是一名玩家攻击另一名玩家。
Raid - 由一群玩家在某一地区进行的大规模作战被称为Raid。
Release - 点击“释放灵魂”按钮并在缚灵石再生。
Re-Spawn - 一只被杀死的怪物重新出生(被创建)。
Spawns - 在游戏世界中,怪物被创建时所位于的地点或出现的过程。
SPI - Spirit,灵魂。
STA - Stamina,耐力。
Stack - 堆放在同一个格子中的同类物品的数量。
STR - Strength,力量。
Tank - 能够承受很多伤害的近战角色,如一名战士。
Train - 把一群怪物引向另一名玩家。这种行为通常不受欢迎。
WF - Westfall,西部荒野(地名)。
WTB - Wanting to buy,想要购买。
WTS - Wanting to sell,想要出售。
posted @ 2005-04-23 15:08 蓝色雪焰 阅读(451) | 评论 (1)编辑 收藏
 
  一、攻击力(Attack Power,简称AP)的计算公式: 

  Warrior/Paladin:AP=角色等级*3+力量*2-20 

  Hunter/Rogue:AP=角色等级*2+力量+敏捷-20 

  Shaman:AP=角色等级*2+力量*2-20 

  Druid:AP=力量*2-20 

  Mage/Priest/Warlock:AP=力量-10 

  角色DPS=AP/14+武器DPS 

  单次攻击伤害(最小/最大)=攻击速度*AP/14+武器伤害(最小/最大)+技能附加伤害 

  二、防御力(Armor)的计算公式: 

  1敏捷(Agilty)=2Armor 

  Armor减少伤害%=0.75%*防御力/(攻击方等级+9) 

  例:防御力5000的角色, 被61级敌人攻击时,可以减少伤害0.75%*5000/(61+9)=53.6% 

  被51级敌人攻击时,可以减少伤害0.75%*5000/(51+9)=62.5% 

  伤害减小值的封顶值是75%,这时角色的防御力为100*(敌人等级+9),也就是说杀62级敌人时防御要在7100以上才能达到封顶效果。我不知道现在最高防御能达到多少,但在绝大多数情况下,杀同等级敌人是不可能达到封顶值的。 

  三、敏捷对物理攻击重击(crit)、闪避(Dodge)几率影响的计算公式: 

  在不计装备和天赋影响的情况下,重击和闪避几率受以下因素影响: 

  1.重击/闪避的基础值和变化值 

  角色的重击/闪避几率中,有一部分是不受敏捷影响的(这里称为基础值),另外一部分受敏捷影响(这里称为变化值)。 

  角色重击/闪避的计算公式为:基础值+变化值*角色的敏捷/敏捷标准值。 

  对一般的职业来说,当角色敏捷等于标准值的时候,重击/闪避几率为5%。也就是说基础值+变化值=5%。变化值越高表示敏捷对这个职业的影响越大。 

  敏捷标准值是与等级和职业相关的一个参数。1级时一般职业的标准值为20,盗贼和猎人为23。60级的时候战士敏捷标准值100,即敏捷100时重击/闪避几率为5%。 

  敏捷标准值似乎没有计算公式,是通过查表获得的,也可以自己推算,我在后面会附上算法,大家有兴趣可以自己计算。 

  各个职业的重击/闪避基础值和变化值: 

  Rogue:重击基础值0%,变化值10%;闪避基础值0%,变化值20% 

  Hunter:重击基础值0%,变化值5%;闪避基础值0%,变化值10% 

  Warrior:基础值0%,变化值5% 

  Paladin:基础值0.7%,变化值4.3% 

  Druid:基础值0.9%,变化值4.1% 

  Shaman:基础值1.7%,变化值3.3% 

  Warlock:基础值2%,变化值3% 

  Priest:基础值3%,变化值2% 

  Mage:基础值3.2%,变化值1.8% 

  2.角色的武器技能等级(熟练度)和防御技能等级 

  即属性栏里显示的attack和defense。其中attack影响角色重击几率,defense影响角色闪避几率。具体来说就是重击/闪避受一个(attack(或defense)*0.04-等级/5)%的修正。 

  大家知道角色每升一级attack/defense上限会增加5级,正好和等级/5抵消,也就是说如果把attack/defense修满,重击/闪避几率就不受任何惩罚,如果没有修满,则每差一个等级减少0.04%的重击/闪避几率.。反之如果通过装备把attack/defense加的超过上限就会有额外奖励。 

  例:一个60级战士,敏捷90,defense330级,那么他的闪避为0+5%*90/100+(330*0.04-60/5)%=5.7% 

  四、格挡几率(Block)和招架几率(Parry) 

  基本几率5%,受防御技能(defense)的影响,每级防御技能增加0.04%格挡/招架几率。或者说同闪避一样受(defense*0.04-等级/5)%的修正 

  附:角色敏捷标准值的算法 

  首先注意把与重击/闪避或者防御技能相关的装备都拿掉,最好不要加任何天赋,战士不能出于,以免引起混乱。 

  记录敏捷值A和闪避/重击几率D。将attack/defense对D值的修正还原,如你的角色武器技能差N级达到上限,就在D上加N*0.04%。 

  敏捷标准值=敏捷A/(1+(闪避或重击几率D值-5%)/闪避或重击变化值) 

  最后,可以更换一下敏捷装备,使敏捷发生变化,再根据上面给的公式检验一下计算结果是否正确。 

  重击几率可以在角色的基本技能“Attack”上查看,闪避几率可以在角色的基本技能“Dodge”上查看 
posted @ 2005-04-19 20:38 蓝色雪焰 阅读(446) | 评论 (0)编辑 收藏
 
为了《抗日--地雷战》的宣传工作曾经和一些媒体的朋友在一起交谈了一些关于国内游戏制作业的一些情况,许多朋友都要我谈一下西山居创作室成功的经验。我想来想去,和其他的国内游戏软件制作公司相比,我们并没有什么特别的东西。我们唯一有所不同的地方,也许就是拥有一批专职策划人员。

  由于国内的游戏制作业刚刚起步,既缺乏系统的专业理论指导,又缺乏实战经验,以至大多数玩家甚至一些游戏制作公司在对待策划这个问题上都明显存在不少误区,其中主要表现在两个方面:一是有高超的程序编写能力就能做出一个优秀的游戏,轻视甚至忽略策划工作的重要性,以至不少制作组的负责人甚至老板就是程序员出任的;二是能编故事就能做策划,做策划是一件轻松愉快的事情。
 
我无意在此标榜策划的必要性和重要性,不过是有幸做了《剑侠情缘》和《抗日--地雷战》两个游戏的策划,在这里向大家简单介绍一下一个策划人员在一个游戏的整个制作过程中所做的工作,以便让大家对策划的工作以及游戏的制作过程有一个比较清晰的了解。

  在一个游戏的制作过程中,策划的工作过程大致可以分为三个阶段,可简单地称之为前期工作、中期工作和后期工作。其中前期工作是策划工作的重点和难点,故描述略加详细。
 
         一、前期工作

  即制作组的其它部门还未开工时策划所做的工作,主要是进行市场调研、确定工作计划和撰写策划书三个方面:

  1、市场调研

        游戏软件是一种商品,并且是一种高投入的商品。国外一个作品的投入通常在百万美圆的数量级,并且不乏上千万数量级的大制作。国内(大陆)的一个象样的作品制作出来也要花掉好几十万,员工工资、设备折损、资源购买、广告宣传、载体和包装等等等等,《剑侠情缘》的所有开销超过了100万元,《抗日--地雷战》也隔100万不远。在这种前提下,市场调研的重要性不言而喻:如果你做出来的产品没有市场,那么这个产品就是你自杀的武器。
 
项目 《剑侠情缘》《抗日--地雷战》 开发成本 50万 40万 (工资、设备折旧、资源) 销售成本 35万 30万 (广告、海报、运输、首发式、税) 生产成本 (光盘、包装、说明书) 25万 20万 市场调研一是对现有作品的调研,二是对用户需求的调研。对现有作品的调研可避免新策划的作品有"跟风"之嫌,特别是国内的游戏产业,由于技术水准和国外相比还有比较大的差距,如果一味地跟着别人跑,没有什么新的突破,那么这种作品想获得玩家的认可的相当困难的。对用户需求的调研可保证作品面世后有足够的用户群,他们是制作组的衣食父母,如果不尊重他们,想想后果吧! 有一个很重要但又容易被忽视的问题,这就是游戏产品的时效性。
 
一个游戏作品的制作周期比较长,短则一年半载,长则一年两年。但一个游戏的销售期却非常短,特别是在国内,根据我的经验,国内一个游戏作品的销售时间通常只有两个月时间,很难突破三个月。也就是说,在这两个多月的时间里你就可以得知你的人力、时间和资金的投入是否得到了回报。 所以,在开发一个新产品进行市场调研时一定要考虑一个提前量。首先确定自己的产品上市时间,然后根据调查研究的结果判断自己的产品上市时是否会受到其它作品的冲击,用户群是否会因为技术的更新、新作品的上市而转移,等等。

 2、工作计划 
 
       根据上面的说明,一个游戏产品的成本主要集中在开发成本上。开发成本基本上是和时间成正比关系的,所以在进行市场调研后制定一个切实可行又能最大限度降低成本的工作计划就显得致关重要。由于制作组的其它部门尚未开工,整个游戏的架构都在策划的脑子里,所以这个工作主要是策划来完成的,当然,策划在制定工作计划的同时,必须从公司的实际情况出发,不能任意挥洒。
 
工作计划中的主要内容是人员配备和工作日程表。
 
根据游戏容量的大小确定参与制作的人员结构,既要在预计的时间内完成任务,又要在整个制作过程中没有人员闲置,安排是否得当取决于策划的经验和预测。一个优秀的策划和一个蹩脚的策划在做同样的产品时时间可能相差40%甚至更多。由此可见工作计划的安排对制作成本的影响。
 
在不同的游戏种类中,制作组的各部门人员比例是不一样的。如RPG游戏,美工工作量较大,文字工作量较大,那么就应该在美术方面多加人手,可以专门安排一个人做文字方面的工作;战略类游戏美术工作量相对较小,但数据量大,结构复杂,调整困难,靠策划一个人难以胜任,那么就应该安排人员协助策划做数据设定方面的工作。
 
由于在游戏制作的后期就要开始做宣传、销售方面的工作,所以工作日日程表一定要比较准确,误差不能太大。日程安排过松,会导致工作效率降低,从而增加开发成本;日程安排过紧,在预定的时间内不能完成制作,将使宣传和销售处于非常不利的境地,直接影响回报率。
 
一份具体的工作计划中至少应包括以下几个部分: 游戏的主要指标; 各部门工作量预算; 制作时间预算; 资金预算; 进度表。

  3、策划书

        策划书相当于工程师的蓝图,实际上就是策划将大脑中的游戏雏形用文字表达出来,以书面形式转告制作组的其它部门,作为其它部门在制作过程中的指导书。
 
策划书不要求很详细,基本上不考虑细节方面的东西,但要求它很稳定,一旦生成不得随意修改,所以撰写策划书时一定要和其它部门沟通,以确保策划案切实可行。特别是关于技术方面的,不能天马行空,独往独来,如果到时候技术方面不能达到策划书中的要求,后果很可能是整个制作组的人员在某一段时间内的工作都白干了。
 
不同的游戏种类的策划书的撰写会有一些差异,但下列项目是每一份策划书中都必须明确规定的:
 1、类型(结构);
 2、解析度;
 3、操作系统;
 4、故事背景;
 5、容量(关数);
 6、游戏进程;
 关于游戏的类型,很难有一个明确的定义。随着技术的发展,游戏的容量越来越大,内涵越来越多,以至某些游戏已经很难用某一种类型来定义它。如有些战略游戏,却包含有许多角色扮演的成分;许多角色扮演类游戏,却又包含有养成的成分,等等。

国内的游戏业起步较晚,基本上没有系统的研究,关于游戏种类的划分,很大程度上是一些人参照台湾前些年的分类方法,而台湾的分类方法,又大多是照搬国外的,现在看来是有些老道,不太适合时宜了。如果国内的游戏制作公司能够在一起相互探讨一下,对电脑游戏作一些系统的研究,那我们前进的步伐一定会更快一些。 在这种情况下,要给一个尚未诞生的游戏确定一种现成的类型是比较困难的。通常我们可以提出一个大致方案,然后在这个方案之上构思新的创意,最后形成一种新的模式,这种模式和现有的作品相比应该有所突破。所谓的游戏类型,可以看作是诸多模式的组合。
 
建立一种有突破的游戏模式才是策划工作的精华所在。这是一种没有目的性的工作,唯一的限制来自技术方面。游戏的模式对游戏的可玩性起决定性作用,一个作品是否成功,很大程度上取决于游戏模式。
 
游戏模式相当于建筑工程师的蓝图,有了蓝图,在工人们开工之前,我们已经能够看出未来的大厦的轮廓了,或挺拔壮丽,或小巧玲珑,最终的结果一定不会相差很远。游戏也是如此。
 
建立一种新的模式才是策划工作的主体,也是策划工作的重点和难点。至于编一段故事,想几个小点子,谁都或多或少会一点。 以《抗日--地雷战》为例,初步决定其类型为回合制战略游戏。回合制战略游戏中,敌我双方轮流行动,各行动一次为一个回合,象人们平常下棋一样,所以这种模式又俗称"战棋"游戏。这还是一个很笼统的东西。将其具体化,一是将传统战棋游戏中的小范围的冷兵器攻击变换为大范围的热兵器攻击,二是将虚无缥缈的"魔法"变换为实实在在的"战术",如滚木,擂石,威慑,骚扰,破坏……还有敌方的施毒,空袭等。
 
那么,《抗日--地雷战》的突破在哪里呢?在地雷上面。在休息关里,玩家的主要工作就是购买材料,制作性能各异的地雷;在战斗关中,和地雷相关的操作就有埋设、起出、定时、遥控、转交等。 解析度包括游戏准备采用的分辨率和颜色种类,如320×200×256色,640×480×16色,800×600×256色等等。通常,在同一个作品中的解析度是一定的,这样既可以保证作品的美术风格大致近似,又可以减轻程序的负担。但也可能有例外,如作品的主体采用较低的解析度,以得到技术上的保证和减少美术方面的工作量,而在片头和片尾中采用较高的解析度,以获得较好的视觉效果。
 
除开分辨率和颜色外,有时候还需进行调色板方面的设定。在RPG游戏中,人们比较注重画面的精美,因此调色板不宜太过拘泥,以免使美工约束过多,造成画面的单调;在战略类游戏中,人们注重的是敌我双方的战略战术,对画面不会象RPG游戏那么在意,因此有可能确定一个固定的调色板,从而使游戏的容量大幅度减少——游戏所需的光碟实际上就是给美术师和音乐师准备的。更重要的一点是,当许多人在做同一类工作时,比如两个人同时画人物造型,三个人同时画人物头像时,如果不将调色板设定好,那么程序在同时显示这些内容时就会出问题。不过,随着软硬件技术的发展,一些作品已经开始使用16M色以上的真彩色,调色板的意义已经越来越淡薄了。
 
在颜色种类相同的前提下,当分辨率从320×200提高到640×480时,美术方面的工作量将大幅度增加,320×200状态下在屏幕上一个点的位置在640×480状态下要用4个点来填充。不过,在高分辨率状态下人物和物体的尺寸会相应减小,所以美术的工作量也不是4倍的增加,平均起来估计增加2倍左右。
 
国内的机器分布五花八门,有些国家事业单位甚至还在使用286、1M内存的机器,用金山公司91年的WPS(大多还是盗版)打字。不过游戏公司大可不必为此担心,因为用以玩游戏的电脑大多放在家里,机器的配置隔最新潮流最多半年的距离。
 
但是,游戏策划人员并不能因此忽视机器配置的分布状况,作为一种商品,一个游戏作品应该最大限度地获得用户群,而不是为了省事只关注主要的用户群。特别是在这个286、386、486、586并存的年代里,要为一个作品的用户群准确定位并不是一件很容易的事情。我们曾经认为作品对系统的要求应该尽可能的低,以满足那些已经成为昨日黄花的机器。后来发现这样做的商业效果并不明显,因为真正的玩家们都拥有配置相当高的机器。对机器配置的要求并不只是反映在CPU上,如《剑侠情缘》,对CPU的要求是486DX33,但要求有4M的EMS,这就需要机器装配有8M内存,由于许多机器只有4M内存而使该作品失去了一部分用户。
 
故事背景对美术设计人员是至关重要的,故事发生的年代决定人物的服饰、建筑的风格等,这是游戏中最惹人注目的东西,并决定玩家对作品的第一印象。
 
也许有人认为,游戏,不过玩玩而已,大可不必吹毛求疵。如果玩家们都这么认为,那游戏公司的日子就好过多了,因为对游戏中任何一个细节的精雕细琢都意味着工作量的猛增,直接后果就是成本的增加。如果是游戏公司的制作人员这么认为,那这个公司离倒闭的日子也不远了,试想一下,哪一个精品不是精心雕琢出来的?哪一个粗劣之作又得到了用户的认可? 作为一个专职策划,还有一份很重要的工作就是进行作品的质量管理,哪怕是一个NPC的衣服,一个房间里的一把椅子,如果它不合适,就应该重新来过,而不能蒙哄过关。 为了避免这类事件发生,最好的方法是防患于未然,在策划书做出明确的指示。
 
游戏的容量决定游戏制作中人力和物力的投入,事实上就决定了游戏的开发成本。所以在策划书中对游戏的容量必须有一个相对准确的确定,和最后的产品误差不应该超过10%。游戏的容量决定工作计划的撰写,二者要紧密配合。
 
中途增加游戏内容乃游戏制作之大忌,一方面严重影响原来的制作计划和进度(除非原来的制作计划本身就是一塌糊涂),另一方面破坏美术、程序设计人员对作品的整体思路,使作品的整体协调性受到影响。
 
游戏进程之所以要预先在策划书中确定下来,是为了让所有制作人员心中有底,并在工作中作一个整体规划,维护作品中某一方面在整个作品中的协调性和完整性。比如,美术设计人员在描绘地图时,就会根据剧情作一个整体的分析,然后尽可能完美地实现它。如《地雷战》的地图系统,开始的地形以山峦为主,然后是丘陵地带,逐渐向平原发展,这些在策划书中都有明确的指示。

  二、中期工作

  中期工作就是游戏主体的制作。在此期间策划的主要工作也可分为三个部分。

  1、游戏模式的细化(结构设定)
      
        在作前期的准备工作时,游戏的大致框架就已经出来了,并以策划书的形式提交给制作组的其它部门。不过,这个框架还非常的粗糙,美术设计人员、程序设计人员虽然知道自己将要做些什么,但具体行动却困难重重,常有无从下手的感觉。相比较而言,音乐设计师的弹性要大得多,只要知道了大致的剧情,音乐师就可以任意挥洒去了。 所以在制作开始后策划最先要做的事情就是将游戏模式细化,称之为"结构设定"似乎更专业化一点。结构设定的重点是建立各种子模型并确定各子模型之间的逻辑关系。一旦所有的逻辑关系一确定,程序员就可以用具体的程序行来描述各个组成部分以及整个游戏的数学模型了。 结构设定是一件很繁杂的工作,稍有纰漏就可能导致整个框架的崩溃。以《地雷战》为例,兵种、人物、战术、地雷、地形、物品、攻击范围、杀伤范围等即为各种子模型,下面是一个体现各子模型之间相互关系的简单示意图。显然这并不能代表整个模型。
 
其中某些关联是多重的,如战术本来只与兵种有关,某一特定兵种的战术也是一定的。但是,如果某队员经过了转职的过程,那么该队员(人物)也就和战术建立了一种关联,因为我们在策划案中确定了一项游戏规则:队员转职后将保留原有的战术。同样的,队员的攻击范围和杀伤范围最初也只和兵种有关,但队员升级后攻击范围和杀伤范围也将增加,这样队员(人物)和几种范围有就建立了关联。 人物, 兵种, 地雷, 战术, 地形, 物品, 攻击范围, 杀伤范围; 某些子模型之间的关联是通过数字来体现的。如地雷和物品中材料的关联就是地雷的配方,即制作某一种地雷需要的材料的品种及其数量,这里材料的数量就是一组数字。物品中的武器装备改变装备部队的攻击力和防御力,攻击力和防御力的增加量也是用数字实现的。还有地雷、战术和攻击物品对敌方的杀伤点数,不同兵种对同一敌方部队的杀伤点数,不同等级的同样兵种对同一敌方部队的杀伤点数,等等,也需要用数字来确定。 这些数字决定游戏的难度、平衡性和合理性,其重要性不言而喻。对这些数字的确定称之为"数据设定",以和"结构设定"加以区分。当然,"结构设定"和"数据设定"之间是有很大一个交集的,许多时候二者并不能严格区分开来。 进行结构设定的时候,需要的数字都是一个估计的数字,这个数字不过是让程序员有事情做而已,真正的数据设定是在作品的测试阶段进行的。

  2、各类任务单的拟定
 
        这主要是面对美术设计师和音乐设计师的。将游戏中所有需要用美术来表现的组成部分提炼出来,以任务单的形式分发给美术设计人员,让美术设计人员以各种图象、图形的形式构成游戏需要的组件。 美术方面的工作大致包括人物(头像和形体)、场景(地图和背景)、战斗(动作和效果)和动画(局部动画和全屏动画)等几个大的组成部分。 人物部分包括头像和形体两个组成部分。头像表现人物的容貌,能够体现人物的气质和性格,因此对于有个性的人物一定要给美工一个说明。形体部分有一个很重要的参数就是动作数,如上下左右运动,拾取物品,或某些NPC的固定动作,等。动作数严重影响工作量,所以在拟定任务单时要给出一个说明。 场景的重头是地图系统,不论在什么类型的游戏中,地图系统都是一个很重要的组成部分,它决定玩家在游戏中的活动区域。场景的另一个内涵是各种相对固定的背景,如战斗背景,武器店、杂货店的背景等。

战斗系统在美术方面的体现也是两个部分,一个是战斗时人物的动作,一个是战斗产生的效果。 无论什么游戏中,动画总是占有很重要的地位。随着储存技术的发展,一些游戏的动画越做越大,很大程度上已经成了一个游戏公司技术力量的体现了。 游戏中的动画大致有三类,可分别称之为程序动画、NPC动画和全屏动画。 程序动画本身不由美工完成,而是采用程序的手段来实现,主要用于人物的移动,以及必然事件的触发。如《剑侠情缘》一开始,独孤剑的师傅回来时受了重伤,独孤剑去见师傅,一进门就产生一段独孤剑和师弟走到师傅床前的动画,这就是由程序实现的。 NPC动画是指美工将NPC的形体、动作作进行修改、添加后在某一固定场景(通常就是地图)中产生的动画,通常用于交代某段必然的通过普通方式又不容易实现的剧情,如《剑侠情缘》中独孤剑在临城里施展轻功飞身上青楼,张如梦和南宫彩虹在剑门关拜天地,《地雷战》中"抢夺粮食"一关里,飞虎队跃上火车让火车停下来,都是采用的NPC动画。 全屏动画不受场景的限制,能够很好地烘托环境的气氛,细腻地表达剧情,但工作量大,对创意方面的要求高,所有游戏中一般只在比较关键的地方才使用。全屏动画用得最多的地方是片头和片尾。 在安排动画的创作时,应根据具体情况决定动画的种类,既要保证工作量合适,又要能够比较完美地体现需要表达的故事情节。

  3、剧情的细化与装配程序的撰写
 
       所谓剧情的细化就是将整个故事分解为极小的事件单元,然后通过具体的游戏行为(玩家的操作和程序的控制)来实现它们。 事件的触发与结束构成游戏的进程,对事件的描述构成游戏的装配程序。装配程序实际上就是策划给程序员写的程序流程图,笔者发现用BASIC来写装配程序最合适不过了。 装配程序算是策划对自己工作的一个小结,装配程序一旦完成并得到程序员的实施(用汇编、c、c++或是其它什么东西产生一个exe文件)后,游戏的主体制作就基本完工,继而进入测试阶段。

  三、后期工作

  1、作品的测试、调整与改进 
 
       如果把策划的工作分一个轻重,那么工作的重点只有两个:一个就是结构设定,构成整个游戏系统的模型;一个就是数据设定,确定整个游戏系统的难度,各部队之间的平衡性,玩家和电脑之间的公平性。

  2、宣传

        宣传工作是游戏作品进入市场之前重要的一环,可以用一个简单的公式来表达一个作品的商业效果:销量=质量+宣传。 策划是对游戏作品最了解的人,要让玩家真正了解作品的精髓,许多时候还非得策划来现身说法不可。游戏作品的宣传工作大致分为三个方面,即广告、新闻和首发式。 广告的费用在制作成本中占有很大的比例,《剑侠情缘》和《地雷战》的广告费用都是30万左右。虽然这两个作品的广告都是专人设计和制作的,但其中的文字部分基本上都是游戏策划人员提供的。 首发式可以产生一定的轰动效应,并制造出新闻来。《剑侠情缘》在北京、上海、广州、武汉、成都、福州六大城市同时举行首发式,其轰动效应就比较明显,一个多月内就销售了2万多套,工厂赶制了三批,最后仍然造成了供货中断。尽管如此,《剑侠情缘》仍是迄今为止销量最多的国产游戏软件(大陆地区)。《抗日--地雷战》在南京大屠杀纪念馆举行首发式,当时就吸引了南京、上海的数十家新闻媒体的记者到会,并有不少南京市党政部门的领导也到场,当天晚上当地各电视台就在新闻栏目里播出了有关的报道,次日各大报刊也刊登了有关的消息。 在游戏制作期间,就经常有一些媒体来对制作组进行采访,以新闻或专访的形式作一些报道,让玩家们随时了解作品的制作情况。作品上市后新闻报道会达到一个高潮,除开各专业报刊以外,许多公众媒体也会表达他们热烈的关注。《抗日--地雷战》上市后,《人民日报》、《光明日报》、《解放日报》、《羊城晚报》等数十家大报都作了大篇幅的报道。由于这些大报的宣传,《抗日--地雷战》在国内引起了很大的反响。《珠江晚报》得知消息后派了一位副主任来公司采访,我在接待这位副主编心中很是过意不去,因为我们忽视了在珠海本地的宣传工作。有些记者多次通过电话采访,有些则专程来公司现场采访,由此也可以看出社会各界对国内电脑游戏业的支持。 在游戏制作在最后阶段,我基本上要花一半的时间来应付各方面的宣传工作,虽然金山公司有专门的宣传和营销部门。

  3、发售及售后服务 
 
        由于金山公司的产品主要由北京金山进行市场营销活动,并有连邦等大型连锁销售组织作代理,所以制作人员基本上不直接参与销售活动,最多是给想先睹为快的BBS站站友提前几天发几套出去而已。 但是,游戏作品的售后服务基本上都是由制作人员来完成的。

posted @ 2005-04-19 20:17 蓝色雪焰 阅读(286) | 评论 (0)编辑 收藏
 
1.什么是字节码?它对Java的Internet程序设计为何十分重要?
字节码是一种高度优化的指令集,由Java运行时解释器执行,可以帮助Java获得可移植性和安全性。

2.面向对象程序设计的3个重要原则是什么?
封装、多态性和继承。

3.什么是变量?
变量是一种命名的内存地址,变量的内容可以在程序运行时修改。

4.什么样的变量名无效?
变量名只可以是 字母(A/a)、下划线(_)及美圆符号($)开头,数字做开头的变量无效。

5.如何创建单行注释与多行注释?
单行注释以“//开始”,在行尾结束。多行注释以“/*”开始,以“*/”结束。

6.语句在一行中的放置位置有限制吗?
没有限制。Java是一种形式自由的语言。

7.Java为什么要严格指定其简单类型的取值范围和行为?
Java严格指定其简单类型的取值范围和行为是为了确保跨平台的可移植性。

8.Java的字符类型是什么?它与其他大多数程序设计语言的字符类型的不同之处是什么?
Java的字符类型是char。Java字符采用Unicode编码格式而不是ASCII格式,后者是大多数其他计算机语言采用的格式。

9.因为任何非0值都为true,所以boolean值可以取任何你想要的值,对吗?
不对,boolean值只能是true或者false。

10.解释自增运算符的前缀形式与后缀形式的不同?
当自增运算符在其操作数之前,Java将会先执行对应的操作,然后获得操作数的值用语表达式的其他部分。如果运算符位于操作数之后,Java 将会在自增之前获得操作数的值。

11.在表达式中,byte和short升级为什么类型?
在表达式中,byte和short升级为 int 类型。

12.总述什么时候需要强制转换?
当在不兼容的类型之间转换时,或者窄域转换发生时,需要使用强制转换。
posted @ 2005-04-09 20:05 蓝色雪焰 阅读(562) | 评论 (1)编辑 收藏
 
漂亮的游戏开始画面

介绍一个游戏开始的画面。
先建两个类 MenuScreen.java  SimpleCustomMenuWithBGFont.java用于测试


首先说下SimpleCustomMenuWithBGFont.java


import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
//import java.util.*;


public class SimpleCustomMenuWithBGFont extends MIDlet implements CommandListener {


  Display display;
  Display pauseDisplay;
  boolean isSplash = true;
  MenuScreen menuScreen;


  public SimpleCustomMenuWithBGFont() {
    MenuScreen menuScreen = new MenuScreen();
    display = Display.getDisplay(this);
    display.setCurrent(menuScreen);
  }


  protected void startApp() throws MIDletStateChangeException   {
  }


  protected void pauseApp() {  }
  protected void destroyApp (boolean flag) throws MIDletStateChangeException {}


  public void commandAction (Command cmd, Displayable dis) {


  }
}
这个类很简单,就是作为了测试使用的。


主要来介绍一下MenuScreen.java



import javax.microedition.lcdui.*;


public class MenuScreen extends Canvas implements Runnable {


  // 设置字体
  static final Font lowFont  = Font.getFont (Font.FACE_MONOSPACE, Font.STYLE_PLAIN, Font.SIZE_SMALL);
  static final Font highFont = Font.getFont (Font.FACE_MONOSPACE, Font.STYLE_BOLD, Font.SIZE_MEDIUM);
  static final int NEW_GAME = 0;
    static final int HIGH_SCORE = 1;
    static final int SETTINGS = 2;
    static final int HELP = 3;
    static final int ABOUT = 4;
    static final int MENU_ITEM_COUNT = 5;


  // 设置颜色
  static final int lowColor  = 0x0000FF00;    // Not Highlighted
  static final int highColor = 0x000000FF;    // Highlighted
  static final int highBGColor = 0x00CCCCCC;  // Highlighted Background



  static int width;   //屏幕宽
  static int height;  // 屏幕高


  static int startHeight;  // 菜单开始的高度


  static final int spacing = highFont.getHeight()/2;  // 菜单项间的距离
  // 菜单项
  static final String[] mainMenu = {"New Game","High Score","Settings","Help","About"};
  // 当前高亮显示的索引号
  static int menuIdx;
  Thread thread;
  // 背景图
  Image bgImage;
  //构造
  public MenuScreen() {
    width = getWidth();
    height = getHeight();
    // 计算菜单开始的高度
    startHeight = (highFont.getHeight() * mainMenu.length) + ((mainMenu.length-1) * spacing);
    startHeight = (height - startHeight) / 2;
    // 默认所选为菜单的第一项
    menuIdx = 0;
    try {
      bgImage = Image.createImage("/res/bg.png");
    } catch (Exception e) {}


    thread = new Thread(this);
    thread.start();
  }
  public void run() {
    while(true) {
      repaint();
    }
  }
public void paint(Graphics g) {
//清屏
    g.setColor(0x00000000);
    g.fillRect(0,0,width,height);
// 背景
    g.drawImage(bgImage,(width - bgImage.getWidth()) / 2, (height - bgImage.getHeight())/2,20);
    for (int i=0; i<mainMenu.length; i++) {
      if (i==menuIdx) {
       //g.setColor(highBGColor);
       //g.fillRect(0,startHeight + (i*highFont.getHeight()) + spacing,width,highFont.getHeight());
        g.setFont(highFont);
        g.setColor(highColor);
        g.drawString(mainMenu,
                     (width - highFont.stringWidth(mainMenu)) / 2,
                      startHeight + (i*highFont.getHeight()) + spacing,
                      20
                     );



      } else {
        g.setFont(lowFont);
        g.setColor(lowColor);
        g.drawString(mainMenu,
                     (width - lowFont.stringWidth(mainMenu)   ) / 2,
                     startHeight + (i*highFont.getHeight()) + spacing,
                     20
                    );
      }
    }
  }



  protected void keyPressed (int code) {
    if (getGameAction(code) == Canvas.UP && menuIdx - 1 >= 0) {
      menuIdx--;
    } else if (getGameAction(code) == Canvas.DOWN && menuIdx + 1 < mainMenu.length) {
      menuIdx++;
    }else if (getGameAction(code) == Canvas.FIRE)
    switch(menuIdx) {
         case NEW_GAME:   System.out.println("Start New Game"); break;
         case HIGH_SCORE: System.out.println("Display High Score"); break;
         case SETTINGS:   System.out.println("Display Settings"); break;
         case HELP:       System.out.println("Display Help"); break;
         case ABOUT:      System.out.println("Display About Info."); break;
       }


  }
}


顺便这里介绍一下J2ME中的字体:
字体的属性由:字体类型,风格和字体大小构成,请注意颜色并不是字体的属性。字体
类型由Form类中的静态常量进行定义,可能的取值:
FACE_MONOSPACE: 等宽字体
FACE_PROPORTIONAL: 比例字体,非常宽
FACE_SYSTEM: 系统字体


字体风格由Font 类中的静态常量进行定义,字体风格是可以多选的,可能的取值为:
STYLE_BOLD : 加粗
STYLE_ITALIC :斜体
STYLE_PLAIN :常规
STYLE_UNDERLINED:带下划线字体


字体由Font 类中的静态常量进行定义,可能的取值为:
SIZE_LARGE: 大号字体
SIZE_MEDIUM: 中号字体
SIZE_SMALL: 小号字体


创建字体时并不是通过Font 类的构造方法来创建,而是利用Font类的静态方法
static Font getFont(int face,int style,int size)来创建字体。或者利用
static font getDefauleFont()来创建系统默认字体。
在MIDP v2.0中,为Font类增加了新的一个方法用于创建字体,即 static Font
getFont(int fontSpecifier),参数fontSpecifier的取值范围被定义为Font类
的静态常量,目前只能由俩种取值:
FONT_STATIC_TEXT:静态文本字体,定义了屏幕显示时设备采用的字体
FONT_INPUT_TEXT:输入文体,定义了在用户输入时设备采用的字体
在显示文字时,如果文字过长而超过当前屏幕的宽度,那么多余的部分将无法显示,
所以为了有效地显示文字可以用检测字符或者字符串的宽度的方法,由程序判断每
行输出的字符数,来达到更好的显示效果.

posted @ 2005-04-08 19:01 蓝色雪焰 阅读(513) | 评论 (0)编辑 收藏
 

J2ME游戏中的图片处理

 

         图片资源乃是游戏的外衣,直接影响一个游戏是否看上去很美。在J2ME游戏开发中,由于受到容量和内存的两重限制,图片使用受到极大的限制。在这种环境中,处理好图片的使用问题就显得更加重要。
 本文从容量和内存两个方面谈谈J2ME游戏图片处理的基本方法。

一 减少图片容量

方法1:将多张png图片集成到一张图片上。
 这是最基本也是最有效的减少png图片容量的办法了。比如你有10张png图片,每张10×15,现在你可以把它集成到一张100×15或者10×150或者X×X的图片上去。这张大png图片的容量比10张png图片的总容量小很多。这是因为省去了9张图片的文件头,文件结束数据块等等,而且合并了调色板(如果10张图片的调色板恰好相同,则省去了9张图片的调色板所占的容量!这是个不小的数字)

方法2:减少图片的颜色数
 减少颜色也算是一个方法?我想说的是什么时候减,谁去减。如果游戏完成后发现容量超出,此时在用优化工具减少颜色,虽然能降低图片容量,但图片效果可能就不让你满意了。所以,在美工作图时就要确定使用的颜色数,手机游戏使用的是象素图,即一个象素一个象素点出来的图像,所以预先规定调色板颜色数量是可以办到的。不过,最终使用优化工具也是有用的,有时候相差一两种颜色,但效果差别并不大,容量却可以变小一些。呵呵,减少颜色确实可以算是一种方法。

方法3:尽可能使用旋转和翻转
 这点不用解释了 

方法4:使用换调色板技术和自定义图片格式
 如果前两种方法还不能满足你对容量的要求,而你的游戏中恰好使用了很多仅颜色不同的怪物,那么可以试试换调色板技术。J2ME规范中规定手机至少可以支持png格式的图片,每张png都带有调色板数据,如果两张图片除了颜色不同而其他(包括颜色数)完全相同,则只要保存一张图片和其他图片的调色板,这相对于保存多张图片来说节省了不少容量。不过这个方法挺麻烦,你得了解png文件格式,然后做一个工具提取出调色板数据和调色板数据块在png文件中的偏移。内存中保存图像仍使用Image,如果要换调色板,则将png文件读入到一个字节数组中,根据调色板数据块在png中的偏移,用新的调色板代替原来的调色板数据,然后用这个字节数组创建出换色后的Image。也许你觉得保存一张png和n份调色板数据的方法有点浪费。至少多保存了1份调色板数据啊!如果直接将图像数据提取出来,在加上n份调色板数据,岂不是更节省容量。但是使用上面的方法,我们还可以用drawImage渲染。如果这样自定义了图片格式,那只有自己写个渲染函数了,这倒还可以,只不过put pixel的速度在某些机器上非常慢。或者自己构造png格式数据,再使用Image.如果你真得决定这么做,我还有个小建议,不要对图像数据进行压缩,zip压缩大多数时候比你写得压缩算法好(参见J2ME Game开发笔记-压缩还是不压缩)。论坛上有位朋友提过使用bmp格式代替png格式,jar中图片容量更小,也是一个道理。

二 减少图片所占内存

1 图片所占内存的计算
 png图片所占用的内存并不对应于图片容量。图片占用的内存的计算为:width*height*bpp。bpp即为系统内置的颜色位数。以Nokia 6600为例,象素格式为565共16位。所以一张100*100的图片占用100*100*(16/8)=20000字节,约为19.5k的内存。象素格式是固定的无法改变,所以只有减少图片的宽和高才能降低其消耗的内存。

2 减少Image对象数量可节约大量内存
 减少Image对象数量不等于减少图片数量。我的意思是说,将一张集成图保存在一个Image对象中,通过setClip的方法从这个Iamge对象中选取你需要的图像渲染。不过这个方法牺牲了一点速度,每帧都从集成图Image中减切图像的速度比无减切的渲染慢。但对于数目不多的渲染,比如精灵,使用这个方法没问题。这个方法还有一个问题就是不能释放集成图中不需要的图片,这就要看你集成的程度了。从图片容量和内存管理的角度综合考虑,我一般使用二次集成的方法。比如有n个精灵,先将各精灵所有的图片集成到一张集成图中,得到n张集成图,然后将这n张集成图再次集成到一张更大的集成图中。这样在jar中只存在一张集成图。使用时,先将大集成图分割载入到n个Image对象中即可。这样各个精灵的图片可以单独管理了。

3 使用旋转和翻转
 只保存一个原始的Image,需要时再旋转或翻转


 

posted @ 2005-04-08 18:58 蓝色雪焰 阅读(375) | 评论 (0)编辑 收藏
 
游戏策划——略懂程序,美术,音话剧,戏剧编导,心理学……

游戏项目-策划专员
任职要求:
1. 大专学历以上。
2. 熟悉网络社区生活,熟悉网络游戏,并善于总结网络用户或玩家的行为规律。
3. 具备良好的创造能力
4. 具有一定程序设计概念者
5. 具备很强的文字组织能力;
6. 有技术背景或有网游设计经验者优先。


游戏项目-高级策划专员
任职要求:
1. 具有逻辑学,统计学以及经济理论知识基础;
2. 具有大量游戏经验,具备良好的创造能力;
3. 具有一定程序设计概念者;
4. 具有可量化、体系化游戏配平数据调谐能力者;
5. 熟悉中国文化、对中国历史有深入了解,对中国神话体系等有全面了解;
    或者熟悉欧美历史,对魔幻体系以及基本架空世界观有全面了解。
6. 很强的文字组织能力。
posted @ 2005-04-01 22:04 蓝色雪焰 阅读(827) | 评论 (2)编辑 收藏
 
国内手机无线游戏市场前景分析(1)

http://www.51let.net/Article_Show.asp?ArticleID=511

国内手机无线游戏市场前景分析(2)

http://www.51let.net/Article_Show.asp?ArticleID=513

=======================================
国内一些优秀的手机软件公司 

清华深讯(http://www.tssx.com.cn) 
空中信使(http://www.kongzhong.com) 
新热力科技(http://www.yunfei.com/) 
掌星科技(http://www.joymobile.com) 
数位红软件应用(http://www.worldup.com) 
九天互动数据(http://www.bjsky9.com/) 
至通信息(http://www.gm365.com) 
阳光加信(http://www.ray5198.com/) 
联梦娱乐(http://www.oofcybw.zj001.net/) 
优一百(http://www.u100.cn) 
Magus soft(http://www.magus-soft.com/) 
逆火多媒体工作室(http://www.nmprod.com/) 
掌坤科技(http://www.msoft.com.cn/mobile_game.htm) 
掌中仙境(http://www.palmsp.com/) 
中国java网(http://www.cnjm.net/) 
downloadgame(http://www.downgame.com/
posted @ 2005-03-26 14:37 蓝色雪焰 阅读(416) | 评论 (0)编辑 收藏
 
想要提高自己的策划水平,我觉得最重要的还是玩其他人的游戏,并不要求有多长时间,但是玩了之后一定要写自己的心得,比如这个游戏设计的优点、缺点;有那些方面的优点、缺点,注意在写的时候不要太笼统,能有多细就写的多细,这样,写多了,自己的水平也得到了一定的提高。再定期的回去看看以前自己写的文档,有时会发现自己的意识有了一定的进步,这个时候不要删除原来的文档,而是在边上标出现在自己的想法,并标明日期。

另外就是多看看一些其他人的心得,而且心得这个东西是随着自己水平的提高,感受也在不断提高的。所以暂时看到一篇你不以为然的文章不要先忙着否定,也写下自己为什么不认同他的原因,如果有可能最好是能和其他人讨论一下,说服别人的同时你也在考证着自己的理论!

最后:能够迅速提高自己的水平的还是参加实践的工作,但是已经参加工作的要注意,不要把自己每天都陷入进琐碎的事情中,半个或者一个月的时候应该总结一下自己,平时注意写开发日记,主要是记录当时自己的心得,等项目做完之后,用市场的反应再回头来对照自己的开发心得,我想您的进步肯定是阶段性的,也就是说你的水平会有一个非常大的进步!
posted @ 2005-03-25 23:02 蓝色雪焰 阅读(428) | 评论 (0)编辑 收藏
 
作者不知道是谁,但我想这可能不能算总论。至少没有包含东方…… 

咒语大全 
   咒术、魔法、巫术,在我这里,它们所指代的意思是相同的,它们是一种神秘的力量,(我是神秘主义的人。)利用仪式、咒语,或者其他秘术来达到目的,借助自然的力量,精灵或者恶魔什么的力量来达到目的。  
  简单的咒术是不需要什么力量的,人人都可以使用,而且不会有什么害处。不过效果也就可想而知,是大不到哪里去的,也没有特别神奇的地方。但是如果高深起来的话,就确实需要能力了,没有能力的话,可能从开始就无法使用,也就谈不到其他了。而可以使用的,能力越强,咒术的效果就越大。  

  另外,如果两个人同时使用咒术,视谁能力强谁就成功。这也是没有什么好说的。 特别要提及的是诅咒术。因为诅咒术如果成功,会记入因果,你也不会有什么好下场。如果失败,还会以法力的三倍反弹,那……搞不好仇人没死,你倒是“先走一步”了。所以没到准备两败俱伤的时候别用着玩似的瞎闹,最好是这辈子都别碰。  

关于能力  

  关于能力,可能有人把它称为“灵力”吧。ESP,也就是预知及感应能力,这算是很重要的一部分能力,但是不是全部。还有其他许多的能力,比如很强的念力(PK)。甚至只是你比较敏感,也是好的。通常,女巫比男巫多,就是因为女性一般比较敏感的缘故。  

  我曾经寻问过别人,应该如何探测自己是不是有能力。有人告诉我做心理测验,结果我看到的题目是:你买彩票有没有中过头奖?我没买过彩票……呵呵,中奖就是有能力啊?我被打败了!后来还有人说:两只手相对,看能不能聚气(手心是否发热)。我是发热了啊,但是我还是觉得这大半是心理暗示。毕竟,我对心理学的了解比咒术多得多,我实在无法轻信一个没根据的东西。我半信半疑。不过,在网上确是碰到过所谓“能力者”,我不知道该不该相信…我说的不是该不该相信有人有能力,而是该不该相信他就是……在fateonline有可以测试ESP的测验,就是跟猜扑克差不多的把戏。我有做,正确率只有百分之十几,我很烂。如果有人可以达到标准,拜托告诉我一声,我就拜你为师好了。  

  接着回到刚才的话题。其实作为佛家或道家,是会认为我们皆有能力,(跟“万物皆有佛性”挂钩)我们只是取回本来的能力罢了。这时,是可以通过一些修行来磨炼能力的。当然修行中必然有一些宗教意义,这个我们不管,我们只需要借以达到提高能力的目的。我本人也认为任何人都有能力,只是强弱分别。  

关于教派禁忌  

  如果你信仰基督教,那么就此打住吧。咒术中,有很多是犹太人的古老巫术,基督教会是严禁教徒接触这些东西的,遥远的过去是,现在也是,我不太了解基督教,不过可以确定的是,这起码是不成文的规定。希望你能忠于你的信仰。 其他教派对此没有特别的禁忌。不论你信佛教、道教、犹太教、萨满教……或者其他什么的,那全都不用担心。(伊斯兰教的还是再问问比较好。我不清楚,但是听说伊斯兰教要求颇多,不知道有没有不准使用咒术这条。)不过如果你的教派比较特别,而且教主也有规定的话……恕在下这里就涉及不到了。  

咒术反弹!  

  注意!各位不要看到魔法,马上就兴奋不已,然后乱用一气。据我所知,确实有人在不知道会反弹的情况下乱用一气,结果目的虽然达到了,自己也很惨。几乎所有魔法都有副作用,行内叫做“反噬”或者“逆风”(总之天下没有白吃的午餐)。如果你使用魔法失败,在没有防护的情况下,魔法会以起码三倍反弹到你身上。简单魔法还好,如果是什么高级魔法,最后……呵呵……必死无疑。即使使用成功,魔法也会有一定量反弹回来,对你造成潜移默化的不良影响,如果在不知情的情况下,仍然一再使用,最后下场也不会好。专业人士都有防御的专门方法,这个各家不同,很多都是转移到别的生命体身上,让人家代为受过,这是非常卑鄙的手段……希望各位不要考虑。至于比较合适的防反弹方式我还没有找到……所以虽然知道,我几乎是不使用魔法的。  
祝福魔法也同样会反弹,不过因为反弹的是魔法本身,所以不会有坏效果(魔法本身就是好的嘛)。  

  各位如果想要使用魔法,也请先想好,是不是值得自己付出代价去换取结果,是不是有其他普通方法可以得到。除非非常重要的事情,否则少用为妙。  

确定自己的属性  

  你是什么属性的魔法师?属性不同,会有不同的魔法使用起来比较拿手。主要是四元素的差别,是风系、火系、水系、地系哪一个?一般来说,只要看你的太阳星座就可以判定了。太阳星座是什么属性,就是什么属性。(如果不知道自己星座的属性,就去看占星书简好了。)不过也有和太阳星座不完全符合的情况,这个就要看命盘,比较罗嗦的说。我也讲不清……  

关于魔法分类  

  这里只能提供西方的魔法分类,至于东方,是向来没什么分类的。东方人都是以“没系统”著称,不论天文地理科技立法,通通乱七八糟,直到近代,借鉴了西方,才开始有系统,但魔法是古老的东西,自然就没有了。(我这里没有批评东方的意思,我其实挺喜欢这种有点“混沌”的感觉,太清楚了反而让人觉得不亲切。)  

白魔法  

a 正统的神圣魔法,通常具有宗教背景。  

b 用咒语和药草来祈福,提升能力,疗伤。  

c 与天使或神祗订立契约,并且借用它们的力量来攻击或者保护。  

黑魔法  

a 异教的术式,通常被我们所知的宗教因教义不通而排斥。  

b 用咒语或药草来诅咒,牺牲供品来提升能力或疗伤。  

c 与恶魔或恶灵订立契约,并且借用它们的力量来攻击或保护。  

精灵魔法  

a 古老的自然魔法  

b 用咒语或药草来疗伤或者形成一定保护  

c 与四大精灵订立契约,并且借用它们的力量来攻击或保护。  

妖精魔法  

a 古老的自然魔法  

b 用咒语或药草来疗伤或者形成一定保护。  

c 与四大妖精七种精灵订立契约,并且借用它们的力量来攻击或保护。  

  (在这里可以看出,妖精魔法和精灵魔法极为相似。但是要记住妖精和精灵是不同的,只是属性相似。)  

  事实上,黑白魔法是一种分类,而精灵、妖精魔法是另一种分类它们分别来自闪族文化(一神论)和印欧文化(多神论)。而从闪族文化的角度来说,其实精灵魔法也是黑魔法……  

  而所谓精灵魔法的性质分类,我相信最初是来自哲学。最早的哲学家叫做“自然派哲学家”,他们研究大自然及其循环变化。我们所知的第一位哲学家叫做Thales,他认为“水”是一切的根源。而之后又有Anaximander,他是“无限定者”,认为世界没有基本元素。但再下来的  
Anaximenes又回到了Thales的路上,但是他认为“气”是一切的根源。直至西西里的Empedocles,提出了四元素的观点,即“世界由地水火风四种元素构成”。  

  西方哲学在此就停止了自然研究,把这个任务交给了科学,转而研究社会了。(东方可是一直在继续呢……)不过怎么会这个反而流传广呢……可能这种观点比较简单,好接受吧。(毕竟,让当时的人去H,He,Li,O,S,Si太难了。)  

  PS: 魔法也可以分为:攻击魔法、保护魔法、创造魔法、疗伤魔法。  

  另外还有一种“无系”魔法。顾名思义,就是没属性。这种通常是非常强大,具有毁灭性的魔法。都是禁咒术,使用的话,可能连使用者本人都会被吞食掉。不过也有一些无系魔法没有什么大不了的。  


咒术的规则  

1. 不能同時進行兩種以上的咒術  

2. 不可以馬虎和懷疑的態度來施咒術  

3. 咒術所使用的道具須好好收起  

施行咒術前的準備  

1. 淨身 (比较正式的才需要……不过平常也要保持身体干净吧?)  

2. 將室內打掃乾淨  

3. 需注意服裝 (寬鬆好活動的衣服)  

4. 道具必須事先準備好  

5. 將順序跟咒語記牢  

6. 瞑想(跟靜坐差不多)  

7. 以上步驟須獨自完成 !  


畫符應注意事項  

一、符紙有一定之尺寸不可亂用,一般以門公尺星 上吉祥尺寸為之。  

二、畫符之工具必須經過刺筆、刺紙、刺水、刺硯 刺墨神咒刺後方可。  

三、畫符之前必須誦咒,如白衣大士神咒、福德神咒、九天玄女神咒、金光咒。  

四、取筆畫符必須全神注視符紙,心無雜念。  

五、未完成符令,不得隨意拋棄,須用壽金一起火化,以示對神明之尊敬。  

畫符禁忌  

一、畫符忌日『刑破日』,在此月畫符易招來凶災。  

二、學符之人每月初一、十五最好能吃齋。  

三、九獨日夫妻分房,不可行房。  

四、青蛙、鱔魚不可食。  

五、多行善事以積功德。  

六、畫靈符禁忌日:(1)、三月初九日。 (2)、六月初二日。 (3)、九月初六日。 (4)、十二月初二日。  


咒术失败原因  

1. 不是诚心要做,只是玩玩,或者干脆不信。  

2. 咒术等级太高,术者能力不够。(这种最好别试,搞不好你就死掉。)  

3. 比较少见的情况,有些魔法只能一个系的人使用,比如标明火系,其他系就不能用。
posted @ 2005-03-25 22:15 蓝色雪焰 阅读(200) | 评论 (0)编辑 收藏
 
这个东东,估计在调均衡的时候可以用得上

小提琴 200Hz~400Hz影响音色的丰满度;1~2KHz是拨弦声频带;6~10KHz是音色明亮度。 
中提琴 150Hz~300Hz影响音色的力度;3~6KHz影响音色表现力。 
大提琴 100Hz~250Hz影响音色的丰满度;3KHz是影响音色音色明亮度。 
贝斯提琴 50Hz~150Hz影响音色的丰满度;1~2KHz影响音色的明亮度。 
长笛 250Hz~1KHz影响音色的丰满度;5~6KHz影响的音色明亮度。 
黑管 150Hz~600Hz影响音色的丰满度;3KHz影响音色的明亮度。 
双簧管 300Hz~1KHz影响音色的丰满度;5~6KHz影响音色的明亮度;1~5KHz提升使音色明亮华丽。 
大管 100Hz~200Hz音色丰满、深沉感强;2~5KHz影响音色的明亮度。 
小号 150Hz~250Hz影响音色的丰满度;5~7.5KHz是明亮清脆感频带。 
圆号 60Hz~600Hz提升会使音色和谐自然;强吹音色光辉,1~2KHz明显增强。 
长号 100Hz~240Hz提升音色的丰满度;500Hz~2KHz提升使音色变辉煌。 
大号 30Hz~200Hz影响音色的丰满度;100Hz~500Hz提升使音色深沉、厚实。 
钢琴 27.5~4.86KHz是音域频段。音色随频率增加而变的单薄;20Hz~50Hz是共振峰频率。 
竖琴 32.7Hz~3.136KHz是音域频率。小力度拨弹音色柔和;大力度拨弹音色丰满。 
萨克斯管 600Hz~2KHz影响明亮度;提升此频率可使音色华彩清透。 
萨克斯管bB 100Hz~300Hz是影响音色的淳厚感,提升此频段可使音色的始振特性更加细腻,增强音色的表现力。 
吉它 100Hz~300Hz提升增加音色的丰满度;2~5KHz提升增强音色的表现力。 
低音吉它 60Hz~100Hz低音丰满;60Hz~1KHz影响音色的力度;2.5KHz是拨弦声频。 
电吉它 240Hz是丰满度频率;2.5KHz是明亮度频率3~4KHz拨弹乐器的性格表现的更充分。 
电贝司 80Hz~240Hz是丰满度频率;600Hz~1KHz影响音色的力度;2.5KHz是拨弦声频。 
手鼓 200Hz~240Hz共鸣声频;5KHz影响临场感。 
小军鼓(响弦鼓) 240Hz影响饱满度;2KHz影响力度(响度);5KHz是响弦音频(泛音区) 
通通鼓 360Hz影响丰满度;8KHz为硬度频率;泛音可达10~15KHz 
低音鼓 60Hz~100Hz为低音力度频率;2.5KHz是敲击声频率;8KHz是鼓皮泛音声频。 
地鼓(大鼓) 60Hz~150Hz是力度音频,影响音色的丰满度;5~6KHz是泛音声频。 
镲 250Hz强劲、坚韧、锐利;7.5~10KHz音色尖利;1.2~15KHz镲边泛音“金光四溅”。 
歌声(男) 150Hz~600Hz影响歌声力度,提升此频段可以使歌声共鸣感强,增强力度。 
歌声(女) 1.6~3.6KHz影响音色的明亮度,提升此段频率可以使音色鲜明通透。 
语音 800Hz是“危险”频率,过于提升会使音色发“硬”、发“楞” 
沙哑声 提升64Hz~261Hz会使音色得到改善。 
喉音重 衰减600Hz~800Hz会使音色得到改善 
鼻音重 衰减60Hz~260Hz,提升1~2.4KHz可以改善音色。 
齿音重 6KHz过高会产生严重齿音。 
咳音重 4KHz过高会产生咳音严重现象(电台频率偏离时的音色)。
posted @ 2005-03-25 22:13 蓝色雪焰 阅读(270) | 评论 (0)编辑 收藏
 
 游戏积累网络游戏的经济系统是建立在一个虚拟社会中的经济系统。如同一个正常的社会中的,其拥有多种的投入&产出价值体系。在网络游戏中,同样拥有投入、产出的价值体系。主要价值体系如下。

  一、 能力养成:一个MMORPG游戏,玩家主要积累的价值,就是自己角色的能力。能力通常包括属性点、武器应用能力、战斗技能能力、魔法能力、工作技能能力等永久属性。而这些能力通常是以等级来进行标志,某些特立独行的网游会淡化等级所集中的能力,将能力用其他方式来体现(升职、熟练度、技能点分配)。

  二、 物品积累:在游戏进行过程中,玩家通常会获得大量的游戏内物品。物品包括普通装备、高级装备、能力积累消耗品、装备积累消耗品、日常消耗品、装饰品、物品原料等。

  三、 金钱积累:在游戏进行过程中,玩家获得的剩余物品,需要经过与系统交换、与玩家交换,转化为金钱,以用做购买自身所需装备、所需消耗品、装饰品等的需求。而在一些提倡点卡交易的网游中(如《梦幻西游》),则将RMB以游戏点卡为媒介,刺激游戏经济系统的产生。

  四、个人地域:某些游戏中,会以永久或半永久(维护费)的私人地图、帮派地图作为玩家的私人地域长期存在。一般获得的代价是金钱、或者特定任务等。


游戏经济系统模式:在网络游戏中,因为相对单机游戏而言游戏时间时间被拉长数倍。并且牵涉到多人在游戏交互的特性。通常能力的积累是与玩家的在线时间(在线操作)相等价的。著名的“时间=能力”公式即是指此。而以上的能力积累,也需要遵循这个定律。在不同的游戏设计中,会根据自己游戏的特性,对其进行一定的细微调整。以下为几种有特色的游戏经济系统。

  一、 金钱与养成合并:主要游戏特征就是,金钱的提升与角色能力的提升相伴随,两者同时进行的。主要代表游戏为《传奇》、《奇迹》。其优点在于游戏内价值观统一,玩家理解很简单。但与其简单性所伴随的缺点就是游戏深度严重不足。不能保证多样化的游戏乐趣。

  二、 金钱与养成剥离:主要游戏特征就是获得金钱的时候,不能同时提升自己的其他能力。主要代表游戏为《天堂》系列、《梦幻西游》。其优点在于将游戏内的练级以及其练级时的主要目的进行分解,创造出大量玩家之间自主的的交互。甚至可以引起玩家之间的人民币ßà游戏币交易,刺激游戏内的玩家行为。其缺点在于,过于裸露的钱与游戏乐趣的交易,让仅仅为体会游戏乐趣的玩家在达成自己目的后,对游戏缺乏持续的兴趣。

  三、 金钱为养成的媒介:主要游戏特征就是金钱与养成系统做一定的分解。游戏内拥有与战斗系并行的专职的生产系为战斗系提供消耗品以及装备及附属服务,从而获得金钱。主要代表游戏为《魔力宝贝》。其优点在于可以将游戏内的游戏目标进行分解,同时促进游戏内的交易。其缺点在于,需要将游戏内方方面面的数据都加入计算。数据制作工期过长,并且可能会造成数据过“硬”(变化参数过少)。

游戏收费类型对经济系统的影响:不同收费模式的网络游戏,对游戏经济系统是有一定的自身需求。一个与运营模式不统一的游戏经济系统,在正式运营期进行修改时。不对游戏性造成破坏,就会对运营制造极大的障碍。以下为几种不同类型的运营目标,对经济系统设计的需求。

  一、 月卡为主:此类游戏最在早期的网络游戏中最常见。通常在这种游戏中,所有的玩家付出月费后均为平等。对经济系统设计没有特殊要求。

  二、 点卡为主:此类游戏在日式回合制网络游戏(包括国内厂商制作的同类游戏)中常见。对经济系统的要求,主要是需要严格维护时间=能力公式的稳定。

  三、 消耗品销售为主:此类游戏主要见于休闲类游戏,代表作为《泡泡堂》。以销售大量的微作弊道具作为长久性赢利目标。对经济系统无特殊要求,主要是需要严格控制获得以及付出的平衡。配合好运营。(注:为防止经济系统的紊乱。其目前将游戏货币&人民币货币购物进行隔离)

  四、 道具销售为主(私服类):此类游戏主要见于私服、《MU》等,为保证游戏利润,则由厂商将游戏内以游戏时间积累获得的道具进行销售。以冲淡游戏内装备的“时间价值”为代价获取利润。需要经济系统可以保持一个基本的稳定以令游戏币达到物物交换的作用。系统设计上需求道具的“永久性积累”需要得到保证。

  五、 道具销售为主(新游戏):此类游戏主要见于休闲游戏,以及当前为数不多的探讨运营路径的游戏。需要经济系统保证必要的稳定,以令游戏币达到物物交换的作用。

  六、 虚拟币销售为主:此类游戏主要见于为数不多的探讨运营性质的游戏。需要极大地保证虚拟币的一般等价物的作用。同时增大经济系统的出口(系统注销途径)。从而保证运营目标。

网络游戏经济系统设计

 网络游戏的经济系统平衡需要牵涉的方面非常多。所以,在制作前,需要将大致的设计需求整理清晰后,在制作过程中,根据实际变化再逐渐调整。以准确地达到游戏设计的目的。以下为几个需要遵循的步骤以及其一些特性说明。

运营模式:不同的运营模式决定了游戏经济系统设计中的偏重。如上述内容。

能力的养成:不同的游戏设计结构决定了游戏经济系统的构成模式。如上述内容。而能力的养成,主要是通过玩家在游戏中消耗时间以及消耗品获得累积的能力。

金钱入口控制:主要是指金钱与各个系统的技能关联、时间关系。
  1. 金钱掉落:物品中怪物掉落的金钱。
  2. 物品掉落:游戏中获得的,会被玩家销售给系统NPC,换取金钱的普通物品。
  3. 原料价值:在拥有生产系的游戏中,花费时间后获得的制作装备的原料。
  4. 成品价值:在拥有生产系的游戏中,玩家自己使用原料所制作的物品的价值。

玩家之间周转:主要是指高级玩家获得的普通物品,在低级玩家中的价值。此部分如有需要,则需要加入计算。

金钱的出口:主要是指被系统注销的金钱,以及注销的途径。此部分需要基本等于金钱的入口。如有特殊需要,则需要将此部分扩大,以达成不略微的不平衡,从而造成游戏内货币的稳定。
  1. 一般消耗品:包括HP、MP等消耗品。
  2. 技能消耗品:主要为MP的消耗,以及修炼技能时的道具消耗(包括生产技能、战斗技能)。
  3. 装备消耗:主要为装备耐久度的消耗(永久消耗或维护费)。
  4. 装饰品消耗:一些具有个性化外观的,独立于装备系统之外的独特装备,承担一部分金钱的消耗。


剩余金钱的累积:玩家在游戏中通过金钱获得的物品、地盘等。
  1. 装备累积:玩家通过给装备升级、维护等、为其制作一个大众追求的装备。
  2. 私人空间累积:玩家拥有帮派地图、个人房屋地图等。
  3. 宠物积累:玩家拥有的华而不实的特殊宠物。以及花费金钱特别培养的宠物。

posted @ 2005-03-25 21:21 蓝色雪焰 阅读(652) | 评论 (0)编辑 收藏
 
图-:
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 8, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 9, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0


  这是一张连连看的地图,假设标8和9的部分是两张相同的牌。
  在数组矩阵中,0表示没有牌,大于1表示有牌。至于是什么牌,那是随机的了。
不要告诉我,你说的“布局算法”是指怎么把牌刚刚好放上去,那个无所谓什么
算法,你只要首先在地图数组中准备好偶数个1,在布牌时保证每种牌是偶数个
(不同种类的牌用大于1的数来表示),相应地放入每个1的位置上就可以了。

一、计算地图上这两张牌能不能连通(当然能了,哈哈)。

这是连连看寻路算法的第一步。
先定义一下两张牌能连的充分条件:
1.两张牌是同一种。
2.两张牌之间有一条全是0的路可以连通。
3.这一条路不能有两个以上的拐角(corner)
满足这三个条件,就可以认为这两张牌是可以连的。

首先,我们依据前两个条件来完成一个基本的寻路算法。
我们的目的是从8到9找出一条可以连通的路来。
那么很明显从8到9的第一步一其有四个方向可以选择,分别是东,南,西,北
(e, s, w, n以中国地图方向为标准)四个方向,在第一步中我们首先假设四
个方面没有任何优劣,那么我可以任意选择一个方向移动,那就是东面吧。
图二:
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 8, -8, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 9, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
我从8向东移动了一步,所以到达了-8的位置,我之所以可以移到-8位置,很明显,
是因为-8的位置上原来是一个0,表示没有牌阻挡。
那么现在寻路的问题就变成了,如何从-8找连通9的路了!
说到这里应该明白了吧,好多费话,有点像娘们在说话。

所以目前的寻路算法归结为一个递归算法的基本问题。
先从8到找到下一个结点-8,再用同样的规则,从-8找到下一个结点,比如-88。。。
图三:
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 8, -8, -88, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0
0, 0, 0, 0, 0, 0, 0, 0 , 9, 0
0, 0, 0, 0, 0, 0, 0, 0 , 0, 0

如果一直都能OK,没有阻碍的话,最后找到了9,就算成功以,如要有一步不能走下去了,
就再退回上个结点,向别的方向发展,都不行,就再退回上级结点,再向别的方向发展,
这里的逻辑就是递归的思想了。

用这样的方法写出来的算法已经能在最优的情形下用了,比如从8,到-88,哈哈。
但在稍微复杂的情况下,会产生奇多的递归结点。P4机也跑不动啊。我试过,哈哈。

那么第二步就是为(e,s,w,n)四个方向加权,也就是让它们之间有一个优先权,说白了就
是先试哪一条路。决定的法则应该有好几个吧,比如以9号的位置来看,它处于8号的东南面,
那试路时当然应当优先选择东面和南面,再比如9号如果牌8号的正东面,那当然是选择正东了。
再比如,当走到-8的位置时,明显只能再走三个方向,因为它是不能回头的。

经过这样的处理,递归算法生成的结点数会明显变少,会更快的找到成功的路。但性能在最坏情况
下没有本质改变。

接下来,第三步,我们把第三个充分条件加进来,来解决根本问题。
3.这一条路不能有两个以上的拐角(corner)

按照面向对象的思想,很自然的,我给每个在递归算法中生成的位置结点加上了个corner的属性,
来记录这条路到目前为止拐了几个角。
这样一下子就好办了啊。如果发现这个结点已经拐了两个弯时,如果要再拐弯,或者到达9之前注定
要再增加cornor时,就果断over,返回上级结点。

注意,要把二、三两步的条件综合起来详细规划一个个可能性,尽可能提早让不可能的结点OVER,
这就是提高性能的关键吧。算法预见性越强,性能就越高吧。

我们的算法在赛扬500,256M的机器上,10万次平均结果是一次运算花时不超过0.1毫秒,算得还不
精确,速度确实很快,因为在很坏的情形下,产生的最大结点数是690几个,这样必然会很快的
,详细的数据已经记不清了。


说了这么多了,应当明白第一步连通算法的思路了吧,我所知道的,都已经尽可能的讲出来了。
这个算法完全是自己按照连连看的特点,度身定做的。因为是一步步test出来的,所以我个人
觉得是很自然的,没有任何高深的地方,完成后,性能也很好,这才觉得是如此的简单。相信大家
仔细看看就能写出自己的算法来的吧。


二、整个地图有没有解???可以连通的总牌数?
  这是一个问题。
  解决这个问题之前,我们先来解决提示功能(hint)就是为玩家提供提示,哪一对牌可以连
通。
  我的做法是,先把整个地图中相同牌归到一起,用数组也好,链表也好。
  像这样,
 4,4,4,4
 5,5,5,5
 6,6,6,6
 ......
    然后计算比如4个4之间有哪两对可以连,至于如何判断能不能连,第一步算法已经实现了吧,哈哈。
  一发现有可以连的牌就退出来,告诉玩家这两张牌可以连啊!
  这就OK了。
  这完全是建立在第一步算法的基础上实现的。

  好的,hint功能可以了,
  那么,整个地图没有解的算法是不是出来了?
  是的,如果找不到可以hint的牌,那当然就是没有解了!
  把所有可以hint的对数记下来,就是总的可以连通数了。

  至此,与连连看所有算法有关的问题解决完毕。
第二步算法的实现,明显开销要大很多,最坏情况应当会是单次连通算法计算量的大约50倍以上
(与牌的总数量和摆的位置有关)还好在一般的服务器上单次连通计算花的时间实在太少了,
实际运行中完全可以很流畅。以上数据都是我估计的理论值,因为实际测试时一直没有问题,
我也懒得计算出真正比较可靠的均值了。
  
  这一部分也是我认为可以有所改进的部分,公开出来,也希望大家能提供一些更好,更巧妙
的方法,我觉得我计算连通数和有无解的方法是比较笨的方法,几乎是仗着基本的算法快,一
个一个算出来的。有没有更好的方法呢?期待中...

posted @ 2005-03-25 21:19 蓝色雪焰 阅读(533) | 评论 (0)编辑 收藏
 

游戏策划

岗位职责:
1、根据策划主管和规则设定师制定的各种规则,进行公式设计,建立数学模型。
2、对游戏中已经开始使用的数据根据情况进行相应计算和调整。
3、设定游戏关卡,包括的内容为:地图/怪物/NPC 的相应设定/文字资料。
4、设定各种魔法。
6、 制定相关细节规则。
任职要求:
1、具有逻辑学,统计学以及经济理论知识基础;
2、具有大量游戏经验;
3、具备良好的创造能力;
4、具有一定程序设计概念者;
5、具有可量化、体系化游戏配平数据调谐能力者;
6、熟悉中国文化、对中国历史有深入了解,对中国神话体系等有全面了解;或者熟悉欧美历史,对魔幻体系以及基本架空世界观有全面了解。
7、很强的文字组织能力;

posted @ 2005-03-24 10:06 蓝色雪焰 阅读(190) | 评论 (0)编辑 收藏
 

外篇  道缘儒仙改编成游戏的可行性分析

  

  本书名为《道缘儒仙》,或者叫《儒仙缘》,最后可以缩写为《仙缘》,既综合了古代各家的神仙学说,又有很多独创之处,能够开发成适合中国人玩的游戏。

  要想成为一个优秀的中国文化游戏,值得关注的不仅仅是游戏本身的互动性和娱乐性,更重要的是游戏的文化内涵,特别是能否将中国优秀的传统文化包融其中。《道缘》在文化内涵上比较丰富,游戏的角色和修行方式既有现实性,又有幻想性,是可以改编为网络游戏的很好的素材。

  请看书中创造性的神仙体系和修行方式:

  1.首次提出将佛心和儒功进行量化的概念,而且神丹、佛心和儒功三者可以相互转化。

  佛心:戒定慧三层的修为程度。可以定义为从别人那里受到的内心感激数(主要是佛家劝人向善、消除心魔等行为方式给别人带来好处,然后赢得别人的香火和感激)。一人感谢一次=1个佛心数。

  儒功:一个人完成的功业量(指的是对社会做出的具体的贡献)。衡量的标准是受惠人的多少。一人受惠一次=1个儒功数

  神丹:神丹是髓海中经过修练后的结丹量(修炼的结果)。初级修真人一天的修练=1个神丹数。 仙品越高修丹越快。比如真人修一天增加10个神丹数,仙人增加一百个神丹数……

  转化公式:1个神丹数=1个佛心数=1个儒功数

  仙品=神丹数+佛心数+儒功数。

  每个人都可以同时修炼佛心、儒功和神丹,并非只有佛家才能修佛心,也不是只有儒家才能修儒功,更不是只有道家才能修神丹。

  比如儒家的修行同时包括内圣和外王。外王便是儒功,内圣分为心圣和身圣,心圣便是佛心,身圣指的是对身体本身的修炼,等同于神丹。

  2.神仙等级的划分

  36重,大罗天---------就是一气化三清的一气。这个人是盘古大帝,跟原始天尊、太上老君、灵宝天尊是一个人,只是个虚的人物,早就在10万年前退出江湖了。 除此之外没有人能达到这一层,若有也就是玉帝、佛祖稍微占点儿边。___________________________________

  33-35重属于三清境,统称天界

  其中,35重---------------玉清圣境, 神仙榜1000名之内

  34重---------------上清真境,神仙榜一万名之内

  33重---------------太清仙境,神仙榜五万名之内。

  三天尊在数十万年前专门聘请玉帝、佛祖作经理、代言人管理整个世界。所以下面有些人不服,不服就会有斗争,有斗争就有了这个故事。天界的大神共有6万多个,被称为三清天神。

  神仙的斗争很激烈,每2000年就有一次惊心动魄的斗争,几乎要死掉所有神仙的20%。

  ___________________________________________________________

  29-32重----------统称神界,为四梵天依次为:

  无上常融天、玉隆腾胜天、龙变梵度天、平育贾奕天;

  神界共有250万人

  ________________________________________________________

  25-28重统称仙界,主要在十州三岛。

  修行境界依次为:皓庭霄度天、渊通元洞天、翰宠妙成天、秀乐禁上天

  仙界有3000万人

  _______________________________________________________

  7-24重通称为真人界,修行于名山大川

  有十八重天,依次是虚无越衡天、太极蒙翳天、赤明和阳天、玄明恭华天、耀明宗飘天、竺落皇笳天、虚明堂曜天、观明端靖天、玄明恭庆天、太焕极瑶天、元载孔升天、太安皇崖天、显定极风天、始黄孝芒天、太黄翁重天、无思江由天、上揲阮乐天、无极昙誓天

  真人界有2亿人口

  ____________________________________

  1-6重为修仙基础阶段,哪里修都成

  六重天,太皇黄曾天、太明玉完天、清明何童天、玄胎平育天、元明文举天、七曜摩夷天

  人数:多如牛毛

  ____________________________________

  下面是武术师

  人数是宇宙总人口的十分之一。

  再下面还有凡人10万亿。以下有修罗界、牲畜界、恶鬼界、地狱界,单是地狱界就有18重。

  ____________________________________

  3.神仙的活动范围

  整个世界漫无边际,盘古开天辟地开出的空间基本上是一个球体,直径大约是一亿光年,这就是天庭目前所管理的疆域,也就是我们经常所说的宇宙。宇宙中大大小小的星球不下几十亿颗,按照方位统一划分为东、南、西、北、中五大区域,分别由五老君掌管。东方区域包括角、亢、氐、房、心、尾、箕七大星系,呈青龙之形;北方区域包括斗、牛、女、虛、危、室、壁七大星系,作玄武之势;西方区域包括奎、娄、胃、昴、毕、觜、参七大星系,踞白虎之威;南方区域包括井、鬼、柳、星、张、翼、轸七大星系,成朱雀之状。中央区域又分为紫微、太微、天市三个小区,称为三垣,各辖无数星球。”

  ______________________________

  4.玉帝、佛祖的办公地点

  盘古开天开出的是一个球形的空间。在这个球形空间的中心有一个很大的星球,被称为昊天玄穹星,那里遍布绿水,只有两座又高又大的神山从海中拔地而起直入云端,一座是玄都玉京七宝山,另一座是须弥神山。玉帝的灵霄宝殿就在玄都玉京七宝山的山巅,佛祖的极乐世界则在须弥神山之上。

  5.神仙的法力

  公式:神仙能力=仙品+法器。

  所以光有仙品是不行的,还要有法器,没有法器就等于赤手空拳,作起事来事倍功半。为了找到合适的法器或者炼制的材料,就需要进行物质交换,也就有了买卖。

  6.神仙的修炼方式

  (1)、修道,道家的方式修行,积累神丹

  (2)、修佛,佛家的修行,主要积累佛心

  (3)、修儒,儒家的修行,主要积累儒功

  (4)、修魔,除了神丹数以外,儒功数和佛心数都是负值

  (5)、商人.神丹和佛心都允许买卖,但税特别重,为30%。为了方便买卖,还有专门的神丹币和佛心币。神丹币有灵霄殿监制,佛心币由佛祖监制。 神仙可以通过出卖自己修炼的神丹换取神丹币,神丹币多了也可以通过灌顶师换回神丹。

  这样就出现了不修炼而专门作买卖的修仙家族。

  儒功不能买卖,必须自己积累。

  7.仙劫的设定

  公式:仙劫的多少=神丹数/佛心数然后乘以一个系数。

  每经过一次仙劫,神仙的功力就会下降1/3,弄不好就死翘翘了。

  仙劫的存在限制了神仙数目的无限制增长,同时保证神仙的精神文明不被忽略。要达到物质文明和精神文明双丰收。

  8.魔劫的设定

  神仙修持的过程中不定期地会碰到魔头,然后功力大损,称为魔劫。定期的魔劫可以由游戏程序设定。不定期的魔劫由游戏玩家自己充任。

  9.法器的设定:

  (1)法器分为神器、仙器、灵器、宝器

  神器----主要是三清天神才能制造使用的。可以设定为有100种。小说中是1千种。

  仙器----仙人才能制造使用的。

  灵器----真人界使用的。

  宝器-----初级修真人和世俗界用的。

  _______________________________

  (2)、排在最高层的九大神器(开天九宝)

  一曰开天神斧,利器,打遍天下无敌手

  二曰监天御印,玉皇大帝主管

  三曰九品莲台,佛祖主管

  四曰镇妖宝塔,管理妖怪恶人

  五曰瀚海神舟,就是我国新发射的神舟了。跑得快,哪里都能眨眼就到。

  六曰乾坤锦囊,装东西用的,什么都能装,装多少跟功力有关系。另外,它还可以收取人家的法器。

  七曰通灵宝玉,找宝贝用的。

  八曰阴阳法轮,炼魂,驱魂,将魂魄炼成神丸,服了可以增长功力。

  九曰观天宝镜,想知道什么就知道什么。比六神通还厉害。

  每种神器都有仿制品,功效类似,比原件功能差很多。

  几乎没有人能够拥有九大神器,但可以拥有仿制品。仿制品也有高低之分。

  _________________________________

  (3)、法器的来源

  可以去买,也可以自己炼制。

  A:买法器

  宇宙中有专门炼制法器然后出售的组织和家族。要买法器必须拿自己修练的神丹和佛心去交换。

  B:自己炼制

  要炼神器必须有四种神材:“地苏木、海金沙、寒水石、乌铊金” ,另外还可能用到别的材料。

  还要掌握四种对应的的基本炼器手法,分别是‘折梅手,红酥手,开碑手,金刚手’ 。

  _____________________

  (4)、法器的修练

  法器有法器排行榜。

  想要在排行榜上上升必须经过修练。所有的修练都包括物质和精神两部分,物质就是指能量和运用能量的能力,精神就是作好事或者坏事所得到的佛心。

  ______________________

  (5)、神仙跟法器的关系

  法器能够提升神仙的能力;神仙也要修练并爱护法器。

  神仙修练法器就跟养宠物一样,不能光让干活,不给饭吃。那样法器的能力逐渐下降,最后就没效果了。

  10.六道轮回的设定

  一旦死了可以进入地狱,然后从地狱从新修炼,历经地狱界、恶鬼界、牲畜界、修罗界可以重新爬回人界,然后接着修仙。

  11.游戏的角色

  (1)道士

  (2)和尚

  (3)儒生

  (4)魔鬼

  (5)商人

  (6)发明家以及制造师,设计制造神器

  每种都有无数等级,大部分等级名称本书可以找到。没有也可以很容易加上。

posted @ 2005-03-23 20:29 蓝色雪焰 阅读(316) | 评论 (0)编辑 收藏
 
J2ME学习笔记整理(一)
http://www.j2medev.com/Article_Show.asp?ArticleID=249

一直想写点东西为我学习J2ME做个总结,自从上次笔记本在寝室莫名其妙弄丢后,就再没写过J2ME的学习笔记,今天终于股起勇气再动笔,同时也为准备学习J2ME的兄弟姐妹起个抛砖引玉的作用,呵呵,希望不让大家失望。

J2ME学习笔记整理(二)
http://www.j2medev.com/Article_Show.asp?ArticleID=250

接下来我们来介绍一下LCDUI这个包及其相关内容,大家都知道,在J2SE里面我们用AWT或者SWING来开发用户界面,但是在J2ME里面,开发用户界面并非上述的AWT或者SWING,我们使用的是全新的针对移动设备设计的LCDUI包(即Limited Configuration Device User Interface)。
posted @ 2005-03-13 11:01 蓝色雪焰 阅读(324) | 评论 (0)编辑 收藏
 
http://www.javaresearch.org/word/list.jsp

可按字母分类查询,中、英文都有。
posted @ 2005-03-12 09:18 蓝色雪焰 阅读(171) | 评论 (0)编辑 收藏
 

3D效果的Applet小游戏
http://www.javaresearch.org/code/thread.jsp?thread=21723

有代码

posted @ 2005-03-10 21:38 蓝色雪焰 阅读(482) | 评论 (0)编辑 收藏
 
本文是基于Nokia Series 60和Symbian OS技术,指导开发者在现在的Series 60移动电话终端上开发高级的移动游戏。

  注意:本文档中讨论的技术路线都是以Symbian OS GT 6.1作为Series 60平台的基本操作系统。这适用于Series 60平台v1.x。Series 60平台v2.0基于Symbian OS GT 7.0s。本文档主要适用于Series 60 v1.x版,所以可能会有部分不兼容Series 60 v2.0版。

  Symbian操作系统简介

  Symbian操作系统是所有Symbian OS电话共享的应用编程接口( API)技术的公共核心。 这个核心被命名为"通用技术"(generic technology,简称为GT),它被分成不同的版本。 GT包括一个多任务核心、通讯、数据管理和图表中间件,低级图形用户界面框架和应用程序引擎。

  象智能电话这样的小型手持设备,通常是资源非常紧张的设备。 这种设备的尺寸和制造费用限制了可用的存储器,处理速度和电池寿命。 尽管以上这些资源缺乏,但是这些设备还是需要能够稳定运行相当长的一段时间,甚至数个月。 一旦出现资源溢出的错误,对于系统来说重要的事情就是返回到前一个稳定的状态,而不失去任何重要的数据。 这使得完全地捕捉和处理每个运行错误对于系统和应用程序来说是非常重要的。

  由于资源溢出而出现的错误,和所有的运行期错误一样被称为异常。 在标准的C++中,这些异常是使用try-catch-throw机制处理的,但是因为它造成了代码长度的负面影响,所以Symbian OS提供了它自己的称为trap harness的机制。

  Symbian开发他们自己的异常处理程序的另一个原因是开发Symbian OS的时候,try - catch - throw机制还不是C++标准的一部分。trap- harness的概念是使用一个TRAP宏把可能引发异常的函数封装起来。这个宏可用于捕获多个函数,并且这些函数可以嵌套。万一出现一个异常,导致异常的函数的执行就会通过User::Leave函数终止,相当于标准的C++异常处理中的throw。这被称为一个leave(离开),它将返回程序执行到结束的TRAP宏,在那里相应的恢复动作可以被执行。

  Symbian OS还提供一个工具,以便清除异常。一个cleanupstack被用于引用只被一个自动变量引用,并且如果出现一个leave的时候需要被释放的对象。TRAP宏将销毁cleanupstack中自动变量分配的内存。

  Symbian OS提供一个用于在单一线程之内非抢先式多任务处理技术的系统。这个包括活动对象和活动调度程序的系统的设计目标是降低运行时间成本和解决与优先计划线程冲突的同步问题。Symbian OS中的每个应用程序由一个活动调度程序和一个或多个活动对象组成。这个调度程序封装一个需要异步的服务和依照它们的优先权安排活动对象的等待循环。活动对象封装实际的异步服务。
posted @ 2005-03-03 09:57 蓝色雪焰 阅读(222) | 评论 (0)编辑 收藏
 

    J2ME编程是Java在智能家电领域的应用,主要包含以下技术:

     1、  高级用户界面

高级用户界面是指J2ME编程中用到的Form(窗体)、TextBox(文本框)、List(列表框)和Alert(提示信息框)等的使用,以及其中的一些控件的使用,当然也包括相应的事件处理。应用在一般的如登陆窗体、关于窗体和提示等。

     2、  低级用户界面

     低级用户界面指Canvas类和Graphics类等的使用,以及相应的事件处理,应用与游戏编程以及特殊界面的绘制等。

     3、  记录存储系统

     记录存储系统是手机中支持的用于数据永久保存的技术。因为手机中没有数据文件的概念,所以一般需要保存的数据只能以记录的形式保存。

     4、  声音处理系统

     MIDP1.0不支持声音处理,但是很多手机厂商如Nokia、Siemens等都支持,所以播放声音也是一项需要掌握的技术。该技术使用的API多和手机厂商相关。但是MIDP2.0就提供了通用的支持。

     5、  网络编程

     网络编程指在手机中通过GPRS或者CDMA网络以HTTP协议或者SOCKET的形式连接网络。现在的手机支持HTTP网络编程的占大多数,支持SOCKET的相对很少。所以网络编程暂时也就是使用HTTP协议进行编程。

     6、  多线程

     多线程是J2ME应用中比较核心的技术之一,因为进行网络编程和低级用户界面编程是为了响应迅速,都需要处理成多线程。所以也必须熟练掌握。

     7、  短信息编程

     很多手机都提供了用于发送短信息的API,如NOKIA、SIEMENS、SAMSUNG等,所以在J2ME中发送短信息也是一个比较常用的技术。

     8、  其他

     当然根据厂商的不同还提供了其他的一些技术,如Siemens的API中支持文件,Nokia的API支持读取系统通讯录等等。

posted @ 2005-02-25 14:39 蓝色雪焰 阅读(350) | 评论 (0)编辑 收藏
 
[JAVA-CN转载]只针对Java2平台,而且是在国内可以找到的中文版的,其实书好不好是见仁见智的(高手可以去看Sun的开发文档,这也可以理解)--这只是一家之见而已,欢迎大家点评。

  第一名:Java编程思想第二版(Thinking in java second)

  包含范围:全部。

  没说的,绝对的大师作品,当之无愧的第一。第一版时就享誉整个java界(当时网上好象也有人译了)。国内版是京京工作室翻译的,基本上毁了此书--错误术语太多。推荐高手看E文版,新手就不要先看此书了。第二版更精采,台湾的侯捷译了此书。可以到www.csdn.net看看前几章的中文版(不过是台湾术语)。希望国内会快些引入此书,你也可到http://www.BruceEckel.com--作者的主页免费下载此书推荐http://www.bdelmee.easynet.be/java/index.html。有chm格式的,非常棒!BTW:这位大师最近在写Thinking in Python相信又是一本经典名著:)

  第二名:Java2编程详解(special edition java2)

  包含范围:全部

  这本书会排在core java2的前面可能很多人会不同意,但是就中译本和内容来看非常全面。适合新手成为高手。虽然国内的价位高了些(150),但基本还是值得的。该有的内容都有了,做参考书也很不错。BTW,这个系列中的oracle8/8i使用手册也是一本很经典的书,同样推荐。

  第三名:Java2核心技术卷一,二(core java2 volume1,2)

  包含范围:全部

  这两本我把它们看成一本不会有人有异议吧。这也是Sun的官方的书,我觉得相对来说。第二卷高级特性要比第一卷基础知识好(第一卷又是京京工作室译的--真影响情绪:()。内容同样很全面,但是卷一虽说是基础知识,同样对新手来说不是很合适。感觉条理性不强,而且内容有些混杂,但第二卷完全可以弥补这些--精辟而细致,很适合有一定基础的Java程序员看。

  第四名:Java 2图形设计 卷1:AWT 卷2:Swing-Graphic Java 1.2 Mastering the JFC Volume I:AWT SWING 3rd Edition

  包含范围:Java图形设计

  没什么说的了,尽管图形设计不如J2EE那么火 ,而且Win32下做应用程序也不是java的强项,但是AWT和Swing仍然是Java程序员的必修课。看这两本就够了,看看厚度就知道了,而且这也是Sun官方出的图书。

  第五名:J2EE构建企业系统专家级解决方案

  包含范围:J2ee

  清华大学出版社 译作者:[美]Paul J. Perrone,et al.著 张志伟等译

  又是一本极厚的书1038页,105元。不过内容十分丰富,适合想对J2EE整体做了解的程序员,至于每项都想精就不太可能了,呵呵。毕竟在Java中思想是主要的。在这类中有本Java服务器高级编程也很不错,机工华章出的-wrox系列中的。

  第六名: Java XML编程指南

  电子工业出版社 译作者: [美]Tom Myers,Alexander Nakhimovsky著

  包含范围:Java+XML

  XML在Java中的地位也越来越重要了,而国内能看到的还有一本中国电力出的o eilly的Java和XML。最后我还是选了这本wrox的,当然你要是想好好学学XML本身,还是看看那本XML高级编程吧。wrox系列中的-机工华章出的。

  第七名:书名:Jini核心技术 英文原书名: Core Jini

  作者: W.Keith Edwards

  包含范围:Jini

  Jini也是Java体系中很重要的部分,而且更重要的是这本可能是国内唯一的一本Jini专著-翻译的也不错。在我看来是当之无愧的经典,同样是Sun的官方图书,内容很清晰透彻。

  第八名:Enterprise JavaBeans第二版 英文原书名: Enterprise JAVABEANS

  作者: (美)Richard Monson-Haefel

  包含范围:EJB

  O‘reilly出的,ejb的重要性我不用多说了吧。尽管有人说这本译的不好,但是同样它是国内目前唯一的EJB专著。o eilly的书就是只讲一方面或一项技术,很细,但价格也不菲,这本书的架构还可以,值得一看。

  第九名:数据结构与算法分析(Java版)

  译作者: [美]Clifford A.Shaffer著 张铭 刘晓丹译

  包含范围:Java算法

  尽管基本上Java图书都是讲Java本身的特性。因为Java的体系太庞大了,而用Java来实现的数据结构与算法,这本书也是唯一一本,所以尽管这本不是那么的好但还是做以推荐。

  第十名:软件工程Java语言实现 英文原书名: Software Engineering with Java

  作者: Stephen R.Schach 译者: 袁兆山等

  这本书没什么多说的,纯理论性的东西,但软件工程的重要也是有目共睹的,而且同样是这个领域中唯一的一本Java书。

posted @ 2005-02-25 14:24 蓝色雪焰 阅读(400) | 评论 (0)编辑 收藏
 

http://scjp.home.sohu.com/ 模拟试题
http://scjp.myrice.com
http://java.sun.com/products/jsp/faq.html
http://www.sun.com.cn/education
http://java.sun.com
http://java.sun.com/j2se/1.4/docs/api/index.html java官方网站的帮助
http://java.sun.com/j2se/1.4/docs/
http://java.sun.com/j2se/1.4/download.html#docs 可下载版本
http://java.sun.com/docs/windows_format.html winhelp格式的
http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html 这个是CodingConvension,就是编码规则。写Java代码,这个是最基本的,必看的资料。

http://61.140.76.55:8080/index.html 木棉数字校园网
http://www.cnkapok.com/course/c_bea3.html weblogic认证
http://www.bea.com.cn/channel/education/index.html
http://www.servlets.com/docs/index.html

http://my-wjl.scu.edu.cn/~xxuzi/ 极品SCJP
http://my-wjl.scu.edu.cn/~xxuzi/
http://jdeveloper.myrice.com/
http://www.servlets.com/cos/index.html Java的上传Bean

http://www.sawin.com.cn/dragon/manual/manualindex.htm
http://61.144.28.245/hjc/web/doc/servlet-jsp/servlet-jsp4.html

www.sybex.com
www.mcp.com
www.bbook.net
www.bjbb.com
www.medias.com.cn
www.phei.com.cn

http://www.justjavajobs.com/jjavj.nsf/autoj/
http://www.psclearn.com/
edge-china.com
http://www.commission-junction.com/track/track.dll?AID=55509&PID=499008&URL=http%3A%2F%2Fwww%2Ejobsleuth%2Ecom%2Fregister%2Ecfm%3F%26ref%3D2261

http://suned.sun.com/USA/certification/java_news_faq.html
http://suned.sun.com/USA/certification/progobj.html
http://suned.sun.com/usa/cert_test.html

http://www.java-cn.net/
http://dboy520.51.net/cgi-bin/javajia/
http://www.javalobby.org/
http://www.uni-koeln.de/themen/java/
http://www.javacats.com/US/articles/MultiThreading.html
http://www.rstcorp.com/javasecurity/links.html
http://www.playjavagames.com
http://physicsweb.org/TIPTOP/VLAB/
http://www.eastjava.com/
http://rigauxf.waika9.com/
http://ww4.chatweb.net/javachat/
http://www.ajug.org/
http://www.mste.uiuc.edu/java/
http://www.acm.org/crossroads/xrds4-2/serial.html
http://abc-java.com/
http://www.chatattack.net/
http://jazz.external.hp.com/src/java/
http://www.jerenajava.com/
http://www.central-java.com
http://www.acm.org/sigs/sigada/education/pages/ada_java.html
http://www.hoskinson.net/java/
http://java.areco.cz
http://www.javamud.org/
http://www.java.online.tr.tc/
http://www.engapplets.vt.edu/

国外:
http://sourceforge.net/projects/jfreechart/
http://www.titan-books.net/
http://www.jiveforum.com
http://www.theserverside.com
http://www.jdance.com
http://foundries.sourceforge.net/java
http://edocs.beasys.com/index.html
http://www.hostj2ee.com
http://www.hostjsp.com
http://www.onjava.com
http://ejbinfo.com
http://www.mgm-edv.de/ejbsig/ejbsig.html
http://www.uml-zone.com
http://www.jguru.com
http://www.ibm.com/developerworks
http://www.ibm.com/deveoperworks/cn ibm新推出一个websphere园地,内容也是很不错的。
国内:
http://www.javaunion.com
http://www.javaunion.org
http://www.javaunion.net
http://www.huihoo.com
http://www.javadigest.net
http://drivejava.www2.cn4e.com
http://www.umlchina.com
http://www.drivejava.com

http://www.javaunion.org/ 中国Java阵线联盟
http://www.javaunion.com Java阵线联盟(Java认证学习资料)
http://www.chinajavaworld.com/ Java开发者(XML教程,模考试题1)
http://javalovers.myetang.com Java爱好者
http://www.cn-java.com 中文Java技术网站
http://www.cnjavaclub.com/ 中国Java俱乐部
http://www.52jsp.com/index.jsp 52JSP
http://www.cnjsp.com/ 中国JSP网站
http://www.jsp001.com/ JSP001
http://www.china-jsp.net/ JSP新升代/也有ASP
http://www.javaxforum.com javaxforum开发指南,SCJP认证资源
http://www.pconline.com.cn/pcedu/empolder/wz/jsp/index.html pconline的一些教程
http://adionline.myrice.com/ 阿迪在线
http://216.239.33.100/search?q=cache:UiFo_1XVUN8C:members.aol.com/mnsjava/referate/AWTReferat/syntax.html+MenuShortcur&hl=zh-CN //常用Java界面控件方法说明

http://www.thejmaker.com/ Java控件
http://www.jpowered.com/ Java控件


http://www.javareport.com
http://www.javaworld.com
http://www.jiveforum.com/
http://www.theserverside.com/home/index.jsp

http://www.gcsuncenter.com/eforum.nsf/eForumFrameset?OpenFrameSet
http://www.esperanto.org.nz/jsp/jspfaq.html
http://www.zdnet.com/pcweek/stories/news/0,4153,410709,00.html
http://developer.netscape.com/viewsource/kuslich_jsp/kuslich_jsp.html
http://web2.java.sun.com/products/jsp/jsp-asp.html
开始http://developer.java.sun.com/
学java怎能不去sun公司的站点?
http://www.chinajavaworld.com/
站长的网站~~hoho~hoho~~
http://www.5xsoft.com/index.html
http://www.mcsebraindumps.com/
http://www.mcsdunion.com/
http://www.helpwork.net/东西比较老
http://www.china-pub.com/computers/ebooknew/main.asp免费前三章
http://www.crackbest.com/工具解密、破解
http://www.nopayweb.com/computerbook/index.shtml英文
http://ebook.it-pc.com/
http://www.pediy.com/
http://www.tldp.org/LDP/lpg/node1.html
http://www.books24x7.com/home.asp
http://www.bestdown.com/
http://www.programfan.com/编程爱好者

http://automation.seu.edu.cn/auto/java/java_resource.htm
里面有Thinking in java 第一版(中文)、第二版(英文)以及很全的scjp认证资料 (最近可能有点问题)

http://person.longcity.net/home1/wenchund/index.htm
有JB5、JB6的破解码以及为数不多的java电子书籍 (也有问题)

http://www.java-cn.net/book/index.jsp
这里书比较多,包括《Thinking in java》、《java2编程详解》、《Jbuilder开发人员指南》、《Java程序设计技巧1001例》。。。还有一些简单程序的源代码

http://www.mindview.net/
这是《Thinking in java》作者的主页,英文版的书也可以在这里下

http://www.vvsoft.net/vvbkss/slctsingleline.asp?编程语言
这里的书很多,但是很乱,有时间的话自己找找吧

http://www.cn-java.com/

http://www.jdon.com/index.html

http://www-900.ibm.com/developerworks
IBM关于java的站点

http://www.csdn.net/develop/list_article.asp?bigclassid=6
CSDN文档中心的一些文章

http://sourceforge.net/

http://drivejava.www2.cn4e.com/download/
posted @ 2005-02-25 14:18 蓝色雪焰 阅读(210) | 评论 (0)编辑 收藏
 
<<太极拳诀>>

欲避此病须知阴阳,
黏既是走;走既是黏,
阴不离阳;
阳不离阴,
阴阳相济方为懂劲,
懂劲后愈练愈精,
默识揣摩渐至从心所欲,
本是舍己从人,
多误舍近求远,
所谓差之毫厘谬以千里,
学者不可不详办焉。
posted @ 2005-02-24 10:17 蓝色雪焰 阅读(249) | 评论 (0)编辑 收藏
 
夫君子之行,静以修,俭以养德。
非澹泊无以明志,非宁静无以致远。
夫学须静也。
才须学也,非学无以广才,非志无以成学。
淫漫则不能精励,险躁则不能治性,年与时驰,意与日去。
遂成枯落,多不接世,悲守穷庐,将复何及!
悲守穷庐,将复何及!
posted @ 2005-02-23 20:31 蓝色雪焰 阅读(273) | 评论 (2)编辑 收藏
 
      这是我从网上下载的一份手机游戏策划模版,基本的东西都有了,值得各位初学者参考,在具备自己风格的策划书中能糅合这里的东西当然是最好了。
--------------------------------------------------------------------------------------------------------------------------------------
JAVA手机游戏策划书基本模版

准备工作:(运行游戏的手机硬件参数)

1、 游戏支持的手机类型

2、 手机实际下载传输速度和传输方式

3、 手机屏幕尺寸大小

4、 游戏采用的开发平台

5、 在手机上游戏运行速度:

6、 手机画面分辨率

7、 手机内存容量大小

一、  策划提纲

1、 游戏目标客户

2、 游戏玩法阐述

3、 游戏内容

4、 游戏*作设计

5、 游戏策划及关卡策划

二、  估计游戏开发进度

1、 demo版本发布时间

2、 alpha版本发布时间\

3、 beta版本发布时间

4、 正式版本发布时间

5、 后续改进版本发布时间

三、  技术参数

1、 图像率新速度

2、 文件安装完大小

3、 文件未安装大小

4、 使用过程中有戏占用内存

5、 占用内存峰值

6、 游戏过程中的通话处理及安全处理

7、 游戏图形特效清单

8、 游戏与*作系统兼容性

9、 图形文件/声音文件/数据文件

10、 目录结构/变动文件清单

11、 使用的动态链接库

四、  游戏中所有音效清单

音效说明

出现位置

五、  游戏所有图形清单

1、 游戏界面部分

2、 游戏动画部分

3、 游戏内部

1)   根据关卡划分的图像清单

2)   游戏人物原创设计

六、  代码开发标准

七、  基本风格设定

1、 风格表述说明、优点及适应考虑

2、 代表其游戏风格的图像

八、  游戏流程图

1、 游戏*作流程图

2、 游戏开发模块流程图

3、 与其他程序接口部分的特别流程图

posted @ 2005-02-22 15:01 蓝色雪焰 阅读(781) | 评论 (0)编辑 收藏
 
组队系统需要什么?帮会系统又需要什么?
加个聊天频道,弄个链表保存一下就叫组队啦?

先看看队伍的定义:共同的,统一的时间,空间,目标。
没有哪个玩家会觉得你打你的怪,我做我的任务这样组队在一起比较有意义吧。
当然,当他们只是想利用组队进行交流的话,这个到无所谓。
但是经常就会有些玩家,由于不明白对方的意愿,而不知道该不该和他组队。

那么如何来改进这个组队系统呢?有些网络游戏做得比较好,就是提供了征求组队
这样的命令,当这个命令发出后,会显示组队的级别的范围。虽然作用很小,但是
起码保证在级别相差不是太大的情况下,各个玩家的意愿基本是相同的这样的要求。

然后说说时间和空间。其实这个没什么好说的,时间上来讲,肯定是统一的,因为
组队这个行为本身就是及时发起的。对于空间来说,则比较难保证,因为玩家的行
动总是会按照自己的意愿来。所以说,召唤队友这种魔法的设定实际上是一种对于
强调组队空间性上的一种比较无奈的选择。

好了,理解了上面各项因素之后,再来看看该如何设置组队。
首先,你需要给希望征集队友的队长,和没有队伍的玩家提供两种找队友的方式。
那么,如何做到能找到合适的队友呢?这里有两种方法,一种是提供一些事先制定
好的征求队友的语句,供玩家选择,然后设置一些在默认的环境下,默认的征求队
友的方法。

另外对于队伍的结构,或者说对于队长位置的重视性,应该足够重视,否则在玩家
组队的同时,结构可能会由于缺乏核心的指挥人员而比较松散,从而导致队伍最初
建立的时候的初衷无法完成。比如队长应该可以使用召唤队友之类的命令来形成空
间上的统一,或者可以在队伍频道中使用不同颜色的字来区别于普通的队员。

下面来谈谈关于帮会
帮会和队伍有些不同的就是时间上有不统一这一因素在里面,那么解决这个问题的
首要任务就是给不同的帮会提供各自的留言系统来尽量的统一其时间上的不确定性。

接下来关于帮会的还有一些问题,这个就要从帮会的劣势来讨论解决方法了。先来
看看关于帮会的结构中都有哪些缺陷:
1,集体交流的时间是一个方面,也就是上头讲到的时间不统一的问题。
2,领导人的问题会很大程度上影响整个帮会的效率。
3,队员水平的参差不齐,会在某种程度上影响其他队员的发挥。
4,不同的意见会导致矛盾的产生。
5,帮会如果粘合得太紧,会导致一种排外情绪。

那么再来看看如何设计能最大程度的弥补以上所描叙的关于帮会的风险问题。
这里要提出一个最关键的概念,就是一个帮会的Interchangeability(自我调节
能力)那么我们如何来从设计上提供这样一种这样的能力呢?最简单的方法是提
供一套vote/elect机制,也就是说投票和选举的机制,可以给帮会内部提供一些
自我调节的能力。至于投票的内容,可以包括选举领导人,或者踢除/添加新的会
员。

上面的解决方案在解决某些问题的瓶颈的同时也扩大了时间不统一的问题。比如
说某位帮会会员长时间不上线,导致投票的决策下不来,如何解决?这实际上就
牵扯到一些设计细节了,比如说可以设置一个due的时间之类的来解决。

另外一点很重要的因素,就是要正确的看待帮内的矛盾。所谓正确看待,就是要
鼓励玩家将矛盾显性化,而不是隐藏在私底下,而很多时候,很多矛盾是否公开
或者保密也就仅仅只是一念之差的问题。而很多时候的矛盾是由游戏内部资源分
配不均匀造成的,矛盾的产生直接受到社会舆论的影响,如果能在游戏中宣扬一
种关于矛盾公开的舆论,可以一定程度上减少这种现象带来的影响。

既然谈到这种做法,就不得不谈谈关于玩家在帮会里面的行为取向,这里有四点
定理:
1,帮会成员总是会比较热心的参加帮内的活动
2,帮会成员总是会比较努力的致力于帮会的发展
3,帮会成员总是很自豪把自己和帮会联系到一起
4,帮会成员总是喜欢把帮会的目标作为自己的目标

当有帮会成员的行为取向偏离了以上四点的时候,我们成他为边缘人物。最容易
产生矛盾的地方就往往是边缘和帮会热心派成员之间的矛盾。明白了这一点之后,
其实用帮会权限系统也可以比较好的控制矛盾的产生。比如分为,帮主,副帮主,
资深帮众,普通帮众之类的,不同的级别对帮会的资源有不同程度的访问权限。

最后一点就是关于帮会缺陷中的第5点,排外因素。其实对于这一点,目前的各个
游戏都已经做得比较完善了,就是加强帮会间的互动,比如说帮会战就是一种很
好的互动,同时也可以增加经济上或者人员上的互动就更好了。
posted @ 2005-02-21 00:46 蓝色雪焰 阅读(348) | 评论 (0)编辑 收藏
 

要把J2ME程序与J2SE程序区分开来,其依据就是J2ME运行所处的受限环境。多数J2ME系统的主要受限条件就是可以存储和运行程序所需内存的大小。例如,许多MIDP设备限制应用程序的尺寸不大于50K,这远远不及Server端J2SE运行环境下那些成兆的程序。实际应用中,程序会很容易超出这些限制条件。通过本篇您将学到一些减小程序尺寸大小的技巧,并在下面的例子中实践这些技术。这个例子MIDlet仅仅显示一个文本框并在其内容改变时发声。

package com.j2medeveloper.techtips; 
import javax.microedition.lcdui.*; 
public class BeforeSizeOptimization extends 
                                      BasicMIDlet { 
 public static final Command exitCommand = 
                      new Command( "Exit", 
                                 Command.EXIT, 1 ); 
 public BeforeSizeOptimization(){ 
 } 
 protected void initMIDlet(){ 
     getDisplay().setCurrent( new Mainform() ); 
 } 
 public class Mainform extends form { 
     public Mainform(){ 
         super( "Mainform" ); 
         addCommand( exitCommand ); 
         append( textf ); 
         setCommandListener( new CommandListener(){ 
             public void commandAction( Command c, 
                                    Displayable d ){ 
                 if( c == exitCommand ){ 
                     exitMIDlet(); 
                 } 
             } 
           } 
         ); 
         setItemStateListener( 
                           new ItemStateListener() { 
             public void itemStateChanged( 
                                        Item item ){ 
                 if( item == textf ){ 
                     AlertType.INFO.playSound( 
                                     getDisplay() ); 
                 } 
             } 
           } 
         ); 
     } 

     private TextField textf = 
               new TextField( "Type anything", null, 
                              20, 0 ); 
 } 
}


虽然这个MIDlet在此仅作为一个例子,但使用的尺寸优化技巧可以适用于任一J2ME的profile上。


注意,上面的MIDlet类需要下面的辅助类:

package com.j2medeveloper.techtips; 
import javax.microedition.lcdui.*; 
import javax.microedition.midlet.*; 
public abstract class BasicMIDlet extends MIDlet { 
 private Display display; 
 public BasicMIDlet(){ 
 } 
 protected void destroyApp( boolean unconditional ) 
                 throws MIDletStateChangeException { 
     exitMIDlet(); 
 } 
 public void exitMIDlet(){ 
     notifyDestroyed(); 
 } 
 public Display getDisplay(){ return display; } 
 protected abstract void initMIDlet(); 
 protected void pauseApp(){ 
 } 
 protected void startApp() 
                 throws MIDletStateChangeException { 
     if( display == null ){ 
         display = Display.getDisplay( this ); 
         initMIDlet(); 
     } 
 } 
}


用J2ME WTK打包时,本例子MIDlet占用4K空间。


减小尺寸的首要步骤就是通过修正程序的功能实现来去掉多余的类。程序的所有功能确实必须都实现吗?用户可以不需要这些“附属功能”吗?要设计尽可能小的程序,这里的MIDlet例子已经相当小了。

第二步就是深入考察程序定义的内部类,特别是匿名类。记住,每个类文件都有一定量的与之相关的系统开销。即便最普通的类也有系统开销。

public class foo { 
     // nothing here 
 }


编译上边的类,生成的类文件大约200byte大小。比如实现一个事件监听器,就是对匿名类的常见使用。在例子MIDlet中就定义了两个此类的监听器。接下来进行的最简单的优化就是,让主MIDlet类实现CommandListener和ItemStateListener接口,并把监听器代码移至此处。记住,多个对象可以使用同样的监听器。必要时,可以使用传递至commandAction和itemStateChanged方法的参变量来区分它们。

内部类也可使代码过大,因为编译器必须生成特殊的变量和方法,以便内部类可以访问包含它们的类的私有内容。请参考内部类的规范以获取更多信息。

第三步,尽量使用现有的类。例如,基于CLDC的profile没有构造集合类,所以我们可以用内建的Hashtable和Vector类来实现之。构造MIDP程序时也可采用此法。例子MIDlet中定义了一个form字类来生成主表,可以容易的如下直接生成:

mainform = new form( "Mainform" ); 
 mainform.addCommand( okCommand ); 
 mainform.setCommandListener( listener );


这里没有正确或者错误的答案,只是要推敲。

第四步就是破坏程序的继承关系。你也许把相关的代码放到一个或多个抽象类中,这是OOD中为提高程序间代码重用的推荐做法。虽然破坏继承关系与你所学知识相违背,但简化的继承关系更有意义。特别的,当你的的抽象类――可能来自其他项目――仅仅被继承一次时,破坏继承关系的结果不言而喻。例如,例子MIDlet继承了BasicMIDlet类,但两者合并为一个类。

第五步就是要缩短名字长度,如包名、类名、方法名和数据元素名。看起来有些蠢,但一个类文件确实包含太多的符号信息。缩短各量的名字可以缩小生成的类文件尺寸。这种节省不会特别明显,但多个类中进行总加的结果还是可观的。包名对减小尺寸来讲特别合适。MIDP程序是完全自我包容的,完全可以不使用包名,因为在手持设备上包名根本不可能与其他类名冲突。例子MIDlet中,可以把com.j2medeveloper.tchtips包名去掉。

注意,一般来讲,缩短名字不需要手工去做,要用一个“混淆器”去做。“混淆器”的主要功能是“隐藏”程序代码,使之不能通过反编译读出。它的副作用是减小了程序的尺寸。因为隐藏过程主要通过更改方法和数据成员的名字来完成。有一个开源的混淆器称为RetroGuard,可以免费从http://www.retrologic.com得到。也有一些商业包可用。(当为基于CLDC的profile混淆时,记得在预校验之前混淆,否则混淆器将使类文件中的预校验数据失效。)

最后,深入数组的初始化。(例子MIDlet没有做数组初始化,但对程序来说初始化是重要的一步) 在编译时,一个数组初始化声明如下所示:

int arr[] = { 0, 1, 2, 3 }; 
而实际生成代码的过程如下所示: 
<ccid_nobr>
<table width="400" border="1" cellspacing="0" cellpadding="2" 
 bordercolorlight = "black" bordercolordark = "#FFFFFF" align="center">
<tr>
    <td bgcolor="e6e6e6" class="code" style="font-size:9pt">
    <pre><ccid_code> arr[0] = 0; 
 arr[1] = 1; 
 arr[2] = 2; 
 arr[3] = 3;


这个过程可以通过使用Java 2 SDK中附带的javap工具把二进制代码反编译成类文件去看(使用-c选项)。也许你会诧异于看到的内容,特别当你希望看到的是一排排二进制常数时。有两种方法可以让你看不到反编译的程序代码,(1)把数据编码为字符串,运行时解码之,或者(2)把数据存为二进制文件并与程序打包,用类装载器的getResourceAsStream方法在运行时存取之。

以上只是一些指导性的方法,对每个J2ME程序而言,这里没有具体到步骤。但是多数方法可以应用的本例。优化后的MIDlet如下所示:

import javax.microedition.lcdui.*; 
import javax.microedition.midlet.*; 
public class ASO extends MIDlet 
              implements CommandListener, 
                         ItemStateListener { 
 private Display   display; 
 private form      mainform; 
 private TextField mainformTF = 
               new TextField( "Type anything", null, 
                              20, 0 ); 
 public static final Command exitCommand = 
                      new Command( "Exit", 
                                  Command.EXIT, 1 ); 
 public ASO(){ 
 } 
 public void commandAction( Command c, 
                            Displayable d ){ 
     if( c == exitCommand ){ 
         exitMIDlet(); 
     } 
 } 
 protected void destroyApp( boolean unconditional ) 
                 throws MIDletStateChangeException { 
     exitMIDlet(); 
 } 
 public void exitMIDlet(){ 
     notifyDestroyed(); 
 } 
 public Display getDisplay(){ return display; } 
 protected void initMIDlet(){ 
     mainform = new form( "Mainform" ); 
     mainform.addCommand( exitCommand ); 
     mainform.setCommandListener( this ); 
     mainform.setItemStateListener( this ); 
     mainform.append( mainformTF ); 
     getDisplay().setCurrent( mainform ); 
 } 
 public void itemStateChanged( Item item ){ 
     if( item == mainformTF ){ 
         AlertType.INFO.playSound( getDisplay() ); 
     } 
 } 
 protected void pauseApp(){ 
 } 
 protected void startApp() 
                 throws MIDletStateChangeException { 
     if( display == null ){ 
         display = Display.getDisplay( this ); 
         initMIDlet(); 
     } 
 } 
}


关于作者:Eric Giguere是来自Sybase下属iAnywhere Solutions的软件开发人员。他致力于手持设备和无线计算领域的Java技术。他是滑铁卢大学的数学学士和数学硕士,写了很多有关计算的文章。

posted @ 2005-02-20 18:21 蓝色雪焰 阅读(264) | 评论 (0)编辑 收藏
 
  手机游戏产业价值几何?对于包括移动运营、内容和服务提供在内的整条移动应用产业链而言,在所谓手机游戏产业的宏观概念下到底潜藏着一个多大规模的市场?可以挖掘到哪些市场亮点和创新的应用种类?又有多少亦明亦暗的产业障碍还亟待跨越?

  表面看来,手机游戏正在成为运营商迅速创收的新渠道,并且似乎即将成为语音呼叫和短信息之外存在的又一个潜力巨大的移动服务市场。运营商通过收取游戏下载费用来增加ARPU值并同时拉动数据服务消费量实现增长。服务和内容提供商(SP和CP)们则通过出卖游戏下载版权和提供下载服务平台赚取更多的利润提成。

  事实上,手机游戏产业早在上世纪90年代后期就已经初具雏形。当时,GSM手机基本都内嵌了一些简单的黑白游戏,比如经典不衰的“贪吃蛇”和“俄罗斯方块”。在当时,是否内置有这些游戏已经成为一款畅销手机的必备要素。紧接着,短信息(SMS)服务所取得的巨大成功(世界各地每个月在SMS服务上花费近300亿美元)使得运营商们看到了移动数据服务市场蕴含的庞大潜力,并且萌生了将手机游戏培养成移动数据服务的下一代杀手应用的冲动。

  现在就让我们来揭开这位“杀手”的神秘底牌吧。

底牌一:到底有多少游戏形式可供挖掘?


  迄今为止,业界所能挖掘到的手机游戏种类大致有五种类型(这里不包含N-GAGE这种纯粹是游戏机和手机的融合产物),不同的游戏类型在开发难度和市场容量方面存在着较大差别。

  嵌入式游戏

  手机出厂时固化的嵌入式游戏无疑是所有手机游戏的起源。Nokia算是始作俑者之一,当时它的开发人员向其经典的6100系列手机添加了“贪吃蛇”游戏。与短消息非常相似,“贪吃蛇”游戏自然而然地流行起来:没有主动的营销,只是凭借口碑的传诵就可以流行起来,而6100和3310系列手机也间接受益成为了当时的畅销手机。

  对于这一意外的成功(Nokia认为大约每周会有100万手机用户在经常玩这款游戏),让许多运营商开始相信手机游戏的确拥有强劲的发展潜力。唯一的不足在于这些游戏无法更新,因此很容易被时尚的潮流所厌倦和抛弃。手机厂商们必须不断地开发和销售更多的新游戏来取代它们……就这样,手机游戏市场终于诞生了。

  SMS游戏和MMS游戏

  从易用性、吸引力等角度看来,短信息(SMS)完全不适合被作为一种游戏类型。但是,SMS却适用于那些早期的文字MUD(网游的前身)游戏,游戏的玩家相互发送简短的文本消息,用以控制其游戏角色的行为。此外,对于一些吸引力颇高的“投票式游戏”以及其他智力测验类游戏,SMS也是相当适用的游戏手段。

  我们可以看到,尽管SMS并非理想的游戏媒介,但它是让手机游戏用户和潜在用户习惯于使用手机进行游戏娱乐的绝妙方式。

  另一方面,我们看到多媒体消息服务(MMS)已经成为SMS发展的下一阶段,它为用户简单的文本体验增加了图形、照片乃至视频片段等新内容元素。

  但是从玩游戏的观点看,MMS在功能本质上相比SMS并没有实现根本性的提升。业界认为MMS仍可以被用作实现某些比较初级的互动游戏,但总体而言,移动游戏业并不看好MMS平台,相反注意到更有效和更具活力的Java/J2ME技术已经日趋成熟,而手机游戏的发展为此也即将登上新的高峰。

  Java/J2ME:手机游戏的未来?

  Java/J2ME技术是推动手机游戏向更高层次进一步发展的关键动力。

  这些技术是移动运营商、手机制造商和应用开发商进军手机游戏领域时一直期待的基础元素。通过Java/J2ME实现拥有动画和声音的可下载游戏,这就是手机游戏应用下一阶段的发展方向。

  由Java/J2ME技术构建的可下载游戏不仅使手机游戏可以更为轻易地吸引到用户的兴趣,同时也有利于创造更为多样化的计费形式。例如对于一些售价低廉的游戏,可以参照类似街机游戏的业务模型进行销售。用户可以先付费,然后一直玩这款游戏直到他们的预付费或游戏时间用完为止。对于另外一些手机游戏,运营商可以允许用户一次花费更多的钱而获得无限制的游戏时间,用户甚至还可以购买某一游戏,然后依照版权规定的相关协议将此款游戏转让给其他玩家。

  当前,具有Java应用下载功能的手机已经在市场上逐渐流行起来,甚至可能从2004年起将被作为新型手机的标准配置。另一方面,随着功能更为强大的手机芯片、更多容量的内存以及正在大规模开发中的Java游戏的出现,未来的手机无疑将成为一个真正的游戏平台。

  Flash:甚至比Java更好?

  当然,并不是所有人都把Java(特别是移动版的J2ME)看作手机游戏发展的真正方向。反对派的意见认为,Java游戏目前的性能表现很难激起游戏玩家的真正兴趣。同时,我们看到如今在互联网上几乎所有的Web游戏已经开始被Flash游戏所统治,Java游戏的辉煌正在逐渐褪去。所以Flash的支持者们相信,同样的情形必将在手机游戏身上重演。

  除了J2ME程序处理周期长,对于手机芯片的运算能力要求较高以及运行过程相当耗电等缺点之外,在游戏方面J2ME的最大缺点的确让人难以想象—竟然是玩家在游戏中无法同时按下两个功能键。无论是游戏老手还是缺乏经验的新手,这都是玩家所厌恶的一个致命缺陷。所幸Flash不仅克服了这一缺点,而且对于更为复杂的图形与声音处理也应付自如。有专业咨询师认为,在目前Java当道的情形下,敢于将Flash嵌入到手机和手机游戏中的厂商还寥寥无几,但是不可否认Flash最终将成为所有手机游戏应用的标准操作环境。

底牌二:手机游戏市场究竟有多大?


  我们首先将手机游戏分为两类,然后再分析各自的市场容量。第一类是包括智力测验、文本问答等在内的基于短信息(SMS或MMS服务)的游戏。第二类是“复杂的可下载游戏”,这其中包括了绝大多数未来的游戏应用。

  基于短信息的游戏

  基于短信息的游戏往往定价也偏低,因此这类游戏的收入潜力可能不如人们最初想像的那般乐观。但是考虑到使用短信息的庞大用户群就是这种游戏的潜在市场,因此我们仍将最终得到一个巨大的市场容量模型。

  在全球部分发达地区,基于短信息的手机游戏服务已经开始赢利。特别是在欧洲,已经初步形成了一个规模达数十亿美元的行业市场。然而反观北美市场的规模,目前则只有令人失望的8亿美元而已,在2008年,北美市场规模预期将超越10亿美元大关。

  复杂的可下载游戏

  未来几年中,可下载的手机游戏市场预计将出现跨国和跨地域的发展趋势。在一些地区,如果2.5G和3G手机以及相关网络的渗透率较高,那么可下载的手机游戏市场份额也会相应出现明显的增幅。当然,我们不能忽视短信息游戏所蕴含的市场能量,其中许多的游戏很可能将得到用户的广泛接受甚至成为社会文化的一部分。这些积极因素都将为第三方游戏提供商和提供游戏下载的移动运营商带来丰厚的利润。

  尽管今后几年中手机游戏下载的价格将呈整体下降的趋势,但这一市场的赢利前景仍然非常乐观。据Juniper Resource的研究显示,目前全球范围内可下载的手机游戏已经形成了一个价值30亿美元的巨大市场。今后几年中,随着市场领域的不断扩大以及中高端手机价格的相应下降,其市场规模将实现翻番,向60亿美元迅速靠近。这的确是一次真正的商机!

  当然,Juniper Resource表示,若想让这一切预测成为现实,那么必须满足两方面的前提条件:始终有关键的市场推动因素以及有益于市场规模化的运营管制和计费基础。

底牌三:有多少产业障碍亟待解除?


  手机外形因素

  所有移动娱乐服务的明显缺点是屏幕尺寸过小和分辨率太低。直到不久前,手机仍不是专门为玩游戏而设计的。彩屏技术的出现增加了对使用者的吸引力,事实上,彩屏也是目前新手机销售的最大推动因素。但是,生产适合于彩色屏幕性能的手机游戏完全取决于游戏生产商。嵌入式游戏和某些复古游戏最适合于基本的移动电话屏幕,因为它们的黑白屏幕分辨率不高而且符合用户对某种传统体验的期待心理。但对于其他大部分手机游戏而言,则需要更高分辨率的屏幕。

  手机内存制约因素

  有限的手机内存可满足今天大多数普通游戏和其他娱乐应用的需要,但是在新一代游戏上则成为最大的障碍。例如,一般手机(甚至是某些市面上更先进的手机)一次也只能保存4个游戏。这意味着玩家的游戏体验已经受到限制。他们必须做出选择:要么保留喜爱的游戏并有效地保存它们,要么在他们希望尝试新游戏时必须放弃他们以前喜爱的游戏。

  新型手机的普及

  目前的一些游戏在设计上几乎可以适合大部分手机。但是,如果游戏市场想拥有一个持续繁荣的未来,那么能够处理彩色图像、复合音色并最终可处理Java下载的手机数量必须大大增加和普及。也许,只有2.5G和3G手机具有这种可能性,并引发新一波互动游戏的浪潮。

  网络技术

  目前,多数用户拥有基于2G的手机,它们一般适合于通过SMS提供简单的智力竞赛类的游戏和服务。为了获得更丰富的游戏体验,用户将需要WAP、2G乃至3G手机,但距离规模应用仍有很长的路要走。此外,在消费者心目中,WAP在许多方面的形象不佳,性能不可靠,速度又慢得令人难以忍受。但是WAP可能是早期提供手机游戏的首选平台。当然,这必须是一种新的、改进的WAP版本,当在2.5G或3G网络上使用时,它的性能与WAP 1.0早期广告承诺的“无线Internet”非常像。当然,考虑到它的形像缺损,未来的市场推广应尽量避免提到“WAP因素”。
posted @ 2005-02-20 18:15 蓝色雪焰 阅读(280) | 评论 (0)编辑 收藏
 
随着手机普及率的提高以及附加功能越来越丰富,被称为“拇指一族”的手机玩家的数量也急剧攀升,形成了一个相当特殊的消费族群。日前,记者在“空中网”的会客室里见到国内最大手机在线游戏“夺宝中华”的头号玩家陈剑(化名)。这位被称做“中国手机游戏第一人”的传奇玩家,给人的第一印象并不太起眼:三十来岁的年纪,略显瘦削的身材,一脸疲惫的神情。

-最适合我的娱乐方式

——“它没有富丽堂皇的画面和音效,但它是一种可以移动的娱乐。”

作为某名牌大学的毕业生,陈先生眼下在深圳拥有一家化工贸易公司。由于生意上的缘故,他使用手机的历史可以追溯到10年前,当时他就已经是中国移动的大客户了。

三年多以前,陈先生首次接触手机游戏,起初只是感觉好奇,并没有怎么上瘾。直到在不久后加入了空中网的“夺宝中华”才真正被它吸引住了。

与那些瞄准运营商提供的丰厚奖品的玩家不同,对于每天为生意奔波的陈先生来说,手机在线游戏只是最适合他的一种娱乐方式,“与PC在线游戏不同,它没有富丽堂皇的画面和音效,但它是一种可以移动的娱乐,不论到哪里,只要能接收到GPRS的信号,就可以玩,很方便。”

-两年手机费花了三万元

——“我只是想让自己的生活充实起来,谈不到什么'丧志'。”

后来,陈先生越玩越入迷,曾经创下了连续18个小时在线的纪录——“那时,一睁眼就是'夺宝'”。在短短的两年中,他光是在手机资费方面就花去了3万多元。

陈先生说,今年的前五个月里,“夺宝中华”在搞全国排名,他几乎每天打十六七个小时,名次自然是突飞猛进。但后来,陈先生有一个多月中在游戏里无所事事,“因为我能完成的任务还没有在游戏中开放呢。”

在“夺宝”的两年里,陈先生为了在游戏中保持自己的领先地位,连续换了五部手机。如今,他每天都带三部手机在身边,每一部随时都可以上线。

大量的金钱投入再加上体力透支,生活和事业必然会受到一定的影响。“在玩得最疯的那一段,如果有订单来,我都是让别人去接,非要我去的,我就今天拖明天,明天拖后天……真是耽误了一些生意。”不过,他并不同意有人批评他“玩物丧志”,“我如今虽然不算非常富有,但也有一定的经济基础了,我只是想让自己的生活充实起来,谈不到什么丧志。至于为此损失的,我会想办法弥补。”

-游戏中交的朋友无话不谈

——在“夺宝中华”排名前十位的玩家基本上都是广东人。

既然是一种在线交流的游戏方式,自然少不了会结交到一些朋友,而这也与游戏用户所在的区域有关。根据“空中网”的统计显示,在所有“夺宝中华”的注册玩家中,大多都来自南部沿海发达的经济城市,尤以广东、福建、浙江的手机用户最多。

陈先生说,他所接触的玩友大多都与他的年龄、经历相仿,虽然事业都小有成就,但精神却十分空虚,“极无聊的那种”。在游戏中,大家找到了许多的乐趣,很快就成为了无话不谈的好友。据他介绍,如今在“夺宝中华”排名前十位的玩家基本上都是广东人,年龄都在30来岁。他们曾在线下进行过交流,但主要还是通过电话联系,基本上没有见过面。

-高级玩家手机号能卖上万元

——“我的号码曾经被开价到8000元,现在估计怎么也上万了。”

随着游戏乐趣逐渐减少,许多玩家都会选择放弃游戏,而手机中那个积攒的丰富经验值和道具装备的虚拟角色,便成了不折不扣的“鸡肋”。另一方面,又总有些低级别的玩家想“不劳而获”,而这些“鸡肋”便自然而然地成为了他们渴求的目标。

有需求,就会有交易。和PC在线游戏一样,手机玩家之间也会为此进行私下的交易。据说在“夺宝中华”中,一个高等级的注册号码可以卖到千元以上。“我的一个朋友就把他的号码卖了3000多元,”陈先生说:“我的号码曾经也被开价到8000元,现在估计怎么也上万了!”                       

付出的比收获多

由于任务开放的局限和升级越来越困难,陈先生现在的游戏时间已大幅减少,每天大约只有六七个小时。即便这样,他在游戏中也依然是级别最高的王者,向他挑战成功便意味着新的传奇的诞生。为此,他经常能碰到成群结伙前来叫板的玩家。有一次甚至曾同时与10名玩家对阵,多亏自己的帮派兄弟及时赶到,才将对手打得狼狈收场。

在采访过程中,记者发现陈先生的手一直在微微颤抖,而且还时不时地望望摆在桌子上的手机。当他在讲话中挥动右手时,手掌下部清晰地显出一块凹陷的痕迹,他戏称是夺宝“夺”出来的老茧。看来,手机游戏早已和他生活中的方方面面融为一体了。

玩游戏到了较高的等级,手机号就可以卖出少则上千、多则上万的高价。但陈先生表示对此不屑一顾:“我说他们是学别人装大款罢了。其实,就是真出这么多钱,我也绝对不卖的。毕竟是自己的心血结晶,多少个日日夜夜不眠不休,岂是这点儿钱能换来的?”

记者问到玩手机游戏最大的收获是什么陈先生笑了笑:“肯定是付出的更多一些。”他婉转地表示,由于平时工作的压力太大,没有一个稳定的排解渠道,而手机游戏恰恰带给了他一种舒缓情绪的方式。“平时在生活中,你付出和得到的往往不会成正比;而在游戏中,只要你肯付出、肯花精力,就一定能成功。”而这份超越现实的满足感,也许就是他最大的收获。
posted @ 2005-02-19 22:34 蓝色雪焰 阅读(375) | 评论 (0)编辑 收藏
 

         记得第一次见到FishMan是在清华大学南门旁边的一个餐馆里,当时新浪的好几个版主也都在,Fishman请客,第一印象就是很帅,不大象一个软件公司的CEO,到象是电影明星。他的真名吴锡桑,读出来怪怪的,感觉远不如FishMan这个网名好记。FishMan自己也很喜欢这个网名,有时候还戏称自己为“漏网之鱼”,那次聊天的时候,Fishman谈到自己曾经做过4年的水木清华BBS的技术栏目版主,谈到这些,眼神和语气中透出更多的自信,他说很多朋友都是那时认识的,包括3721的CTO周鸿一,至今,现在水木清华的BBS上还保留着很多他的技术文章。

    不过现在FishMan已经成功的将自己的角色转变为了一个CEO,他现在领导的天下网络软件公司正积极的扩展自己网络游戏的地域,而自己也从一个埋头于编程的开发人员转变为了经常穿梭于各地各大公司之间的决策和管理人。Fishman是一个真正从软件开发人员一步步转变为CEO,其中的过程和艰辛也只有他自己最清楚。

    初露锋芒

    FishMan来自广东的海滨城市汕尾,91年进入暨南大学计算机科学系。刚进大学 参观计算中心的时候,算是第一次见到真正的计算机。此前因为喜欢玩街边的 电子游戏机而报考的电脑专业。比起一进机房就能刷拉刷拉拨弄键盘的同班同学,他觉得简直有些无地自容。然而很快便投入到了对电脑的热情当中,对这些复杂的东西很感兴趣,整天泡在系里的电脑机房,而且慢慢地有了超前意识,开始在图书馆查阅《计算机世界》,《电脑》和《中国计算机用户》电脑报刊等,并把学到的内容进行实践。刚开始是依样画葫芦,后来渐渐地有了自己的思维。倒了1994年,随着Windows编程和多媒体技术的兴起,出现了许多各种题材的多媒体光盘。他开始研究使用原型开发工具技术, 开发一套类似Macromedia Authorware的《南粤多媒体开发平台》,可以用这个工具制作多媒体光盘,软件演示和多媒体课件等等。经过半年的努力,Fishman顺利完成了《南粤多媒体开发平台》的1.0版本。几年的努力终于有了点收获。并为此获得了广东省科委组织专家鉴定的1995年广东省高校杯软件比赛的第一名,并获得计算机世界奖学金。后来他的这个软件还代表代表暨南大学参加1995年12月在武汉大学举行的“挑战杯”全国大学生竞赛,并取得了广东省高校历年来最好成绩。

    那个时代,同很多年轻人一样,求伯君,朱崇军作为成功的程序员也是FishMan的偶像,他们都怀着自己创业的激情。单枪匹马闯天下,毕业后,一个香港的富商投资30万,帮助FishMan在1995年底就开办了自己的公司:广州飞鹰电脑公司。而这个公司的也成为了Fishman再一次的转折点,同时也成为一段崎岖路程的开始。

    创业的艰辛

    当时,飞鹰电脑公司是一家不足10个人的微型IT公司。由于资金的限制,他只能用最少的钱去做最好的事。Fishman已经开始担当的不仅仅是程序员的角色了。他不但要做技术,而且要策划市场推广,销售,代理合作,技术支持。虽然很劳累,但他能够顶得主,但投资方派来的一个在国家单位混日子的50来岁的干部,一个连IT怎么拼写都不知道的总经理确使他领略到了创业的艰辛和无法忍受的束缚。

    Fishman很清楚每个版本的软件都有它的生命周期和不足,看着Internet的逐渐普及,97年初他就开始提议开发飞鹰4.0版,增加Internet特性,遭到总经理的否决。有几个公司和单位看上他们的产品,希望能投资飞鹰电脑公司,遭到总经理的否决。

    在飞鹰3.0版获得1997年12月第三届中国PC应用软件设计大奖赛优胜软件, 名列工具类软件第一,并因此获得了中国软件行业协会理事的职位的时候,IDG派人前来飞鹰电脑公司洽谈,希望投资进来, 要求提供一份商业计划书,再次遭到总经理的否决!

    更为强烈的打击接踵而至,公司为了其他的事情决定暂停飞鹰4.0版的开发。这下使得本来就劳累过度的FishMan无法承受,一怒之下病倒了。并于98年7月离开了飞鹰电脑公司。后来他提到这段痛苦的经历将他带入了更深层次的思考之中,开始静下心来思考中国软件产业的问题。他认为:中国模式的资金与技术的合作,受伤的总是技术人员。很多著名的程序员都吃过这个亏,并且提到了周鸿伟、王志东等等。中国的很多软件企业,仍然摆脱不了原始的作坊模式,原始的管理模式。几个人找台电脑找个地方就是一家软件公司,能真正走向成功的少之又少。中国的软件产品,仍然只是仅有的几个品种。 在国外微软等航空母舰型企业的唑唑进逼和盗版小贩的摇旗呐喊之下,很多软件企业在中国IT史上闪了一下就消失了。那时的Fishman极其痛苦,亲眼身边搞技术的朋友一个个去了美国,不禁叹息:难道只有美国才是软件技术人员的乐土吗?

    网络使Fishman开始了第二次创业

    网络给了程序员很大的机遇和挑战,很多公司和个人赶上了网络的大潮,便成就了一番事业,而有很多人并没有意识到网络带给程序员的机会,于是现在还是程序员。其实对于程序员,对技术发展方向的敏感性决定了是否能够在转折的时候把握住这一切。程序员是关注技术的,但不等同于只有技术。

    网络风暴开始悄无声息的刮了起来,99年1月,FishMan加盟了刚成立的博大国际互联网公司,成为了博大公司的第二位员工。不久之后,在他的带领下,博大推出了邮件列表引擎,调查引擎,域名转向和网络辞海等产品。

    偶然的一个机会,Fishman遇到了中文热讯的创始人之一的陈仲文,陈仲文问FishMan为什么要出国,他说:“我需要一个新的起点,不想再做作坊式开发的软件。我需要一个软件公司,有足够的开发人员,规范化的开发模式和国际营运模式的背景。希望把软件公司做大,效益做好”。可以说,陈仲文是一个让Fishman感受到机会就在我身边的人。他建立中文热讯的时候,根本就不看好。几个人弄了不到一万元拼命做没有技术含量的网页,被拷贝和取代的可能性很大,也就是说,成功的概率太小。可是他们成功了,先是被IDG注资,后来合并成梦想热讯集团。

    二人的想法非常的一致,安装这个考虑,他们拟定了两份商业计划书。1999年11月,成功的从香港Myrice总公司吸引了投资,创立了仙童数码科技有限公司(CNTOMI.COM)。没有过多久,另外一份创办网络游戏软件的商业计划书也得到了投资,这就是后来成为了国内最大的网络图形MUD游戏开发商天夏科技有限公司。在仙童数码,他的角色是CTO,负责代表公司技术形象、策划公司产品的开发、技术难题攻关、规范开发流程、技术员工的招聘、合作厂 商的联系、生产部门(开发部,产品部,QA部)的日常管理。

    在仙童数码,他开始将自己的理念灌注其中,建立规范,公司的部门架构设立了之后,每个职位都准备一份工作职责范围,日常工作内容和工作规范。把如何做好该工作岗位,如何书写工作报告,如何制订工作计划等等的内容都通过规范文档详细做好。他强调是的团队作战能力,市场部及产品部携手负责产品开发的前期准备工作,开发部准备需求分析、技术可行性分析和系统分析文档,然后提供工作文档给质检部和产品部。开发部负责程序编写,质检部准备测试文档,产品部设计网站界面,技术支持准备维护手册。编码和测试交替进行,当产品质量达到要求后,才发布新的软件产品。研究部门对目前潮流的新技术进行深入研究,并编写技术可行性报告和制作一些软件样品,最后上交给公司的管理层进行决策。

    转眼之间一年过去了,FishMan仍然在寻求着突破自我,看着自己一手带大的仙童数码更加不断的成熟和发展,他的内心也充满着另外一种渴望。FishMan卖掉了自己在仙童数码的股份,转到了同样是自已一手参与创建起来的从事网络游戏开发的天夏科技有限公司并担任CEO。

    在Fishman眼中,CEO不仅仅是一种称谓,而是同国际企业接轨的一种称呼,做CEO,不是一个名字的改变,而是从整个软件公司的具体运作上要按照国际标准。走出国门,才能真正了解国外的现状,才能做一个真正的CEO。他认为在这方面,其实也适用于程序员,虽然只要是编程,无论多么偏僻遥远,都可以称为程序员,但如果能够真正在技术上和国外接轨,从软件开发规范上学习国外的标准。

    Fishman曾经说过:“网络给了我们很多的机会,但是一直不敢去涉足真正的网络公司,他总觉得软件公司更真实,做技术更保险,更加适合自己,无法放弃对软件开发的情结。但是他还是非常感激网络的,网络给了软件更多的机会,无论是个人还是软件产业。”他还是无法完全放下程序员对技术的钟情。     程序员关心的是软件工程,技术方案,编程技巧和协同工作等等,目标是做个技术高手。压力来自技术的推陈出新,技术难题的解决,保证程序的质量和开发进度等等。这些都是可以通过自身的努力解决的,也就是说程序员自己可以把握的。管理者关心的是软件工程与质量控制,技术壁垒,市场切入点,成本控制,市场推广,销售渠道,政府政策,版权保护,吸纳人才,售后服务等等,目标是让公司获取收益,得到生存和发展的空间。他的压力来自公司的目标和发展机会,需要协调公司内部的运转和外部的关系。特别是公司小的时候抗风险能力很差,CEO要协调公司的资金,人员,市场和定位的矛盾。不容易把握,努力了也不一定有所改善,一不小心就会翻船。两者的转变是从局部考虑问题到全局考虑问题。一个成功是程序员-->项目主管-->开发经理-->CTO-->CEO这么过渡过来的。

    虽然已经取得了很多成绩,但FishMan一直也不敢放松,对于自己一路拼搏的征程,感叹的说道:“蓦然回首,投身于中国软件行业已经五年了。我曾经满腔热血,以不眠不休的编程为乐;曾经意气风发,登上银光闪耀的领奖台;曾经深受打击,想漂洋过海逃避失意;也曾经峰回路转,再次创业风起云涌。一切的一切,岂是言语所能表达。在饱经风霜之后,不变的只有对软件产业的信念!”

posted @ 2005-02-18 22:29 蓝色雪焰 阅读(220) | 评论 (0)编辑 收藏
 
使用MIDP(Mobile Information Device Profile)的开发人员经常会抱怨用些什么办法才可以在一个MIDlet上显示动画。MIDP 1.0 没有直接提供对动画的支持(正在开发中的MIDP 2.0支持),但真要是自己去实现,其实也并非是一件很难的事。

任何动画的最基本的前提,是要在足够快的时间内显示和更换一张张的图片,让人的眼睛看到动的画面效果。图片必须按照顺序画出来。从一张图片到下一张图片之间的变化越小,效果会越好。

首先要做的,是使用你的图片处理软件(比如ps或者firework)创建一系列相同大小的图片来组成动画。每张图片代表动画一帧。

你需要制作一定数量的祯--越多的帧会让你的动画看上去越平滑。制作好的图片一定要保存成PNG(Portable Network Graphics) 格式,MIDP唯一支持的图片格式;(有两个办法让你刚做好的图片在MIDlet上变成动画。第一,把图片都放到一个web服务器上,让MIDlet下载他们,MIDP内置的HTTP支持。第二个办法更简单,把图片用MIDlet打包成jar文件。如果你使用的是J2ME开发工具,把PNG文件放在你的项目文件里面就可以了。

动画的过程其实更像帐本记录:显示当前帧,然后适当地更换到下一帧。那么使用一个类来完成这个工作应该是很恰当的,那好,我们就先定义一个AnimatedImage类:

import java.util.*;
import javax.microedition.lcdui.*;
// 定义了一个动画,该动画其实只是一系列相同大小的图片
// 轮流显示,然后模拟出的动画
public class AnimatedImage extends TimerTask {;
private Canvas canvas;
private Image[] images;
private int[][] clipList;
private int current;
private int x;
private int y;
private int w;
private int h;

// Construct an animation with no canvas.

public AnimatedImage( Image[] images ){;
this( null, images, null );
};

// Construct an animation with a null clip list.

public AnimatedImage( Canvas canvas, Image[]
images ){; this( canvas, images, null );
};

// Construct an animation. The canvas can be null,
// but if not null then a repaint will be triggered
// on it each time the image changes due to a timer
// event. If a clip list is specified, the image is
// drawn multiple times, each time with a different
// clip rectangle, to simulate transparent parts.

public AnimatedImage( Canvas canvas, Image[] images,
int[][] clipList ){;
this.canvas = canvas;
this.images = images;
this.clipList = clipList;

if( images != null && clipList != null ){;
if( clipList.length < images.length ){;
throw new IllegalArgumentException();
};
};

if( images != null && images.length > 0 ){;
w = images[0].getWidth();
h = images[0].getHeight();
};
};

// Move to the next frame, wrapping if necessary.

public void advance( boolean repaint ){;
if( ++current >= images.length ){;
current = 0;
};

if( repaint && canvas != null && canvas.isShown()
){;
canvas.repaint( x, y, w, h );
canvas.serviceRepaints();
};
};

// Draw the current image in the animation. If
// no clip list, just a simple copy, otherwise
// set the clipping rectangle accordingly and
// draw the image multiple times.

public void draw( Graphics g ){;
if( w == 0 || h == 0 ) return;

int which = current;

if( clipList == null || clipList[which] == null
){;
g.drawImage( images[which], x, y,
g.TOP | g.LEFT );
}; else {;
int cx = g.getClipX();
int cy = g.getClipY();
int cw = g.getClipWidth();
int ch = g.getClipHeight();

int[] list = clipList[which];

for( int i = 0; i + 3 <= list.length; i +=
4 ){;
g.setClip( x + list[0], y + list[1],
list[2], list[3] );
g.drawImage( images[which], x, y,
g.TOP | g.LEFT );
};

g.setClip( cx, cy, cw, ch );
};
};

// Moves the animation's top left corner.

public void move( int x, int y ){;
this.x = x;
this.y = y;
};

// Invoked by the timer. Advances to the next frame
// and causes a repaint if a canvas is specified.

public void run(){;
if( w == 0 || h == 0 ) return;

advance( true );
};
};

posted @ 2005-02-17 20:04 蓝色雪焰 阅读(321) | 评论 (0)编辑 收藏
 
游戏策划
(转贴自
http://www.gamemaker.com.cn
1.什么是游戏策划?

  我们今天的主题是游戏策划。因此,我们应该首先明白一个问题,什么是游戏策划?曾经有朋友拿着自己的一些故事来找我们,觉得自己的故事非常感人,如果作出游戏来会非常轰动。如此说来,写一些感人的故事是否是游戏策划?就我们自身的例子来说,我们感到一个好的故事离一个好的游戏相差实在是太远了。我们的《水浒英雄传—火之魂》是根据中国古典名著改编的,为了融合现代人的观点和口味,对原著的改编非常之大,就我们本身的故事脚本而言,可以说看了都说好。但做成游戏后就是另一回事了。且不说玩家的评论,单说我们自己都感到没有完全表达出脚本的内涵。并非用好的原料就能作出一道好菜。

  这不是说我们的制作人员的水平问题,而实实在在是人与人之间的思维和感受的不同所造成的。对一个故事而言,并非所有人都有同样的感受和评论。即使是一部电视剧,不同的人就会有不同的评论。就更不用说将一个故事给了七、八个甚至更多的不同个性不同思想的人,让他们做出一个让成千上万人欣赏的故事,其结果是可想而知的了。讲这些的目的是使有兴趣于此的朋友注意一点----一个故事对一个游戏而言,只是万里长征的第一步。

  当然,有一些游戏根本就与故事扯不上边,如模拟类、体育类游戏大多于此。还有一些朋友拿着一厚沓脚本来与我们商量,把他们的脚本制作出来。在他们的脚本中有详细的故事、菜单设计、游戏规则设计,表面上非常全面。他们管这个叫做游戏策划。也就是说他们认为写了一个故事,设计了一些菜单的功能,制订了一些游戏的规则,就是游戏策划。如果真的是这样,事情就变得简单多了。

  我相信,看这篇文章的朋友都抱着各种心态----好奇!看一看游戏制作的内幕!或者是自己想尝试一下。别人的游戏玩多了,总觉得自己有一些好的想法,绝对能策划个好游戏。但如果你真是想策划一个游戏,并且真是想有人能够制作出来的话,那么,我们有一个非常重要的前题是----谁来做这个游戏!!!你千万不要指望不顾程序和美术部分,而将故事、菜单、规则制订下来之后,你就万事大吉了。如果那样的话,你肯定得不到自己的作品,当程序和美术人员完成了工作的时候,拿给你的东西将与你想的完全不一样。你会看到----那根本不是同一个游戏。反复说这些话的原因,就是想告诉对此感兴趣的朋友们,千万不要以为游戏策划只是一个编故事、制订规则。那么作为一个游戏策划人,应该具备什么样的素质呢?什么样的人才有资格成为游戏策划呢/ 


2.游戏策划人应该具备什么条件?

  怎么样?被我前面的话吓住了吧?这也不是,那也不是。什么样的人才是游戏策划人呢?

  现在我再告诉你,一个理想的游戏策划人应该具备如下条件:

A.玩的游戏足够多,并且对各个游戏有过一番研究。因为只有这样,才能对自己的游戏进行充分的设计,才能扬长避短。也只有玩过足够多的游戏才能明白玩家的一些约定俗成的东西,比如YES、NO按钮谁在左面?谁在右面?如果反了,有些玩家会经常误操作。

B. 对程序的制作十分精通,精通游戏图形和音乐编程及人工智能。这样,你就能充分地发挥程序的作用,在不增加工作量的情况下,使游戏变得更加有趣。比如说在场景中有满街乱走的小人儿,如果不考虑更多的人工智能,这些人只是简单地随机乱走的话,一百个人和两个人几乎是用相同程序处理的。但如果两个人情况下,其中有一个人在一定的条件下,需要去一次酒馆的话,给程序方面增加的工作量,比增加一百人可大多了。而为游戏最后的测试又增加了许多工作。你必须创造必要的条件,看他去不去酒馆。而如果这个条件是随机出现的话,你不走运的话,可能会为此等上一天。

C.对美术部分十分精通,精通各种平面、三维和动画软件,具有非常扎实的美术基础。并对摄影和镜头剪接有充分的了解。如果你真的具备这一点,你就能使参与游戏的其他美术人员充分了解游戏的整体感觉。你可以告诉他们整个游戏的色调是偏暖或是偏冷。如果是卡通的话,是采用迪斯尼的卡通风格还是日本的卡通漫画家的风格?你可以亲自设计出游戏的主要角色的人物形象定位和场景效果图,这样有经验的美术人员会充分体会你所要表现的游戏气氛。是欢快活泼的趣味风格,还是阴风阵阵的恐怖风格。

D.对音乐十分精通,精通乐理并擅长古今中外各种风格的音乐。由于人们对音乐有着极强的感受和理解能力,所以一个有气氛的场景应该配合相同气氛的音乐。或是利用一种特殊的音乐效果表达特殊的气氛。我们曾经试图使一个音乐制作人明白我们为什么想将中国古典音乐与现代摇滚音乐相结合,但最后终于没有成功。

E. 有深厚的文学功底和丰富的中外历史知识,最好也能明白一些表达心理学方面的知识。这样你就能设计出动人的角色对话----表现动人情节的一个最重要的法宝,也有助于你烘托游戏时代背景。如果想设计科幻背景的游戏,你还必须熟悉未来科技的一些知识和趋势。

  也许这是一个游戏策划的标准人才,但这样的人才我们从来还没有遇到过。因为一个人的一生是有限的,在有限的时间里不可能在各个方面都能得到充分的发展。没办法,只能依靠我们自己来解决了。幸好我们也许在上述几点的其中一点非常突出。那么就让象你我这样的人来策划游戏吧。但我们能够成功,因为我们拥有两件必胜法宝----谦虚好学和不懈的努力。现在让我们开始吧。

3.如何开始一个游戏策划?

  开始一个游戏的策划,某种意义上说就是开始一个游戏的制作过程。首先,你必须明白一点,你的时间是有限的。如果你想成为一个专业人员,你时刻应该记住的事情是你正在制作的是一个商品,它有成本,面临蚀本的风险。而降低成本降低风险的最有效的方法就是牢牢控制住时间,在策划阶段就要充分考虑到这点。如果你是一个业余人员的话,你也不要忘记,如果你花上两年时间想做出一个好游戏的话,两年后,你的游戏可能已经烂得不成了。这样的例子真是太多了。更不用说,因为你自己的精力和时间所限,使你不得不半途而废。所以在一开始你必须有一个计划和目标,游戏的完成时间八个月?十二个月?十八个月?总之,你必须有一个明确的时间表,在这个时间表的基础上,你也许不得不抛弃或改变一些想法。

  现在我们开始吧,策划游戏需要一支笔(最好是铅笔)、一沓草稿纸,如果需要的话还要一个计算器。

  我们重玩了很多西方的模拟建设类游戏之后,突然产生了一个想法,如果游戏中的房屋全是我们自己的民族建筑会怎么样?那么我们就有了一个游戏的最基本的元素。

★在一个也许是沙漠、也许是草原的空场上建造民族特色的房屋。

  下面我们需要为玩家设置一些障碍和奖励,这是使得游戏使人动脑筋的重要手段之一。顺便说一下,并非所有的玩家都喜欢动脑筋。但你永远不要指望一个游戏能满足所有玩家的喜好。

  游戏的历史背景是第二个问题。这个问题十分容易解决,我们现在所在的北京就是一个十分合适不过的地理和历史背景了。建设古代的帝都北京。一个十分吸引人的题材不是么?我们有了游戏的第二个元素。

★以北京建都作为自己的历史背景。

  建筑需要金钱、人力、物力和时间,玩家必须想方设法地得到这些必要的基础才能获得最后的成功。这就形成了游戏的第三个基本元素。

★玩家必须获得足够的金钱、人力、为人力所准备的粮食、建筑材料。

  下面我们组合这些基本元素使它们成为一个比较完整的体系。这个体系基本如下:将建筑进行分类,分别用于获得金钱、人口、粮食、建筑材料等等。这些有特定功能的建筑最后分别被定义为商号、民居、粮站、官府。从商号的经营活动中,通过税收的手段获得金钱是一个很自然的事。而人口都是从民居中产生的也是一个不假思索的选择。粮站的概念则完全取决于历史背景,古代的用粮一直是依靠从南方通过水路和陆路运输而来的,所以我们可能不用考虑种地的问题了,但由此引发了一个新的元素----道路和交通,于是我们又增加了两个设施:道路和运河。至于官府取得建筑材料,主要是因为古代皇宫的建筑材料主要是通过官府征集而来的。

  为了表现古代北京的城市概念,我们的建筑中又加入了庙宇、戏楼等等许多附属建筑;为了表现古代北京缺水的特点,我们又增加了水的因素和获得水的建筑----水井。

  好像一个比较完整的游戏规则的雏形产生了。但在你想继续之前,你必须回答以下几个问题。

4.其它的问题

首先一个问题是你的场景或者称为地图有多大?这关系到以下问题:

A.在有限的场景中你只能放置有限的建筑,而有限的建筑中有多少是商号呢?

B. 用这么多的商号能用多少时间产生多少金钱?用这些金钱你能建造多少建筑呢?

C.多少钱一个建筑,而多长时间可以把地图上盖满建筑呢?

D. 每个建筑的尺寸是多大呢?

  你可能没有想到的是,问题答案的一部分是从你的游戏最终用户的机器配置得来的。如果你问程序员,他会告诉你,一张640X480X256色的图占用内存中的尺寸是300K。计算方法是640X480/1024(1K)=300。而一张同样大小的24BIT真彩的图在内存中则占用900K的空间,正好是300K的三倍。如果你的目标运行环境是486/16M的话,显然DOS系统是目标操作系统。在16M内存中,除了程序的运行部分和数据部分可能占3-4M空间外,即使其它地方都被图形占满,你也只能放大约12个640X480X24BIT大小的图。这意味着只有3X4个全屏的大小,太可怜了。你可以用一张1920X1920大小的图感受一下。

  如果你用了硬盘作为虚拟内存的技术,可能会加大场景,但运行速度可能会受到相当大的影响。

  如果考虑采用256色的话,你的美术人员必须面对一个更加严峻的问题----调色板,这是一个令无数英雄豪杰头痛不已的问题。它不但意味着图形质量的严重下降,还意味着工作量的成倍增加。可能你没有直接的感受,但是我们可以告诉你,过去在DOS环境下开发游戏,大约有60%的时间在解决调色板的问题。

  指望用户在WIN95下运行游戏是你的明智选择。这样用户的机器配置也会随之提高。同时由于WIN95的虚拟内存技术和更快的硬盘驱动程序。你的场景会大大提高。但还是有着方方面面的因素在影响你的选择。

  当场景的大小定下来后,你就可以制订一些参数了。首先你需要合理的设计出一个城市,所谓合理是指使绝大多数玩家不感到别扭。然后,再找出其中有多少是商业建筑,多少是民居,多少是官府。在此基础上再确定建造一个城市需要的金钱数,你需要给整个城市中的每一种建筑制订价格。然后再与其它因素一起计算出需要的金钱,判断一下玩家建造一个城市能忍耐的时间,太短会有不过瘾的感觉,太长就会将你的游戏束之高阁。然后,你就给你的建筑制订等级,并确定不同等级建筑的效能。总的来说,就是保证各种等级之间的平衡。比如,将计算出的金钱数分配给不同等级的商号。在分配过程中,你可以通过参数的调整引导用户建造更多的某个等级的商号。你可以在攻略中或手册中说明哪种等级的商号更加合算。

  象这样使你头晕的问题非常之多,你都要一一去面对并加以解决。你可能会说,这样不是已经进入游戏的制作过程了吗?其实不是,当这些参数被真正在游戏中体现出来的时候,你就会发现,有许多你没有意想到的东西。但即便如此,你也需要在具体实施制作之前,在你的脑海中,就象真正在玩这个游戏一样,将这个游戏的设计模拟一遍又一遍。以期从中发现问题。然后再分割成美术和程序人员都看得懂的脚本,再分别交给美术和程序人员进行制作。

  你看,游戏策划有的时候更需要的是细致和耐心,需要对程序和美术有一定的了解。并不断地与他人进行沟通。

posted @ 2005-02-17 19:47 蓝色雪焰 阅读(800) | 评论 (1)编辑 收藏
 
RPG游戏公式

1、很久以前,在一个遥远的地方,有一班勇者,一个魔王,一堆虾 兵蟹将,一众可有可无的村长和村民,以及一个感人(?)的故事。   
2、所谓的勇者,一开始比任何生物都弱,连一只鸟或单细胞生物都打不赢。   
3、魔王有村庄不去住,只喜欢建立一个黑暗复杂的迷宫把自己关起来,一动不动地等勇者来。
4、魔王会派出虾兵蟹将对付勇者,但为了使勇者能轻易应付, 会根据勇者的等级派出不太强又不太弱的对手,偶然有一些太强的对手以致勇者打不赢,便一定有另一段偶然的故事救了勇者一命。
5、魔王令他的虾兵蟹将将一些优质装备,道具及钱带在身上, 却又不许使用,等勇者打败他们后来自用。
6、魔王在自己住的迷宫里四处弃置宝箱,为勇者提供足够的装 备和道具,以确保勇者能见到魔王。
7、魔王传令:如勇者逃跑,绝不能追杀,更加不能随便行动,不得上下楼梯,不得擅自开门。 
8、最后,魔王被勇者打败了,有了以下结局:   

版本一:勇者杀死魔王,世界回复和平。   
版本二:勇者打败魔王,王子和公主便过着快乐的生活。   
版本三:魔王大叫:可恨啊……我会再回来的……然后消失了, (请期待下个故事)。  
版本四:一阵强光过后,勇者和魔王一起消失了,只留下勇者的剑。   
版本五:女主角与魔王同归于尽或女主角牺牲的所谓永恒的悲剧。   
版本六:这次的勇者变了魔王,下次请打他吧。   
版本七:有个傻瓜梦醒了。   
版本八:——THE END—— 一堆字幕   

版本九:C:>

posted @ 2005-02-17 19:04 蓝色雪焰 阅读(921) | 评论 (1)编辑 收藏
 

图块象素化的边缘抗锯齿处理
由于通常用作游戏画面的人物肖像、背景等需要做扣图处理的图片在处理前底色都是白色,如果直接这样的话,很可能做出来的象素化后的图片(在256色的环境下,整个图块颜色少于40色)会有明显的边缘锯齿。
克服锯齿或者减弱锯齿效应以前使用的方法是修边,即用深色,例如纯黑,把图块的周围描绘一遍,这样做可以很好的减少锯齿并能提高象素的味道,但是缺点有:对于极细的线条的处理,例如一条线只有1个象素宽,那么描边过后就有3象素宽,这在某些场合是不可取的,很可能会破坏原由画面的味道。而对于手机上的图象处理,这样的结果肯定不行。
那么,就只好进行没有描边的处理方式。
查看了日本最新格斗游戏kof2003的图片内容,kof系列的人物从来都是不描边的,即完全用色块来表现角色。这对于32*32尺寸以内的小图片来说,直接在方格内照原画用象素画法画一遍就可以了,但是如果尺寸是大于32*32的或者战局大半个手机屏幕的一幅图呢?例如人物的特写,rpg中会用到的头像?这个时候如果还用象素的方式来描绘很可能会跟原画有相当大的出入,而且修改起来也很麻烦。
因此,可以利用原画来进行加工!
把底色设置为蓝色(0,0,255)然后缩小图片尺寸,这样图块的周围一圈就很好的和兰色融合在了一起,然后通过反复的在索引色及rgb色之间的转换减少原色,同时对一些相邻色进行删减(把相邻的颜色用灌桶填成同一种颜色,例如121,34,133与121,34,144就可以合成为一个颜色)。这样最终做出来的图片就是以兰色为底色的颜色很少但失真并不严重的图片,把加工的图块扣取出来,放到背景里面,发现融合程度很好,边缘锯齿弱化很多。
 

这是以白色为幕布做出来的图片----锯齿非常明显。

将完成的原画背静改为兰色------是这样样子滴!

将上图减小尺寸过后------就是这个样子滴!

此时再用你所能想到的任何方法,在不明显失真的前提下进行颜色压缩,最后把兰色去掉,就得到成品啦。哈哈啊。

用另外一个女生的图片做的图
同样的方法,可以取得同样良好的结果。

反复进行不同背静的测试,
发现锯齿问题解决得很好,兰色的背静幕布在抠图过后能与其他颜色很好的融合。

posted @ 2005-02-17 18:59 蓝色雪焰 阅读(975) | 评论 (0)编辑 收藏
 

动画方面.

前面的朋友说了动画的制作,一个动画是由很多帧组在的.,您说的方法把一帧帧的动画做成一幅幅的图象,再一幅幅地载入,这样做的效率不高.应该把各幅员的动画放在一起,做成一幅大的图,加载一幅大图比加载多幅小图效率要高,一幅大图也比多幅小图容易管理得多.那么怎样做呢?


做法和前面朋友说的差不多,关键是这个方法:
drawImage(Image img,dx1,dy1,dx2,dy2,sx1,sy1,sx1,sy1,this)
其中Image img是来源图象,
    dx1是目的区域的===左上===顶点的===X====坐标;

    dy1是目的区域的===左上===顶点的===Y====坐标;

    dx2是目的区域的===右下===顶点的===X====坐标;

    dy2是目的区域的===右下===顶点的===Y====坐标;

    sx1是来源区域的===左上===顶点的===X====坐标;

    sy1是来源区域的===左上===顶点的===Y====坐标;

    sx2是来源区域的===右下===顶点的===X====坐标;

    sy2是来源区域的===右下===顶点的===Y====坐标.
================================================================
下面是一个动画的程序代码.
import java.awt.*;
import java.applet.*;
public class Seriallmage4 extends Applet implements Runnable
{
  int SPF;                       //用来表示线程暂停的时间
  int sx,sy;
/******************************************************************
sx,sy用来表示来源区域的左上顶点.因为每一帧我们都做成了长是80宽87的图,再把它们放在一起做成一幅大的图,
所以来源区域的右下顶点的坐标等于左上顶点坐标加上长和高.
式子为:sx+80;sy+87
******************************************************************/                     
  Image Animation;              //来源图象
  MediaTracker MT;              //图像追踪器,用来检查图像是否完全加载
  Thread newThread;             //新的线程.
  Image OffScreen;              //后台图像;
  Graphics drawOffScreen;       //绘制后台图像的实体(实例).
//======================init()函数===========================
  public void init()
  {
     SPF=100;                   //线程暂停的时间是100豪秒,
     MT=new MediaTracker(this); //实体化图像追踪器.
     Animation=getImage(getDocumentBase(),"lunisEx.gif");//加载图像.
//======================//追踪图像=============================
     MT.addImage(Animation,0);  
     try
     {
       showStatus("图象加载中....");   //在状态栏中显示信息
       MT.waitForAll();                //等待加载
     }
     catch(InterruptedException E){}
//============================================================
     OffScreen=createImage(300,300);  //建立后台画面的实体
     drawOffScreen=OffScreen.getGraphics();  //取得后台画面的绘制类
  }
//===========================================================
  public void start()                //start函数
  {
     newThread=new Thread(this);     //建立线程
     newThread.start();              //启动线程
  }
  public void stop()                 //stop函数
  {
     newThread=null;                 //线程设为null
  }
//==========================================================
  public void paint(Graphics g)
  {
     drawOffScreen.setColor(Color.green);    //设置后台画面的背景色,
     drawOffScreen.fillRect(0,0,300,300);    //画一次背景,作用是清除后台画面,如果背景是一幅画
//则要用这幅图来画.
     drawOffScreen.drawImage(Animation,20,20,250,250,sx,sy,sx+80,sy+87,this);//在后台画面绘制
//的图像,
     g.drawImage(OffScreen,0,0,300,300,this);//把后台画面画到前台画面
  }
  public void update(Graphics g)
  {
     paint(g);                              
  }
//====================新动画循环在此========================50
   public void run()                       
   {
      while(newThread !=null)               //如果线程不等于null
      {
        repaint();                         // 重画一次.
        try
        {
           Thread.sleep(SPF);              //让线程暂停
           sx+=80;                         //画了一次后,改变来源区域,使其到下一帧.
           if(sx==800)                     //我的图像是一幅800*170的,有两行,每行十帧,如果sx走到了
//800就说明播放完第一行了,
           {
              sy+=85;                      //播放完第一行后,改变来源区域的左上顶点使其跑到第二行.
              sx=0;
              if(sy==170)                  //如果播放完第二行后,又让它回到第一行,
              {
                 sy=0;
              }
           }
        }
        catch(InterruptedException E){}
      }
    }

}
动画每秒播放多少帧好呢?
电影的是每秒24帧,这样的速度不仅能产生视觉停留,而且让人感觉到画面非常流畅.那么是不是我们做游戏也要用这个速度呢?答案是否定的,实际上每秒播放10帧就足已产生视觉停留,如果设置高了会消耗更多的资源.至命的是,有一些手机连每秒10帖都做不到.

posted @ 2005-02-17 18:07 蓝色雪焰 阅读(256) | 评论 (0)编辑 收藏
 

游戏开发者的成功秘诀

“离子风暴”开发公司的奠基人之一汤姆·霍尔先生在网上发表了一篇有趣的文章,披露了快速成为游戏开发者的“成功秘诀”。唉,世上哪有那么便宜的事呢?可汤姆·霍尔说得一本正经,一脸严肃,不由得你不信。再加上笔者生来对“投机取巧”“不劳而获”“一蹴而就”之类的事情有一种按捺不住的好奇(首先声明,笔者一生的道路走得踏踏实实,一步一个脚印,绝无此类“劣迹”,仅好奇耳),便偷偷地看了。不看则已,一看才知世上竟有汤姆·霍尔这类大滑头,失望之余便有些忿忿然,忿忿然之余又不禁哑然失笑,豁然明白了霍尔先生的苦心。原来他出此奇文并非存心戏弄读者,实在是有几分“劝世”的用意在其中。
  作为闻名遐迩的游戏开发者,汤姆·霍尔在开发游戏的同时(眼下他正忙着开发一款以未来为背景的游戏:《时空异变》Anachronox),常常会收到一些来信,写信者表露出有心在游戏业驰骋一番的雄心,提出的问题可大致划分为以下三种:
  1、“我脑子里新奇念头层出不穷,你愿意雇用我吗?”
  对于第一种来信,霍尔的回答只有两句话:“新奇念头人人有”和“不行”。霍尔解释说:“如今游戏业并不缺乏新奇念头,每天都有成千上万的新念头在产生和消亡。尽管新奇对于一个游戏的成败至关重要,然而更重要的是行动,将其付诸实现。爱迪生说什么来着:‘发明是百分之一的灵感和百分之九十九的汗水的混合物。’除非你拿出东西来,否则没人愿意听你凭空说话。埋头制作游戏需要某种献身精神,你可能会嘲笑那些开发游戏的人‘这也做得不好’、‘那也做得不对’,可他们实实在在完成了一件作品,这就使他们显得与众不同。因为99%的人是希望在他们付出劳动之前能确保得到回报的庸常之辈。”
  2、“我把自己刚刚完成的游戏设计寄来,你能抽空看看吗?很了不起的构想噢!”
  对于这种来信,霍尔拒绝得更快,几乎是不加思索的“No”。原因也有些出人意表:“他们寄来的构想可能是粗浅的习作,也可能是未来的惊世大作,可我是一眼也不敢看的。原因很简单,我自己也是搞游戏策划的,他的想法可能会与我已有的想法不谋而合。由于这种事无法证明,所以他会认为我剽窃了他的念头。第二,我看过的东西会残存在我的感知里,在我将来的游戏策划中它会不知不觉地跑出来作怪,这样我还是摆脱不了被指控剽窃的危险。第三,一旦我看过了某个构思,我就必须对其加以评论,运用我自己的想法对其进行指导。出于自私的考虑,我不想让自己的‘酷’念头为他人所用,我自己将来还用得着呢。还有呵,对于杂志上发表的有关游戏策划的评说我也是避之而唯恐不及,尽管发表意见的人会说:‘这就是我认为的好游戏,你们就照着做吧。’可一旦这个念头被某个游戏开发者所采用,并且挣了几百万,98%的人会打官司索要专利费。另外2%的人也会在配偶的撺掇下把你告上法庭。唯一的办法就是眼不见为净。”
  3、“我觉得制作游戏是一件令人兴奋的事。你是怎么走上这条路的?你使用了什么工具?”
  让霍尔先生看着顺眼的大概只有这第三种问题了。由于这种信件仅仅是提出问题,而没有隐含的危险性,霍尔先生的解答也就来得很爽快。在这里他不仅仅是回答问题,而是借此对游戏开发这个行当表述了自己独特的见解。
  “倘若你真的喜欢电脑游戏,而你周围又没人会开发游戏,而你自己又没有通过书本和工具学会开发游戏的能力,除非有人教你如何开发游戏否则你便不知该怎样着手,倘若情况是这样,那你就趁早打消开发游戏的念头。
  “倘若你刚刚玩过一款伟大的游戏便觉得自己也能行,而实际上你对游戏开发一无所知,你所持有的仅仅是对成功和名望的渴望,那你就不要做游戏开发者。
  “倘若你无可救药地迷上了电脑游戏,如醉如痴地阅读游戏杂志,时不时地用QuickBASIC编写自己的简单游戏,不畏艰难地将一些好游戏的内核打开,来回比较它们的优劣,那你也不适合搞游戏开发。”
  汤姆·霍尔不留情面地把以上几种人都“炒了鱿鱼”,因为在他看来,游戏业不是个仅靠热情和痴迷便能胜任的行当。游戏公司是赚钱的公司,而不是搞游戏研究的地方。这里的竞争法则是严酷的,一如好莱坞电影业。在投奔这个新世界之前你要考虑再三,并且要准备在开始阶段去饭馆端碟子——可能会端上一辈子。
  “倘若以上所说的仍难不住你,你仍旧无法打消开发游戏的念头,那么我就给你详细描述一下你将面临的艰难道路,这是一条可能走向成功的充满荆棘的道路。”看来霍尔先生终于不忍心将那么多痴迷的年轻人拒之门外,开始布道施教了。“在你充分了解了它的艰难之后,我将向你指出另一条路,我会把不必花费多少力气便能快速成功的超级秘诀告诉你。不过要在你阅读了下面的内容之后。”
打开你的电脑,在DOS状态下敲入QBASIC,你会发现有一个程序在运行。它就是QuickBASIC,随着DOS附送的一个编程程序。你的操作系统种没有一样东西是用它编写的——它运行太慢——但你却可以用它来写一些游戏程序。依照霍尔先生的看法,你应该先从学习别人的程序着手。上街买一些游戏编程手册,然后就可以干起来了。你会犯这样或那样的错误,然而没人会在意的。在“观摩学习”中,你要留意几个问题:他们是如何使游戏变得有趣而使操作变得简单的?倘若换了自己会怎么做?他们是如何改进的?什么东西使你在玩了50个小时之后依然不对它产生厌烦?
  汤姆·霍尔布置的作业可不轻松,大约需要开发100个左右自己的小游戏。前10个应该是不堪入目的入门习作,从第11个开始,应该有了一点起色,从第50个游戏起,你开始有了自己的声音。正如音乐家的成长一样,在你开发了100个游戏之后,游戏开发程序就成了可以让你任意支配的乐器,用它来随心所欲地表达自己的思想了。
  你要开发的游戏种类应该没有限制,想到什么就开发什么。作为开始,你不妨拿游戏业最老的游戏之一 Pac-Man来作临本,你会发现它实际上不象看上去那么简单。你还可以让一个小人从 A点走到 B点,躲避从 C点掉下来的一个小球。关键是你要开始制作游戏,并完成它。随着自己的作品的增多,你会产生自豪感,并且会逐渐感到上瘾。等到某一天,你的朋友要求拷贝一份你制作的游戏回家去玩,那时你差不多就出徒了。你再绞尽脑汁制作一个全新的游戏,一个前人从未干过的新品,尽可能把它打磨精细,然后就可以拿到游戏业界去闯运气了。
  成功的道路不止一条,然而汤姆·霍尔走向成功的道路却是实实在在的先例,想成为游戏开发者的人自然很想知道。我们将他走过的道路粗略地画了一个轮廓:
  从小常去玩街机,后来自己买了个游戏机,上高中时买了电脑,自己开发了50个游戏。而后上大学学习编程,又利用业余时间制作了30个游戏,其它的业余时间则全部用来玩游戏。阅读有关书籍与杂志的同时,开始为杂志撰稿,还为有智力障碍的学生编制游戏,毕业时拿到了计算机专业学位,在一个小公司谋得职业,它每月都有程序发布。在搞应用程序的同时又制作了几款游戏,并开始在其它一些制作游戏的部门窥探,结识了几个游戏天才人物,并使自己的作品得到他们的赏识。等到羽毛丰满,便自立门户,创建了自己的游戏公司。每天工作16个小时,每星期工作7天,挣的钱仅够维持生计。制作各种各样的游戏,逐步走向成功。这条道路是艰难和漫长的,然而要想成为一个游戏开发者,该做的事一样少不了。
  “不是说还有一条道路吗?”心有不甘的读者问。
  不错,的确还有一条路。走这条路你可以不必花费时间和精力去学习编程,你可以在一夜之间实现自己的梦想。汤姆·霍尔知道这条路,并把它称为“走向成功的超级秘诀”,慷慨地在此奉献给大家。秘诀分为三个步骤,排列如下:
  第一步:有几百万美金闲钱可调用。
  第二步:购买一个现成的游戏开发公司。
  第三步:别忘了在合同里加上一条,公司开发的所有游戏前面都要加上你的大名。
  大功告成!这样你就(至少在公众的眼里)成了一位游戏开发者。是不是简洁而又迅速?看着游戏封面你那烫金的大名,你是否感到陶醉?唯一的不足之处就是,你别指望这样别人会对你产生多少敬意。假如你真的想成为货真价实的游戏开发者,除了第一条充满荆棘的困难道路外,似乎没有什么别的路好走。

posted @ 2005-02-17 17:50 蓝色雪焰 阅读(228) | 评论 (0)编辑 收藏
 

本文通过使用J2ME开发华容道游戏,介绍了J2ME游戏开发的基本模式....

一、序言

  昨天在网上闲逛,发现一篇讲解用delphi实现华容道游戏的文章,颇受启发.于是,产生了将华容道游戏移植到手机中去的冲动.现在手机游戏琳琅满目,不一而足,华容道的实现版本也很多.正巧不久前笔者对J2ME下了一番功夫,正想借这个机会小试牛刀。选用J2ME的原因还有一个就是目前Java开发大行其到,无线增殖业务迅猛发展,J2ME的应用日渐活跃起来,也希望我的这篇文章能够为J2ME知识的普及和开发团队的壮大推波助澜。由于长期受ISO规范的影响,这次小试牛刀我也打算遵照软件工程的要求,并采取瀑布式的开发模式来规划项目,也希望借此机会向各位没有机会参与正式项目开发的读者介绍一下软件开发的流程。

  这里我们先定义项目组的人员体制(其实只有我一个人):技术调研、需求分析、概要设计、详细设计、编码、测试均有笔者一人担任;美工这里我找了个捷径,盗用网上现成的图片,然后用ACDSee把它由BMP转换成PNG格式(我出于讲座的目的,未做商业应用,应该不算侵权吧);至于发布工作,由于缺少OTA服务器,此项工作不做(但是我会介绍这步如何做)。

  接下来,我们规划一下项目实现的时间表,以我个人经验,设想如下:技术调研用2天(这部分解决项目的可行性和重大技术问题,时间会长一些),需求分析用半天(毕竟有现成的东东可以参照,只要理清思路就行了,况且还有很多以前用过的设计模式和写好的代码),概要设计再用半天(有了需求,概要只不够是照方抓药),详细设计要用2天(这一步要把所有的问题想清楚,还要尽可能的准确描述出来),编码用2天(其实1天就够了,技术已经不是问题,多计划出一天来应付突发事件),测试用2天(测试应该至少占全部项目的四分之一,不过这个项目只是一个Demo,也太简单了),发布也要用上半天(尽管我们不去实际发布它,但是还要花点时间搞清楚应该如何做),最后就是项目总结和开庆功会(时间待定)。

  二.利其器

  “公欲善其事,必先利其器”,做项目之前第一步是前期调研.我们要做的华容道这个东东随处可见,我们要调研的是两个方面:

  1、游戏的内容:游戏本身很简单,就是有几个格子,曹操占据其中一个较大的格子,然后被几个格子包围,这些格子形状不一定相同,但是挡住了曹操移动的方向.游戏者需要挪动这些格子最终把曹操移动到一个指定的位置才算是过关.更具体的分析我们放在后面需求分析和概要设计中讨论。

  2、技术储备:谈到技术,这里简单介绍一下J2ME.Java有三个版本,分别是J2ME(微型版).J2SE(标准版).J2EE(企业版).J2ME是一个标准,采用3层结构设计.最低层是配置层(Configuration)也就是设备层,其上是简表层(Profile),再上是应用层(Application).MIDP就是移动信息设备简表,目前主流手机支持MIDP1.0,最新的是MIDP2.0,它比前一个版本增加了对游戏的支持,在javax.microedition.lcdui.game包中提供了一些类来处理游戏中的技术,比如我们后面会用到的Sprite类,它是用来翻转图片的.权衡再三,笔者决定使用MIDP2.0来做开发.首先需要安装一个J2ME的模拟器,我们就用Sun公司的WTK2.0,我觉得Sun的东西最权威.当然你也可以使用Nokia.Siemens或是Motolora等其他模拟器,但是他们的JDK不尽相同,写出来的程序移植是比较麻烦的.Sun公司的WTK2.0可以到<A href="http://here/下">http://here/下</A>载,当然要想成功下载的前提是你要先注册成为Sun的会员(其实这样对你是有好处的).当下来之后就是按照提示一步一步的安装.安装好了之后,我们用一个"Hello World"程序开始你的J2ME之旅.我们启动WTK2.0工具集中的KToolBar,然后点击New Project按钮,在弹出的输入框中输入Project Name为HelloWorld,MIDlet Class Name为Hello,然后点击Create Project,开始生成项目,工具会弹出MIDP配置简表,这里接受生成的默认值(以后还可以修改)点击OK,工具提示我们把写好的Java源程序放到[WTK_HOME]\apps\HelloWorld\src目录之下.我们编辑如下代码,并保存在上述目录之下,文件名为Hello.java。

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class Hello extends MIDlet
{
private Display display;
public Hello(){
display =Display.getDisplay(this);
}
public void startApp(){
TextBox t = new TextBox("Hello","Hello",256,0);
display.setCurrent(t);
}
public void pauseApp(){
}
public void destroyApp(boolean unconditional){
}
}


  保存好了之后,点击Build按钮,工具会为你编译程序,如无意外再点击Run按钮,会弹出一个手机界面,剩下的就不用我教了吧(用鼠标对手机按键一顿狂点)。呵呵,你的第一个J2ME程序已经OK了.什么?你还一点都没懂呢(真是厉害,不懂都能写出J2ME程序来,果然是高手).我这里主要是介绍WTK2.0工具的使用,程序并不是目的,不懂的话后面还会有详细的解说,这里只是带你上路.什么?你不懂Java!那也没有关系,后面我再讲得细一点。

  跳过J2ME,我们先来讲点游戏的理论.具体到华容道这个游戏,主要有三个方面,贴图.游戏操作.逻辑判断.这里讲讲贴图,其他两方面放在概要设计和详细设计里讲.所谓的贴图,其实就是画图,就是在要显示图形的位置上输出一副图片,(要是牵扯到动画就要麻烦一些,可以使用TimerTask.Thread或Rannable之类的技术),这副图片可以是事先准备好的也可以是临时处理的.在J2ME中有一个Image类,专门用于管理图片,它有createImage()方法,可以直接读取图片文件(J2ME只支持PNG格式的图片),也可以截取已有的图片的一部分(这样我们可以把很多图片放在一起,然后一张一张的截下来,好处是节省存储空间和文件读取时间,对于手机这两者都是性能的瓶颈).J2ME还有一个Graphics类,专门用于绘图,它有drawImage()方法,可以把一副图片在指定的位置上显示出来,它还有drawRect()方法和setColor()方法,这两个方法在后面我们进行游戏操作时就会用到,这里先交代一下.有了图片和绘图的方法,还需要知道把图画到谁身上,J2ME提供了一个Canvas类,字面意思就是画布,它有一个paint()方法用于刷新页面,还有一个repaint()方法用于调用paint()方法.听着有些糊涂是吧,不要紧,我来结合具体程序讲解一下.为了今后编程的方便,我们创建两个类Images和Draw,Images用于保存一些常量值和图片,Draw主要是用于画图,这两个类的源代码如下。

  Images类的源代码如下:

package huarongroad;

import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;

public class Images {//保存常量
//绘图位置常量
public static final int UNIT = 32;//方块的单位长度
public static final int LEFT = 10;//画图的左边界顶点
public static final int TOP = 9;//画图的上边界顶点
//地图位置常量
public static final int WIDTH = 4;//地图的宽度
public static final int HEIGHT = 5;//地图的高度
//地图标记常量
public static final byte CAOCAO = (byte) 'a'; <A href="file://曹">file://曹</A>操的地图标记
public static final byte MACHAO = (byte) 'b';//马超的地图标记
public static final byte HUANGZHONG = (byte) 'c';//黄忠的地图标记
public static final byte GUANYU = (byte) 'd';//关羽的地图标记
public static final byte ZHANGFEI = (byte) 'e';//张飞的地图标记
public static final byte ZHAOYUN = (byte) 'f';//赵云的地图标记
public static final byte ZU = (byte) 'g';//卒的地图标记
public static final byte BLANK = (byte) 'h';//空白的地图标记
public static final byte CURSOR = (byte) 'i';//光标的地图标记
//地图组合标记常量
public static final byte DLEFT = (byte) '1'; <A href="file://组">file://组</A>合图形左边标记
public static final byte DUP = (byte) '2'; <A href="file://组">file://组</A>合图形上边标记
public static final byte DLEFTUP = (byte) '3'; <A href="file://组">file://组</A>合图形左上标记
//图片常量
public static Image image_base;//基本图片
public static Image image_Zhaoyun;//赵云的图片
public static Image image_Caocao;//曹操的图片
public static Image image_Huangzhong;//黄忠的图片
public static Image image_Machao;//马超的图片
public static Image image_Guanyu;//关羽的图片
public static Image image_Zhangfei;//张飞的图片
public static Image image_Zu;//卒的图片
public static Image image_Blank;//空白的图片
public static Image image_Frame;//游戏框架的图片

public Images() {//构造函数
}

public static boolean init() {//初始化游戏中用到的图片
try {
image_base = Image.createImage("/huarongroad/BITBACK.png");
image_Frame = Image.createImage(image_base, 126, 0, 145, 177,
Sprite.TRANS_NONE);
//Sprite类是用来翻转图片的,是MIDP2.0新新增加的支持游戏的特性
image_Zhaoyun = Image.createImage(image_base, 0, 0, UNIT, 2 * UNIT,
Sprite.TRANS_NONE);
image_Caocao = Image.createImage(image_base, UNIT, 0, 2 * UNIT,
2 * UNIT, Sprite.TRANS_NONE);
image_Huangzhong = Image.createImage(image_base, 3 * UNIT, 0, UNIT,
2 * UNIT,
Sprite.TRANS_NONE);
image_Machao = Image.createImage(image_base, 0, 2 * UNIT, UNIT,
2 * UNIT,
Sprite.TRANS_NONE);
image_Guanyu = Image.createImage(image_base, UNIT, 2 * UNIT,
2 * UNIT, UNIT,
Sprite.TRANS_NONE);
image_Zhangfei = Image.createImage(image_base, 3 * UNIT, 2 * UNIT,
UNIT, 2 * UNIT,
Sprite.TRANS_NONE);
image_Zu = Image.createImage(image_base, 0, 4 * UNIT, UNIT, UNIT,
Sprite.TRANS_NONE);
image_Blank = Image.createImage(image_base, 1 * UNIT, 4 * UNIT,UNIT,
UNIT,
Sprite.TRANS_NONE);

return true;
}catch (Exception ex) {
return false;
}
}
}

  Draw类的源代码如下:

package huarongroad;

import javax.microedition.lcdui.*;

public class Draw {
//绘制游戏中的图片
public Draw(Canvas canvas) {//构造函数
}

public static boolean paint(Graphics g, byte img, int x, int y) {
//在地图的x,y点绘制img指定的图片
try {
paint(g, img, x, y, Images.UNIT);//把地图x,y点转化成画布的绝对坐标,绘图
return true;
}
catch (Exception ex) {
return false;
}
}

public static boolean paint(Graphics g, byte img, int x, int y, int unit) {
try {
switch (img) {
case Images.CAOCAO://画曹操
//变成绝对坐标,并做调整
g.drawImage(Images.image_Caocao, Images.LEFT + x * unit,
Images.TOP + y * unit,
Graphics.TOP | Graphics.LEFT);
break;
case Images.GUANYU://画关羽
g.drawImage(Images.image_Guanyu, Images.LEFT + x * unit,
Images.TOP + y * unit,
Graphics.TOP | Graphics.LEFT);
break;
case Images.HUANGZHONG://画黄忠
g.drawImage(Images.image_Huangzhong, Images.LEFT + x * unit,
Images.TOP + y * unit,
Graphics.TOP | Graphics.LEFT);
break;
case Images.MACHAO://画马超
g.drawImage(Images.image_Machao, Images.LEFT + x * unit,
Images.TOP + y * unit,
Graphics.TOP | Graphics.LEFT);
break;
case Images.ZHANGFEI://画张飞
g.drawImage(Images.image_Zhangfei, Images.LEFT + x * unit,
Images.TOP + y * unit,
Graphics.TOP | Graphics.LEFT);
break;
case Images.ZHAOYUN://画赵云
g.drawImage(Images.image_Zhaoyun, Images.LEFT + x * unit,
Images.TOP + y * unit,
Graphics.TOP | Graphics.LEFT);
break;
case Images.ZU://画卒
g.drawImage(Images.image_Zu, Images.LEFT + x * unit,
Images.TOP + y * unit,
Graphics.TOP | Graphics.LEFT);
break;
case Images.BLANK://画空白
g.drawImage(Images.image_Blank, Images.LEFT + x * unit,
Images.TOP + y * unit,
Graphics.TOP | Graphics.LEFT);
break;
case Images.CURSOR://画光标
g.drawRect(Images.LEFT + x * unit,
Images.TOP + y * unit,Images.UNIT,Images.UNIT);
break;
}
return true;
}catch (Exception ex) {
return false;
}
}
}

  其中Images类存的是绘图位置常量(也就是在画图时每个格子的长度和相对坐标原点位置要进行的调整)、地图位置常量(地图的长、宽),地图标记常量(人物对应的记号),地图组合标记常量(后面会细说),图片常量(存放人物的图片);Draw类主要负责在制定的位置画出人物图片。下面我来说说Images类中的地图标记常量和地图组合标记常量。为了能够灵活的安排各个关面的布局,我们决定把游戏布局的信息存储在外部文件中,然后程序启动后把它读进来。这样我们制定了一套存储图片的代码,这就是地图标记常量,如上面Images类中定义的Caocao(曹操)用a字符来表示,当程序读到a字符时就能将它转化成曹操对应的图片,并在读到a字符的位置上进行显示。但是从实际观察中我们发现所有的图片并不是统一大小的,有的占4个格子,有的占2个格子,还有的占1个格子,而且即便同是占两个格子的图片还有横、竖之分。有鉴于此,我们引入了地图组合标记常量,就是说在遇到占有多个格子的时候,值1(也就是Images.LEFT)表示它的左边是一个真正的地图标记,值2(也就是Images.UP)表示它的上边是一个真正的地图标记,值1(也就是Images.LEFTUP)表示它的左上边是一个真正的地图标记。地图组合标记常量其实就是用来占位置的,与实际显示无关,当后面我们将到移动时还会再来分析组合标记的使用。

  Draw类主要是用来在画布上画出图形,它有两个paint方法,这是很常见的函数重载。但是程序中实际上只用到了4个参数的paint方法,它直接获得要画图片的相对坐标位置信息,然后调用5个参数的paint方法。5个参数的paint方法将相对坐标位置信息转换成绝对位置,并实际调用Graphics.drawImage()方法,将Images中的图片画了出来。这种实现方法的好处是灵活和便于扩展,但你需要画图的位置并不能够对应到格子中的相对坐标位置时,你就可以直接调用5个参数的paint方法,而不必再去修改这各类;但你添加新的图片时,只要在Images中增加对应的常量,然后向Draw中5个参数的paint方法添加一条处理就可以了。
写到这里,两天的时间刚好用完。

  三、需求分析

  这部分叫做需求分析,听起来挺吓人的,其实就是搞清楚我们要做什么,做成什么样,那些不做。下面我引领着大家共同来完成这一步骤。首先,我们要做一个华容道的游戏,华容道的故事这里不再赘述了,但其中的人物在这里限定一下,如上面Images类里的定义,我们这个版本只提供曹操(Caocao)、关羽(Guanyu)、张飞(Zhangfei)、赵云(Zhaoyun)、黄忠(Huangzhong)、马超(Machao)和卒(Zu)。我们这里也限定一下游戏的操作方法:首先要通过方向键选择一个要移动的区域(就是一张图片),被选择的区域用黑色方框框住;选好后按Fire键(就是确定键)将这块区域选中,被选中的区域用绿色方框框住;然后选择要移动到的区域,此时用红色方框框住被选择的区域;选好要移动到的区域之后按Fire键将要移动的区域(图片)移到要移动到的区域,并去掉绿色和红色的方框。这里需要强调的概念有选择的区域、选中的区域、要移动的区域和要移动到的区域,这四个概念请读者注意区分,当然也应当把这一部分记入数据字典之中。为了使文章的重点突出(介绍如何制作一个J2ME的收集游戏),我们这里限定一些与本主题无关的内容暂不去实现:过关之后的动画(实现时要用到TimerTask或Thread类,后续的系列文章中我会详细介绍动画方面的知识)、关面之间的切换(其实很简单,当完成任务之后重新再做一边)、暂停和保存等操作(这部分的内容介绍的资料很多,我也写不出什么新的东东来,难免抄袭,故此免掉)。

  需求分析基本完成,离下午还有一段时间,马上动手用ACDSee把从网上找来的BMP文件,调整其大小为271*177(我的这个图片是两个部分合在一起,所以比手机实际屏幕大了),另存为PNG格式。半天时间刚刚好,不但搞清楚了要做的东东,还把要用的图片准备好了。

  四、概要设计

  概要设计是从需求分析过渡到详细设计的桥梁和纽带,这一部分中我们确定项目的实现方法和模块的划分。我们决定将整个项目分成五个部分,分别是前面介绍的Images、Draw,还有Map和Displayable1和MIDlet1。Images和Draw类功能简单、结构固定,因此很多项目我们都使用这两各类,这里直接拿来改改就能用了,前面已经介绍过这里不再赘述。Map类是用来从外部文件读入地图,然后保存在一个数组之中,这部分的内容是我们在本阶段讨论的重点。Displayable1是一个继承了Canvas类的画布,它用来处理程序的主要控制逻辑和一部分控制逻辑所需的辅助函数,主要函数应该包括用来绘图的paint()函数、用来控制操作的keyPressed()函数、用来控制选择区域的setRange()函数、用来控制选择要移动到区域的setMoveRange()函数、用来移动选中区域的Move()函数和判断是否完成任务的win()函数,更具体的分析,我们放到详细设计中去细化。MIDlet1实际上就是一个控制整个J2ME应用的控制程序,其实也没有什么可特别的,它和我们前面介绍的"Hello World"程序大同小异,这里就不展开来说了,后面会贴出它的全部代码。

  Map类主要应该有一个Grid[][]的二维数组,用来存放华容道的地图,还应该有一个read_map()函数用来从外部文件读取地图内容填充Grid数据结构,再就是要有一个draw_map()函数用来把Grid数据结构中的地图内容转换成图片显示出来(当然要调用Draw类的paint方法)。说到读取外部文件,笔者知道有两种方法:一种是传统的定义一个InputStream对象,然后用getClass().getResourceAsStream()方法取得输入流,然后再从输入流中取得外部文件的内容,例如

InputStream is = getClass().getResourceAsStream("/filename");
if (is != null) {
byte a = (byte) is.read();
}

  这里请注意文件名中的根路径是相对于便以后的class文件放置的位置,而不是源文件(java)。第二种方法是使用onnector.openInputStream方法,然后打开的协议是Resource,但是这种方法笔者反复尝试都没能调通,报告的错误是缺少Resource协议,估计第二种方法用到J2ME的某些扩展类包,此处不再深究。由于以前已经做过一些类似华容道这样的地图,这里直接给出Map类的代码,后面就不再详细解释Map类了,以便于我们可以集中精力处理Displayable1中的逻辑。Map类的代码如下:

package huarongroad;

import java.io.InputStream;
import javax.microedition.lcdui.*;

public class Map {
//处理游戏的地图,负责从外部文件加载地图数据,存放地图数据,并按照地图数据绘制地图

public byte Grid[][];//存放地图数据

public Map() {//构造函数,负责初始化地图数据的存储结构
this.Grid = new byte[Images.HEIGHT][Images.WIDTH];
//用二维数组存放地图数据,注意第一维是竖直坐标,第二维是水平坐标
}

public int[] read_map(int i) {
<A href="file://从">file://从</A>外部文件加载地图数据,并存放在存储结构中,返回值是光标点的位置
//参数是加载地图文件的等级
int[] a = new int[2];//光标点的位置,0是水平位置,1是竖直位置
try {
InputStream is = getClass().getResourceAsStream(
"/huarongroad/level".concat(String.valueOf(i)));
if (is != null) {
for (int k = 0; k < Images.HEIGHT; k++) {
for (int j = 0; j < Images.WIDTH; j++) {
this.Grid[k][j] = (byte) is.read();
if ( this.Grid[k][j] == Images.CURSOR ) {
//判断出光标所在位置
a[0] = j;//光标水平位置
a[1] = k;//光标竖直位置
this.Grid[k][j] = Images.BLANK;//将光标位置设成空白背景
}
}
is.read();//读取回车(13),忽略掉
is.read();//读取换行(10),忽略掉
}
is.close();
}else {
//读取文件失败
a[0] = -1;
a[1] = -1;
}
}catch (Exception ex) {
//打开文件失败
a[0] = -1;
a[1] = -1;
}
return a;
}

public boolean draw_map(Graphics g) {
//调用Draw类的静态方法,绘制地图
try {
for (int i = 0; i < Images.HEIGHT; i++) {
for (int j = 0; j < Images.WIDTH; j++) {
Draw.paint(g, this.Grid[i][j], j, i);//绘制地图
}
}
return true;
}catch (Exception ex) {
return false;
}
}
}

  对于像华容道这样的小型地图可以直接用手工来绘制地图的内容,比如:

fa1c
2232
bd1e
2gg2
gihg

  但是,如果遇到像坦克大战或超级玛莉那样的地图,就必须另外开发一个地图编辑器了(我会在后续的文章中介绍用vb来开发一个地图编辑器)。

  五、详细设计

  详细设计是程序开发过程中至关重要的一个环节,好在我们在前面的各个阶段中已经搭建好了项目所需的一些工具,现在这个阶段中我们只需集中精力设计好Displayable1中的逻辑。(两天的时间当然不只干这点活,还要把其他几个类的设计修改一下)

  Displayable1这个类负责处理程序的控制逻辑。首先,它需要有表示当前关面的变量level、表示当前光标位置的变量loc、表示要移动区域的变量SelectArea、表示要移动到的区域的变量MoveArea、表示是否已有区域被选中而准备移动的变量Selected和Map类的实例MyMap。然后,我们根据用户按不同的键来处理不同的消息,我们要实现keyPressed()函数,在函数中我们处理按键的上下左右和选中(Fire),这里的处理需要我展开来讲一讲,后面我很快会把这一部分详细展开。

  接下来,是实现paint()函数,我们打算在这一部分中反复的重画背景、地图和选择区域,这个函数必须处理好区域被选中之后的画笔颜色的切换,具体讲就是在没有选中任何区域时要用黑色画笔,当选重要移动的区域时使用绿色画笔,当选择要移动到的区域时改用红色画笔(当然附加一张流程图是必不可少的)。

  再下面要实现的setRange()函数和setMoveRange()函数,这两个函数用来设置要移动的区域和要移动到的区域,我的思路就是利用前面在Images类中介绍过的地图组合标记常量,当移动到地图组合标记常量时,根据该点地图中的值做逆向变换找到相应的地图标记常量,然后设置相应的loc、SelectArea和MoveArea,其中setMoveRange()函数还用到了一个辅助函数isInRange(),isInRange()函数是用来判断给定的点是否在已选中的要移动的区域之内,如果isInRange()的返回值是假并且该点处的值不是空白就表明要移动到的区域侵犯了其他以被占用的区域。有了setRange()和setMoveRange()函数,Move()函数就水到渠成了,Move()函数将要移动的区域移动到要移动到的区域,在移动过程中分为三步进行:

  第一.复制要移动的区域;

  第二.将复制出的要移动区域复制到要移动到的区域(这两步分开进行的目的是防止在复制过程中覆盖掉要移动的区域);

  第三.用isInRange2()判断给定的点是否在要移动到的区域内,将不在要移动到的区域内的点设置成空白。

  下面我们详细的分析一下keyPressed()函数的实现方法:首先,keyPressed()函数要处理按键的上下左右和选中(Fire),在处理时需要用Canvas类的getGameAction函数来将按键的键值转换成游戏的方向,这样可以提高游戏的兼容性(因为不同的J2ME实现,其方向键的键值不一定是相同的)。

  接下来,分别处理四个方向和选中.当按下向上时,先判断是否已经选定了要移动的区域(即this.selected是否为真),如果没有选中要移动区域则让光标向上移动一格,然后调用setRange()函数设置选择要移动的区域,再调用repaint()函数刷新屏幕,否则如果已经选中了要移动的区域,就让光标向上移动一格,然后调用setMoveRange()函数判断是否能够向上移动已选中的区域,如果能移动就调用repaint()函数刷新屏幕,如果不能移动就让光标向下退回到原来的位置。

  当按下向下时,先判断是否已经选定了要移动的区域,如果没有选中要移动的区域则判断当前所处的区域是否为两个格高,如果是两个格高则向下移动两格,如果是一个格高则向下移动一格,接着再调用setRange()函数设置选择要移动的区域,而后调用repaint()函数刷新屏幕,否则如果已经选中了要移动的区域,就让光标向下移动一格,然后调用setMoveRange()函数判断是否能够向下移动已选中的区域,如果能移动就调用repaint()函数刷新屏幕,如果不能移动就让光标向上退回到原来的位置.按下向左时情况完全类似向上的情况,按下向右时情况完全类似向下的情况,因此这里不再赘述,详细情况请参见程序的源代码。

  当按下选中键时,先判断是否已经选中了要移动的区域,如果已经选中了要移动的区域就调用Move()函数完成由要移动的区域到要移动到的区域的移动过程,接着调用repaint()函数刷新屏幕,然后将已选择标记置成false,继续调用win()函数判断是否完成了任务,否则如果还没有选定要移动的区域则再判断当前选中区域是否为空白,如果不是空白就将选中标记置成true,然后刷新屏幕.这里介绍一个技巧,在开发程序遇到复杂的逻辑的时候,可以构造一格打印函数来将所关心的数据结构打印出来以利调试,这里我们就构造一个PrintGrid()函数,这个函数纯粹是为了调试之用,效果这得不错.至此我们完成了编码前的全部工作。

  六.编码

  整个项目共有五个类,有四个类的代码前面已经介绍过了,而且是在其他项目中使用过的相对成熟的代码.现在只需全力去实现Displayable1类.Displayable1类的代码如下:

package huarongroad;

import javax.microedition.lcdui.*;

public class Displayable1 extends Canvas implements CommandListener {

private int[] loc = new int[2]; <A href="file://光">file://光</A>标的当前位置,0是水平位置,1是竖直位置
private int[] SelectArea = new int[4];//被选定的区域,即要移动的区域
private int[] MoveArea = new int[4];//要移动到的区域
private Map MyMap = new Map();//地图类
private boolean selected;//是否已经选中要移动区域的标志
private int level;//但前的关面
public Displayable1() {//构造函数
try {
jbInit();//JBuilder定义的初始化函数
}catch (Exception e) {
e.printStackTrace();
}
}
private void Init_game(){
//初始化游戏,读取地图,设置选择区域,清空要移动到的区域
this.loc = MyMap.read_map(this.level);//读取地图文件,并返回光标的初始位置
//0为水平位置,1为竖直位置
this.SelectArea[0] = this.loc[0];//初始化选中的区域
this.SelectArea[1] = this.loc[1];
this.SelectArea[2] = 1;
this.SelectArea[3] = 1;
this.MoveArea[0] = -1;//初始化要移动到的区域
this.MoveArea[1] = -1;
this.MoveArea[2] = 0;
this.MoveArea[3] = 0;
}
private void jbInit() throws Exception {//JBuilder定义的初始化函数
<A href="file://初">file://初</A>始化实例变量
this.selected = false;//设置没有被选中的要移动区域
this.level = 1;
Images.init();//初始化图片常量
Init_game();//初始化游戏,读取地图,设置选择区域,清空要移动到的区域
setCommandListener(this);//添加命令监听,这是Displayable的实例方法
addCommand(new Command("Exit", Command.EXIT, 1));//添加“退出”按钮
}

public void commandAction(Command command, Displayable displayable) {
//命令处理函数
if (command.getCommandType() == Command.EXIT) {//处理“退出”
MIDlet1.quitApp();
}
}

protected void paint(Graphics g) {
//画图函数,用于绘制用户画面,即显示图片,勾画选中区域和要移动到的区域
try {
g.drawImage(Images.image_Frame, 0, 0,
Graphics.TOP | Graphics.LEFT);//画背景
MyMap.draw_map(g);//按照地图内容画图
if ( this.selected )
g.setColor(0,255,0);//如果被选中,改用绿色画出被选中的区域
g.drawRect(this.SelectArea[0] * Images.UNIT + Images.LEFT,
this.SelectArea[1] * Images.UNIT + Images.TOP,
this.SelectArea[2] * Images.UNIT,
this.SelectArea[3] * Images.UNIT);//画出选择区域,
<A href="file://如">file://如</A>果被选中,就用绿色
<A href="file://否">file://否</A>则,使用黑色
g.setColor(255,255,255);//恢复画笔颜色
if (this.selected) {//已经选中了要移动的区域
g.setColor(255, 0, 255);//改用红色
g.drawRect(this.MoveArea[0] * Images.UNIT + Images.LEFT,
this.MoveArea[1] * Images.UNIT + Images.TOP,
this.MoveArea[2] * Images.UNIT,
this.MoveArea[3] * Images.UNIT);//画出要移动到的区域
g.setColor(255, 255, 255);//恢复画笔颜色
}
}catch (Exception ex) {
}
System.out.println(Runtime.getRuntime().freeMemory());
System.out.println(Runtime.getRuntime().totalMemory());
}

private void setRange() {
//设置移动后能够选中的区域
//调整当前光标位置到地图的主位置,即记录人物信息的位置
if (this.MyMap.Grid[this.loc[1]][this.loc[0]] == Images.DLEFT) {
this.loc[0] -= 1;//向左调
}else if (this.MyMap.Grid[this.loc[1]][this.loc[0]] == Images.DUP) {
this.loc[1] -= 1;//向上调
}else if (this.MyMap.Grid[this.loc[1]][this.loc[0]] == Images.DLEFTUP) {
this.loc[0] -= 1;//向左调
this.loc[1] -= 1;//向上调
}
this.SelectArea[0] = this.loc[0];//设置光标的水平位置
this.SelectArea[1] = this.loc[1];//设置光标的竖直位置
//设置光标的宽度
if (this.loc[0] + 1 < Images.WIDTH) {
this.SelectArea[2] = this.MyMap.Grid[this.loc[1]][this.loc[0] + 1] != (byte) '1' ?
1 : 2;
}else {
this.SelectArea[2] = 1;
}
//设置光标的高度
if (this.loc[1] + 1 < Images.HEIGHT) {
this.SelectArea[3] = this.MyMap.Grid[this.loc[1] + 1][this.loc[0]] != (byte) '2' ?
1 : 2;
}else {
this.SelectArea[3] = 1;
}
}

private boolean setMoveRange() {
//设置要移动到的区域,能够移动返回true,否则返回false
for (int i = 0; i < this.SelectArea[2]; i++) {
for (int j = 0; j < this.SelectArea[3]; j++) {
if (this.loc[1] + j >= Images.HEIGHT ||
this.loc[0] + i >= Images.WIDTH ||
(!isInRange(this.loc[0] + i, this.loc[1] + j) &&
this.MyMap.Grid[this.loc[1] + j][this.loc[0] + i] !=
Images.BLANK)) {
return false;
}
}
}
this.MoveArea[0] = this.loc[0];
this.MoveArea[1] = this.loc[1];
this.MoveArea[2] = this.SelectArea[2];
this.MoveArea[3] = this.SelectArea[3];
return true;
}

private boolean isInRange(int x, int y) {
//判断给定的(x,y)点是否在选定区域之内,x是水平坐标,y是竖直坐标
if (x >= this.SelectArea[0] &&
x < this.SelectArea[0] + this.SelectArea[2] &&
y >= this.SelectArea[1] &&
y < this.SelectArea[1] + this.SelectArea[3]) {
return true;
}else {
return false;
}
}

private boolean isInRange2(int x, int y) {
//判断给定的(x,y)点是否在要移动到的区域之内,x是水平坐标,y是竖直坐标
if (x >= this.MoveArea[0] &&
x < this.MoveArea[0] + this.MoveArea[2] &&
y >= this.MoveArea[1] &&
y < this.MoveArea[1] + this.MoveArea[3]) {
return true;
}else {
return false;
}
}

protected void keyPressed(int keyCode) {
//处理按下键盘的事件,这是Canvas的实例方法
switch (getGameAction(keyCode)) {//将按键的值转化成方向常量
case Canvas.UP://向上
if (!this.selected) {//还没有选定要移动的区域
if (this.loc[1] - 1 >= 0) {//向上还有移动空间
this.loc[1]--;//向上移动一下
setRange();//设置光标移动的区域,该函数能将光标移动到地图主位置
repaint();//重新绘图
}
}else {//已经选定了要移动的区域
if (this.loc[1] - 1 >= 0) {//向上还有移动空间
this.loc[1]--;//向上移动一下
if (setMoveRange()) {//能够移动,该函数能够设置要移动到的区域
repaint();//重新绘图
}else {//不能移动
this.loc[1]++;//退回来
}
}
}
break;
case Canvas.DOWN://向下
if (!this.selected) {//还没有选定要移动的区域
if (this.loc[1] + 1 < Images.HEIGHT) {//向下还有移动空间
if (this.MyMap.Grid[this.loc[1] + 1][this.loc[0]] ==
Images.DUP){//该图片有两个格高
this.loc[1]++;//向下移动一下
if (this.loc[1] + 1 < Images.HEIGHT) {//向下还有
<A href="file://移">file://移</A>动空间
this.loc[1]++;//向下移动一下
setRange();//设置光标移动的区域,
<A href="file://该">file://该</A>函数能将光标移动到地图主位置
repaint();//重新绘图
}else {//向下没有移动空间
this.loc[1]--;//退回来
}
}else {//该图片只有一个格高
this.loc[1]++;//向下移动一下
setRange();//设置光标移动的区域,
<A href="file://该">file://该</A>函数能将光标移动到地图主位置
repaint();//重新绘图
}
}else {
}
}else {//已经选定了要移动的区域
if (this.loc[1] + 1 < Images.HEIGHT) {//向下还有移动空间
this.loc[1]++;//向下移动一下
if (setMoveRange()) {//能够移动,该函数能够设置要移动到的区域
repaint();//重新绘图
}else {//不能移动
this.loc[1]--;//退回来
}
}
}
break;
case Canvas.LEFT://向左
if (!this.selected) {//还没有选定要移动的区域
if (this.loc[0] - 1 >= 0) {//向左还有移动空间
this.loc[0]--;//向左移动一下
setRange();//设置光标移动的区域,该函数能将光标移动到地图主位置
repaint();//重新绘图
}
}else {//已经选定了要移动的区域
if (this.loc[0] - 1 >= 0) {//向左还有移动空间
this.loc[0]--;//向左移动一下
if (setMoveRange()) {//能够移动,该函数能够设置要移动到的区域
repaint();//重新绘图
}else {//不能移动
this.loc[0]++;//退回来
}
}
}
break;
case Canvas.RIGHT://向右
if (!this.selected) {//还没有选定要移动的区域
if (this.loc[0] + 1 < Images.WIDTH) {//向右还有移动空间
if (this.MyMap.Grid[this.loc[1]][this.loc[0] + 1] ==
Images.DLEFT) {//该图片有两个格宽
this.loc[0]++;//向右移动一下
if (this.loc[0] + 1 < Images.WIDTH) {//向右还有
<A href="file://移">file://移</A>动空间
this.loc[0]++;//向右移动一下
setRange();//设置光标移动的区域,
<A href="file://该">file://该</A>函数能将光标移动到地图主位置
repaint();//重新绘图
}else {//向右没有移动空间
this.loc[0]--;//退回来
}
}else {//该图片只有一个格宽
this.loc[0]++;//向右移动一下
setRange();//设置光标移动的区域,
<A href="file://该">file://该</A>函数能将光标移动到地图主位置
repaint();//重新绘图
}
}else {
}
}else {//已经选定了要移动的区域
if (this.loc[0] + 1 < Images.WIDTH) {//向右还有移动空间
this.loc[0]++;//向右移动一下
if (setMoveRange()) {//能够移动,该函数能够设置要移动到的区域
repaint();//重新绘图
}else {//不能移动
this.loc[0]--;//退回来
}
}
}
break;
case Canvas.FIRE:
if (this.selected) {//已经选定了要移动的区域
Move();//将要移动的区域移动到刚选中的区域
repaint();//重新绘图
this.selected = false;//清除已选定要移动区域的标志
if ( win()) {
System.out.println("win");
}
}else {//还没有选定要移动的区域
if (this.MyMap.Grid[this.loc[1]][this.loc[0]] ==
Images.BLANK) {//要移到的位置是一个空白
}else {//要移到的位置不是空白
this.selected = true;//设置已选定要移动区域的标志
}
repaint();//重新绘图
}
break;
}
}

private boolean win(){
<A href="file://判">file://判</A>断是否已经救出了曹操
if ( this.MyMap.Grid[Images.HEIGHT - 2 ][Images.WIDTH - 3 ] == Images.CAOCAO )
return true;
else
return false;
}

private void PrintGrid(String a) {
<A href="file://打">file://打</A>印当前地图的内容,用于调试
System.out.println(a);
for (int i = 0; i < Images.HEIGHT; i++) {
for (int j = 0; j < Images.WIDTH; j++) {
System.out.print( (char)this.MyMap.Grid[i][j]);
}
System.out.println("");
}
}

private void Move() {
<A href="file://将">file://将</A>要移动的区域移动到刚选中的区域
if (this.MoveArea[0] == -1 || this.MoveArea[1] == -1 ||
this.SelectArea[0] == -1 || this.SelectArea[1] == -1) {//没有选中区域
}else {//已经选中了要移动的区域和要移动到的区域
byte[][] temp = new byte[this.SelectArea[3]][this.SelectArea[2]];
<A href="file://复">file://复</A>制要移动的区域,因为这块区域可能会被覆盖掉
for (int i = 0; i < this.SelectArea[2]; i++) {
for (int j = 0; j < this.SelectArea[3]; j++) {
temp[j][i] =
this.MyMap.Grid[this.SelectArea[1] +j]
[this.SelectArea[0] + i];
}
}
<A href="file://PrintGrid">file://PrintGrid</A>("1"); // 调试信息
<A href="file://将">file://将</A>要移动的区域移动到刚选中的区域(即要移动到的区域)
for (int i = 0; i < this.SelectArea[2]; i++) {
for (int j = 0; j < this.SelectArea[3]; j++) {
this.MyMap.Grid[this.MoveArea[1] + j]
[this.MoveArea[0] + i] = temp[j][i];
}
}
<A href="file://PrintGrid">file://PrintGrid</A>("2");// 调试信息
<A href="file://将">file://将</A>要移动的区域中无用内容置成空白
for (int i = 0; i < this.SelectArea[3]; i++) {
for (int j = 0; j < this.SelectArea[2]; j++) {
if (!isInRange2(this.SelectArea[0] + j,
this.SelectArea[1] + i)) {//该点是不在要移动到
<A href="file://的">file://的</A>区域之内,需置空
this.MyMap.Grid[this.SelectArea[1] + i]
[this.SelectArea[0] + j] = Images.BLANK;
}else {
}
}
}
<A href="file://PrintGrid">file://PrintGrid</A>("3");// 调试信息
this.SelectArea[0] = this.MoveArea[0];//重置选中位置的水平坐标
this.SelectArea[1] = this.MoveArea[1];//重置选中位置的竖直坐标
this.MoveArea[0] = -1;//清空要移动到的位置
this.MoveArea[1] = -1;//清空要移动到的位置
this.MoveArea[2] = 0;//清空要移动到的位置
this.MoveArea[3] = 0;//清空要移动到的位置
}
}
}

  代码的相关分析,在详细设计阶段已经讲过,代码中有比较相近的注释,请读者自行研读分析.将全部的代码写好,用wtk2.0自带的Ktoolbar工具建立一个工程,接下来把去不源文件放到正确位置下,然后点击build,再点run,就完成了程序的编写.当然如果有错误还要修改和调试.

  七、测试

  作为一个真正的产品要经过单体测试、结合测试和系统测试。由于项目本身简单,而且大部分代码已经是相对成熟的,我们跳过单体测试;又由于笔者的实际环境所限,无法搞到Java手机,无法架设OTA服务器,因此我们也只能放弃系统测试。那么就让我们开始结合测试吧。测试之前要先出一个测试式样书,也就是测试的计划。我们将它简化一下,只测试如下几种情况:第一、对各种形状的区域的选择和移动;第二、临近边界区域的选择和移动;第三、同一区域的反复选择和反复移动;第四、非法选择和非法移动。有了测试的目标,接下来的工作就是用wtk2.0自带的Run MIDP Application工具进行测试。打开这个工具,加载huarongRoad的jad文件,程序就会自动运行,选择launch上MIDlet1这个程序,华容道游戏就会跃然屏幕之上,接下来的工作就是左三点.右三点,拇指扭扭,来做测试。测试过程中发现任何的问题,立刻发一个bug票给自己,然后就又是痛苦的调试和修正bug,如此如此。

  八.发布

  谈到发布,其实是个关键,再好的产品不能很好的发布出去也只是个产品而已,变不成商品也就得不到回报.由于笔者的条件所限,这里只能是纸上谈兵,不过还是希望能够使读者对这一过程有所了解(网上的资料也很多)。

  J2ME的程序发布一般都是通过OTA(Over The Air),你只需要一台有公网IP的主机和一个普通的web Server就可以了(尽管要求很低,但笔者还是没有),这里我们以apache为例介绍一下OTA服务的配置,首先是安装好了apache服务器,然后在conf目录下找到mime.types文件,在该文件中加入如下两行

application/java-archive jar
text/vnd.sun.j2me.app-descriptor jad

  然后重起apache服务器就可以了。接下来的工作就是修改jad文件中MIDlet-Jar-URL:后面的参数,将它改为URL的绝对路径,即<A href="http://***/">http://***/</A>huarongroad.jar(其中***是你的域名或IP地址)。在下面就是用java手机下载jad文件,它会自动部署相应的jar文件并加载它。剩下的工作就和在模拟器上操作是一样的了。

  九、项目总结

  至此,我们已经完成了一个J2ME游戏的全部开发过程,程序中涉及到了调研、分析、设计、编码、测试和发布等方面的问题,其实在实际的工作中还有很多更为具体的问题,毕竟技术只在软件开发过程中占据很有限的一部分,这里限于篇幅的限制无法一一具体展开。今后,笔者计划再写一篇使用J2ME开发手机屏保的文章,借此机会向读者展示J2ME动画技术;然后再写一篇J2ME网络应用的文章,做一个类似开心辞典那样的知识问答游戏,以便向读者展示J2ME的网络技术;待这两方面的技术交待清楚之后,我将引领读者制作一个稍大一些的游戏。

posted @ 2005-02-17 01:02 蓝色雪焰 阅读(435) | 评论 (0)编辑 收藏
 

韩国系MMORPG和EverQuest在怪物智能上的简单对比

现在,让我们假设诸位正在设计一款MMO ARPG中的怪物行动模式。

在主流的韩国系MMO ARPG中,这些问题一般被如下处理:
1. 敌人是否会主动攻击玩家人物?如何判断?
分为主动攻击和被动攻击两种类型。前者当玩家人物进入自身周围一定范围之后激发攻击行为。后者当自身被攻击后激发攻击行为。

2. 当怪物面对多个玩家的时候,如何选择自己的攻击对象?
主流的处理方式是攻击第一个攻击自己的玩家。

3. 战斗过程中,怪物能够改变自己的攻击目标吗?如何判断?
基本上不改变。

4. 当处于不利的情况下,怪物会作出什么行动?
死战到底,有些游戏中有逃跑的设定。

5. 怪物之间能否协作?
一拥而上。

在欧美经典MMORPG EverQuest中,是这样处理的:
1. 敌人是否会主动攻击玩家人物?如何判断?
通过一个关系表来决定,如果玩家和自身阵营关系恶劣,那么主动攻击。否则是被动攻击。(这个关系表是动态的,会根据玩家的行为而改变)

2. 当怪物面对多个玩家的时候,如何选择自己的攻击对象?
攻击首先进入自己视野或者攻击自己的玩家。

3. 战斗过程中,怪物能够改变自己的攻击目标吗?如何判断?
战斗中,怪物有一个隐藏的仇恨列表。怪物会攻击处于自己仇恨列表顶端的玩家,而玩家会增加仇恨的动作包括攻击、挑衅、医疗同伴、施放魔法……等等。换言之,如果一个法师疯狂的施放攻击法术,那么一定会被怪物首先料理。同样的,如果牧师频繁的医疗同伴,也会被怪物特殊照顾。(正确的战斗方式是让肉盾类角色保证自己永远处于仇恨列表最顶端,当然这很困难,但是却很有必要,也很有趣)

4. 当处于不利的情况下,怪物会作出什么行动?
逃跑,而且速度相当快。鉴于怪物之间能够呼唤,所以让怪物成功跑掉往往比较可怕。有一些法师系的敌人会用施放传送门的方式逃跑。

5. 怪物之间能否协作?
怪物之间的仇恨可以传递。如果两个怪物距离很近,那么很可能一个发现到了你而两个都冲过来。法师系的怪物也会给同伴加血和一些防御性法术。


简单的说,EQ在“人工智能”的范畴上并没有走多远,但是在游戏上却做的很出色。特别是“仇恨列表”,并不复杂的规则衍生出了很多的变化,堪称天才的设计。当你体会到因为这个限制而衍生出的精彩刺激的游戏过程,便能理解到玩家想要的其实并不仅仅是经验值而已。

试试看将“仇恨列表”导入你的游戏,你觉得会发生什么?

posted @ 2005-02-16 00:00 蓝色雪焰 阅读(363) | 评论 (0)编辑 收藏
 

Hello everyone,  Happy New Year!

我国现出土文物中,最早的剑出现在殷周时期。

   ·在西周初期的车战组合中,剑的地位并不重要,主要用于自卫或肉搏。据《释名》记载:“剑,检也, 所以防检非常也。”当时剑的全长在17—27厘米之间,而有效使用的剑锋约12—18厘米。

   ·春秋之后,因为步兵的兴起,剑作为一种武器开始受到重视,长度在28—40厘米之间。尤其是在吴越地区,因水道纵横,车行不便,而使剑的步兵却能发挥出很大威力,所以铸剑水平远高于中原诸国。当时有名的铸剑大师欧治子和干将莫邪夫妇即生活在吴越地区。

   ·在湖北江陵出土的越王勾践剑代表了春秋时期铸剑的最高水平。这把剑也反映了当时剑的外形特征:剑锋不是直的,而是呈拉长而削尖的花生果形,这种形式有利于直刺而不利于劈砍,证明了当时剑武器的战术使 用方法。(有趣的是,强调速度的法拉利跑车的俯视图也呈拉长的花生果形。)

   ·《晏子春秋》记载崔杼杀了齐庄公以后用武力逼诸将军大夫盟于大宫,谓“有敢不盟者,戟拘其颈,剑刺其心”,从另一个侧面证明了戟和剑这两种武器的战士使用方法。

   ·越灭吴,楚灭越,于是越国的铸剑优势转移到了楚国。

   ·战国时,随着车战的式微,剑作为一种步兵武器受到更大的重视,为适应战争的需要,提高了剑的威力, 战国晚期,剑的总长从早期的50厘米达到了81—91.3厘米。

   ·当时铜剑制造的高技术:
   *剑脊和剑锋的含锡量不同,一般背部10%,刃部20%。这样铸成的剑刃口硬而脆,而脊部柔而坚。*为避免表面锈蚀,采用铬盐处理。

   ·由于铜剑已不能满足战争的需要,铁剑自春秋晚期开始出现。当时楚燕两国的铁剑制造技术最好。因为铁比铜强度更好,所以最长的可达到140厘米。

   ·当时铁剑制造的高技术:
   *用纯铁渗碳后对折,多层叠打。
   *剑锋淬火而剑脊不淬火。

   ·到了楚汉相争的时期,铁剑的样子发生了变化,原有两度弧曲的刃部伸成平直,更加锋利,剑锋的夹角则逐渐加大,说明剑的功能已由平行向前推转为主要用刃部劈砍。

   ·战国末年骑兵已作为一种独立的兵种出现,在秦始皇陵中就能发现一些骑兵方队。西汉时期的骑兵已经成为战争的主力。由于马速度快,推刺功能已经没有多大的意义,而劈砍功能十分适用,于是在西汉时期,出现了环柄的长刀。此类武器只有一面刃口,而另一面是厚实的脊,所以便于劈砍,又不易折断。《释名》中称:“刀,到也。以斩伐到其所乃击也。”

   ·西汉时期的刀呈长方形或梯形,直脊直刃,现在看来样子很酷。刀柄和刀身之间没有明显的区分,一般没有格。刀柄首端制成扁圆的环状,称“环柄刀”或“环首刀”,注意,与所谓的“大环刀”不同。

   ·到三国时期,军队中大量装备的短柄兵器,就只有刀了。当时斜谷造刀最有名,例如诸葛亮让蒲元铸造的刀就是斜谷造的。

   ·自东汉之后,剑在战场上被淘汰已成定局,但佩带宝剑的风气未变,另外剑也作为法器或象征物而存在。

   ·北宋时期,刀的形制有所改进,改成前锐后斜的形状,有护手,并且去掉了扁圆的大环和鸟兽类饰物。

   ·明代出现一种腰刀,这是当时部队刀器的主要种类。戚继光在《军器解》中清楚地指出,马步兵兼用的兵器即有腰刀。他还指出:“腰刀造法,铁要多炼,刃用纯钢,自背起用平铲平削,至刃平磨无肩,乃利,妙尤在尖。近时匠役将刃打厚,不肯用工平磨,止用侧锉,将刃横出其芒,两下有肩,砍人不深,刀芒一秃,即为顽铁矣,此当辨之。”可见当时也有假冒伪劣之害。

   ·自明之后,冷兵器逐渐式微,而剑则退出了历史舞台。

posted @ 2005-02-15 23:54 蓝色雪焰 阅读(200) | 评论 (0)编辑 收藏
 

玄幻小说阅读指导


1.转世或来到异时空,异世界的:

魔师再现,中华再起,卑鄙天尊,北斗第八星,转世传说,觉者的传说,黑鸦之舞,旅人之歌,明,飘渺之旅,圣门风云,时空风云录,现代魔法奇谭,异人傲世录,异时空--长城,变革,不会魔法的魔法师,转世魔龙,大富翁之异时代风云,大圣者,大宋日月记,风流才子,浮云游梦,革命,横刀立马,红尘摆渡,洪荒,开神记,科学和魔法,雷神传奇,楼兰,乱世倾情,梦幻王朝,东方传说,明日帝国,末世血皇,时空旅行者,时空风云,太古的盟约,天风剑圣,现代情侠录,笑傲前尘,邪樱,星空的守护者,妖狐歪传,异时空-涌流,异乡的勇士,异域人生,英雄问天记,月落,越空三国志,再生,战魂之海临天空,真实与虚幻之间,征服,重生,纵横异界,魑魅人间道,飞天纵情,混迹三国,降临者,魔法世纪,年轻老头,三国游侠传,实验皇帝,太阳传奇,天才的历程,邪道极限,虚空航程,异时空—皇帝的新装,异世帝王行,真假人生,龙翔九天外传—梦回甲午,异界强者传—神魔之王篇,运动超人,铁血帝国,唯心什照,天界传奇。

其中,现代人回到古代的有:铁血帝国,旅人之歌,明,异时空--长城,变革,大宋日月记,风流才子,革命,楼兰,梦幻王朝,中华再起,时空风云,笑傲前尘,异时空-涌流,异域人生,越空三国志,明日帝国,混迹三国,实验皇帝,异时空—皇帝的新装,龙翔九天外传—梦回甲午,天界传奇。

古代人到现代的:雷神传奇,现代情侠录。

转世后保留记忆的:北斗第八星,转世传说,觉者的传说,圣门风云,时空风云录,异人傲世录,转世魔龙,大圣者,浮云游梦,梦幻王朝,洪荒,再生,实验皇帝,天才的历程,唯心什照。

东方人到西方的:横刀立马,东方传说,异乡的勇士,月落。


2.战争场面较多的:
昆仑,星际王者传说,中华再起,紫川,暗黑之路,大风歌,孤独战神,猛虎王朝,裸兰,天变,铁骑旋风,仙人传奇,小兵传奇,现代军人启事录,异人傲世录,异时空--长城,印海残阳·红莲烈火,原始印记,苍老的少年,苍茫故事,大帝传,大宋日月记,东方传说,风山云海,风之暗黑传,风神传说,风姿物语,革命,乱世激流,楼兰,追忆莽荒岁月,明日帝国,涅槃传说,天河记事,铁血帝国,唯美主义魔法师,笑傲前尘,异时空-涌流,异乡的勇士,月落,越空三国志,召唤之王,真实与虚幻之间,征战天下,东方,费路西的传奇,混迹三国,将星,三国游侠传,时空风云,龙翔九天外传—梦回甲午,银河畅想曲。


3.主角开始就很强的:
江山如此多娇,大唐行镖,乱世猎人,魔师再现,天庐风云,天鹏纵横,紫川,北斗第八星,大风歌,毒侠孟雪歌,红尘飞星,京风秘雨,圣门风云,无能神魔,仙人传奇,现代魔法奇谭,血夜凤凰,银针生死判,自由的风,最强.我的名,暗夜絮语,不败的勇士,大圣者,东方传说,都市龙舞,佛门嫁衣郎,浮云游梦,红尘摆渡,红尘冥剑录,洪荒,禁忌之恋永恒篇,雷神传奇,乱世激流,乱世英雄传,魔法师日记,魔门第一人,涅槃传说,人间,人间兵器,时空道标,神祗之眼,太古的盟约,天风剑圣,我欲成魔,五胡战史,现代情侠录,星空的守护者,修罗刀,玄门传人,妖狐歪传,一个人的战争,异乡的勇士,月落,侦探大作战,真实与虚幻之间,指点江湖,重生,逐鹿天下,纵马江湖,77号当铺,丑汉,费路西的传奇,风雨神州之纵横天下,还没想好名字的故事,你死我活,如天传说,死神传说,太阳传奇,亡灵之眼,我是大魔鬼,邪道极限,银鹰传,大风流,无道魔贼传,异界强者传—神魔之王篇,觉者的传说,弱者日记,侠狂与梦想之舞曲,远方星辰下。

其中强得变态,主角永远没有危险的:天鹏纵横,北斗第八星,圣门风云,无能神魔,银针生死判,暗夜絮语,大圣者,都市龙舞,红尘摆渡,红尘冥剑录,洪荒,魔门第一人,太古的盟约,天风剑圣,星空的守护者,玄门传人,77号当铺,丑汉,亡灵之眼,觉者的传说,人间,弱者日记,侠狂与梦想之舞曲,远方星辰下。


4.主角非人类的:
北斗第八星,红尘摆渡,洪荒,时空旅行者,太古的盟约,星空的守护者,妖狐歪传,战魂之海临天空,都市妖奇谈,天鹏纵横,暗夜絮语,变形虫战记,红尘冥剑录,卡卡,骷髅闯世传说,弱者日记,神祗之眼,神魔变,人间兵器,使徒行列,吸血獠,77号当铺,骷髅传奇,亡灵之眼。


5.传统武侠:
大唐行镖,洪荒天子,江山如此多娇,昆仑,乱世猎人,杯雪,大风歌,毒侠孟雪歌,红尘飞星,京风秘雨,飘零传奇系列,谁主沉浮,鹰刀传说,自由的风,傲剑狂刀记,霸王解甲,蝉翼剑,长刀无痕,转世魔龙,叱吒风云录,翠仗玉球,花溪沉铃录,烈日东升,龙小宝,乱世激流,水龙吟,天河记事,修罗刀,一啸风云动,英雄问天记,悠悠帝王梦.翩翩美人影,指点江湖,纵马江湖,将星,金庸群侠传,蟒迹宋图,睡狮,小龙传,长河一剑,鸳鸯梦,落日风雷。


6.现代都市生活:
都市妖奇谈,天鹏纵横,四面墙:哥们儿的狱中生活,现代军人启事录,现代魔法奇谭,冬之无名,都市龙舞,都市游侠,光辉系列,红尘摆渡,红尘冥剑录,坏蛋是怎样炼成的,雷神传奇,流血的银河,民族魂,人间兵器,人间无限,守护者之初露峥嵘,太古的盟约,天兵传奇,天降横财,天网,吸血獠,现代情侠录,现代神医奇侠传,古惑仔之笑看风云,邪樱,心灵黑客,星空之子,妖狐歪传,永不放弃之混在黑社会,再生,战魂之海临天空,战魂—足球篇,侦探大作战,征服,足球风云录,77号当铺,阿赖耶识,不测之棋,魑魅人间道,风雨神州之纵横天下,荒唐传说,基因传奇,君子之道,流氓老师,命妖—玲珑玉体,普天情侠之我是谁,太阳传奇,天才的历程,天界传奇,我踢球你在意吗,现代侠客行,小子传奇,足球神话,穿墙记,东方强者,混混与女警,金融帝国,控天,天生我材必有用,运动超人。


7.基本没有特殊武功魔法的:
我就是流氓,星际王者传说,中华再起,明,四面墙:哥们儿的狱中生活,现代军人启事录,异时空--长城,印海残阳·红莲烈火,苍茫故事,大富翁之异时代风云,坏蛋是怎样炼成的,梦幻王朝,民族魂,人间无限,天降横财,现代情侠录,现代神医奇侠传,古惑仔之笑看风云,心灵黑客,星际,星空之子,血雨黑渊绿夕阳,寻找人类,异时空-涌流,异域人生,永不放弃之混在黑社会,悠悠帝王梦.翩翩美人影,再生,战魂—足球篇,侦探大作战,足球风云录,不测之棋,铁血帝国,黄族英雄传,流氓老师,命妖—玲珑玉体,天才的历程,天界传奇,我踢球你在意吗,足球神话,穿墙记,回到今天,混混与女警,金融帝国,控天,龙翔九天外传—梦回甲午,铁血帝国缔造史,变革,风流才子,革命,笑傲前尘,明日帝国,越空三国志,实验皇帝,异时空—皇帝的新装,寻找回来的世界。

其中完全没有的:星际王者传说,中华再起,明,四面墙:哥们儿的狱中生活,现代军人启事录,异时空--长城,苍茫故事,坏蛋是怎样炼成的,民族魂,天降横财,心灵黑客,星际,星空之子,血雨黑渊绿夕阳,寻找人类,永不放弃之混在黑社会,战魂—足球篇,足球风云录,不测之棋,铁血帝国,流氓老师,命妖—玲珑玉体,我踢球你在意吗,足球神话,穿墙记,回到今天,混混与女警,龙翔九天外传—梦回甲午,变革,风流才子,革命,笑傲前尘,明日帝国,寻找回来的世界。


8.关于吸血鬼的:
流血的银河,吸血鬼日志,吸血狂想曲。


9.关于骷髅及亡灵巫师的:
骷髅闯世传说,限,骷髅传奇,亡灵之眼。


10.关于黑社会的:
我就是流氓,十六少年兄之山猫,坏蛋是怎样炼成的,永不放弃之混在黑社会,流氓老师,古惑仔之笑看风云。


11.主角如韦小宝般无赖并在武侠世界始终很弱的:
鱼龙变,无魔大陆,蝉翼剑。


12.关于未来星际战争的:
星际王者传说,星战英雄,无能神魔,小兵传奇,苍茫故事,风之谷,大帝国,末世血皇,时空旅行者,猩红荣耀,银河畅想曲2,银翼新世纪,银河幻世录,征服,众神故事,罪恶,雕龙诀,太阳传奇,心魔战将,星际通缉犯,星煞,星际。


13.平凡的主角得到外星人或他人记忆的:
魔法学徒,我就是流氓,梦幻纪元,暗黑的旋律,大铸剑师,道.道.道,光辉系列,人间无限,天网,吸血獠,心灵黑客,星空之子,年轻老头,天界传奇,心劫,大树,金融帝国,控天,异界强者传—神魔之王篇,基因传奇,运动超人。


14.幽默感较强的:
鱼龙变,英雄志,紫川,京风秘雨,天变。


15.豪气冲天的:
大唐行镖,英雄志,紫川,长刀无痕,杯雪。


16.有些叛逆或干脆是魔,妖的主角:
江山如此多娇,昆仑,魔师再现,都市妖奇谈,天鹏纵横,天魔神谭,我就是流氓,鱼龙变,暗黑之路,黑鸦之舞,魔盗,十六少年兄之山猫,时空风云录,死灵法师,血夜凤凰,最强.我的名,暗夜絮语,长刀无痕,道.道.道,恶障消长传,光闇之歌,红尘摆渡,红尘冥剑录,坏蛋是怎样炼成的,古惑仔之笑看风云,修罗刀,永不放弃之混在黑社会,变态者之镇魂歌,流氓老师,亡灵之眼,邪道极限.


17.发人深思的:
天行健,寻找人类,罪恶,被上苍诅咒的天才,五胡战史,飘零传奇系列

posted @ 2005-02-15 21:14 蓝色雪焰 阅读(3776) | 评论 (5)编辑 收藏
 

总体构想:
  当前游戏的总体发展趋势是利用硬件提供的一切可能性来提升游戏的仿真性,而且似乎这是唯一吸引人的追求;因为当人们有了高配置的计算机以后,倾向于认为如果运行不能占用全部资源的游戏就是一种浪费,既然那些更加复杂、更加占用资源的游戏可以做到更好的仿真性,那么不用到这种计算机的处理能力似乎本身就代表了不好。这是广泛存在的思维误区。虽然我们并不能扭转用户的这种心理,而要善意地去理解;但是我们不能忽视这样一个现实,那就是编制技术复杂的、充分耗用CPU及其他计算机资源而达到极高仿真度的游戏是非常困难的,对一个缺乏经验和天才的游戏制作公司来说,尤其如此,象尚洋公司和他们编制的《血狮》就是这样一个典型的例子。
  并不是所有的用户都有机器的迷信,仍然有相当多的玩家更加注意游戏的可玩性,而可玩性并不多取决于游戏的仿真度,而是取决于游戏的内涵。虽然这是老生常谈的问题,但是真正注意到的公司并不多。那么什么是游戏的内涵呢?说法与解答都很多。我认为游戏的内涵就是虚拟世界和用户的梦的结合,而且用户的梦是两者的重心所在。不关心当前的人们在想些什么,不做这样的调查,是不可能知道用户想要什么样的游戏的。  

  中国社会正处在转型期,人们的心理状态异常复杂。社会大众对纯文学的疏远并不表明当前的人不需要一种心灵的抚慰,而是恰恰相反,这方面的供求缺口非常之大。如果有一类游戏能反映当今的社会现实,回应人们的内心诉求,提供一种严肃的思考过程,那么它在商业上的成功是可以期待的。

  这一类游戏的重心将放在人性的刻画上,主要通过文字和情节取胜,不需要太高的编程技术和机器配置,如果在剧本的编写上能做到精益求精、尽善尽美,相信可以在市场中占有相当的份额。

 

游戏名称:在钢筋丛林中

游戏类型:单人/经营类

游戏行进方式:强制剧情+即时+回合

游戏主题:大城市中的个人奋斗

游戏角色:可选六人中之一人进行游戏。

  角色1林强男24岁原在一家制鞋厂做行政助理,工资少得可怜,所学非所用,单位人际关系复杂,心情苦闷。此时从大学起就相爱的恋人提出分手,绝望的主人公决定背水一战,离开原来的环境,到外面的世界去闯荡一番。目标是实现自我价值,找到真爱。
(特殊失败条件:回原单位、到42岁还未完成目标、)

  角色2李兰女23岁在某个广告公司工作,本来工作很令人满意,但其上司不断对她进行性骚扰,且这个上司在城市广告界有绝对的威势,李兰被迫离开这个公司之后,她无法在其他广告公司找到职位,只能转行。目标是真正摆脱她讨厌的上司的纠缠并且找到真爱。
(特殊失败条件:离开这个城市、到32岁还未实现目标)

角色3姚奉男37岁某纸箱厂下岗职工,学历很低,没有积蓄,上有病弱的老父,下有还在读书的14岁的女儿。为了一家老小的生活,不得不自谋出路,开始自我创业。目标是存款达到20万。
(特殊失败条件:无)

  角色4陈小勇男18岁某商贸中专毕业生,在学校没有学到任何实用技能,只知道吃喝玩乐。喜欢同班的白杨,但白杨一点儿也看不上他。受此刺激,他决心好好地干出一番事业来。目标是成为千万富翁,并且娶到白杨。
(特殊失败条件:到21岁时,听闻白杨已经嫁人)

  角色5张娜若女19岁美丽的乡下妹,随在建筑工队打工的男友到城市,为一户人家做保姆。进了城以后,她的观念有了很大的变化。她不满男友杨火对她提出的性要求,以及以后婚后自己可能的处境,与他分手。虽然如此,她还是爱着他,期待着能在城市里以另一种方式与他重逢。
(特殊失败条件:答应杨火的要求,道德指数低于20)

  角色6顾芸女22岁相貌一般,在电脑公司工作。她在网上认识一个男友,开始了网恋。两人都是真心相爱,但又恐惧着网恋的破灭,一再推迟见面的时候。对顾芸来说,能和男友现实地相爱下去,是最关键的事情。目标是美梦成真。
(特殊失败条件:男友不再爱她)

  共同失败条件
  生命值为0、信心为0

游戏模式
  每个角色在游戏开始后都将进行一段强制剧情模式。强制剧情模式中含有少量的分支选项,玩家不同的选择对应着最终不同的结局。完成剧情模式以后,每个角色以一定的身份,一定量的资金在城市中为了达到自己的目标,开始自己的奋斗。这时游戏的模式改变为象《卧龙传》那样的即时模式。角色将进行各种各样的经营活动,自我培养。当角色的某些数值达到剧情设定的时候,会再穿插剧情模式。这是一般经营活动和养成而言,角色要完成最终目标,还必须要达成相当数量的特定目标。游戏将采用回合制的方式,让玩家就某个特定的目标和电脑在某个划定区域里进行周旋。这也是这个游戏唯一需要编制机器AI的地方。

  虚拟的城市
  本游戏设定在某一个城市内部进行。游戏将展现完整而细致的城市环境,包括建筑、机构、人。

  建筑
  斜45度的假3D造型,比如象《模拟城市2000》的场景,但比例应该更大,由手工绘制,能够看出建筑物类型。在操作上,如果能用鼠标点选建筑的方式进行一般移动,将会很方便玩家。

  机构
  政府行政机构、商业组织、金融机构、服务行业。完全模拟一个大城市的这些情况是完全不可能的,但数量上应该尽量多,主要是提供给玩家选择不同的奋斗道路。

  人

  剧情相关人物、一般人物。预计有姓名者总共300人以上。

  角色的数值体系

  角色的数值体系对经营类和养成类游戏的成功非常关键。本游戏角色的数值包括:
  一类:现金、存款、票证
  二类:信誉、生命、信心、运气、道德
  三类:各种技能经验等级

  多结局
  在强制剧情模式里,玩家不同的选择,在即时模式里的成果,以及在回合制模式里的胜败将会有多种不同的结局。

  仿真性
  本游戏的仿真性不在游戏画面上,而在于各种数值的真实性与行进手段的真实性上,同时还必须注意它的游戏性。如何把三者有机地统一在一起,将是这个游戏成功的关键。

  结语
  本游戏应该注意剧本编写中的人性刻画、情节曲折;数值设定上的平衡合理;美工上的特色风格;操作界面的友好。

  严格地说这个游戏策划并不是一个mud,但是我认为要改成mud也是很好的,期待能打动你。

posted @ 2005-02-15 17:10 蓝色雪焰 阅读(739) | 评论 (0)编辑 收藏
 

经典游戏制作教程

peng


1.游戏制作的主要流程
-------------------------------------------------------------------------------

电脑游戏开发小组中的任何一个人(这个角色通常有策划担任),只要有了一个新的想法 或念头,就孕育着一个新游戏的诞生。在这个创意被充分讨论之后,再加上对其操作过程的趣味性及市场销售的可行性的预测等因素的准确判断,一个完整的策划方案才可能产生。在经过充分的讨论后,策划人员必须将讨论的重点写成文字,也就是提出完整的策划方案,经决策者同意认可后,才能进下一步的工作。这份策划方案就像一部电影的剧本,它必须完整地涵盖整个游戏的故事、流程、内容、方式、游戏画面、角色造型、 场景规划、人工智能、硬件配备、市场评估等。对整个游戏过程的详细描述及实施规划都应 记录在案。 当进入创作过程之后,策划还必须随时和美术设计师和程序设计员保持联系,以免游戏程序的编写失控。策划应能对游戏设置的内容与精神了如指掌,与各个小组及时沟通,并且控制整个游戏制作的进程。



2.游戏设计基本论
-------------------------------------------------------------------------------   

   要设计一个游戏,首先你必须要确定几个重要方针,第一是你要设计的游戏是属於那一种类型,第二是时代背景,第三是模式,第四是程式技术,第五是表现手法,第六是市场定位,第七是研发时间,在掌握上述七个方针之後,你就可以再做详细的规划内容及调配资源,那麽何谓是七项方针呢? 笔者以范例来说明之!
一、类型:
   所谓的类型是指这个游戏所着眼的一个游戏方式,通过这个方式来使玩者达到娱乐的目的,这个游戏方式有专有名词来各别予以命名,兹如下述:

(1) RGP角色扮演:
   这个类型的游戏以通过故事剧情牵引来使玩家能溶入主角所存在的一个世界,这类型态的游戏多半透过战斗升级系统及人物对话的方式来一步步完成设计者所布下的剧情路线,最具代表的作品有日本史克威尔所设计的 "太空战士系列" 及国内大宇资讯所设计的"仙剑奇侠传",当然还有很多部作品例如"神奇传说"等也是此中的佼佼者。
   在RGP的类型中,在近几年来又分支了几个类似的型态,例如说Blizzard的"暗黑破坏神"Dirblo"被定位为"动作RPG",因其动作成分相当高所至,而"神奇传说"、"超时空英雄传说"则被定位尽"战略RPG",只因战略成分比重较高所以又有别於传统RPG。

(2) SLG战略:
   谈起战略游戏,大家最耳熟能详的应是日本光荣公司所出品的"三个系列",KOEI的三国志风靡东亚,从一代进化到现阶段的六代皆为玩家们所津津乐道,而所谓的战略游戏则是透过经营→战争→扩大领土三个手段来蠃得游戏最终目标,一般而言动态成分少,最较偏重於花费脑力的游戏,但从WestWood的新型态战略游戏"沙丘魔堡"问世之後,战略游戏也有了重大的分野,一是以KOEI代表的三国志系列被称为回合制战略游戏,一是以WestWood代表的C&C及Blizzard所代表的魔兽争霸被称为即时制战略游戏,和回合制所不同的是,即时制拥有较多可由玩家与电脑互动的机会,比较不花费脑力,所进行的 方式是建设→生产→攻击→歼灭,在业界有句俏皮话是这样说的:「玩回合制游戏像是自己当了个大将军(元首),运筹帷幄决胜千里之外,而玩即时制游戏则像是个士官长(部队指挥官),只能一味的打打杀杀」由此你可以了解到这两个型态的异同的了。



(3) ACT动作:
   所谓的动作游戏其实就完全靠玩家的反应来做过关的条件,较有名的像DOOM、古墓奇兵、QUAKEⅡ 等,在动作游戏中也分支了相当多的类型,例如快打旋风、铁拳Ⅲ等被定位为格斗型态,主要游戏方式就是二人到四人互相对打一直到分出胜负为止,而DOOM、古墓奇兵则被定位为3D动作冒险游戏,主要目的为杀敌闯关,再来像阿比逃亡记、黑暗之心被定位为横向卷轴游戏,游戏方式就是以攻击跳跃等动作来走过一连串的关卡,表现方式多为2D卷动画面的方式在进行,再如飞龙骑士、极上疯狂大射击则被定为动作射击游戏,游戏方式就是闪躲射击冲过火网进而歼灭守关魔王为止,这些分支型态有共 通特点却又那样的不同,这也是动作游戏吸引人的重要原因。

(4) PZL益智:
   这类型的游戏以趣味性的思考为游戏的主轴,内容可以包罗万,思维模式也可朝物理性及逻辑性方向着眼,具代表性的是大宇资讯的"台湾十六张麻将"、"大富翁"、"仓库番"等,而棋盘式的思考方式着名的有"决战中国象棋"及光谱资讯的"五子棋大师"等,这些游戏入手容易且不分男女老少皆喜欢的特性,使得益智型态的开发较有市场,成本也较低。

(5) ADV冒险:
   冒险游戏的内涵多半脱离不了解谜的成分,是的!这类型的游戏让玩家抽丝剖茧的找出设在游戏背後暗藏的谜底,以顺利完成游戏,具代表作有恶灵古堡、异星搜奇、幽魂等,这类型的游戏年龄层较高,比较不适合国内厂商来研发。
   当你在构思一个新的游戏企划时即应预先想的所属意的类型,然後才进行下一步的计划,一般而言国内市场接受度最高的莫过於 RPG角色扮演类型,这也是为何国内厂商会如此的大力研发RPG型态的游戏。

二、时代背景:
   对於游戏美术来说是一个很重要的方针,因为决定一个时代背景所意味的是资料的搜寻工作方便与否,与美术人员在制定造形时需依据的范例;以国内市场来说多半能接受中国古代时代背景,基本上时代背景有好几种,例如说WestWood的红色警戒架构在公元2000年左右的未来,而魔兽争霸则定在虚幻的欧洲中古世纪中,三国志定位在汉朝末年,星海争霸架构在外太空世界,轩辕剑则定在春秋战国时代等。
时代背景绝对是企划人员在第一阶段规划整个游戏时已先决定好了,如此美术人员才能放心的去搜集资料。

三、模式:
   当决定好类型及时代背景之後,再来就开始要去构思游戏中所要呈现的模式,如假设你的背景订在古代中国,而类型是定为即时战略,这时你必去思考出游戏内容的进行方式,可能你的游戏需要生产的因素,这个因素是什麽? 可以是粮食、矿产及木材,也可以是火山能源、石油、太阳能或天然气等,随着你故事情节上的需要而去制定项目,在作战方式上你所设计的模式可能会去考虑到地形因素、天候因素及资源因素,而且会大量运用到各种战术及攻击方法等,因为如此所以同一种类型的游戏虽多,但模式上却各有特色各有偏重的游戏路线,也各自聚集了拥护者,这就是模式设定的一个重要性,切记千万不可去抄袭他人所定的模式,因为这样一来,当你所设计的游戏完成之後,眼尖的玩家们会把你的产品以过时抄袭为由而弃如敝履,这在这剧烈竞争的国内市场而言是无法存活太久的。

四、程式技术:
   无论你对一个游戏想得多好,架构设计多庞大,如果程式人员本身的技术无法配合的话,那其实一切还是流於空谈,所以在设计一个游戏之前必要先去徵询程式人员的意见,在现在这个环境中不仅程式人员要会Windows98及Wi-ndows NT相关技术,一个完整的系统分析及系统规划是不可缺少的,如此可以避免掉在程式中不可预期的错误出现,而且在一个游戏设计中最好有二个程式人员在运作,一个负责内部程式 (游戏核心引擎) ,一个负责外部程式(介面程式),这样方可发挥完整的战力。

五、表现手法:
      在这个环节中,企划人员、程式人员、美术人员要做完善的沟通及讨论,一般我们知道大部份的电脑游戏是256 色的系统,在这些游戏中对於色盘的控制有相当严苛的要求,为了达到最好的视觉效果,美术人员通常会向程式人员要求多重色盘的资源,而程式人员则会考量到切换时的状况及记忆体配置是否能完全充份,在系统上的问题确定之後,企划人员会提出呈现效果的建议,例如说爆炸效果的表现方式,由内而外扩张到消失的火焰激烈型或包容大量烟雾的燃烧型,这要由企划人员依故事内容来给予定义,同时以物理性逻辑给予美术人员一个建议,再由美术人员前去绘制。
   还有一个例子,以"C&C之红色警戒"与"AGO Empir世纪帝国"的海岸来说明,在"AGO Empir 世纪帝国"的海岸表现是静止的,海水不会流动,最多只有鱼在海中央跳跃,而"C&C"之红色警戒"的海岸表现手法是会流动的,但海中没有任何的特异之处,这两种表现手法各有各的好处及考量,但以笔者而言仍较偏爱"C&C之红色警戒"。
    游戏内容的表现手法通常伴随着同类型游戏间的相异处而有不同的评价及支持者,而不光是美术效果的表现手法,企划人员构思的游戏玩法及程式人员的程式表现都有密切的关系。

六、市场定位:
   不论你所设计的游戏构想如何的好,如果你没有去清楚的定位出你的市场走向,那麽到时制作完成的游戏软体可能会面临到销售不佳的窘状,所以在设计游戏之前你得知道你所定位的族群在那里,从下表中你可作一个市场定位的叁考:
年龄层               教育程度适合的类型内容

7~12岁 国小动作、益智较多趣味性、教学性
13~18岁 国中、高中动作、益智、 较多思考性质、图形精美化同 角色扮演、战略时又较多反射
19岁以上 低知识水平益智、动作较暴力及冒险、趣味性质,操 作简单
19~30岁 大专、大学以上角色扮演、战略富含多重思维性,可以影射周 、冒险、模拟、 遭事物,解谜及创造性运动 

七、研发时间:
      这是企划人员在初步规划中的最後一个项目,针对上述的制作方针你必须对美术人员及程式人员安排一个完整的SCHEDULE,从这个SCHEDULE中去研判律发时间,从企划的角度来说,为了不使良好的点子被其他游戏公司抢先推出,同时也要避免推出後模式已落伍,一个游戏的研发最好在一年内,最多不可超过18个月,以成本控制的角度来说比较符合获利标准。
       假设你规划这个游戏需要一年的时间,那麽你就要去区分出美术制作时间 (第一线)及程式制作时(第二线)间的差异,并考量推出DEMO 版及游戏完成的时间,在适当时机打出游戏知名度,为游戏销售上打下一记商机。

制作流程
   一个游戏的制作如果不能充份控制整个作业程序,那即有delay 的危险,大家都知道游戏软体delay对於销售上的影响会有多大,所以如何尽量避免de-lay是每个游戏设计者应极力去避免的,而要去避免游戏开发作业上delay的情况最重要的是严密控管作业流程及计划表。
   那麽究竟游戏制作流程是一个什麽样的情形呢? 首先企划人员在执行制作的前一个月即要定出企划大纲及搜集可用资源,并经程式人员及美术人员确认後开始执行,我们以一个即时战略的游戏来说明,在制作分期程式人员即投入地图编辑器的撰写,而地图编辑器的逻辑设定要由企划人员先期规划,然後程式人员才根据企划人员的规划而进行程式写作。
   在此同一时期美术人员即开始分工合作,一般一个游戏工作小组会有四位美术人员,他们分别负责造形、人物动作、介面、地图四个部分来制作,但这只粗分法,国内游戏公司较常使用这样的组合,在国外美术人员分为造形、人物动作、介面、地图、片头、过场、後制分镜、场景等九大部份,每个部份皆可能都有二人以上在作业,并有一名监制在执行风格及水准的品质控管,这些人统一由後制人员来与程式人员做交图及配合修图等沟通上的交流,所以说後制作美术人员的成败实关系到整个游戏品质的高低。
由於程式人员在设计地图编辑器时需要利用到一些图素来做测试,所以地图图素设计人员要先一步绘制出程式人员所需要的图素,
   在程式人员测试通过之後方可进入大量生产的阶段,由於地图编辑器的设计者多半直接负责游戏引擎的制作,所以在初期企划人员便开始着手人工智慧AI的逻辑判断作详细的叙述,以期在程式人员撰写地图编辑器之後能立即作人工智慧AI的撰写,而在此同时负责撰写介面的程式人员亦与负责介面设计的美术人员作密切的配合,开始着手制作各个介面,因为介面不仅在游戏中是一个主司控制整个游戏的操作盘,同时也是一个游戏的外观,一个拥有优良创意的介面是很受 玩家喜欢的。 在测试地图编辑器时,程式人员亦需要利用移动物件(人)来测试地图上的障碍物判断及最短路径搜寻法,所以设计人物动作的美术人员在此时要先去做出一组人物动作供程式人员作测试,待程式人员把地图编辑器制作出来之後,人物动作设计的美术人员则只要不断的做并不断的把图给程式人员即可。




3.游戏设计十诫律
-------------------------------------------------------------------------------


Travis S. Casey


1. 编写你所喜爱的游戏
不要人云亦云。只要你和你的朋友喜爱就可以了。 同样道理,不要编写某个游戏主题仅仅因为它当前流行而已。编写你所喜欢的题材, 这样才能激发你的热情。

2. 经验是最好的老师
学习游戏编程最好的方法就是阅读大量的游戏程序。玩和分析这些游戏,然后设计 你自己的游戏或扩展游戏。我最主要的经验都是角色扮演类游戏,我的许多游戏范 例也来自它们,但思路却适用于所有类型的游戏。 我阅读过大量的RPG类游戏,粗略算算大约有七十多个。其中大部份我都玩过,精 通四十多个。不但玩和精通这些游戏,我还分析它们。是什么使得这些游戏好或者 不好?我如何修改它?哪些部份表现的出色?哪些部份不尽人意?为什么? 玩和分析过其它游戏后,我把这些知识用于我自己的游戏。比如在“超级英雄”类 游戏中,“斗士”和“英雄”在使用了“指数特性的换算法”取得较好的效果。如 果我想设计“超级英雄”类游戏时,我就知道“指数换算法”很可取。这样的分析 能给你许多被验证过的思想用于你的工作中。

3. 测试、测试、再测试
测试你的游戏,尽可能多次的玩。最好当你不在场的情况下,让别人来玩,过后再 告诉他们。(让别人当你不在的时候玩游戏称为:“盲测”) 还有,推敲你的规则。考虑假设情况,解决概率复杂性。比如,如果你正在设计一 个RPG,试着找出平均人们用弓箭从一米、五米、十米、五十米和百米范围内射中 人形大小目标的百分机率。对于二战游戏,检测你的监视器和解决一个小步兵摧毁 一辆坦克的机率。反复计算在不同的条件下,如:不同的地形、夜间等等。这将有 助于你找到在数学中出错的地方或建立了一个不好的假设。

4.学习背景知识
如果你想编一个中世纪的神奇游戏,就要去读中世纪的文学和历史。读有关魔法的 书及现有的中世纪传奇游戏。对其它类型的游戏也是如此,如果你想做一个越南战 争的游戏,就应去读有关战争的正史及野史,特别是战略、战术的分析。 所有的背景知识可以用于几种途径:首先,能帮助你创造出逼真的角色。另外它能 减少你在术语及背景知识方面,出现重大错误的可能性。当然,资料应该本身就很 有趣。如果对于所要学的都不感兴趣,那为什么还要编写这方面的游戏呢?

5. 正规教育
选一门介绍概率和统计的课。试着读一些游戏方面的数学理论。你可能觉得那没什 么用,但它能帮助透视算法的掌握。斟酌你的英语(或其它你发表游戏所用的语言) 当游戏描写得好的时侯,就更容易学,至少不能有大量的语法错误。 如果你想制作电脑游戏而没上过任何编程课时,不妨学几门。你可能学不到什么编 程序的具体东西,但一门好的课程可以教会你如何组织程序使之更容易维护和发现 错误。 建立一个“参考文献库”,它是一系列和你所制作游戏工程相关的游戏、书籍资料。 当你清晨三点突发灵感而图书馆却已关门的时侯,它将是非常有用的。

6. 抽取些时间
一个游戏就像孩子,当它刚出生时,它的父母总认为它是完美的。从你的游戏中抽 出些时间去得到一些新的观点,避免都耗在上面。一遍遍的重复这一过程。

7. 保留记录
确定你有一份以上的游戏拷贝。如果你是在电脑上输入的,就各保持一份硬盘和软 盘拷贝,另外再打印出一份清楚的最近版本(如每月打印一份,如果你干得快的话每 星期打印一份)。你不会觉得拷贝太多,因为你的好朋友们会来向你借或者想拥有拷 贝。而且这些拷贝能够减少你因为硬盘瘫痪或丢失笔记本等原因造成的丢失机会。 同样道理,保留旧版本的拷贝是有好处的。如果你在游戏测试时发现新的办法还不 如旧的好,而你却已将旧版本的扔掉了,这该怎么办?至少保留一份最后版本之前 的拷贝,同你当前版本的拷贝放在一起。

8. 其它注意事项
优秀的规划和书写是好的,但精美的视觉化说明对你的销售大有益处。如果你要自 己动手,就学一些桌面出版,或找一些现成的插图(比如:剪辑艺术或政府出版物) 或找别人帮你画些插图。 找个从事印刷业的人,和他探讨一些尽可能廉价的方法。低价格可以有助于销售, 低成本则有利于你的收益。

9. 记住这只是个游戏
不要因为制作游戏而忽略你的现实生活。如果有人不喜欢你的游戏,别介意。不用 担心别人窃取你的创意。记住第一条诫律,从你的所做中得到乐趣就行了。

10.没有第十条了 :-)

另外,这里有一些来自汤姆(“棱镜游戏”的主持者)的额外忠告,感谢汤姆!:
1.不断的创新是非常好的。如果你游戏中的所有东西都令人似曾相识,就好像是 偷来的。如果所有东西都与众不同又会让人感到陌生。常见题材单一独到的构思是 好的,但会使得你的游戏看来像个“变体”,而两个熟悉题材精明的创意则会使游 戏有新鲜感同时容易上手。因此不要试图彻底从新发明某样东西,而应把当前所拥 有的主意清晰化、简洁化的用于扩展关键观念的创新和趣味方面上。
2. 修正和雕琢你的游戏创意。测试不仅仅为了清除游戏和规则介绍中的错误,而 且就像一个讨论会,对照他们已经取得的东西,游戏设计师能够发现什么是真正所 要表达的。如果你将测试留到最后,这一发现将对你没有什么好处。如果你进行早 期的测试和经常从眼前试着发现这一游戏真正要表达的,你就能常常很大的改进这 一游戏。 “ Alpha”测试就像在问:“是否真有这个游戏?”“我得到它了吗?”“ Beta ” 测试看来在问:“是否用了最好的方法达到这一效果?”,“这是游戏的精炼吗? 或者它是否能被简化或删除?”“是否所有主要的游戏系统协同工作,给予了我所 期待的游戏体验?”“ Gamma ”测试又像在问“如何才能改善游戏的收支平衡 和介绍呢?”许多设计师停留在Alpha(生产一个吸引人但却是次品的游戏)之后或 者从Alpha直接到Gamma,跳过了Beta(生产一个好的但还不够完美的游戏)。 通常有必要靠你的亲密朋友/游戏小组及早的进行足够的批评性分析,帮助你发现如 何才能改进一个已经相当不错的游戏。

我的一些其它建议:

在我制作游戏过程中,从没有清晰明显的测试“阶段”。我倾向于每个阶段都做一 点。我修改一些系统,抛弃或替换一部分,改善其它的收支平衡和介绍,差不多是 在同时做的。这些部分来自于我所从事的主要游戏类型的设计-宇宙类RPG,你必须 在一个时间内干一个部分的事情。 关键在于去寻求达到你最好的作品。用不同的方法尝试,直到找到适合你的方法, 然后用它钻研下去。



4.游戏的剧情
-------------------------------------------------------------------------------


游戏剧情的重要是不言而喻的,特别是RPG游戏,相信广大玩家对"仙剑奇侠传" 熟得不能再熟了,这个游戏以剧情取胜(他的音乐也相当不错),各大媒体对他的 评价也都是以剧情为主,这个我就不多说了.
我也曾看过许多文章提到剧情的重要,这些文章说的相当好,相当有价值,但基 本上讲述的是剧情的要点及注意事项.而我将从另一个方面去分析游戏的剧情.
游戏的剧情是游戏的灵魂(当然除少数不需要剧情的游戏,如体育类,赛车等), 游戏通过各种各样的方法让玩家融入到设定的剧情上以打动玩家,但如果游戏 的剧情不吸引人,那么无论游戏的表现手法有多好也不能达到目的,但是怎样 的剧情才吸引人呢.
事实上中国与外国玩家有着很大的文化差异,这一点可以从各地所出产的游戏 上看得出来,欧美的游戏大多重视人物与场景的直实性,看上去就像电影,而东 方的游戏普遍追求漫画式的效果.但这两种风格哪种适合我们呢?答案是两种 都适合.不要忘记我们的玩家基本上是青年一代,对新事物的接受是相当快的, 对欧美的游戏我们的玩家接受得很快,从这可以看出国外的游戏制作是相当出 色的,就拿我自己举个例子,前两天我得到一款"生化危机2"的游戏,游戏开始 的动画可以说是扣人心弦,并且很好的衬托出了主题.而第二种风格的代表作 品就是"仙剑"了.
游戏所要表现的内容必须能够被玩家接受,而且还要有创新,这样的剧情才说 得过去.现在我们有一个很好的观察点,那就是电影,外国的制作精良的大片 挤进中国后给我们的冲击多么大,而中国传统题材的作品也给我们留下难忘 的印象.
我们不得不承认,在技术上我们与国外的游戏制作公司相比还差了一截,这 使得许多很好的题材我们不敢用,因为以现有的技术还不能很好的将他表现 出来,如果勉强还可能会起反作用(这是有例子的).
在这里我只是起一个开头的作用,什么样的剧情适合大家也不是一下能说清 楚,希望广大游戏爱好者能积极讨论这个问题,这也是我们中国游戏业现阶断 的一个重要的有待解决的问题.



5.角色扮演游戏的升级系统研究
-------------------------------------------------------------------------------




在一般的角色扮演游戏中,人物的成长是一件相当重要的事,无论是角色扮演游戏或是目前热门的策略型角色
扮演游戏(简称RSLG),这些升级系统都是游戏的一个重要部份。不过在一般的角色扮演游戏中,人物的升级
以及成长却有着很多种的处理方式。在本文中,笔者将为各位介绍各种角色扮演游戏中常用的升级方式,并且
分析各种作法的优缺点。

在一般的角色扮演游戏中,最常用的升级方式就是乱数式的成长方式。在这种模式中,当一名角色获得升级的
时候,程式会使用乱数来决定升级的各项指数,也就是说所有的升级数值都不是在控制中,而是依据一个乱数
表来决定提升的数值。这种升级的方式是如何处理的呢?

当人物到达升级的标准时,就会进入处理升级的副程式中,在这个副程式中程式会依设计者所定出的一个乱数
范围,来计算出这名角色所得到的升级指数,然後将这个数值加到需要增加的属性上。

在这种乱数决定升级的情况下,玩者所能够获得的升级数值,完全是由设计者订定的范围中求出,无论是升级
的上限或是下限都是在这个范围内,绝对不会有意外的情况发生,就算是设计者如何提高上限与下限,都不会
改变这些。这种作法虽然可以让设计者很轻松的订出升级的上下限,但是却不能控制升级时的不利因素,那就
是乱数的成份实在是太高了。若是有一名角色因为运气不好一直只有获得下限的升级数值,那麽它可能会比一
个一次就获得上限升级数值的角色要弱。举例来说,当这个乱数的范围是一到五的时候,若是角色甲和角色乙
分别获得上限和下限的升级数值,那麽会发生以下的状况:

┏ ┳ ┳ ┓
角色甲 角色乙
┣ ╋ ╋ ┫
LV1 10 10
LV2 15 11
LV3 20 12
LV4 25 13
LV5 30 14
LV6 35 15
┗ ┻ ┻ ┛

各位看看上表,是不是可以看到角色甲在第二级时的数值就已经和角色乙第六级的数值是相同了。由於乱数式
的升级方式会有这种不公平的情况发生,因此常会使得玩者的努力需要有一些运气的成份在里面;若是运气不
好,可能原本的努力都无法发挥所要的功效。

由於乱数式的升级方式有这样的缺点,因此有两种不同的改进办法,首先就是百分比制的升级方式。在这一种
办法里,角色在升级的时候还是使用乱数来进行,不过在每一个数字的出现比例上却做了一些调整。例如同样
的升级的范围还是从一到五,但是每一个数字的出现比例调整如下:

┏ ┳ ┓
数值 出现比例
┣ ╋ ┫
1 10%
2 20%
3 40%
4 20%
5 10%
┗ ┻ ┛

各位从上表中可以看到,在这一种处理方式上,每一个数字出现的比例做了一些调整。原本的乱数式中,每一
个数字的出现比例都是相同的,就以上面的例子来说,每个数字出现比例是百分之二时,因此上限和下限的数
值比较容易出现,发生不幸的情况比较多;但是在这样子调整後,上限和下限的数值出现的机会就减低了不少
,会发生不幸的情况就降低了。

虽然这样的作法可以降低不幸的发生机会,但是还是无法完全的克服所有的状况,因为还是有可能会发生相同
的状况,使得玩者陷入属性不佳的情况中。因此另外一种改良的方式~修正值升级方式就这麽出现了。

其实修正值的升级方式和原本的乱数处理法在计算的时候是完全相同的,只不过是它在升级到一个程度的时候
,会来做一次计算并且取出一个修正值,以免玩者因为运气不好无法达到升级的功效。

在这种作法上,上半部和乱数式的做法完全相同,唯一的不同是下半部的副程式。而这个副程式的作用就是在
帮一些升级时运气比较不好的玩者取得一点修正值。

我们就以前面所说的升级的数值是从一到五来做个例子,让玩者每升五级时就可以取得一点修正值。因此若是
一名角色在五次升级中都只有获得一点的升级值,那麽目前它的数值就是:

10 + 1 + 1 + 1 + 1 + 1 = 15

不过在我们的升级表内中等的数值是三,因此当角色升了五级之後,应该可以获得以下的数值:

10 + 3 + 3 + 3 + 3 + 3 = 25

这麽说来这名角色因为前五级的升级运气不好,因此少获得了十点的升级指数,所以我们就在这一次把这个缺
少的数值以修正值的方式补足,从修正值的计算式中可以得出:

25 - 15 = 10

就将这个数值加到角色的属性中,让角色不会因为运气太差而有不利的情况。若是角色在升级中都获得比较高
的数值,那麽修正值就是负的,也就表示不需要有修正值的存在了。

这种作法完全是为了不让玩者因为升级时运气不好使得属性太低,因此只能算是修正部份数值的作法,虽然不
能完全解决乱数式的问题,但是可以将不利的因素降低,因此在某些游戏里的确有采用这样的作法。

除了乱数式的作法外,还有一种是表列式的升级方式。在这种升级方式中,每一名角色的升级数值都是设计者
已经订好的,完全不会有任何的变动。它的好处是设计者可以完全掌控所有的升级状况,但是相对的这样子的
表格需要占掉较多的程式空间。

举例来说,某个游戏若是采用这种升级方式,那麽在它的记忆体中就需要有这样子的升级表格。若是游戏中有
七项属性会获得升级,等级共有一百级的变化,那麽基本上它就需要有七百个不同的数值表放在程式中。若是
一个数值用了两个位元(BYTE),那麽就需要用到1K左右的记忆体。如果说游戏中有四名角色,它们升级情况
又都是不同,那麽占掉的记忆体就将近有5K了。这麽算起来各位可能觉得不会很多,但是当这种资料越来越多
的时候,记忆体的消耗也就越来越多,使得程式的空间也越来越小了。

由於表列式的作法会使得升级的情况比较单调,因此大多数的游戏并不愿意采用这种作法,再加上这一类的作
法对於记忆体的占用空间也比较高,因此如果不是必要,大多数都不会用这种作法。

除了以上这些作法之外,还有一种就是指数型的升级方式。这种作法其实就是表列式的改良,因为它将升级的
表格简化成一个叁数,在升级的时候就依这个叁数来计算能够获得的升级值。现在我就举一个例子来示范。目
前有一名角色的属性以及升级指数如下:

o 生命:10 生命指数:10
o 法力:10 法力指数:10
o 力量: 3 力量指数: 2
o 智慧: 2 智慧指数: 2
o 反应: 2 反应指数: 2
o 体能: 4 体能指数: 2
o 运气: 1 运气指数: 3

那麽当他获得升级的时候,程式就会依这个升级指数来计算升到下一级时的各项属性值。因此在升了一级之後
,各项属性的数值就是以下的数字:

o 生命:20
o 法力:20
o 力量: 5
o 智慧: 4
o 反应: 4
o 体能: 6
o 运气: 4

用这种作法,在程式内不需要复杂的升级属性表,只需要几个简单的叁数就可以,若是能将各项叁数之间的关
系加以变化,并作一些运算,那麽可以使升级时的变化更多。举例来说生命的增加和体能有关,或是法力的增
加和智慧有关,那麽在计算起来时会有比较多的变化,使得整个升级的表现不会太单纯。

以上这些作法大部份的变化程度都不会很多,没有办法表现出一个人的成长情况。就像我们有时候会形容一个
人「大器晚成」或是说他「小时了了」这样子的情况都不能表现出来。因此後来又有一种成长曲线的升级方式
。在这种升级方式中,我们首先要订出几种不同的升级情况。像是:

A. 平衡成长
B. 大器晚成
C. 小时了了

要达成这种效果,我们需要将升级的总等级数分成几个阶段。我们以一个可以升到一百级的游戏来说,将每十
级分成一个区块,就可以订出这三种成长情况各要给它多少的数值。

其实这种曲线式的升级方式,在处理上和指数式的作法差不多,只不过指数式的作法一个人物每一种属性只会
有一个数值,这个数值是不会改变的。但是在曲线式的作法中,会依不同阶段有不同的升级指数,才可以造出
不同的成长情况。我们就以一名「大器晚成」的角色来说,这一类的角色在开始成长的比较慢,但是当人物成
长到一个阶段後,成长的速度就会加快,因此我们可能在前两个阶段只给他们一点的升级指数,後面几个阶段
再给他们较高的升级指数,使这名角色会在游戏後期升得比较快。

反过来说,若是要设计一名「小时了了」的角色,那麽我们在初期可以给他较高的升级指数,但是到了後期就
要给它较低的指数,如此一来就可以表现出这样的情况。

事实上,在游乐器中的「光明与黑暗续战篇」就曾经用过这一种作法,使得游戏中的每个角色都有各自不同的
特色。特别是有些属於大器晚成的角色,曾经因为初期成长的速度太慢而被玩者抛弃,但是後来知道这名角色
的特性之後,再回过头来训练的这种情况,正是这种曲线式升级的特色。这种作法使得角色除了单纯的数字属
性之外,还增加了一些隐藏的特性,会让游戏更有味道。

如果以笔者个人的喜好来说,我是比较欣赏曲线式的升级方式,因为这种方式比较可以隐藏角色的特色,也不
会因为数字的变化太过单调而让玩者觉得过死板。比起乱数式的不定性和升级指数式的单纯来说,这一种作法
可以说是兼具了两种的特色,同时还有全新的表现,是一种不错的升级方式。只惜目前国内的游戏很少使用这
种作法,大多还是采用乱数式的作法,对於国内玩游戏的玩者来说,实在是有些可惜,因为大家没有办法体会
到这种作法的优点。



6.游戏中的智能系统处理
-------------------------------------------------------------------------------



游戏中的智能对手
 AI在游戏中最普通的形式是创建计算机控制的对手。因为大多数游戏是单人游戏,所以要设计游戏者在游戏中必须战胜对手。为了达到这个目的,你可以使用某种类似A*搜索的简单AI算法,以帮助对手穿过迷宫向游戏者发起进行。你也可以使用简单的算法预测游戏者的反应。
 但是,记住没有必要创建世界上最强大的对手。你的对手只要能给游戏者提供足够的挑战性就可以了。还有,要注意游戏的内容。例如:一个战棋式RPG游戏中策略占的是主要地位;而在纯RPG中故事情节和角色开发就更重要一些。千万不要因为计算机对手太强大而让游戏者们陷入失败的泥沼。

游戏中的非智能对手
 通常,在游戏开发中AI技术是与计算机对手紧紧联系在一起的。这是因为早期的大部分类似角棋的游戏是一对一的。但是,任何好的探险游戏或RPG 游戏开发者都知道,AI同样可以用于非对手角色。例如:如果你正在建立一个RPG游戏并且你想让你的世界活起来,这就是说,让城市里的人以智能的方式活动,那么你可以使用某种算法确定在一天中的某个时候,角色应该在那里。你可以使用类似于AI算法如A*来辅助你将一个对象从一处移动到另一处并绕过障碍物。

游戏中的智能系统
游戏中的AI在本质上是最具有模仿性的,但它们基本上是依赖一些AI要素。 你可以将所有具有决策功能的对象在一个游戏中融合为一个整体。例如:在一个战争游戏中,你的各个部分可以依据各自所处的具体环境来作出各自的AI决策。
  使用这种方法,你得把精力集中于怎样在各个独立的决策个体之间建立联系,以及这些联系怎样才能使游戏成为融会贯通的整体。是用一个高级决策影 响其它决策,还是各个决策个体之间平等地互相影响呢?举个战争游戏来说, 你有十辆坦克,它们的思维模式基本相同。所以它们都决定去攻击敌人阵营中 HP值最低的一辆坦克。但是这时其中一辆坦克说:“这个敌人归我了!”那么 剩下的九辆坦克就应该依据这条信息各自调整下一步的攻击目标。当你建立智能个体时,要考虑在一个智能系统整体环境下,它应该如何行动。




7.电脑游戏中的人工智能制作
-------------------------------------------------------------------------------


 电脑游戏随着硬件执行效率与显示解析度等大幅提升,以往很多不可能或非常难以实现的电脑游戏如此都得以顺利完成。虽然电脑游戏的呈现是那么地多样化,然而却与我们今日所要探讨的主题,人工智能几乎都有着密不可分的关系。
 在角色扮演游戏中,程序员与企划人员需要精确地在电脑上将一个个所谓的“怪物”在战门过程中栩栩如生地制作出来;所以半兽人受了重伤懂得逃跑,法师懂得施展攻性法术。
 目前能让人立刻想到与人工智能有密切关系的游戏有两种:
一是所谓的战棋/策略模拟游戏,二则是棋弈游戏。人工智能的比重与深浅度,在不同的游戏类型中各有不一。有的电脑游戏非标榜着高人工智能不可,不然没有人买;有的则是几乎渺茫到让玩家无法感觉有任何人工智能的存在。            

 导向式思考

 AI最容易制作的的方式,同时也是早期游戏AI发展的主要方向就是规则导向或称之为假设导向。在一些比较简单的电脑游戏中,程序员可以好不困难地将游戏中的规则与设定转化成一条条的规则,然后将它们写成电脑程序。让我们以角色扮演游戏为例。决大多数的企画在设定所谓电脑怪物时,所设定的属性通常有以下几种:

  生命值 攻击力 防御力 法力  属性

 最后一个“属性”是我在设定时喜欢增加的项目之一。透过这项属性的设定,我可以把怪物设定成“贪生怕死的”,也可以把战士设定为“视死如归”。以目前我们所掌握的资料,在战门系统中的大纲如是诞生了:                          

规则一

if (生命值< 10) // 边临死亡了吗 
{  if (属性== 贪生怕死)               
   结果 = 试图逃跑               
  if (有任何恢复生命值的物品或法术可用)      
   结果 = 使用或施展相关物品或法术       
}
                                                 

规则二
 
if (可施攻击性法术 && 有足够法力)
{                        
   结果 = 施展攻攻击性法术             
}  
                      

 由以上一连串的“如果--就--”规则设定,建立了最基本的AI。说这样的制方式只能建立基本AI其实并不当然正确。只要建立足够及精确的规则,这样的方式仍然有一定水准的表现。
 规则导向的最大优点就是易学易用。在没有深奥的理论概念的前提下,仍有广大的使用群。所以很多老道的玩家常常没两下就摸清楚敌人的攻击策略,移动方式等等。

 推论式思考

 相信曾经接触过电脑语言课程,或是自习过相关书籍的朋友们,都曾曾经听过一个著名的程序,那就是井字游戏。用井字游戏作为讨论AI的入门教材,我个人觉得是最适当的例子。或许有人还不知道井字游戏怎么玩。只要任何一方在三乘三的方格中先先成一线便胜利了。我们在前面谈过的规则导向,在这里也可以派得上用场。

 if任何一线已有我方两子&&另外一格仍空//我方即将成一线吗
  结果 = 该空格                     
 if任何一线已有敌方两子&&另外一格仍空//防止敌方作成一线 
  结果 = 该空格                     
 if任何一线已有我方一子&&另外两格仍空//作成两子    
  结果 = 该空格

 有一次我在某本电脑书上,同样地也看到某些以井字游戏为介绍的范例。不同的是,我几乎看不到任何规则导向的影子。但在仔细分析该程序码后,我得到了极大的启发,原来AI是可以不用这么多规则来制作的。它用的方法正是在电脑AI课程中重要的概念:极大极小法。我在这里只说明这法则的概念。继续以井字游戏为例,电脑先在某处下子,接着会以假设的方式,替对方下子,当然,必须假设对方下的是最佳位置,否则一切则毫无意义。在假设对方下子的过程中,自然又需要假设我方的下一步回应,如此一来一往,直到下完整局游戏为止。 底下是节录书中的程序片段:                       
 
bestMove(int p, int*v)
{   int i; 
   int lastTie;                  
   int lastMove;                 
   int subV;                                   
/*First, check for a tie*/            
    if (isTie()) {              
     *v=0;               
     return(0);              
   };
/*If not a tie, try each potential move*/
 for (*v=-1, lastTie=lastMove=-1,i=0;i<9;i++)
  {
   /*If this isn't a possible, skip it*/          
   if (board[i]!=0) continue;
   /* Make the move. */
    lastMove=i; 
    board[i]=p;                             
   /* Did it win? */                       
    if (hasWon(p)) *v=1;                     
    else{                             
   /*If not, find out how good the other side can do*/
     bestMove(-p,&subV);                      
   /* If they can only lose, this is still a win.*/
      if (subV==-1) *v=1;       
   /* Or, if it's a tie, remember it. */         
       else if (subV==0){                 
          *v=0;       
          lastTie=i; 
          };                          
       };                              
/* Take back the move. */           
           board[i]=0;          
/*If we found a win, return immediately
     (can't do any better than that)*/     
  if (*v==1) return(i);                     
/*If we didn't find any wins, return a tie move.*/         
  if (*v==0) return(lastTie);                      
/*If there weren't even any ties, return a loosing move.*/     
  else return(lastMove); 
};    

 国外的一些论坛曾举行过256字节的游戏设计比赛。作品非常多,其中有一件作品正巧也是井字游戏。作者用区区两百多行就写了与上述程序演算方式完全相同的作品,可见功力确实了的。另外,我也很希望类似的活动能在国内推展起来。对了,在这样的比赛条件限制下,除了汇编语言外,几乎没有其它的选择了。       .386c                        
  code      segment byte public use16      
          assume cs:code, ds:code      
                            
          org   100h            
                            
  tictac     proc  far             
                            
  start:                       
          push  cs             
          pop   ds             
          mov   ax,0B800h     ; 清除屏幕
          mov   es,ax       ;    
          xor   di,di       ;    
          mov   cx,7D0h      ;    
          mov   ax,0F20h      ;    
          rep   stosw       ;    
          xor   cx,cx       ;    
          mov   dl,5            
  loc_1:                       
          call  printBoard         
  loc_2:                       
          mov   ah,8        ; 等待按键
          int   21h             
                            
          movzx  bx,al            

          sub   bl,31h       ; 如果不是1..9
          jc   loc_2       ; 则重新输入 
          cmp   bl,8              
          ja   loc_2              
          cmp   data_1[bx],al          
          jne   loc_2              
          mov   byte ptr data_1[bx],'x'     
          dec   dl               
          jz   short loc_3           
          mov   al,'o'             
          call  bestMove            
          mov   [si],al             
          call  isWin   ; 判断是否已取得胜利 
          jnc   loc_1              
  loc_3:                          
          call  printBoard           
          mov   ax,4C00h            
          int   21h               
                              
  data_1     db   '12'              
  data_2     db   '3456789'            
  data_3     db   0                
                              
  tictac     endp                  
                              
                              
  printBoard   proc  near              
          mov   si,offset data_1        
          mov   di,548h             
          mov   cl,3              
                              
  locloop_4:                       
          movsb                  
          add   di,5              
          movsb                  
          add   di,5              
          movsb                  
          add   di,133h             
          loop  locloop_4            
                              
          retn                  
  printBoard   endp                  
                              
                              
  isWin      proc  near              
          mov   bx,1              
          mov   bp,3              
          call  sub_3    ; 检查横向是否完成 
          inc   bx               
          inc   bx               
          dec   bp               
          dec   bp               
          call  sub_3    ; 检查纵向是否完成 
          call  sub_4    ; 检查斜向是否完成
          clc
          retn                  
  isWin      endp                  
                              
  loc_5:                         
          stc                   
          retn                  
                                                            
  sub_3      proc  near              
          mov   ah,3              
          mov   si,offset data_1        
  loc_6:                         
          mov   di,si              
          call  sub_5              
          add   si,bp             
          dec   ah               
          jnz   loc_6              
          retn                  
  sub_3      endp                  
                             
  sub_4      proc  near              
          mov   di,offset data_1       
          inc   bx              
          call  sub_5             
          mov   di,offset data_2        
          dec   bx               
          dec   bx               
          call  sub_5              
          retn                  
  sub_4      endp                  
                              
                              
  sub_5      proc  near              
          mov   cl,3              
                              
  locloop_7:                       
          cmp   [di],al             
          jne   short loc_ret_8         
          add   di,bx              
          loop  locloop_7            
                              
          add   sp,4              
          jmp   short loc_5           
                              
  loc_ret_8:                       
          retn                      
  sub_5      endp                      
                                  
  bestMove    proc  near                  
          mov   bx,31FEh                
          mov   cl,9                  
          mov   di,offset data_1            
                                  
  locloop_9:                           
          cmp   [di],bh     ; #empty?        
          jne   short loc_12  ; #no, skip       
          mov   [di],al                 
          pusha                      
          call  isWin      ; #CY: Win       
          popa          ;            
          jnc   short loc_10  ;            
          mov   bl,1 

posted @ 2005-02-15 14:14 蓝色雪焰 阅读(2242) | 评论 (1)编辑 收藏
 
    回想起当年我玩各种网络游戏的时候,一进游戏,什么都没有,眼前看着一堆穿着金光闪闪的漂亮装备的人跑来跑去,看到有人在不停的刷屏叫买叫卖的打着各种广告,有一种和现实社会截然不同的感觉,实打实的觉得自己在这个虚拟社会里面是个新手。虽然游戏都设置有密语等功能,但是这些对于新手来说,几乎是多余的,一开始总是一个人在孤单的打低级的怪物,这个时候的同伴只可能有两种人,一种是和你一样的新手,另外一种,则是练小号的人。(练小号这种现象非常有趣,在以后会详细讨论。)新手的生活是郁闷的,经常会被怪兽欺负,或者是被了解游戏比自己多一点的人所瞧不起(实际上等自己有机会接触到了解游戏比自己还少的人的时候,也会瞧不起别人)。有数据证明,在这个时期的玩家最容易退出游戏。 

    而另外有些玩家,运气比较好,碰上了一些对游戏了解得比较多的,又不会瞧不起他的玩家,然后会获得物质上的(装备,金钱)和文化上的(初等社交圈子)的一些帮助,慢慢的开始有了自己的社会关系(Social Relationship)。到了这个时候,玩家才会比较努力的开始练级,因为有了自己的社交圈子(Social Group & Organization),会想成为这个社交圈子中被大家公认的强者,最简单有效的方法,就是练级。但是从Feminist的角度来看,对于男性玩家,一般会比较喜欢成为某个社交圈子中的强者,要成为强者,就要摆脱其他的竞争者的威胁,这是男性一些天生的特性。而对于女性玩家,一般不太会喜欢这种激烈的直接竞争,而会选择一些间接的竞争,比如说装备,对好的装备的追求,因为这种追求并不会影响到社会圈子中其他的人。 

    慢慢的对游戏了解得越来越多,认识的人越来越多,基本上就脱离了新手这个范畴,然后才真正开始体验游戏本身提供的各种活动,即使游戏设计的是单人完成的活动,你也经常会喊上朋友来看你完成。总之,从现在开始,你的一举一动都属于Social Interaction了,就好像连现实生活中的“走路”这种行为都被定义为Social Interaction,因为这种行为都是受到社会的影响而造成的。而你,则在不停的努力保持和提高你的社会地位,一般的游戏中,用来衡量社会地位的东西一般是级别,而在某些设计得比较好的游戏中,级别不一定是最主要的衡量社会地位的东西。别的游戏我不太了解,说个我玩过的,《骑士Online》这个游戏,虽然目前状态并不理想,但是其中的形成的虚拟社会却是一个比较健康的社会。在这个游戏里面,用来衡量你的社会地位的东西,是一种叫国家贡献值的东西,实际上就是PK的杀人数和被杀死数的一个比例值。因为对于比较好的用来衡量的东西,一定要是大家都可以接触得到的,你的级别再高,在外表上体现不出来,或者大家不知道的话,就基本上没什么意义了。再说说《传奇》,其中也有个设计得很好的地方,就是大家都可以互相看到别人的级别和装备,如此一来,级别和装备就成了衡量社会地位的主要因素,因为大家都可以很便利的互相了解到这项参数。同样在现实社会中,在学校这个社会群体中,每个人都有GPA,每个班都有Top Student,成绩就成了大家都最容易access的参数。 

    当你成了老玩家了,再回过头来看看那些刚刚接触游戏的新手,他们就像自己当年一样,什么都不懂(这里提个概念,Power的定义就是对社会资源掌握的程度),对游戏,对游戏中的社会群体,什么都不了解。然后偶尔你也会心血来潮去帮助他们,就好像某人当年帮助自己一样。就像在现实社会中一样,看到路边的乞丐,偶尔也会帮助一把,但是,自己也会想,这么多乞丐,一个人怎么帮助得过来呢。实际上,这个问题在社会学里面是这样来看待的:这里要提出一个名词:Altruism。越是程度越高的社会阶级,Altruism这种现象就出现得越频繁。如果一个游戏的处于社会层次顶级的人越少,那么这个游戏的帮助新人的现象之会越少,不管你如何用其他的机制来激励玩家帮助新手,就如同有一些网络游戏,采取奖励帮助新手的人的政策,如果这个游戏处于社会顶层级别的人还是很少的话,同样是没有效果的。因为这种帮助人,是基于有目的性的,目的不是在于帮助新手,而是在于获取奖励,不但没有好效果,还会造成玩家利用这套系统的漏洞,作弊之类的后果。要让大家都喜欢帮助新手,就是让游戏在社会层次(Social Hierarchy)在高层的用户比较多一些,这样自然就会有很多Altruism的现象了。同样在现实社会中,有数据表明,相比较发展中国家,发达社会的人更喜欢帮助他人一些。 

    下面谈谈Bureaucracy和Government在网络游戏中的一些事实,Max Weber说过官僚系统分为理想的和现实两种情况,在理想的情况下,官僚系统是可以做到绝对公平的,而实际上经常因为个人的性格不同之类的因素,常常会造成不好的,甚至是负面的影响。这点在国内的网络游戏运营中体现的尤其突出,其实这个问题在现实中也是不可避免的问题,唯一比较好的处理方法,就是相信群众的眼睛的雪亮的,而提供各种投票和选举机制,并且鼓励玩家对一些事件或者改动的投票和选举。 

    接下来是Deviance 和Discrimination,这两个现象虽然是大家都不想谈起的,但是确实是网络游戏中或者是现实社会中比较严峻的问题。在网络游戏中,这两者造成的最严重的问题就是会导致某些玩家离开这个游戏(社会)。刚刚翻了翻书,找到一个Strain Theory,里面主要的意思就是讲玩家在得知自己肯定达不到某个目标的时候会感觉到Strain,比如说玩游戏玩了半年了,发现自己天生的属性没有选对,然后后天无法更改,导致自己比别人低一等之类的。这一点好像每个网络游戏都做得还不错(洗点?)。另外一个是叫“机会理论”(Opportunity Theory),这个很简单,实际上就是指当你发现你可以用非法的途径获取到合法途径获取不到的东西的情况下,你会铤而走险。这个在网络游戏中最典型的例子就是黑客,骗子,盗号之类的。还有最后一条理论,就是叫“控制理论”(Control Theory),这个在网络游戏中体现得最明显的就是引怪害人之类的人,他们的行为的产生的原因,是因为他们无法被一般的社会机构所接受,就好象一个玩家,玩了2,3个月游戏了,对游戏也了解得比较熟了,但是由于在游戏中大家都不愿意理他,就会造成他的Deviance的倾向。当然,这种人绝对不在少数,为什么其他人不会违反规则呢?因为有一些人找到一些能够收容,并能提供给他们一些成就感的场所。这就是为什么国家政府一直没有明着反对网络游戏的原因,有明摆着的数据证明,自从很多人接触网络游戏之后,社会治安好了很多。同样,在网络游戏中也需要这样的场所,要不然违法规则的人只会越来越多。 

    再谈谈前面谈到过的练小号的现象。练小号的人有两种,一种是由于游戏设计得不合理,导致高级别,或者越到后来之后,获取游戏资源的难度会比刚刚开始还要麻烦。所以就会有一批玩家来利用这个漏洞来比较快的获取资源。另外一种人,就是完全想创造一个新的自我,在游戏中扮演不同的角色。我这个学期的论文就是关于互连网络和社会学,所以对这个的资料了解得多一点。其主要的原因就是因为大到整个互连网络,小到一个网络游戏,最吸引人的地方之一,就是可以很随便的修改自己的Social Identity。可以完全按照自己的意愿来创造一个自己想象中的人物,而且可以随时完全重新来过。第二种练小号的人,就属于对自己在当前虚拟社会中的程度不太满意,进而想从新创造一个新的角色的那一类人。
posted @ 2005-02-13 15:16 蓝色雪焰 阅读(385) | 评论 (1)编辑 收藏
 
 

场景管理之消息发送

    好久没有写东西出来和大家共同揣摩,真是对不住大家了。现在终于腾了一些时间来继续和大家研究网络游戏制作技术,在这一节中,我就要向大家介绍网络游戏服务器中World场景划分和场景中消息分发问题。

    在前面我基本向大家讲述的都是一些基本的技术问题,从某种意义上讲。属于纯技术范畴的东西,但现在要向大家讲的,应该是属于服务器功能设计范畴的。在这里,我未必讲的很好,有遗漏之处就请大家谅解和指正。

    对于有一定游戏服务器开发基础的朋友而言,应该都明白一个网络游戏服务器和客户端之间的一个基本关系: 玩家客户端是游戏服务器一个局部COPY表现。这个说法听起来可能有一些绕口,简单的解释下也就是说:客户端所具备的区域信息也就是游戏服务器相同区域数据的一份COPY,而表现的意思,也就是说,CLIENT端将这样的数据信息图形化,并且通过屏幕来进行显示,从而来呈现出一个多姿多彩的游戏世界。这样说大家应该能够听懂了吧?再不懂的话,就自己琢磨了。

    说了上面那么多,大家一定要问“SERVER和CLIENT这种关系和我们的消息发送又有什么关系呢?”。其实,我们要讨论的问题点也就在这里。但现在我还不说场景消息到底该如何进行分发。我们还是再来研究一个问题:什么能够使我们的游戏世界变的内容丰富?
大家先不要看我所说的,先自己想想。

    大家应该都思考过了,我就来说一下我的个人想法和理解,可能和大家不一样(我想到的你没有想到的你补上,反之,我补上)。

    在我们的MMOPRG游戏世界中,造成游戏世界变的丰富多彩一般无外乎两个大方面:NPC动作、玩家动作。呵呵,看起来就只有简单的两个方面,但具体分析这些动作起来,可就会让各位包括我都会头大的。先我们来说NPC动作吧,NPC动作通过AI逻辑进行控制,一般情况可以分为一下几个动作:待机、移动、物理攻击、技能攻击、魔法攻击、死亡等,而游戏中玩家动作的产生是由现实中玩家进行操控的,动作类型基本上也不外乎以上几种。既然在服务器游戏世界中存在这样的一些动作,那是如何进行获取的呢?其实就只有两个字:消息(Message)。而消息的产生方又分为两种:Client消息,Server消息。既然有消息产生,我们就将涉及到另外一个问题:如何将产生的消息分发出去呢?

    下面通过我自己的实现经验来简单介绍场景消息的分发原理(详细介绍写的太多,有点懒!!),应该不是最佳的,我只是提一个开头,更好的处理实现方式还是需要大家来共同研究。有好的想法也希望告诉我下,我也从中学习些新的东西。

    先看场景示范图(我画的,比较土,只是表明一个意思。呵呵)


 
    通过上面设计示范图,我来具体介绍:关于场景消息分发,我的设计和分析过程:
    第一步:将场景网络化,也就是说将我们的游戏服务器大场景进行逻辑上的区域划分,每个单独区域所占的面积可以考虑比屏幕区域稍微大点。同时为每一个单独的区域创建Player标志信息(SOCKET或者其他)列表。

    第二步:将单独区域四分化,也就是说对于每一个小区域,再次划分为四个更加小的区域,同时为每一个小的区域建立一个包含三个对象的整数数组。数组的作用是为了保存此小区域的亲缘区域。例如: 小区域1的亲缘区域就是: A、B、H,小区域2的亲缘区域就是:B、C、D等。

    第三步:在上面两步基础上,就是实际处理消息分发了。如果Player/NPC在区域中进行消息动作,我们通过Player/NPC的当前位置就可以首先确定Player/NPC所在大地图中的具体区域。在我们确定好了具体的区域后,我们要继续确定在那个具体的小区域。在这些小区域都确定后,我们就可以将我们的动作消息发送到亲缘区域中的Player(玩家)。

    第四步:对于第三步的改变优化,用CPU处理量来换取消息数量,具体做法也就是,在亲缘区域中继续区域化。也就是说消息不是发送到亲缘区域中的所有Player(玩家),而是有选择的发送到自身一定区域的玩家。这种优化改革从某种意义上讲,可以减少服务器总消息数量,但增大CPU处理量,而对于具体实现,就需要大家去权衡了。

    以上也就是这个分析和处理过程了。同时关于这个场景处理的.h文件,我也就简单的写下,大家参考了。


Class    GmapRegion
{
   public:
GmapRegion();
~ GmapRegion();
void   GetBoardCastMsgList(POINT current_pos,LIST *);  //获取当前位置广播消息的Player列表。
……..
   private:
        void   Init();
        voud   Release();
        bool   InitMapRegion(int  map_wis,int map_hei);         //地图区域化
        
   protected:
}


posted @ 2005-02-13 11:56 蓝色雪焰 阅读(561) | 评论 (1)编辑 收藏
 
 

线程同步和服务器数据保护

最近因为自己主持的项目出现些问题,太忙了,所以好久都没有继续写东西和大家进行探讨制作开发部分了。在这一节中就要向大家介绍另外一个重要的部分,并且也是最头疼的部分:线程同步和数据保护。

关于线程的概念我在前面的章节中已经介绍过了,也就在这里不累赘—“重复再重复”了。有一定线程基础的人都知道,线程只要创建后就如同脱缰的野马,对于这样的一匹野马我们怎么来进行控制和处理呢?简单的说,我们没有办法进行控制。因为我们更本就没有办法知道CPU什么时候来执行他们,执行他们的次序又是什么?

有人要问没有办法控制那我们如何是好呢?这个问题也正是我这里要向大家进行解释和说明的,虽然我们不能够控制他们的运行,但我们可以做一些手脚来达到我们自己的意志。

这里我们的做手脚也就是对线程进行同步,关于同步的概念大家在《操作系统》中应该都看过吧!不了解的话,我简单说说:读和写的关系(我读书的时候,请你不要在书上乱写,否则我就没有办法继续阅读了。)

处理有两种:用户方式和内核方式。
用户方式的线程同步由于有好几种:原子访问,关键代码段等。

在这里主要向大家介绍关键代码段的处理(我个人用的比较多,简单实用)。先介绍一下它的一些函数,随后提供关键代码段的处理类供大家参考(比较小,我就直接贴上来了)

VOID InitializeCriticalSection(    //初始化互斥体
  LPCRITICAL_SECTION lpCriticalSection  // critical section
);

VOID DeleteCriticalSection(        //清除互斥体
  LPCRITICAL_SECTION lpCriticalSection   // critical section
);

VOID EnterCriticalSection(         //进入等待
  LPCRITICAL_SECTION lpCriticalSection  // critical section
);

VOID LeaveCriticalSection(         //释放离开
  LPCRITICAL_SECTION lpCriticalSection   // critical section
);

以上就是关于关键代码段的基本API了。介绍就不必了(MSDN)。而我的处理类只是将这几个函数进行了组织,也就是让大家能够更加理解关键代码端
.h
class   CCriticalSection                //共享变量区类
{
public:
CCriticalSection();
virtual ~CCriticalSection();
void   Enter();                   //进入互斥体
void   Leave();                  //离开互斥体释放资源
private:
   CRITICAL_SECTION  g_CritSect;
};
.cpp
CCriticalSection::CCriticalSection()
{
InitializeCriticalSection(&g_CritSect);
}

CCriticalSection::~CCriticalSection()
{
DeleteCriticalSection(&g_CritSect);
}

void  CCriticalSection::Enter()
{
EnterCriticalSection(&g_CritSect);
}

void  CCriticalSection::Leave()
{
    LeaveCriticalSection(&g_CritSect);
}
由于篇幅有限关键代码段就说到这里,接下来向大家简单介绍一下内核方式下的同步处理。
哎呀!这下可就惨了,这可是要说好多的哦!书上的罗罗嗦嗦我就不说了,我就说一些我平时的运用吧。首先内核对象和一般的我们使用的对象是不一样的,这样的一些对象我们可以简单理解为特殊对象。而我们内核方式的同步就是利用这样的一些特殊对象进行处理我们的同步,其中包括:事件对象,互斥对象,信号量等。对于这些内核对象我只向大家说明两点:
1.内核对象的创建和销毁
2.内核对象的等待处理和等待副作用

第一:内核对象的创建方式基本上而言都没有什么太大的差别,例如:创建事件就用HANDLE CreateEvent(…..),创建互斥对象 HANDLE CreateMutex(…….)。而大家注意的也是这三个内核对象在创建的过程中是有一定的差异的。对于事件对象我们必须明确指明对象是人工对象还是自动对象,而这种对象的等待处理方式是完全不同的。什么不同下面说(呵呵)。互斥对象比较简单没什么说的,信号量我们创建必须注意我们要定义的最大使用数量和初始化量。最大数量>初始化量。再有如果我们为我们的内核对象起名字,我们就可以在整个进程中共用,也可以被其他进程使用,只需要OPEN就可以了。也就不多说了。

第二:内核对象的等待一般情况下我们使用两个API:
DWORD WaitForSingleObject(        //单个内核对象的等待
      HANDLE hHandle,        // handle to object
      DWORD dwMilliseconds   // time-out interval
);

DWORD WaitForMultipleObjects(     //多个内核对象的等待
      DWORD nCount,             // number of handles in array
      CONST HANDLE *lpHandles,  // object-handle array
      BOOL fWaitAll,            // wait option
      DWORD dwMilliseconds      // time-out interval
);
具体怎么用查MSDN了。
具体我们来说等待副作用,主要说事件对象。首先事件对象是分两种的:人工的,自动的。人工的等待是没有什么副作用的(也就是说等待成功后,要和其他的对象一样要进行手动释放)。而自动的就不一样,但激发事件后,返回后自动设置为未激发状态。这样造成的等待结果也不一样,如果有多个线程在进行等待事件的话,如果是人工事件,被激活后所有等待线程成执行状态,而自动事件只能有其中一个线程可以返回继续执行。所以说在使用这些内核对象的时候,要充分分析我们的使用目的,再来设定我们创建时候的初始化。简单的同步我就说到这里了。下面我就将将我们一般情况下处理游戏服务器处理过程中的数据保护问题分析:

首先向大家说说服务器方面的数据保护的重要性,图例如下:

用户列表

                                  用户删除

                                  用户数据修改
                                  
                                  使用数据


加入队列

对于上面的图例大家应该也能够看出在我们的游戏服务器之中,我们要对于我们用户的操作是多么的频繁。如此频繁的操作我们如果不进行处理的话,后果将是悲惨和可怕的,举例:如果我们在一个线程删除用户的一瞬间,有线程在使用,那么我们的错误将是不可难以预料的。我们将用到了错误的数据,可能会导致服务器崩溃。再者我们多个线程在修改用户数据我们用户数据将是没有办法保持正确性的。等等情况都可能发生。怎么样杜绝这样的一些情况的发生呢?我们就必须要进行服务器数据的保护。而我们如何正确的保护好数据,才能够保持服务器的稳定运行呢?下面说一下一些实际处理中的一些经验之谈。

1.我们必须充分的判断和估计我们服务器中有那些数据要进行数据保护,这些就需要设计者和规划者要根据自己的经验进行合理的分析。例如:在线用户信息列表,在线用户数据信息,消息列表等。。。。。

2.正确和十分小心的保护数据和正确的分析要保护的数据。大家知道我们要在很多地方实现我们的保护措施,也就是说我们必须非常小心谨慎的来书写我们的保护,不正确的保护会造成系统死锁,服务器将无法进行下去(我在处理的过程中就曾经遇到过,头都大了)。正确的分析要保护的数据,也就是说,我们必须要估计到我们要保护的部分的处理能够比较快的结束。否则我们必须要想办法解决这个问题:例如:
         
         DATA_STRUCT  g_data;
         CRITICAL_SECTION  g_cs;

         EnterCriticalSection(&g_cs);
         SendMessage(hWnd,WM_ONEMSG,&g_data,0);
         LeaveCriticalSection(&g_cs);
以上处理就有问题了,因为我们不知道SendMessage()什么时候完成,可能是1/1000豪秒,也可能是1000年,那我们其他的线程也就不用活了。所以我们必须改正这种情况。

         DATA_STRUCT  g_data;
         CRITICAL_SECTION  g_cs;

         EnterCriticalSection(&g_cs);
         PostMessage(hWnd,WM_ONEMSG,&g_data,0);
    LeaveCriticalSection(&g_cs);

或者        DATA_STRUCT  temp_data;

         EnterCriticalSection(&g_cs);
         temp_data = g_cs;
         LeaveCriticalSection(&g_cs);
         SendMessage(hWnd,WM_ONEMSG,& temp_data,0);

   3.最好不要复合保护用户数据,这样可能会出现一些潜在的死锁。


简而言之,服务器的用户数据是一定需要进行保护,但我们在保护的过程中就一定需要万分的小心和谨慎。这篇我就说到这里了,具体的还是需要从实践中来进行学习,下节想和大家讲讲服务器的场景处理部分。先做事去了。呵呵!!有好的想法和建议的和我交流探讨,先谢谢了。

posted @ 2005-02-13 11:54 蓝色雪焰 阅读(300) | 评论 (0)编辑 收藏
 
 

服务器程序设计部分

续上在这里我将要向大家简单介绍一下游戏服务器中必须要处理另外一项主要技术:
内存分配处理技术也可以称为内存池处理技术(这个比较洋气,前面通俗的好,呵呵)

开始向大家介绍一般情况下我们对于内存的一些基本操作。简单而言,内存操作就只有三个步骤:申请、使用、销毁。而对于这些操作我们在C和C++中的处理方式略有不同:

在C中我们一般用malloc(….)函数来进行申请,而对应销毁已经申请的内存使用free(…)函数。
在C++我们一般使用new操作符和delete操作符进行处理申请和销毁。
大家一定要问了,我们一般都是这样处理的呀!!没有什么可以说的哦!!呵呵,我感觉就有还是有一些东东和大家聊的哦。先聊简单几条吧!!
1.Malloc(…..)和free(….), new ….和 delete …必须成对出现不可以混杂哦,混杂的话,后果就不可以想了哦!!(也没有什么,就是内存被泄漏了,呵呵)
2.在我们使用new …和delete ….一定要注意一些细节,否则后果同上哦!!什么细节呢?下面看一个简单的例子:
char  *block_memory  = NULL;
block_memory  = new  char[1024];
delete  block_memory;
block_memory = NULL;
大家沉思一会。。。。。。。。。
大家看有错吗?没有错吧!!
如果说没有错的,就要好好补补课了,是有错的,上面实际申请的内存是没有完全被释放的,为什么呢?因为大家没有注意第一条的完全匹配原则哦,在new 的时候有[ ],我们在delete 怎么就没有看见[ ] 的影子呢? 这就造成了大错有1023个字节没有被释放。正确的是 : delete []block_memory;

关于内存基本操作的我是说这两条,其他要注意还是有的,基本就源于此了。

了解了上面那些接下来就想大家说说服务器内存处理技术了。上面都没有弄清楚了,就算了。呵呵。

大家都知道,我们的服务器要频繁的响应客户端的消息同时要将消息发送到客户端,并且还要处理服务器后台游戏World的运行。这样我们就必须要大量的使用内存,并且要进行大量的内存操作(申请和销毁)。而在这样的操作中,我们还必须要保证我们的绝对正确无误,否则就会造成内存的泄漏,而内存泄漏对于服务器而言是非常可怕的,也可能就是我们服务器设计失败的毒药。而我们如何进行服务器内存的正确和合理的管理呢?那就是我们
必须建立一套适合我们自己的内存管理技术。现在就向大家说一说我在内存管理方面的一些做法。
基本原理先用图形表示一下:

回收内存块
超大块内存
       现在要申请的内存块

上面的意思是:我们在服务器启动过程中就为自己申请一块比较大的内存块,而我们在服务器运行过程中需要使用内存我们就到这样一块比较大已经申请好的内存块中去取。而使用完后要进行回收。原理就是这么简单。而最重要的是我们如何管理这个大的内存块呢?
(非常复杂也比较难,呵呵)
首先 就内存块操作而言就只有申请(类似 new)和回收(类似 delete)。
其次 我们必须要清楚那些内存我们在使用中,那些是可以申请的。

关于上面我简单将这样的一些数据结构和class定义在下面供大家参考使用。

   typedef  struct  MemoryBlock           //内存块结构
{
    void  *buffer;                      //内存块指针
    int    b_Size;                      //内存块尺寸
} MemoryBlock;

class   CMemoryList                  //列表对象类(相当于数组管理类)
{
    public:
        CMemoryList();
        virtual ~ CMemoryList();
        void   InitList(int  data_size,int data_num);//初始化列表数据结构尺寸和数量
        void   AddToList(void *data);           //加入列表中
        void   DeleteItem(int index);            //删除指定索引元素
……………..
private:
    void   Init();
    void   Release();
private:
    void  *memory;
int    total_size;
int    total_num;
    protected:
};

classs   CMemoryPool                                   //内存池处理类
{
    public:
        CMemoryPool(); 
        virtual ~ CMemoryPool();
        bool   InitMemoryPool(int  size);                 //初始化内存池
void *  ApplicationMemory(int size);               //申请指定size内存
void   CallBackMemory(void *,int size);            //回收指定size内存

    private:
        void   Init();
        void   Release():
        MemoryBlock  *UniteMemory(MemoryBlock  *block_a,MemoryBlock  * block_b);                                                  //合并内存


    private:
       MemoryBlock  memoryPool_Block;                 //内存池块
       CMemoryList  *callBackMemory_List;              //回收内存列表
       CMemoryList  *usingMemory_List;                 //使用中内存列表
       CMemoryList  *spacingMemory_List;               //空白内存列表
    protected:
};

以上就是这个内存管理类的一些基本操作和数据定义,class  CMemoryList  在这里不是重点暂且就不说了,有空再聊。而具体的内存池处理方法简单叙述如下:

   函数InitMemoryPool():  初始化申请一块超大内存。
   函数ApplicationMemory():申请指定尺寸,申请内存成功后,要将成功申请的内存及其尺寸标示到usingMemory_List列表,同时要将spacingMemory_List列表进行重新分配。以便于正确管理。
   函数CallBackMemory():回收指定尺寸内存,成功回收后,要修改spacingMemory_List列表,同时如果有相邻的内存块就要合并成一个大的内存块。usingMemory_List修改使用列表,要在使用列表中的这一项删除。

以上就是一些简单处理说明,更加详细的就需要大家自己琢磨和处理了。我就不细说了。呵呵。不足之处就请大家进行指正,以便让我们大家都提高。先谢谢了。

posted @ 2005-02-13 11:52 蓝色雪焰 阅读(318) | 评论 (0)编辑 收藏
 
 

线程池处理部分

续上在这里我将要向大家简单介绍一下游戏服务器中必须要处理另外一项主要技术:

线程池技术

开始 我来向大家简单来介绍一下线程池的概念,先简单了解下线程先,线程可以理解为一个function , 是一个为了进行某一项任务或者处理某一项具体事务的函数。例如:

UINT  WINAPI  FunctionCtrl(void *)              //线程处理函数
{
    进行某一项任务或者处理某一项具体事务
    ………….
    return  EXITFUNCTION_CODE;               //退出码
}

而我们的线程池自身可以理解为是很多线程的一个管理者也可以说是一个很多线程的统筹者。因为我们的线程池具有生成线程功能也具有撤消线程的权利。这就是简单的线程池的概念(我的理解,呵呵!!)接下来就来具体介绍线程池了!!

首先 介绍我们为什么要使用线程池技术呢?大家都知道我们的游戏服务器端要处理大量的用户请求,,同时需要发送大量的游戏数据到客户端,从而来驱动客户端程序的执行和维持游戏的进行。那我们的服务器端是如何进行处理的呢?其实在这里我们就充分用到了线程池技术。
那么用这种技术有什么好处和优点呢?以下就来简述这些,有不足之处和不当之处希望有心人指正,呵呵!!

大家都了解在我们服务器整个运行过程中,我们将整个运行时间分成很多个时间片。而对于这些已经分成的各个微小的时间片而言,在各个不同时间片中要处理的用户请求和需要发送到用户端的游戏数据量也将是不一样的。而处理用户的请求和发送数据到客户端的工作都是由一系列的线程来执行的。

鉴于上面,这样我们就可以感性的设想下服务器运行中的两种情况:
第一种在我们服务器运行到某个时间片需要处理大量的用户请求和发送大量数据,有这样繁重的工作任务,我们就需要有很多的工作者线程来处理完成这样的任务,以此来满足我们的工作需要。这样说我们就必须拥有很多工作者线程。

第二种在我们服务器运行到某个时间片需要处理的用户请求和发送数据工作量比较小,由于任务比较少,我们用来处理任务的工作者线程也就不需要很多。也就是说我们只要有少量的工作者线程就可以达到我们的工作要求了。
    
对于上面的两种情况,我们可以说明这样的一个事实,也就是说我们服务器在运行过程中运行状态是动态改变的,呼忙呼闲,时急时慢的。服务器的这样的行为动作和性质可以做一个如下比喻:服务器就是一个企业,在企业业务非常忙的时候,公司的员工数量就必须要增多来满足业务的需要。而在企业不景气的时候,接的业务也就比较少,那么来说就会有很多员工比较闲。那我们该怎么办呢?为了不浪费公司资源和员工自身资源,我们就必须要裁减员工,从而来配合公司的运行。而做这样工作的可能是公司的人力资源部或者其他部分。现在就认为是人力资源部了。呵呵。

对于上面的比喻我们来抓几个关键词和列举关键词和我们主题对象进行对照,以此来帮大家来简单理解服务器运行和线程池。

企业        :  游戏服务器
人力资源部  :  线程池
职员        :  工作者线程

在说了这么多的废话后,就具体的将线程池模型  ThreadPool.h文件提供以供大家参考:


class   GThreadPoolModel
{
friend static   UINT WINAPI  PoolManagerProc(void* pThread);  //线程池管理线程
friend    static   UINT WINAPI  WorkerProc (void* pThread);       //工作者线程
enum SThreadStatus                                        //线程池状态
{
BUSY,
NORMAL,
IDLE
};
enum SReturnvalue  //线程返回值
{
MANAGERPROC_RETURN_value  = 10001,
WORKERPROC_RETURN_value  = 10002,
…………….
};
public:
GThreadPoolModel ();
virtual ~ GThreadPoolModel ();
    virtual bool  StartUp(WORD static_num,WORD max_num)=0;   //启动线程驰
virtual bool  Stop(void )=0;                                //停止线程池
virtual bool  ProcessJob(void *)=0;                          //提出工作处理要求
protected:
virtual bool  AddNewThread(void )=0;                        //增加新线程
virtual bool  DeleteIdleThread(void)=0;                       //删除空闲线程
static  UINT WINAPI PoolManagerProc (void* pThread);        //线程池管理线程
    static  UINT WINAPI WorkerProc (void* pThread);            //工作者线程
GThreadPoolModel::SThreadStatus  GetThreadPoolStatus( void ); //获取线程池当前工作状态
private:
void    Init();
void    Release();
protected:
………………………..
private:
};

以上是线程池模型的一个简单class,而对于具体的工作处理线程池,可以由此模型进行继承。以此来满足具体的需要。到这里就简单的向大家介绍了线程池的处理方式。有不对之处望指正。同时欢迎大家和我交流。

posted @ 2005-02-13 11:52 蓝色雪焰 阅读(291) | 评论 (0)编辑 收藏
 
消息打包处理部分

续上在上面我简单的说了一下服务器完成端口处理部分,接下来我想大家介绍一下关于如何建立服务器和客户端的联系规则,也就是服务器和客户端的游戏协议部分。有不足之处希望大家和我进行交流。

首先解释一下这里协议的概念,协议大家都了解是一种通信规则,例如:TCP/IP,UDP等等,这些是我们在网络通信过程中所处理使用的协议。而我们这里的协议是我们的游戏服务器和客户端的通信规则。简而言之,也就是客户端发送到服务器的数据包和服务器发送的数据包双方解释规则。下面就通过几个部分来具体介绍这种协议的建立和处理。

消息头定义

如果我们能够解释双方的数据包的意义,我们就必须为双方数据包定义一个统一规则的消息头,我是这么定义消息头的。服务器数据包和客户端数据包分别定义不同的消息头。以下就是双方消息头的简单定义。

struct    ServerMsg_Head             //服务器消息头
{
   WORD  s_version;                //版本信息
   BYTE   s_flages;                 //消息标志
   BYTE   s_who;                  //消息驱动者
   BYTE   s_sort;                   //消息类别
   BYTE   s_value;                 //消息值
   WORD  s_len;                   //消息长度
} ;

struct    ClientMsg_Head             //客户端消息头
{
   WORD  c_version;                //版本信息
   WORD  c_flages                  //消息标志
   WORD  c_sort;                   //消息类别
   WORD  c_value;                  //消息值
   WORD  c_scene;                  //场景信息
   WORD  c_len;                    //消息长度
};

以上是我个人简单定义的消息头,具体的各个参数意义,就是需要规划设计的人来定了。这些我就不多说了。

在我们处理完我们的消息头后,我们就可以将我们的具体游戏数据进行打包。关于数据打包,我们必须要处理两件事情:数据打包,数据加密。为此我就建立相应的class来处理这样的一些操作。DataCtrl.h处理如下:

class  Ppackage类可以拆解为两个单独处理类,打包类和解包类。而此处我就用下面一个类来进行处理。只是给大家开个头,要设计的更好还是靠大家共同来进行斟酌呀!!


class   PPackage                                   //游戏数据包处理类
{
public:
PPackage(BYTE msg_type);                      //设置所打包消息类型
virtual ~PPackage();
//消息数据打包部分
void  SetMsgHead(void  *);                    //设置消息头
void  AddByte(BYTE  data);                   //加入一字节
void  AddWord(WORD  data);                 //加入二字节
void  AddDword(DWORD  data);               //加入四字节
void  AddPoint(POINT  data);                  //加入八字节
void  AddBuf(char * data ,int  data_len);          //加入多个字节
//消息内容获取
void  FinishPack();                            //完成打包
char  *GetPackage();                           //获取数据包
int   GetPacketLen();                          //获取数据包长度


//消息数据解包部分
void     SetMsgPackage(char *buf,int _Len);       //将获取消息进行录入
void    *GetMsgHead();                        //获取消息头数据
BYTE   GetByte();                            //获取一字节
WORD  GetWord();                            //获取二字节
DWORD GetDword();                           //获取三字节
POINT * GetPoint();                            //获取四字节
char  *  GetBuf(int buf_len);                    //获取多字节
bool     IfFinishGet();                         //是否完成解包

private: 

void     Init();
void     Release();
void     StartBindPakage();       //开始打包
void     StartUndoPackage();     //开始解包
    bool     MessageEncrypt();       //消息加密
    bool     MessageUndo();         //消息解密

private:

private:
    BYTE   msg_type;               / /{1-SERVER_PACKAGE=1,2-CLIENT_PACKAGE=2}
char  *  msg_buffer;
char  *  buffer;                 //后备缓冲区
int      msg_len;
//消息内容长度
Server_Msg_Head  msg_Head;     //消息头
int      buf_Len;
int      current_pos;             //指针的当前位置
protected:
};

以上就是关于服务器和消息打包类的一些建立和解释,这些方面知识其实也没有什么,主要是“仁者见仁,智者见智”了。而对于网络游戏的制作最重要的还是在于Game World的规划和设计,同时这个方面也是最难和最不好处理的。随后将和大家进行探讨。。

posted @ 2005-02-13 11:51 蓝色雪焰 阅读(289) | 评论 (0)编辑 收藏
 
当今网络游戏在中国大陆已经在大范围的蔓延,暂且不论这样的一种趋势会带来什么样的游戏产业趋势。这里只就网络游戏的制作和大家进行交流,同时将自己的制作经验写处理,希望为中国的游戏业的发展做出一点点的贡献。。
   
网络游戏的程序开发从某种意义上来看,最重要的应该在于游戏服务器端的设计和制作。对于服务器端的制作。将分为以下几个模块进行:

1.网络通信模块
2.协议模块
3.线程池模块
4.内存管理模块
5.游戏规则处理模块
6.后台游戏仿真世界模块。

现在就网络中的通信模块处理谈一下自己的看法!!

在网络游戏客户端和服务器端进行交互的双向I/O模型中分别有以下几种模型:
1. Select模型
2. 事件驱动模型
3. 消息驱动模型
4. 重叠模型
5. 完成端口重叠模型。
在这样的几种模型中,能够通过硬件性能的提高而提高软件性能,并且能够同时处理成千上百个I/O请求的模型。服务器端应该采用的最佳模型是:完成端口模型。然而在众多的模型之中完成端口的处理是最复杂的,而它的复杂之处就在于多服务器工作线程并行处理客户端的I/O请求和理解完成端口的请求处理过程。
对于服务器端完成端口的处理过程总结以下一些步骤:
1. 建立服务器端SOCKET套接字描述符,这一点比较简单。
例如:
SOCKET  server_socket;
Server_socket = socket(AF_INET,SOCK_STREAM,0);
2.绑定套接字server_socket。
    Const int SERV_TCP_PORT = 5555;
    struct sockaddr_in  server_address.
    
memset(&server_address, 0, sizeof(struct sockaddr_in));
    server_address.sin_family      = AF_INET;
    server_address.sin_addr.s_addr = htonl(INADDR_ANY);
    server_address.sin_port        = htons(SERV_TCP_PORT);
//绑定
Bind(serve_socket,( struct sockaddr *)&server_address, sizeof(server_address));

2. 对于建立的服务器套接字描述符侦听。
Listen(server_socket ,5);
3. 初始化我们的完成端口,开始的时候是产生一个新的完成端口。

   HANDLE  hCompletionPort;
   HCompletionPort = CreateIoCompletionPort(NULL,NULL,NULL,0);
4. 在我们已经产生出来新的完成端口之后,我们就需要进行系统的侦测来得到系统的硬件信息。从而来定出我们的服务器完成端口工作线程的数量。

SYSTEM_INFO   system_info;
GetSystemInfo(&system_info);

在我们知道我们系统的信息之后,我们就需要做这样的一个决定,那就是我们的服务器系统该有多少个线程进行工作,我一般会选择当前处理器的2倍来生成我们的工作线程数量(原因考虑线程的阻塞,所以就必须有后备的线程来占有处理器进行运行,这样就可以充分的提高处理器的利用率)。
代码:
WORD threadNum = system_info. DwNumberOfProcessors*2+2;
for(int i=0;I{
    HANDLE  hThread;
    DWORD    dwthreadId;
    hThread = _beginthreadex(NULL,ServerWorkThrea, 
(LPVOID)hCompletePort,0,&dwthreadId);
        CloseHandle(hThread);         
}
CloseHandle(hThread)在程序代码中的作用是在工作线程在结束后,能够自动销毁对象作用。
6. 产生服务器检测客户端连接并且处理线程。

HANDLE  hAcceptThread;
DWORD   dwThreadId;
hAcceptThread= _beginthreadex(NULL,AcceptWorkThread,NULL,
&dwThreadId);
CloseHandle(hAcceptThread);

7.连接处理线程的处理,在线程处理之前我们必须定义一些属于自己的数据结构体来进行网络I/O交互过程中的数据记录和保存。

首先我要将如下几个函数来向大家进行解析:
1.
HANDLE CreateIoCompletionPort (
      HANDLE FileHandle,              // handle to file
      HANDLE ExistingCompletionPort,  // handle to I/O completion port
      ULONG_PTR CompletionKey,        // completion key
      DWORD NumberOfConcurrentThreads // number of threads to execute concurrently
);
参数1:
可以用来和完成端口联系的各种句柄,在这其中可以包括如下一些:
套接字,文件等。

参数2:
已经存在的完成端口的句柄,也就是在第三步我们初始化的完成端口的句柄就可以了。

参数3:
这个参数对于我们来说将非常有用途。这就要具体看设计者的想法了, ULONG_PTR对于完成端口而言是一个单句柄数据,同时也是它的完成键值。同时我们在进行
这样的GetQueuedCompletionStatus(….)(以下解释)函数时我们可以完全得到我们在此联系函数中的完成键,简单的说也就是我们在CreateIoCompletionPort(…..)申请的内存块,在GetQueuedCompletionStatus(……)中可以完封不动的得到这个内存块,并且使用它。这样就给我们带来了一个便利。也就是我们可以定义任意数据结构来存储我们的信息。在使用的时候只要进行强制转化就可以了。

参数4:
引用MSDN上的解释
[in] Maximum number of  threads that the operating system allows to concurrently process I/O completion packets for the I/O completion port. If this parameter is zero, the system allows as many concurrently running threads as there are processors in the system.
这个参数我们在使用中只需要将它初始化为0就可以了。上面的意思我想大家应该也是了解的了!嘿嘿!!

我要向大家介绍的第二个函数也就是
2.
BOOL GetQueuedCompletionStatus(
    HANDLE CompletionPort,       // handle to completion port
    LPDWORD lpNumberOfBytes,     // bytes transferred
    PULONG_PTR lpCompletionKey,  // file completion key
    LPOVERLAPPED *lpOverlapped,  // buffer
    DWORD dwMilliseconds         // optional timeout value
);
参数1:
我们已经在前面产生的完成端口句柄,同时它对于客户端而言,也是和客户端SOCKET连接的那个端口。

参数2:
一次完成请求被交换的字节数。(重叠请求以下解释)

参数3:
完成端口的单句柄数据指针,这个指针将可以得到我们在CreateIoCompletionPort(………)中申请那片内存。
借用MSDN的解释:
[out] Pointer to a variable that receives the completion key value associated with the file handle whose I/O operation has completed.A completion key is a per-file key that is specified in a call to CreateIoCompletionPort.
所以在使用这个函数的时候只需要将此处填一相应数据结构的空指针就可以了。上面的解释只有大家自己摆平了。

参数4:
重叠I/O请求结构,这个结构同样是指向我们在重叠请求时所申请的内存块,同时和lpCompletionKey,一样我们也可以利用这个内存块来存储我们要保存的任意数据。以便于我们来进行适当的服务器程序开发。
[out] Pointer to a variable that receives the address of the OVERLAPPED structure that was specified when the completed I/O operation was started.(MSDN)

3.
int WSARecv(
    SOCKET s,                                               
    LPWSABUF lpBuffers,                                     
    DWORD dwBufferCount,                                    
    LPDWORD lpNumberOfBytesRecvd,                           
    LPDWORD lpFlags,                                        
    LPWSAOVERLAPPED lpOverlapped,                           
    LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine  
);
这个函数也就是我们在进行完成端口请求时所使用的请求接受函数,同样这个函数可以用ReadFile(………)来代替,但不建议使用这个函数。

参数1:
已经和Listen套接字建立连接的客户端的套接字。

参数2:
用于接受请求数据的缓冲区。
[in/out] Pointer to an array of WSABUF structures. Each WSABUF structure contains a pointer to a buffer and the length of the buffer.(MSDN)。
参数3:
参数2所指向的WSABUF结构的数量。
[in] Number of WSABUF structures in the lpBuffers array.(MSDN)

参数4:

[out] Pointer to the number of bytes received by this call if the receive operation completes immediately. (MSDN)

参数5:
[in/out] Pointer to flags.(MSDN)
参数6:

这个参数对于我们来说是比较有作用的,当它不为空的时候我们就是提出我们的重叠请求。同时我们申请的这样的一块内存块可以在完成请求后直接得到,因此我们同样可以通过它来为我们保存客户端和服务器的I/O信息。
参数7:
[in] Pointer to the completion routine called when the receive operation has been completed (ignored for nonoverlapped sockets).(MSDN)
4.
int WSASend(
    SOCKET s,                                               
    LPWSABUF lpBuffers,                                     
    DWORD dwBufferCount,                                    
    LPDWORD lpNumberOfBytesSent,                            
    DWORD dwFlags,                                          
    LPWSAOVERLAPPED lpOverlapped,                           
    LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine  
);
参数解释可以参考上面或者MSDN。在这里就不再多说了。

下面就关client端用户连接(connect(……..))请求的处理方式进行

举例如下:
const int BUFFER_SIZE = 1024;
typedef  struct  IO_CS_DATA
{
   SOCKET  clisnt_s;         //客户端SOCKET
   WSABUF  wsaBuf;     
   Char   inBuffer[BUFFET_SIZE];
   Char   outBuffer[BUFFER_SIZE];
   Int     recvLen;
   Int     sendLen;
   SYSTEM_TIME start_time;
   SYSTEM_TIME start_time;
}IO_CS_DATA;


UINT WINAPI  ServerAcceptThread(LPVOID param)
{
SOCKET  client_s;
HANDLE  hCompltPort = (HANDLE) param;
struct sockaddr_in  client_addr;
int addr_Len = sizeof(client_addr);
    LPHANDLE_DATA  hand_Data = NULL;  
while(true)
{
   If((client_s=accept(server_socket,NULL,NULL))
==SOCKET_ERROR)
{
printf("Accept() Error: %d",GetLastError());
return 0;
}
hand_Data = (LPHANDLE_DATA)malloc(sizeof(HANDLE_DATA));
hand_Data->socket = client_s;
if(CreateIoCompletionPort((HANDLE)client_s,hCompltPort,
(DWORD)hand_Data,0)==NULL)
{
printf("CreateIoCompletionPort()Error: %d",
GetLastError());
}
else

game_Server->RecvDataRequest(client_s);
}
}
return  0;
}

在这个例子中,我们要阐述的是使用我们已经产生的接受连接线程来完成我们响应Client端的connect请求。关于这个线程我们同样可以用我们线程池的方式来进行生成多个线程来进行处理,其他具体的函数解释已经在上面解释过了,希望不懂的自己琢磨。
关于game_Sever object的定义处理将在下面进行介绍。


class   CServerSocket : public CBaseSocket
{
public:
CServerSocket();
virtual ~CServerSocket();
bool   StartUpServer();                  //启动服务器
void   StopServer();                     //关闭服务器
//发送或者接受数据(重叠请求)
bool    RecvDataRequest(SOCKET client_s);     
   bool    SendDataRequest(SOCKET client_s,char *buf,int b_len);

   void    ControlRecvData(SOCKET client_s,char *buf,int b_len);

void    CloseClient(SOCKET client_s);  
private:
friend  UINT WINAPI GameServerThread(LPVOID completionPortID);          //游戏服务器通信工作线程
private:
void   Init();
void   Release();
    bool   InitComplePort();
bool   InitServer();
bool   CheckOsVersion();
bool   StartupWorkThread();
bool   StartupAcceptThread();
private:
enum   { SERVER_PORT = 10006};
UINT   cpu_Num;        //处理器数量
    CEvent g_ServerStop;   //服务器停止事件
CEvent g_ServerWatch;  //服务器监视事件
public:
HANDLE hCompletionPort;     //完成端口句柄
};

在上面的类中,是我们用来处理客户端用户请求的服务器端socket模型。

posted @ 2005-02-13 11:49 蓝色雪焰 阅读(729) | 评论 (0)编辑 收藏
 
        游戏引擎的结构很多,不过基本上都是在一个游戏主循环内实现。程序里面的主循环包含了程序框架的最主要的结构体。J2me的程序一般都包含两个class文件,一个是MIDlet,一个是Displayable。一般我都是把游戏的主要代码放在Displayable这个类里面。这个类是基于事件驱动的程序,有三个主要相应函数void paint(Graphics g),void keyPressed(int keyCode),void keyReleased(int keyCode)

 

1.         使用Runnable和创建线程的主循环

一般主体的做法就是让Displayable这个类实现Runnable这个接口,然后在其构造函数中创建一个线程,启动其run()函数,run函数里面就包含了游戏的主循环。下面是我在仙剑里面的片断代码。

 

public class GameMIDlet extends MIDlet {

  static GameMIDlet instance;

  Display display;

  GameDisplayable displayable = null;

 

  public GameMIDlet() {

    instance = this;

    display =  Display.getDisplay(this);

    displayable = new GameDisplayable();

  }

 

  public void startApp() {

    display.setCurrent(displayable);

  }

 

  public void pauseApp() {

  }

 

  public void destroyApp(boolean unconditional) {

    displayable.running = false;

  }

 

  public static void quitApp() {

    instance.destroyApp(true);

    instance.notifyDestroyed();

    instance = null;

  }

}

 

public class GameDisplayable extends FullCanvas implements Runnable {

  /** 主控制线程 */

  Thread MainThread = null;

  /** 游戏时钟间隔 毫秒为单位 */

  public static long timeinterval = 20;

  public static boolean Isstable = true;

 

  /* 用于游戏时钟的变量 */

  public static long timeold = 0;

  public static long timenow = 0;

  public long interval = 0;

  public static long frames_per_second = 0;

  int count = 0;

  long second = 0;

  public static boolean running = true;

public GameDisplayable() {

      // 开始主线程

    Thread MainThread = new Thread(this);

    MainThread.start();

  }

public void run() {

    while (running) {

      timenow = System.currentTimeMillis();

      interval = timenow - timeold;

 

      if (interval >= timeinterval) {

        timeold = timenow;

        Game_Process();

        if (second != (System.currentTimeMillis() / 1000)) {

          second = System.currentTimeMillis() / 1000;

          frames_per_second = count;

          count = 1;

        }

        else

          count++;

      }

      lib.sleep(30);

    }

 

 }

 

其中关于控制主循环速度的代码可以不要,但是lib.sleep(30)必须保留,因为在Nokia 60的手机上,如果去除了sleep(30),那么游戏将无法切换回来。同时,在游戏中任何一个内部循环中,也必须加入sleep(30)这个等待,才能让游戏可以切换回来,至于为什么这样做,我暂时还不清楚。30ms是我测试过没有问题的数值,可能比30ms还小的值也是没有问题的。

 

同时,在MOTO的手机上,必须将游戏的主循环放在一个线程中,游戏才能切换回来,不过可以不加上面说的sleep(30)延时。

 

2.         不使用线程的主循环办法

这个办法只能在Nokia的平台上实现,而我只建议在Nokia 40的平台上做,这样不需要线程,道理上来说节约了一些内存,如果不是内存很紧张的机型,那么最好还是使用上一种办法。

 

游戏的主循环放在MIDletclass里面,具体做法如下:

public class GameMIDlet extends MIDlet {

  GameDisplayable displayable = null;

 

  /** 游戏时钟间隔 毫秒为单位 */

  public static long  timeinterval = 0;

  //用于游戏时钟的变量

  public static long timeold = 0;

  public static long timenow = 0;

  public long interval = 0;

  public static long frames_per_second=0;

  int count=0;

  long second =0;

  public static boolean running = false;

  static boolean exitApp =false;

 

  public GameMIDlet() {

    displayable = new GameDisplayable();

    running =true;

  }

 

  public void startApp() {

    running =true;

    Display.getDisplay(this).setCurrent(displayable);

    while(running) {

      timenow = System.currentTimeMillis();

      interval = timenow - timeold;

      if (interval >= timeinterval) {

        timeold = timenow;

        displayable.Game_Process();

        if(second != (System.currentTimeMillis() /1000)){

            second = System.currentTimeMillis()/1000;

            frames_per_second = count;

            count = 1;

          }else

            count ++;

      }

    }

    if(exitApp) {

      destroyApp(true);

      notifyDestroyed();

    }

 

  }

 

  public void pauseApp() {

    running =false;

  }

 

  public void destroyApp(boolean unconditional) {

    running = false;

  }

 

  public static void quitApp() {

    running =false;

    exitApp =true;

  }

 

}

posted @ 2005-02-13 11:47 蓝色雪焰 阅读(260) | 评论 (0)编辑 收藏