CN106775725B - 一种可视化的配置编辑方法及装置 - Google Patents

一种可视化的配置编辑方法及装置 Download PDF

Info

Publication number
CN106775725B
CN106775725B CN201611178710.9A CN201611178710A CN106775725B CN 106775725 B CN106775725 B CN 106775725B CN 201611178710 A CN201611178710 A CN 201611178710A CN 106775725 B CN106775725 B CN 106775725B
Authority
CN
China
Prior art keywords
game configuration
input
json
visual
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201611178710.9A
Other languages
English (en)
Other versions
CN106775725A (zh
Inventor
林镇群
钟远坤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN201611178710.9A priority Critical patent/CN106775725B/zh
Publication of CN106775725A publication Critical patent/CN106775725A/zh
Application granted granted Critical
Publication of CN106775725B publication Critical patent/CN106775725B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种可视化的配置编辑方法,包括如下步骤:读取基于Json Schema描述的原始配置文件,生成具有预定格式规范的可视化编辑界面;监听在所述可视化编辑界面的输入栏中输入的参数;根据所述格式规范对输入到所述输入栏内的参数进行检查;当输入的所述参数符合与其对应的输入栏定义的格式规范时,根据输入的参数生成Json配置文件。本发明还提供了一种可视化的配置编辑装置,本发明可自动检查用户输入的参数的正确性,避免用户耗费大量精力用于人工检查输入的数据的合理性,从而节省了时间,提高了工作效率。

Description

一种可视化的配置编辑方法及装置
技术领域
本发明涉及游戏配置编辑领域,尤其涉及一种可视化的配置编辑方法及装置。
背景技术
为了满足玩家的娱乐需求,在游戏中会实现大量的玩法模块,而这些模块又各有自己的功能。通常,游戏设计人员在设计某一项功能的时候,并不会把功能描述成固定的形式,而会把功能中可变的参数写到配置文件中。程序人员在实现功能的时候,设计人员可以不断的调整这些参数,让功能达到自己期望的程度。
有些功能要求更复杂的配置格式,比如技能***或是AI***,它们需要大量的参数和语句来描述一个技能是怎么执行的。这通常是设计成一种约定好格式的配置文件,比如用Json设计好技能的配置格式,程序人员再依据这些格式去实现。但设计人员怎么编辑这些配置成为了一个重要的问题。
在现有技术中,通常有下面几种方法去编辑比较复杂的配置:1、使用Excel来编辑配置,用表格的形式描述功能;2、让程序人员专门为每种配置编写可视化的编辑器,比如针对技能配置,设计人员给出一份规格说明书,程序使用一种通用的编程语言,比如C++,Python之类的,实现出设计要求的可视化界面,然后设计人员使用这个界面去编辑技能。3、直接编辑文本格式。例如使用一种支持Json的文本编辑器,设计人员直接在上面编辑。
发明内容
上述的方法1对于简单的配置是个不错的选择,但有些功能配置,例如技能配置是非常复杂的,用表格很难直观的描述期望的行为,且通过表格进行描述往往会显得很复杂。而方法2的缺点在于,由于游戏有许多像技能这样复杂的配置格式,如果需要对每个功能专门编写编辑器,需要耗费大量的人力资源在编辑器的制作上的。另一方面,如果设计人员对配置格式进行修改,则程序人员必须同步的修改编辑器以达到最新的需求,这大大增加了程序人员的个工作负担。对于方法3,如果对配置格式了然于胸,编辑起来确实是最直接最快速的,但是文本编辑器只会依据Json的规范检查语法错误,而不会告诉你哪个参数写错了,哪些值超出范围了,设计人员需要花费很多精力用于检查输入的参数是否正确,从而造成了时间的浪费,并影响了设计人员对真正逻辑的思考,降低了工作效率。
针对上述问题,本发明的目的在于提供一种可视化的配置编辑方法及装置,可实现方便快捷的配置编辑,满足设计人员的需求。
本发明提供了一种可视化的配置编辑方法,包括:
读取基于Json Schema描述的原始配置文件,生成具有预定格式规范的可视化编辑界面;
监听在所述可视化编辑界面的输入栏中输入的参数;
根据所述格式规范对输入到所述输入栏内的参数进行检查;
当输入的所述参数符合与其对应的输入栏定义的格式规范时,根据输入的参数生成Json配置文件。
上述技术方案中,通过读取基于Json Schema描述的原始配置文件,生成具有预定格式规范的可视化编辑界面,并基于所述格式规范对设计人员输入的参数进行自动检查,从而保证设计人员输入的参数是符合格式规范要求,设计人员仅需简单进行数据填写,而无需花费太多精力用于人工检查填写的数据的格式、类型或者数值范围是否出现错误,节省了检查的时间,提升了工作的效率。此外,可视化的编辑界面还进一步提升了设计人员的使用体验和友好度。
优选地,在所述当输入的所述参数符合与其对应的输入栏定义的格式规范时,根据输入的参数生成Json配置文件之后,还包括:
将所述Json配置文件转换成与应用开发语言对应的脚本文件。
上述技术方案中,为了提高游戏加载速度,还将Json配置文件转换成与应用开发语言对应的脚本文件。例如,用python脚本开发的游戏需要把Json配置文件转换成python脚本,从而提高游戏加载速度。
优选地,在所述将所述Json配置文件转换成与应用开发语言对应的脚本文件之后,还包括:
在所述可视化编辑界面上显示所述脚本文件中的代码。
本优选方案还同时集成了即时的脚本文件的代码显示,设计人员在进行编辑时,可视化编辑界面会对设计人员的编辑内容进行实时显示,对于熟悉脚本的设计人员,实时看见编辑结果可以有效提高工作效率。
优选地,所述将所述Json配置文件转换成与应用开发语言对应的脚本文件具体为:
将所述Json配置文件按照转换规则转换成与应用开发语言对应的初始脚本文件;
查找所述初始脚本文件中的自定义关键字及与所述自定义关键字对应的数据结构;
从预先配置的自定义解析器中获取与查找到的所述自定义关键字对应的变换方法,根据所述变换方法对与所述自定义关键字对应的数据结构进行变换并删除所述自定义关键字,生成脚本文件;其中,所述变换方法包括变换所述数据结构的类型。
优选地,还包括:
获取所述原始配置文件中的不可变数组;
当所述不可变数组内的元素的个数小于预设的阈值时,通过CSS样式表控制将所述不可变数组内的各个元素显示在所述可视化编辑界面的同一显示栏。
本发明还提供了一种可视化的配置编辑装置,包括:
可视化界面生成单元,用于读取基于Json Schema描述的原始配置文件,生成具有预定格式规范的可视化编辑界面;
参数监听单元,用于监听在所述可视化编辑界面的输入栏中输入的参数;
检查单元,用于根据所述格式规范对输入到所述输入栏内的参数进行检查;
配置文件生成单元,用于当输入的所述参数符合与其对应的输入栏定义的格式规范时,根据输入的参数生成Json配置文件。
优选地,还包括:
文件转换单元,用于将所述Json配置文件转换成与应用开发语言对应的脚本文件。
优选地,还包括:
代码显示单元,用于在所述可视化编辑界面上显示所述脚本文件中的代码。
优选地,所述文件转换单元具体包括:
初始转换模块,用于将所述Json配置文件按照转换规则转换成与应用开发语言对应的初始脚本文件;
关键字查找模块,用于查找所述初始脚本文件中的自定义关键字及与所述自定义关键字对应的数据结构;
变换模块,用于从预先配置的自定义解析器中获取与查找到的所述自定义关键字对应的变换方法,根据所述变换方法对与所述自定义关键字对应的数据结构进行变换并删除所述自定义关键字,生成脚本文件;其中,所述变换方法包括变换所述数据结构的类型。
优选地,还包括:
不可变数组获取单元,用于获取所述原始配置文件中的不可变数组;
显示控制单元,用于当所述不可变数组内的元素的个数小于预设的阈值时,通过CSS样式表控制将所述不可变数组内的各个元素显示在所述可视化编辑界面的同一显示栏。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种可视化的配置编辑方法的流程示意图。
图2是本发明实施例提供的一种原始配置文件的示意图。
图3是本发明实施例提供的一种可视化编辑界面的示意图。
图4是本发明实施例提供的一种原始配置文件中的不可变列表的表示示意图。
图5是本发明实施例提供的另一种原始配置文件中的不可变列表的表示示意图。
图6是本发明实施例提供的原始配置文件中的元组的定义示意图。
图7是本发明实施例提供的原始配置文件中的可变字典的定义示意图。
图8是图7转换为脚本文件后的示意图。
图9是本发明实施例提供的可视化的配置编辑装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例提供了一种可视化的配置编辑方法,其可由可视化的配置编辑装置(以下简称配置编辑装置)来执行,并包括如下步骤:
S101,读取基于Json Schema描述的原始配置文件,生成具有预定格式规范的可视化编辑界面。
在本发明实施例中,由于目前大多数的配置文件都是采用Json格式,因此这里的原始配置文件采用Json Schema这种描述语言来描述。其中,Json Schema也是一种Json格式,它用于描述Json文件的正确格式,并验证其正确性。
例如,如图2所示,图2中的基于Json Schema的原始配置文件描述了一个人的基本属性,包括名字、年龄和性别。对于各个属性,可以用Json Schema定义其数据类型、描述属性的信息以及设定属性的默认值等。例如设定名字的数据类型为字符型,最小长度为4;年龄的数据类型为整型,范围是18~99,性别的数据类型为字符型,并且只能选择male或者female两个选项。
请参阅图3,图3是所述配置编辑装置读取原始配置文件后生成的一种具有格式规范的可视化编辑界面的示意图。
S102,监听在所述可视化编辑界面的输入栏中输入的参数。
S103,根据所述格式规范对输入到所述输入栏内的参数进行检查。
S104,当输入的所述参数符合与其对应的输入栏定义的格式规范时,根据输入的参数生成Json配置文件。
如图3所示,设计人员可以在可视化编辑界面的输入栏中输入参数(可以是用户自行输入参数,也可以是可视化编辑界面提供选项供用户选择,具体由原始配置文件决定)。其中,在设计人员自行输入参数后,所述配置编辑装置会监听用户在所述可视化编辑界面的输入栏中输入的参数,并检查该输入的参数是否符合该输入栏的格式规范。例如,如果一个输入栏的格式规范(由原始配置文件的定义决定)是输入的参数的数据类型为字符型(string),而设计人员输入的参数的数据类型为整型(integer),则所述配置编辑装置在进行检查时就会发出错误提醒。再例如,一个输入栏的格式规范是输入的参数的数据类型为整型,而设计人员输入的参数的类型为浮点型(float),则所述配置编辑装置在进行检查时就会发出错误提醒。再例如,一个输入栏的格式规范是输入的参数的数据类型为整型,且其范围为18~50,而设计人员输入的参数为15,则所述配置编辑装置在进行检查时就会发出错误提醒。
综上所述,本发明实施例提供的可视化的配置编辑方法,通过读取基于JsonSchema描述的原始配置文件,生成具有预定格式规范的可视化编辑界面,并基于所述格式规范对设计人员输入的参数进行自动检查,从而保证设计人员输入的参数符合预先设置的格式规范要求,设计人员仅需进行参数填写,如果填写错误会自动生成错误提醒,因而无需花费太多精力用于人工检查填写的参数的格式、类型或者数值范围是否出现错误,节省了检查的时间,提升了工作的效率。此外,可视化的编辑界面还进一步提升了设计人员的使用体验和友好度。
为了便于对本发明的理解,下面将对本发明的一些优选实施例做更进一步的描述。
第一个优选实施例:
优选地,在步骤S104之后,好包括:
S105,将所述Json配置文件转换成与应用开发语言对应的脚本文件。
在本发明实施例中,当设计人员完成配置的编辑后,会得到相应的Json配置文件,表示该配置的内容。为了提高游戏加载速度,所述配置编辑装置还对Json配置文件进行格式转换,转换成与应用开发语言对应的脚本文件。例如,用python脚本开发的游戏需要把Json配置文件转换成python脚本,从而提高游戏加载速度。
在本发明实施例中,以python脚本为例,由于Json和Python的字典比较相像,通过现有技术可以很容易将Json配置文件转换成Python代码的脚本文件。而如果需要转换为其他语言的脚本,只需要根据其与Json的差别进行转换即可,本发明在此不做赘述。
第二个优选实施例:
优选地,在步骤S105之后,还包括:
S106,在所述可视化编辑界面上显示所述脚本文件中的代码。
如图3所示,本优选实施例还同时集成了即时的脚本文件的代码显示,设计人员在进行编辑时,所述配置编辑装置会将转换的脚本文件的代码实时显示在可视化编辑界面上,对于熟悉脚本的设计人员,实时看见脚本文件可以有效提高工作效率,并减小bug的出现。
第三个优选实施例:
优选地,还包括:
S107,获取所述原始配置文件中的不可变数组。
S108,当所述不可变数组内的元素的个数小于预设的阈值时,通过CSS样式表控制将所述不可变数组内的各个元素显示在所述可视化编辑界面的同一显示栏。
目前Json Schema支持的数据类型有string,numberic,object,array,boolean,null。但是在游戏开发中,一方面,复杂的配置往往需要复杂的数据结构进行表示;另一方面为,为了优化效率,有时需要用列表或者元组替代字典(object),因此有时原始配置文件中还包含了对目前的Json Schema进行扩展的数据结构。则在读取时,所述配置编辑装置还需要考虑对拓展的数据结构的处理,其中,增加的数据结构可包括不可变列表,元组和可变字典等。
以不可变列表为例,不可变列表用于描述简单的属性集合。例如技能节点的执行参数由动作名和动作类型ID组成:'args':['attack_0',111]。Json Schema中的array可以表示列表,但是array是可变的,并且array默认其中的每个元素的类型都是一样的,难以满足需求。在此提供两种不可变列表的表示方法。
第一种方法如图4所示,array作为基本类型,但是其items是数组而不是对象,items中包含的每个object则是对应不可变列表中的每个元素,minItems规定该列表的元素个数,最后在options中设定该数组不可增加元素,这样就可以得到一个不可变列表,并且其中每个元素的类型可以根据需求设定。
第二种方法如图5所示,以object作为基本类型,然后对于每个不可变列表中的元素,用一个object的属性(properties)表示。属性的键(key)为$i$(1<=i<=n,n为列表元素的个数),属性的值(value)是元素的具体描述,如类型说明等。因为是不可变列表,因此通过设定Json Schema的disable_properties阻止属性的增加。如果需要控制每个列表的元素是否是必须的,可以通过Json Schema的required属性进行设定。
在本发明实施例中,所述配置编辑装置可对其可视化编辑界面的显示样式进行控制,使其更紧凑,提高界面的利用效率,从而更适合用户的编辑习惯,提高编辑效率。
具体地,例如,一般情况下,数组是一行一行分开显示的,而对应本发明实施例中,由于大多数组设置为不可变数组,其内的元素数量很少且不需要在扩展增加,所以可通过CSS样式表控制这些元素在一行显示栏中显示即可,这可以使得所述可视化编辑界面的外观更加紧凑一致,避免了在一些情况下需要对可视化编辑界面的大小进行调整才能看到全部的内容。
第四个优选实施例:
优选地,步骤S105具体包括:
S1051,将所述Json配置文件按照转换规则转换成与应用开发语言对应的初始脚本文件。
S1052,查找所述初始脚本文件中的自定义关键字及与所述自定义关键字对应的数据结构。
S1053,从预先配置的自定义解析器中获取与查找到的所述自定义关键字对应的变换方法,根据所述变换方法对与所述自定义关键字对应的数据结构进行变换并删除所述自定义关键字,生成脚本文件;其中,所述变换方法包括变换所述数据结构的类型。
例如,如果需要在最终生成的python脚本文件中生成元组这种数据类型(元组与不可变列表相似,区别是元组用圆括号表示,而不可变列表则用方括号表示),但是元组是python的特有数据类型,Json Schema本身并不支持。为了兼容python脚本,可以在原始配置文件中用不可变列表来表示元组,如图6所示,通过设定了一个自定义关键字$tuple$来对不可变列表和元组进行区分。
在进行转换时,首先,将所述Json配置文件按照转换规则转换成与应用开发语言对应的初始脚本文件。这个初始脚本文件中会包括自定义关键字,然后,查找所述初始脚本文件中的自定义关键字及与所述自定义关键字对应的数据结构。最后,从预先配置的自定义解析器中获取与查找到的所述自定义关键字对应的变换方法,根据所述变换方法对与所述自定义关键字对应的数据结构进行变换并删除所述自定义关键字,生成脚本文件。
以图6为例,在转换成初始脚本文件后,仍然包含有$tuple$这个自定义关键字,其在自定义解析器中的变换方法是将与其对应的不可变列表转换成元组。这样,当在初始脚本文件中查找到自定义关键字$tuple$后,就查找与$tuple$对应的不可变列表,然后在最终显示的脚本文件中将这个不可变列表变换为元组,并删除$tuple$这个自定义关键字。
再例如,可变字典是配置中常用的数据结构。图7所示为当关键帧到达时触发对应的一系列技能节点,用户增加数据时需要同时编辑关键帧名字(key)和触发的技能列表(value)。在Json Schema中,object用于表示字典,但是当需要往object中增加属性(key)时,难以对key进行规范说明,容易导致用户输入不符合规范的数据,因此,可设计了一个新的可变字典表示方式,使用Json Schema中的array描述可变字典,对于字典中的每个元素,增加了$key$和$value$两个自定义关键字来进行描述。此时,转换后的初始脚本文件如图8所示,包含了$key$和$value$两个自定义关键字,在将初始脚本文件转换为最终的脚本文件后,则如图8所示,将字典变为可变字典,并删除这两个自定义关键字。
综上所述,本优选实施例实现了对原始配置文件的扩展的数据结构的支持和变换,并可将扩展的数据结构转换为符合脚本文件格式的数据结构,使得配置的编辑方式更灵活,适用范围更广。
请一并参阅图9,本发明还提供了一种可视化的配置编辑装置100,包括:
可视化界面生成单元10,用于读取基于Json Schema描述的原始配置文件,生成具有预定格式规范的可视化编辑界面。
参数监听单元20,用于监听在所述可视化编辑界面的输入栏中输入的参数。
检查单元30,用于根据所述格式规范对输入到所述输入栏内的参数进行检查。
配置文件生成单元40,用于当输入的所述参数符合与其对应的输入栏定义的格式规范时,根据输入的参数生成Json配置文件。
本发明实施例提供的可视化的配置编辑装置100,通过读取基于Json Schema描述的原始配置文件,生成具有预定格式规范的可视化编辑界面,并基于所述格式规范对设计人员输入的参数进行自动检查,从而保证设计人员输入的参数是符合格式规范要求,设计人员仅需简单进行数据填写,而无需花费太多精力用于人工检查填写的数据的格式、类型或者数值范围是否出现错误,节省了检查的时间,提升了工作的效率。此外,可视化的编辑界面还进一步提升了设计人员的使用体验和友好度。
优选地,还包括:
文件转换单元50,用于将所述Json配置文件转换成与应用开发语言对应的脚本文件。
优选地,还包括:
代码显示单元60,用于在所述可视化编辑界面上显示所述脚本文件中的代码。
优选地,所述文件转换单元50具体包括:
初始转换模块51,用于将所述Json配置文件按照转换规则转换成与应用开发语言对应的初始脚本文件。
关键字查找模块52,用于查找所述初始脚本文件中的自定义关键字及与所述自定义关键字对应的数据结构。
变换模块53,用于从预先配置的自定义解析器中获取与查找到的所述自定义关键字对应的变换方法,根据所述变换方法对与所述自定义关键字对应的数据结构进行变换并删除所述自定义关键字,生成脚本文件;其中,所述变换方法包括变换所述数据结构的类型。
本优选实施例实现了对原始配置文件的扩展的数据结构的支持和变换,并可将扩展的数据结构转换为符合脚本文件格式的数据结构,使得配置的编辑方式更灵活,适用范围更广。
优选地,还包括:
不可变数组获取单元70,用于获取所述原始配置文件中的不可变数组;
显示控制单元80,用于当所述不可变数组内的元素的个数小于预设的阈值时,通过CSS样式表控制将所述不可变数组内的各个元素显示在所述可视化编辑界面的同一显示栏。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。

Claims (6)

1.一种可视化的游戏配置编辑方法,其特征在于,包括如下步骤:
生成基于Json Schema描述的原始游戏配置文件,在所述原始游戏配置文件中设定自定义关键字,通过所述自定义关键字,用Json Schema支持的数据类型来表示Json Schema不支持的数据类型,其中所述Json Schema不支持的数据类型为应用开发语言对应的脚本文件中的数据类型;并预先配置自定义解析器,使其能够根据所述自定义关键字对应的变换方法将对与所述自定义关键字对应的数据结构进行从所述Json Schema支持的数据类型到所述Json Schema不支持的数据类型的变换;
读取基于Json Schema描述的原始游戏配置文件,生成具有预定格式规范的可视化编辑界面,所述可视化编辑界面具有用于输入游戏配置参数的输入栏,所述输入栏的格式规范由所述原始游戏配置文件的定义决定;
监听用户在所述可视化编辑界面的输入栏中输入的游戏配置参数;
根据所述格式规范对输入到所述输入栏内的游戏配置参数进行检查;
当输入的所述游戏配置参数符合与其对应的输入栏定义的格式规范时,根据输入的游戏配置参数生成Json游戏配置文件;
将所述Json游戏配置文件转换成与应用开发语言对应的脚本文件,具体为:
将所述Json游戏配置文件按照转换规则转换成与应用开发语言对应的初始脚本文件;
查找所述初始脚本文件中的自定义关键字及与所述自定义关键字对应的数据结构;
从预先配置的自定义解析器中获取与查找到的所述自定义关键字对应的变换方法,根据所述变换方法对与所述自定义关键字对应的数据结构进行变换并删除所述自定义关键字,生成脚本文件;其中,所述变换方法包括变换所述数据结构的类型。
2.根据权利要求1所述的可视化的游戏配置编辑方法,其特征在于,在所述将所述Json配置文件转换成与应用开发语言对应的脚本文件之后,还包括:
在所述可视化编辑界面上显示所述脚本文件中的代码。
3.根据权利要求1所述的可视化的游戏配置编辑方法,其特征在于,还包括:
获取所述原始游戏配置文件中的不可变数组;
当所述不可变数组内的元素的个数小于预设的阈值时,通过CSS样式表控制将所述不可变数组内的各个元素显示在所述可视化编辑界面的同一显示栏。
4.一种可视化的游戏配置编辑装置,其特征在于,包括:
原始游戏配置文件生成和自定义解析器配置单元,用于生成基于Json Schema描述的原始游戏配置文件,在所述原始游戏配置文件中设定自定义关键字,通过所述自定义关键字,用Json Schema支持的数据类型来表示Json Schema不支持的数据类型,其中所述JsonSchema不支持的数据类型为应用开发语言对应的脚本文件中的数据类型;并用于预先配置自定义解析器,使其能够根据所述自定义关键字对应的变换方法将对与所述自定义关键字对应的数据结构进行从所述Json Schema支持的数据类型到所述Json Schema不支持的数据类型的变换;
可视化界面生成单元,用于读取基于Json Schema描述的原始游戏配置文件,生成具有预定格式规范的可视化编辑界面,所述可视化编辑界面具有用于输入游戏配置参数的输入栏,所述输入栏的格式规范由所述原始游戏配置文件的定义决定;
参数监听单元,用于监听用户在所述可视化编辑界面的输入栏中输入的游戏配置参数;
检查单元,用于根据所述格式规范对输入到所述输入栏内的游戏配置参数进行检查;
配置文件生成单元,用于当输入的所述游戏配置参数符合与其对应的输入栏定义的格式规范时,根据输入的游戏配置参数生成Json游戏配置文件;
文件转换单元,用于将所述Json游戏配置文件转换成与应用开发语言对应的脚本文件,具体包括:
初始转换模块,用于将所述Json游戏配置文件按照转换规则转换成与应用开发语言对应的初始脚本文件;
关键字查找模块,用于查找所述初始脚本文件中的自定义关键字及与所述自定义关键字对应的数据结构;
变换模块,用于从预先配置的自定义解析器中获取与查找到的所述自定义关键字对应的变换方法,根据所述变换方法对与所述自定义关键字对应的数据结构进行变换并删除所述自定义关键字,生成脚本文件;其中,所述变换方法包括变换所述数据结构的类型。
5.根据权利要求4所述的可视化的游戏配置编辑装置,其特征在于,还包括:
代码显示单元,用于在所述可视化编辑界面上显示所述脚本文件中的代码。
6.根据权利要求4所述的可视化的游戏配置编辑装置,其特征在于,还包括:
不可变数组获取单元,用于获取所述原始游戏配置文件中的不可变数组;
显示控制单元,用于当所述不可变数组内的元素的个数小于预设的阈值时,通过CSS样式表控制将所述不可变数组内的各个元素显示在所述可视化编辑界面的同一显示栏。
CN201611178710.9A 2016-12-19 2016-12-19 一种可视化的配置编辑方法及装置 Active CN106775725B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611178710.9A CN106775725B (zh) 2016-12-19 2016-12-19 一种可视化的配置编辑方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611178710.9A CN106775725B (zh) 2016-12-19 2016-12-19 一种可视化的配置编辑方法及装置

Publications (2)

Publication Number Publication Date
CN106775725A CN106775725A (zh) 2017-05-31
CN106775725B true CN106775725B (zh) 2020-12-01

Family

ID=58890514

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611178710.9A Active CN106775725B (zh) 2016-12-19 2016-12-19 一种可视化的配置编辑方法及装置

Country Status (1)

Country Link
CN (1) CN106775725B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230013547A1 (en) * 2021-07-14 2023-01-19 Nintex UK Ltd. Generating user interface elements based on data schema files

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109388444B (zh) * 2017-08-03 2021-11-16 上海宝信软件股份有限公司 一种槽下配料的分配工艺
CN107450931A (zh) * 2017-08-15 2017-12-08 竞技世界(北京)网络技术有限公司 基于ini配置文件的可视化编辑方法及装置
CN107678742B (zh) * 2017-09-25 2021-05-21 上海卫星工程研究所 卫星遥测反演算法在线编辑方法
CN107679329B (zh) * 2017-10-10 2021-09-03 中国航发控制***研究所 航空发动机控制***中多种上位机的集成方法及装置
CN110580147B (zh) * 2018-06-07 2022-07-05 阿里巴巴集团控股有限公司 一种应用程序的开发方法和装置
CN108920440A (zh) * 2018-06-26 2018-11-30 苏州蜗牛数字科技股份有限公司 一种配置文件的编辑方法、装置及存储介质
CN109240679A (zh) * 2018-07-24 2019-01-18 阿里巴巴集团控股有限公司 脚本文件的图形化方法及装置
CN109522213A (zh) * 2018-10-09 2019-03-26 天维讯达(北京)科技有限公司 一种基于自定义测试脚本的测试方法及装置
CN109408042A (zh) * 2018-10-10 2019-03-01 高新兴科技集团股份有限公司 机器人可视化脚本配置方法、装置及计算机存储介质
CN109522068A (zh) * 2018-10-17 2019-03-26 大唐网络有限公司 页面的展示方法及***、页面数据的编辑方法
CN109710685A (zh) * 2018-12-28 2019-05-03 浙江省公众信息产业有限公司 用于数据采集和/或数据可视化展现的方法、装置及***
CN111427882A (zh) * 2019-01-10 2020-07-17 阿里巴巴集团控股有限公司 数据编辑方法及***、数据处理设备、存储介质
CN109901888B (zh) * 2019-02-01 2022-07-15 卡斯柯信号有限公司 一种配置文件自动生成工具的设计方法
CN111626018B (zh) * 2019-02-28 2023-07-28 北京数聚鑫云信息技术有限公司 一种构建json格式化数据的方法及装置
CN110134255A (zh) * 2019-05-20 2019-08-16 浙江慧脑信息科技有限公司 一种多功能时间输入方法
CN112422476A (zh) * 2019-08-20 2021-02-26 北京嗨动视觉科技有限公司 数据处理方法、装置和***
CN112187503A (zh) * 2019-08-29 2021-01-05 盈盛智创科技(广州)有限公司 一种区块链业务网络的配置方法、装置、设备及存储介质
CN110704394B (zh) * 2019-09-03 2023-06-30 苏宁云计算有限公司 报表配置修改方法及装置
CN110704038B (zh) * 2019-09-05 2022-08-19 苏州浪潮智能科技有限公司 一种Python字典的数据处理方法、装置及设备
CN110841285B (zh) * 2019-11-12 2021-09-14 腾讯科技(深圳)有限公司 界面元素的显示方法、装置、计算机设备及存储介质
CN112883088B (zh) * 2019-11-29 2023-01-31 贵州白山云科技股份有限公司 一种数据处理方法、装置、设备及存储介质
CN111124541B (zh) * 2019-12-25 2023-09-08 上海米哈游网络科技股份有限公司 一种配置文件的生成方法、装置、设备及介质
CN111158687B (zh) * 2019-12-31 2023-09-22 奇安信科技集团股份有限公司 Java插件的界面生成方法、装置、计算机设备和存储介质
CN111708527B (zh) * 2020-05-25 2023-05-12 杭州涂鸦信息技术有限公司 固件的配置文件生成方法、装置及介质
CN112346733A (zh) * 2020-11-04 2021-02-09 上海机器人产业技术研究院有限公司 一种移动机器人io管理方法
CN112333275A (zh) * 2020-11-09 2021-02-05 杭州安恒信息技术股份有限公司 一种web项目配置管理方法和装置
CN112328230A (zh) * 2020-11-18 2021-02-05 恩亿科(北京)数据科技有限公司 一种Json语句解析方法、***、电子设备及存储介质
CN112650492A (zh) * 2020-12-24 2021-04-13 山东中创软件工程股份有限公司 一种Web页面的渲染方法、***及相关装置
CN114489625A (zh) * 2022-04-08 2022-05-13 北京优锘科技有限公司 将json格式文本转换为可视化配置工具的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140067866A1 (en) * 2012-08-28 2014-03-06 Microsoft Corporation Javascript object notation schema definition language
CN105786505A (zh) * 2016-02-26 2016-07-20 上海全成通信技术有限公司 一种基于json的复杂web页面组件自定义方法及装置
CN105808646A (zh) * 2016-02-26 2016-07-27 上海全成通信技术有限公司 基于json schema的复杂页面内内容管理校验方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103399816A (zh) * 2013-07-31 2013-11-20 上海云端广告有限公司 一种数据检查方法及装置
CN106033340B (zh) * 2015-03-16 2019-03-22 广州四三九九信息科技有限公司 手游战斗技能的可视化编辑方法及***
CN104991763B (zh) * 2015-06-04 2018-02-13 珠海金山网络游戏科技有限公司 一种通用的游戏界面行为控制***
CN105550354B (zh) * 2015-12-29 2019-05-31 珠海金山网络游戏科技有限公司 一种配置文件管理的方法和***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140067866A1 (en) * 2012-08-28 2014-03-06 Microsoft Corporation Javascript object notation schema definition language
CN105786505A (zh) * 2016-02-26 2016-07-20 上海全成通信技术有限公司 一种基于json的复杂web页面组件自定义方法及装置
CN105808646A (zh) * 2016-02-26 2016-07-27 上海全成通信技术有限公司 基于json schema的复杂页面内内容管理校验方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230013547A1 (en) * 2021-07-14 2023-01-19 Nintex UK Ltd. Generating user interface elements based on data schema files

Also Published As

Publication number Publication date
CN106775725A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
CN106775725B (zh) 一种可视化的配置编辑方法及装置
US10319125B2 (en) Method, system, and computer-readable medium for creating and laying out a graphic within an application program
KR101312867B1 (ko) 사용자 인터페이스를 위한 표시 기반 확장성
US9069830B2 (en) Retrieving data objects
US20130179772A1 (en) Supporting generation of transformation rule
US10649971B2 (en) Incremental dynamic document index generation
KR101554424B1 (ko) 테스트 케이스 생성 자동화 방법 및 장치
US9646004B2 (en) Hierarchical database report generation with automated query generation for placeholders
CN106354483B (zh) 一种数据处理方法、装置及电子设备
WO2017058047A1 (ru) Способ подготовки документов на языках разметки
US9817811B2 (en) Web server system, dictionary system, dictionary call method, screen control display method, and demonstration application generation method
KR20210056961A (ko) 의미 처리 방법, 장치, 전자 기기 및 매체
KR102561951B1 (ko) 모델링 매개 변수의 설정 방법, 장치, 전자 기기 및 기록 매체
CN109213480B (zh) 一种开发后台管理页面的方法、存储介质、设备及***
JP4566196B2 (ja) 文書処理方法および装置
JP4627530B2 (ja) 文書処理方法および装置
US9594737B2 (en) Natural language-aided hypertext document authoring
CN116382688A (zh) 一种适用于Arm-Linux的人机交互界面程序快速开发和部署方法
CN114676155A (zh) 代码提示信息的确定方法、数据集的确定方法及电子设备
CN114489639A (zh) 文件生成方法、装置、设备及存储介质
CN112948529A (zh) 动态文本读写方法、装置、电子设备及介质
CN114217780A (zh) 一种支持网页和小程序可视化开发的方法、***及终端
CN117610540A (zh) 一种模型验证方法、***、存储介质和电子设备
CN117992054A (zh) 文件处理方法及装置
CN114491191A (zh) 一种接口文档的生成方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant