diff --git a/3DTank/Start-LocalAndRelay.ps1 b/3DTank/Start-LocalAndRelay.ps1 index 501ab6a..206f103 100644 --- a/3DTank/Start-LocalAndRelay.ps1 +++ b/3DTank/Start-LocalAndRelay.ps1 @@ -32,12 +32,12 @@ .\Start-LocalAndRelay.ps1 -SRV 2 -OpenBrowser .EXAMPLE - // 默认直接跑 3DTank/src 源码;改了 src 之后强制重打单包再起 - .\Start-LocalAndRelay.ps1 -Build -OpenBrowser + // 默认用切割产物 unpacked;启动时按需打单包(-Build 强制重打) + .\Start-LocalAndRelay.ps1 -OpenBrowser .EXAMPLE - // 回到切割产物(3dtank.com/play/static/js/unpacked) - .\Start-LocalAndRelay.ps1 -Split -OpenBrowser + // 改用反编译源码 3DTank/src(改完刷新即生效) + .\Start-LocalAndRelay.ps1 -UseSrc -OpenBrowser #> # 注意:这里刻意不用 [CmdletBinding()]。 # PowerShell 原生不支持 -SRV=1 这种等号写法(会报 "parameter cannot be found"), @@ -59,8 +59,9 @@ param( [switch]$NoHex, # 中继:log.txt 不写十六进制(日志体积大幅减小) [switch]$Quiet, # 中继:只写 log.txt,不刷控制台 [switch]$NoTunnel, # 中继:关闭 _reconnectFast 隧道接管(默认开启:战场连接也走中继) - [switch]$Build, # 强制重打单包(src 模式默认只在缺失/源码更新时打包) - [switch]$Split # 改回用切割产物 unpacked,而不是 3DTank/src 源码 + [switch]$Build, # 强制重打单包(默认只在缺失/模块更新时打包) + [switch]$UseSrc, # 可选:改用反编译源码 3DTank/src;默认仍用切割产物 unpacked + [switch]$Split # 兼容旧参数:默认就是 unpacked,此开关等同默认 ) $ErrorActionPreference = 'Stop' @@ -169,18 +170,18 @@ if ($FetchAssets) { } # ---------- 3.5) 模块来源与单包 ---------- -# 默认:直接跑反编译源码 3DTank/src(改完代码刷新即生效),启动时按需打单包保证加载速度 -# -Build:强制重打单包 -# -Split:改回切割产物 3dtank.com/play/static/js/unpacked -$UseSrc = -not $Split +# 默认:用切割产物 3dtank.com/play/static/js/unpacked(保持原有行为) +# -UseSrc:改用反编译源码 3DTank/src(改完代码刷新即生效) +# -Build :强制重打单包 $SrcDir = Join-Path $Project 'src' $RootDir = Split-Path -Parent $Project $PackScript = Join-Path $RootDir 'tools\pack_unpacked.js' if (-not (Test-Path $PackScript)) { throw ('找不到打包脚本: ' + $PackScript) } +if ($Split) { $UseSrc = $false } if ($UseSrc) { if (-not (Test-Path $SrcDir)) { - throw ('找不到源码目录 ' + $SrcDir + ',请先运行 3DTank/tools/extract.js 生成,或加 -Split 用切割产物') + throw ('找不到源码目录 ' + $SrcDir + ',请先运行 3DTank/tools/extract.js 生成;或去掉 -UseSrc 用切割产物') } $PackDir = $SrcDir $PackFile = Join-Path $SrcDir 'unpacked.pack.json' diff --git a/3DTank/docs/KtRebuild_Plan.md b/3DTank/docs/KtRebuild_Plan.md index 9b4fc53..1ded789 100644 --- a/3DTank/docs/KtRebuild_Plan.md +++ b/3DTank/docs/KtRebuild_Plan.md @@ -216,21 +216,23 @@ KT/ ## 8. 产出"可启动 JS"的端到端流程 -### 8.1 运行时模块来源(src 模式,默认) +### 8.1 运行时模块来源 -`Start-LocalAndRelay.ps1` 默认直接加载 **`3DTank/src`**(反编译源码),改完代码刷新即生效: +默认:**`3dtank.com/play/static/js/unpacked`**(切割产物,含 4 个模块的人工补丁)。 +可选:`-UseSrc` 改用 `3DTank/src`(纯净还原;人工补丁需先移植过去)。 | 行为 | 说明 | |---|---| -| 启动时打包 | 单包缺失、或 `src/module_*.js` 比单包新 → 自动跑 `pack_unpacked.js` | +| 启动时打包 | 单包缺失、或所选目录的 `module_*.js` 比单包新 → 自动跑 `pack_unpacked.js` | | `-Build` | 强制重打单包 | -| `-Split` | 回到切割产物 `3dtank.com/play/static/js/unpacked` | -| 路由 | `serve.js --src <目录>`:`unpacked/module_*.js`、`unpacked/resources.json`、`unpacked/index.json`、`unpacked.pack.json` → src 目录 | +| `-UseSrc` | 改用 `3DTank/src`(`-Split` 为兼容旧参数,等同默认) | +| 路由 | `serve.js --src <目录>`:仅 `-UseSrc` 时传入;`unpacked/module_*.js`、`resources.json`、`index.json`、`unpacked.pack.json` → 源码目录 | | 仍取镜像 | 加载器 `main..js`、`unpacked/hornet_bundle.js`(HORNET 工具链) | -打包命令: +打包命令(按来源目录二选一): ```bash +node tools/pack_unpacked.js 3dtank.com/play/static/js/unpacked 3dtank.com/play/static/js/unpacked.pack.json node tools/pack_unpacked.js 3DTank/src 3DTank/src/unpacked.pack.json ```