Skip to content

v0.5.4 — 容器类板条箱生成修复 + 发布配置纠正

Choose a tag to compare

@High-cla High-cla released this 20 Sep 22:54
· 52 commits to master since this release

v0.5.4 — 容器类板条箱生成修复 + 发布配置纠正

修复

  • 容器类板条箱无法生成(PlayerStore/ProgressMod.cs):evidence_box / med_box / sec_box / service_box / eng_box 在 ContainerItemDirectory.InitDirectory 中以惰性 Func<GameItem> 工厂注册,静态物品表查不到,故 ItemSpawner.Spawn 必然拒绝、生成静默失败。现补 TrySpawnNativeLootCrate 直调 native PreBuiltItemHelper.LootCrate* 工厂(已确证存在于本机 Assembly-CSharp.dll)。此缺口源自本端口基于 ProbablyStolenItemManager v0.4.3,而 v0.4.7 新增了 TryCreateNativeLootCrate(ItemManager.cs:3681)。
  • 清理死代码:OnMachineProgressPatch.Prefix 中 int cur = ... 声明后从未使用(Debug 下会多一次无谓 IL2CPP interop 调用)。

发布配置纠正

v0.5.1–v0.5.3 的全部 release 资产均为默认 Debug 构建 —— 反编译证实带 AssemblyConfiguration("Debug") 与 DebuggableAttribute(DisableOptimizations | EnableEditAndContinue)。源码逻辑等价,但产物未优化、体积偏大、并会掩盖死码。本版起改用 -c Release,并同步修正 README 中过期的 AutoCommit 说明。

体积对照(Debug → Release):ProgressMod 73216 → 69120(含本次新增代码;同源 Release 基线 68608);InventorySorter 64512 → 57856;NetworkUnlockMod 8704 → 8704。

验证

  • 三个项目 dotnet build -c Release:0 警告 0 错误。
  • 反编译核验:AssemblyConfiguration("Release")、LootCrate* 符号齐备。
  • 注意:本次修复未做实机核验,实机表现以游戏内为准。