软件构建设计图

游戏是一种有趣的媒介。 与电影,文学和戏剧等几乎所有其他流行娱乐方式不同,游戏取决于玩家的选择。 作为游戏设计师,您大部分时间都花在精心设计要呈现给玩家的选择上。

对我们来说,最有趣的问题是:我们如何吸取从游戏设计中学到的经验教训,并将其应用于一般的开源软件设计以及周围的社区? 游戏通过规则来创建系统,就像所有软件都通过代码来创建系统,而社区是通过其流程和传统来进行创建一样。

游戏是可以带来情感的选择

玩家的选择范围很大。 在最高级别,选择可能会影响游戏的整个故事。 为此,许多开发人员变得尤为著名,他们的游戏着重于故事及其周围的选择。 在较低的级别,玩家可以做出非常精细的决定,例如面对巨石滚滚时是向左躲避还是向右躲避。 中间有一个有趣的空间,玩家无法选择下一个情节点,但他们有很大的自由度来选择故事如何到达该点。 最近最有趣的例子是Arkane的《耻辱2》。

游戏的选择从本质上构成了玩家进行游戏的系统。 由于这些受限的互动,玩家会受到游戏创作者故意设计的方式的情感影响。 如果您玩动作游戏,那么游戏的可用选择就会被构造成使玩家离开游戏时会感到兴奋和振奋。 如果您玩的是故事丰富的冒险游戏,那么游戏会让您感觉仿佛探索了广阔的新世界并结识了新朋友。 最有效的系统唤起在该环境中成功所需的感受和React。

游戏如何从这些选择变为这些感觉? 为了回答这个问题,Robin Hunicke,Marc LeBlanc和Robert Zubek的论文MDA:游戏设计和游戏研究的正式方法提出了一种将游戏设计分解为三个部分的方法:

  • 机械原理 ,这是定义游戏的规则
  • 动力学 ,是由于力学相互影响而产生的新兴属性
  • 美学 ,是动态因素对玩家的情感影响

要了解这些组件如何在非游戏开源项目及其社区中应用,请让我们更深入地研究每个组件。

力学:游戏规则

让我们为您以前玩过的游戏列出一些规则。 这不是新游戏; 实际上,它可能是世界上最古老的游戏,并且可能早于人类本身。 这款游戏有许多不同的名称,但通常是“追逐”一词的变体。

该游戏有两个规则:

  1. 一个玩家就是“它”,这是一种不受欢迎的状态
  2. 当“它”玩家触摸另一个玩家时,该玩家现在就是“它”

从表面上看,这是一个非常简单的游戏。 但是,如果我们检查这两个规则随着时间的推移会发生什么,我们就会开始注意到一些有趣的事情正在发生。

动态:预期的后果

游戏的第一条规则规定,“ it”玩家不想成为“ it”。 第二条规则规定该人如何摆脱这种痛苦:通过触摸另一个玩家。 暗含了一个未阐明的规则:为避免成为“ it”,玩家应确保“ it”玩家不要碰他们。

最简单的方法是远离“ it”播放器并移出他们的控制范围。 但是,发生这种情况时,这意味着“ it”玩家必须尝试移回范围内。 当这两个动作(超出范围并尝试移回范围)随着时间推移而发挥作用时,我们最终以“ it”玩家继续追逐其他玩家。

您会注意到,这两个规则从未提及过任何追逐行为。 无论如何都会发生,因为规则要求这样做。

美学:情感上的影响

现在,我们面临至少一名玩家被另一名玩家追逐的情况。 人类是动物,动物通常想要两件事:吃晚餐和避免成为晚餐。 追逐游戏会触发两种原始感觉:被追逐时,您会感到被追逐和追求; 当您追逐时,您会感觉像是天敌。

现在,我们看到一个简单的两个规则的游戏如何产生强烈的情感。 令人着迷的是,我们可以在构建游戏之外应用相同的原理。

游戏之外

在2009年,Twitter增加了对转发的支持,该功能允许用户将另一个用户的推文转发给其关注者,而无需复制和粘贴原始推文。 这还允许用户(以及Twitter本身)准确地计算一条推文的共享次数。 重要的是,每条推文上都可以公开看到一条推文收到的转发数。

