# 关卡编辑器

# 一、概述

关卡编辑器负责将其他编辑器制作的资源进行整合并实例化到地图(场景)中,其主要功能有:

  • 对地图(场景)的展示
  • 在场景中放置实例,包括对所有预设和实体的实例化放置
  • 实例的显示和坐标变换的调整
  • 实例的属性编辑
  • 配置的管理与编辑 level001

# 二、舞台面板

# 舞台区域

舞台面板中显示当前场景中存在的所有实例,舞台的每一个条目都一一对应了场景中的实例,如图所示:

level001

舞台面板分为预设实例和生物实体实例两个区域,如图所示:

当前在舞台中不支持挂接关系和顺序的调整。

level001

  1. 预设实例区域 存放了所有场景中的预设示例。 预设实例的父子关系通过左右层次和折叠展现出来,与预设编辑器的层次面板相同。

  2. 生物实体实例区域 存放了所有场景中的实体生物的实例(不包括实体预设所绑定的实体)。

关于生物实体实例区域和生物放置,请查看放置和管理生物,本文主要讲述预设实例区域的内容。

不同种类的实例使用不同的图标

level002

# 操作实例

你可以在舞台面板对所有实例条目进行操作:

  • 单击条目:在舞台和预览窗中同时选中这一条目,并且关卡编辑器的属性窗口也显示这一条目的属性,如图所示: choose_prefab

  • 双击条目:可在预览窗中聚焦该实例,如图所示: focus_prefab

  • 键入关键字并搜索,显示匹配的条目(包括这个条目的各级父节点),如图所示: serach_prefab

  • 右键舞台的预设条目(目前仅支持第一个层级的条目,不支持子条目),会出现如下的菜单:

    • 复制:复制这个条目的实例
    • 粘贴:在舞台中粘贴复制的实例
    • 创建副本:在舞台中创建这个实例的副本
    • 重命名:对这个实例进行重命名
    • 删除:删除这个实例
    • 在资源管理器中定位:资源管理器打开这个实例对应的预设的路径,并选中预设
    • 编辑对应预设:打开预设编辑器并编辑这个实例对应的预设

# 三、预览窗

预览窗是针对编辑器进行过特殊改动的《我的世界》游戏引擎,主要用于在编辑器中预览游戏场景和进行部分游戏地图的编辑,其中,关卡编辑器的预览窗与最终的游戏效果最为接近。 在预览窗中,你可以直观的查看和调整场景中的所有实例,并且可以和舞台、资源管理器中的预设文件进行一定交互。

  1. 为了区分预设实例和MC地图本身,所有的实例都会显示黄色的描边。
  2. 事实上,所有的实体都会显示描边,即使没有绑定预设。

# 调整实例的坐标变换

当在预览窗选中实例时,会显示这个实例的坐标变换拖柄,可以拖动拖柄对实例进行位置、旋转、缩放的调整。

温馨提示:预览窗右上角可以切换拖柄类型,同时也可以使用主键盘区的数字123键来切换变换拖柄的功能。

# 1:位置拖柄

位置拖柄的3个轴与预览窗右上角的轴向的方向相同。

使用鼠标拖拽某个箭头,可以让实例沿着这个方向移动。

移动的时候,你可以在属性面板中发现,这个实例的位置属性也在改变。

录制_2021_07_12_16_26_04_696

  1. 对于素材来说,由于MC的方块只能位于整数位置,所以,在移动停止的时候,素材的位置会自动取整。
  2. 如果一个空预设下,或者空预设的子预设下有挂接素材,那么这个空预设的位置也会取整。
  3. 上述取整的规则无论是坐标系拖拽还是在属性面板输入数值,都会生效。

level009

# 2:旋转拖柄

按2,切换到旋转拖柄,会显示3个扇环,拖拽扇环进行角度的修改。

level007

素材只能以90°作为步长旋转,如下图。

level010

# 3:缩放拖柄

