Appearance
配置信息
在「用 ArenaPro CLI 创建你的第一个项目」中,你已经完成了基础准备工作:
- 全局安装 CLI,并用
apc create创建了项目; - 通过
apc login/apc list/apc set绑定了一张扩展地图; - 在
.env中写入了必要的账号与地图信息。
本篇不再重复这些步骤,而是重点说明两件事:
.env里这些字段分别控制什么行为;dao3.config.ts中的 bundle 配置 如何决定「构建哪些脚本、上传到哪里」。
一、在 .env 中配置
脚手架通过环境变量把「账号信息」和「部署行为」注入到构建流程中。
本脚手架的 .env 中会包含以下这些变量(下面是一份示例注释版模板):
env
# ========================
# 构建与上传配置
# ========================
# 【目标构建模块】
# 指定要构建的 bundle 名称,对应 dao3.config.ts → bundles 的 key
# 留空:构建所有启用的 bundle(多入口模式)
# 示例:VITE_CURRENT_FILE=bundle
VITE_CURRENT_FILE=
# 【自动上传开关】
# 构建脚本完成后是否上传到神岛地图
# 可选值:true | false
VITE_UPDATE_FILE=true
# ========================
# 地图资源配置
# ========================
# 【UI节点过滤前缀】
# 按节点名前缀筛选 UI 元素,留空表示显示全部
# 示例:VITE_UI_INDEX_PREFIX=btn_ (仅显示 btn_ 开头的节点)
VITE_UI_INDEX_PREFIX=
# 【目标地图ID】
# 脚本要上传的目标地图ID,必须为「扩展地图」类型
VITE_DAO3_MAP_ID=1. VITE_CURRENT_FILE:当前构建 / 上传的 bundle 名
- 作用:告诉构建脚本「这次要上传的是哪一个 bundle」。
- 取值范围:必须是
dao3.config.ts -> bundles下的某个 key 或留空。
例如,上面示例中只有一个名为 bundle 的配置;此时在 .env 中可以设置:
env
VITE_CURRENT_FILE=bundle- 当
VITE_CURRENT_FILE留空时,脚手架会对dao3.config.ts中所有已启用的 bundle 进行多入口打包和监听,适合需要同时调试多套入口的场景。
2. VITE_UPDATE_FILE:是否在构建后自动上传脚本
作用:控制构建完成后,脚手架是否自动将构建结果上传到 Arena。
取值(布尔值):
envVITE_UPDATE_FILE=true # 构建后自动上传 VITE_UPDATE_FILE=false # 只本地构建,不上传
常见用法:
- 开发期 / 日常联调:设为
true,构建之后自动同步,减少手动步骤; - 特殊场景(只想看本地构建结果或调试 build pipeline):临时改成
false。
二、在 dao3.config.ts 中配置 bundle 信息
dao3.config.ts 决定了:
- 项目中有哪些 bundle;
- 每个 bundle 对应的 client/server 入口文件。
示例配置(TypeScript 版本):
ts
import type { IDao3Config } from "vite-plugin-arenapro-script";
export default {
bundles: {
bundle: {
client: { entry: "App.ts" },
server: { entry: "App.ts" },
enable: true,
},
},
} as IDao3Config;1. bundles:多入口 / 多模式脚本配置
bundles 是一个「名字 → 配置」的映射,每个 key 对应一个可独立构建和上传的 bundle。
- bundle 名(如
"bundle"):- 必须与
.env中的VITE_CURRENT_FILE一致;
- 必须与
client.entry/server.entry:- 分别指定客户端 / 服务端入口脚本文件名(相对于各自源码根目录);
当你有多个玩法或多张地图时,可以在 dao3.config.ts 中新增多个 bundle,例如:
ts
export default {
bundles: {
pve: {
client: { entry: "App.ts" },
server: { entry: "App.ts" },
enable: true,
},
pvp: {
client: { entry: "App2.ts" },
server: { entry: "App2.ts" },
enable: true,
},
},
} as IDao3Config;通过切换 .env 中的 VITE_CURRENT_FILE,可以在不同 bundle 之间切换构建 / 上传目标。