Skip to content

Latest commit

 

History

History
244 lines (190 loc) · 9.62 KB

CHANGELOG.md

File metadata and controls

244 lines (190 loc) · 9.62 KB

更新日志 / CHANGELOG

This project only supports Chinese docs. If you are an English user, feel free to contact us.

表示 Text
含义 重大变更 主要变更 已弃用的特性

v3.2

新增

  1. ★ 新增了对使用 AES-CBC 加密的文件进行解码的功能,该功能已经与 FlatBuffers 解码功能合并成为“解码文本资源”功能。

修复

  1. 修复了对早期版本 AB 文件进行解包时可能出现的某种 AttributeError 错误。

优化

  1. ☆ 优化了各类代码逻辑,修复了各类代码样式问题。
  2. 优化了日志系统的性能表现。

依赖

  1. ★ 引入了 PyLint 作为代码检查系统。
  2. ☆ 将 ArkFBSPy 库升级到游戏版本 2.3.21。
  3. 将 bson 和 pycryptodome 添加到了依赖项中。

补丁

  1. ☆ (v3.2.1) 将 ArkFBSPy 库升级到游戏版本 2.3.81。

v3.1

新增

  1. ★ 新增了可以通过命令行的方式直接启动程序并执行任务的功能。

修复

  1. ☆ 修复了解包音频文件时有概率因 Fmoderror 导致失败的问题。

优化

  1. 不再在任务完成后加入延迟等待。

依赖

  1. 将 UnityPy 升级到了 1.10.14。

v3.0

新增

  1. ★ 新增了基于动态调度 Worker 实现的多线程文件写入的功能,提升了保存文件的速度。
  2. ☆ 新增了支持解包单个 AB 文件的功能。
  3. 新增了在部分输入操作中可以输入符号 * 来取消任务的功能。
  4. ☆ 新增了单独解包 Spine 模型的资源类型导出选项。
  5. ★ 新增了对使用 FlatBuffers 编码的二进制数据文件进行解码的功能。
  6. ☆ 新增了“ArkModels提取与分拣工具”使用本地 gamedata 进行“生成数据集”的特性。
  7. 新增了“ArkModels提取与分拣工具”内的“一键执行”功能。

修复

  1. ★ 修复了特定情况下写入文件时有概率发生由线程竞争导致文件缺失的问题。
  2. 修复了由 os.system 函数导致的潜在的跨平台兼容性问题。

优化

  1. ☆ 优化了各类代码逻辑,修复了各类代码样式问题。
  2. 优化了文件重名的后缀命名格式,现在采用 $ 后缀,而不是 # 后缀。
  3. 优化了交互式命令行的文本提示。
  4. 优化了路径解析、文件筛选和文件列表读取的逻辑。
  5. ☆ 重构了“生成数据集”和“合并图片”的代码逻辑,现在采用了面向对象的模式。
  6. 优化了配置文件性能等级与多线程数量的映射关系。
  7. ★ 优化了任务进度的计算逻辑和进度条的显示,优化了任务剩余时间的估算准确度。
  8. ☆ 重构了“ArkModels提取与分拣工具”中“分拣模型”的代码逻辑。
  9. ☆ 优化了对运行时异常的处理。

构建

  1. ★ 新增了自动化的构建脚本,优化了构建可分发文件的步骤。
  2. ★ 实现了针对 Windows 系统的可执行文件的直接打包,不再采用虚拟化打包。
  3. ☆ 新增了 GitHub Actions 的持续集成,实现了构建工作流。
  4. ★ 新增了自动化的单元测试脚本,新增了测试用资源文件。

依赖

  1. ★ 引入了 Poetry 作为依赖管理系统。
  2. 将 PyInstaller 升级到了 6.8.0。
  3. ☆ 作为 Git Submodule 引入了 ArkFBSPy 模块。
  4. 将 flatbuffers 和 numpy 添加到了依赖项中。
  5. ☆ 将 requests 从依赖项中移除,取消了对 ArknightsGameData 仓库的调用。

v2.7

新增

  1. ★ 新增了根据设备CPU核心数来自动选择最大多线程数量的功能,不再需要手动设置此参数。

优化

  1. 优化了代码自文档的样式,并进行了部分自文档的国际化。
  2. 优化了软件包的导入逻辑。
  3. 优化了代码内各类样式问题和拼写错误。
  4. ☆ 优化了资源类的数据导出和保存逻辑。
  5. ☆ 优化了配置文件的读写逻辑和鲁棒性。

v2.6

新增

  1. ★ 新增了“ArkModels提取与分拣工具”对于动态立绘的提取和分拣支持。

优化

  1. ☆ 优化了用户界面输出的打印逻辑,减少了不必要的性能消耗。

v2.5

优化

  1. ★ 优化了多线程分配逻辑,文件写入系统已支持多线程,提升了大型ab文件的解包速度。
  2. ☆ 优化了程序的目录结构,分离了部分程序脚本。
  3. 优化了默认配置,包括但不限于将默认的多线程数上调至16。
  4. 调整了读取文件列表的代码逻辑。

构建

  1. 公开了构建所用的脚本、附加库文件和步骤说明,参见build目录

v2.4

