From 0dd1a11c14b29fd66e119dc6c41cc4585754d542 Mon Sep 17 00:00:00 2001 From: Soar Qin Date: Mon, 15 Sep 2025 11:17:14 +0800 Subject: [PATCH] fix all markdowns by markdownlint, and remove obsolete OCBatchBuild --- .markdownlint.json | 7 + CheatEnabler/CHANGELOG.md | 428 ++++++++--------- CheatEnabler/README.md | 212 ++++----- CompressSave/README.md | 2 +- DSP_Mods.sln | 6 - Dustbin/CHANGELOG.md | 78 ++-- Dustbin/README.md | 19 +- HideTips/CHANGELOG.md | 39 ++ HideTips/README.md | 41 +- MechaDronesTweaks/CHANGELOG.md | 45 ++ MechaDronesTweaks/README.md | 41 +- OCBatchBuild/OCBatchBuild.csproj | 29 -- OCBatchBuild/OrbitalCollectorBatchBuild.cs | 129 ------ OCBatchBuild/README.md | 24 - OCBatchBuild/package/icon.png | Bin 54314 -> 0 bytes OCBatchBuild/package/manifest.json | 9 - OverclockEverything/README.md | 7 +- README.md | 55 +-- UXAssist/README.md | 515 +++++++++++---------- UniverseGenTweaks/CHANGELOG.md | 77 +-- UniverseGenTweaks/README.md | 30 +- 21 files changed, 852 insertions(+), 941 deletions(-) create mode 100644 .markdownlint.json create mode 100644 HideTips/CHANGELOG.md create mode 100644 MechaDronesTweaks/CHANGELOG.md delete mode 100644 OCBatchBuild/OCBatchBuild.csproj delete mode 100644 OCBatchBuild/OrbitalCollectorBatchBuild.cs delete mode 100644 OCBatchBuild/README.md delete mode 100644 OCBatchBuild/package/icon.png delete mode 100644 OCBatchBuild/package/manifest.json diff --git a/.markdownlint.json b/.markdownlint.json new file mode 100644 index 0000000..7e1f131 --- /dev/null +++ b/.markdownlint.json @@ -0,0 +1,7 @@ +{ + "MD013": false, + "MD033": { + "allowed_elements": ["details", "summary"] + }, + "MD041": false +} \ No newline at end of file diff --git a/CheatEnabler/CHANGELOG.md b/CheatEnabler/CHANGELOG.md index e07cb32..4d0d345 100644 --- a/CheatEnabler/CHANGELOG.md +++ b/CheatEnabler/CHANGELOG.md @@ -4,156 +4,156 @@ ## Changlog * 2.3.32 - + `Complete Dyson Sphere Shells instantly`: Fix a crash. + * `Complete Dyson Sphere Shells instantly`: Fix a crash. * 2.3.31 - + New feature: `Unlock Dyson Sphere max orbit radius` - + `Remove metadata consumption record in current game`: Fix implementation - + Add 3 buttons for creating illegal Dyson Sphere Shells, you must enable `IllegalDysonShellFunctionsEnabled` of `DysonSphere` section in config to see them. - - `Generate an illegal dyson shell` - - `Keep max production shells and remove others` - - `Duplicate shells from that with highest production` + * New feature: `Unlock Dyson Sphere max orbit radius` + * `Remove metadata consumption record in current game`: Fix implementation + * Add 3 buttons for creating illegal Dyson Sphere Shells, you must enable `IllegalDysonShellFunctionsEnabled` of `DysonSphere` section in config to see them. + * `Generate an illegal dyson shell` + * `Keep max production shells and remove others` + * `Duplicate shells from that with highest production` * 2.3.30 - + Fix a warning issue while `No condition build` or `No collision` is enabled. - + Increase performance for `Finish build immediately` greatly on pasting large blueprints. + * Fix a warning issue while `No condition build` or `No collision` is enabled. + * Increase performance for `Finish build immediately` greatly on pasting large blueprints. * 2.3.29 - + Fix compatibility with game update 0.10.32.25779 + * Fix compatibility with game update 0.10.32.25779 * 2.3.28 - + New feature: `Instant hand-craft`. - + Fix some panels' display while `Infinite Natural Resources` is enabled. + * New feature: `Instant hand-craft`. + * Fix some panels' display while `Infinite Natural Resources` is enabled. * 2.3.27 - + `Skip bullet period` & `Eject anyway`: Fix compatibility with `Dyson Sphere Program v0.10.32.25496`. + * `Skip bullet period` & `Eject anyway`: Fix compatibility with `Dyson Sphere Program v0.10.32.25496`. * 2.3.26 - + Refactor codes to adapt to UXAssist 1.2.0 - - You should update UXAssist to 1.2.0 or later before using this version. - + `Complete Dyson Sphere Shells instantly`: Fix possible wrong production records. + * Refactor codes to adapt to UXAssist 1.2.0 + * You should update UXAssist to 1.2.0 or later before using this version. + * `Complete Dyson Sphere Shells instantly`: Fix possible wrong production records. * 2.3.25 - + New feature: `Enable warp without space warpers` - + New feature: `Wind Turbines do global power coverage` - + Fix an issue that `Complete Dyson Sphere Shells instantly` does not generate production records for solar sails. + * New feature: `Enable warp without space warpers` + * New feature: `Wind Turbines do global power coverage` + * Fix an issue that `Complete Dyson Sphere Shells instantly` does not generate production records for solar sails. * 2.3.24 - + `Complete Dyson Sphere Shells instantly`: Fix a bug that may cause negative power in some cases + * `Complete Dyson Sphere Shells instantly`: Fix a bug that may cause negative power in some cases * 2.3.23 - + New feature: `Complete Dyson Sphere Shells instantly` - + Fix a crash when config panel is opened before game is fully loaded + * New feature: `Complete Dyson Sphere Shells instantly` + * Fix a crash when config panel is opened before game is fully loaded * 2.3.22 - + Fix `Pump Anywhere` + * Fix `Pump Anywhere` * 2.3.21 - + `Retrieve/Place items from/to remote planets on logistics control panel`: Items are put back to player's inventory when a slot is removed from the logistics station on remote planet. - + `Dev Shortcuts`: Camera Pose related shortcurts are working now. + * `Retrieve/Place items from/to remote planets on logistics control panel`: Items are put back to player's inventory when a slot is removed from the logistics station on remote planet. + * `Dev Shortcuts`: Camera Pose related shortcurts are working now. * 2.3.20 - + New feature: `Retrieve/Place items from/to remote planets on logistics control panel` + * New feature: `Retrieve/Place items from/to remote planets on logistics control panel` * 2.3.19 - + New features: - + `Remove all metadata consumption records` - + `Remove metadata consumption record in current game` - + `Clear metadata flag which bans achievements` + * New features: + * `Remove all metadata consumption records` + * `Remove metadata consumption record in current game` + * `Clear metadata flag which bans achievements` * 2.3.18 - + New features: - + `Teleport to outer space`, this will teleport you to the outer space which is 50 LYs far from the farthest star. - + `Teleport to selected astronomical` - + Fix logic of `Unlock techs with key-modifiers`. - + `No condition build` does not hide rotation info of belts now. + * New features: + * `Teleport to outer space`, this will teleport you to the outer space which is 50 LYs far from the farthest star. + * `Teleport to selected astronomical` + * Fix logic of `Unlock techs with key-modifiers`. + * `No condition build` does not hide rotation info of belts now. * 2.3.17 - + Make compatible with game version 0.10.30.23292 + * Make compatible with game version 0.10.30.23292 * 2.3.16 - + Add 2 options to `Belt signal item generation`: - - `Count generations as production in statistics` - - `Count removals as consumption in statistics` - + New feature: `Increase maximum power usage in Logistic Stations and Advanced Mining Machines` - - Logistic Stations: Increased max charging power to 3GW(ILS) and 600MW(PLS) (10x of original) - - Advanced Mining Machines: Increased max mining speed to 1000% + * Add 2 options to `Belt signal item generation`: + * `Count generations as production in statistics` + * `Count removals as consumption in statistics` + * New feature: `Increase maximum power usage in Logistic Stations and Advanced Mining Machines` + * Logistic Stations: Increased max charging power to 3GW(ILS) and 600MW(PLS) (10x of original) + * Advanced Mining Machines: Increased max mining speed to 1000% * 2.3.15 - + New features: - - `Instant teleport (like that in Sandbox mode)` - - `Mecha and Drones/Fleets invicible` - - `Buildings invicible` + * New features: + * `Instant teleport (like that in Sandbox mode)` + * `Mecha and Drones/Fleets invicible` + * `Buildings invicible` * 2.3.14 - + Remove default shortcut key for `No condition build` and `No collision`, to avoid misoperation. You can still set them in system settings window manually if needed. - + Fix translation issue. + * Remove default shortcut key for `No condition build` and `No collision`, to avoid misoperation. You can still set them in system settings window manually if needed. + * Fix translation issue. * 2.3.13 - + Fix a bug that shortcuts are not working and have display issue on settings window. + * Fix a bug that shortcuts are not working and have display issue on settings window. * 2.3.12 - + Add a shortcut to toggle `No collision`, you can modify the shortcut on system settings window. - + Add realtime tips when toggling `No condition build` and `No collision` with shortcuts. + * Add a shortcut to toggle `No collision`, you can modify the shortcut on system settings window. + * Add realtime tips when toggling `No condition build` and `No collision` with shortcuts. * 2.3.11 - + Add a shortcut to toggle `No condition build`, you can modify the shortcut on system settings window. This depends on [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) 1.0.15 or later. + * Add a shortcut to toggle `No condition build`, you can modify the shortcut on system settings window. This depends on [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) 1.0.15 or later. * 2.3.10 - + Fix following functions not working in new game updates: - - `Pump Anywhere` - - `Terraform without enough soil piles` + * Fix following functions not working in new game updates: + * `Pump Anywhere` + * `Terraform without enough soil piles` * 2.3.9 - + Support game version 0.10.28.21219 + * Support game version 0.10.28.21219 * 2.3.8 - + Fix a crash on starting new games while `Finish build immediately` is enabled. - + Fix UI button width. + * Fix a crash on starting new games while `Finish build immediately` is enabled. + * Fix UI button width. * 2.3.7 - + Support game version 0.10.28.20759 - + Fix belt signal that items' generation speed is not fit to number set sometimes. + * Support game version 0.10.28.20759 + * Fix belt signal that items' generation speed is not fit to number set sometimes. * 2.3.6 - + Support for UXAssist's new function within `Finish build immediately`. - + Add a warning message when `Build without condition` is enabled. - + Fix an issue in `Finish build immediately` that some buildings are not finished immediately. + * Support for UXAssist's new function within `Finish build immediately`. + * Add a warning message when `Build without condition` is enabled. + * Fix an issue in `Finish build immediately` that some buildings are not finished immediately. * 2.3.5 - + Fix another crash in `Skip bullet period`. + * Fix another crash in `Skip bullet period`. * 2.3.4 - + Use new tab layout of UXAssist 1.0.2 - + Minor bug fixes + * Use new tab layout of UXAssist 1.0.2 + * Minor bug fixes * 2.3.3 - + Fix a crash in `Skip bullet period`. - + Unlock techs with Alt unlocks VeinUtil to 10000 instead of 7200 now, as bug fixed in UXAssist. + * Fix a crash in `Skip bullet period`. + * Unlock techs with Alt unlocks VeinUtil to 10000 instead of 7200 now, as bug fixed in UXAssist. * 2.3.2 - + Birth star options moved to [UniverseGenTweaks](https://dsp.thunderstore.io/package/soarqin/UniverseGenTweaks/) - + Optimize `Quick absorb`, consumes less CPU time and take turns firing to nodes. - + `Fast Mining` ensures full output of oil extractors now. - + Fix issue that `Belt signal generator` not working after switched off then on again. - + Fix absorption issue by `Quick absorb` and `Skip bullet period` enabled at the same time. - + Crash fix for some options + * Birth star options moved to [UniverseGenTweaks](https://dsp.thunderstore.io/package/soarqin/UniverseGenTweaks/) + * Optimize `Quick absorb`, consumes less CPU time and take turns firing to nodes. + * `Fast Mining` ensures full output of oil extractors now. + * Fix issue that `Belt signal generator` not working after switched off then on again. + * Fix absorption issue by `Quick absorb` and `Skip bullet period` enabled at the same time. + * Crash fix for some options * 2.3.1 - + Add UXAssist to dependencies in manifest. + * Add UXAssist to dependencies in manifest. * 2.3.0 - + Move some functions to an individual mod: [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) - + Depends on [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) now, so that config panel is unified with UXAssist. - + Remove `LCtrl+A` from Dev Shortcuts, to avoid misoperation. - + Infinite bots/drones/vessels in `Architect mode` now. + * Move some functions to an individual mod: [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) + * Depends on [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) now, so that config panel is unified with UXAssist. + * Remove `LCtrl+A` from Dev Shortcuts, to avoid misoperation. + * Infinite bots/drones/vessels in `Architect mode` now. * 2.2.7 - + New function: `Construct only nodes but frames` - + Opening config panel does not close inventory panel now - + Remove `Input direction conflict` check while using `Remove some build conditions` - + Fix a bug that prevents `Belt signal alt format` from switching number formats for current belt signals + * New function: `Construct only nodes but frames` + * Opening config panel does not close inventory panel now + * Remove `Input direction conflict` check while using `Remove some build conditions` + * Fix a bug that prevents `Belt signal alt format` from switching number formats for current belt signals * 2.2.6 - + New function: `Stop ejectors when available nodes are all filled up` - + Fix a bug that absorb solar sails on unfinised nodes + * New function: `Stop ejectors when available nodes are all filled up` + * Fix a bug that absorb solar sails on unfinised nodes * 2.2.5 - + Skip all intermediate states and absorb solar sails instantly while enable `Quick absorb`, `Skip bullet period` and `Skip absorption period` at the same time. - + Fix a problem that `Quick absorb` does not absorb all solar sails instantly when most nodes are full. - + Fix crash while using with some mods + * Skip all intermediate states and absorb solar sails instantly while enable `Quick absorb`, `Skip bullet period` and `Skip absorption period` at the same time. + * Fix a problem that `Quick absorb` does not absorb all solar sails instantly when most nodes are full. + * Fix crash while using with some mods * 2.2.4 - + New function: `Enable player actions in globe view` - + Fix UI bug + * New function: `Enable player actions in globe view` + * Fix UI bug * 2.2.3 - + New function: `Remove some build conditions` - + Fix compatibility with some mods + * New function: `Remove some build conditions` + * Fix compatibility with some mods * 2.2.2 - + New function: `Assign gamesave to currrnet account` - + New subfunction: `Belt signal alt format` - + Fix a crash on using `Initialize this Planet` - + Fix belt build in `Finish build immediately` + * New function: `Assign gamesave to currrnet account` + * New subfunction: `Belt signal alt format` + * Fix a crash on using `Initialize this Planet` + * Fix belt build in `Finish build immediately` * 2.2.1 - + Check condition for miners even when `Build without condition` is enabled. - + Fix a patch issue that may cause `Build without condition` not working. + * Check condition for miners even when `Build without condition` is enabled. + * Fix a patch issue that may cause `Build without condition` not working. * 2.2.0 - + Add some power related functions - + Add a subfunction to belt signal item generation, which simulates production process of raws and intermediates on statistics - + Split some functions from Architect mode + * Add some power related functions + * Add a subfunction to belt signal item generation, which simulates production process of raws and intermediates on statistics + * Split some functions from Architect mode * 2.1.0 - + Belt signal item generation - + Fix window display priority which may cause tips to be covered by main window + * Belt signal item generation + * Fix window display priority which may cause tips to be covered by main window * 2.0.0 - + Refactorying codes - + UI implementation - + Add a lot of functions + * Refactorying codes + * UI implementation + * Add a lot of functions * 1.0.0 - + Initial release + * Initial release @@ -163,155 +163,155 @@ ## 更新日志 * 2.3.32 - + `立即完成戴森壳建造`:修复了一个崩溃问题 + * `立即完成戴森壳建造`:修复了一个崩溃问题 * 2.3.31 - + 新功能:`解锁戴森球最大轨道半径` - + `移除当前存档的元数据消耗记录`:修复实现 - + 增加了3个用于制作仙术戴森壳的按钮,你必须在设置文件里开启`DysonSphere`分类的`IllegalDysonShellFunctionsEnabled`才能看到它们 - - `生成单层仙术戴森壳` - - `保留发电量最高的戴森壳并移除其他戴森壳` - - `从发电量最高的壳复制戴森壳` + * 新功能:`解锁戴森球最大轨道半径` + * `移除当前存档的元数据消耗记录`:修复实现 + * 增加了3个用于制作仙术戴森壳的按钮,你必须在设置文件里开启`DysonSphere`分类的`IllegalDysonShellFunctionsEnabled`才能看到它们 + * `生成单层仙术戴森壳` + * `保留发电量最高的戴森壳并移除其他戴森壳` + * `从发电量最高的壳复制戴森壳` * 2.3.30 - + 修复了启用`无条件建造`或`无碰撞`时的警告问题 - + 粘贴大规模蓝图时大幅提升`立即完成建造`的性能表现 + * 修复了启用`无条件建造`或`无碰撞`时的警告问题 + * 粘贴大规模蓝图时大幅提升`立即完成建造`的性能表现 * 2.3.29 - + 修复了与游戏更新0.10.32.25779的兼容性 + * 修复了与游戏更新0.10.32.25779的兼容性 * 2.3.28 - + 新功能:`快速手动制造` - + 修复了启用`自然资源采集不消耗`时部分面板的显示问题 + * 新功能:`快速手动制造` + * 修复了启用`自然资源采集不消耗`时部分面板的显示问题 * 2.3.27 - + `跳过子弹阶段`和`全球弹射`:修复了与`戴森球计划 v0.10.32.25496`的兼容性 + * `跳过子弹阶段`和`全球弹射`:修复了与`戴森球计划 v0.10.32.25496`的兼容性 * 2.3.26 - + 重构代码以适应UXAssist 1.2.0 - - 在使用此版本之前,您应先更新UXAssist到1.2.0或更高版本。 - + `立即完成戴森壳建造`:修复了可能导致错误的生产记录的问题 + * 重构代码以适应UXAssist 1.2.0 + * 在使用此版本之前,您应先更新UXAssist到1.2.0或更高版本。 + * `立即完成戴森壳建造`:修复了可能导致错误的生产记录的问题 * 2.3.25 - + 新功能:`无需空间翘曲器即可曲速飞行` - + 新功能:`风力涡轮机供电覆盖全球` - + 修复了`立即完成戴森壳建造`未生成太阳帆生产记录的问题 + * 新功能:`无需空间翘曲器即可曲速飞行` + * 新功能:`风力涡轮机供电覆盖全球` + * 修复了`立即完成戴森壳建造`未生成太阳帆生产记录的问题 * 2.3.24 - + `立即完成戴森壳建造`:修复了在某些情况下可能导致发电为负的问题 + * `立即完成戴森壳建造`:修复了在某些情况下可能导致发电为负的问题 * 2.3.23 - + 新功能:`立即完成戴森壳建造` - + 修复了在游戏完全加载前打开配置面板可能导致的崩溃问题 + * 新功能:`立即完成戴森壳建造` + * 修复了在游戏完全加载前打开配置面板可能导致的崩溃问题 * 2.3.22 - + 修复了`平地抽水` + * 修复了`平地抽水` * 2.3.21 - + `在物流总控面板上可以从非本地行星取放物品`:当从非本地星球的物流站移除槽位时,物品会放回玩家的背包 - + `开发模式快捷键`:摄像机位(Pose)相关的快捷键现在生效了 + * `在物流总控面板上可以从非本地行星取放物品`:当从非本地星球的物流站移除槽位时,物品会放回玩家的背包 + * `开发模式快捷键`:摄像机位(Pose)相关的快捷键现在生效了 * 2.3.20 - + 新功能:`在物流总控面板上可以从非本地行星取放物品` + * 新功能:`在物流总控面板上可以从非本地行星取放物品` * 2.3.19 - + 新功能: - + `移除所有元数据消耗记录` - + `移除当前存档的元数据消耗记录` - + `解除当前存档因使用元数据导致的成就限制` + * 新功能: + * `移除所有元数据消耗记录` + * `移除当前存档的元数据消耗记录` + * `解除当前存档因使用元数据导致的成就限制` * 2.3.18 - + 新功能: - + `传送到外太空`,这会将你传送到距离最远星球50光年的外太空 - + `传送到选中天体` - + 修复了`组合键解锁科技`的逻辑 - + `无条件建造`现在不会隐藏传送带的旋转信息了 + * 新功能: + * `传送到外太空`,这会将你传送到距离最远星球50光年的外太空 + * `传送到选中天体` + * 修复了`组合键解锁科技`的逻辑 + * `无条件建造`现在不会隐藏传送带的旋转信息了 * 2.3.17 - + 适配游戏版本0.10.30.23292 + * 适配游戏版本0.10.30.23292 * 2.3.16 - + 为`传送带信号物品生成`添加了两个选项: - - `统计信息里将生成计算为产物` - - `统计信息里将移除计算为消耗` - + 新功能:`提升物流塔和大型采矿机的最大功耗` - - 物流塔:将最大充电功率提高到3GW(星际物流塔)和600MW(行星物流塔)(原来的10倍) - - 大型采矿机:将最大采矿速度提高到1000% + * 为`传送带信号物品生成`添加了两个选项: + * `统计信息里将生成计算为产物` + * `统计信息里将移除计算为消耗` + * 新功能:`提升物流塔和大型采矿机的最大功耗` + * 物流塔:将最大充电功率提高到3GW(星际物流塔)和600MW(行星物流塔)(原来的10倍) + * 大型采矿机:将最大采矿速度提高到1000% * 2.3.15 - + 新功能: - - `快速传送(和沙盒模式一样)` - - `机甲和战斗无人机无敌` - - `建筑无敌` + * 新功能: + * `快速传送(和沙盒模式一样)` + * `机甲和战斗无人机无敌` + * `建筑无敌` * 2.3.14 - + 移除了`无条件建造`和`无碰撞`的默认快捷键,以避免误操作。如有需要请手动在系统选项窗口中设置。 - + 修复了翻译问题。 + * 移除了`无条件建造`和`无碰撞`的默认快捷键,以避免误操作。如有需要请手动在系统选项窗口中设置。 + * 修复了翻译问题。 * 2.3.13 - + 修复了快捷键无效和设置窗口上的按键显示问题 + * 修复了快捷键无效和设置窗口上的按键显示问题 * 2.3.12 - + 添加了一个快捷键来切换`无碰撞`,你可以在系统设置面板中修改快捷键。 - + 在使用快捷键切换`无条件建造`和`无碰撞`时添加了实时提示信息。 + * 添加了一个快捷键来切换`无碰撞`,你可以在系统设置面板中修改快捷键。 + * 在使用快捷键切换`无条件建造`和`无碰撞`时添加了实时提示信息。 * 2.3.11 - + 添加了一个快捷键来切换`无条件建造`,你可以在系统设置面板中修改快捷键。这依赖于[UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) 1.0.15或更高版本 + * 添加了一个快捷键来切换`无条件建造`,你可以在系统设置面板中修改快捷键。这依赖于[UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) 1.0.15或更高版本 * 2.3.10 - + 修复了以下功能在新游戏版本中不生效的问题: - - `平地抽水` - - `沙土不够时依然可以整改地形` + * 修复了以下功能在新游戏版本中不生效的问题: + * `平地抽水` + * `沙土不够时依然可以整改地形` * 2.3.9 - + 支持游戏版本0.10.28.21219 + * 支持游戏版本0.10.28.21219 * 2.3.8 - + 修复了启用`建造秒完成`时开新游戏可能导致崩溃的问题 - + 修复了UI按钮宽度 + * 修复了启用`建造秒完成`时开新游戏可能导致崩溃的问题 + * 修复了UI按钮宽度 * 2.3.7 - + 支持游戏版本0.10.28.20759 - + 修复了传送带信号有时候物品生成速度和设置不匹配的问题 + * 支持游戏版本0.10.28.20759 + * 修复了传送带信号有时候物品生成速度和设置不匹配的问题 * 2.3.6 - + 在`建造秒完成`中支持UXAssist的新功能 - + 在启用`无条件建造`时添加警告信息 - + 修复了`建造秒完成`可能导致部分建筑无法立即完成的问题 + * 在`建造秒完成`中支持UXAssist的新功能 + * 在启用`无条件建造`时添加警告信息 + * 修复了`建造秒完成`可能导致部分建筑无法立即完成的问题 * 2.3.5 - + 修复了`跳过子弹阶段`可能导致崩溃的问题 + * 修复了`跳过子弹阶段`可能导致崩溃的问题 * 2.3.4 - + 使用UXAssist 1.0.2的新页签布局 - + 修复了一些小bug + * 使用UXAssist 1.0.2的新页签布局 + * 修复了一些小bug * 2.3.3 - + 修复了`跳过子弹阶段`可能导致崩溃的问题 - + 使用Alt解锁科技时,现在`矿物利用`的科技解锁到10000级而不是7200级,因为UXAssist已修复对应bug + * 修复了`跳过子弹阶段`可能导致崩溃的问题 + * 使用Alt解锁科技时,现在`矿物利用`的科技解锁到10000级而不是7200级,因为UXAssist已修复对应bug * 2.3.2 - + 母星系的选项移动到了[UniverseGenTweaks](https://dsp.thunderstore.io/package/soarqin/UniverseGenTweaks/) - + 优化了`快速吸收`,现在消耗更少的CPU,并且会轮流打向各节点 - + `高速采集`现在可以保证油井的最大产出 - + 修复了`传送带信号物品生成`在选项关闭后再次启用时不生效的问题 - + 修复了`快速吸收`和`跳过子弹阶段`同时启用时可能导致吸收计算错误的问题 - + 修复了一些选项可能导致崩溃的问题 + * 母星系的选项移动到了[UniverseGenTweaks](https://dsp.thunderstore.io/package/soarqin/UniverseGenTweaks/) + * 优化了`快速吸收`,现在消耗更少的CPU,并且会轮流打向各节点 + * `高速采集`现在可以保证油井的最大产出 + * 修复了`传送带信号物品生成`在选项关闭后再次启用时不生效的问题 + * 修复了`快速吸收`和`跳过子弹阶段`同时启用时可能导致吸收计算错误的问题 + * 修复了一些选项可能导致崩溃的问题 * 2.3.1 - + 在manifest中添加UXAssist到依赖 + * 在manifest中添加UXAssist到依赖 * 2.3.0 - + 将部分功能移动到单独的mod:[UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) - + 现在依赖[UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist),因此配置面板与UXAssist合并 - + 从开发模式快捷键中移除`LCtrl+A`,以避免误操作 - + 现在`建筑师模式`中配送机/物流机/物流船也无限了 + * 将部分功能移动到单独的mod:[UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) + * 现在依赖[UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist),因此配置面板与UXAssist合并 + * 从开发模式快捷键中移除`LCtrl+A`,以避免误操作 + * 现在`建筑师模式`中配送机/物流机/物流船也无限了 * 2.2.7 - + 新功能:`只建造节点不建造框架` - + 打开设置面板时不再关闭背包面板 - + 在`移除部分不影响游戏逻辑的建造条件`启用时移除`输入方向冲突`的检查条件 - + 修复导致`传送带信号替换格式`不切换传送带信号数字格式的问题 + * 新功能:`只建造节点不建造框架` + * 打开设置面板时不再关闭背包面板 + * 在`移除部分不影响游戏逻辑的建造条件`启用时移除`输入方向冲突`的检查条件 + * 修复导致`传送带信号替换格式`不切换传送带信号数字格式的问题 * 2.2.6 - + 新功能:`可用节点全部造完时停止弹射` - + 修复了在未完成的节点上吸收太阳帆的问题 + * 新功能:`可用节点全部造完时停止弹射` + * 修复了在未完成的节点上吸收太阳帆的问题 * 2.2.5 - + 在同时启用`快速吸收`、`跳过子弹阶段`和`跳过吸收阶段`时,所有弹射的太阳帆会跳过所有中间环节立即吸收 - + 修复了`快速吸收`在大部分节点已满时无法立即吸收所有太阳帆的问题 - + 修复了与一些mod的兼容性问题 + * 在同时启用`快速吸收`、`跳过子弹阶段`和`跳过吸收阶段`时,所有弹射的太阳帆会跳过所有中间环节立即吸收 + * 修复了`快速吸收`在大部分节点已满时无法立即吸收所有太阳帆的问题 + * 修复了与一些mod的兼容性问题 * 2.2.4 - + 新功能:`在行星视图中允许玩家操作` - + 修复了UI显示问题 + * 新功能:`在行星视图中允许玩家操作` + * 修复了UI显示问题 * 2.2.3 - + 新功能:`移除部分不影响游戏逻辑的建造条件` - + 修复了与一些mod的兼容性问题 + * 新功能:`移除部分不影响游戏逻辑的建造条件` + * 修复了与一些mod的兼容性问题 * 2.2.2 - + 新功能:`将游戏存档绑定给当前账号` - + 新子功能:`传送带信号替换格式` - + 修复了`初始化本行星`可能导致崩溃的问题 - + 修复了`建造秒完成`中传送带建造的问题 + * 新功能:`将游戏存档绑定给当前账号` + * 新子功能:`传送带信号替换格式` + * 修复了`初始化本行星`可能导致崩溃的问题 + * 修复了`建造秒完成`中传送带建造的问题 * 2.2.1 - + 即使在启用`无条件建造`时依然检查矿机的建造条件 - + 修复一个可能导致`无条件建造`不生效的问题 + * 即使在启用`无条件建造`时依然检查矿机的建造条件 + * 修复一个可能导致`无条件建造`不生效的问题 * 2.2.0 - + 添加了一些发电相关功能 - + 为传送带信号物品生成添加了一个子功能,在统计面板模拟了原材料和中间产物的生产过程 - + 从建筑师模式中分离了一些功能 + * 添加了一些发电相关功能 + * 为传送带信号物品生成添加了一个子功能,在统计面板模拟了原材料和中间产物的生产过程 + * 从建筑师模式中分离了一些功能 * 2.1.0 - + 传送带信号物品生成 - + 修复窗口显示优先级可能导致提示信息被主窗口遮挡的问题 + * 传送带信号物品生成 + * 修复窗口显示优先级可能导致提示信息被主窗口遮挡的问题 * 2.0.0 - + 重构代码 - + UI实现 - + 添加了很多功能 + * 重构代码 + * UI实现 + * 添加了很多功能 * 1.0.0 - + 初始版本 + * 初始版本 diff --git a/CheatEnabler/README.md b/CheatEnabler/README.md index 69dd01d..23b17b6 100644 --- a/CheatEnabler/README.md +++ b/CheatEnabler/README.md @@ -3,69 +3,71 @@
Read me in English -#### Add various cheat functions while disabling abnormal determinants +***Add various cheat functions while disabling abnormal determinants*** ## Usage * Config panel is unified with UXAssist. * There are also buttons on title screen and planet minimap area to call up the config panel. * Features: - + General: - + Enable Dev Shortcuts (check config panel for usage) - + Disable Abnormal Checks - + Unlock techs with key-modifiers (Ctrl/Alt/Shift) - + Remove all metadata consumption records - + Remove metadata consumption record in current game - + Clear metadata flag which bans achievements - + Assign gamesave to currrnet account - + Factory: - + Finish build immediately - + Architect mode (Infinite buildings) - + Build without condition - + No collision - + Belt signal item generation - - Count generations as production in statistics - - Count removals as consumption in statistics - - Count all raws and intermediates in statistics - - Belt signal alt format - + Increase maximum power usage in Logistic Stations and Advanced Mining Machines - - Logistic Stations: Increased max charging power to 3GW(ILS) and 600MW(PLS) (10x of original) - - Advanced Mining Machines: Increased max mining speed to 1000% - + Retrieve/Place items from/to remote planets on logistics control panel - + Remove space limit between wind turbines and solar panels - + Wind Turbines do global power coverage - + Boost power generations for kinds of power generators - + Planet: - + Instant hand-craft - + Infinite Natural Resources - + Fast Mining - + Pump Anywhere - + Terraform without enought soil piles - + Instant teleport (like that in Sandbox mode) - + Dyson Sphere: - + Skip bullet period - + Skip absorption period - + Quick absorb - + Eject anyway - + Unlock Dyson Sphere max orbit radius - + Complete Dyson Sphere Shells instantly - + Buttons for creating illegal Dyson Sphere Shells, you must enable `IllegalDysonShellFunctionsEnabled` of `DysonSphere` section in config to see them. - - Generate an illegal dyson shell - - Keep max production shells and remove others - - Duplicate shells from that with highest production - + Mecha/Combat: - + Mecha and Drones/Fleets invicible - + Buildings invicible - + Enable warp without space warpers - + Teleport to outer space - + Teleport to selected astronomical + * General: + * Enable Dev Shortcuts (check config panel for usage) + * Disable Abnormal Checks + * Unlock techs with key-modifiers (Ctrl/Alt/Shift) + * Remove all metadata consumption records + * Remove metadata consumption record in current game + * Clear metadata flag which bans achievements + * Assign gamesave to currrnet account + * Factory: + * Finish build immediately + * Architect mode (Infinite buildings) + * Build without condition + * No collision + * Belt signal item generation + * Count generations as production in statistics + * Count removals as consumption in statistics + * Count all raws and intermediates in statistics + * Belt signal alt format + * Increase maximum power usage in Logistic Stations and Advanced Mining Machines + * Logistic Stations: Increased max charging power to 3GW(ILS) and 600MW(PLS) (10x of original) + * Advanced Mining Machines: Increased max mining speed to 1000% + * Retrieve/Place items from/to remote planets on logistics control panel + * Remove space limit between wind turbines and solar panels + * Wind Turbines do global power coverage + * Boost power generations for kinds of power generators + * Planet: + * Instant hand-craft + * Infinite Natural Resources + * Fast Mining + * Pump Anywhere + * Terraform without enought soil piles + * Instant teleport (like that in Sandbox mode) + * Dyson Sphere: + * Skip bullet period + * Skip absorption period + * Quick absorb + * Eject anyway + * Unlock Dyson Sphere max orbit radius + * Complete Dyson Sphere Shells instantly + * Buttons for creating illegal Dyson Sphere Shells, you must enable `IllegalDysonShellFunctionsEnabled` of `DysonSphere` section in config to see them. + * Generate an illegal dyson shell + * Keep max production shells and remove others + * Duplicate shells from that with highest production + * Mecha/Combat: + * Mecha and Drones/Fleets invicible + * Buildings invicible + * Enable warp without space warpers + * Teleport to outer space + * Teleport to selected astronomical ## Notes + * Please upgrade `BepInEx` 5.4.21 or later if using with [BlueprintTweaks](https://dsp.thunderstore.io/package/kremnev8/BlueprintTweaks/) to avoid possible conflicts. - + You can download `BepInEx` [here](https://github.com/bepinex/bepinex/releases/latest)(choose x64 edition). - + If using with r2modman, you can upgrade `BepInEx` by clicking `Settings` -> `Browse profile folder`, then extract downloaded zip to the folder and overwrite existing files. + * You can download [BepInEx here](https://github.com/bepinex/bepinex/releases/latest)(choose x64 edition). + * If using with r2modman, you can upgrade `BepInEx` by clicking `Settings` -> `Browse profile folder`, then extract downloaded zip to the folder and overwrite existing files. ## CREDITS + * [Dyson Sphere Program](https://store.steampowered.com/app/1366540): The great game * [BepInEx](https://bepinex.dev/): Base modding framework * [Multifunction_mod](https://github.com/blacksnipebiu/Multifunction_mod): Some cheat functions @@ -75,69 +77,71 @@
中文读我 -#### 添加一些作弊功能,同时屏蔽异常检测 +***添加一些作弊功能,同时屏蔽异常检测*** ## 使用说明 * 配置面板复用UXAssist * 标题界面和行星小地图旁也有按钮呼出主面板 * 功能: - + 常规: - + 启用开发模式快捷键(使用说明见设置面板) - + 屏蔽异常检测 - + 使用组合键解锁科技(Ctrl/Alt/Shift) - + 移除所有元数据消耗记录 - + 移除当前存档的元数据消耗记录 - + 解除当前存档因使用元数据导致的成就限制 - + 将游戏存档绑定给当前账号 - + 工厂: - + 建造秒完成 - + 建筑师模式(无限建筑) - + 无条件建造 - + 无碰撞 - + 传送带信号物品生成 - - 统计信息里将生成计算为产物 - - 统计信息里将移除计算为消耗 - - 统计面板中计算所有原材料和中间产物 - - 传送带信号替换格式 - + 提升物流塔和大型采矿机的最大功耗 - - 物流塔:将最大充电功率提高到3GW(星际物流塔)和600MW(行星物流塔)(原来的10倍) - - 大型采矿机:将最大采矿速度提高到1000% - + 在物流总控面板上可以从非本地行星取放物品 - + 风力发电机和太阳能板无间距限制 - + 风力涡轮机供电覆盖全球 - + 提升各种发电设备发电量 - + 行星: - + 快速手动制造 - + 自然资源采集不消耗 - + 高速采集 - + 平地抽水 - + 沙土不够时依然可以整改地形 - + 快速传送(和沙盒模式一样) - + 戴森球: - + 跳过子弹阶段 - + 跳过吸收阶段 - + 快速吸收 - + 全球弹射 - + 解锁戴森球最大轨道半径 - + 立即完成戴森壳建造 - + 用于制作仙术戴森壳的按钮,你必须在设置文件里开启`DysonSphere`分类的`IllegalDysonShellFunctionsEnabled`才能看到它们 - - 生成单层仙术戴森壳 - - 保留发电量最高的戴森壳并移除其他戴森壳 - - 从发电量最高的壳复制戴森壳 - + 机甲/战斗: - + 机甲和战斗无人机无敌 - + 建筑无敌 - + 无需空间翘曲器即可曲速飞行 - + 传送到外太空 - + 传送到选定的天体 + * 常规: + * 启用开发模式快捷键(使用说明见设置面板) + * 屏蔽异常检测 + * 使用组合键解锁科技(Ctrl/Alt/Shift) + * 移除所有元数据消耗记录 + * 移除当前存档的元数据消耗记录 + * 解除当前存档因使用元数据导致的成就限制 + * 将游戏存档绑定给当前账号 + * 工厂: + * 建造秒完成 + * 建筑师模式(无限建筑) + * 无条件建造 + * 无碰撞 + * 传送带信号物品生成 + * 统计信息里将生成计算为产物 + * 统计信息里将移除计算为消耗 + * 统计面板中计算所有原材料和中间产物 + * 传送带信号替换格式 + * 提升物流塔和大型采矿机的最大功耗 + * 物流塔:将最大充电功率提高到3GW(星际物流塔)和600MW(行星物流塔)(原来的10倍) + * 大型采矿机:将最大采矿速度提高到1000% + * 在物流总控面板上可以从非本地行星取放物品 + * 风力发电机和太阳能板无间距限制 + * 风力涡轮机供电覆盖全球 + * 提升各种发电设备发电量 + * 行星: + * 快速手动制造 + * 自然资源采集不消耗 + * 高速采集 + * 平地抽水 + * 沙土不够时依然可以整改地形 + * 快速传送(和沙盒模式一样) + * 戴森球: + * 跳过子弹阶段 + * 跳过吸收阶段 + * 快速吸收 + * 全球弹射 + * 解锁戴森球最大轨道半径 + * 立即完成戴森壳建造 + * 用于制作仙术戴森壳的按钮,你必须在设置文件里开启`DysonSphere`分类的`IllegalDysonShellFunctionsEnabled`才能看到它们 + * 生成单层仙术戴森壳 + * 保留发电量最高的戴森壳并移除其他戴森壳 + * 从发电量最高的壳复制戴森壳 + * 机甲/战斗: + * 机甲和战斗无人机无敌 + * 建筑无敌 + * 无需空间翘曲器即可曲速飞行 + * 传送到外太空 + * 传送到选定的天体 ## 注意事项 + * 如果和[BlueprintTweaks](https://dsp.thunderstore.io/package/kremnev8/BlueprintTweaks/)一起使用,请升级`BepInEx`到5.4.21或更高版本,以避免可能的冲突 - + 你可以在[这里](https://github.com/bepinex/bepinex/releases/latest)(选择x64版本)下载`BepInEx` - + 如果使用r2modman,你可以点击`Settings` -> `Browse profile folder`,然后将下载的zip解压到该文件夹并覆盖现有文件 + * 你可以在[这里](https://github.com/bepinex/bepinex/releases/latest)(选择x64版本)下载`BepInEx` + * 如果使用r2modman,你可以点击`Settings` -> `Browse profile folder`,然后将下载的zip解压到该文件夹并覆盖现有文件 ## 鸣谢 + * [戴森球计划](https://store.steampowered.com/app/1366540): 伟大的游戏 * [BepInEx](https://bepinex.dev/): 基础模组框架 * [Multifunction_mod](https://github.com/blacksnipebiu/Multifunction_mod): 一些作弊功能 diff --git a/CompressSave/README.md b/CompressSave/README.md index 60021ea..9cfbaad 100644 --- a/CompressSave/README.md +++ b/CompressSave/README.md @@ -1,3 +1,3 @@ # CompressSave -#### Moved [here](https://github.com/soarqin/DSP_Mods_TO/tree/master/CompressSave) +Moved [to another repo](https://github.com/soarqin/DSP_Mods_TO/tree/master/CompressSave) diff --git a/DSP_Mods.sln b/DSP_Mods.sln index f1fa876..b3a24a1 100644 --- a/DSP_Mods.sln +++ b/DSP_Mods.sln @@ -11,8 +11,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dustbin", "Dustbin\Dustbin. {B8EB3D8D-5613-42F0-9040-EAA11A38C6AC} = {B8EB3D8D-5613-42F0-9040-EAA11A38C6AC} EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OCBatchBuild", "OCBatchBuild\OCBatchBuild.csproj", "{E8FB30A0-29BF-4CF0-8E08-9784962A8656}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UniverseGenTweaks", "UniverseGenTweaks\UniverseGenTweaks.csproj", "{9534694E-14F0-4498-852D-BBB3FCA986CD}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OverclockEverything", "OverclockEverything\OverclockEverything.csproj", "{0168941C-EEA6-49CF-9A67-E829FE06CF9B}" @@ -56,10 +54,6 @@ Global {931F0230-5941-4E49-AB19-66921AF14096}.Debug|Any CPU.Build.0 = Debug|Any CPU {931F0230-5941-4E49-AB19-66921AF14096}.Release|Any CPU.ActiveCfg = Release|Any CPU {931F0230-5941-4E49-AB19-66921AF14096}.Release|Any CPU.Build.0 = Release|Any CPU - {E8FB30A0-29BF-4CF0-8E08-9784962A8656}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E8FB30A0-29BF-4CF0-8E08-9784962A8656}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E8FB30A0-29BF-4CF0-8E08-9784962A8656}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E8FB30A0-29BF-4CF0-8E08-9784962A8656}.Release|Any CPU.Build.0 = Release|Any CPU {9534694E-14F0-4498-852D-BBB3FCA986CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {9534694E-14F0-4498-852D-BBB3FCA986CD}.Debug|Any CPU.Build.0 = Debug|Any CPU {9534694E-14F0-4498-852D-BBB3FCA986CD}.Release|Any CPU.ActiveCfg = Release|Any CPU diff --git a/Dustbin/CHANGELOG.md b/Dustbin/CHANGELOG.md index 07056f4..b576259 100644 --- a/Dustbin/CHANGELOG.md +++ b/Dustbin/CHANGELOG.md @@ -1,67 +1,79 @@ +
+Read me in English + ## Changelog + * 1.4.0 * Refactorying Tank input logic codes, for better performance, and resolve a bug [#53](https://github.com/soarqin/DSP_Mods/issues/53) - + Remove use of AssetBundle, move the belt signal icon into `Assembly Resources`, for better flexibility. + * Remove use of AssetBundle, move the belt signal icon into `Assembly Resources`, for better flexibility. * 1.3.3 - + Support for NebulaMultiplayerModApi 2.0.0 + * Support for NebulaMultiplayerModApi 2.0.0 * 1.3.2 - + Fix a display issue that the dustbin checkbox is overlapped with the filter button in storage UI. + * Fix a display issue that the dustbin checkbox is overlapped with the filter button in storage UI. * 1.3.1 - + Support for game version 0.10.28.20759 + * Support for game version 0.10.28.20759 * 1.3.0 - + Add a belt signal(you can find it in first tab of signal selection panel) as dustbin, which is the simplest way to destroy items. - + Reworked dustbin support for Tanks, to improve performance and resolve known bugs. - - Be note that the whole tank logic is optimized which may get a slight better performance even if you don't use them as dustbin. - + Config entry for soil piless gain from destroyed items are changed to a more flexible format. - + [Nebula Mupltiplayer Mod](https://dsp.thunderstore.io/package/nebula/NebulaMultiplayerMod/) and bug fixes from [ModFixerOne](https://dsp.thunderstore.io/package/starfi5h/ModFixerOne/) by [starfi5h](https://github.com/starfi5h/). + * Add a belt signal(you can find it in first tab of signal selection panel) as dustbin, which is the simplest way to destroy items. + * Reworked dustbin support for Tanks, to improve performance and resolve known bugs. + * Be note that the whole tank logic is optimized which may get a slight better performance even if you don't use them as dustbin. + * Config entry for soil piless gain from destroyed items are changed to a more flexible format. + * [Nebula Mupltiplayer Mod](https://dsp.thunderstore.io/package/nebula/NebulaMultiplayerMod/) and bug fixes from [ModFixerOne](https://dsp.thunderstore.io/package/starfi5h/ModFixerOne/) by [starfi5h](https://github.com/starfi5h/). * 1.2.1 - + Fix dynamic array bug in codes, which causes various bugs and errors. + * Fix dynamic array bug in codes, which causes various bugs and errors. * 1.2.0 - + Use [DSPModSave](https://dsp.thunderstore.io/package/CommonAPI/DSPModSave/) to save dustbin specified data now, which fixes [#1](https://github.com/soarqin/DSP_Mods/issues/1). - + Fix issue for storages on multiple planets. - + Fix issue for multi-level tanks. - + Add a note in README for known bug on tank. + * Use [DSPModSave](https://dsp.thunderstore.io/package/CommonAPI/DSPModSave/) to save dustbin specified data now, which fixes [#1](https://github.com/soarqin/DSP_Mods/issues/1). + * Fix issue for storages on multiple planets. + * Fix issue for multi-level tanks. + * Add a note in README for known bug on tank. * 1.1.0 - + Rewrite whole plugin, make a checkbox on UI so that you can turn storages into dustbin by just ticking it. - + Can turn tank into dustbin now. + * Rewrite whole plugin, make a checkbox on UI so that you can turn storages into dustbin by just ticking it. + * Can turn tank into dustbin now. + +
+ +
+中文读我 ## 更新日志 + * 1.4.0 - + 重构储液罐的输入逻辑代码,以提高性能并解决bug [#53](https://github.com/soarqin/DSP_Mods/issues/53) - + 移除了AssetBundle的使用,将传送带信号图标移入`Assembly资源`,以获得更好的灵活性 + * 重构储液罐的输入逻辑代码,以提高性能并解决bug [#53](https://github.com/soarqin/DSP_Mods/issues/53) + * 移除了AssetBundle的使用,将传送带信号图标移入`Assembly资源`,以获得更好的灵活性 * 1.3.3 - + 支持NebulaMultiplayerModApi 2.0.0 + * 支持NebulaMultiplayerModApi 2.0.0 * 1.3.2 - + 修正了储物仓UI中的垃圾桶勾选框与筛选按钮重叠的显示问题 + * 修正了储物仓UI中的垃圾桶勾选框与筛选按钮重叠的显示问题 * 1.3.1 - + 支持游戏版本 0.10.28.20759 + * 支持游戏版本 0.10.28.20759 * 1.3.0 - + 添加了一个传送带信号(可以在信号选择面板的第一个页签中找到)作为垃圾桶,这是目前销毁物品最简单的方法 - + 重写了储液罐的垃圾桶实现,以提高性能并解决已知的bug - - 注意:整个储液罐逻辑都被优化了,即使你不把他们作为垃圾桶使用,也可能会获得轻微的性能提升 - + 从销毁的物品中获得沙子的配置已变为更灵活的设置项格式 - + [Nebula Mupltiplayer Mod](https://dsp.thunderstore.io/package/nebula/NebulaMultiplayerMod/)支持和Bug修正来自[starfi5h](https://github.com/starfi5h/)的[ModFixerOne](https://dsp.thunderstore.io/package/starfi5h/ModFixerOne/) + * 添加了一个传送带信号(可以在信号选择面板的第一个页签中找到)作为垃圾桶,这是目前销毁物品最简单的方法 + * 重写了储液罐的垃圾桶实现,以提高性能并解决已知的bug + * 注意:整个储液罐逻辑都被优化了,即使你不把他们作为垃圾桶使用,也可能会获得轻微的性能提升 + * 从销毁的物品中获得沙子的配置已变为更灵活的设置项格式 + * [Nebula Mupltiplayer Mod](https://dsp.thunderstore.io/package/nebula/NebulaMultiplayerMod/)支持和Bug修正来自[starfi5h](https://github.com/starfi5h/)的[ModFixerOne](https://dsp.thunderstore.io/package/starfi5h/ModFixerOne/) * 1.2.1 - + 修正了代码中的动态数组Bug,该Bug可能导致各种问题 + * 修正了代码中的动态数组Bug,该Bug可能导致各种问题 * 1.2.0 - + 现在使用[DSPModSave](https://dsp.thunderstore.io/package/CommonAPI/DSPModSave/)来保存垃圾桶的数据,修正了[#1](https://github.com/soarqin/DSP_Mods/issues/1) - + 修正了多星球上的储物仓问题 - + 修正了多层储液罐的问题 - + 在README中添加了一个已知储液罐Bug的说明 + * 现在使用[DSPModSave](https://dsp.thunderstore.io/package/CommonAPI/DSPModSave/)来保存垃圾桶的数据,修正了[#1](https://github.com/soarqin/DSP_Mods/issues/1) + * 修正了多星球上的储物仓问题 + * 修正了多层储液罐的问题 + * 在README中添加了一个已知储液罐Bug的说明 * 1.1.0 - + 重写了整个插件,现在可以在仓储类建筑的UI上勾选来将其转变为垃圾桶 - + 现在可以将储液罐转变为垃圾桶 + * 重写了整个插件,现在可以在仓储类建筑的UI上勾选来将其转变为垃圾桶 + * 现在可以将储液罐转变为垃圾桶 + +
diff --git a/Dustbin/README.md b/Dustbin/README.md index ae56a4a..588483b 100644 --- a/Dustbin/README.md +++ b/Dustbin/README.md @@ -1,18 +1,29 @@ # Dustbin -#### Can turn Storages and Tanks into Dustbin(Destroy incoming items) -#### 储物仓和储液罐可以转变为垃圾桶(销毁送进的物品) +
+Read me in English + +***Can turn Storages and Tanks into Dustbin(Destroy incoming items)*** ## Usage * A checkbox is added to Storages and Tanks UI, which turns them into dustbins. * Items sent into dustbins are removed immediately. * Can get soil piless from destroyed items, configurable through a json encoded config entry. - + You can get item ID list [here](https://dsp-wiki.com/Modding:Items_IDs). + * You can get item ID list from [dsp-wiki](https://dsp-wiki.com/Modding:Items_IDs). + +
+ +
+中文读我 + +***储物仓和储液罐可以转变为垃圾桶(销毁送进的物品)*** ## 使用说明 * 在储物仓和储液罐上增加一个垃圾桶的勾选框。 * 送进垃圾桶的物品会立即被移除。 * 可以从移除的物品中获得沙子,可以通过json编码的设置项进行配置。 - + 可以在[这里](https://dsp-wiki.com/Modding:Items_IDs)获得物品ID列表。 + * 可以在[这里](https://dsp-wiki.com/Modding:Items_IDs)获得物品ID列表。 + +
diff --git a/HideTips/CHANGELOG.md b/HideTips/CHANGELOG.md new file mode 100644 index 0000000..85467de --- /dev/null +++ b/HideTips/CHANGELOG.md @@ -0,0 +1,39 @@ +
+Read me in English + +## Changelog + +* 1.0.4 + * Remove `Disable title screen demo scene loading`, as it is buggy in recent updates. + * Fix a bug that when tutorials are not added to the guides panel when they are hidden by this MOD. +* 1.0.3 + * Add config entries to disable research completion tips/popup windows + * Add a note to README for mod compatibility on `Disable title screen demo scene loading`. +* 1.0.2 + * Add a config entry to disable title screen demo scene loading +* 1.0.1 + * Hide 3 more random tutorial tips popup from bottom-right panel +* 1.0.0 + * Initial release + +
+ +
+中文读我 + +## 更新日志 + +* 1.0.4 + * 移除`关闭标题画面的演示场景加载`设置,因为在最近的更新中有较多bug。 + * 修复了一个bug,当教程指引被这个MOD隐藏时,它们不会被添加到教程面板。 +* 1.0.3 + * 增加设置项以关闭研究完成的提示/弹窗 + * 在README中增加了一个关于`关闭标题画面的演示场景加载`设置的兼容性说明 +* 1.0.2 + * 增加设置项以关闭标题画面的演示场景加载 +* 1.0.1 + * 可屏蔽右下面板的3种随机提醒 +* 1.0.0 + * 初始版本 + +
diff --git a/HideTips/README.md b/HideTips/README.md index 6f47d4a..20b4f53 100644 --- a/HideTips/README.md +++ b/HideTips/README.md @@ -1,42 +1,23 @@ # HideTips -#### Hide/Disable various tutorial tips/messages -#### 隐藏/屏蔽各种引导提示/消息 +
+Read me in English -## Changelog -* 1.0.4 - + Remove `Disable title screen demo scene loading`, as it is buggy in recent updates. - + Fix a bug that when tutorials are not added to the guides panel when they are hidden by this MOD. -* 1.0.3 - + Add config entries to disable research completion tips/popup windows - + Add a note to README for mod compatibility on `Disable title screen demo scene loading`. -* 1.0.2 - + Add a config entry to disable title screen demo scene loading -* 1.0.1 - + Hide 3 more random tutorial tips popup from bottom-right panel -* 1.0.0 - + Initial release +***Hide/Disable various tutorial tips/messages*** -## Usage * Tips/messages that can be hidden: random-reminder, tutorial, achievement/milestone card, research completion tips/popup windows. * Skip prologue for new game. * Each type of tips/messages is configurable individually. -## 更新日志 -* 1.0.4 - + 移除`关闭标题画面的演示场景加载`设置,因为在最近的更新中有较多bug。 - + 修复了一个bug,当教程指引被这个MOD隐藏时,它们不会被添加到教程面板。 -* 1.0.3 - + 增加设置项以关闭研究完成的提示/弹窗 - + 在README中增加了一个关于`关闭标题画面的演示场景加载`设置的兼容性说明 -* 1.0.2 - + 增加设置项以关闭标题画面的演示场景加载 -* 1.0.1 - + 可屏蔽右下面板的3种随机提醒 -* 1.0.0 - + 初始版本 +***隐藏/屏蔽各种引导提示/消息*** + +
+ +
+中文读我 -## 使用说明 * 可以屏蔽的消息:随机提醒,教程,成就/里程碑卡片,研究完成的提示/弹窗。 * 跳过新游戏引导动画。 * 各种屏蔽功能都可以在配置文件里开关。 + +
diff --git a/MechaDronesTweaks/CHANGELOG.md b/MechaDronesTweaks/CHANGELOG.md new file mode 100644 index 0000000..f13e8db --- /dev/null +++ b/MechaDronesTweaks/CHANGELOG.md @@ -0,0 +1,45 @@ +
+Read me in English + +## Changelog + +* 1.1.4 + * Fixed support for game version 0.10.29 + +* 1.1.3 + * Support for game version 0.10.28.20759+ + * Fixed a minor bug that `RemoveSpeedLimitForStage1` not working while `UseFixedSpeed` set to false and `SpeedMultiplier` set to 1 + +* 1.1.2 + * `RemoveBuildRangeLimit`, `LargerAreaForUpgradeAndDismantle` and `LargerAreaForTerraform` are moved to [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) + +* 1.1.1 + * Fixed crash in `LargeAreaForTerraform` functions. + +* 1.1.0 + * Added `RemoveBuildRangeLimit`, `LargerAreaForUpgradeAndDismantle` and `LargerAreaForTerraform` options (Check Usage for details). + +
+ +
+中文读我 + +## 更新日志 + +* 1.1.4 + * 修复了对游戏版本0.10.29的支持 + +* 1.1.3 + * 支持游戏版本0.10.28.20759+ + * 修复了当`UseFixedSpeed`设置为false且`SpeedMultiplier`设置为1时`RemoveSpeedLimitForStage1`无效的问题 + +* 1.1.2 + * `RemoveBuildRangeLimit`, `LargerAreaForUpgradeAndDismantle` 和 `LargerAreaForTerraform` 移动到了 MOD [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) 中 + +* 1.1.1 + * 修复了 `LargeAreaForTerraform` 功能可能导致崩溃的问题。 + +* 1.1.0 + * 添加了 `RemoveBuildRangeLimit`, `LargerAreaForUpgradeAndDismantle` 和 `LargerAreaForTerraform` 选项 (详情见使用说明)。 + +
diff --git a/MechaDronesTweaks/README.md b/MechaDronesTweaks/README.md index 05c19ee..fdedd5b 100644 --- a/MechaDronesTweaks/README.md +++ b/MechaDronesTweaks/README.md @@ -1,26 +1,30 @@ # MechaDronesTweaks -#### Some tweaks for mecha drones(Successor to FastDrones MOD) -#### 机甲建设机调整(FastDrones MOD的后继者) +
+Read me in English + +***Some tweaks for mecha drones(Successor to FastDrones MOD)*** ## Updates + * 1.1.4 - + Fixed support for game version 0.10.29 + * Fixed support for game version 0.10.29 * 1.1.3 - + Support for game version 0.10.28.20759+ - + Fixed a minor bug that `RemoveSpeedLimitForStage1` not working while `UseFixedSpeed` set to false and `SpeedMultiplier` set to 1 + * Support for game version 0.10.28.20759+ + * Fixed a minor bug that `RemoveSpeedLimitForStage1` not working while `UseFixedSpeed` set to false and `SpeedMultiplier` set to 1 * 1.1.2 - + `RemoveBuildRangeLimit`, `LargerAreaForUpgradeAndDismantle` and `LargerAreaForTerraform` are moved to [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) + * `RemoveBuildRangeLimit`, `LargerAreaForUpgradeAndDismantle` and `LargerAreaForTerraform` are moved to [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) * 1.1.1 - + Fixed crash in `LargeAreaForTerraform` functions. + * Fixed crash in `LargeAreaForTerraform` functions. * 1.1.0 - + Added `RemoveBuildRangeLimit`, `LargerAreaForUpgradeAndDismantle` and `LargerAreaForTerraform` options (Check Usage for details). + * Added `RemoveBuildRangeLimit`, `LargerAreaForUpgradeAndDismantle` and `LargerAreaForTerraform` options (Check Usage for details). ## Usage + * Inspired by [FastDrones](https://dsp.thunderstore.io/package/dkoppstein/FastDrones/), but patching IL codes, consuming less CPU to reduce lags on massive builds especially blueprints' put. * Does not affect current game-saves, which means: * All values are patched in memory but written to game-saves so that you can play with normal mecha drone parameters while disabling this MOD. @@ -37,24 +41,15 @@ * `EnergyMultiplier` [Default Value: 0.1]: Energy consumption multiplier for mecha drones. * Note: This MOD will disable `FastDrones` if the MOD is installed, to avoid conflict in functions. -## 更新日志 -* 1.1.4 - + 修复了对游戏版本0.10.29的支持 +
-* 1.1.3 - + 支持游戏版本0.10.28.20759+ - + 修复了当`UseFixedSpeed`设置为false且`SpeedMultiplier`设置为1时`RemoveSpeedLimitForStage1`无效的问题 +
+中文读我 -* 1.1.2 - + `RemoveBuildRangeLimit`, `LargerAreaForUpgradeAndDismantle` 和 `LargerAreaForTerraform` 移动到了 MOD [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist) 中 - -* 1.1.1 - + 修复了 `LargeAreaForTerraform` 功能可能导致崩溃的问题。 - -* 1.1.0 - + 添加了 `RemoveBuildRangeLimit`, `LargerAreaForUpgradeAndDismantle` 和 `LargerAreaForTerraform` 选项 (详情见使用说明)。 +***机甲建设机调整(FastDrones MOD的后继者)*** ## 使用说明 + * 功能参考 [FastDrones](https://dsp.thunderstore.io/package/dkoppstein/FastDrones/),但主要对IL代码进行Patch因此消耗更少的CPU,尤其在大规模建造比如放置蓝图的时候可以大大减少卡顿。 * 不影响当前游戏存档: * 所有修改参数都在内存中Patch不会写入存档,禁用此MOD后可恢复正常建设机参数。 @@ -70,3 +65,5 @@ * `SpeedMultiplier` [默认值: 4]: 速度倍数。 * `EnergyMultiplier` [默认值: 0.1]: 能量消耗倍数。 * 说明: 如果安装了`FastDrones`本MOD会将其禁用避免功能冲突。 + +
diff --git a/OCBatchBuild/OCBatchBuild.csproj b/OCBatchBuild/OCBatchBuild.csproj deleted file mode 100644 index 711660f..0000000 --- a/OCBatchBuild/OCBatchBuild.csproj +++ /dev/null @@ -1,29 +0,0 @@ - - - - - net472 - OCBatchBuild - org.soardev.ocbatchbuild - DSP MOD - OCBatchBuild - 1.2.0 - true - latest - https://nuget.bepinex.dev/v3/index.json - - - - - - - - - - - - - - - - - diff --git a/OCBatchBuild/OrbitalCollectorBatchBuild.cs b/OCBatchBuild/OrbitalCollectorBatchBuild.cs deleted file mode 100644 index 0e501bd..0000000 --- a/OCBatchBuild/OrbitalCollectorBatchBuild.cs +++ /dev/null @@ -1,129 +0,0 @@ -using System; -using System.Collections.Generic; -using BepInEx; -using HarmonyLib; - -namespace OCBatchBuild; - -[BepInPlugin(PluginInfo.PLUGIN_GUID, PluginInfo.PLUGIN_NAME, PluginInfo.PLUGIN_VERSION)] -public class OrbitalCollectorBatchBuild : BaseUnityPlugin -{ - private new static readonly BepInEx.Logging.ManualLogSource Logger = - BepInEx.Logging.Logger.CreateLogSource(PluginInfo.PLUGIN_NAME); - - private bool _cfgEnabled = true; - private static int _maxBuildCount; - private static bool _instantBuild; - - private void Awake() - { - _cfgEnabled = Config.Bind("General", "Enabled", _cfgEnabled, "enable/disable this plugin").Value; - _maxBuildCount = Config.Bind("General", "MaxBuildCount", _maxBuildCount, "Maximum Orbital Collectors to build once, set to 0 to build as many as possible").Value; - _instantBuild = Config.Bind("General", "InstantBuild", _instantBuild, "Enable to make Orbital Collectors built instantly. This is thought to be game logic breaking.").Value; - Harmony.CreateAndPatchAll(typeof(OrbitalCollectorBatchBuild)); - } - - [HarmonyPostfix] - [HarmonyPatch(typeof(BuildTool_Click), "CreatePrebuilds")] - private static void CreatePrebuilds(BuildTool_Click __instance) - { - /* Check Gas Planet */ - if (__instance.planet.type != EPlanetType.Gas) return; - if (__instance.buildPreviews.Count == 0) return; - - var buildPreview = __instance.buildPreviews[0]; - /* Check if is collector station */ - if (!buildPreview.desc.isCollectStation) return; - - var factory = __instance.factory; - var stationPool = factory.transport.stationPool; - var entityPool = factory.entityPool; - var stationCursor = factory.transport.stationCursor; - var pos = buildPreview.lpos; - var pos2 = buildPreview.lpos2; - var itemId = buildPreview.item.ID; - var countToBuild = _maxBuildCount - 1; - if (countToBuild == 0) return; - var prebuilds = new List {-buildPreview.objId}; - var player = __instance.player; - var firstPos = pos; - var cellCount = PlanetGrid.DetermineLongitudeSegmentCount(0, factory.planet.aux.mainGrid.segment) * 5; - var cellRad = Math.PI / cellCount; - var distRadCount = 0; - for (var i = 1; i <= cellCount; i++) - { - pos = Maths.RotateLF(0.0, 1.0, 0.0, cellRad, pos); - if ((firstPos - pos).sqrMagnitude < 14297f) continue; - distRadCount = i; - break; - } - - if (distRadCount == 0) return; - pos = firstPos; - /* rotate for a minimal distance for next OC on sphere */ - pos = Maths.RotateLF(0.0, 1.0, 0.0, cellRad * distRadCount, pos); - pos2 = Maths.RotateLF(0.0, 1.0, 0.0, cellRad * distRadCount, pos2); - for (var i = distRadCount; i < cellCount && countToBuild != 0;) - { - /* Check for collision */ - var collide = false; - for (var j = 1; j < stationCursor; j++) - { - if (stationPool[j] == null || stationPool[j].id != j) continue; - if ((entityPool[stationPool[j].entityId].pos - pos).sqrMagnitude >= 14297f) continue; - collide = true; - break; - } - if (collide) - { - /* rotate for a small cell on sphere */ - pos = Maths.RotateLF(0.0, 1.0, 0.0, cellRad, pos); - pos2 = Maths.RotateLF(0.0, 1.0, 0.0, cellRad, pos2); - i++; - continue; - } - - if (player.inhandItemId == itemId && player.inhandItemCount > 0) - { - player.UseHandItems(1, out var _); - } - else - { - var count = 1; - player.package.TakeTailItems(ref itemId, ref count, out var _); - if (count == 0) break; - } - - var rot = Maths.SphericalRotation(pos, 0f); - var rot2 = Maths.SphericalRotation(pos2, 0f); - var prebuild = default(PrebuildData); - prebuild.protoId = (short)buildPreview.item.ID; - prebuild.modelIndex = (short)buildPreview.desc.modelIndex; - prebuild.pos = pos; - prebuild.pos2 = pos2; - prebuild.rot = rot; - prebuild.rot2 = rot2; - prebuild.pickOffset = (short)buildPreview.inputOffset; - prebuild.insertOffset = (short)buildPreview.outputOffset; - prebuild.recipeId = buildPreview.recipeId; - prebuild.filterId = buildPreview.filterId; - prebuild.InitParametersArray(buildPreview.paramCount); - for (var j = 0; j < buildPreview.paramCount; j++) - { - prebuild.parameters[j] = buildPreview.parameters[j]; - } - prebuilds.Add(factory.AddPrebuildDataWithComponents(prebuild)); - countToBuild--; - /* rotate for minimal distance for next OC on sphere */ - pos = Maths.RotateLF(0.0, 1.0, 0.0, cellRad * distRadCount, pos); - pos2 = Maths.RotateLF(0.0, 1.0, 0.0, cellRad * distRadCount, pos2); - i += distRadCount; - } - - if (!_instantBuild) return; - foreach (var id in prebuilds) - { - factory.BuildFinally(player, id); - } - } -} \ No newline at end of file diff --git a/OCBatchBuild/README.md b/OCBatchBuild/README.md deleted file mode 100644 index f04d278..0000000 --- a/OCBatchBuild/README.md +++ /dev/null @@ -1,24 +0,0 @@ -# OrbitalCollectorBatchBuild - -#### Batch build Orbital Collectors -#### 轨道采集器快速批量建造 - -## Updates -### 1.2.0 -* Support for mods that change default radius of Gas Planets, e.g. `GalacticScale`. -* Remove maximum build count limit in config. - -### 1.1.0 -* Add `InstantBuild` to config - -## Usage -* Build any orbital collector on a Gas Giant to trigger building all placable orbital collectors. -* Can set maximum orbital collectors to build once in config. -* Note: Collectors are placed as prebuilt status, you still need to fly around the Gas Giant to complete building. This is designed not to break much game logic. - You can set `InstantBuild` to `true` in config to make them built instantly. - -## 使用说明 -* 在气态星球上建造任何一个轨道采集器触发所有可建造采集器的放置。 -* 可以在设置文件中配置一次批量建造的最大轨道采集器数量。 -* 提示:轨道采集器会处于待建造状态,你仍然需要绕行气态行星一圈以完成建造。这个机制是为了尽可能减少对原有游戏逻辑的破坏。 - 在配置文件里设置`InstantBuild`为`true`可以使采集器的建造立即完成。 \ No newline at end of file diff --git a/OCBatchBuild/package/icon.png b/OCBatchBuild/package/icon.png deleted file mode 100644 index 136d47cc56f4597ae4259e56bed5c790556111dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54314 zcmZ5{1yCHp)-D8h5`ra!g(P@z3%Xc>OK^90Uu0oPun;u31Qr6pEy3O0-Q68_v4w?w z-24CaUe%kLshO7PK3&~&<~yg)7onyiON9Rl9}NwSNM24x9Ssfr=@A_b_u12JiWJEG zpOlBXtQ1=LD9yoB0@FrPSrQHHZ!7`Q4C^V4=PIY?frduh^`8s9&!y1v>Ag028A(ka z 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 Hu0mjfR&^=; diff --git a/OCBatchBuild/package/manifest.json b/OCBatchBuild/package/manifest.json deleted file mode 100644 index ec35549..0000000 --- a/OCBatchBuild/package/manifest.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "name": "OrbitalCollectorBatchBuild", - "version_number": "1.2.0", - "website_url": "https://github.com/soarqin/DSP_Mods/tree/master/OCBatchBuild", - "description": "Batch build Orbital Collectors / 轨道采集器快速批量建造", - "dependencies": [ - "xiaoye97-BepInEx-5.4.17" - ] -} diff --git a/OverclockEverything/README.md b/OverclockEverything/README.md index f104d4b..7967bf2 100644 --- a/OverclockEverything/README.md +++ b/OverclockEverything/README.md @@ -1,12 +1,9 @@ # OverclockEverything -#### Boost nearly all structures -#### 加速几乎所有建筑功能 - -## Usage +***Boost nearly all structures*** * Boost power generation, assembling speed, belt and sorter speed. -## 使用说明 +***加速几乎所有建筑功能*** * 加快发电,制造,传送带和分拣器速度。 diff --git a/README.md b/README.md index 47ac48a..775d90a 100644 --- a/README.md +++ b/README.md @@ -1,67 +1,62 @@ -## DSP Mods by Soar Qin +# DSP Mods by Soar Qin -# [CheatEnabler](CheatEnabler) +## [CheatEnabler](CheatEnabler) -Add various cheat functions while disabling abnormal determinants +Add various cheat functions while disabling abnormal determinants 添加一些作弊功能,同时屏蔽异常检测 -# [CompressSave](CompressSave) +## [CompressSave](CompressSave) -Moved [here](https://github.com/soarqin/DSP_Mods_TO/tree/master/CompressSave) +Moved [to another repo](https://github.com/soarqin/DSP_Mods_TO/tree/master/CompressSave) -# [LogisticMiner](LogisticMiner) +## [LogisticMiner](LogisticMiner) -Logistic Storages can mine all ores/water on current planet +Logistic Storages can mine all ores/water on current planet 物流塔可以采集当前星球的全部矿产(以及水) -# [HideTips](HideTips) +## [HideTips](HideTips) -Hide/Disable various tutorial tips/messages +Hide/Disable various tutorial tips/messages 隐藏/屏蔽各种引导提示/消息 -# [Dustbin](Dustbin) +## [Dustbin](Dustbin) -Can turn Storages and Tanks into Dustbin(Destroy incoming items) +Can turn Storages and Tanks into Dustbin(Destroy incoming items) 储物仓和储液罐可以转变为垃圾桶(销毁送进的物品) -# [OverclockEverything](OverclockEverything) +## [OverclockEverything](OverclockEverything) Boost nearly all structures 加速几乎所有建筑功能 -# [OrbitalCollectorBatchBuild](OCBatchBuild) +## [UniverseGenTweaks](UniverseGenTweaks) -Batch build Orbital Collectors -轨道采集器快速批量建造 - -# [UniverseGenTweaks](UniverseGenTweaks) - -Universe Generator Tweak +Universe Generator Tweak 宇宙生成参数调节 -# [MechaDronesTweaks](MechaDronesTweaks) +## [MechaDronesTweaks](MechaDronesTweaks) -Some tweaks for mecha drones and build functions(Successor to FastDrones MOD) +Some tweaks for mecha drones and build functions(Successor to FastDrones MOD) 机甲建设机和建设功能调整(FastDrones MOD的后继者) -# [LabOpt](LabOpt) +## [LabOpt](LabOpt) -Performance optimizations for Matrix Labs +Performance optimizations for Matrix Labs Marked as obsoleted temporarily, needs more investigation about LabComponent's mechanism 优化研究站性能 暂时标识为过期,需要更多关于LabComponent机制的研究 -# [PoolOpt](PoolOpt) +## [PoolOpt](PoolOpt) -Optimize memory pools on loading gamesaves +Optimize memory pools on loading gamesaves 加载游戏存档时优化内存池的使用 -# [UserCloak](UserCloak) +## [UserCloak](UserCloak) -Cloak(Fake) user account info +Cloak(Fake) user account info 隐匿(伪装)用户账号信息 -# [UXAssist](UXAssist) +## [UXAssist](UXAssist) -Some functions and patches for better user experience -一些提升用户体验的功能和补丁 \ No newline at end of file +Some functions and patches for better user experience +一些提升用户体验的功能和补丁 diff --git a/UXAssist/README.md b/UXAssist/README.md index 2401122..a111226 100644 --- a/UXAssist/README.md +++ b/UXAssist/README.md @@ -3,145 +3,145 @@
Read me in English -#### Some functions and patches for better user experience +***Some functions and patches for better user experience*** ## Usage * Press `` Alt+`(BackQuote) `` to call up the config panel. You can change the shortcut on the panel. * There are also buttons on title screen and planet minimap area to call up the config panel. * Patches: - + Strict hotkey dectection for build menu, thus building hotkeys(0~9, F1~F10, X, U) are not triggered while holding Ctrl/Alt/Shift. - + Fix a bug that warning popup on `Veins Utilization` upgraded to level 8000+ - + Sort blueprint structures before saving, to reduce generated blueprint data size a little - + Increase maximum count of Metadata Instantiations to 20000 (from 2000) - + Increase capacity of player order queue to 128 (from 16) - + Enable `Hide UI` function(`F11` by default) while on Star Map view - + Append mod profile name to game window title, if using mod managers (`Thunderstore Mod Manager` or `r2modman`). + * Strict hotkey dectection for build menu, thus building hotkeys(0~9, F1~F10, X, U) are not triggered while holding Ctrl/Alt/Shift. + * Fix a bug that warning popup on `Veins Utilization` upgraded to level 8000+ + * Sort blueprint structures before saving, to reduce generated blueprint data size a little + * Increase maximum count of Metadata Instantiations to 20000 (from 2000) + * Increase capacity of player order queue to 128 (from 16) + * Enable `Hide UI` function(`F11` by default) while on Star Map view + * Append mod profile name to game window title, if using mod managers (`Thunderstore Mod Manager` or `r2modman`). * Features: - + General - - Enable game window resize - - Remember window position and size on last exit - - Convert Peace-Mode saves to Combat-Mode on loading - - Scale up mouse cursor - - Note: This will enable software cursor mode, which may cause mouse movement lag on heavy load. - - Mod manager profile based save folder - - Save files are stored in `Save\` folder. - - Will use original save location if matching default profile name. - - Mod manager profile based option - - Option file is stored as `Options\.xml`. - - Logical Frame Rate - - This will change game running speed, down to 0.1x slower and up to 10x faster. - - A pair of shortcut keys (`-` and `+`) to change the logical frame rate by -0.5x and +0.5x. - - Note: - - High logical frame rate is not guaranteed to be stable, especially when factories are under heavy load. - - This will not affect some game animations. - - When set game speed in mod `Auxilaryfunction`, this feature will be disabled. - - When mod `BulletTime` is installed, this feature will be hidden, but patch `BulletTime`'s speed control, to make its maximum speed 10x. - - Set process priority - - Set enabled CPU threads - - Increase maximum count of Metadata Instantiations to 20000 (from 2000) - - Increase capacity of player order queue to 128 (from 16) - - Starmap view: - - Add a star name filter, you can filter displayed star names by ores or planet types now. - - Add a dropdown box to show all stars' distance and/or planet count. - + Factory - - Sunlight at night - - Remove some build conditions - - Remove build count and range limit - - Larger area for upgrade and dismantle(30x30 at max) - - Larger area for terraform(30x30 at max) - - Off-grid building and stepped rotation - - Cut conveyor belt - - Press shortcut key to cut conveyor belt under cursor. - - The default shortcut key is Alt+X, you can set it in system options panel. - - Treat stack items as single in monitor components - - Quick build and dismantle stacking labs/storages/tanks - - Fast fill in to and take out from tanks - - You can set multiplier for tanks' operation speed - - This affects manually fill in to and/or take out from tanks, as well as transfer from upper to lower level. - - Protect veins from exhaustion - - By default, the vein amount is protected at 100, and oil speed is protected at 1.0/s, you can set them yourself in config file. - - When reach the protection value, veins/oils steeps will not be mined/extracted any longer. - - Close this function to resume mining and pumping, usually when you have enough level on `Veins Utilization` - - Do not render factory entities (except belts and sorters) - - This also makes players click though factory entities but belts and sorters - - Drag building power poles in maximum connection range - - Dismantle blueprint selected buildings - - Press shortcut key in blueprint copy mode to dismantle selected buildings. - - The default shortcut key is Ctrl+X, you can set it in system options panel. - - Re-intialize planet (without reseting veins) - - Quick dismantle all buildings (without drops) - - Quick build Orbital Collectors - - Belt signals for buy out dark fog items automatically - - 6 belt signals are added to the signal panel, which can be used to buy out dark fog items automatically. - - Generated items are stacked in 4 items. - - Exchange ratio is following the original game design, aka: - - 1 Metaverse = 20 Dark Fog Matrices - - 1 Metaverse = 60 Engery Shards - - 1 Metaverse = 30 Silicon-based Neurons - - 1 Metaverse = 30 Negentropy Singularities - - 1 Metaverse = 30 Matter Recombinators - - 1 Metaverse = 10 Core Elements - - Tweak building buffer - - Factory recipe buffer formula: take the larger value between `Assembler buffer time multiplier(in seconds) * items needed per second` and `Assembler buffer minimum multiplier * items needed per recipe` - - `Assembler buffer time multiplier(in seconds)`: Range 2-10, default is 4 (same as game) - - `Assembler buffer minimum multiplier`: Range 2-10, default is 2 (same as game) - - Matrix Lab assembly mode formula: Default buffer is `Buffer count for assembling in labs`, when using Self-evolution Lab, if recipe's original production time is not greater than 9 seconds, add `Extra buffer count for Self-evolution Labs` * (`Lab speed` - 1) - - `Buffer count for assembling in labs`: Range 2-20, default is 6 (same as game) - - `Extra buffer count for Self-evolution Labs`: Range 1-10, default is 3 (same as game) - - `Buffer count for researching in labs`: Range 2-20, default is 10 (same as game) - - `Ray Receiver Graviton Lens buffer count`: Range 1-20, default is 1 (game default is 20) - - `Ejector Solar Sails buffer count`: Range 5-400 (step by 5), default is 20 (same as game) - - `Silo Rockets buffer count`: Range 1-20, default is 20 (same as game) - + Logistics - - Enhanced control for logistic storage capacities - - Logistic storage capacities are not scaled on upgrading `Logistics Carrier Capacity`, if they are not set to maximum capacity or already greater than maximum capacity. - - You can use arrow keys to adjust logistic storage capacities gracefully. - - Logistics Control Panel Improvement - - Auto apply filter with item under mouse cursor while opening the panel - - Quick-set item filter while right-clicking item icons in storage list on the panel - - Allow overflow for Logistic Stations and Advanced Mining Machines - - Allow overflow when trying to insert in-hand items - - Allow `Enhanced control for logistic storage capacities` to exceed tech capacity limits - - Remove logistic strorage capacity limit check on loading game - - Real-time logistic stations info panel - - Auto-config logistic stations - - Auto-config buildings include: Logistics Distributor, PLS, ILS, Advanced Mining Machine - + Player/Mecha - - Unlimited interactive range - - Enable player actions in globe view - - Hide tips for soil piles changes - - Enhanced count control for hand-make - - Shortcut keys for showing stars' name - - Add a shortcut key to always show all star names in starmap when holding, default is `Alt` - - Add a shortcut key to toggle between three star name display states in starmap: `Original state`, `Show all names`, `Hide all names`, default is `Tab`, will restore to original state when closing starmap - - Auto navigation on sailings - - It keeps Icarus on course to the target planet - - It will try to bypass any obstacles(planets, stars or dark-fog hives) on the way - - Furthermore, you can set a shortcut key in the system options window, which is used to toggle `Auto-cruise` that enables flying to targeted planets fully automatically. - - Auto-cruise will start when you select a planet as target - - It will use warper to fly to the target planet if the planet is too far away, the range can be configured. - - It will speed down when approaching the target planet, to avoid overshooting - + Dyson Sphere - - Stop ejectors when available nodes are all filled up - - Construct only structure points but frames - - Re-initialize Dyson Spheres - - Quick dismantle Dyson Shells - - Dyson Sphere "Auto Fast Build" speed multiplier - - Note: this only applies to `Dyson Sphere "Auto Fast Build"` in sandbox mode - + Tech - - Restore upgrades of `Sorter Cargo Stacking` on panel - - Set `Sorter Cargo Stacking` to unresearched state - - Buy out techs with their prerequisites - - This enables batch buying out techs with their prerequisites. Buy-out button is shown for all locked techs/upgrads. - + Combat - - Open Dark Fog Communicator anywhere + * General + * Enable game window resize + * Remember window position and size on last exit + * Convert Peace-Mode saves to Combat-Mode on loading + * Scale up mouse cursor + * Note: This will enable software cursor mode, which may cause mouse movement lag on heavy load. + * Mod manager profile based save folder + * Save files are stored in `Save\` folder. + * Will use original save location if matching default profile name. + * Mod manager profile based option + * Option file is stored as `Options\.xml`. + * Logical Frame Rate + * This will change game running speed, down to 0.1x slower and up to 10x faster. + * A pair of shortcut keys (`-` and `+`) to change the logical frame rate by -0.5x and +0.5x. + * Note: + * High logical frame rate is not guaranteed to be stable, especially when factories are under heavy load. + * This will not affect some game animations. + * When set game speed in mod `Auxilaryfunction`, this feature will be disabled. + * When mod `BulletTime` is installed, this feature will be hidden, but patch `BulletTime`'s speed control, to make its maximum speed 10x. + * Set process priority + * Set enabled CPU threads + * Increase maximum count of Metadata Instantiations to 20000 (from 2000) + * Increase capacity of player order queue to 128 (from 16) + * Starmap view: + * Add a star name filter, you can filter displayed star names by ores or planet types now. + * Add a dropdown box to show all stars' distance and/or planet count. + * Factory + * Sunlight at night + * Remove some build conditions + * Remove build count and range limit + * Larger area for upgrade and dismantle(30x30 at max) + * Larger area for terraform(30x30 at max) + * Off-grid building and stepped rotation + * Cut conveyor belt + * Press shortcut key to cut conveyor belt under cursor. + * The default shortcut key is Alt+X, you can set it in system options panel. + * Treat stack items as single in monitor components + * Quick build and dismantle stacking labs/storages/tanks + * Fast fill in to and take out from tanks + * You can set multiplier for tanks' operation speed + * This affects manually fill in to and/or take out from tanks, as well as transfer from upper to lower level. + * Protect veins from exhaustion + * By default, the vein amount is protected at 100, and oil speed is protected at 1.0/s, you can set them yourself in config file. + * When reach the protection value, veins/oils steeps will not be mined/extracted any longer. + * Close this function to resume mining and pumping, usually when you have enough level on `Veins Utilization` + * Do not render factory entities (except belts and sorters) + * This also makes players click though factory entities but belts and sorters + * Drag building power poles in maximum connection range + * Dismantle blueprint selected buildings + * Press shortcut key in blueprint copy mode to dismantle selected buildings. + * The default shortcut key is Ctrl+X, you can set it in system options panel. + * Re-intialize planet (without reseting veins) + * Quick dismantle all buildings (without drops) + * Quick build Orbital Collectors + * Belt signals for buy out dark fog items automatically + * 6 belt signals are added to the signal panel, which can be used to buy out dark fog items automatically. + * Generated items are stacked in 4 items. + * Exchange ratio is following the original game design, aka: + * 1 Metaverse = 20 Dark Fog Matrices + * 1 Metaverse = 60 Engery Shards + * 1 Metaverse = 30 Silicon-based Neurons + * 1 Metaverse = 30 Negentropy Singularities + * 1 Metaverse = 30 Matter Recombinators + * 1 Metaverse = 10 Core Elements + * Tweak building buffer + * Factory recipe buffer formula: take the larger value between `Assembler buffer time multiplier(in seconds) * items needed per second` and `Assembler buffer minimum multiplier * items needed per recipe` + * `Assembler buffer time multiplier(in seconds)`: Range 2-10, default is 4 (same as game) + * `Assembler buffer minimum multiplier`: Range 2-10, default is 2 (same as game) + * Matrix Lab assembly mode formula: Default buffer is `Buffer count for assembling in labs`, when using Self-evolution Lab, if recipe's original production time is not greater than 9 seconds, add `Extra buffer count for Self-evolution Labs` * (`Lab speed` - 1) + * `Buffer count for assembling in labs`: Range 2-20, default is 6 (same as game) + * `Extra buffer count for Self-evolution Labs`: Range 1-10, default is 3 (same as game) + * `Buffer count for researching in labs`: Range 2-20, default is 10 (same as game) + * `Ray Receiver Graviton Lens buffer count`: Range 1-20, default is 1 (game default is 20) + * `Ejector Solar Sails buffer count`: Range 5-400 (step by 5), default is 20 (same as game) + * `Silo Rockets buffer count`: Range 1-20, default is 20 (same as game) + * Logistics + * Enhanced control for logistic storage capacities + * Logistic storage capacities are not scaled on upgrading `Logistics Carrier Capacity`, if they are not set to maximum capacity or already greater than maximum capacity. + * You can use arrow keys to adjust logistic storage capacities gracefully. + * Logistics Control Panel Improvement + * Auto apply filter with item under mouse cursor while opening the panel + * Quick-set item filter while right-clicking item icons in storage list on the panel + * Allow overflow for Logistic Stations and Advanced Mining Machines + * Allow overflow when trying to insert in-hand items + * Allow `Enhanced control for logistic storage capacities` to exceed tech capacity limits + * Remove logistic strorage capacity limit check on loading game + * Real-time logistic stations info panel + * Auto-config logistic stations + * Auto-config buildings include: Logistics Distributor, PLS, ILS, Advanced Mining Machine + * Player/Mecha + * Unlimited interactive range + * Enable player actions in globe view + * Hide tips for soil piles changes + * Enhanced count control for hand-make + * Shortcut keys for showing stars' name + * Add a shortcut key to always show all star names in starmap when holding, default is `Alt` + * Add a shortcut key to toggle between three star name display states in starmap: `Original state`, `Show all names`, `Hide all names`, default is `Tab`, will restore to original state when closing starmap + * Auto navigation on sailings + * It keeps Icarus on course to the target planet + * It will try to bypass any obstacles(planets, stars or dark-fog hives) on the way + * Furthermore, you can set a shortcut key in the system options window, which is used to toggle `Auto-cruise` that enables flying to targeted planets fully automatically. + * Auto-cruise will start when you select a planet as target + * It will use warper to fly to the target planet if the planet is too far away, the range can be configured. + * It will speed down when approaching the target planet, to avoid overshooting + * Dyson Sphere + * Stop ejectors when available nodes are all filled up + * Construct only structure points but frames + * Re-initialize Dyson Spheres + * Quick dismantle Dyson Shells + * Dyson Sphere "Auto Fast Build" speed multiplier + * Note: this only applies to `Dyson Sphere "Auto Fast Build"` in sandbox mode + * Tech + * Restore upgrades of `Sorter Cargo Stacking` on panel + * Set `Sorter Cargo Stacking` to unresearched state + * Buy out techs with their prerequisites + * This enables batch buying out techs with their prerequisites. Buy-out button is shown for all locked techs/upgrads. + * Combat + * Open Dark Fog Communicator anywhere ## Notes * Please upgrade `BepInEx` 5.4.21 or later if using with [BlueprintTweaks](https://dsp.thunderstore.io/package/kremnev8/BlueprintTweaks/) to avoid possible conflicts. - + You can download `BepInEx` [here](https://github.com/bepinex/bepinex/releases/latest)(choose x64 edition). - + If using with r2modman, you can upgrade `BepInEx` by clicking `Settings` -> `Browse profile folder`, then extract downloaded zip to the folder and overwrite existing files. + * You can download [BepInEx here](https://github.com/bepinex/bepinex/releases/latest)(choose x64 edition). + * If using with r2modman, you can upgrade `BepInEx` by clicking `Settings` -> `Browse profile folder`, then extract downloaded zip to the folder and overwrite existing files. ## CREDITS @@ -156,9 +156,10 @@
中文读我 -#### 一些提升用户体验的功能和补丁 +***一些提升用户体验的功能和补丁*** ## Bug反馈 + * QQ群:372754090 ## 使用说明 @@ -166,139 +167,139 @@ * 按 `` Alt+`(反引号) `` 键呼出主面板,可以在面板上修改快捷键。 * 标题界面和行星小地图旁也有按钮呼出主面板。 * 补丁: - + 更严格的建造菜单热键检测,因此在按住Ctrl/Alt/Shift时不再会触发建造热键(0~9, F1~F10, X, U) - + 修复了`矿物利用`升级到8000级以上时弹出警告的bug - + 保存蓝图前对建筑进行排序,以减少生成的蓝图数据大小 - + 将元数据提取的最大数量增加到20000(原来为2000) - + 将玩家指令队列的容量增加到128(原来为16) - + 在星图视图中启用`隐藏UI`功能(默认按键为`F11`) - + 如果使用mod管理器(`Thunderstore Mod Manager`或`r2modman`)启动游戏,在游戏窗口标题中追加mod配置档案名 + * 更严格的建造菜单热键检测,因此在按住Ctrl/Alt/Shift时不再会触发建造热键(0~9, F1~F10, X, U) + * 修复了`矿物利用`升级到8000级以上时弹出警告的bug + * 保存蓝图前对建筑进行排序,以减少生成的蓝图数据大小 + * 将元数据提取的最大数量增加到20000(原来为2000) + * 将玩家指令队列的容量增加到128(原来为16) + * 在星图视图中启用`隐藏UI`功能(默认按键为`F11`) + * 如果使用mod管理器(`Thunderstore Mod Manager`或`r2modman`)启动游戏,在游戏窗口标题中追加mod配置档案名 * 功能: - + 通用 - - 可调整游戏窗口大小(可最大化和拖动边框) - - 记住上次退出时的窗口位置和大小 - - 在加载和平模式存档时将其转换为战斗模式 - - 放大鼠标指针 - - 注意:这将启用软件指针模式,可能会在CPU负载较重时导致鼠标移动延迟 - - 基于mod管理器配置档案名的存档文件夹 - - 存档文件会存储在`Save\`文件夹中 - - 如果匹配默认配置档案名则使用原始存档位置 - - 基于mod管理器配置档案名的选项文件 - - 选项文件存储为`Options\.xml` - - 逻辑帧倍率 - - 这将改变游戏运行速度,最慢0.1倍,最快10倍 - - 设置了一对快捷键(`-`和`+`),可以-/+0.5倍改变逻辑帧倍率 - - 注意: - - 高逻辑帧倍率不能保证稳定性,特别是在工厂负载较重时 - - 这不会影响一些游戏动画 - - 当在`Auxilaryfunction`mod中设置游戏速度时,此功能将被禁用 - - 当安装了`BulletTime`mod时,此功能将被隐藏,但会对`BulletTime`的速度控制打补丁,使其最大速度变为10倍 - - 设置进程优先级 - - 设置使用的CPU线程 - - 将元数据提取的最大数量增加到20000(原来为2000) - - 将玩家指令队列的容量增加到128(原来为16) - - 星图: - - 添加星系名过滤器,现在可以按矿物或行星类型过滤显示的星系名 - - 添加了一个下拉框用以切换显示所有星系的距离和/或行星数量 - + 工厂 - - 夜间日光灯 - - 移除部分不影响游戏逻辑的建造条件 - - 范围升级和拆除的最大区域扩大(最大30x30) - - 范围铺设地基的最大区域扩大(最大30x30) - - 脱离网格建造以及小角度旋转 - - 切割传送带 - - 按快捷键切割光标位置的传送带 - - 默认快捷键是Alt+X,可以在系统选项面板中设置 - - 在流速计中将堆叠物品视为单个物品 - - 快速建造和拆除堆叠研究站/储物仓/储液罐 - - 储液罐快速注入和抽取液体 - - 你可以设置储液罐操作速度的倍率 - - 影响手动注入和抽取,以及从储液罐上层传输到下层的速度 - - 保护矿脉不会耗尽 - - 默认矿脉数量保护在100,采油速保护在1.0/s,你可以在配置文件中自行设置。 - - 当达到保护值时,矿脉和油井将不再被开采。 - - 关闭此功能以恢复开采,一般是当你在`矿物利用`上有足够的等级时。 - - 不渲染工厂建筑实体(除了传送带和分拣器) - - 这也使玩家可以点穿工厂实体直接点到传送带和分拣器 - - 拖动建造电线杆时自动使用最大连接距离间隔 - - 拆除蓝图选中的建筑 - - 在蓝图复制模式下按快捷键拆除选中的建筑 - - 默认快捷键是Ctrl+X,可以在系统选项面板中设置 - - 初始化本行星(不重置矿脉) - - 快速拆除所有建筑(不掉落) - - 快速建造轨道采集器 - - 用于自动购买黑雾物品的传送带信号 - - 在信号面板上添加了6个传送带信号,可以用于自动购买黑雾道具。 - - 生成的物品堆叠数为4。 - - 兑换比率遵循原始游戏设计,即: - - 1个元宇宙 = 20个黑雾矩阵 - - 1个元宇宙 = 60个能量碎片 - - 1个元宇宙 = 30个硅基神经元 - - 1个元宇宙 = 30个负熵奇点 - - 1个元宇宙 = 30个物质重组器 - - 1个元宇宙 = 10个核心素 - - 调整建筑输入缓冲 - - 工厂配方计算公式,在`工厂配方缓冲时间倍率秒数x每秒需要的原料数量`和`工厂配方缓冲最小倍率x每生产一次配方需要的原料数量`中取更大的那个值 - - `工厂配方缓冲时间倍率(秒)`:范围2-10,默认为4(同游戏) - - `工厂配方缓冲最小倍率`:范围2-10,默认为2(同游戏) - - 研究站矩阵合成模式计算公式,默认缓存`研究站矩阵合成模式缓存数量`个,当使用自演化研究站时,如果配方的原始生产时间不大于9秒,则增加`自演化研究站矩阵额外缓冲数量`*(`研究站速度倍率`-1) - - `研究站矩阵合成模式缓存数量`:范围2-20,默认为6(同游戏) - - `自演化研究站矩阵额外缓冲数量`:范围1-10,默认为3(同游戏) - - `研究站科研模式缓存数量`:范围2-20,默认为10(同游戏) - - `射线接收器透镜缓冲数量`:范围1-20,默认为1(游戏默认为20) - - `弹射太阳帆缓冲区数量`:范围5-400(步进值为5),默认值为20(与游戏相同) - - `发射井火箭缓冲区数量`:范围1-20,默认值为20(与游戏相同) - + 物流 - - 物流塔存储数量限制控制改进 - - 当升级`运输机舱扩容`时,不会对各种物流塔的存储限制按比例提升,除非设置为最大允许容量或者已经超过升级后的最大容量。 - - 你可以使用方向键微调物流塔存储限制 - - 物流控制面板改进 - - 打开面板时自动将鼠标指向物品设为筛选条件 - - 在控制面板物流塔列表中右键点击物品图标快速设置为筛选条件 - - 允许物流塔和大型采矿机物品溢出 - - 当尝试塞入手中物品时允许溢出 - - 允许`物流塔存储数量限制控制改进`超过科技容量限制 - - 在加载游戏时移除物流塔容量限制检查 - - 物流运输站实时信息面板 - - 注意:如果你启用了`Auxilaryfunction`中的`展示物流站信息`,此功能将被隐藏 - - 自动配置物流站 - - 自动配置的建筑包括:物流配送器、行星物流站、星际物流站、高级采矿机 - + 玩家/机甲 - - 无限交互距离 - - 移除建造数量和范围限制 - - 在行星视图中允许玩家操作 - - 隐藏沙土数量变动的提示 - - 手动制造物品的数量控制改进 - - 启用显示所有星系名称的快捷键 - - 新增一个快捷键,按住后始终在星图显示所有星系名称,默认为`Alt` - - 新增一个快捷键,在星图视图切换三种星系名称显示状态:`原始显示状态`,`显示所有名称`,`隐藏所有名称`,默认为`Tab`,关闭星图时会恢复到原始状态 - - 航行时自动导航 - - 它会保持伊卡洛斯飞向目标星球 - - 它会尝试绕过途中的任何障碍物(行星、恒星或黑雾巢穴) - - 此外,可以在系统选项窗口中设置快捷键,用于切换`自动巡航`,实现完全自动化的飞行至目标星球。 - - 当你选择目标星球后,自动巡航就会开始 - - 如果目标星球距离过远会自动使用曲速(超过5AU),你可以在面板上更改这个值。 - - 它会在接近目标星球时减速,以避免发生越过目标的情况 - + 戴森球 - - 可用节点全部造完时停止弹射 - - 只建造节点不建造框架 - - 初始化戴森球 - - 快速拆除戴森壳 - - 戴森球自动快速建造速度倍率 - - 注意:这仅适用于沙盒模式下的`戴森球自动快速建造`功能 - + 科研 - - 在升级面板上恢复`分拣器货物堆叠`的升级 - - 将`分拣器货物堆叠`设为未研究状态 - - 买断科技也同时买断所有前置科技 - - 这使得可以批量买断科技及其所有前置科技。所有未解锁的科技/升级都会显示买断按钮。 - + 战斗 - - 在任意位置打开黑雾通讯器 + * 通用 + * 可调整游戏窗口大小(可最大化和拖动边框) + * 记住上次退出时的窗口位置和大小 + * 在加载和平模式存档时将其转换为战斗模式 + * 放大鼠标指针 + * 注意:这将启用软件指针模式,可能会在CPU负载较重时导致鼠标移动延迟 + * 基于mod管理器配置档案名的存档文件夹 + * 存档文件会存储在`Save\`文件夹中 + * 如果匹配默认配置档案名则使用原始存档位置 + * 基于mod管理器配置档案名的选项文件 + * 选项文件存储为`Options\.xml` + * 逻辑帧倍率 + * 这将改变游戏运行速度,最慢0.1倍,最快10倍 + * 设置了一对快捷键(`-`和`+`),可以-/+0.5倍改变逻辑帧倍率 + * 注意: + * 高逻辑帧倍率不能保证稳定性,特别是在工厂负载较重时 + * 这不会影响一些游戏动画 + * 当在`Auxilaryfunction`mod中设置游戏速度时,此功能将被禁用 + * 当安装了`BulletTime`mod时,此功能将被隐藏,但会对`BulletTime`的速度控制打补丁,使其最大速度变为10倍 + * 设置进程优先级 + * 设置使用的CPU线程 + * 将元数据提取的最大数量增加到20000(原来为2000) + * 将玩家指令队列的容量增加到128(原来为16) + * 星图: + * 添加星系名过滤器,现在可以按矿物或行星类型过滤显示的星系名 + * 添加了一个下拉框用以切换显示所有星系的距离和/或行星数量 + * 工厂 + * 夜间日光灯 + * 移除部分不影响游戏逻辑的建造条件 + * 范围升级和拆除的最大区域扩大(最大30x30) + * 范围铺设地基的最大区域扩大(最大30x30) + * 脱离网格建造以及小角度旋转 + * 切割传送带 + * 按快捷键切割光标位置的传送带 + * 默认快捷键是Alt+X,可以在系统选项面板中设置 + * 在流速计中将堆叠物品视为单个物品 + * 快速建造和拆除堆叠研究站/储物仓/储液罐 + * 储液罐快速注入和抽取液体 + * 你可以设置储液罐操作速度的倍率 + * 影响手动注入和抽取,以及从储液罐上层传输到下层的速度 + * 保护矿脉不会耗尽 + * 默认矿脉数量保护在100,采油速保护在1.0/s,你可以在配置文件中自行设置。 + * 当达到保护值时,矿脉和油井将不再被开采。 + * 关闭此功能以恢复开采,一般是当你在`矿物利用`上有足够的等级时。 + * 不渲染工厂建筑实体(除了传送带和分拣器) + * 这也使玩家可以点穿工厂实体直接点到传送带和分拣器 + * 拖动建造电线杆时自动使用最大连接距离间隔 + * 拆除蓝图选中的建筑 + * 在蓝图复制模式下按快捷键拆除选中的建筑 + * 默认快捷键是Ctrl+X,可以在系统选项面板中设置 + * 初始化本行星(不重置矿脉) + * 快速拆除所有建筑(不掉落) + * 快速建造轨道采集器 + * 用于自动购买黑雾物品的传送带信号 + * 在信号面板上添加了6个传送带信号,可以用于自动购买黑雾道具。 + * 生成的物品堆叠数为4。 + * 兑换比率遵循原始游戏设计,即: + * 1个元宇宙 = 20个黑雾矩阵 + * 1个元宇宙 = 60个能量碎片 + * 1个元宇宙 = 30个硅基神经元 + * 1个元宇宙 = 30个负熵奇点 + * 1个元宇宙 = 30个物质重组器 + * 1个元宇宙 = 10个核心素 + * 调整建筑输入缓冲 + * 工厂配方计算公式,在`工厂配方缓冲时间倍率秒数x每秒需要的原料数量`和`工厂配方缓冲最小倍率x每生产一次配方需要的原料数量`中取更大的那个值 + * `工厂配方缓冲时间倍率(秒)`:范围2-10,默认为4(同游戏) + * `工厂配方缓冲最小倍率`:范围2-10,默认为2(同游戏) + * 研究站矩阵合成模式计算公式,默认缓存`研究站矩阵合成模式缓存数量`个,当使用自演化研究站时,如果配方的原始生产时间不大于9秒,则增加`自演化研究站矩阵额外缓冲数量`*(`研究站速度倍率`-1) + * `研究站矩阵合成模式缓存数量`:范围2-20,默认为6(同游戏) + * `自演化研究站矩阵额外缓冲数量`:范围1-10,默认为3(同游戏) + * `研究站科研模式缓存数量`:范围2-20,默认为10(同游戏) + * `射线接收器透镜缓冲数量`:范围1-20,默认为1(游戏默认为20) + * `弹射太阳帆缓冲区数量`:范围5-400(步进值为5),默认值为20(与游戏相同) + * `发射井火箭缓冲区数量`:范围1-20,默认值为20(与游戏相同) + * 物流 + * 物流塔存储数量限制控制改进 + * 当升级`运输机舱扩容`时,不会对各种物流塔的存储限制按比例提升,除非设置为最大允许容量或者已经超过升级后的最大容量。 + * 你可以使用方向键微调物流塔存储限制 + * 物流控制面板改进 + * 打开面板时自动将鼠标指向物品设为筛选条件 + * 在控制面板物流塔列表中右键点击物品图标快速设置为筛选条件 + * 允许物流塔和大型采矿机物品溢出 + * 当尝试塞入手中物品时允许溢出 + * 允许`物流塔存储数量限制控制改进`超过科技容量限制 + * 在加载游戏时移除物流塔容量限制检查 + * 物流运输站实时信息面板 + * 注意:如果你启用了`Auxilaryfunction`中的`展示物流站信息`,此功能将被隐藏 + * 自动配置物流站 + * 自动配置的建筑包括:物流配送器、行星物流站、星际物流站、高级采矿机 + * 玩家/机甲 + * 无限交互距离 + * 移除建造数量和范围限制 + * 在行星视图中允许玩家操作 + * 隐藏沙土数量变动的提示 + * 手动制造物品的数量控制改进 + * 启用显示所有星系名称的快捷键 + * 新增一个快捷键,按住后始终在星图显示所有星系名称,默认为`Alt` + * 新增一个快捷键,在星图视图切换三种星系名称显示状态:`原始显示状态`,`显示所有名称`,`隐藏所有名称`,默认为`Tab`,关闭星图时会恢复到原始状态 + * 航行时自动导航 + * 它会保持伊卡洛斯飞向目标星球 + * 它会尝试绕过途中的任何障碍物(行星、恒星或黑雾巢穴) + * 此外,可以在系统选项窗口中设置快捷键,用于切换`自动巡航`,实现完全自动化的飞行至目标星球。 + * 当你选择目标星球后,自动巡航就会开始 + * 如果目标星球距离过远会自动使用曲速(超过5AU),你可以在面板上更改这个值。 + * 它会在接近目标星球时减速,以避免发生越过目标的情况 + * 戴森球 + * 可用节点全部造完时停止弹射 + * 只建造节点不建造框架 + * 初始化戴森球 + * 快速拆除戴森壳 + * 戴森球自动快速建造速度倍率 + * 注意:这仅适用于沙盒模式下的`戴森球自动快速建造`功能 + * 科研 + * 在升级面板上恢复`分拣器货物堆叠`的升级 + * 将`分拣器货物堆叠`设为未研究状态 + * 买断科技也同时买断所有前置科技 + * 这使得可以批量买断科技及其所有前置科技。所有未解锁的科技/升级都会显示买断按钮。 + * 战斗 + * 在任意位置打开黑雾通讯器 ## 注意事项 * 如果和[BlueprintTweaks](https://dsp.thunderstore.io/package/kremnev8/BlueprintTweaks/)一起使用,请升级`BepInEx`到5.4.21或更高版本,以避免可能的冲突。 - + 你可以在[这里](https://github.com/bepinex/bepinex/releases/latest)(选择x64版本)下载`BepInEx`。 - + 如果使用r2modman,你可以点击`Settings` -> `Browse profile folder`,然后将下载的zip解压到该文件夹并覆盖现有文件。 + * 你可以在[这里](https://github.com/bepinex/bepinex/releases/latest)(选择x64版本)下载`BepInEx`。 + * 如果使用r2modman,你可以点击`Settings` -> `Browse profile folder`,然后将下载的zip解压到该文件夹并覆盖现有文件。 ## 鸣谢 diff --git a/UniverseGenTweaks/CHANGELOG.md b/UniverseGenTweaks/CHANGELOG.md index fba77f8..3f4dcc3 100644 --- a/UniverseGenTweaks/CHANGELOG.md +++ b/UniverseGenTweaks/CHANGELOG.md @@ -1,39 +1,48 @@ +
+Read me in English + ## Changelog + * 1.2.9 * Fix some issues that universe settings not applied on staring a new game or loading game. * Always show Black hole/Neutron star on preview galaxy map while creating new game. * 1.2.8 - * Fix compatiblity for game version 0.10.31.24632. + * Fix compatiblity for game version 0.10.31.24632. * 1.2.7 * `Epic difficulty`: Fix compatibility for 0.10.30, with new resource multiplier 0.3x supported. * 1.2.6 - + Fix possible crash or wrong stars data when loading save file with changed generation settings but with `Enable more settings on UniverseGen` disabled on config window. - + Larger maximum value in combat settings (except `Aggressiveness` and `Max Density`). + * Fix possible crash or wrong stars data when loading save file with changed generation settings but with `Enable more settings on UniverseGen` disabled on config window. + * Larger maximum value in combat settings (except `Aggressiveness` and `Max Density`). * 1.2.5 - + Thanks to [kremnev8](https://github.com/kremnev8)'s work on new version of [DSPModSave](https://dsp.thunderstore.io/package/CommonAPI/DSPModSave/), universe generation options are stored in save file now. - + Fix text display issue on new game screen + * Thanks to [kremnev8](https://github.com/kremnev8)'s work on new version of [DSPModSave](https://dsp.thunderstore.io/package/CommonAPI/DSPModSave/), universe generation options are stored in save file now. + * Fix text display issue on new game screen * 1.2.4 - + Fix a crash while setting star count greater than 256 (again) - + Fix bug that collider check is not enabled on stars with ID greater than 255 + * Fix a crash while setting star count greater than 256 (again) + * Fix bug that collider check is not enabled on stars with ID greater than 255 * 1.2.3 - + Fix a crash while setting star count greater than 256 + * Fix a crash while setting star count greater than 256 * 1.2.2 - + Support game version 0.10.28.20759 + * Support game version 0.10.28.20759 * 1.2.1 - + Use new tab layout of UXAssist 1.0.2 + * Use new tab layout of UXAssist 1.0.2 * 1.2.0 - + Depends on [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist/) now. - + Add `Birth star` options - + Config tab added to UXAssist config panel. + * Depends on [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist/) now. + * Add `Birth star` options + * Config tab added to UXAssist config panel. * 1.1.0 - + Add epic difficulty - + `More options` and `Epic difficulty` can be enabled individually now. - + Fix a crash while setting `Star Distance Min` to larger than `Step Distance Min`. + * Add epic difficulty + * `More options` and `Epic difficulty` can be enabled individually now. + * Fix a crash while setting `Star Distance Min` to larger than `Step Distance Min`. * 1.0.0 - + Initial release + * Initial release +
+ +
+中文读我 ## 更新日志 + * 1.2.9 * 修复了一些在新建游戏或加载存档时宇宙设置没有应用的问题 * 在新建游戏时的星系预览图中始终显示黑洞/中子星 @@ -42,27 +51,29 @@ * 1.2.7 * `史诗难度`: 修复了对0.10.30版本的兼容性,支持新的资源倍率0.3x * 1.2.6 - + 修复了在存档中更改了生成参数但是在配置面板中禁用了`启用更多宇宙生成设置`时可能崩溃或者星系数据错误的问题 - + 在星系生成时的战斗设置面板上提升了各选项的最大值(`黑雾攻击性`和`最大黑雾密度`除外`) + * 修复了在存档中更改了生成参数但是在配置面板中禁用了`启用更多宇宙生成设置`时可能崩溃或者星系数据错误的问题 + * 在星系生成时的战斗设置面板上提升了各选项的最大值(`黑雾攻击性`和`最大黑雾密度`除外`) * 1.2.5 - + 感谢[kremnev8](https://github.com/kremnev8)对[DSPModSave](https://dsp.thunderstore.io/package/CommonAPI/DSPModSave/)的更新,现在宇宙生成选项会被保存到存档中 - + 修复新建游戏界面文本显示问题 + * 感谢[kremnev8](https://github.com/kremnev8)对[DSPModSave](https://dsp.thunderstore.io/package/CommonAPI/DSPModSave/)的更新,现在宇宙生成选项会被保存到存档中 + * 修复新建游戏界面文本显示问题 * 1.2.4 - + 修复了设置星系数大于256时崩溃的问题(再次) - + 修复了ID大于255的星系没有启用碰撞体检测的问题 + * 修复了设置星系数大于256时崩溃的问题(再次) + * 修复了ID大于255的星系没有启用碰撞体检测的问题 * 1.2.3 - + 修复了设置星系数大于256时崩溃的问题 + * 修复了设置星系数大于256时崩溃的问题 * 1.2.2 - + 支持游戏版本0.10.28.20759 + * 支持游戏版本0.10.28.20759 * 1.2.1 - + 使用UXAssist 1.0.2的新页签布局 + * 使用UXAssist 1.0.2的新页签布局 * 1.2.0 - + 现在依赖于[UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist/) - + 增加`母星系`选项 - + 在UXAssist的配置面板中增加了一个页签 + * 现在依赖于[UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist/) + * 增加`母星系`选项 + * 在UXAssist的配置面板中增加了一个页签 * 1.1.0 - + 增加史诗难度 - + `更多选项`和`史诗难度`现在可以单独启用 - + 修复了将`恒星最小距离`设置为大于`步进最小距离`时崩溃的问题 + * 增加史诗难度 + * `更多选项`和`史诗难度`现在可以单独启用 + * 修复了将`恒星最小距离`设置为大于`步进最小距离`时崩溃的问题 * 1.0.0 - + 初始版本 + * 初始版本 + +
diff --git a/UniverseGenTweaks/README.md b/UniverseGenTweaks/README.md index a00f08f..5abad50 100644 --- a/UniverseGenTweaks/README.md +++ b/UniverseGenTweaks/README.md @@ -1,15 +1,16 @@ # UniverseGenTweak -#### Universe Generation Tweak -#### 宇宙生成参数调节 +
+Read me in English + +***Universe Generation Tweak*** -## Features * Config entries are placed on [UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist/)'s config panel. * More options on universe generation - + Can set maximum star count(128 by default, up to 1024) in config file. - - Note: there is performance issue on galaxy view with large amount of stars. - + Larger maximum value in combat settings (except `Aggressiveness` and `Max Density`). - + Always show Black hole/Neutron star on preview galaxy map while creating new game. + * Can set maximum star count(128 by default, up to 1024) in config file. + * Note: there is performance issue on galaxy view with large amount of stars. + * Larger maximum value in combat settings (except `Aggressiveness` and `Max Density`). + * Always show Black hole/Neutron star on preview galaxy map while creating new game. * Epic difficulty * 0.01x resources and 0.25x oils (very hard difficulty has 0.5x oils). * Same oil mining speed as very hard difficuly @@ -18,14 +19,19 @@ * Solid flat on birth planet * High luminosity for birth star +
+ +
+中文读我 + +***宇宙生成参数调节*** -## 功能 * 设置选项在[UXAssist](https://dsp.thunderstore.io/package/soarqin/UXAssist/)的配置面板上 * 生成宇宙时提供更多选项 +可以在配置文件中设置最大恒星数(默认128, 最多1024) - - 注意: 大量恒星会导致宇宙视图出现性能问题 - + 在星系生成时的战斗设置面板上提升了各选项的最大值(`黑雾攻击性`和`最大黑雾密度`除外`) - + 在新建游戏时的星系预览图中始终显示黑洞/中子星 + * 注意: 大量恒星会导致宇宙视图出现性能问题 + * 在星系生成时的战斗设置面板上提升了各选项的最大值(`黑雾攻击性`和`最大黑雾密度`除外`) + * 在新建游戏时的星系预览图中始终显示黑洞/中子星 * 史诗难度 * 资源0.01倍,油井储量0.25倍(极难是0.5倍) * 采油速度和极难相同 @@ -33,3 +39,5 @@ * 母星有稀有资源 * 母星是纯平的 * 母星系恒星高亮 + +