CN105597316A - 基于配表生成随机迷宫场景的方法、系统及装置 - Google Patents
基于配表生成随机迷宫场景的方法、系统及装置 Download PDFInfo
- Publication number
- CN105597316A CN105597316A CN201510966949.1A CN201510966949A CN105597316A CN 105597316 A CN105597316 A CN 105597316A CN 201510966949 A CN201510966949 A CN 201510966949A CN 105597316 A CN105597316 A CN 105597316A
- Authority
- CN
- China
- Prior art keywords
- scene
- labyrinth
- configuration file
- joining
- random
- 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.)
- Pending
Links
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种基于配表生成随机迷宫场景的方法,包括步骤:S1、设置数据结构;S2、将迷宫图配表转换成程序可识别的配置文件;S3、根据配置文件生成迷宫场景。还公开了一种基于配表生成随机迷宫场景的系统及装置。本发明具有如下优点:1、可以在文档通过通俗的符号摆出迷宫,迷宫图在文档上一目了然,大大减小设计的难度,让设计者可以轻松地参与到迷宫设计中来;2、可以重复利用迷宫的某一块,提高场景的利用率;3、可以根据场景开口的情况,摆出各种各样的迷宫,给玩家设计不同的路线、玩法;4、使用配置文件生成场景,可以根据需要扩展配置信息,从而让场景附加很多游戏所需的功能,如该场景是否可以PK、该场景的音乐类型等。
Description
技术领域
本发明涉及游戏领域,特别是涉及一种基于配表生成随机迷宫场景的方法、系统及装置。
背景技术
场景在游戏中,非常重要,是玩家游戏的“世界”,诚然,开发者可以找一批美术,制作大量的场景,每个场景只用一次,这种制作方式最大的问题需要:
1、消耗大量的人力和物力;
2、由于开发量大,可能还会影响进度;
3、每一个场景都是只用一遍,有些浪费;同时,每次看角度都一样,玩家也不容易有新鲜感;
4、地图的路线也是设计好的;玩家每次都是走同样的路线。
发明内容
本发明的目的在于克服现有技术问题的缺陷,开发灵活定制迷宫的方案,以提高场景的重复利用率以及增加游戏的探索性。
根据本发明的一个方面,提供了一种基于配表生成随机迷宫场景的方法,包括步骤:
S1、设置数据结构;
S2、将迷宫图配表转换成程序可识别的配置文件;
S3、根据配置文件生成迷宫场景。
优选地,所述步骤S1包括:
S11、将每一场景划分设置为东、南、西、北四个方向,并将所述四个方向中的每一个与四位二进制数中的每一位一一对应;
S12、分别设置每一场景的开口方向和封闭方向所对应的数值。
优选地,能够扩展所述数据结构中的二进制位数,以用于更为具体的描述。
优选地,所述步骤S2包括:
S21、创建迷宫图配表;
S22、将迷宫图配表转换相应的配置文件;
S23、将配置文件中的每一配置信息与迷宫中的资源一一对应。
优选地,步骤S23中,能够在所述配置信息中增加字段,以实现游戏所需的多种不同功能。
优选地,所述字段中的信息包括但不限于场景号、场景名字、游戏角色创建的出生点、每一块场景的大小、资源存放的路径、场景是否可以旋转以及场景是否可以PK。
根据本发明的另一方面,提供了一种基于配表生成随机迷宫场景的系统,其特征在于,所述系统包括:
设置模块,用于设置数据结构;
转换模块,用于将迷宫图配表转换成程序可识别的配置文件;
生成模块,用于根据配置文件生成迷宫场景。
根据本发明的再一方面,提供了一种基于配表生成随机迷宫场景的装置,所述装置包括:
存储器,用于存储程序;
处理器,用于运行所述程序执行以下步骤:
S1、设置数据结构;
S2、将迷宫图配表转换成程序可识别的配置文件;
S3、根据配置文件生成迷宫场景。
本发明的有益效果:
本发明所提供的基于配表生成随机迷宫场景的方法、系统及装置可以提供如下优点:
1、设计者可以在文档上通过通俗的符号摆出迷宫,迷宫图在文档上便可以一目了然,大大减小设计的难度,让设计者可以轻松地参与到迷宫设计中来;
2、设计者可以重复利用迷宫的某一块,提高场景的利用率;
3、设计者可以根据场景开口的情况,摆出各种各样的迷宫,给玩家设计不同的路线、玩法;
4、使用配置文件生成场景,可以根据需要扩展配置信息,从而让场景附加很多游戏所需的功能,如该场景是否可以PK、该场景的音乐类型等。
附图说明
下面结合附图和实例对本发明作进一步说明:
图1是根据本发明的一种基于配表生成随机迷宫场景的方法流程图;
图2是根据本发明定义的场景中的符号表示关系图;
图3是根据本发明一实施例的配表图;
图4是根据本发明一实施例扩展的配表图;
图5是根据本发明另一实施例的配表图;
图6是根据本发明的一种基于配表生成随机迷宫场景的系统模块框图;
图7是根据本发明的一种基于配表生成随机迷宫场景的装置框图。
具体实施方式
本发明提供一种基于配表生成随机迷宫场景的方法、系统及装置,用于开发灵活定制迷宫的方案,以提高场景的重复利用率,增加游戏的探索性。
根据本发明的一实施例,参照图1,提供一种基于配表生成随机迷宫场景的方法,包括步骤:
S1、设置数据结构。
具体地,每一个场景都定义为:西、南、东、北四个方向,分别用0、1、2、3表示如下:
DIR_W=0;//西
DIR_S=1;//南
DIR_E=2;//东
DIR_N=3;//北
然后,地图开口方向,即有路的一个方向,我们用1表示,地图封闭方向,即为封闭方向,没有路,则用0表示,那么可以表示如下:
四种单方向开口:
0001=1;//开口向西,东南北都是封闭的
0010=2;//开口向南
0100=4;//开口向东
1000=8;//开口向北
当然,也可以相反地有路的方向用0表示,无路的方向用1表示。
这些组件对接的时候,要求组件开口的方向,需要和另一个组件开口的对接。如开口向东的0100和开口向西的0001组件可以对接起来。为了方便查看,本发明定义了一套通俗的符号,用于方便理解迷宫。这些符号都只是一个字符,用输入法选择符号可以打出来。如图2所示。
因此,当需要设计一个迷宫时,我们可以用图先表示出来,然后,再导成程序可以识别与处理的配置文件。例如,我们可以配置一个如图3所示的地宫,图中连线部分描述的场景模块是连通的。
考虑到,有时设计者想,在设计场景时,如向东开口的场景,就是想放某一块,根据这个需求,我可以扩展数据结构,如:0001表示开口向西,我们在后面增加2位用于描述具体哪块场景。如:“0001_00”,表示向西开口第0块;“0001_01”,表示向西开口第1块。这样,我们可以拼出更复杂的一些迷宫,如图4所示,同样地,图中连线部分描述的场景模块是连通的。
S2、将迷宫图配表转换成程序可识别的配置文件。
首先将迷宫图配表中的符号转换成字符,例如将“→”转成字符“0100”;如果有指定迷宫块的,如“→,02”,则转成字符“0100_02”,否则,转成为“0100_00”。
如图5所示,其可生成的配置参考为:[[‘0100_00’,‘0111_00’,‘0001_00’],[‘0’,‘1000_00’,‘0’]]。
配置信息与资源的关系。我们将迷宫某块资源的命名,和配置信息对应起来即可,如命名为:0100_00.scn,0111_00.scn,0001_02.scn等,程序将配置信息,添加路径和后缀,即可以找到对应的资源。
为了设计者更方便地控制迷宫,我们可以在表里增加一些字段:如场景id、场景名字、角色创建的出生点、迷宫每一块的大小、资源存放的路径、场景是否可以旋转以及场景是否可以PK等游戏相关的信息。最后导出程序可用的格式。如导出python的配置数据:
{
'type_id':10000,#//场景的id
'name':'测试场景',#//场景名字
'entrance_pos':(#//角色创建出生点位置
1416,
601,
),
'chunk_size':(//地图每一块的大小
1000,
1000,
),
'path':'scene/scene/test',#//场景的资源路径
'map_nfo':[['0100_00','0111_00','0001_00'],['0','1000_00','0']],#//迷宫数据
…….
}
S3、根据配置文件生成迷宫场景。
1、根据配置文件中的配置数据生成场景。先解释配置文件,数据格式如:'map_nfo':[['0100_00','0111_00','0001_00'],['0','1000_00','0']]。从解释最外层的列表数据,然后,解释里每一个列表的数据。Python的核心代码参考如下:
defProcessMapInfo(self,map_info):
x=0
z=0
chunks=[]
self.chunk_sizex=map_info.chunk_size[0];
self.chunk_sizez=map_info.chunk_size[1];
#遍历最外层的map_info的列表数据,即设计表的配置数据按行遍历
foriinxrange(len(map_info),0,-1):
row_data=map_info[i-1]
x=0
#遍历map_info的列表的数据,即设计里第n行,每一列的数据
fornodeinrow_data:
ifnode!='0':#如果该模块有场景数据
xpos=x*self.chunk_sizex
zPos=z*self.chunk_sizex
sceneFile=map_info.path+node+".scn"
#加载场景并设置位置
x+=1
z+=1
returnchunks
2、根据配置,实现场景其它的附加需求,如场景旋转,场景不允许PK等。
根据本发明的另一实施例,参照图6,提供了一种基于配表生成随机迷宫场景的系统,其特征在于,所述系统包括:
设置模块,用于设置数据结构;
转换模块,用于将迷宫图配表转换成程序可识别的配置文件;
生成模块,用于根据配置文件生成迷宫场景。
根据本发明的另一实施例,参照图7,提供了一种基于配表生成随机迷宫场景的装置,所述装置包括:
存储器,用于存储程序;
处理器,用于运行所述程序执行以下步骤:
S1、设置数据结构;
S2、将迷宫图配表转换成程序可识别的配置文件;
S3、根据配置文件生成迷宫场景。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变形或替换,这些等同的变型或替换均包含在本申请权利要求所限定的范围内。
除非一个必需的步骤需要由前面步骤所产生的输入,否则本文描述的步骤的特定顺序仅用于示例性说明,而非限制。
Claims (8)
1.基于配表生成随机迷宫场景的方法,其特征在于,包括步骤:
S1、设置数据结构;
S2、将迷宫图配表转换成程序可识别的配置文件;
S3、根据配置文件生成迷宫场景。
2.根据权利要求1所述的基于配表生成随机迷宫场景的方法,其特征在于,所述步骤S1包括:
S11、将每一场景划分设置为东、南、西、北四个方向,并将所述四个方向中的每一个与四位二进制数中的每一位一一对应;
S12、分别设置每一场景的开口方向和封闭方向所对应的数值。
3.根据权利要求1所述的基于配表生成随机迷宫场景的方法,其特征在于,能够扩展所述数据结构中的二进制数位数,以用于更为具体的描述。
4.根据权利要求1所述的基于配表生成随机迷宫场景的方法,其特征在于,所述步骤S2包括:
S21、创建迷宫图配表;
S22、将迷宫图配表转换相应的配置文件;
S23、将配置文件中的每一配置信息与迷宫中的资源一一对应。
5.根据权利要求4所述的基于配表生成随机迷宫场景的方法,其特征在于,步骤S23中,能够在所述配置信息中增加字段,以实现游戏所需的多种不同功能。
6.根据权利要求5所述的基于配表生成随机迷宫场景的方法,其特征在于,所述字段中的信息包括但不限于场景号、场景名字、游戏角色创建的出生点、每一块场景的大小、资源存放的路径、场景是否可以旋转以及场景是否可以PK。
7.基于配表生成随机迷宫场景的系统,其特征在于,所述系统包括:
设置模块,用于设置数据结构;
转换模块,用于将迷宫图配表转换成程序可识别的配置文件;
生成模块,用于根据配置文件生成迷宫场景。
8.基于配表生成随机迷宫场景的装置,所述装置包括:
存储器,用于存储程序;
处理器,用于运行所述程序执行以下步骤:
S1、设置数据结构;
S2、将迷宫图配表转换成程序可识别的配置文件;
S3、根据配置文件生成迷宫场景。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510966949.1A CN105597316A (zh) | 2015-12-22 | 2015-12-22 | 基于配表生成随机迷宫场景的方法、系统及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510966949.1A CN105597316A (zh) | 2015-12-22 | 2015-12-22 | 基于配表生成随机迷宫场景的方法、系统及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105597316A true CN105597316A (zh) | 2016-05-25 |
Family
ID=55978003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510966949.1A Pending CN105597316A (zh) | 2015-12-22 | 2015-12-22 | 基于配表生成随机迷宫场景的方法、系统及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105597316A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106110655A (zh) * | 2016-06-22 | 2016-11-16 | 广州多益网络股份有限公司 | 一种随机地图生成方法、及其客户端、服务端和系统 |
CN109954275A (zh) * | 2019-02-27 | 2019-07-02 | 黄冈师范学院 | 一种三维迷宫随机生成算法 |
CN110141863A (zh) * | 2019-04-24 | 2019-08-20 | 深圳市腾讯网域计算机网络有限公司 | 应用场景获取方法、装置、电子设备及介质 |
CN111054077A (zh) * | 2019-11-28 | 2020-04-24 | 腾讯科技(深圳)有限公司 | 管理游戏玩法的方法、装置、电子设备及存储介质 |
CN111068327A (zh) * | 2019-12-26 | 2020-04-28 | 珠海金山网络游戏科技有限公司 | 一种调整游戏角色背部装饰方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1743038A (zh) * | 2004-08-31 | 2006-03-08 | 阿鲁策株式会社 | 游戏机和游戏系统 |
CN1975747A (zh) * | 2006-10-12 | 2007-06-06 | 中山大学 | 一种rpg游戏场景路径的自动生成方法及装置 |
CN105047042A (zh) * | 2015-07-06 | 2015-11-11 | 中国科学院软件研究所 | 一种面向儿童实物编程方法及系统 |
-
2015
- 2015-12-22 CN CN201510966949.1A patent/CN105597316A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1743038A (zh) * | 2004-08-31 | 2006-03-08 | 阿鲁策株式会社 | 游戏机和游戏系统 |
CN1975747A (zh) * | 2006-10-12 | 2007-06-06 | 中山大学 | 一种rpg游戏场景路径的自动生成方法及装置 |
CN105047042A (zh) * | 2015-07-06 | 2015-11-11 | 中国科学院软件研究所 | 一种面向儿童实物编程方法及系统 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106110655A (zh) * | 2016-06-22 | 2016-11-16 | 广州多益网络股份有限公司 | 一种随机地图生成方法、及其客户端、服务端和系统 |
CN109954275A (zh) * | 2019-02-27 | 2019-07-02 | 黄冈师范学院 | 一种三维迷宫随机生成算法 |
CN109954275B (zh) * | 2019-02-27 | 2022-10-21 | 黄冈师范学院 | 一种三维迷宫随机生成系统 |
CN110141863A (zh) * | 2019-04-24 | 2019-08-20 | 深圳市腾讯网域计算机网络有限公司 | 应用场景获取方法、装置、电子设备及介质 |
CN111054077A (zh) * | 2019-11-28 | 2020-04-24 | 腾讯科技(深圳)有限公司 | 管理游戏玩法的方法、装置、电子设备及存储介质 |
CN111068327A (zh) * | 2019-12-26 | 2020-04-28 | 珠海金山网络游戏科技有限公司 | 一种调整游戏角色背部装饰方法及装置 |
CN111068327B (zh) * | 2019-12-26 | 2024-02-09 | 珠海金山数字网络科技有限公司 | 一种调整游戏角色背部装饰方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105597316A (zh) | 基于配表生成随机迷宫场景的方法、系统及装置 | |
CN110471666A (zh) | 代码自动转换方法和装置、代码转换器及介质 | |
CN105597318B (zh) | 一种自动生成随机游戏场景的方法、系统和装置 | |
CN106227716B (zh) | 一种实现分支选择结构电子文档编辑的系统和方法 | |
CN105739974A (zh) | 一种图形化编程控制电子积木的方法 | |
CN106663088A (zh) | 协作电子表格中的有效拷贝粘贴 | |
CN104685466A (zh) | 用于提供多个视图的浏览器级背景页面 | |
CN104750945A (zh) | 一种量子电路仿真平台 | |
CN102541566A (zh) | 半导体软件界面框架生成方法 | |
CN111666100B (zh) | 软件框架生成方法、装置、电子设备及存储介质 | |
CN106571945A (zh) | 控制面、业务面分离的方法和系统、服务器、云计算平台 | |
CN105068980A (zh) | 一种题目之间跳转关系的图形化展现方法及系统 | |
CN101719921A (zh) | 可重构路由器软件开发中的路由协议构件的生成方法 | |
CN103840831A (zh) | 用于数据转换器中isi缓解的切换方案 | |
CN107301080A (zh) | 轨旁控制单元中基于数据配置的c语言代码自动生成系统 | |
CN103246446B (zh) | 多媒体输入方法及电子设备 | |
CN105373527A (zh) | 一种省略恢复方法及问答系统 | |
CN105556570A (zh) | 生成屏幕数据 | |
CN115937352B (zh) | 矿山场景仿真方法、系统、电子设备及存储介质 | |
Al-Fedaghi | Modeling physical/digital systems: formal event-B vs. diagrammatic thinging machine | |
US8661061B2 (en) | Data structure, data structure generation method, information processing apparatus, information processing system, and computer-readable storage medium having stored therein information processing program | |
CN104834515A (zh) | 目标文件的生成方法 | |
US9778812B2 (en) | Screen transition diagram creator | |
Hu | Bipartite consensus control of multiagent systems on coopetition networks | |
WO2020071684A1 (ko) | 멀티 뎁스 이미지 표시 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160525 |