修复

  1. ★ 修复了无法正确导出拥有多纹理图的Spine模型(例如岁相、部分干员动态立绘)的图片文件的问题。

优化

  1. ☆ 重构了命令行界面的打印方式,现在采用Unicode控制符进行更美观高效的打印操作。
  2. 优化了删除目录树的方式,提升了删除的速度。
  3. 优化了“ArkModels提取与分拣工具”的分拣逻辑,提升了分拣的速度。
  4. 优化了解包时的多线程分配逻辑,提升了解包的速度。

v2.3

新增

  1. ★ 新增了日志系统。程序运行时会在工作目录保存日志文件,以便后续的检查和故障排除等操作。
  2. ★ 新增了配置文件。程序启动时会在工作目录读取配置文件,用户可以通过编辑该文件来调整部分设置参数。

修复

  1. ☆ 修复了战斗小人与基建小人重名等特定情况下,无法正确分类导出Spine模型文件的问题。现在基建小人会单独导出到 Building 子目录中。

优化

  1. 调整了读取文件列表的代码逻辑。

v2.2

新增

  1. ★ 新增了“ArkModels提取与分拣工具”对于敌方模型的提取与分拣支持。

修复

  1. ☆ (#4) 修复了战斗小人图片正背面图片区分不准确的问题。

v2.1

新增

  1. ★ 支持新功能“ArkModels提取与分拣工具”,详情参见附加文档

v2.0

新增

  1. ★ 支持且默认以多线程模式运行资源解包和图片合并,极大地提升了运行速度。
  2. 支持在自定义模式下可以自定义多线程数的功能。

优化

  1. 优化了运行时的回显表现和打印速度。
  2. 优化了图片匹配的精确度,调整了算法的参数。
  3. 不再支持流式显示运行时的详细信息,现在都只以简洁模式(进度条模式)回显信息。

修复

  1. ☆ 修复了特定情况下保存目的地异常的问题:现在任务目标相对路径含有 .. 时,也能被正确地保存。

文档

  1. 整理了说明文档,建立了docs目录用于存储附加说明文档。

测试数据

该版本在作者的电脑上测试结果如下:

电脑配置 -- Windows 10 (64位) -- CPU 2.00GHz, RAM 8.00GB 明日方舟版本 -- Android v1.9.01 测试内容 -- “一键执行”整个Android文件夹 -- 线程模式:8线程 -- 源文件夹:5.19GB(6.8K个文件) 测试结果 -- 用时:1.5h -- 资源解包文件夹:13.5GB(61K个文件) -- 图片合并文件夹:2.04GB(5.8K个文件)


v1.2

新增

  1. ★ 支持将不同ab文件中解包出的文件分别放到不同的子文件夹中,以便分类保存。
  2. ☆ 支持显示任务的预计剩余时间。

优化

  1. 移除了目录创建时的回显。

测试数据

该版本在作者的电脑上测试结果如下:

电脑配置 -- Windows 10 (64位) -- CPU 2.00GHz, RAM 8.00GB 明日方舟版本 -- Android v1.8.81 测试内容 -- “一键执行”整个Android文件夹 -- 源文件夹:5.06GB(6.6K个文件) 测试结果 -- 用时:3.0h -- 资源解包文件夹:20.1GB(70K个文件) -- 图片合并文件夹:2.03GB(5.2K个文件)

v1.1

新增

  1. 新增了程序运行时的图标和窗口标题。

优化

  1. ☆ 优化了各种代码逻辑,例如字符串的拼接和文件列表的解析逻辑。
  2. ☆ 优化了文件的保存逻辑。当文件夹内存在文件名相似、内容完全相同的文件时,不会进行保存操作。
  3. ☆ 优化了图片合并的算法:现在使用 PIL.Image 的内置函数 putalpha 来合并RGB通道图和A通道图,极大地提升了图片合并的效率。
  4. 优化了图片合并任务的信息回显。

修复

  1. ☆ 修复了干员战斗小人相关资源由于重名而不能正确地全部导出的问题。
  2. 修复了图片合并时,不能按目录分别保存的问题。
  3. ☆ 修复了干员战斗小人相关图片无法被正确地匹配和合并的问题。
  4. ☆ 修复了重名的文件保存冲突的问题:现在会自动添加 _# 后缀来区分重名的文件,且不再需要用户配置是否执行覆盖。
  5. 修复了在试图保存大小为0的图片时抛出意外错误的问题,现在这些无效图片会被直接跳过。
  6. ☆ 修复了不能准确匹配RGB通道图和A通道图的问题。修复后不排除还有极个别图片匹配错误。

构建

  1. 修复了可执行文件中潜在的 fmod.dll 缺失的问题。
  2. ☆ 采用了的文件虚拟化技术打包可执行文件。

测试数据

该版本在作者的电脑上测试结果如下:

电脑配置 -- Windows 10 (64位) -- CPU 2.00GHz, RAM 8.00GB 明日方舟版本 -- Android v1.8.01 测试内容 -- “一键执行”整个Android文件夹 -- 源文件夹:4.74GB(5.9K个文件) 测试结果 -- 用时:2.5h -- 资源解包文件夹:18.4GB(57K个文件) -- 图片合并文件夹:1.90GB(5.4K个文件)