游戏设计的秘密


游戏设计的秘密——翻译GDC2010 blizzard的一个演讲


转自:http://blog.sina.com.cn/s/blog_62c6329f0100hmia.html

翻译了一篇blizzard在GDC2010上的演讲。感谢cyndi的校正和粽子的润色。有不对的地方,还请大家指出。

游戏设计的秘密

理念一:游戏性第一。有些公司把技术看得比游戏性还重要,这是毫无意义的。在暴雪,包括美术、策划、程序每个人都很关注游戏性,这并非策划的专利。——无论策划能想出了多么牛的方案,大家依然从中找出瑕疵。

让我们来看一个例子:在魔兽争霸3 中,我们有一个设定是这样的:只有暗夜精灵男性才能成为德鲁伊。但换到了魔兽世界中,假如依然只有暗夜精灵,依然只有男性才能成为德鲁伊,这太没意思了!所以,我们修改了这条设定。



理念二:易于上手,难于精通。我们把这条格言稍微地进行了修改:易于上手,几乎不可能精通。 游戏要做到极致才能让玩家为之疯狂, 从而投入大量的游戏时间。

这些年来,暴雪都很关注多人游戏。我无法明白许多开发人员愿意花费大量的精力在不到10 小时的单人游戏上,却只是在完工前草草地补上多人部分,这简直不可理喻!相对来说, 多人游戏有明显的优势和潜质能吸引玩家投入更长的游戏时间。

在星际争霸2 的开发过程中,整个研发组用了2 年时间制作多人模式后,才开始制作单人战役。值得一提的是:在多人部分制作完毕后,调整单人战役的平衡要容易得多。



理念三:带入感。游戏带给玩家的体验能完美地符合玩家期望——如吉他英雄一般演奏,像奎托斯一般弑神,这就是强大的带入感。

在这一点上,原版的星际争霸做得并不好,特别是在英雄单位上。按道理说,英雄应该是战场上非常强大的单位,甚至能左右战场的局势。但在游戏中,英雄往往是很脆弱的,特别是在超过50 个单位作战的时候就更加明显了。因此,玩家不再让他们的英雄加入战斗,而只是把它们藏在自己的基地之中。我们在魔兽争霸3 中解决了这个问题—— 缩小了战斗规模,让有复生能力的传奇英雄们成为战场上真正的主宰者。正如我们设计的初衷一样,玩家们也乐于使用这些强大的英雄单位。

值得注意的是:我们应该让单位在 单独存在时,让它有一种无懈可击的感觉,但当众多单位同时存在的时候,却又有相生相克的关系,从而维持游戏的平衡性。其中有一种方法可以解决这个问题——加强单位与单位之间的差异:如果你提升了某些单位的攻击力,那么就该相应提升另外一些单位的防御力。

无论是在背景设定、游戏性还是故事本身的延续,让游戏中的事物有史诗般的感觉是百利而无一害的。以wow 中龙的模型为例,最初的模型只有玩家角色5 倍大小而已。我让研发做了一个GM 技能,可以使任意目标放大或是缩小10% 。有一次,在一个孤岛上,我对着一条龙施放“放大术”近20 次才满意的停手。至今为止,我都还没有对任何单位使用过“缩小术”。

过去发生的某些事,就当它发生在10000 年前好了,何必纠结于8 尺身高的人是否存在的问题?大胆的做就好了。有了这样的念头,我们的故事和设定就不会有太多约束。



理念四:少而精。我们要提炼游戏中必不可少的元素,最精彩的部分而不是放出一大堆复杂的功能和玩法。在这一点上,魔兽世界的交通系统做得并不好,而星际争霸的单位特色却非常成功。



理念五:要玩家去体验,而不要平铺直叙 。这个理念来自一个古老的谚语——要秀出来,不要说出来!游戏诉说故事的首要方法是让玩家去体验、去感受,而非文字、声音、动画。

在这一点上,我们曾经在暗黑2 中栽过跟头。游戏中的任务通常会毫无目的地给出大段描述,简单的说:去某某地方,干掉某某!相比而言,魔兽争霸3 的“灭绝!斯坦索姆”任务就做得很不错:整个村庄都被瘟疫所侵袭,不久村民将成为新的僵尸加入恐惧魔王的势力。而你必须带领部队,在他们变成僵尸之前,把村民们全部干掉!



