学习游戏—Python迷宫游戏设计与开发

来源:优秀文章 发布时间:2023-04-17 点击:

夏 晔 朱奇奇 龙楚涵 纪执彪 杨尚莹 谷志新

(1.东北林业大学信息与计算机工程学院,哈尔滨 150040;
2.东北林业大学经济管理学院,哈尔滨 150040)

该文是以本团队自主开发的一款面对中小学生学习和了解Python代码使用的编程类游戏。学习游戏需要从尊重玩家的游戏体验和学习性出发,可以通过虚拟游戏情境和结构化的任务系统从而激发和维持玩家的学习动力。采用游戏机制、艺术美学和游戏思维等方面来吸引玩家,可以更好的增强学习兴趣,提高解决问题的实践能力。从而使玩家在游戏中有着愉悦的体验并在与游戏的交互中实现知识建构和技能习得,最后构建出自己关于学习内容的基本使用知识和认知,便于更快的上手某项技能[1]。

该文中的游戏为Python迷宫游戏,是以英文“Python”的中文“蟒蛇”为游戏角色设计的一款游戏。以类似于王子复仇记为背景,增加游戏的趣味性,大概背景如图1。玩家操控蟒蛇,在进入游戏迷宫之前,会出现Python编程语言相关的知识点,在接下来的关卡中,会出现与知识点相关的题目,游戏角色需要选择正确的出口,走出迷宫[2]。

图1 游戏背景

因为游戏主要目的是面向中小学生,所以不会太过复杂,主要的目的是培养中小学生的计算思维、计算实践和编程。通过编程语言的学习,培养学习者的计算思维,提高创造思维和解决问题的能力,最终目标是培养学生创新创造能力。

设计中以培养学生创新创造能力为主要目标和需求进行初步假设,通过对中小学生对编程的了解和能力培养以及国内外的编程游戏的调查进行了详细的分析研究,项目的开发人员也对实现目标和游戏系统的需求功能与性能有了较为深刻的理解与明确的认识,可以从中对系统进行相应的约束,最终目标是能够基本明确用户的需求[3]。

该游戏的客户端的开发采用幻境游戏引擎,经过深入需求分析,设计实现了包括地图系统,关卡系统等在内的多个渐进式游戏通用模块,大体上完成了对游戏功能逻辑的相关设计。

游戏引擎的概念对于大多数没有接触过游戏开发的人来说是非常模糊的,游戏引擎可以简单地称为“专为制作游戏而制作的代码库”。游戏引擎几乎包含所有制作游戏所需要的代码组件,相关引擎等,比如物理引擎、网络引擎、渲染引擎、动画组件、音效组件、场景管理、碰撞检测等。我们可以看出其实游戏引擎就是一个集合概念,它将设计者在游戏中可能用到的动画效果、算法、动作等封装成便于操作的模块,使游戏设计者可以不再编写繁重冗长的底层代码,只需要调用相关接口就可以实现游戏的需求和功能,使设计者可以更加专注于功能的实现与逻辑的设计。很大程度上提高了游戏制作的效率,由于使用游戏引擎进行开发的人员越来越多,各种不足和缺陷也在逐渐修补,所以游戏设计的质量可以得到保证。我们游戏的设计制作风格是从上到下,分别是:游戏应用、引擎应用和系统接口。游戏应用之所以处于最上层,是因为需要通过向下调用引擎提供的不同组件和相关API来实现游戏所需的功能,比如物理碰撞、声音效果等。而且可以引入自己制作的模块,并不局限于引擎提供的模块使用,也使游戏引擎具有更加广泛的应用性[4]。

该游戏的流程控制:玩家进入游戏主页,可以选择进入到设置页面和关卡选择页面。在关卡选择页面可以点击进入到相应知识点学习的游戏关卡,如图2。

图2 关卡选择图

在游戏房间页面可以进入相关学习知识点游戏的关卡。当在游戏对战页面点击暂停按钮或者点击设置键时,会弹出游戏菜单,玩家可以通过游戏菜单选择重新选择关卡,游戏音效开关等选项,如图3[5]。

图3 设置选择图

教学模式 :玩家进行游戏的关卡模式,大体分为四个步骤:

(1)知识点介绍。对玩家进行Python知识点的教学,如图4,5所示,玩家需要掌握相关知识点,因为接下来的关卡房间中通关问题与知识点相关。

图4 知识点教学

图5 知识点教学

(2)选择出口。玩家学习完毕知识点后,会进入相关迷宫房间进行游戏,在规定时间内,通过游戏角色的移动,选择迷宫中题目的正确答案。

(3)游戏角色死亡。玩家选择错误答案后,会死亡。死亡后,玩家会再次看到迷宫题目,并带有先前的知识点介绍和题目答案解析,如图6所示。

图6 错误提示图