结果,每条推文都立即有可能成为人气竞赛的一部分。 当某条内容显示为受欢迎时,例如其他人选择转发多少次,那么其他人决定共享它的可能性就会增加。

@horse_ebooks是“怪异的Twitter”运动中最受欢迎的帐户之一,在跟踪转发和显示受欢迎程度统计信息的一年之内就开始了,这绝非偶然 。 在该帐户于2013年被放弃之前,它经常发布胡说八道的词组,这些词组看起来像是发生故障的垃圾邮件机器人, 但实际上是人手写的 。 其成功的关键是转推提供的网络效应以及其受欢迎程度的公开展示。 @Horse_ebooks并不孤单; 其他帐户(包括@dril , @leyawn和@wolfpupy)通过转推也获得了类似的普及。

如果不更改转发规则,这些结果将是不可能的。 结果,流行性竞赛的人类动力开始了,导致了只能描述为基于文本的单口喜剧。 通过简单地更改规则,Twitter可以按照其希望的方向修改社区行为。

在哪里拿这个

游戏设计是对系统如何影响人的研究。 但是,重要的是要认识到游戏并不是唯一会影响人们的系统:如果有人类参与,他们会感觉到某些事情是软件选择的直接结果。

当涉及开源软件的制作方式时,这一点更为重要。 开源产品具有更大的能力,可以在开发和用户角色中接触人们。 因此,作为开源软件的开发人员,我们需要比平常更加注意我们的系统创建机制如何影响人们。 这既是警告,也是很大的机会:如果您牢记将系统的原理应用于人的过程中,您将能够制作对他们的生活产生极大影响的产品。

无论是图形界面的交互设计,计算机界面的一致API还是人机界面的行为准则,您对每种界面的理解都可能对人们是否要使用您的软件,在其上进行构建并参与其中产生巨大的影响。在您的社区中。 甚至规则的微小变化(例如Twitter添加了可转发性)都可能对人们对您的项目的看法产生巨大影响。 这意味着即使是最小的更改,也应该考虑它可能如何更改规则以及定义的方法将如何影响开源软件及其社区的动态和美观。

翻译自: https://opensource.com/article/17/5/how-game-design-can-help-you-build-better-software

软件构建设计图

