当前位置: 首页 > article >正文

【游戏设计原理】42 - 游戏中的约定俗成

在这里插入图片描述

约定俗成,其实就是一些不成文的规则,大家都默认遵守。你也可以不按这些约定,打破规则,但结果就是玩家需要付出更多时间来学习。 这其实算不上什么原理,反过来思考的话,倒是可以从打破一些常规玩法或规则,来创造新的创意。 所以我的看法是,在一些操作上可以遵守约定俗成的规则,比如按键的使用。因为这些操作玩家是已经用习惯了顺手的,让他们改变可以,除非你的游戏很吸引人,让他觉得值得投入时间云学习。否则可能会让一些玩家产生抱怨。

在游戏设计中,约定俗成的规则常常是为了提升用户体验,但如果不加以创新和打破,有时候也可能会让游戏显得千篇一律,缺少新意。打破这些规则有时会带来创新,但也需要一定的平衡,不然可能会影响玩家的接受度。

1. 你能想到的约定俗成的例子有哪些?

除了原文中提到的 跳跃按键急救包,以下也是一些常见的约定俗成例子:

  • 生命值和血条:在大多数游戏中,生命值通常表现为一个条形图或数字,玩家可以通过某种方式恢复生命。虽然这是一种非常直观的表现方式,但如果我们从另一个角度出发,是否可以通过声音、光效、视觉变化等来替代血条呢?
  • 经验值和升级系统:很多角色扮演游戏(RPG)中,玩家通过击败敌人或完成任务积累经验,进而提升角色的等级。这种系统几乎成为了RPG的标配,反而很少看到其他形式的角色成长和进化方式。
  • 按键映射的一致性:比如大多数游戏使用 WASD 控制角色移动,而鼠标则控制视角或瞄准。这种标准化设计是基于玩家习惯和舒适度,但也可能是时候挑战一下是否有更创新的操作方式来提升游戏沉浸感。
  • 敌人死亡后掉落物品:无论是 RPG、动作冒险类还是射击游戏,敌人死后掉落武器、金币、药品等物品,已经成为了一种默认设定。打破这一设定,可能会让玩家思考如何与敌人互动而不是单纯的“击杀+掉落”。
  • 主角必定能跑跳翻滚:大多数动作游戏的主角都有极强的机动性(跑、跳、翻滚等)。但是,如果你设计了一个相对弱小的主角,这种设定可能会破坏游戏的现实性和挑战性,进而为玩家带来更具深度的体验。
  • 任务标记和提示系统:现代游戏常常通过地图、任务标记和提示来引导玩家进行任务,防止玩家迷失。这虽然非常方便,但也减少了探索的乐趣,甚至让玩家依赖于指引而失去自主探索的激情。
  • 物理互动和碰撞检测:游戏中常见的物理反馈机制(如玩家角色与物体碰撞产生反应)和即时反馈动作(例如角色受伤时的动态动画)在很多游戏中都是标配。试想,如果没有这种直接的物理反馈,玩家如何理解他们的行为和游戏世界的互动?

2. 在玩法中不同体裁的游戏其实也有一些约定俗成的玩法,当这些玩法烂大街时,就可以考虑进行推翻或创新。

随着时间的推移,许多玩法可能会变得“烂大街”,如果照搬这些约定俗成的设计,玩家可能会失去兴趣,甚至觉得游戏缺乏创意。这是一个挑战,但也是创新的机会。

例如:

  • 开放世界游戏中的“任务线”设计:虽然开放世界的自由度是一个卖点,但很多游戏都采用了非常相似的任务线设计——即玩家完成一个个重复的支线任务来提升角色的能力或解锁区域。尝试打破这一点,可能会让游戏变得更加独特。例如,设计一些动态的、玩家选择性更强的任务系统,让任务的内容和方式随玩家的决定而变化。

  • 动作游戏中的“连击系统”:连击和打击反馈系统在很多动作游戏中都非常普遍,例如《战神》系列、《鬼泣》系列等。虽然这些设计有效地提高了游戏的爽快感,但随着同类游戏的增多,玩家可能会感到审美疲劳。创新可能体现在不依赖传统连击系统,而是加入更加富有创意的战斗机制,比如基于情境的攻击系统、时间操控等。

    在这里插入图片描述

  • 冒险解谜中的“物品使用”:在很多解谜类游戏中,玩家需要收集不同的道具并组合使用,才能解开谜题。这种玩法虽然经典,但重复过多会让玩家感到乏味。你可以尝试重新定义物品的作用,或者设计不依赖传统道具的谜题,通过环境互动、时间限制或玩家选择来设计解谜系统。

  • 生存游戏中的“资源采集与管理”:生存类游戏(例如《Minecraft》或《Rust》)中的资源采集与物品管理是很常见的系统。这种玩法已经非常成熟,但如果要创新,可能需要在资源的获取、利用和管理上做出新的改变,或者引入更具挑战性的玩法,例如动态变化的环境影响、人物情绪管理等。

结语

打破常规的玩法设计并不一定要颠覆所有约定俗成的元素,而是应该在合适的时机和场景下进行创新。对设计师来说,最重要的还是保持对玩家需求的敏感度,权衡传统与创新之间的平衡。设计时应该深思熟虑,不只是为了创新而创新,也要考虑创新是否能提升游戏的体验,让玩家更有沉浸感和成就感。


原文:

原理42 游戏中的“约定俗成”

