50 lines
1.8 KiB
Markdown
50 lines
1.8 KiB
Markdown
# HybridCLR Phase 1
|
|
|
|
## Scope
|
|
|
|
This phase only adds the hot-update foundation. It must not move turn actions, AI, network sync, MapData, replay, save compatibility, MemoryPack, Steam lobby/P2P, Workshop, or backend auth into hotfix assemblies.
|
|
|
|
## Added Layout
|
|
|
|
- `Assets/Scripts/TH1_Hotfix/TH1.Hotfix.asmdef`: first hot-update assembly.
|
|
- `Assets/Scripts/TH1_Hotfix/HotfixEntry.cs`: smoke-test hotfix entry.
|
|
- `Assets/Scripts/TH1_Logic/Hotfix/HotfixBootstrap.cs`: AOT-side loader.
|
|
- `Assets/Scripts/TH1_Logic/Editor/HybridCLR/TH1HybridCLRBuildTools.cs`: TH1 menu shortcuts.
|
|
|
|
Runtime artifact layout:
|
|
|
|
```text
|
|
Assets/StreamingAssets/HybridCLR/
|
|
HotfixDlls/
|
|
TH1.Hotfix.dll.bytes
|
|
AOTAssemblies/
|
|
mscorlib.dll.bytes
|
|
System.dll.bytes
|
|
System.Core.dll.bytes
|
|
```
|
|
|
|
The loader silently skips when `TH1.Hotfix.dll.bytes` is missing, so the Steam/editor flow can still run without any hotfix package.
|
|
|
|
## First Local Verification
|
|
|
|
1. Let Unity resolve `com.code-philosophy.hybridclr`.
|
|
2. Run `HybridCLR/Installer...`.
|
|
3. Run `Tools/TH1/iOS Migration/HybridCLR/2. Configure TH1 Hotfix Settings`.
|
|
4. Run `Tools/TH1/iOS Migration/HybridCLR/3. Generate All`.
|
|
5. Run `Tools/TH1/iOS Migration/HybridCLR/4. Compile Hotfix Dll`.
|
|
6. Run `Tools/TH1/iOS Migration/HybridCLR/5. Copy Hotfix Artifacts To StreamingAssets`.
|
|
7. Run `Tools/TH1/iOS Migration/HybridCLR/6. Test Load StreamingAssets Hotfix In Editor`.
|
|
|
|
Expected editor console smoke output:
|
|
|
|
```text
|
|
[TH1.Hotfix] Initialize version 0.1.0
|
|
[TH1.Hotfix] Loaded TH1.Hotfix, ...
|
|
```
|
|
|
|
## Next Boundaries
|
|
|
|
- Keep first hotfix content limited to UI presentation helpers, non-networked fixes, and feature flags.
|
|
- Do not add Steamworks references to `TH1.Hotfix`.
|
|
- Do not use hotfix as a way to bypass App Store review. Prefer resources/config for content updates and reserve code hotfix for cautious compatibility fixes.
|