本发明专利技术涉及一种通过脚本开发电脑游戏的方法,属于推算技术领域。其涉及电脑游戏主程序,特点是:首先通过脚本编辑器调用脚本引擎;随后脚本引擎根据用户操作自动生成脚本,并对脚本进行解释和排错,构成语法树,然后通过脚本引擎的虚拟机功能进行语法树执行,展示脚本在电脑游戏中的执行情况;最后电脑游戏主程序通过脚本引擎解释执行脚本实现游戏逻辑。该方法能和游戏程序良好结合,在函数调用、数据访问等脚本和程序的交互上不再需要中间层,可以直接操作编辑器自动生成脚本,使得脚本开发变得非常简单且不容易产生错误,一般的策划人员就能编写脚本。
【技术实现步骤摘要】
本专利技术涉及一种电脑游戏的开发方法,尤其涉及一种通过脚本开发电 脑游戏的方法,属于推算
技术背景脚本是批处理文件的延伸,是一种以纯文本格式保存的程序, 一般来 说的计算机脚本是确定的一系列控制计算机进行运算操作动作的组合,在 其中也可以实现一定的逻辑功能,脚本需要通过主程序或系统程序解释执 行。并且脚本比较接近自然语言,可以不经编译而是解释执行,利于快速 开发或一些轻量的控制。正是因为脚本的简单灵活,所以在软件开发中已经被非常普遍地使用,并涌现了 Lua、 Python、 PHP等知名脚本语言。脚本近几年又被大规模地应用在游戏开发中,比如任务、AI、 GUI等游戏功能。目前游戏里使用脚本主要有Lua、 Python两种,如果想要在游戏程序里使用这些脚本,就必须实现脚本和程序之间互相通信的中间层,比如函数调用、对象访问等。同时还存在一个严重的问题,尽管这些脚本相对来说比较简单方便,但是还是需要程序员来编写,有一定的难度。并且这些脚本本身也是通用语言,功能比较庞杂,而大多数功能并不是游戏开发所需要,同时游戏需要的功能它们又缺乏。因此需要一种能和游戏程序良好结合,同时简单易用的方法来实现游戏的开发制作。
技术实现思路
4本专利技术的目的就是为了解决现有技术中存在的上述问题,提供一种通 过脚本开发电脑游戏的方法。本专利技术的目的通过以下技术方案来实现,涉及电脑游戏主程序,其中首先通 过脚本编辑器调用脚本弓l擎;随后脚本弓(擎根据用户操作自动生成脚本, 并对脚本进行解释和排错,构成语法树,然后通过脚本引擎的虚拟机功能 进行语法树执行,展示脚本在电脑游戏中的执行情况;最后电脑游戏主程 序通过脚本弓l擎解释执行脚本实现游戏逻辑。上述的,其中所述的对脚本进行解释 包括对脚本进行词法分析、语法分析和语义检查。进一步地,上述的,其中所述的词法 分析是从左到右读取脚本的字符流,并分离、识别出一个个记号,列出各 个记号的正则表达式,根据正则表达式构造不确定的有限自动机,将不确 定的有限自动机转换成确定的有限自动机。更进一步地,上述的,其中所述的语 法分析是把词法分析生成的记号,分组形成语法短语即语法树,语法分析 戶,循的原则是,辨语言的语法规则。更进一步地,上述的,其中所述的语 义检査是通过语法分析获得的语法树来确定脚本的意义,并检查脚本是否 有语义错误,为语法树执行做好准备。更进一步地,上述的,其中电脑游戏 主程序为脚本提供接口函数,包括对电脑游戏的对象属性读写、玩家和电 脑游戏的交互、技能和任务操作、道具和装备操作、数据类型转换、电脑 游戏逻辑功能的接口 ,并且需要把这些接口函数注册到脚本弓l擎中。器设有管理和编写脚本的可视化操作界面,该操作界面上集成了电脑游戏 主程序提供的功能接口和脚本支持的各种语法功能接口 ,对脚本语义逻辑 进行动态展示。再进一步地,上述的,其中所述的脚 本编辑器采用的是MVC模型,脚本编辑器分为词法分析单元、语法分析 单元、语法树单元,其视图界面包括主界面视图、函数视图和新建修改项 视图,各视图均对应于各自的控制单元。本专利技术技术方案的突出的实质性特点和显著的进步主要体现在能和 游戏程序良好结合,在函数调用、数据访问等脚本和程序的交互上不再需 要中间层,并把一些接口函数和脚本语句集成在脚本编辑器里,可以直接 操作编辑器自动生成脚本,使得脚本开发变得非常简单。同时,不容易产 生错误, 一般的策划人员就能编写脚本。综上所述,使用该脚本系统可以 简化游戏脚本开发,减少程序员的数量,大幅提高游戏开发效率。脚本实 现了函数调用、变量和常量、字符串处理、条件判断、算术逻辑运算等功 能,并且该脚本系统的语法和C语言完全一致。由此可见,本专利技术为本领 域的技术进步拓展了空间,实施效果好。附图说明本专利技术的目的、优点和特点,将通过下面优选实施例的非限制性说明 进行图示和解释。这些实施例仅是应用本专利技术技术方案的典型范例,凡采 取等同替换或者等效变换而形成的技术方案,均落在本专利技术要求保护的范 围之内。这些附图当中,图1是本专利技术的整体流程示意图2是脚本引擎执行流程示意图3脚本编辑器的工作截图。具体实施例方式如图l、图2所示,,涉及电脑游戏主程 序1 ,其为脚本2提供需要调用的电脑游戏数据访问和用于逻辑调用的功能接口,该方法的特别之处在于首先通过脚本编辑器3调用脚本引擎4;随后脚本弓|擎4根据用户操作自动生成脚本2,并对脚本2进行解释和排错, 构成语法树,然后通过脚本引擎4的虚拟机功能进行语法树执行,展示脚 本在电脑游戏中的执行情况;最后电脑游戏主程序1通过脚本引擎4解释 执行脚本实现游戏逻辑。同时,电脑游戏主禾骄1通过脚本引擎4,向脚本2提f對妾口函数,包 括对电脑游戏的对象属性读写、玩家和电脑游戏的交互、技能和任务操作、 道具和装备操作、数据类型转换等电脑游戏逻辑功能接口。进一步来看, 前述的脚本引擎4执行中的解释涉及对脚本2进行词法分析5、语法分析6、 语义检査7。参考图2所示首先字符流经过词法分析5构成一个记号流, 随后记号流通过语纟去分析6构成语法树,然后对语法树进行语义检査7,获 取正确的语法树,最后来执行该语法树即可。具体来说,词法分析5的主要方式就是从左到右地读脚本的字符流, 即读取脚本里所包括的字母、数字、运算符、分隔符以及一些专用字符, 并分离、识别出一个个记号CToken)。根据编译原理,词法分析5主要是列 出各个记号的正则表达式,根据正规式构造不确定的有限自动机,将不确 定的有限自动机转换确定的有限自动机等步骤,根据有限自动机就可以实 现词法分析5程序。比如,当编程人员输入int^l+2,则进行词法分析5的结果就是*类型关键字int*标示符a;7*赋值=; *数字1; *加号+ *数字2。语法分析6就是把词法分析5生成的记号(TokerO流分组形成语法短语 即语法树(Syntax tree),同时语法分析6所遵循的原则是程序语言的语法规 则。所述的语义检查7是使用语法分析6获得的语法树来确定源程序的意 义,并检査程序是否有语义错误,为语法树执行做好准备。具体来说,语 义检査7的一个工作就是进行类型检查,检査每个算符是否就有语言规范 的运算对象。比如"b + 4",在语义检查7时会检査"b"的类型,如果"b" 是整型,贝U"b + 4"依然有效,如果是"b"是实型,则会将整型"4"转换为"4.0"。为了在最大程度上便于用户编辑,脚本编辑器3设有管理和编写脚本2 的可视化操作界面,该操作界面上集成了电脑游戏主程序1提供的功能接 口和脚本2支持的各种语法功能接口 ,也就是说接口函数和常用的语句都 集成在编辑器的操作界面内,开发人员只需要操作界面就可以很方便的把 这些函数和语句添加到脚本里。通过脚本编辑器3能对脚本2语义逻辑进 行动态展示,给用户一个所见即所得的环境,即如图3所示。另外编辑器 通过调用脚本引擎4对脚本2进行解释和排错。脚本编辑器3能够模拟脚本执行过程,展示脚本在电脑游戏中的执行 情况,主要是模拟执行脚本中的交互菜单逻辑,编辑人员可以在编辑器里 执行菜单,从而检查和编辑菜单内容。具体来说,所述的脚本编辑器3采用的是MVC模型,设有界面视图、 函数视图和新建修改项视图,每个视图都对应各本文档来自技高网...
【技术保护点】
通过脚本开发电脑游戏的方法,涉及电脑游戏主程序,其特征在于:首先通过脚本编辑器调用脚本引擎;随后脚本引擎根据用户操作自动生成脚本,并对脚本进行解释和排错,构成语法树,然后通过脚本引擎的虚拟机功能进行语法树执行,展示脚本在电脑游戏中的执行情况;最后电脑游戏主程序通过脚本引擎解释执行脚本实现游戏逻辑。
【技术特征摘要】
【专利技术属性】
技术研发人员:陆利民,
申请(专利权)人:苏州市蜗牛电子有限公司,
类型:发明
国别省市:32[中国|江苏]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。