(4)游戏角色复活。玩家死亡后,可以重新进入该关卡,但该知识点下的进度清零,需要重新通关[6]。

设计一款学习类游戏需要考虑以下几点因素。

4.1 学习者

首先,作为游戏使用者的主体,一切游戏设计都是为玩家即学习者服务的,所以我们必须要使玩家可以在游戏中获得成就感,这样才能最大限度留住玩家。因此,需要在游戏中设计制作出使玩家获得成就感的游戏环节。其次,要发挥出游戏影音效果和剧情设计的优势,提高玩家的游戏体验。学习类游戏还需要引入丰富的相关教学资源,设计恰当的任务环节,以此来激发玩家的学习动力[7]。

4.2 学习内容

学习游戏中的内容是需要围绕相关知识领域来设定的,例如该项目就是围绕Python编程语言的语法规则、使用方法等方面来设计的,游戏设计要同时符合游戏的规律和学习特点。该项目就包括了旨在计算思维,提供批判思维和解决问题能力的提高与锻炼。在设置游戏内容的过程中,游戏中的知识应该按照从易到难的层次进行划分,方便玩家选择相关知识点。在融入知识点的同时,我们也需要综合考虑游戏的互动性和娱乐性。只有这样,才可以真正在游戏中起到学习作用[8]。

学习类游戏可以通过游戏任务来进行积极性的提升。任务可分为最终任务、关卡任务、具体任务、分支任务。

(1)最终任务

最终任务是整个游戏的目标,游戏设计也是围绕最终目标来进行相关设计,最终任务贯穿游戏的始终。

(2)关卡任务

最终任务向下可以划分成一层层的关卡任务。玩家可以通过完成不同的关卡逐步进行解锁,在掌握相关知识点后才可以完成最终任务。关卡任务会由不同的场景构成,在以最终任务的实现为目标的指引下,玩家成功完成相关关卡任务,才可以顺利进入下一个游戏场景,继续推动游戏进行。

(3)具体任务

每个关卡中都设置有具体任务,它是完成关卡任务及最终任务的前提。

(4)分支任务

分支任务可以在游戏过程中穿插,因为他是选择性任务,由玩家自主选择是否完成,并不是强制性任务,给予玩家自主选择,所以分支任务可以贯穿各个关卡中。这些分支任务不仅可以使游戏内容更加丰富有趣,而且可以对分支任务进行设置,在完成分支任务后,还可以给予玩家额外游戏奖励,极大地提高了玩家的积极性[9]。

游戏任务是将教学内容融入到游戏中的主要方式,促进学习目标的完成。游戏者对任务的完成度可以视为对教学内容的掌握程度,当任务完成时,即可认为达到了教学目标。任务的难度要与学习者的能力发展动态平衡,采用自顶而下的任务系统设计模式的任务系统可以有效地解决教育学习类游戏的 “粘度”问题。教育游戏任务系统的任务树应该具有有穷性, 树的深度和广度要适度,游戏要保证在有限的时间内,游戏玩家可以随着关卡任务的逐步完成 解锁最终任务。完成最终任务意味着玩家已经基本掌握了游戏设计之初的预期目标,即掌握某一领域的相关基础和扩展的学科知识,从而可以结束教育游戏。这是为了保证了在最初设计任务系统时, 出发点是教育性, 而不是游戏性[10]。

该项目设计了一款适合中国学生学习编程能力的本土化Python学习游戏软件。随着对学习类游戏研究的深入,游戏的设计会更加细致,学习性和趣味性会不断增长,编程教育类游戏的设计会从面向总体设计逐渐细化,会对各种各样的编程语言方面,如C语言,编程语言的实现等方面进行设计相关方面游戏,该项目也为我国Python学习游戏软件本土化提供了参考依据。

猜你喜欢关卡迷宫引擎疯狂冒险岛童话王国·文学大师班(2020年5期)2020-06-01“涉蓝”新引擎">蓝谷:
“涉蓝”新引擎商周刊(2017年22期)2017-11-09大迷宫文理导航·科普童话(2016年7期)2017-02-04迷宫文理导航·科普童话(2016年4期)2016-05-31捕网迷宫儿童故事画报·智力大王(2015年12期)2016-01-232015年高考江苏省物理卷一道题的3种解法物理通报(2015年9期)2016-01-12无形的引擎河南电力(2015年5期)2015-06-08创造独一无二的迷宫儿童故事画报·智力大王(2015年2期)2015-05-20基于Cocos2d引擎的PuzzleGame开发皖西学院学报(2015年5期)2015-02-28时空穿梭英语大王·奇妙成语(2013年9期)2013-11-06推荐访问:游戏 迷宫 开发
上一篇:森林康养基地景观资源及保护规划研究
下一篇:龙江红色文化融合冰雪创意设计专项研究

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有