Skip to content

dao3Cfg 配置属性

在配置文件 dao3.config.json 中,你可以设置编译和上传行为。下面是配置文件结构及各属性的详细说明。

配置示例

json
{
  "ArenaPro": {
    "npmPackage": null,
    "file": {
      "typescript": {
        "server": {
          "entry": "src/App.ts",
          "ECS": false,
          "development": true
        },
        "client": {
          "entry": "src/clientApp.ts",
          "ECS": false,
          "development": true
        },
        "developmentAll": null,
        "jsUpdate": true
      }
    },
    "outputAndUpdate": [
      "bundle.js",
      {
        "name": "bundle2.js",
        "serverEntry": "src/App.ts",
        "clientEntry": "src/clientApp.ts",
        "description": "第二个代码模块示例,可更改。"
      }
    ],
    "map": {
      "id": "",
      "editHash": "",
      "playHash": ""
    }
  }
}

属性说明

服务端配置

属性必填类型默认值说明
file.typescript.serverobjectArena服务端项目配置
file.typescript.server.entrystringApp.tsArena服务端项目入口文件
file.typescript.server.ECSbooleanfalseArena服务端项目是否开启 ECS 架构
file.typescript.server.developmentbooleantrue服务端项目编译模式,默认为开发模式,优先级低于 developmentAll

客户端配置

属性必填类型默认值说明
file.typescript.clientobjectArena客户端项目配置
file.typescript.client.entrystringclientApp.tsArena客户端项目入口文件
file.typescript.client.ECSbooleanfalseArena客户端项目是否开启 ECS 架构
file.typescript.client.developmentbooleantrue客户端项目编译模式,默认为开发模式,优先级低于 developmentAll

公共编译设置

属性必填类型默认值说明
file.typescript.developmentAllboolean | nullnull是否开启 webpack 打包创作者模式?开启后客户端服务端将不压缩不混淆代码。如是 null 将忽略本属性
file.typescript.jsUpdatebooleantrue是否编译脚本后自动上传至地图?关闭后只编译不上传

文件输出与上传

属性必填类型默认值说明
outputAndUpdateobject当前编译文件配置,默认选择第一位数据信息
outputAndUpdate.namestringbundle.js上传到神岛脚本编辑器的文件名称,必须带有.js后缀
outputAndUpdate.serverEntrystring上传到神岛脚本编辑器的服务端入口文件
outputAndUpdate.clientEntrystring上传到神岛脚本编辑器的客户端入口文件
outputAndUpdate.descriptionstring当前配置的备注,可以用于区分配置

地图信息

属性必填类型默认值说明
map.idstring""当前 Arena 项目对应的扩展地图 ID
map.editHashstring""当前 Arena 项目对应的扩展地图创作端 Hash
map.playHashstring""当前 Arena 项目对应的扩展地图游玩端 Hash

特殊配置

属性必填类型默认值说明
npmPackage"server" | "client"当前项目是否为神岛组件库(npm 包)?如是需写指定端名,会停止构建另一端以加快速度