热门标签 | HotTags
当前位置:  开发笔记 > 开发工具 > 正文

益智类游戏关卡设计:逆推法巧解益智类游戏关卡设计

前言益智类的游戏非常有意思,但是它的关卡设计并不容易,看上去是随机,同时难度又要由简到难的按顺序增加,同时还要有标准的提示

前言

益智类的游戏非常有意思,但是它的关卡设计并不容易,看上去是随机,同时难度又要由简到难的按顺序增加,同时还要有标准的提示的解法,本节給大家分享一类益智类游戏的关卡设计的解决方法,这个方法我称为: 逆推法

这里有个游戏开发交流小组 大家可以一起来学习交流哦



逆推法适应的场景举例

首先举2个经典游戏例子来看下逆推法适用的游戏场景。首先我们来看《拼图游戏》的关卡设计, 《拼图游戏》在做关卡设计的时候,大家可能觉得会很简单,只要把图片分成若干的块,然后随机打乱就可以了,这样一个关卡就做完了。那么问题来了:

(1) 如何保证能让难度是按照由低到高的顺序一关关的递增呢?

(2) 如何保证每一组随机打乱以后的关卡,能一定有解,按照一定的步骤能还原回原来的图片状态呢?

(3) 如何能通过计算机自动求解,实现智能提示拼出整个拼图的过程呢?

关卡求解智能提示

再来看一个经典的游戏案例《华容道》,他的主要玩法就是用不同形状的积木块包住物体,然后让玩家移开木块,让玩家和出口之间能有一条直达的路出来,同时还有智能提示,能够提示出每个关卡的移动方法。这里关卡设计同样也面临3个问题:

 


什么是逆推法

做关卡设计的时候,我们給策划编写关卡编辑工具,所谓逆推法就是从结果出发来经过难度等级的迭代生成关卡的初始状态。和玩家求解是反着来的,所以叫做逆推法。主要包含一下步骤:

 


《华容道》如何制作做关卡编辑器

接下来我们以《华容道》为例,讲解关卡编辑器的制作,按照逆推法的第一步,我们需要将结果生成出来,在《华容道》的游戏盘上,我们先生成”玩家块”到”终点”的数据块,这些数据块等下生成关卡地图的时候,这个路径之间不允许有其它的块占用,接下来我们給用户一个可以编辑的工具,让关卡设计着把积木摆好(也可以代码生成块)如下图所示:

接下来,我们就是经过N次步骤,每次用代码随机移动里面可以移动的块,这样就得到了N次操作,将每次操作保存起来。同时得到了经过N次操作以后的关卡结果,这个关卡的结果就是我们呈现給玩家的初始状态,最终游戏的结果,就是关卡编辑者摆出的状态(也可以程序生成)。而保存的N次迭代步骤,反过来就是智能求解。这样就解决了上面所说的关卡编辑的3个问题:

(1) 我们从结果开始逆推,保证了肯定是有解的;

(2) 我们是通过难度+次数来控制经过多少次迭代得到的关卡状态,这样难度是可以控制的。

(3) 我们把关卡编辑器中的步骤反推过来就是智能提示。

好今天的逆推法游戏关卡设计就到这里了,关注我们可以学到更多的关卡编辑的使用技巧。