软件构建设计图_游戏设计如何帮助您构建更好的软件相关推荐

  1. unity3d 剧情制作_游戏设计作品集干货:跨专业如何入门 Unity3D 游戏引擎?

    游戏设计作品集,涉及游戏策划与玩法.游戏美术与Unity3D游戏引擎等内容的学习. 之前克瑞斯介绍过了游戏策划与游戏美术,本期再详细聊下什么是Unity3D游戏引擎,以及学习Unity3D游戏引擎的详 ...

  2. 游戏脚本在移动游戏设计中的作用_游戏设计中道具设计分步解说

    首先 小编姐姐先跪谢我们原画老师 "您辛苦了" 这次给大家带来了 游戏设计中的 道具设计分步解说图 ▼▼▼ 先来看看动态过程图 ▼▼▼ 再看看详细过程图 一 草图构思,参考一些相关 ...

  3. vue列表长度限定_游戏设计中的中英文名称可输入/显示长度规范探究

    大家好,我是游戏交互设计师懒蚂蚁GM~ 我们刚接触一款新游戏时,一般都会创建一个让自己满意的游戏角色,然后将自己的情感和行为映射到这个角色身上,以这个角色的身份去和虚拟的游戏世界进行互动.那么,我们在 ...

  4. java圆形矩形直线文字设计图_如何设计圆形文字logo?怎么让文字按圆形走?圆形文字logo...

    美好的周末说过去一下子就过去了呢~今天又迎来了更加美好的周一哇,哈哈哈.好啦废话不多说,还是来看看今天的教程方案吧!圆形文字logo是什么意思呢?不知道大家有没有看到过那种圆形的标志,比如小编大学时候 ...

  5. 易语言单窗口单ip软件源码_游戏工作室如何防封?游戏账号和IP被封的解决方法...

    现在的游戏公司,不管大的还是小的,多多少少都掌握了一些防封技术.把我们游戏打金者折腾的死去活来.关于游戏防封这方面的交流又很少,无奈!本方法除了部分不封号游戏外,还有个别疯狂封号必须让你立马死的游戏之 ...

  6. c语言游戏总出bug,C语言 编写的简单移动游戏出现bug?_编程_游戏设计_C语言_天涯问答_天涯社区...

    C语言 编写的简单移动游戏出现bug? 第一次按上下左右没什么问题,之后就会卡住..不知道出了什么错 源码如下:(用vc++的win32 console程序编写) #include #include ...

  7. 工具类软件操作手册_北京数字化的金蝶云团队-北京金普蝶软件科技有限公司...

    北京数字化的金蝶云团队 [rtfhkdrie] 企业典型案例石油股份湖南省分公司.湖南建工集团.中天建设.中铁五新隧装股份.湖南红星实业集团.湖南嘉德集团.湖南伊宅购股份.湖南城市英雄动漫娱乐.湖南湘 ...

  8. python抖音表白软件手机版_教你用 Python 实现抖音热门表白软件

    之前在群里看到有人发了一个抖音上很火的小视频,就是一个不正经的软件,运行后问你是不是愿意做我的朋友,但你没法点击到「不同意」!并且没办法直接关闭窗口! 很不正经,很流氓,有点适合我. 效果大概是这样的 ...

  9. 除了迅雷还有什么软件更好用_为什么参与的用户社区需要更好的软件

    除了迅雷还有什么软件更好用 想象一下,发布基于开源软件的一项主要的新基础架构服务,只是发现您所部署的产品发展得如此之快,以至于您发布的版本的文档不再可用. 在彭博社,我们在部署OpenStack时遇到 ...

最新文章

  1. UIView上的控件使用push方法跳转
  2. 第一次使用Android Studio时你应该知道的一切配置(二):新建一个属于自己的工程并安装Genymotion模拟器...
  3. 28 数组中出现次数超过一半的数字
  4. 信息学奥赛一本通 1134:合法C标识符 | OpenJudge NOI 1.7 06
  5. recurdyn和matlab联合仿真,基于RecurDyn与Simulink的液压破碎锤联合仿真与试验分析
  6. 1.3 Shell脚本编程基础之条件测试
  7. docker下载地址及 设置自己的阿里云镜像加速器,Kubernetes(K8S) 安装
  8. BadBoy安装与使用
  9. Cross-speaker Style Transfer with Prosody Bottleneck in Neural Speech Synthesis
  10. 2022搜狐校园算法大赛推荐赛道Rank2方案分享
  11. 详解 Elasticsearch refresh 机制
  12. GAN生成对抗网络综述
  13. python爬取QQ空间好友说说并生成词云
  14. kdj值应用口诀_KDJ指标应用口诀
  15. 杭电2015‘11校赛 1007油菜花王国
  16. luogu2485 [SDOI2011]计算器 poj3243 Clever Y BSGS算法
  17. 在Power BI中用DAX新建列的方式进行累计求和
  18. 基于 Quartz 的调度中心
  19. 高通欲购买Arm股份且不排除全盘收购,苹果AR操作系统商标RealityOS曝光,报废汽车塑料能变石墨烯,今日更多大新闻在此...
  20. 云原生数据库TDSQL-C——云上应用研发方式的改变

热门文章

  1. java校验入参的有效性的工具类
  2. SpringBoot系列: 单元测试2
  3. python开发工具pycharm快速入门
  4. 猫猫学iOS 之微博项目实战(2)微博主框架-自己定义导航控制器NavigationController
  5. 使用Axis2方式发布webService实例说明
  6. Week 1:那些值得一阅的好文章
  7. 在工作或学习中要留出喝茶的时间
  8. IIS无组件的解决办法 xp系统组件无IIS iis解决办法 IIS
  9. 服务端解决跨域问题的方案(二)
  10. 服务器500g硬盘分区方案,win7500g硬盘分区方案