|
探索游戏的社会价值一直是游戏行业的热门议题,除却娱乐功能,如今市场开始将更多的目光聚焦在游戏的实际应用价值,功能性游戏的概念开始被越来越多的厂商、开发者所关注。游戏源于编程,那么反过来,在游玩中学习编程的功能性游戏是否行得通呢?
编程游戏历史比C语言还早?
功能性游戏所起到的作用应当是引导、挖掘玩家对相关知识的理解,功性能游戏的受众除了高校专业学生,更多的是高校以下的小学中学学生以及相关知识的爱好者。那么结合编程的功能性游戏所需要做到的,自然就是引导玩家理解编程语言的基本构成、编程逻辑与思维等。
实际上早在1966年,也就是C语言出现的6年前,“Logo”就已经诞生。这里所说的“Logo”指的不是商标,而是由西摩尔·派普特心理学博士研究并创造的一种计算机语言。
与其他语言不同的是,“Logo”的设计初衷是为了向儿童教授计算机编程技能,它内置的海龟绘图(Turtle Graphics)系统可以让用户通过向海龟发送指令,指挥海龟的移动方向,进而可以直观学习程序的运行过程。
在上世纪90年代,邓小平同志号召“计算机普及要从娃娃抓起”时期的计算机教材,还有介绍海龟绘图的专门章节。在当时,多数人还未对编程形成概念,“一只电子海龟,能接受用户发出的信息指令并进行移动反馈”,其实就扮演了一个绘图编程游戏的角色。
花样百出的编程游戏
01
《CodeCombat(极客战记)》已经发布了很长一段时间,作为一个开源项目,它也是目前最受欢迎的编程游戏之一。现阶段游戏包含有计算机科学、网络开发、游戏开发三大类别,在游戏中玩家可以选择像RPG游戏里一样的职业,通过学习编写代码来解决游戏中的谜题。得益于开源,《CodeCombat》还可被定制应用于多种特定的教育场景。
游戏创始人Georg在开始学编程时,也曾使用了知名的Codecademy(一个编程学习网站),但他还是觉得过于乏味随之放弃。因此George得出一个结论:人们想要有趣且高效的学习,但得到的却是枯燥且迟缓的课程。这也是他制作这款游戏的初衷。
02
如果对于编程语言已经有了一定的了解,那么《Human Resource Machine(程序员升职记)》便是你的“第二堂课”,这款作品的功能更加偏向于对编程思想的引导。
游戏背景为程序员利用小程序自动完成一份份工作来得到不断升职,设计基础来源于计算机组成原理和汇编语言。从输入输出,到高级语法的“引用”,游戏算法覆盖了大部分基础编程内容,同时游戏中还包含着类似汇编的有一定难度的代码,着重于锻炼玩家的编程思维。
不仅如此,游戏还引入了“优化”的挑战概念,让玩家追求最小化代码行数与最佳的代码执行效率。这款游戏较为深度的设计使其对高校专业学生也有一定的教育意义。
03
如果你是一个热血的中二少年,那么显然,靠编程升职加薪是远远不够范儿的,我们想要更加炫酷的编程游戏!
《异常》就是这么一款关于炫酷的编程游戏,玩家要在游戏中为虚拟世界的机器人编写AI程序,通过程序打败敌人。《异常》的游戏制作人本身曾为其他游戏设计过怪物的AI,他表示:“如今AI的编辑已经简化,那么为什么不再简化一下,让玩家来体会一下呢?”
AI编程对于编程游戏来说的确属于一个新颖品类,而游戏易于上手的图形模块化编程界面则能让从未接触编程的玩家也能快速理解程序化思维。除此之外,游戏还上线了关卡编辑供让玩家制作并分享关卡,这与《CodeCombat》的开源有着异曲同工之妙。
游戏能教会我编程吗?
对于编程学习的初学者来说,虽然通过自学在取得几个简单的输出结果后能获得一些成就感,但到了哪怕最初级的算法环节,呈指数级增长的难度系数便可能让许多初学者默默关上电脑并对编程敬而远之,更不要说计算机组成原理、算法导论等所谓的计算机“专业神课”,这些课程对于专业学习的学生来说都具有一定难度。
如何在专业课程之外让玩家也可以更容易的理解专业思想也是编程游戏的设计方向之一,为了吸引玩家,最近甚至有公司推出了《程序员全灭的世界》这样具有二次元属性的游戏。
根据《CodeCombat》数据统计显示,有40%以上的玩家年龄都小于14岁,可见编程游戏在青少年兴趣培养上占据着重要的一环。编程不仅是一项技能,其背后的逻辑思维在各行各业均有着重要作用,因此,针对青少年的编程游戏不仅有着重要的教育意义,其设计甚至并不需要直接教导语言,而是利用更易于理解的图形化界面来训练它们的程序化逻辑思维能力。
但说到底,编程游戏毕竟还是属于游戏,而游戏则是对于现实世界规则的高度提炼,就像我们在读书时绝不可能仅仅通过阅读他人的“读后感”来实现对书本的全方位理解。
因此,初学者或许可以通过《CodeCombat》学习到编程语言的基础知识和用法,通过《机器人升职记》学到一定的编程算法思维,但对于编程的理解仍然不够,即使有一份“从入门到精通”的游戏攻略,它也不能让玩家完全掌握程序开发的真正流程。
如果想要自己开发游戏,我们仍然需要大量的、枯燥的专业知识的学习与积累,但至少编程游戏的出现,激发了一批玩家对编程的热情,亦或者给致力于进入游戏开发行业的却苦于不知如何下手的人一些引导,这或许就是编程游戏存在的意义与价值。
来源:极光游戏
原地址:https://mp.weixin.qq.com/s/_juEZ0HZ5MZzkMxbPKf48Q
|
|