游戏中的“约定俗成”(trope)是指那些一直被广泛应用在各种游戏中,并且被公众认为是常态,甚至是标准的观念。有一些约定俗成的东西是非常有用的。比如很多游戏都采用 X 键来作为控制跳跃的命令。并没有哪一条法则规定我们必须这样做,设计师可以将 Y 或者 A 用作跳跃命令,但它被应用得太广泛了,玩家在按下 X 键的时候就期待能看到跳跃动作。如果游戏中没有跳跃动作,X 键也常被用来控制最常用的动作(参见原理 33“核心游戏循环”)。

在此必须重申,这是一个传统或者一种约定俗成,并不是一个规定。游戏中还有很多这样约定俗成的东西。如果改用其他按键来控制跳跃能让游戏的可用性得到提升,我们就应该那么做。用 X 键来控制跳跃在大多数时候是方便而有用的,玩家可以很容易上手一个新游戏而不用太费力地去学习一种新的控制模式(参见原理 91“别让我思考——克鲁克的可用性第一定律”)。

游戏中并不是所有的约定俗成都这么有用。有一些是从 20 或 30 年前就开始的,它们也许在那个时候很有用,而现在却已经失效了,有些甚至看起来很奇怪。

最显而易见的例子就是谋杀。在现实世界中,夺去他人的生命是一种非常极端的行为,会导致非常严重的后果和问题。而在视频游戏中,“杀”是一种约定俗成的行为——杀人、杀怪、杀动物、杀鬼——这是一种与它们进行互动的默认方式(参见原理 46“魔杖”)。

对设计师而言,游戏中约定俗成的东西可能是朋友,也可能是敌人。有时候它们能让一个游戏的操作界面更加直观。而另一方面,对于一个特别的主题或者实验性的游戏循环,它们又可能成为阻碍。例如,如果设计师想把游戏的主角塑造成一个非常正直的人,就需要颠覆一些游戏中的约定俗成,比如可以去别人家随便拿东西,比如可以翻动敌人的尸体来找战利品。

只要设计师意识到这些约定俗成在他们的设计中存在,这些约定俗成就能为他们所用,不管是用来提升可用性还是作为创新的试金石。

以下是一些与游戏共同成长的“约定俗成”的例子:

急救包
从设计角度来讲,把一个上面画着红十字的白盒子放在地上等于立刻告诉玩家这是一 个里面装着神奇治疗药水的急救包,能马上让你回血。这简直太好了。可是在现实世界里,急救包可能出现在办公大楼里,里面只有创可贴,而不会在马路上每隔 10 英尺出现一个。急救包在视频游戏中的应用如此广泛,以至于许多设计师让他们设计的游戏世界中毫无理由地充斥着各种急救包,甚至不考虑这是不是平衡他们游戏的最好的办法。

盗窃
在现实生活中如果有人闯进别人的房子里去偷东西,他们同时犯了私闯民宅和偷盗两重罪,两条罪都会让他们受到惩罚。而在视频游戏中,玩家经常会由于没有闯入别人的房子、没有拿走原本属于别人的东西而受到惩罚。他们被罚得不到他们想要的经验值,得不到他们想要的升级,或者没法杀死 boss 而进入下一级。在游戏中,只要这个东西没被钉死在那里,你就可以抢走它。

宝箱
正如现实世界不会遍地是急救包一样,现实世界也不会遍地是宝箱。然而视频游戏中一个非常普遍的约定俗成就是遍地是宝箱,玩家可以砸开或用枪射开,然后取走里面的东西。一个独立小游戏《超级包装箱》(Super Crate Box)就将其用到了极致,直接把这个荒诞的约定俗成变成了核心游戏循环。

这是一个很好的例子,说明了如何扭转这些约定俗成的东西,如何重新想象其他人都觉得理所当然的东西。

以上列出的并不是一个完整的清单,只是一个开始检视和重新发现游戏中的约定俗成的起点。


http://www.kler.cn/a/465442.html

相关文章:

  • Elasticsearch Serverless中的数据流自动分片深度解析
  • 145页PPT智慧矿山整体规划建设方案
  • 【前序、中序、后序遍历递归栈的实现】
  • AutoSar架构学习笔记
  • 深入理解 JVM 的垃圾收集器:CMS、G1、ZGC
  • Swift Combine 学习(五):Backpressure和 Scheduler
  • JDK、JRE、JVM三者的关系、JDK8的新特性、JVM内存结构,堆栈的区别
  • flutter 专题二十六 Flutter 新一代图形渲染器 Impeller
  • uniapp 多环境打包
  • unity团结云下载项目
  • 反向传播算法的偏置更新步骤
  • Windows系统下载、部署Node.js与npm环境的方法
  • CDP集群安全指南-动态数据加密
  • 咖啡馆系统|Java|SSM|JSP|
  • df.groupby([pd.Grouper(freq=‘1M‘, key=‘Date‘), ‘Buyer‘]).sum()
  • Java 应用程序CPU 100%问题排查优化实战
  • Git 树形图表不显示问题
  • 大数据职业技能资源分享
  • 设计模式 结构型 代理模式(Proxy Pattern)与 常见技术框架应用 解析
  • GROUP BY 的目的是将数据按照指定的列进行分组,然后对每个分组进行聚合计算,分组后,每个分组只会返回一行结果。
  • Python 3 与 Python 2 的主要区别
  • 微服务之服务治理——Eureka
  • python-leetcode-买卖股票的最佳时机 II
  • 基于XGBoost算法的集成学习
  • linux网络管理
  • 特征值描述了系统的固有频率平方,而特征向量描述了系统的振动模式