多元智能理论视角下教育游戏的设计与开发
2019-09-09张丽娜唐翠兰韩竺秦
张丽娜 唐翠兰 韩竺秦
摘 要:教育游戏是以教育为目的而开发的一种游戏,体现了寓教于乐的思想,符合素质教育的精神,有利于强调学生的主体性,培养学习兴趣。文章结合小学生数学计算学习的现状,以多元智能理论为指导,利用平面动画软件Animate CC和ActionScript3.0脚本语言,设计开发了一款益智类游戏。通过创设故事情境和设置关卡,玩家需要不断完成相应的任务,才能在神奇渔村欣赏风光和居住,捕鱼时要对不同鱼类身上的算术题做出快速合理的估算或口算。小学生在游戏体验中可以巩固和提高其综合运算、逻辑思维、空间想象、音乐感知等多方面的能力。
关键词:多元智能;教育游戏;小学生;计算;捕鱼
中图分类号:G434 文献标志码:B 文章编号:1673-8454(2019)14-0084-05
一、引言
教育游戏是将教学内容和电子游戏相融合,通过为学生构建体验性学习环境,利用电子游戏的内在动机,如挑战、幻想、控制、竞争和自尊等,使学生积极、主动、愉悦地学习。教育游戏以游戏的娱乐性、趣味性为主体,在游戏的过程中做到对知识能力、解决问题的过程与方法以及情感态度价值观的培养[1]。
多元智能理论是由美国哈佛大学教育研究院的心理发展学家霍华德·加德纳(Howard Gardner)在1983年提出。他指出每个人的智能不是单一而是多元化的,每个人拥有不同的智能趋势组合。在日常学习生活中,各种智能之间相互作用、彼此补充、协同合作运转[2]。
本游戏以多元智能理论为指导,结合数学加减乘除四则运算,利用平面动画软件Animate CC及ActionScript3.0脚本语言开发了一款益智类游戏“神算捕鱼师”。
二、基于多元智能理论的游戏“神算捕鱼师”的设计
1.游戏介绍
“神算捕鱼师”属于一款益智类游戏,主要针对喜欢逻辑思考、射击运动以及数学计算能力有待提升的小学生。对于游戏规则和控制操作要求较低,但玩家可以选择不同的难度,当获得了一定的分值就会开放其他关卡。
游戏可以实时记录玩家的攻击力,玩家在渔船上需要通过发射鱼叉捕抓河里游过的鱼。河里有不同的鱼类,其身上写着不同的算术表达式,算术答案就是鱼的防御力。当玩家的攻击力大于鱼的防御力时才能抓住鱼,否则鱼叉会断开,玩家也会被扣除一定的分数。因此,学生在进行游戏时,需要不断地进行快速运算来捕抓更多的鱼,以夺取更高的分数。
2.游戏需求分析
小学数学教学的重要内容之一是计算,占据了教材相当大的比重,主要包括笔算、口算和估算。学生数学计算能力的高低不仅对学习成绩有直接的影响,也对其他学科产生了一定的影响。
相关研究发现,学生缺少对数学计算的学习积极性,兴趣不浓厚;口算意识不强;对运算法则掌握得不好,估算的方式太过单一,欠灵活;不会认真审题;容易出现抄错数字、计算错誤等问题;较少去验算,没有好的计算习惯[3]。美国著名心理学家布鲁纳指出:“直觉思维、预感的训练,是正式的学术学科和日常生活中创造性思维的很受忽视而又重要的特征”。小学生正处于由具体形象思维向抽象逻辑思维的过渡时期,具有较强的直观性[4]。
教育游戏设计最主要的思想是寓教于乐,让学生能够快乐学习,更加感觉到学习的快乐。依据维果斯基的最近发展区理论和契克森米哈(Csikszentmihalyi)的沉浸理论[5],游戏内容的输入要接近并适当超越学生的实际认知水平,使小学生处于低度焦虑的状态,既能使其有成就感,又能使其有挑战难关的动力[6]。因此,设计游戏时需要结合学习者特征以及学习接受范围和能力,创设良好的、轻松愉悦的游戏情境和活动,在游戏和娱乐中实现教育目标,开发学生的多元智能[7]。
3.游戏目标定位
将教育目标融入游戏体验中,有利于开发小学生的多元智能。
言语智能:游戏“神算捕鱼师”以语音配文字的故事形式开始,导航等都有文字和语音提示,学生在游戏的过程中可以认识生字和知道正确读音,以提高其听读和理解能力。
逻辑数理智能:学生在游戏中需要对不同鱼类身上出现的算术题(1至3位数的四则运算)做出快速估算或口算,利于巩固数学运算法则和提高速算能力。游戏难度可选择,使学生在游戏的过程中,既能感受到成就感,又有挑战难关的动力。
空间和运动智能:学生在游戏中需要有良好的视觉空间感知能力,要能够预判目标,包括鱼类出现的位置、方向和速度等,并做出及时反应,移动或按下相应的键发射鱼叉。
音乐智能:依据奥尔夫“诉诸感性,回归人本”的音乐教育理念,儿童需要动脑、动手、动脚,全身心地感受和表现音乐。本游戏设计有丰富的音乐,包括舒适的背景音乐、捕鱼时欢快的音乐以及多样有趣的音效等。随着游戏进入不同场景或关卡,音乐和节奏会有变化,通过聆听、模仿和跟唱,有利于培养小学生的节奏感和韵律感,提升对音乐的感知和审美能力。
人际交往、自然观察等能力:要居住在美丽的渔村,就得和渔夫达成约定和睦共处。游戏一关结束后立即呈现结果,玩家进入下一关前需要根据任务难度、金币数量以及渔夫的提示,思考是否购买道具或选择哪种道具有助于任务的顺利完成。同时,不同渔区对应有不同鱼类,要求小学生在游戏时学会观察鱼的颜色、种类和特点,并作出快速反应。
内省的能力:通过游戏的引导,玩家不断挑战尝试赢得高分,获取相应的级别,从“平民”到“神算捕鱼师”共六个等级。即时结果反馈、等级划分和多元化的评价,可以帮助小学生了解自己的计算能力,认识到自身的不足,提高估算和口算能力,从而提升自我效能感,强化学习的内部动机。
4.游戏设计特征
Malone指出一款好的教育游戏或者能够激发人内在动机的活动一般具有以下三个特征:挑战(Challenge)、幻想(Fantasy)和好奇(Curiosity)[8]。
(1)挑战
为了使游戏更具挑战性,可以采用目标(Goal)、不确定结果(Uncertain Outcome)和自尊(Self-Esteem)三种方法。目标和不确定结果之所以能让游戏充满挑战性,其根本原因在于它们让玩家感受到了自尊:在游戏中获得成功,可以让玩家自信起来[9]。
本游戏设计中,设定了不同的难度等级A、B、C、D、E、F;有丰富的等级目标,包括“平民”“渔民”“熟手渔民”“巧手渔民”“高级捕鱼师”“神算捕鱼师”等;隐藏部分游戏信息,比如“隐身鱼”;随机性,比如鱼身上的算术、鱼出现的位置、方向以及商店的道具都是随机的。
(2)幻想
根据Malone的理论,对玩家更具吸引力和教育价值的游戏,不能只停留在“外在的幻想”而应构建“内在的幻想”,即幻想依赖于技能使用的结果,而技能使用的过程也依赖于幻想[9]。本游戏针对鱼类设计了一种“问号鱼”,身上的算式显示为问号,购买道具才可以看见。玩家根据目标,快速合理地估算或口算就可以捕捉到小鱼,同时获得相应的分数,而当判断错误时,游戏也会呈现提示信息和音效。玩家在游戏的过程中可以逐步验证自己的判断是否跟预期一致,然后再考虑下一步决策。
(3)好奇
根据Malone的理论,好的游戏设计不仅要考虑感知上的好奇(Sensory Curiosity),还要考虑认知上的好奇(Cognitive Curiosity)。本游戏中丰富多彩的声音和画面能给玩家带来感知上的好奇,而认知上的好奇主要体现在游戏的反馈设计中。一是反馈信息使用随机原则,基于玩家的表现和情境生成反馈,出现不同的激励性评价,使玩家感到惊奇;二是让反馈信息具有教育性,不仅告诉玩家他们的计算能力存在问题,而且还提供额外的信息,帮助玩家解决知识结构上的问题,如乘、除法的运算规则与估算和口算的技巧等。
三、游戏“神算捕鱼师”的开发
1.游戏流程
玩家进入游戏后首先选择难度,然后选择捕鱼的入口,接着进入商店购买道具,之后开始游戏,一轮游戏结束后进行判断,达到指标后继续回到选择入口的界面,选择进入下一关游戏。达不到指标则失败,可以重玩或者结束游戏。
2.游戏界面设计
游戏“神算捕鱼师”的主要界面有五个,分别是开始界面、选择入口的村落界面、购买道具的商店界面、进行游戏的捕鱼界面和结束界面。均由Animate CC软件的绘图工具绘制。
(1)开始界面
开始界面背景颜色为天蓝色渐变加深,底部有一些泡泡冒出,体现出大海的特色。整个界面以简洁为主、美观为宜,主要包括游戏名称和三个按钮,分别是“进入游戏”“游戏说明”和“关于游戏”按钮。“游戏说明”中主要介绍游戏的玩法和技巧,“关于游戏”则是本游戏的作者声明及联系方式。
(2)村落界面
村落界面以清晰的版图形式呈现,是开始捕鱼前选择捕鱼区域的入口,每个入口的鱼类各不相同,代表算术的难度也不同。界面上主要绘制一个村庄、老渔夫的房子和几个捕鱼区域,还有每个月的指標提示,即每次捕鱼完成后要达到的分数,如图1所示。
(3)商店界面
商店界面是游戏中用于购买商品的一个辅助界面,以网格的形式罗列商品,商品上面绘有形象的标志,选择商品时有商品作用的文字和语音提示。玩家需要用打渔赚来的钱购买商品,购买正确的商品能帮助其赚到更多的钱,但是商品的价格是随机的,其中背景颜色为红色的商品是随机出现的,且购买只会在当前关卡有效。界面底部有两个按钮,分别是“购买”和“下一关”,如图2所示。
(4)捕鱼界面
捕鱼界面背景是浅蓝到深蓝的渐变色,加上波浪增添动感、绘制水草、田螺冒泡泡等修饰界面以增添趣味性,鱼随机从左边出现。界面顶部有两个进度条,一个限制每次发射鱼叉的时间,另一个限制游戏的时间,右上角放置了攻击力和得分两个面板,以方便玩家获取游戏的信息,界面如图3所示。
(5)结束界面
游戏结束界面同样是渐变蓝色背景,界面上显示个人得分以及玩家等级,同时设置了重玩游戏的按钮。这样的分级机制能激起玩家不断挑战的兴趣。
3.游戏情节设计
游戏讲述的是玩家漂流到一个叫“神奇渔村”的荒岛,这个地方是属于老渔夫的,玩家可以欣赏优美的风光,但必须完成老渔夫所规定的指标,否则就会被赶出渔村。老渔夫提出的指标会越来越高,并且随着玩家的财产提高,渔夫对玩家的态度会不同,会给玩家开放不同的渔区,从而捕捉到更多的鱼。
4.游戏任务设计
玩家需要和老渔夫达成约定,完成相应任务。每次捕鱼回来的资产要大于每个月的指标,达到越高的指标,玩家等级会越高,就可以进入更多的渔区。玩家有“平民”“渔民”“熟手渔民”“巧手渔民”“高级捕鱼师”“神算捕鱼师”六个等级。渔区也有六个,里面的鱼类也不同,依次为A、B、C、D、E、F区,A区仅有“加法鱼”,B区有“加法鱼”和“减法鱼”,C区比B区多了“乘法鱼”,D区比C区多了“除法鱼”,E区比D区多了“隐身鱼”,F区比E区多了“问号鱼”。其中,“隐身鱼”完全透明,“问号鱼”则是身上的算式显示为问号,购买道具才可以看见。玩家必须达到规定等级以上才能进入相应的渔区。
5.游戏资源设计
游戲中主要有玩家和老渔夫两个角色,玩家角色表现在渔船中为卡通型的渔船。老渔夫是“神奇渔村”的主人,也是商店店主,形象憨厚。另外,还有鱼叉、各种鱼、记分牌、进度条等辅助元素。为了提升游戏的气氛,游戏中用到了大量的音乐和音效,如进入渔区配有欢快的音乐《小金鱼》、购买商品时取钱的声音、发射鱼叉的声音、成功捕鱼的声音、失败的声音等。
四、游戏“神算捕鱼师”的关键技术及其功能实现
游戏交互由动画软件的脚本语言ActionScript3.0实现,主要包括鱼群设计、计时器、碰撞检测和键控四部分。其中,鱼群设计用到Fish类,为了产生更多种类的鱼,以Fish类为基类派生出了Fish_A类、Fish_B类、Fish_C类等。派生出来的类是通过重写Fish类的参数以及内部函数产生的,因此不同的类会有不同的特性。计时器主要是用来限定每轮游戏的时间和每次发射鱼叉的间隔时间。它由Ctdown类实现,在Ctdown类里面套用Timer类。碰撞检测是由Collision类实现,即检测两个元素是否有接触[10]。键控用到Keyctrl类,主要用来控制发射键的移动、按下和释放。
下面将重点介绍碰撞检测和键控两个关键技术及功能实现。
1.碰撞检测设计
游戏的判断主要是靠检测鱼叉与鱼之间是否发生碰撞。如果碰撞发生了,将执行判断鱼的防御力与玩家的攻击力的比较代码。如果玩家的攻击力大于鱼的防御力,就会增加相应的分数,否则会扣去相应的分数。
通过影片剪辑的hitTest函数可以对两个元素进行碰撞检测,但是影片剪辑的hitTest碰撞检测仅针对元素默认的矩形边框,并不能检测不规则图形的边缘是否有接触。应用位图对象BitmapData的hitTest函数就能真正地检测出两个元素的边缘是否有接触。位图的hitTest函数运算量比较大,考虑到计算机的运算速度,设计中可以首先用影片剪辑的hitTest函数检测是否有碰撞出现,若有碰撞,则用位图的hitTest函数进一步检测图形的像素是否有接触。程序流程如图4所示。
Collision类的代码中主要包含3个检测碰撞的函数,分别是对象外框间的碰撞检测函数coll_rect、对象与点的碰撞检测函数coll_point、像素级的碰撞检测函数coll_pix。下面是3个函数的代码:
对象外框与对象外框的碰撞检测
static public function coll_rect(a:DisplayObject,b:DisplayObject):Boolean
{
return a.hitTestObject(b);
}
对象与点的碰撞检测
static public function coll_point(a:DisplayObject,objX:int,objY:int):Boolean
{
return a.hitTestPoint(objX,objY,true)
}
像素级的碰撞检测,显示对象的注册点在左上角
static public function coll_pix(a:DisplayObject,b:DisplayObject):Boolean
{
var bmpd1:BitmapData;
var bmpd2:BitmapData;
var bmp1:Bitmap;
var bmp2:Bitmap;
bmpd1=new BitmapData(a.width, a.height, true, 0);
bmpd1.draw(a, new Matrix());
bmp1 = new Bitmap(bmpd1);
bmp1.x = a.x;
bmp1.y = a.y;
bmpd2=new BitmapData(b.width, b.height, true, 0);
bmpd2.draw(b, new Matrix());
bmp2 = new Bitmap(bmpd2);
bmp2.x = b.x;
bmp2.y = b.y;
return bmpd2.hitTest(new Point(b.x,b.y),255,bmpd1,new Point(a.x,a.y),255);
}
2.键控设计
键控设计主要是控制渔船的移动以及鱼叉的发射。为防止玩家随机连续发射鱼叉,游戏中设置了发射鱼叉的缓冲时间,增加了发射鱼叉的计时器交互代码。当检测到攻击键被按下,Keyctrl类发送按键事件并且通过_stop函数关闭攻击键的侦听,按键事件的响应函数调用加载鱼叉函数addweapon,addweapon函数会开启Player类里面的计时器。当计时器开启后,会等待一定的时间,时间的长短跟速度值有关。时间到了,计时器会触发TimerEvent.COMPLETE事件,TimerEvent.COMPLETE事件的响应函数会发送信息给Keyctrl类,Keyctrl类接收到信息后,通过run函数重新开启攻击键的侦听,主要执行流程如图5所示。
五、评价与总结
本游戏界面设计美观协调、情境逼真、音乐和谐、控制要求较低,具有丰富道具和多级关卡,整体功能完备,调试运行正常。通过随机选取多名身边适龄的小学生来体验,发现对于个位数的运算是他们掌握得最好的,也是最愿意挑战的任务。两位数以上且包含乘法或除法运算时,小学生计算出现错误的机率明显上升。囿于家长的限制等,平时较少有机会玩游戏的小学生对此游戏兴趣较高。后期还可增加更加多样的角色和情景,以达到更好的游戏体验。
在当下网络游戏盛行的时代,如果不积极占领这一阵地,催生出更多、更优质的教育游戏,那么这一领域势必会被纯娱乐游戏产品长期占领,公众对于教育游戏的期待和信心也会消磨殆尽[11]。教育游戏的研究仍是一个发展中课题,如何让教育游戏更有趣、更具有吸引力,让学习者在游戏中产生高度的沉浸感,仍然需要深入探索与实践。
参考文献:
[1]刘芳,李银峰.以超级水果店(小学一年级九以内的乘法)为例探讨基于Flash的小学数学教育游戏的设计与实现[J].中小学电教,2009(Z2):112-114.
[2]陈思维,蔡达明.多元智能理论视角下IPTV益智游戏开发的策略研究[J].中国电化教育,2018(3):127-130.
[3]李丰男.小学生数学计算学习的现状、问题及对策研究——以甘肃省会宁县某小学为例[D].兰州:西北师范大学,2016.
[4]李吉.小学生数学能力的维度及培养[J].教育理论与实践,2019(2):59-61.
[5]刘佳琦.基于沉浸理论的英语记单词教育游戏的设计与开发[D].天津:天津师范大学,2013.
[6]贾妍,周振军,裴佳欢,等.基于多元智能理论的数字化教育游戏影响因素分析及设计策略探析——以小学英语单词学习为例[J].中小学电教,2015 (Z1):48-51.
[7]陈杰琦、[美]霍华德·加德纳、大维·亨利·费尔德曼编,何敏、李季湄译.多元智能理论与儿童的学习活动[M].北京:北京师范大学出版社,2015:1-10.
[8]Malone,T.W.What makes things fun to learn? heuristics for designing instructional computer games[A].SIGSMALL80 Proceedings of the 3rd ACM SIGSMALL symposium and the first SIGPC symposium on Small systems[C].New York:ACM,1980:162-169.
[9]裴蕾丝,尚俊杰.学习科学视野下的数学教育游戏设计、开发与应用研究——以小学一年级数学“20以内数的认识和加减法”为例[J].中国电化教育,2019(1):94-105.
[10]沈钧,李庆.Flash CS3 ActionScript3.0游戏开发基础与范例[M].北京:电子工业出版社,2008:236-270.
[11]赵永樂,蒋宇.教育游戏:让教学“如鱼得水”[N].中国教育报,2019-2-16(3).
(编辑:李晓萍)