基于数据库的FLASH教学游戏设计.pdf
- 文档编号:3439459
- 上传时间:2023-05-05
- 格式:PDF
- 页数:3
- 大小:64.38KB
基于数据库的FLASH教学游戏设计.pdf
《基于数据库的FLASH教学游戏设计.pdf》由会员分享,可在线阅读,更多相关《基于数据库的FLASH教学游戏设计.pdf(3页珍藏版)》请在冰点文库上搜索。
中国教育信息化/2007.10(高教职教)中国教育信息化编辑部:
mismoe.edu.cn摘要:
传统的Flash教学游戏通常将教学内容设计到程序代码中,在游戏过程中教学内容保持不变,因此阻碍了学习者对新知识的学习。
本文详细阐述了一个Flash教学游戏设计实例,简要分析了Flash连接数据库的三种常用技术,并结合开发实例,详细介绍了采用XML与ASP脚本语言相结合的方式,实现Flash与数据库的连接,从而完成对教学游戏中教学内容实时更新。
关键词:
Flash教学游戏XMLASP中图分类号:
G434文献标识码:
B文章编号:
1673-8454(2007)10-0046-03现如今,电子游戏已经成为人们最重要的一种娱乐方式。
尽管电子游戏具有种种负面影响,但是,教育工作者们已经认识到电子游戏具有激发学习动机,促进智力发展,培养人们的竞争合作意识等优点。
如果对这些优点加以利用,将取得意想不到的教学效果。
因此,我们需要开发一些既具有游戏性质又具有学习性质的优秀的游戏化学习软件,正确地引导孩子,发挥电子游戏的积极作用。
基于以上原因,我们采用Flash技术设计了一款面向小学生的数学教学游戏“数字西游”。
该游戏以情境教学理论为基础,通过一个完整的故事情节,将小学生引入一个虚拟的学习环境中,学习者利用所学知识在游戏中不断探索,完成游戏任务,实现自主学习过程。
一、Flash技术的主要优点Flash动画在网页中应用广泛,是目前最流行的二维动画技术,用于进行教学游戏软件的设计也具有种种优点。
1.简单易用,开发迅速相对于传统动画制作,Flash动画的设计开发过程都非常简洁和迅速,只要具有普通的软件操作基础,即可在短时间内掌握Flash的基本操作,并能开发出简单的Flash动画。
因此,大多数一线教师可根据自己的教学情况,设计自己的多媒体课件或教学游戏。
2.生成文件体积小,便于网络传播现如今,网络已经走到千家万户,网络游戏更加吸引人们的兴趣。
利用Flash开发多人参与的网络游戏,生成文件的体积相比于其他网络游戏来说非常小,便于网络的传播。
而且,Flash游戏最大的特点是不用安装庞大的客户端,仅仅通过浏览器即可运行网络上的Flash游戏。
3.丰富的多媒体表现,利于人们接受FLASH通过集合文本、图形、图像、音效、音乐等多种媒体,加上强大的交互式控制(包括按钮的多种动态变换、任意播放控制与跳转设置等等),完全可以用来独立编制多媒体课件,尤其是适合于编制积木式的小课件(演示、自学均可)。
二、游戏整体结构设计本教学游戏是根据小学数学二年级的新教版教材配套开发。
游戏故事取材于2005年我国的禽流感爆发事件,由于禽流感的爆发,地球上大量飞禽和鸡鸭感染病毒死亡,甚至有传染给人类禽流感病毒的可能,严重威胁到了人类的生存。
在此危急时刻,唐僧和孙悟空等曾经西天取经的师徒四人,决定再度出山,并受佛祖委托,寻找能够配置杀死禽流感病毒的八样宝物。
每种宝物都对应了游戏中的一个关卡,而每个关卡又对应了数学课本中一个单元的教学内容。
学习者必须通过每个关卡并得到全部宝物,才能获得游戏的胜利。
在每个单元中,又分为教学目标、教学内容(帮助系统的一部分)、游戏部分、练习题四部分。
游戏结构如图1所示。
在教学目标部分,学习者可根据查看教学目标,了解该单元应该掌握哪些知识并达到怎样的学习目标。
在教学内容部分,采用多媒体课件的方式,生动有趣地讲解本单元的所有教学内容,学习者可以在此部分学习或复习巩固该单元的知识点。
该部分也完全采用动画方式,生动形象,利于吸引低年级小学生的学习兴趣,提高学习效果。
同时,如果学习者在游戏过程中遇到知识点山东理工大学计算机学院田爱奎侯强贾永新基于数据库的FLASH教学游戏设计!
图1游戏结构图建设软件开发46ChinaEducationInfo中国教育信息化发行部:
cylmoe.edu.cn的困惑,也可以随时返回到该部分,获取知识点的帮助。
在动画部分,围绕寻找宝物这一主线,为每个单元设计了不同的子故事和子任务,学习者随着故事情节的展开与深入,在完成任务的过程中可能遇到种种困难,这就需要学生运用该单元的数学知识一一克服这些困难,直到取得宝物,该单元结束。
在该部分中,对于关键的知识点,也有相应帮助。
在任务设计过程中,摆脱了传统教育游戏单纯的出题答题模式,贯穿了多个具有游戏性、趣味性和教学性于一体的小游戏。
例如在“拼图”子游戏中,学习者要拼合的图片是一只美丽的蝴蝶。
因为蝴蝶是一个对称图形,因此,如果掌握这个图形的对称性特点,就可以快速地完成游戏。
在“火眼金睛识妖怪”子游戏中,玩家要区分哪些是角哪些不是角,将头顶不是角的妖怪打死。
该子游戏既巩固了角的知识,又锻炼了学习者的快速思维和敏捷能力。
在练习题部分,从题库中随机抽取对应单元的题目,学习者通过答题巩固强化该单元所学知识。
最后,系统根据答题的正确率给出相应评价。
评价以正面的激励性评价为主,为学习者树立信心,激发学习者的学习积极性。
在玩家状态部分,显示玩家游戏进度状况和玩家获得学分以及总体排名情况。
通过该部分,玩家可随时掌握自己的游戏进度。
游戏中学分的获得是通过答题和进行子游戏完成的。
我们为每一道题目和每一个子游戏都设置了学分值,学分值根据试题和游戏的难易又有大小之分。
如果学习者答对题目或顺利通过游戏,那么将获得相应学分,从而更新数据库中学习者的学分数。
但是,如果学习者答错题目,或游戏失败,也会扣除相应学分,如果学习者的总学分扣为零,那么任务失败,游戏结束,学习者要重新登录游戏完成重生。
在游戏过程中设置了排行榜,列出游戏中学分值最高的前十名游戏者,从而激发学习者积极地完成任务,不断探索。
三、题库支持系统本教学游戏软件区别于大多数Flash多媒体课件或教学游戏的最重要的一点,就是实现了与数据库的交互,大大提高了游戏的扩展性。
本系统采用MicrosoftAccess2003作为后台数据库,并使用ASP技术开发题库后台支持系统,实现题库的管理。
试题按照科目、章节、类型、难度进行逐级、分类存放。
其中题库中主要试题内容信息表的关键字段设计见表1。
四、Flash连接数据库技术以前,由于Flash本身并不具有与数据库(如Access、SQLServer等)直接连接的功能,因此必须通过一个应用程序来担当Flash和数据库的中介。
主要有以下三种方法:
1.以ASP、JSP、PHP等常用脚本语言为桥梁该方法主要分三个模块:
Flash模块、脚本语言模块和数据库模块。
在Flash模块中,通过使用loadVariables(或loadVars)对象,可以方便地从服务器端的ASP或者PHP页面载入变量。
另外,它还可以使用POST方法将客户端提交的数据传递给服务器。
服务器端的脚本语言取得从Flash模块传送过来的参数,利用这些参数进行相应处理并进行数据库操作,操作完成获得客户端所需要的数据后,按照一定格式输出数据,作为客户端的Flash模块接收返回的结果。
2.使用XML与脚本语言相结合该方法与第一种方法的通信原理基本相同,只不过在Flash模块与脚本语言模块之间增加了XML作为它们相互通信的数据载体。
在Flash中,XML类的方法和属性可以加载、分析、发送、生成和操作XML文档树。
向服务器端发送数据时,先将数据转换为XML树,然后通过HTTP的通讯方式将XML文件发送到服务器端。
服务器端接收到该XML树后,进行解释并提取数据,完成数据库读写等相应操作后,将生成的数据创建为XML树,通过HTTP的通讯方式将XML文件发送到Flash客户端,Flash端接收到该XML文件,解释后获取相应数据。
3.使用XMLSocket对象Flash从5.0版本开始支持Socket通讯技术,在Flash中使用XMLSocket对象实现客户端套接字,完成与服务器的通讯。
该方式最大的优点是减少了延迟,并提供了安全性。
但是,由于设置与XMLSocket对象通讯的服务器需要解决很多问题,因此也就增加了服务器的成本。
综合以上三种方式,本系统采取了使用XML与脚本语言相结合的方式实现与数据库的连接与交互。
下面将以教学游戏中的练习题部分,从题库中随机抽取对应单元的题目为例,详细讲解Flash与数据库通信的过程。
本系统所使用的服务器端脚本语言是ASP,数据库采用MicrosoftAccess2003。
表1试题内容信息表字段名称数据类型说明ID自动编号编号ChapterID数字章节号SectionID数字小节号Partten文本题型Image文本题目图片Question文本题干SelAD文本选项内容Answer文本正确答案Credit数字对应学分建设软件开发47中国教育信息化/2007.10(高教职教)中国教育信息化编辑部:
mismoe.edu.cn首先在Flash端,每个单元的练习题部分都要随机从数据库中抽取试题,因此,就要把章节号等数据发送到服务器端,以便脚本语言通过SQL查询数据库中符合条件的试题。
将章节号数据存储为XML并发送到服务器端的代码如下:
getSubjectXML=newXML();getSubjectElement=newXMLNode();getSubjectElement=getSubjectXML.createElement(getSubject);getSubjectElement.attributes.unit=1;getSubjectElement.attributes.section=1;getSubjectXML.appendChild(getSubjectElement);/将生成的XML树发送到服务器端getSubjectXML.sendAndLoad(http:
/localhost/test.asp,getSubjectReplyXML);接下来,服务器端需要接收该XML树。
通过实例化一个叫做MSXML2.DOMDocument的XML解析器工作对象,并使用DOMDocument对象的loadXML方法装载XML文档,然后,通过解析该XML文档获取Flash端提交的单元号等数据。
主要代码如下:
创建一个新的DomDocument对象,客户端传送过来的XML请求VarxmlGetSubject=newActiveXObject(Msxml2.DomDocument)从发送来的表单中取得数据xmlGetSubject.loadXML(Request.Form()创建XML元素varreElement=xmlLogin.documentElement提取章节号和小节号password=reElement.attributes0.nodeValueusername=reElement.attributes1.nodeValue接下来的任务就是从数据库中随机抽取对应章节号和小节号的一定数量的题目,算法如下:
首先定义两个数组aa、bb,将符合条件的所有试题的ID号全部取出,并放入数组aa中,然后使用随机数函数产生从1到数组aa大小的随机数,判断产生的该随机数是否在数组bb中已经存在,如果不存在则存入数组bb中,否则,说明产生的该随机数已经存在,这就需要重新生成该随机数。
重复循环,直到满足指定数目。
此时,数组bb中就存放了随机抽取的指向数组aa下标的数据,通过aa(bb(i)就可以获得随机抽取的试题的ID号。
随机抽取出试题后,就需要将所有的试题信息按照XML的格式发送到Flash客户端。
生成XML格式数据的代码如下:
fori=1torstObj.recordcountrecord=record&i&rstObj.MoveNextnextstrtemp=&vbcrlfresponse.writestrtemp&record&Flash端获取并解释XML树,然后显示在相应动态文本框中,主要代码如下:
/建立XML对象getSubjectReplyXML=newXML();getSubjectReplyXML.ignoreWhite=true;getSubjectReplyXML.onLoad=function(success)if(success)xmlroot=getSubjectReplyXML.firstChild;play();/在问题和选项动态文本框中显示试题内容txtQuestion.text=xmlroot.childNodesi.attributes.QuestiontxtSelA.text=xmlroot.childNodesi.attributes.SelA五、结束语本文以教学游戏“数字西游”为例,阐述了教学游戏的主要功能模块,并详细论述了采用Flash进行教学游戏设计中连接数据库技术,实现了教学内容的实时更新,希望能对该问题的研究起到抛砖引玉的作用。
!
参考文献:
1程君青,孙祯祥.多媒体课件内容实时更新的技术实现J.教育信息化,2005(9):
46-472周国栋.Flash与数据库的连接技术J.现代信息技术研究,2005(9):
48-503陈伟.FlashProfessional8动画设计宝典交互式游戏设计篇M.北京:
中国水利水电出版社,20064ShamBhangal,IgorChoromanski.Flash游戏设计宝典M.北京:
清华大学出版社.20025张璇,龚正伟.Flash实用编程指南M.北京:
清华大学出版社.2004建设软件开发48
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 数据库 FLASH 教学 游戏 设计