推荐阅读
  • 微信小程序发布引起轰动
    首页资讯人物态度新闻段子知识产品公司活动专题黑镜物是No!登录为什么微信深夜发布的“小程序”引动了开发者的大地震?盛威12小时前新闻传说中的微信“应用号”终于要来了& ... [详细]
  • 数据模型:数字化转型的核心能力
    前言业界数字化转型已经进入深水区,数据越来越受到大家重视,由于数据中台等等概念的兴起,大 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • HTML学习02 图像标签的使用和属性
    本文介绍了HTML中图像标签的使用和属性,包括定义图像、定义图像地图、使用源属性和替换文本属性。同时提供了相关实例和注意事项,帮助读者更好地理解和应用图像标签。 ... [详细]
  • 本文介绍了一个免费的asp.net控件,该控件具备数据显示、录入、更新、删除等功能。它比datagrid更易用、更实用,同时具备多种功能,例如属性设置、数据排序、字段类型格式化显示、密码字段支持、图像字段上传和生成缩略图等。此外,它还提供了数据验证、日期选择器、数字选择器等功能,以及防止注入攻击、非本页提交和自动分页技术等安全性和性能优化功能。最后,该控件还支持字段值合计和数据导出功能。总之,该控件功能强大且免费,适用于asp.net开发。 ... [详细]
  • OC渲染器和阿诺德渲染器的特点及适用范围
    本文介绍了C4D软件自带的渲染器效果较差的问题,并推荐了四款C4D渲染器,其中包括OC渲染器和阿诺德渲染器。OC渲染器渲染速度快,简单易用,特别适合小团队和个人使用,而阿诺德渲染器具有超快的预览功能和真实的渲染效果,适合在体积光处理方面使用。两款渲染器都支持多个C4D版本和不同操作系统。 ... [详细]
  • macOS Big Sur全新设计大版本更新,10+个值得关注的新功能
    本文介绍了Apple发布的新一代操作系统macOS Big Sur,该系统采用全新的界面设计,包括图标、应用界面、程序坞和菜单栏等方面的变化。新系统还增加了通知中心、桌面小组件、强化的Safari浏览器以及隐私保护等多项功能。文章指出,macOS Big Sur的设计与iPadOS越来越接近,结合了去年iPadOS对鼠标的完善等功能。 ... [详细]
  • 中柏pad7安装linux,千元2in1平板新选择 中柏EZpad 7详细图文评测
    平板电脑由于出色的便携性能,在项目演示和内容沟通交流上有着得天独厚的优势,所以受到了商务人士的青睐。但是很多时候用户需要使用Windows系统来处理一些 ... [详细]
  • 本文介绍了新款奇骏的两个让人上瘾的功能,分别是智能互联系统和BOSE音响。通过对新款奇骏的配置和功能进行评测,探讨了这两个新增功能的使用体验和优势。此外,还介绍了新款奇骏的其他配置和改进,如增加的座椅和驾驶辅助系统,以及内饰的舒适性提升。对于喜欢音响的消费者来说,BOSE音响的升级也是一个亮点。最后,文章提到了BOSE音响的数字还原能力,以及7座版无法配备BOSE音响的原因。 ... [详细]
  • 显卡驱动对游戏的影响及其提升效果的研究
    本文研究了显卡驱动对游戏体验的提升效果,通过比较新旧驱动加持下的RTX 2080Ti显卡在游戏体验上的差异。测试平台选择了i9-9900K处理器和索泰RTX 2080Ti玩家力量至尊显卡,以保证数据的准确性。研究结果表明,显卡驱动的更新确实能够带来近乎50%的性能提升,对于提升游戏体验具有重要意义。 ... [详细]
  • 热血合击脚本辅助工具及随机数生成器源码分享
    本文分享了一个热血合击脚本辅助工具及随机数生成器源码。游戏脚本能够实现类似真实玩家的操作,但信息量有限且操作不可控。热血合击脚本辅助工具可以帮助玩家自动刷图、换图拉怪等操作,并提供了雷电云手机的扩展服务。此外,还介绍了使用mt_rand函数作为随机数生成器的代码示例。 ... [详细]
  • 企业数据应用挑战及元数据管理的重要性
    本文主要介绍了企业在日常经营管理过程中面临的数据应用挑战,包括数据找不到、数据读不懂、数据不可信等问题。针对这些挑战,通过元数据管理可以实现数据的可见、可懂、可用,帮助业务快速获取所需数据。文章提出了“灵魂”三问——元数据是什么、有什么用、又该怎么管,强调了元数据管理在企业数据治理中的基础和前提作用。 ... [详细]
  • 本文介绍了前端人员必须知道的三个问题,即前端都做哪些事、前端都需要哪些技术,以及前端的发展阶段。初级阶段包括HTML、CSS、JavaScript和jQuery的基础知识。进阶阶段涵盖了面向对象编程、响应式设计、Ajax、HTML5等新兴技术。高级阶段包括架构基础、模块化开发、预编译和前沿规范等内容。此外,还介绍了一些后端服务,如Node.js。 ... [详细]
  • 本文介绍了在Linux中执行.sh脚本时出现/bin/sh^M: bad interpreter: No such file or directory异常的原因分析,并提供了两种解决方法:在Windows下进行编码格式转换,或在Linux中修改文件格式和执行权限。具体操作步骤也在摘要中给出。 ... [详细]
  • 本文介绍了常用的编辑器快捷键,包括快速转换编辑器、浏览选项卡、提取本地变量和方法、编辑器窗口最大化等功能。通过使用这些快捷键,可以提高编辑器的使用效率,减少复杂度,并提升代码的可测试性。 ... [详细]
author-avatar
jnto.
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有