理念六:激励。激励的作用往往要大于惩罚,但设计师们总是很容易先想到如何去惩罚玩家。在wow 的beta 阶段,我们有一个设计:一旦玩家在线时间过长,他获得经验值的效率将降低——这通常让玩家很郁闷。

在无数的批评反馈中,我们修改了设计:以前玩家在线时间过长,只会获得50% 的经验值,现在我们让他获得100% !而正常时间内,我们让他获得200% 的经验。与此同时,我们把人物升级经验加了1 倍—— 玩家获得经验值的效率并没有改变,我们仅仅是在思维和表达方式上化贬为褒,就再也没人抱怨过了。



理念七:操作性。有时候,我们为了操作性得放弃一些听起来很酷的点子。最初,设计师们希望坐骑系统具有塞尔达风格——当召唤时,玩家的坐骑会从地平线那端 跑到玩家跟前。但最后,我们采用了现在的方式——“噗”的一声,玩家就召唤出了坐骑。这是因为我们发现,坐骑出现的时间、地点对玩家来说更重要。



理念八:调整。游戏调整是很经常的事情,但重要的是得想清楚:这些修改是为了哪些用户,以及为什么这么改。然而有些设计师,在还没想清楚这些问题之前,就盲目的修改,这是非常失败的。



理念九:切忌闭门造车。设计师们如果能在早期就跟大家分享、沟通自己的设计案,那么他能得到许多重要的反馈,从而做出改进。但如果一个设计师,闷头做了很久,就会很容易变得情绪化。最后,他向大家宣布设计的时候,更像在寻求别人的肯定而不是什么建议。



理念十:产品化。我们会在游戏之初就开始坚持游戏产品化工作,而不是等到游戏基本定型后才开始——在游戏还没有可玩版本的时候我们会做,甚至这个概念还只是出现在白板之上的时候,我们就已经开始产品化了。

我们有一个“突击队”,他们由公司其他项目的同事和一些外来人员组成。他们的任务是给我们游戏的提出反馈意见。他们像新鲜血液一样,总能带来新的东西。产品化 也起着至关重要的作用,暴雪是绝对不会在未完成产品化之前发售游戏的。

p.s. :所有的这些理念都是为了做一款杰出的游戏而存在的,离开这个目标,它们都是毫无意义的。你们应该总结自己的设计理念,只有让游戏符合自己的价值观,才能体验到游戏设计的快乐。

comment:即使作为程序,我也觉的很有意思,理念一更加是非常认同。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在MATLAB中设计一个猜数字游戏,你可以按照以下步骤进行: 1. **生成随机数**: 首先,你需要生成一个1到某个范围(例如1到100)内的随机整数,作为你想要用户猜测的数字。 ```matlab secretNumber = randi([1, 100]); ``` 2. **提示用户输入**: 让用户输入他们的猜测,并将输入存储在一个变量中。 ```matlab guess = input('请输入你猜的数字:', 's'); guess = str2double(guess); % 转换为数值型 ``` 3. **比较猜测与答案**: 检查用户的猜测是否等于秘密数字,如果相等,游戏结束;如果不等,则给出提示。 ```matlab if guess == secretNumber disp('恭喜,你猜对了!'); else if guess < secretNumber disp('你猜的数字小了,再试一次。'); else disp('你猜的数字大了,再试一次。'); end end ``` 4. **循环和限制次数**: 如果用户没有在一定次数内猜对,可以增加一个循环来限制次数,直到猜对或者达到预设的最大尝试次数。 ```matlab maxTries = 5; % 设置最大尝试次数 attempts = 1; while attempts <= maxTries if guess == secretNumber break; else % 提示用户并更新猜测次数 disp('错误,请再试一次。'); attempts = attempts + 1; end end if attempts > maxTries disp(['很遗憾,你没有在规定的' num2str(maxTries) '次内猜对。答案是 ' num2str(secretNumber)]); end ``` 5. **游戏结束**: 游戏结束后,你可以选择让用户重新开始或者退出游戏

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值