You are viewing a potentially older version of this package. View all versions.
un1eagle-BattlefieldAnalysisBaseDeliver-4.0.2 icon

BattlefieldAnalysisBaseDeliver

Battlefield base delivers to mech, courier, and towers. Auto space warpers to ILS when stocked; pull from supply dispenser to input. 战场分析基站向机甲/物流塔/配送器配送;有库存时自动送翘曲器、从配送器拉货到输入区。

Date uploaded 5 months ago
Version 4.0.2
Download link un1eagle-BattlefieldAnalysisBaseDeliver-4.0.2.zip
Downloads 898
Dependency string un1eagle-BattlefieldAnalysisBaseDeliver-4.0.2

README

戴森球计划 - 战场分析基站配送支持 Mod

简介

本 Mod 让战场分析基站能够直接派遣无人机

  • 机甲物流配送器物流塔配送战利品,实现全自动化战利品物流;
    • 优先级: 机甲 -> 配送器 -> 物流塔
  • 并且在有库存的时候给星际物流塔自动送空间翘曲器;
  • 从供应物流配送器取货放入设定了物品的输入区。
  • 可配置的基站 stack size 修改以及可配置的配送无人机数量,速度和运载量以提供足够的吞吐量;
  • 优化基站的游戏原本拾取逻辑,避免还有需求的掉落物品由于时间到期而来不及拾取的问题;

✨ 核心特性

  • 🚀 战场基站直接派遣:每个基站拥有独立的 20 个 2 倍速无人机(可配置)
  • 📦 智能优先级调度:优先配送给库存紧急的配送器
  • ✈️ 完整的飞行动画:无人机可见,视觉效果完整
  • 💾 存档安全:自动兼容旧版本,支持无缝升级
  • 🎯 零性能损耗:基于事件驱动,只在需要时工作
  • 🔧 零 UI 干扰:不修改任何 UI,不影响游戏体验

This mod enables Battlefield Analysis Bases to

  • dispatch drones to deliver loot to the Mecha, Logistic Dispensers, and Logistic Stations, automating loot logistics.
  • automatically delivers Space Warpers to interstellar logistics stations when the base has them in stock.
  • retrieve from Logistic Dispensers which supplies the specified object in input area of BAB.

安装

  1. 确保已安装 BepInEx 5.x (x64)
  2. BattlefieldAnalysisBaseDeliver.dll 放入 BepInEx\plugins\ 文件夹
  3. 启动游戏

配置选项

BepInEx\config\com.yourname.battlefieldanalysisbasedeliver.cfg 中:

[General]
## 启用调试日志(排查问题时使用)
EnableDebugLog = false

开发和调试

查看日志

日志位置:BepInEx\LogOutput.log

启用调试日志:

[General]
EnableDebugLog = true

调试日志会输出:

  • 🚀 无人机派遣信息
  • 📬 送货成功信息
  • 🏠 无人机返回信息
  • 💾 存档操作信息

构建

dotnet build -c Release

输出:bin\Release\net472\BattlefieldAnalysisBaseDeliver.dll

反编译工具

  • dnSpy:反编译游戏源代码

反编译目标:DSPGAME_Data\Managed\Assembly-CSharp.dll


如遇到问题,请:

  1. 启用 EnableDebugLog = true
  2. 查看 BepInEx\LogOutput.log
  3. 提交 Issue 并附上日志

CHANGELOG

Changelog

[4.0.2] - 2026-03-14

Added

  • 新增配置 BattleBasePickupPartitionStackSize:默认 2000,用于统一设置基站拾取分区(输出分区)槽位 stackSize;设为 0 时不修改原值。
  • 新增配置 BattleBaseCourierCarryCapacity:默认 100,用于控制基站无人机单次运载量(送货与拉货逻辑统一使用)。

Changed

  • AutoPickTrash 相关补丁改为在原版逻辑上增强:部分拾取后延长掉落寿命,且剩余寿命封顶为 60 秒,避免无限叠加。
  • 修改送货优先级:机甲 -> 配送器 -> 物流塔 -> 取货

[4.0.0] - 2026-03-09

Added

  • 基站从供应配送器拉货到输入区:当基站输入分区某格设置了物品(如信号塔)且未满时,自动派无人机到供应该物品的配送器取货,并放入基站输入区(与爪子放入行为一致)。
  • 在途数量:基站侧按 (基站, 物品) 维护拉货在途数量,生成需求时扣减,避免重复过量取货;供应端使用游戏原有 storageOrdered(派遣时 -= 预留量,取货失败或差额时回退),供应配送器 UI 会显示「-xx 待取货」,游戏自有供需匹配会识别预留而不重复分配。

Changed

  • 派遣优先级:机甲 > 物流塔 > 需求配送器 > 拉货。

[3.1.8] - 2026-03-08

Fixed

  • 物流塔翘曲器在途显示错误:修复基站向物流塔翘曲器小格送货时,翘曲器普通槽位 localOrder 被误扣导致显示「-50」「-52」等负数在途的问题。原因:到达/返还/存档时无法区分无人机目标是普通槽位还是翘曲器小格,一律执行了 localOrder -= amount,而派遣时翘曲器小格并未增加过 localOrder。现改为用不同 endId 编码(普通槽位 20000+、翘曲器小格 30000+)区分两类目标,仅对普通槽位维护 localOrder

Changed

  • 配送器送货目标错误:修复向需求配送器送货时物品被放入错误箱子的问题。原因:InsertIntoStorage 第一个参数应为箱子的实体 ID (entityId),之前误传了 storage 池的 id,导致游戏按错误实体查找存储链。现改为使用 dispenser.storage.bottomStorage.entityId,物品只会进入该配送器连接的箱堆。

Added

  • 物流塔普通槽位在途数量显示:基站向物流塔本地需求槽位送货时,与原生逻辑一致维护目标槽位的 localOrder(派遣时 +、到达/返还/存档时 -),点击物流塔打开的详情界面会正确显示「在途 +xxx」,与物流无人机/飞船送货时的显示一致。翘曲器小存储点不在此列。

[3.1.5] - 2026-03-08

Changed

  • 配送器需求判断:取消 80% 限制,改为「只有当前库存 + 在途已满(连接箱堆无空位)才跳过」,未满则持续配送。
  • 配送器库存/容量:按整条箱堆链统计(支持配送器下方 1 到多个堆叠箱子),避免多箱时只算最底一箱导致误判已满。
  • 在途数量:配送器「是否已满」与紧急度排序均考虑在途数量(storageOrdered),减少过量派遣;物流塔沿用原有「当前 + localOrder」逻辑。

[3.1.4] - 2026-02-15

Changed

  • 打包 zip 包含根目录 CHANGELOG.md,Thunderstore 可显示更新说明。

[3.1.3] - 2026-02-15

Added

  • 配送器在途数量显示:基站向配送器/机甲送货时,与原生逻辑一致维护目标配送器的 storageOrdered(派遣时 +、送达/存档时 -),点击配送器打开的详情界面会正确显示「即将收到」的在途数量。
  • 机甲配送槽位在途数量显示:基站向机甲配送栏送货时,与原生逻辑一致维护 deliveryPackage.grids[slot].ordered(派遣时 +、到达/存档时 -),配送栏 UI 会正确显示即将送达数量。