ControlPanelPlus
Quality-of-life upgrades for the logistics control panel: expand/collapse, starmap locate, station copy/paste with per-slot gates, filter intersection, remote item transfer, storage shortcuts and astro list sorting.
| Date uploaded | 5 days ago |
| Version | 1.0.0 |
| Download link | TTenYX-ControlPanelPlus-1.0.0.zip |
| Downloads | 226 |
| Dependency string | TTenYX-ControlPanelPlus-1.0.0 |
This mod requires the following mods to function
README
ControlPanelPlus — 物流总控面板优化
给游戏自带的物流总控面板(默认 I 打开)增加 8 组功能:展开/折叠策略、星图定位、物流塔设置复制粘贴、筛选交集、位置下拉框排序与热键、筛选快捷操作、非本地星球取放物品、存储模式鼠标快捷键。
需要 BepInEx 5.4.17+。把 ControlPanelPlus.dll 放到 BepInEx/plugins/ControlPanelPlus/ 即可;配置写入 BepInEx/config/com.dsp.controlpanelplus.cfg,也可以装 BepInEx.ConfigurationManager 在游戏实时内调整。
界面文字跟随游戏语言:中文游戏显示中文,其他语言显示英文;配置文件说明为中英并列,本 README 提供中英文两版。
功能
F1 星球条目默认展开 / 折叠 + 顶部按钮
- 多星球结果(查看全星区,或某星系里有多个已建物流设施的星球)→ 打开面板或切换筛选后,所有星球条目默认折叠,仅展示满足条件的每个星球。
- 单星球结果(筛选到某个星球,或某星系只有 1 个星球满足条件)→ 该星球条目默认展开。
- 以上折叠展开默认只在切换筛选 / 打开面板时套用,建塔、拆塔等列表刷新不会重置手动展开的状态。
- 重新打开面板会保留上次的展开/折叠状态,优先级高于两个默认开关;状态仍写入游戏自己的
astroExpands(随存档保存)。 - 标题栏右上角有一个 全部展开 / 全部折叠 切换按钮,实现快速展开/折叠当前界面中所有星球的设施。
F2 星图定位按钮
每个星球条目的导航按钮左侧新增一个「定位」文字按钮(英文界面显示 Locate)。
鼠标悬浮会弹出提示浮窗(固定三行,宽度随语言自适应),浮窗里列出三种点击方式:
- 左键:打开星图并保留总控面板(看完返回时仍是原来的筛选/展开状态);
- 右键:打开星图并关闭总控面板;
- Shift+右键:打开星图、关闭总控面板,并把导航线指向该星球。
F3 物流塔设置批量复制粘贴
在总控面板中选中一个物流塔后:
| 按键 | 行为 |
|---|---|
<(逗号,可配置) |
复制当前选中物流塔的设置 |
>(句号,可配置) |
粘贴到当前选中的物流塔,可以搭配多选实现批量粘贴 |
Ctrl + 点击条目 |
多选/取消多选(选中的条目会高亮) |
Shift + 点击条目 |
以当前选中条目为起点,批量选中两者之间的所有物流塔(可跨星球) |
Shift + > |
批量粘贴到当前星球上槽位设置完全相同的所有物流塔 |
普通左键点击会清空多选;切换筛选或关闭面板也会自动清空。
复制内容分三块,各自独立开关(默认全开):
- 槽位设置:每个槽位的物品种类、数量上限、供需关系;运输机/运输船自动填充开关。
- 塔设置:充电功率、运输机路程、运输船路程、曲速路程、起送量(%)、集装数量、轨道采集器、翘曲器必备。
- 优先级设置:塔名(仅点对点生效时)、星际航路优先级、分组、槽位优先级锁。
第一块与第二块还提供逐项开关:Slot1–Slot5 可单独控制粘贴时是否写入对应槽位,9 个 Set* 开关分别控制塔的每个设置项。
默认全开,关闭后粘贴不会覆盖该项。
安全约定:默认只改设置,不搬运物品、不清空库存——目标槽位已有别种物品且数量 > 0 时跳过该槽位;槽位数不足时只处理能对上的部分;大型采矿机 / 轨道采集器默认按缩减范围处理(只复制上限与供需,不复制物品种类);配送物流、地图标记条目上按 </> 无任何效果。
三个可选的粘贴策略(默认均关闭):
- 强制粘贴(
StationCopy/ForcePaste):目标槽位已有其他物品时直接覆盖,替换发生在原槽位(物流塔输入/输出口的槽位绑定保持不变);被替换的物品默认取回背包。 - 直接销毁(
StationCopy/DestroyReplacedItems):强制粘贴覆盖槽位或远程清空有物品的槽位时,直接销毁原有物品,而不是取回背包。 - 采矿机溢出(
StationCopy/AllowMinerOverflow):大型采矿机 / 轨道采集器保留来源塔的原始槽位上限(不再缩减到目标塔容量),即允许物品溢出。
F4 物品筛选并集 → 交集
原版物品筛选是并集(选 A+B 显示含 A 或 含 B 的条目)。打开开关后改为交集(只显示同时含 A 且 含 B 的条目),切换后列表立即刷新,默认关闭。
标题栏右上角有 「筛选:并集 / 筛选:交集」 按钮,点击即切换。
F5 位置下拉框排序 / 热键
- 按星系名称排序(默认开启):前两项「查看全星系 / 查看当前星球」固定不动,其余按星系名排序,星球跟随其星系。
- 「当前星系」范围:下拉框第三项新增「当前星系」,选中后只看当前所在星系的所有星球。
- 星系/星球区分:星系名黄色、星球名缩进两格(与 StatsUITweaks 观感一致,随排序开关生效)。
- 热键(仅总控面板打开、且没有输入框聚焦时生效):
PageUp/PageDown:位置下拉框上/下一项;按住Ctrl只跳星系;这种方式会遍历每一个星球/星系,不论是否有满足条件的条目,不会自动跳过没有匹配条目的星球/星系←/→:切换到上一个 / 下一个星球的第一个条目;条目类型跟随顶部标签页,自动跳过没有匹配条目的星球/星系;↑/↓:在当前列表里逐条切换选择;- 以上三条的快捷键切换条目均会到首/末条时跨星球首尾循环;
- 与 UXAssist 共存:鼠标停在物流塔的存储槽位区域时,方向键优先实现 UXAssist 的存储容量控制;离开槽位后由本 MOD 移动选择。
F6 物品筛选快捷
- 打开面板自动筛选:打开总控面板时,自动把鼠标指向的物品设为物品筛选。
- 右键替换筛选:在总控面板里右键条目中的物品图标,把物品筛选替换为该物品,会清空原筛选。
- Shift+右键追加筛选:在现有筛选上追加该物品(最多 5 个,超出时移除最旧的)。
F7 存储模式鼠标快捷键
在总控面板右侧物流塔存储行上:
| 鼠标 | 行为 |
|---|---|
| 右键点击 | 供/需切换(供应 ↔ 需求;无 → 供应) |
| 中键点击 | 无/需切换(无 ↔ 需求;供应 → 无) |
命中区域与 UITweaks 相同(本地/远程供需按钮);若已安装 UITweaks,则以 UITweaks 为准,本功能自动停用。
F8 非本地星球取放物品
默认关闭(Station/AllowRemoteItemTransfer)。开启后可以在总控面板上直接从非本地星球的物流设施中取放物品:右键长按槽位图标拿取、手持同种物品左键放入、清空按钮取回。
优先级低于 CheatEnabler:检测到 CheatEnabler 时本功能不生效。
配置
配置文件:BepInEx/config/com.dsp.controlpanelplus.cfg,修改后重启游戏生效
建议搭配MOD ConfigurationManager 使用,在游戏内实时修改生效
| 配置 | 默认 | 说明 |
|---|---|---|
General/Enabled |
true | 总开关 |
Expand/CollapseAllDefaultMulti |
true | 多星球结果默认折叠 |
Expand/ExpandDefaultSingle |
true | 单星球结果默认展开 |
Locate/EnableStarmapButton |
true | 星球条目「定位」按钮 |
Station/AllowRemoteItemTransfer |
false | 允许从非本地星球取放物品(CheatEnabler 优先) |
StationCopy/ForcePaste |
false | 强制粘贴:覆盖已有其他物品的槽位(原槽位绑定保持) |
StationCopy/DestroyReplacedItems |
false | 强制粘贴/远程清空时直接销毁被替换物品 |
StationCopy/AllowMinerOverflow |
false | 大型采矿机/轨道采集器保留原上限并允许溢出 |
StationCopy/CopyKey |
Comma | 复制键(<) |
StationCopy/PasteKey |
Period | 粘贴键(>) |
StationCopy/EnableSlots |
true | 复制/粘贴第一块:槽位设置 |
StationCopy/Slot1 … Slot5 |
true | 粘贴时是否写入第 1–5 槽位(可单独关闭以保护该槽位) |
StationCopy/EnableSettings |
true | 复制/粘贴第二块:塔设置 |
StationCopy/SetChargePower |
true | 粘贴充电功率 |
StationCopy/SetTripDrones / SetTripShips |
true | 粘贴物流运输机/运输船航程 |
StationCopy/SetWarpDistance |
true | 粘贴曲速启用距离(星际站) |
StationCopy/SetWarperNecessary |
true | 粘贴「翘曲器必备」开关(星际站) |
StationCopy/SetOrbitCollector |
true | 粘贴「包含轨道采集器」开关(星际站) |
StationCopy/SetDeliveryDrones / SetDeliveryShips |
true | 粘贴配送运输机/运输船数量 |
StationCopy/SetPilerCount |
true | 粘贴集装数量 |
StationCopy/EnablePriority |
true | 复制/粘贴第三块:优先级设置 |
Filter/ItemFilterIntersect |
false | 物品筛选交集模式 |
AstroList/SortByName |
true | 星系名称排序 |
Hotkeys/ListUp / ListDown |
PageUp / PageDown | 下拉框切换热键 |
鸣谢
- UXAssist(soarqin):物流控制面板的鼠标交互与「鼠标指向物品自动筛选」的判定思路、存储容量方向键的共存判定。
- CheatEnabler(soarqin):Architect 模式下「非本地星球取放物品」的实现思路(本 MOD 用临时
isLocal覆盖复用原版逻辑)。 - UITweaks(starfi5h):物流塔存储行的右键/中键供需切换功能(本 MOD 按其命中区域与优先级实现)。
- StatsUITweaks(starfi5h):位置下拉框的星系/星球区分(颜色 + 缩进)与按名称排序思路。
English
ControlPanelPlus is a BepInEx 5 plugin for Dyson Sphere Program 0.10.35 that upgrades the built-in logistics control panel (opened with I).
Requirements: BepInEx 5.4.17+. Drop ControlPanelPlus.dll into BepInEx/plugins/ControlPanelPlus/; configuration lives in BepInEx/config/com.dsp.controlpanelplus.cfg (or use BepInEx.ConfigurationManager in game).
In-game text follows the game language (Chinese, otherwise English); configuration descriptions are bilingual and this README has both Chinese and English sections.
Features
- F1 Expand / collapse — Multi-planet results collapse by default, single-planet results expand by default; a title-bar toggle button switches all rows; reopening the panel keeps the previous state (stored in the game's
astroExpands). - F2 Locate button — A small "Locate" text button left of each planet row's navigation button (the label follows the game language); hovering it shows a three-line tooltip (width adapts to the language) with the three click modes. Left click opens the star map and keeps the panel; right click closes the panel; Shift+right click also points the navigation line at the planet.
- F3 Copy / paste station settings —
<copies the selected station,>pastes.Ctrl+click multi-selects,Shift+click selects a range (across planets),Shift+>batch-pastes onto all stations on the current planet with identical slot layout. Data is split into three independently switchable blocks (slots, station settings, priority), and the first two blocks have per-item switches (Slot1–Slot5, nineSet*toggles). By default it never moves items or clears inventories; incompatible occupied slots are skipped. Optional strategies (all off by default):ForcePasteoverwrites a slot that holds a different item in place (keeping the station's input/output slot binding; replaced items go back to the player),DestroyReplacedItemsdestroys those items instead (also for clearing remote slots), andAllowMinerOverflowkeeps the original slot max for vein collectors / orbital collectors and allows overflow. - F4 Item filter intersection — Turns the vanilla union filter into an intersection; a title-bar button toggles it instantly.
- F5 Astro list sorting / hotkeys — Sorts the location dropdown by star name (first two entries pinned), adds a "current star system" scope as the third entry, stars yellow and planets indented;
PageUp/PageDownstep the list (Ctrl = stars only),←/→jump to the previous/next planet,↑/↓step through the result list. - F6 Filter shortcuts — Auto-filters by the item under the mouse when the panel opens; right-click a station item icon to replace the filter,
Shift+right-click to append (max 5). - F7 Storage mode mouse shortcuts — On station storage rows: right-click toggles Supply ↔ Demand, middle-click toggles None ↔ Demand. UITweaks takes precedence when installed.
- F8 Remote item transfer — Off by default (
Station/AllowRemoteItemTransfer); when enabled, items can be taken from / placed into stations on other planets. CheatEnabler takes precedence when installed.
Configuration
| Key | Default | Description |
|---|---|---|
General/Enabled |
true | Master switch |
Expand/CollapseAllDefaultMulti |
true | Collapse by default for multi-planet results |
Expand/ExpandDefaultSingle |
true | Expand by default for a single planet |
Locate/EnableStarmapButton |
true | Show the locate button on planet rows |
Station/AllowRemoteItemTransfer |
false | Allow remote item transfer (CheatEnabler wins) |
StationCopy/CopyKey / PasteKey |
Comma / Period | Copy / paste keys |
StationCopy/EnableSlots |
true | Block 1: slot settings |
StationCopy/Slot1 … Slot5 |
true | Paste gate for slot 1–5 |
StationCopy/ForcePaste |
false | Force paste: overwrite slots holding another item |
StationCopy/DestroyReplacedItems |
false | Destroy replaced items instead of returning them |
StationCopy/AllowMinerOverflow |
false | Keep the original max on miners/collectors and allow overflow |
StationCopy/EnableSettings |
true | Block 2: station settings |
StationCopy/SetChargePower |
true | Paste charging power |
StationCopy/SetTripDrones / SetTripShips |
true | Paste drone / ship trip range |
StationCopy/SetWarpDistance |
true | Paste warp distance (stellar) |
StationCopy/SetWarperNecessary |
true | Paste "warper required" (stellar) |
StationCopy/SetOrbitCollector |
true | Paste "include orbital collectors" (stellar) |
StationCopy/SetDeliveryDrones / SetDeliveryShips |
true | Paste delivery drone / ship counts |
StationCopy/SetPilerCount |
true | Paste piler count |
StationCopy/EnablePriority |
true | Block 3: priority settings |
Filter/ItemFilterIntersect |
false | Item filter intersection mode |
AstroList/SortByName |
true | Sort the astro list by star name |
Hotkeys/ListUp / ListDown |
PageUp / PageDown | Dropdown step keys |
Credits
- UXAssist (soarqin): control-panel mouse interactions, the "filter by item under the mouse" idea and the arrow-key coexistence with storage capacity tweaks.
- CheatEnabler (soarqin): the remote item transfer approach in Architect Mode (this mod reuses the vanilla local path via a temporary
isLocaloverride). - UITweaks (starfi5h): right/middle-click supply-demand switching on station storage rows (this mod mirrors its hit areas and precedence).
- StatsUITweaks (starfi5h): star/planet distinction (colour + indent) and sorting-by-name idea for the location dropdown.
CHANGELOG
CHANGELOG
1.0.0
首个正式版(从 0.2.6 升级而来,功能与 0.2.6 一致)。
- 物流总控面板优化:展开/折叠策略与顶栏切换按钮、星图定位(左键保留面板 / 右键关闭 / Shift+右键关闭并点亮导航线)、物流塔设置复制粘贴(三块内容 + 每槽/逐项开关 + 强制粘贴 + 销毁替换物 + 采矿机溢出)、物品筛选交集、位置下拉框排序与热键、物品筛选快捷、非本地星球取放物品、存储模式右键/中键快捷键。
- 界面文字跟随游戏语言(中文/英文),配置说明与 README 双语。
- Thunderstore 发布:新增 256×256 图标、manifest 与打包脚本。
0.2.6
- 配置界面把
ForcePaste/DestroyReplacedItems/AllowMinerOverflow三项移到StationCopy段最上方(按键设置之前)。
0.2.5
- 定位按钮改回文字按钮「定位」(英文界面 Locate),移除程序绘制的图标与相关透明/去高亮处理;悬浮提示保留。
0.2.4
- 定位按钮图标去除发光:从原图标贴图提取实心图形(alpha 阈值),贴图不可读时改用程序绘制的干净放大镜图标。
0.2.3
- 定位按钮取消悬浮高亮与缩放:图标不再随鼠标悬浮变亮或放大。
0.2.2
- 定位按钮改为透明底色:只保留图标,鼠标悬浮时显示淡白色反馈。
0.2.1
- 粘贴提示区分跳过原因:物品冲突(并提示可在
StationCopy/ForcePaste开启强制覆盖)与目标槽位不足;强制覆盖时显示覆盖数量。 - 批量粘贴提示同样显示物品冲突数量。
0.2.0
- 定位按钮:浅蓝色图标底色;悬浮提示固定三行、宽度按语言自适应;打开仪表盘时定位会强制关闭仪表盘(优先于 DashboardOverhaul 的锁定)。
- 新增强制粘贴(
StationCopy/ForcePaste,默认关闭):覆盖已有其他物品的槽位,保持原槽位绑定,替换物品默认取回。 - 新增替换物品直接销毁(
StationCopy/DestroyReplacedItems,默认关闭):强制粘贴与远程清空有物品槽位时直接销毁原有物品。 - 新增采矿机溢出(
StationCopy/AllowMinerOverflow,默认关闭):开启后大型采矿机 / 轨道采集器保留原上限并允许溢出;关闭时显式缩减到目标塔容量(即使 UXAssist 的溢出补丁处于开启状态)。 - 位置下拉框新增「当前星系」范围(第三项)。
- README 按功能重排(存储快捷键改为 F7、非本地取放改为 F8),移除实现细节;新增 AGENTS.md 默认制作规则。
0.1.7
- 游戏内界面文字按游戏语言自动切换:中文游戏显示中文,其他语言显示英文(定位按钮浮窗、展开/折叠按钮、筛选模式按钮、复制粘贴与多选提示)。
- 配置文件全部说明改为中英双语并列;README 保持中英文两版。
- 新增
Lang.T(zh, en)统一处理。
0.1.6
- 定位按钮改为与 PlanetFinder「view planet」同款的图标按钮(星图「查看星球」图标 + 同款按钮模板),鼠标悬浮显示提示浮窗,浮窗内列出左键/右键/Shift+右键三种行为;功能不变。
0.1.5
- 定位按钮改为按点击方式区分:左键保留总控面板、右键关闭面板、Shift+右键关闭面板并把导航线指向该星球。
- 删除
Locate/ClosePanelOnLocate与Locate/LinkNavigation两个配置项(行为已由点击方式固定),Locate段只剩EnableStarmapButton。
0.1.4
- 删除
AstroList的四个前后缀配置与相关代码(PlanetPrefix、PlanetPostfix、StarPrefix、StarPostfix)。 - 保留
AstroList/SortByName与全部导航热键;下拉框固定使用内置样式:星系名黄色、星球名缩进两格。
0.1.3
- 配置界面顺序调整:用
ConfigurationManagerAttributes.Order固定显示顺序(配置管理器按 Order 倒序、再按名称排序)。Locate:EnableStarmapButton → ClosePanelOnLocate → LinkNavigation。StationCopy:CopyKey → PasteKey → EnableSlots(+ Slot1–5)→ EnableSettings(+ 9 个逐项开关)→ EnablePriority。
- 新增
StationCopy/Slot1–Slot5(默认开启):粘贴时可单独关闭某个槽位,避免覆盖该槽位。 - 新增 9 个第二块逐项开关(默认开启):
SetChargePower、SetTripDrones、SetTripShips、SetWarpDistance、SetWarperNecessary、SetOrbitCollector、SetDeliveryDrones、SetDeliveryShips、SetPilerCount。
0.1.2
- MOD 更名为 ControlPanelPlus(原 ControlPanelTweaks),插件 GUID 改为
com.dsp.controlpanelplus,AssemblyVersion 重置为 0.1.2。 - 代码命名空间、日志前缀(
[CPP])、部署目录与自测工程同步更名;功能与 1.2.0 一致。
1.2.0
第三轮:第二轮问题修改 + 新增功能。
修改
- 星图「定位」默认保留总控面板并打开星图;新增
Locate/ClosePanelOnLocate(点击后关闭面板)与Locate/LinkNavigation(联动导航线)两个配置,默认均为关闭。 - 「全部展开 / 全部折叠」合并为一个切换按钮,标签跟随当前状态,样式与「筛选:并集/交集」一致。
新增
Station/AllowRemoteItemTransfer(默认关闭):在总控面板上从非本地星球取放物品;检测到 CheatEnabler 时本项不生效(优先 CheatEnabler)。- 物流塔存储行鼠标快捷键:右键供/需切换、中键无/需切换;检测到 UITweaks 时本功能自动停用(优先 UITweaks)。
- README 增加对 UXAssist、CheatEnabler、UITweaks、StatsUITweaks 的鸣谢。
1.1.0
第二轮:第一轮问题修复 + 新增功能。
修复
- Ctrl 多选现在包含当前已选中的塔(第一次 Ctrl+点击即 2 座);普通左键点击清空多选。
- 多选高亮改用游戏原生行选中高亮,与普通单选一致。
- 星图「定位」按钮独立:不再点亮/切换导航线。
- 位置下拉框默认区分星系与星球:星系名黄色、星球名缩进(四项前后缀全空时生效)。
- 选中焦点闪烁动画缩短到原版 20%;
←/→改为切换上/下一个星球;鼠标位于物流塔存储槽位上时方向键交给 UXAssist 的存储容量调整。
新增
- 打开总控面板时自动按鼠标指向的物品筛选(手持物品 / 图标提示 / 制造配方 / 背包格子 / 生产条目)。
- 总控面板里右键物品图标=替换物品筛选;Shift+右键=在现有筛选上追加(上限 5)。
- Shift+左键批量框选两座塔之间(可跨星球)的所有物流塔。
- 重新打开面板保留上次星球展开状态(优先于两个默认展开/收起配置)。
- 标题栏新增「筛选:并集 / 交集」快速切换按钮。
1.0.0
首个版本,对应《总控面板优化ControlPanelTweaks(详细版·AI目标指令书)》的 F1–F5。
- F1 展开 / 折叠
- 多星球结果默认全部折叠、单星球结果默认展开(两个独立开关)。
- 面板标题栏新增「全部展开 / 全部折叠」按钮。
- 默认值只在打开面板或切换筛选时套用,建塔/拆塔引起的列表刷新不会重置手动状态。
- F2 星图定位
- 星球条目导航按钮左侧新增「定位」按钮;点击进星图、
SetViewStar+ 相机SetViewTarget对准星球,点亮导航线并尽量选中该星球。
- 星球条目导航按钮左侧新增「定位」按钮;点击进星图、
- F3 物流塔设置复制粘贴
<复制 />粘贴,按键可配置。- 三块内容独立开关:槽位设置、塔设置、优先级设置。
Ctrl+ 点击多选塔(高亮 + 一键粘贴);Shift+>批量粘贴到当前星球槽位相同的塔。- 目标槽位里有别种物品且库存 > 0 时跳过,绝不搬运/清空库存。
- 大型采矿机 / 轨道采集器只复制「上限 + 供需」与塔设置。
- 点对点:先同名命名目标塔,再补建源塔的点对点航线。
- F4 物品筛选交集
- 配置开关(默认关闭):开启后 A+B 只显示同时含 A、B 的条目。
- F5 位置下拉框
- 按星系名排序(前两项固定)。
- 星球名 / 星系名前后缀(支持富文本)。
PageUp/PageDown切换列表项(Ctrl 只跳星系)、←/→跳到当前星球首个条目、↑/↓跨星球逐条选择。