按3,切换到缩放拖柄,拖拽缩放拖柄,来实现各个轴向的缩放。(目前还不支持通过拖柄进行整体缩放)。

level008

素材并不适合使用这种方式进行缩放,对于素材的缩放,您仍然可以使用类似地图编辑器的选区的方式。

注意:素材在编辑器中,当前任何情况下实际的缩放值都不会小于0.01。

level011

# 在场景中放置实例

实例只有放置在场景中才会生效。

当前有两种方式可以在场景中放置预设以生成实例。

# 1:资源管理器拖拽

资源管理器找到常用目录的Presets目录(或直接在精简模式打开预设菜单)。

将想要实例化的预设拖拽至场景中即可。

level012

# 2: 预设库拖拽

  • 预设库是一个展示当前作品中所有预设类型的面板。
  • 所有您创建的预设,以及编辑器内置的预设都可以在这个地方看到。
  • 如果你的关卡编辑器中没有显示预设库,你可以通过编辑器的顶部菜单-窗口-预设库,打开这一面板。
  • 预设库与舞台一样支持搜索功能。
  • 你可以通过下图的方式,直接将预设拖拽到场景中进行实例化。 level013

# 四、顶部工具栏

关卡编辑器顶部的工具栏目前支持10个功能,分别是:

  1. 撤销:移除上一次操作造成的影响,目前支持无限次的撤销,当切换编辑器后,不再记录之前的操作。
  2. 重做:重新进行上一次撤销的操作。
  3. 特效描边:开启或关闭特效贴图的外轮廓描边。
  4. 放置生物:在场景中放置实体生物,参考放置和管理生物
  5. 重载地图:重新启动编辑器内置的游戏引擎,在某些配置或素材无法生效时,可以尝试重载地图。
  6. 零件热更:当修改零件代码后,零件会自动热更,此按钮仅供自动热更由于某些原因不生效时使用。
  7. 反馈:当在编辑器遇到闪退、报错等bug时,可随时通过反馈按钮前往开发者反馈页面向我们反馈。
  8. 保存:保存当前的地图和预设存档。由于保存地图的时间较长,所以仅当需要保存地图时才会保存地图。
  9. 备份:在启动器的作品库中生成一份当前作品的拷贝。
  10. 运行:保存所有编辑器的内容,并进行测试。

在编辑器保存时,玩家预设的实例不会保存在预设存档中,如果需要修改,请在预设编辑器中直接修改玩家预设。

level014

# 五、配置面板

# 1.简介

配置面板展示了当前作品中创建的所有自定义配置,提供了类型分页排序规则搜索三种方式帮助开发者快速定位需要的配置。 level014

# 2. 编辑属性

在配置面板选中任意配置,可在属性面板查看和编辑该配置的属性,修改属性的本质就是修改对应的Json字段。 level014

面对过多的属性时,可以通过搜索和左侧的筛选器快速定位自己所需的属性,如下图: level014

# 3.配置右键菜单

右键任意配置,提供了如下功能:

  1. 删除:删除当前配置。

  2. 复制配置:复制当前配置的内容,并且自动修改标识符。

  3. 创建预设:为所选的配置创建预设,当前仅支持实体、方块。

  4. 放置生物:仅支持实体配置开启放置生物功能,可在预览窗中点击放置对应实体。

  5. 新建配置:打开新建文件向导,并选中对应类型的配置,快速新建同类型的配置。 level014

  6. 预览设置:设置快捷预览的相关属性。

# 4.快捷预览

在2023.04.06版本更新后,新增了部分配置的快捷预览功能,点击配置条目右侧的快捷按钮,快速帮你在ModPC开发包中预览相关的配置效果:

  1. 生成对应物品到背包:对于实体物品方块配方附魔5种配置,点击快捷预览按钮,会将对应的物品生成到玩家的背包,供开发者快速测试对应内容;

level014

  1. 新建地图存档,并传送至该维度:对于自定义维度配置,点击快捷预览按钮,会创建一个新的地图存档并加载,加载完成后传送至对应的维度,供开发者测试对应的维度内容;

