PROCEDURAL GENERATION IN 2D METROIDVANIA GAME WITH ANSWER SET PROGRAMMING AND PERLIN NOISE

John Xu, John Morris
{"title":"PROCEDURAL GENERATION IN 2D METROIDVANIA GAME WITH ANSWER SET PROGRAMMING AND PERLIN NOISE","authors":"John Xu, John Morris","doi":"10.5121/ijaia.2023.14302","DOIUrl":null,"url":null,"abstract":"Designing metroidvania games often poses a unique challenge to video game developers, namely the difficulty of consistently preventing soft-locking, which hinders or blocks the player’s ability to traverse through levels effectively [1]. As a result, many turn to hand-making all levels to ensure the level’s traversability, but in the process often forsaking the ability to rely on procedural generation to lessen the time and burden on human game developers [2]. On the other hand, when developers rely on popular ways of procedural generation such as using perlin noise, they find themselves unable to control those procedural algorithms to guarantee certain characteristics of the outputs such as traversability [3]. Our paper aims to present a procedural solution that can also effectively guarantee the traversability of the generated level. Our method uses Answer Set Programming (ASP) to verify generation based on restrictions we place, guaranteeing the outcome to be what we want [4]. The generation of a level is divided into rooms, which are first mapped out in a graph to ensure traversability from a starting room to an ending boss area. The rooms’ geometry is then generated accordingly to create the full level. Using perlin noise, we were also able to create a demonstration of how traversability works in another form of procedural generation, and compare it with our methodology to identify strengths and weaknesses. To demonstrate our method, we applied our solution as well as the perlin noise algorithm to a 2D metroidvania game made in the Unity game engine and conducted quantitative tests on the ASP method to assess how well our method works as a level generator [5].","PeriodicalId":93188,"journal":{"name":"International journal of artificial intelligence & applications","volume":"5 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-05-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"International journal of artificial intelligence & applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.5121/ijaia.2023.14302","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Designing metroidvania games often poses a unique challenge to video game developers, namely the difficulty of consistently preventing soft-locking, which hinders or blocks the player’s ability to traverse through levels effectively [1]. As a result, many turn to hand-making all levels to ensure the level’s traversability, but in the process often forsaking the ability to rely on procedural generation to lessen the time and burden on human game developers [2]. On the other hand, when developers rely on popular ways of procedural generation such as using perlin noise, they find themselves unable to control those procedural algorithms to guarantee certain characteristics of the outputs such as traversability [3]. Our paper aims to present a procedural solution that can also effectively guarantee the traversability of the generated level. Our method uses Answer Set Programming (ASP) to verify generation based on restrictions we place, guaranteeing the outcome to be what we want [4]. The generation of a level is divided into rooms, which are first mapped out in a graph to ensure traversability from a starting room to an ending boss area. The rooms’ geometry is then generated accordingly to create the full level. Using perlin noise, we were also able to create a demonstration of how traversability works in another form of procedural generation, and compare it with our methodology to identify strengths and weaknesses. To demonstrate our method, we applied our solution as well as the perlin noise algorithm to a 2D metroidvania game made in the Unity game engine and conducted quantitative tests on the ASP method to assess how well our method works as a level generator [5].
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
基于答案集编程和柏林噪声的二维银河恶魔城游戏程序生成
设计《银河恶魔城》通常会给电子游戏开发者带来一个独特的挑战,即持续防止软锁定的难度,这会阻碍或阻碍玩家有效穿越关卡的能力[1]。因此,许多人转而手工制作所有关卡,以确保关卡的可穿越性,但在这个过程中,他们往往放弃了依赖程序生成的能力,以减少人类游戏开发者的时间和负担[2]。另一方面,当开发人员依赖流行的程序生成方法(如使用柏林噪声)时,他们发现自己无法控制这些程序算法来保证输出的某些特征,如可遍历性[3]。我们的论文旨在提出一个程序解决方案,也可以有效地保证生成的关卡的可遍历性。我们的方法使用答案集编程(ASP)根据我们设置的限制来验证生成,保证结果是我们想要的[4]。关卡的生成被划分为多个房间,这些房间首先被绘制成图表,以确保从起始房间到结束boss区域的可穿越性。然后,房间的几何形状相应地生成,以创建完整的关卡。使用柏林噪声,我们还能够创建可遍历性如何在另一种形式的程序生成中工作的演示,并将其与我们的方法进行比较,以确定优势和劣势。为了演示我们的方法,我们将我们的解决方案和柏林噪声算法应用于一款使用Unity游戏引擎制作的2D《恶魔城》游戏,并对ASP方法进行了定量测试,以评估我们的方法作为关卡生成器的效果[5]。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Characteristics of Networks Generated by Kernel Growing Neural Gas Identifying Text Classification Failures in Multilingual AI-Generated Content Subverting Characters Stereotypes: Exploring the Role of AI in Stereotype Subversion Performance Evaluation of Block-Sized Algorithms for Majority Vote in Facial Recognition Sentiment Analysis in Indian Elections: Unraveling Public Perception of the Karnataka Elections With Transformers
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1