#vpk #read-write #archive #extract #directory #engine #source

sourcepak

一个用于读取和写入 Source 引擎包文件的库

5 个不稳定版本

0.3.0 2024 年 6 月 22 日
0.2.0 2024 年 6 月 15 日
0.1.2 2024 年 4 月 11 日
0.1.1 2024 年 2 月 29 日
0.1.0 2024 年 2 月 22 日

#58#extract

每月 22 次下载

MIT 许可证

100KB
2K SLoC

sourcepak

sourcepak 是一个 Rust 包,提供对 VPK (Valve Pak) 文件的支撑。它允许你读取和写入 VPK 文件,以及提取和打包其内容。

功能

  • 读取和写入 VPK 文件
  • 从 VPK 存档中提取文件
  • 可选地使用内存映射存档文件以提高速度(带有 mem-map 功能)
  • 写入 VPK 目录文件 (dir.vpk)

支持的格式

VPK v1 (Alien Swarm, Dota 2, L4D, L4D2, Portal 2, SFM)

  • 读取目录文件
  • 读取文件内容
  • 写入 VPK 目录

VPK v2 (CS:GO, CS:S, DoD:S, HL:S, HL2, HL2:DM, Portal, TF2, Source 2)

  • 读取目录文件
  • 读取文件内容
  • 写入 VPK 目录

Respawn VPK (Titanfall)

  • 读取目录文件
  • 读取文件内容
  • 读取音频文件(请参阅 此处 了解为什么这是独立的)
  • 写入 VPK 目录

文档

文档可以在 此处 找到

为什么这个包存在?

我最初创建了 TFVPKTool TypeScript 库来支持读取 Respawn VPK 文件,以及使用 Electron 的 Harmony VPK 工具

我很快发现,由于我使用的语言和生态系统,这通常会导致内存使用过高。

使用 sourcepak,我旨在解决这个问题。

依赖

~99–400KB