level014

  1. 重载UI:对于物品分页物品分组成就等UI类的配置,点击快捷预览按钮,会在ModPC开发包重载对应的UI界面,供开发者测试对应内容;

level014

  1. 添加效果:对于状态效果配置,点击快捷预览按钮,会在ModPC开发包中直接对玩家添加对应的状态效果,供开发者测试对应内容;

level014

  1. 预览提示:对于其他无法直接预览的配置,会提供对应的提示,指引开发者通过其他方式进行测试;

level014

# 5.配置数据模板导出与导入

当开发者希望将已有的配置属性进行迁移和复用时,可以通过数据模板导出和导入功能,将配置的配套文件一键迁移至其他作品进行应用,详情参考这篇文档

# 六、如何处理旧版编辑器中的组件?

  1. 新版编辑器目前不再支持旧版组件的属性编辑(你可以看到关卡编辑器中已经没有组件面板了)。

  2. 使用组件的旧版作品在升级到新版编辑器之后,其组件的逻辑仍然是生效的,但编辑器不再支持继续编辑组件内容。

  3. 我们会逐渐使用预设架构和配置代替当前的组件,如下:

# 自动转化为配置的组件

  • 生物
  • 物品 - 普通物品
  • 物品 - 武器和工具
  • 物品 - 盔甲
  • 方块
  • 配方
  • 特征
  • 特征分布规则
  • 维度
  • 生物生成规则
  • 生物群系
  • 交易表
  • 掉落表

# 删除并替换为零件的组件

  • 世界 - 基础属性,建议删除行为包目录下的script_World文件夹,并使用WorldPart零件替换。
  • 玩家 - 基础属性,建议删除行为包目录下的script_Player文件夹,并使用PlayerBasicPart零件替换。
  • 自定义传送门,建议删除行为包目录下的script_PortalGate文件夹,并使用PortalImpPart零件替换。
  • 按键绑定:建议删除行为包目录下的script_InputBind文件夹,并使用InputBind零件替换。
  • 队伍:建议使用内容库中的队伍零件进行替换。
  • 初始物品:建议使用内容库中的初始物品零件进行替换。
  • 初始装备:建议使用内容库中的初始装备零件进行替换。
  • 有限复活:建议使用内容库中的有限复活零件进行替换。
  • 技能:建议使用内容库中的技能零件进行替换。
  • 个人排行榜:建议使用内容库中的排行榜零件进行替换。
  • 货币:建议使用内容库中的货币零件进行替换。
  • 对话:建议使用内容库中的任务与对话零件进行替换。
  • 任务:建议使用内容库中的任务与对话零件进行替换。
  • 塔防大本营:建议使用内容库中的初始装备零件进行替换。
  • 攻击手:建议使用内容库中的生物警卫零件进行替换。
  • 生物点:建议使用内容库中的刷怪点零件进行替换。
  • 巡逻路径:建议使用内容库中的生物巡逻零件进行替换。
  • 开始游戏:建议使用内容库中的开始游戏零件进行替换。
  • 结束游戏:建议使用内容库中的结束游戏零件进行替换。
  1. 如需进行升级和替换,请尽量在刚升级作品后立即进行替换。
  2. 创建新零件时,会在第一个script_xxx目录下生成零件文件的链接。如果在这之后想要删除组件文件夹,可以先通过新建文件向导创建一个ModMain,然后把Parts目录移动到新创建的script_xxx中,然后再删除需要删除的路径。
  3. 其他组件我们会在后续的更新中逐步支持。

https://mc.res.netease.com/pc/zt/20201109161633/mc-dev/assets/img/level001.3939b19d.png

入门

30分钟

true

一、概述

二、舞台面板

舞台区域

操作实例

三、预览窗

调整实例的坐标变换

在场景中放置实例

四、顶部工具栏

五、配置面板

六、如何处理旧版编辑器中的组件?

自动转化为配置的组件

删除并替换为零件的组件